An EXPERIMENTAL Node-RED testing/learning set of nodes.
Designed as an experimental learning and testing tool for trying out different things when designing Node-RED nodes.
You can also use it as a template for writing your own nodes.
This node has several purposes:
- Learn the order of execution and events for learning how to program you own nodes.
- Show some best practices and standards for code when developing your own nodes.
- Act as a template I or you can use for your own nodes.
Node Creation Workflow
The workflow I use to create new nodes is:
- Create a new repo on GitHub - don't yet tag it with node-red until you are ready to go public
- Clone the repo to my source files folder on the dev machine
- Manually create a soft-link from the new folder into ~/.node-red/node_modules (I don't use npm link as that does strange things like creating a global link)
- Create the package.json, README.md, LICENCE, CHANGELOG.md, .gitignore files in my source folder. Create a sub-folder called "nodes" and create the html and js files in there.
- In the source folder, do npm install if you need to install any dependencies
- Restart Node-RED.
Physical file/folder location summary
Folders and files for resources on the device running Node-RED are:
See the Change Log for details.
See the package.json file for details.
Requires at least Node.JS v6 and Node-RED v0.16
Run the following command in your Node-RED user directory (typically
npm install node-red-contrib-jktesting
Run Node-RED and add an instance of the test node.
There is also a simple example in the library.
JK Simple Test (jktest)
Node Instance Settings
Each instance of the test node has the following settings available.
- A short description shown in the admin interface
- A topic name to use if the incoming msg does not contain one.
- An example of using a configuration node.
- payload `string | buffer`
- The payload of the message to publish.
- topic (optional) `string`
- The MQTT topic to publish to.
- _msgcounter integer
- The number of messages recieved by the node instance since either the last reset of Node-RED or the last deployment of the node instance.
- payload string | buffer
- A copy of any inbound payload.
- topic string
- A copy of any inbound topic if present. Otherwise, the topic from the node's settings.
- config object
- A copy of the name and server from the configuration.
Discussions and suggestions
If you would like to contribute to this node, you can contact Totally Information via GitHub or raise a request in the GitHub issues log.