update path to red.js to use environmnet variable

This commit is contained in:
Dave C-J 2013-10-26 22:19:43 +01:00
parent 50025428a5
commit 75aaaab1a9
3 changed files with 35 additions and 44 deletions

View File

@ -17,7 +17,7 @@
// Sample Node-RED node file // Sample Node-RED node file
// Require main module // Require main module
var RED = require("../../red/red"); var RED = require(process.env.NODE_RED_HOME+"/red/red");
var HID = require('node-hid'); var HID = require('node-hid');
var device; var device;
var node; var node;
@ -27,7 +27,7 @@ function DigiRGBNode(n) {
// Create a RED node // Create a RED node
RED.nodes.createNode(this,n); RED.nodes.createNode(this,n);
node=this; node=this;
var devices = HID.devices(0x16c0,0x05df); var devices = HID.devices(0x16c0,0x05df);
for (var i=0; i< devices.length; i++) { for (var i=0; i< devices.length; i++) {
if (devices[i].product == 'DigiUSB') { if (devices[i].product == 'DigiUSB') {
@ -39,13 +39,13 @@ function DigiRGBNode(n) {
} catch (e) { } catch (e) {
node.log(e) node.log(e)
} }
} }
} }
var p1 = /^\#[A-Fa-f0-9]{6}$/ var p1 = /^\#[A-Fa-f0-9]{6}$/
var p2 = /[0-9]+,[0-9]+,[0-9]+/ var p2 = /[0-9]+,[0-9]+,[0-9]+/
if (device) { if (device) {
this.on("input", function(msg) { this.on("input", function(msg) {
if (msg != null) { if (msg != null) {
if (p1.test(msg.payload)) { if (p1.test(msg.payload)) {

View File

@ -19,52 +19,52 @@
**/ **/
//might need to modify accordingly //might need to modify accordingly
var RED = require("../../red/red"); var RED = require(process.env.NODE_RED_HOME+"/red/red");
//import noble //import noble
var noble = require('noble'); var noble = require('noble');
// The main node definition - most things happen in here // The main node definition - most things happen in here
function BleScan(n) { function BleScan(n) {
// Create a RED node // Create a RED node
RED.nodes.createNode(this,n); RED.nodes.createNode(this,n);
var msg = {}; var msg = {};
var ble_name; var ble_name;
var node = this; var node = this;
//get name and uuid from user //get name and uuid from user
this.ble_name = n.ble_name; this.ble_name = n.ble_name;
this.ble_uuid = n.ble_uuid; this.ble_uuid = n.ble_uuid;
this.on("input", function(msg){ this.on("input", function(msg){
noble.startScanning(); noble.startScanning();
}); });
noble.on('scanStart', function(msg) { noble.on('scanStart', function(msg) {
var msg = {}; var msg = {};
msg.topic = node.topic; msg.topic = node.topic;
msg.payload = "Scanning initiated..." //debugging msg.payload = "Scanning initiated..." //debugging
//console.log('scanning initiated...'); //console.log('scanning initiated...');
node.send(msg); node.send(msg);
}); });
noble.on('discover', function(peripheral) { noble.on('discover', function(peripheral) {
var msg = {}; var msg = {};
msg.topic = node.topic; msg.topic = node.topic;
msg.payload = "not found"; msg.payload = "not found";
//check for the device name and the UUID (first one from the UUID list) //check for the device name and the UUID (first one from the UUID list)
if(peripheral.advertisement.localName==node.ble_name && peripheral.advertisement.serviceUuids[0]==node.ble_uuid) { if(peripheral.advertisement.localName==node.ble_name && peripheral.advertisement.serviceUuids[0]==node.ble_uuid) {
msg.payload=peripheral.advertisement.localName; msg.payload=peripheral.advertisement.localName;
noble.stopScanning(); } noble.stopScanning(); }
node.send(msg); node.send(msg);
}); });
this.on("close", function() { this.on("close", function() {
try { noble.stopScanning(); } try { noble.stopScanning(); }
catch (err) { console.log(err); } catch (err) { console.log(err); }
}); });
} }
// Register the node by name. This must be called before overriding any of the // Register the node by name. This must be called before overriding any of the

View File

@ -14,17 +14,14 @@
* limitations under the License. * limitations under the License.
**/ **/
// Sample Node-RED node file
// Require main module // Require main module
var RED = require("../../red/red"); var RED = require(process.env.NODE_RED_HOME+"/red/red");
var SensorTag = require('sensortag'); var SensorTag = require('sensortag');
var stag; var stag;
var node; var node;
// The main node definition - most things happen in here // The main node definition - most things happen in here
function sensorTagNode(n) { function sensorTagNode(n) {
// Create a RED node
RED.nodes.createNode(this,n); RED.nodes.createNode(this,n);
this.name = n.name; this.name = n.name;
this.topic = n.topic; this.topic = n.topic;
@ -36,16 +33,16 @@ function sensorTagNode(n) {
this.gyroscope = n.gyroscope; this.gyroscope = n.gyroscope;
this.keys = n.keys; this.keys = n.keys;
node=this; node=this;
if ( typeof stag == "undefined") { if ( typeof stag == "undefined") {
//console.log("starting"); //console.log("starting");
SensorTag.discover(function(sensorTag){ SensorTag.discover(function(sensorTag){
stag = sensorTag; stag = sensorTag;
sensorTag.connect(function(){ sensorTag.connect(function(){
//console.log("connected"); //console.log("connected");
sensorTag.discoverServicesAndCharacteristics(function(){ sensorTag.discoverServicesAndCharacteristics(function(){
sensorTag.enableIrTemperature(function(){}); sensorTag.enableIrTemperature(function(){});
sensorTag.on('irTemperatureChange', sensorTag.on('irTemperatureChange',
function(objectTemperature, ambientTemperature){ function(objectTemperature, ambientTemperature){
var msg = {'topic': node.topic + '/tempature'}; var msg = {'topic': node.topic + '/tempature'};
msg.payload = {'object': objectTemperature.toFixed(1), msg.payload = {'object': objectTemperature.toFixed(1),
@ -98,8 +95,6 @@ function sensorTagNode(n) {
//console.log("reconfig"); //console.log("reconfig");
enable(); enable();
} }
} }
function enable() { function enable() {
@ -139,8 +134,4 @@ function enable() {
stag.unnotifySimpleKey(function() {}); stag.unnotifySimpleKey(function() {});
} }
} }
// Register the node by name. This must be called before overriding any of the
// Node functions.
RED.nodes.registerType("sensorTag",sensorTagNode); RED.nodes.registerType("sensorTag",sensorTagNode);