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.
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.
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 ~/.node-red
):
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.
Each instance of the test node has the following settings available.
- Name
- A short description shown in the admin interface
- Topic
- A topic name to use if the incoming msg does not contain one.
- Server
- 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.
-
Standard output
- _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.
Use the Node-RED google group for general discussion about this node. Or use the GitHub issues log for raising issues or contributing suggestions and enhancements.
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.