Commit Graph

335 Commits

Author SHA1 Message Date
Nick O'Leary 7c24d4d760 Separate out httpAdmin and httpNode 2014-02-16 00:39:30 +00:00
Nick O'Leary e6cf783d52 HTTP In GET error handler fix 2014-02-15 22:36:01 +00:00
Nick O'Leary 35fb4bb47a Add rawBody middleware
Fixes #151
2014-02-12 21:30:49 +00:00
Nick O'Leary 7c24c7465a HTTP Request: allow message to override https
Fixes #147
2014-02-06 22:14:27 +00:00
Nick O'Leary 20de0c7c89 Move to twitter-ng module
Fixes #136

This will require an `npm update` to keep things working
2014-02-05 20:26:56 +00:00
Nick O'Leary cef652eef7 File node: allow filename to be overridden 2014-02-05 10:26:17 +00:00
Dave C-J ae03562f86 Slight UI tweak to Inject node - move fire once below options 2014-02-05 08:09:16 +00:00
Dave C-J f3f52fa586 Inject - cleanup messing with crontab... just don't do it. 2014-02-04 22:31:51 +00:00
Dave C-J 40232f95ed Clear inject once flag properly. Issue #145 2014-02-04 22:19:55 +00:00
Dave C-J b1de42b297 Tweak Inject Fire at Once options as per Issue #145 2014-02-04 21:50:35 +00:00
Dave C-J bdd9d901ec inject node - Remove couple of lines of excess console.log 2014-02-03 19:06:49 +00:00
Ben Hardill ad1f967a8d Fix random wait in delay node
Fixes #143
2014-02-03 13:08:20 +00:00
Dave C-J e19f2956a8 tiny tweak to inject to fix name and hide un-needed text box.
tweak exec node text to be less alarmist
2014-02-02 18:12:28 +00:00
Dave C-J b882846516 Quick fix for serial hangs (with serialport1.3.1)
While we investigate further.
2014-02-02 16:52:32 +00:00
Nick O'Leary c47c72cf48 Improve inject node payload options 2014-02-02 15:37:34 +00:00
Dave C-J 3dee0f1e20 Add small bit of extra node.log to exec node to make it obvious what it is doing. 2014-01-27 19:24:15 +00:00
Dave C-J 3a2ed39b51 Add new Range Node 2014-01-27 19:23:35 +00:00
Dave C-J aa044970c9 Add extra labels to extra Pi GPIO pins 2014-01-14 19:23:50 +00:00
Dave C-J ad675c00d8 enhance fs.notify help text
windows paths need double slashes \\
2014-01-13 20:25:58 +00:00
Dave C-J 82f58393c7 enhance labels for Pi GPIO pins 2014-01-13 20:24:57 +00:00
Dave Conway-Jones 08559838cc Merge pull request #133 from cpswan/master
Enable Pi to use of all 17 WiringPi pins
2014-01-13 12:04:31 -08:00
Nick O'Leary 79aeeea640 Handle duplicate PUBREL
Fixes #138

If the connection to a broker is lost mid qos 2 flow, there is a window where we have processed the PUBREL, released the message and deleted it from our store, but not sent the PUBCOMP. When the connection is re-established, and the PUBREL is resent by the broker, we assume the message still exists - and hit the error reported.

The fix is to check the message is valid before trying to process it. We send the PUBCOMP to complete the flow regardless.
2014-01-13 11:32:16 +00:00
Nick O'Leary 6b3010f95b Guard against null client in MQTT nodes
Fixes #130

There was a timing window where a client could connect to a broker just as new flows were deployed that would cause the on-connect callback to be called after client has been set to null. This caused an NPE.

