Skip to content

Instantly share code, notes, and snippets.

View kakopappa's full-sized avatar
🏠
Working from home

Aruna Tennakoon kakopappa

🏠
Working from home
View GitHub Profile
@kakopappa
kakopappa / mongo_backup.sh
Created February 13, 2019 18:09 — forked from sheharyarn/mongo_backup.sh
Mongodump Shell Script for Cronjob
#!/bin/bash
MONGO_DATABASE="your_db_name"
APP_NAME="your_app_name"
MONGO_HOST="127.0.0.1"
MONGO_PORT="27017"
TIMESTAMP=`date +%F-%H%M`
MONGODUMP_PATH="/usr/bin/mongodump"
BACKUPS_DIR="/home/username/backups/$APP_NAME"
@kakopappa
kakopappa / aes.js
Created February 15, 2019 07:52
AES Java nodejs examples
import java.security.MessageDigest;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
public class AES {
private static byte[] iv = "0000000000000000".getBytes();
private static String decrypt(String encrypted, String seed)
@kakopappa
kakopappa / app.js
Created February 18, 2019 13:05
Hmac sha256 url parameter signature validate using dart and nodejs
// Dart
void _incrementCounter() {
String secret = "762c4144-1630-4fab-9161-0fef8b18d316";
List<int> key = utf8.encode(secret);
String message = "clientId=android-app&type=action&ts=1550493108338&actions=%5B%7B%22name%22%3A%22setOn%22%2C%22parameters%22%3A%7B%7D%7D%5D";
List<int> messageBytes = utf8.encode(message);
Hmac hmac = new Hmac(sha256, key);
Digest digest = hmac.convert(messageBytes);
@kakopappa
kakopappa / perference_with_checkbox.xml
Created April 23, 2019 03:56
android layout example - Perference with checkbox
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/accept_license_block"
android:layout_below="@+id/description_tv"
android:layout_width="fill_parent"
android:layout_height="40dp"
@kakopappa
kakopappa / class import example
Created May 8, 2019 04:49
nodejs class import example
// list.js
class LinkedList {
constructor() {
} // END constructor
myMethod() {
console.log("myMethod");
}
}
@kakopappa
kakopappa / thermostat_example_with_dht_11.ino
Created January 25, 2019 02:57
setSetTemperatureSettingOnServer.ino fix
/*
Version 0.1 - Jan 05 2019
*/
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <WebSocketsClient.h> // https://github.com/kakopappa/sinric/wiki/How-to-add-dependency-libraries
#include <ArduinoJson.h> // https://github.com/kakopappa/sinric/wiki/How-to-add-dependency-libraries
#include <StreamString.h>
@kakopappa
kakopappa / nginx-node-js-and-networking-for-heavy-workloads
Last active June 6, 2019 04:14
nginx-node-js-and-networking-for-heavy-workloads
https://engineering.gosquared.com/optimising-nginx-node-js-and-networking-for-heavy-workloads
https://qunfei.wordpress.com/2016/09/20/from-c10k-to-c100k-problem-push-over-1000000-messages-to-web-clients-on-1-machine-simultaneously/
@kakopappa
kakopappa / free timestamp server
Created June 24, 2019 03:46
free timestamp server
https://play.googleapis.com/play/log/timestamp
@kakopappa
kakopappa / esp8266-smart-config.ino
Created January 12, 2019 02:52 — forked from anoochit/esp8266-smart-config.ino
esp8266-smart-config
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
void setup() {
int cnt = 0;
// set for STA mode
WiFi.mode(WIFI_STA);
// put your setup code here, to run once:
@kakopappa
kakopappa / An external switch circuit:
Created October 2, 2019 03:03
An external switch circuit:
An external switch circuit:
3.3V
--+--
|
+-+
| | 1K ~ 10K
+-+
|
+--> D2 (for ESP8266, ex: GPIO16 in case of ESP32)
|