mirror of
https://github.com/node-red/node-red-nodes.git
synced 2025-03-01 10:37:43 +00:00
update notify package to use a more cross platform library
This commit is contained in:
@@ -1,26 +1,35 @@
|
||||
|
||||
module.exports = function(RED) {
|
||||
"use strict";
|
||||
var growl = require('growl');
|
||||
var imagefile = process.env.NODE_RED_HOME+"/public/node-red.png";
|
||||
var notifier = require('node-notifier');
|
||||
var path = require('path');
|
||||
var fs = require('fs');
|
||||
var image = path.join(__dirname, "/node-red.png");
|
||||
|
||||
function NotifyNode(n) {
|
||||
RED.nodes.createNode(this,n);
|
||||
this.title = n.title;
|
||||
var node = this;
|
||||
|
||||
node.on("input",function(msg) {
|
||||
var titl = node.title || msg.topic;
|
||||
if (typeof(msg.payload) == 'object') {
|
||||
var title = node.title || msg.topic;
|
||||
if (typeof msg.payload === 'object') {
|
||||
msg.payload = JSON.stringify(msg.payload);
|
||||
}
|
||||
if (typeof(titl) != 'undefined') {
|
||||
growl(msg.payload, { title: titl, image: imagefile });
|
||||
var icon = image;
|
||||
if (msg.icon) {
|
||||
if (fs.existsSync(msg.icon)) { icon = msg.icon; }
|
||||
else { node.error("Bad Icon file: "+msg.icon,msg); }
|
||||
}
|
||||
var icon = msg.icon || image;
|
||||
if (typeof(title) !== 'undefined') {
|
||||
notifier.notify({ message:msg.payload, title:title, icon:icon });
|
||||
}
|
||||
else {
|
||||
growl(msg.payload, { image: imagefile });
|
||||
notifier.notify({ message:msg.payload, icon:imagefile });
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
RED.nodes.registerType("notify",NotifyNode);
|
||||
RED.nodes.registerType("nnotify",NotifyNode);
|
||||
}
|
||||
|
Reference in New Issue
Block a user