Skip to content

Instantly share code, notes, and snippets.

View dulichan's full-sized avatar

Dulitha Wijewantha (Chan) dulichan

View GitHub Profile
@dulichan
dulichan / callback-example.js
Created October 9, 2014 02:28
Promises Example (uses bluebird)
var Promise = require('bluebird')
var fs = require('fs');
Promise.promisifyAll(fs);
fs.readFile("bb", function(err, data) {
if (err) return next(err);
fs.writeFile("bba", data, function() {
console.log("File written");
});
});
@dulichan
dulichan / gist:65164276cfca48e236ed
Created July 18, 2014 03:31
Actuator code in the Raspberry Pi (stripped down version)
public class Receiver{
final GpioController gpio;
final GpioPinDigitalOutput pin;
{
gpio = GpioFactory.getInstance();
pin = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_00, "Relay");
}
public void run(String message){
System.out.println("Message received "+message);
@dulichan
dulichan / gist:05f62f2db585b5e962b3
Last active August 29, 2015 14:04
Reading a DHT11 sensor and publishing a MQTT message
public void run() {
dhtSensor.read();
float temperature = dhtSensor.getTemperature(false);
int humidity = dhtSensor.getHumidity();
try {
String message = "Temperature:" + Float.toString(temperature);
String humidityMsg = "Humidity:" + Integer.toString(humidity);
mqttClient.publish(1,message.getBytes());
} catch (MqttException e) {
e.printStackTrace();
@dulichan
dulichan / gist:af557800b10f54c1f942
Last active August 29, 2015 14:01
Information extracted from an Rpie in JSON
{
"memory_info": {
"sdram_p_volate": 1.23,
"sdram_c_volate": 1.2,
"used_memory": 150163456,
"shared_memory": 0,
"total_memory": 459505664,
"sdram_i_volate": 1.2,
"cached_memory": 100642816,
"memory_buffers": 15024128,
@dulichan
dulichan / gist:10661092
Created April 14, 2014 16:01
A Google Script for spreadsheets to covert a selection of cells to mins:secs
function sensible_time() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getActiveRange().getValues();
for (var i = 0; i < data.length; i++) {
for (var j = 0; j < data[i].length; j++) {
if (data[i][j]) {
var range = sheet.getRange(24+i, j+1);
time = data[i][j];
var mins = ~~(time / 60);
var secs = time % 60;
@dulichan
dulichan / gist:9577696
Created March 16, 2014 02:28
Get the runtime server address for jaggery application in the carbon environment
var getAddress = function(transport){
var process = require("process"),
host = process.getProperty('server.host'),
ip = process.getProperty('carbon.local.ip');
var log = new Log();
var port;
if(transport=="http"){
port = process.getProperty('mgt.transport.http.proxyPort');
if(!port){
//can use http.port as well
@dulichan
dulichan / gist:8968945
Created February 13, 2014 02:57
Example of Jaggery GET with Callback
var url = "https://api.twitter.com/1/statuses/user_timeline.json";
var data = { include_entities:true,include_rts:true,screen_name:"wso2",count:1 };
var twitterJson = get(url, data ,"json", function(data, xhr){
print(data);
});
@dulichan
dulichan / admin.zsh
Created January 23, 2014 18:16
Git repo management scripts
# Merge development branch to master branch
function merge_projects(){
# Path to child project
cd /Users/dulitharasangawijewantha/Development/WSO2/apps/mdm
git checkout master
git pull origin master
git merge $1
git push origin master
}
# Get updates from master for child projects in parent project
@dulichan
dulichan / deployer.sh
Created January 23, 2014 05:35
Script to configure WSO2 EMM
PRODUCT_HOME="$1"
IOS_CERTS="$2"
IP="$3"
PRODUCT_CONF="$4"
CONFIG_FILE="./openssl_custom.cnf"
TEMP_FOLDER="./temp"
PUSH_CERT="`echo $IOS_CERTS`pushcert.pfx"
PUSH_PASS=""
MDM_CERT="`echo $IOS_CERTS`PlainCert.pfx"
MDM_PASS=""
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class RhinoEngine {
public static void main(String[] args) {
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("JavaScript");
try {
engine.put("name", args[0]);