node-red-contrib-jktesting 0.4.0
An experimental node for Node-RED for learning and testing node creation ideas. Can also be used as a template for your own nodes.
node-red-contrib-jktesting
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.
Design
Physical file/folder location summary
Folders and files for resources on the device running Node-RED are:
Known Issues
To Do
Changes
See the Change Log for details.
Pre-requisites
See the package.json file for details.
Requires at least Node.JS v6 and Node-RED v0.16
Install
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.
Nodes
JK Simple Test (jktest)
Node Instance Settings
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.
Inputs
- payload `string | buffer`
- The payload of the message to publish.
- topic (optional) `string`
- The MQTT topic to publish to.
Outputs
Standard output
Discussions and suggestions
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.
Contributing
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.