The fix is to check client isn't null in the event handler.
2014-01-13 11:27:09 +00:00
Dave C-J 10b7f402c3 Update MQTT node Icon color to be different from Twitter one
Fixes #132
2014-01-08 16:44:47 +00:00
Dave C-J cbad188be8 Update to fs.watch node to use new fs.notify API
requires npm update fs.notify
2014-01-08 16:44:05 +00:00
Dave C-J b652d26b6b Add invite event to irc node 2014-01-03 10:57:49 +00:00
Dave C-J e5536b848a Changes to IRC node
addresses fix for #106
moved channel to node properties (won't break but will flag as undeployed changes)
changed defaults to be irc.freenode.net
allow input of a msg.raw as an array of a raw irc command (undocumented)
2014-01-02 11:15:03 +00:00
Chris Swan 9839e87580 pintable + tablepin maps for all 17 WiringPi pins 2013-12-31 08:54:06 +00:00
Chris Swan 982ad91581 Drop down options for all 17 pins in WiringPi 2013-12-31 08:50:24 +00:00
Nick O'Leary 1c010c568d Fix keepalive handling in MQTT client
Fixes #124
2013-12-29 20:16:27 +00:00
Nick O'Leary 24c373ecc2 Tidying up the Change node after a lot of churn 2013-12-24 23:16:36 +00:00
Frank van de Pol 44e920fde2 Disable the notification for the Change node editor
Disable the notification on the Change node.
Once the infrastructure for validation error messages is implemented
this can be re-enabled and retrofitted to the
new structure.
2013-12-24 23:29:40 +01:00
Frank van de Pol 1ebc5979aa Add validation to Change node editor for invalid regex
This change adds input validation to the gui of Change Nodes to prevent
the user from unintentionally entering an invalid regular expression
(in case the ‘use regular expressions’  option is enabled).

The user will be notified (using the RED notification mechanism) on the
specific error code to help resolve the issue.
2013-12-24 20:28:08 +01:00
Frank van de Pol b411d59d43 Make log message in invalid regular expressions more verbose
Make logging of erratic regular expressions more verbose to help
identification and resolving of the configuration issue:

eg.:
old: 24 Dec 18:40:09 - [error] [change:Strip kW] Invalid regex: *kW
new: 24 Dec 18:40:09 - [error] [change:Strip kW] Invalid regular
expression: /*kW/: Nothing to repeat

old: 24 Dec 20:15:57 - [error] [change:Strip kW] Invalid regex: *kW
new: 24 Dec 20:15:57 - [error] [change:Strip kW] Invalid regular
expression: /[kW/: Unterminated character class
2013-12-24 20:17:42 +01:00
Frank van de Pol 231f8b6a4d undo my changes to the Change node; revert to original
undo the local changes to the Change node to get back aligned with the
master tree
2013-12-24 20:02:30 +01:00
Frank van de Pol b81f251023 merge from upstream 2013-12-24 18:53:38 +01:00
Dave C-J 00202a3930 wrong syntax for checking check box... in change node 2013-12-24 17:07:07 +00:00
Dave C-J e0921f84c4 still flattening wrinkles in change node...
(I blame the Xmas "spirit" ;-)
2013-12-24 17:01:53 +00:00
Dave C-J dafb2f1d38 Removed excess debugging from change node (sorry) 2013-12-24 16:54:19 +00:00
Dave C-J 6b2e666600 Make sure old flows with change node - work as-is/was.
Signed-off-by: Dave C-J <dave@conway-jones.co.uk>
2013-12-24 16:24:31 +00:00
Dave C-J b7531bae4d Added proper choice for regex support to change node
(and better error catching)
Addresses Issue #121
2013-12-24 16:18:18 +00:00
Dave C-J 2ba5e0fe3e Add socketTimeout to settings.js for TCP server sockets
Fixes #125
adds an optional socketTimeout param to settings.js file to add a TCP server
socket timeout. Default is no timeout.
2013-12-24 13:12:17 +00:00
Nick O'Leary a9668a1999 Better error message if twitter auth flow fails
Closes #123
2013-12-23 14:44:35 +00:00
Nick O'Leary c6264e8040 Add newline when wrapping function to allow comments
Fixes #122
2013-12-22 22:22:47 +00:00
Frank van de Pol a03b4e4dd4 Added validation logic to Change editor for validity of regular expressions
This change adds input validation to the gui of Change Nodes to prevent
the user from unintentionally entering an invalid regular expression.
The user will be notified on the specific error code to help resolve
the issue.
2013-12-22 17:46:25 +01:00
Frank van de Pol 655e777a3e Add exception handing to Change node
Adding exception handling to the change node to prevent node-RED from
crashing on invalid regular expressions eg. “*kW” (missing escape
before the asterix)
2013-12-22 14:00:25 +01:00
Dave C-J 15669b7f1f Only declare node variables inside node declaration.
Fix for Issue #119
(also reformatted with spaces hence what looks like massive changes...)
2013-12-21 17:31:05 +00:00
Nick O'Leary 95b8600da7 Automatically follow 301-redirects in HTTP request node
Fixes #30
2013-12-20 11:11:50 +00:00
Nick O'Leary 73f3ea52a5 Add session awareness to TCP nodes
Closes #63,#65
2013-12-19 21:16:25 +00:00
Nick O'Leary 751ac7b9ee Handle Buffer objects properly in Serial out node
Fixes #115
The serial out node does a JSON.stringify if the payload is an object. This was incorrectly being applied to Buffer objects, causing the output seen in issue #115.

The Buffer is now passed through as-is (with the newline appended if so configured).
2013-12-13 10:27:52 +00:00
Nick O'Leary 344660dfee Refinements to Unknown-node handling
Refinement to #113
2013-12-12 15:51:15 +00:00
Dave C-J ac884bfdf3 Add "Unknown node" type to core.
Relates to Issue #5
not the best/complete solution - but a start.
2013-12-08 21:55:34 +00:00
Nicholas O'Leary 3984b6b702 Add websocket node docs
Part of #105
2013-12-08 20:41:57 +00:00
Nicholas O'Leary cce5f33a97 Allow JSON sending/receiving in websocket node
Fixes #105
2013-12-08 20:31:56 +00:00
Nicholas O'Leary f22cd381ee Add JSONP support to http response node
Fixes #102
2013-12-08 19:40:27 +00:00
Dave C-J fae34f8244 Let serialport retry reconnects etc
Partial fix to Issue #111

This doesn't fix the screaming loop issue if you try to write to an unplugged
serial port - but does attempt to fix the not retrying to reconnect part of 
the issue.

Both were introduced by changes to the underlying serialport npm.
2013-12-08 16:59:36 +00:00
Dave C-J 67e16adfd0 Added output "New Line" char to Serial
Addresses Issue #104
adds the option to re-use the character used the split input into lineson input as an append to every line sent out to the serial port.
2013-12-06 21:04:35 +00:00
Nicholas O'Leary d2ce6af486 Switch node: infer intent to compare numbers
Fixes #108
2013-12-06 20:26:55 +00:00
Nicholas O'Leary 4475e74187 Overlapping mqtt subs get duplicate messages 2013-12-06 14:19:21 +00:00
Nicholas O'Leary 5767478871 Switch node null/not null tests don't always work
a === null / a !=== null

is different to

    typeof a == "undefined" / typeof a != "undefined"
2013-12-03 01:12:29 +00:00
Ben Hardill f44272877e Merge remote-tracking branch 'upstream/master' 2013-11-30 18:10:03 +00:00
Ben Hardill 4b3f26bed5 Fix milliseconds in delay 2013-11-30 18:08:44 +00:00
Dave C-J 399617dc58 Make Imap node always read once on start
Closes Issue #96

Imap node now logs (in console) if it finds duplicate email on read or not.
It doesn't send on duplicates. It also now DOES fire once on startup AND re-deploy to populate anything downstream... at least that is the excuse for the change.

Signed-off-by: Dave C-J <dave@conway-jones.co.uk>
2013-11-29 19:16:11 +00:00
Nicholas O'Leary 9690ebe9c1 Add session awareness to WebSocket node
This allows a websocket-in node to receive data, process it in a flow
and then send it back to the originating websocket client via a
websocket-out node.
2013-11-26 23:33:57 +00:00
Dave C-J ab04fcf7c0 Update IMAP node to use new 0.8.x API
Fixes Issue #96

this necessitates an update to the underlying npm
npm install --force imap
2013-11-26 19:55:40 +00:00
Nicholas O'Leary 7040aaa179 Add clientid/username/password to MQTT nodes
Alternative implementation, closes #42

The username/password as not stored in the main flow file for security reasons;
they are stored in the adjacent credentials file. This does mean an extra step
to importing an MQTT node, as the user has to manually edit it to re-add username
and password if needed.
2013-11-25 22:50:08 +00:00
Nicholas O'Leary 796080471d Twitter: add help text about rate limits 2013-11-25 21:46:15 +00:00
Nicholas O'Leary 83072dcda4 Twitter node: tags field not required if DM's selected
Fixes #91
2013-11-25 10:32:21 +00:00
Dave C-J 3982dcdaf1 Add change node to core/logic - allows simple(r) manipulation of some payloads and msg.properties to save having to write functions for these basic tasks. You can replace contents (regex based or simple swap), and add, modify or delete proerties. 2013-11-24 22:25:35 +00:00
Dave C-J 0a78838c71 Add default name to switch node (for when name not specified - to be more consistent with other nodes) 2013-11-24 22:22:35 +00:00
Nicholas O'Leary c1d495b62a Twitter node: DM's come in with a different structure 2013-11-24 20:54:10 +00:00
Nicholas O'Leary cb8a3f064e Twitter doc updates and rate limit fixes 2013-11-24 16:48:24 +00:00
Nicholas O'Leary 9104b4200a Update feedparser node for underlying module api changes 2013-11-24 16:03:30 +00:00
Dave C-J f051fbd1e1 Make imap node check for email right away on start/restart. Add some more console logging for re-assurance of things happening - or not. 2013-11-24 13:10:48 +00:00
Nicholas O'Leary f2ed2365cd Twitter: monitor direct messages 2013-11-23 21:48:17 +00:00
Nicholas O'Leary 8176506d72 Twitter node: incorrect default user setting
caused by #80
2013-11-22 23:09:49 +00:00
Nicholas O'Leary e88dcd4aba Get tweets from specific people
fixes #80
2013-11-22 23:07:08 +00:00
Nicholas O'Leary 88be896f1c Add WebSocket nodes 2013-11-22 21:28:05 +00:00
Nicholas O'Leary 7463ef92cb Add httpRoot tip to http node 2013-11-22 21:26:18 +00:00
Dave C-J ff8db09fd9 Add "otherwise" option to switch node - also added ability to stop checking after first match or keep matching (as-is today). Fixes Issue #88 2013-11-22 16:25:02 +00:00
Dave C-J 1967046cc8 Slight tweak to sentiment info to reflect reality. 2013-11-21 17:14:05 +00:00
Nicholas O'Leary a0aed93c69 Make Debug topic slightly darker for better contrast
Fixes #82
2013-11-20 22:17:21 +00:00
Nicholas O'Leary 2028880b48 Debug activation message the wrong way around
As reported under #47
2013-11-19 15:51:33 +00:00
Nicholas O'Leary f5284f5e1f Twitter Oauth path needs to account for httpRoot
Fixes #78
2013-11-18 21:20:50 +00:00
Dave C-J 3c32186a9d force parsexml node to be async (just in case) 2013-11-15 09:15:26 +00:00
Dave C-J f2b7fada9d Tweaks to email and imap info now that the relative paths no longer make sense. 2013-11-15 08:59:55 +00:00
Dave C-J c17687e5db allow twitter multipe sech terms... space for AND and , for OR. (not sure why I had knobbled it in first place...) 2013-11-15 08:59:06 +00:00
Nicholas O'Leary 48dabffefc Move all nodes into core subdirectory
This makes it easier to distinguish core nodes from those added later
2013-11-14 15:52:19 +00:00
Nicholas O'Leary affcc8ae65 Update all core nodes to use NODE_RED_HOME rather than relative paths 2013-11-14 15:44:54 +00:00
Nicholas O'Leary 82b863805d Move Debug ws endpoint to /debug/ws
fixes #61
2013-11-14 14:40:34 +00:00
Nicholas O'Leary d2208fae83 Collapse TCP nodes into single pair of files 2013-11-14 14:39:26 +00:00
Nicholas O'Leary 2a5f4abd49 Document msg.tweet property of Twitter In node 2013-11-14 14:38:59 +00:00
Dave C-J 11523a6ced duplicate http get or post params into msg.payload to make life easier for debug etc. other properties remain as-is 2013-11-14 13:25:12 +00:00
Nicholas O'Leary 510fab7b8f IMAP node should not try to load settings file directly 2013-11-13 22:20:36 +00:00
Nick O'Leary 5b69dfb2f2 Merge pull request #70 from hardillb/master
Add Random delay to Delay node
2013-11-13 07:37:37 -08:00
Ben Hardill ca72e187f9 and another typo 2013-11-13 15:36:54 +00:00
Ben Hardill e2a532434e Added missing () to validator 2013-11-13 15:25:29 +00:00
Nicholas O'Leary 8426c9802b Allow unlimited event listeners on mqttConnectionPool
Fixes #71
2013-11-13 15:00:55 +00:00
Nicholas O'Leary 07a5d3626e Typo in HTTP Request Node prevents POSTs
fixes #68
2013-11-11 14:25:50 +00:00
Ben Hardill f3a84eacf3 Added some limits to the spinners, and updated the image 2013-11-10 19:49:16 +00:00
Ben Hardill e9a64f7bdf Added random delay to delay node 2013-11-10 17:25:55 +00:00
Nicholas O'Leary 22f46a4317 Inject Node: Interval between times not sticking
fixes #67
2013-11-09 17:07:57 +00:00
Nicholas O'Leary 3b49c85a8e Remove extra slash in Debug WS connection url and respect http/https
Fixes #59,#60
2013-11-06 21:33:25 +00:00
Nicholas O'Leary 8f71ee4631 Unable to pass custom headers to HTTP Response node
fixes #54
2013-11-06 21:08:00 +00:00
Dave C-J 25596b06b1 Add json2xml node - to complement the xml2json one... 2013-11-04 20:29:33 +00:00
Dave C-J d9ed5b46c4 Various little tweaks - less console.log more util.log, add exra try/catch to serial, add wiring-pi url to Pi "error message". 2013-11-03 19:10:35 +00:00
Dave C-J 09348eb353 Improve IRC UI options to Fix Issue #53. Now a three way select - either send whole msg object to channel, just msg.payload to channel or msg.payload to users specified in msg.topic 2013-11-02 12:12:47 +00:00
Nicholas O'Leary b12b02ebb9 Change node deprecation message 2013-10-31 16:41:52 +00:00
Dave C-J 8891548909 Make simple payload types be objects for mongodb to stor sensibly. 2013-10-31 16:33:14 +00:00
Dave C-J bbc1b70a5a Moved deprecated nodes to deprecated folder - added "this node is deprecated" warnings. 2013-10-31 09:43:22 +00:00
Nicholas O'Leary 76def0a320 Remove deprecated Connect api 2013-10-30 21:18:07 +00:00
Nicholas O'Leary 426e866113 Move nodes over to node-red-nodes repo 2013-10-30 21:13:52 +00:00
Nicholas O'Leary 948cbc537e Add toggle button support to core, tidying up debug node 2013-10-28 16:45:31 +00:00
Dave C-J 87fdc74ed0 Make debug button move/partially hide when disabled to make it obvious. Also thicken border of node selected from within debug window - again to make it "pop" so it is obvious. Fixes #47 2013-10-28 10:01:12 +00:00
Dave C-J deef63334f update sample to use environment variable for path to RED. 2013-10-28 09:59:36 +00:00
Dave C-J c193779f67 update to mongodb node to allow both save and insert. 2013-10-28 09:58:56 +00:00
Nicholas O'Leary 488a039781 Add err handler on tcpout/listener. Fixes #50 2013-10-27 17:57:46 +00:00
Dave C-J 6fb8506722 Better fix to Close Issue#48. udp out node now accept msg.ip and msg.port properties - and udp in node now produces them also. Note- the ststically configured vlues WILL take precedence - so if you want to use msg.ip and msg.port then do not configure them in the edit dialog 2013-10-25 11:27:21 +01:00
Dave C-J a4160a6bea Partial fix for Issue #45 - allows msg.destip and msg.port properties to override static config.
Signed-off-by: Dave C-J <dave@conway-jones.co.uk>
2013-10-24 19:58:57 +01:00
Dave C-J f1f00da1a8 Allow http request node to pass through existing msg properties rather than wiping clean (in case needed on other side...)
Also one more try / catch to xml parser... could still barf if provoked.
2013-10-23 21:27:54 +01:00
Dave Conway-Jones 30f3a46d46 Fix for Issue#45 2013-10-23 08:42:14 +01:00
Nicholas O'Leary dc0d62cb28 HttpRequest: unable to overide url with https url 2013-10-23 00:03:32 +01:00
Dave Conway-Jones ae13db90a9 missing ; - oops 2013-10-22 21:07:20 +01:00
Dave C-J 3b60e1a0e3 Added error trap to xml2js node. 2013-10-22 20:25:14 +01:00
Dave C-J c4f30a6111 remove extra logging from exec , add sun icon 2013-10-20 20:37:40 +01:00
Dave C-J e775346946 Let Blinkstick accept upper case colours 2013-10-20 20:37:01 +01:00
Nicholas O'Leary 778e0d2086 HTTPRequest: custom headers not passed on 2013-10-20 00:09:15 +01:00
Nicholas O'Leary f8e8bf22c0 SwitchNode: allow use of properties beneath the top level 2013-10-19 21:04:17 +01:00
Dave C-J 547ae0cd72 Added a bit more error cathing to tail node 2013-10-19 14:58:05 +01:00
Dave C-J b1c9e95209 removed Arduino pins "warning" - way too agressive... 2013-10-18 17:03:41 +01:00
Nicholas O'Leary 294224de9b TailNode: kill tail process on close 2013-10-18 10:04:03 +01:00
Dave C-J 426444b042 Tweaks to timer node - limit delays/rate to +ve numbers... add bit more info, slight tidy up. 2013-10-17 22:45:17 +01:00
Dave C-J f3040ae95c Add warning to Arduino node (as underlying firmata won't allow pins to be both inputas and outputs at the same time) 2013-10-16 19:10:34 +01:00
Nick O'Leary f3ec90eee0 Merge pull request #14 from hardillb/master
Pull request for Pause Node
2013-10-16 04:49:05 -07:00
Dave C-J d8a6e28950 Remove some excess console.log and tidy up some close calls 2013-10-15 21:12:30 +01:00
Dave C-J 4780c2bfe8 Tweaks to edit icons, and make Twitter show seach tags as label rather than just Twitter 2013-10-15 21:11:45 +01:00
Nicholas O'Leary 3bab2a0b8d Remove console.log from exec node 2013-10-14 23:19:01 +01:00
Nicholas O'Leary e6fe875e25 Rogue console.log 2013-10-14 09:33:25 +01:00
Nicholas O'Leary bbe37dd944 One console.log too many 2013-10-13 20:29:29 +01:00
Nicholas O'Leary 32fcd12919 Add switch node 2013-10-13 20:28:21 +01:00
Nicholas O'Leary fff61861c1 Deprecated old socket nodes 2013-10-13 19:25:53 +01:00
Ben Hardill 74c57faa6c moved to use the on("close", function(){}) rather than overload the close
function
2013-10-13 17:40:20 +01:00
Ben Hardill 74d8958526 Merge remote-tracking branch 'upstream/master' 2013-10-13 17:33:19 +01:00
Dave C-J 9741c36fdb New UDP node to go with updated TCP node - includes multicast support 2013-10-11 21:42:34 +01:00
Dave C-J ee92967efa Fixes for Arduino (firmata) node - to try to make it work on a Pi... very slow to initialise... was never coming ready in time... hopefully fixes Issue #35 2013-10-10 15:36:23 +01:00
Dave C-J c5da163d50 update sample node to reflect better way to close nodes. 2013-10-10 15:36:23 +01:00
Nicholas O'Leary 80b76fba88 HttpRequest: don't send body for GET/DELETE methods 2013-10-10 09:56:24 +01:00
Dave C-J ae6fa8b6c0 Add bluetooth icon 2013-10-10 08:46:45 +01:00
Nicholas O'Leary 6205190c78 Fix jumping focus with Orion editor 2013-10-09 22:12:06 +01:00
Nicholas O'Leary 6298a13f06 Add warning if http response node doesn't get a msg.res object 2013-10-09 20:45:51 +01:00