{"_id":"@autocodingsystems/node-red-utils","_rev":"7-aba637a21e6fe73058064ca61b197ecc","name":"@autocodingsystems/node-red-utils","dist-tags":{"latest":"1.2.1"},"versions":{"1.0.0":{"name":"@autocodingsystems/node-red-utils","version":"1.0.0","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js"}},"dependencies":{"signalr-client":"0.0.17"},"gitHead":"9a69f2a4163b31d81bfa95b71741691c078f4538","_id":"@autocodingsystems/node-red-utils@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-BAmNmnL7vaL+43uQUxi206Q8nH8vqcIvUlvzPLPcv97N/Tt3KWemRjoNevlrNW2rRv9drRrkRODyPNooiIbyTw==","shasum":"e2dbea501e1f2af0ec766a07bd8ed8f05810aace","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.0.0.tgz","fileCount":15,"unpackedSize":93714,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeiiphIFIrkd9LdcQIfbDuVF3dbssTW/GkeZorH52DGgIhAJ9qshyhQZLfXkNZS7LELgXIPV7Hc/XAUTN2gzGYRNAb"}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.0.0_1521130225741_0.23356593047749707"},"_hasShrinkwrap":false},"1.0.1":{"name":"@autocodingsystems/node-red-utils","version":"1.0.1","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js"}},"dependencies":{"signalr-client":"0.0.17"},"gitHead":"432d1c7405bd94b9f2a2ea8cb105b6649efe9a71","_id":"@autocodingsystems/node-red-utils@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-mu6r7IiNwcQtAWP42xc6k7WeHGZ1nlalq0OOeOn3sl79htELDV9K1OmheEw0QPN8hvSy0V+JFdmlrms1nJWbZw==","shasum":"6579da368108234fb5124bb9b10b6fd063753066","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.0.1.tgz","fileCount":16,"unpackedSize":96021,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBo2wEDNAv1HTmpjUwY9iBiyN8vj6Qb+1S6+bPFgEBvEAiAjXUAFjN74hfi5AzfP53C+2nfHF1Ow6c/QmPg9wEB+9A=="}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.0.1_1521132169641_0.16790436051933022"},"_hasShrinkwrap":false},"1.0.2":{"name":"@autocodingsystems/node-red-utils","version":"1.0.2","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js"}},"dependencies":{"signalr-client":"0.0.17"},"gitHead":"9e10553d849f98b9824450f9721ad80aee1d802c","_id":"@autocodingsystems/node-red-utils@1.0.2","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-fJO18xjH500TaqXzgdSHfY/sNoeOwOcCv4y7wUN9bn7GpZchanYGDvsimUPev7ZumZS/1neNmnMpgcVfwhaGug==","shasum":"c60e717f7d2f87f345513ee0f097323fb25f4d40","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.0.2.tgz","fileCount":16,"unpackedSize":96111,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtKaNyNJ3xAp4fpbLmO5o7EZTrKU7bY2CkSZ1hJnV+pgIgV/3Vnjw6cWh5O70XNQd1ZJosetyNF82zOBdxSTvirg0="}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.0.2_1521539029686_0.8577385169732699"},"_hasShrinkwrap":false},"1.1.0":{"name":"@autocodingsystems/node-red-utils","version":"1.1.0","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js","vision-inspection-receive":"vision-inspection.js"}},"dependencies":{"@autocodingsystems/vision-inspection":"1.0.4","signalr-client":"0.0.17"},"gitHead":"56072f61909abab04c3b7b7eea810d9bc7481cdb","_id":"@autocodingsystems/node-red-utils@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-1OSauGRgmFYuI4JnzylQ9QgvGshpzW2kxImRQ/jLD8GyUgH0/1y4Pr4JlK7QkQ8nZ8755fDzH+oPmqpPR6oFJw==","shasum":"a3bffe3ea35b5fb55e148e948f348fa714c69ddd","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.1.0.tgz","fileCount":18,"unpackedSize":116506,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDoYrirIBGj4nbD8kfLXStbjWuc3X5PKMbEZvUg2HxmCgIgEnNhjPIpCsqzcoFG/Q7wBvZfGrDbDQmG7YsAkUaweFk="}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.1.0_1523376076025_0.9151279422320071"},"_hasShrinkwrap":false},"1.2.0":{"name":"@autocodingsystems/node-red-utils","version":"1.2.0","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js","vision-inspection-receive":"vision-inspection.js"}},"dependencies":{"@autocodingsystems/vision-inspection":"2.0.4","signalr-client":"0.0.17"},"gitHead":"c15cc200611d2bc6c647df2c58399f1492730b6c","_id":"@autocodingsystems/node-red-utils@1.2.0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-cyZYUpV7CsIUiJisliLwCJ3O1TOH+SWMmt9nrDczn6j1pCQQ5f1hwZoao5TNVvYVGD5SCGo+XjI/UBwk9lugHQ==","shasum":"b73fb223f036c085ecef8ee980970afe02316103","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.2.0.tgz","fileCount":18,"unpackedSize":116506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2JNjCRA9TVsSAnZWagAAdzwP/jNW4QjpzjiCmLPhwYDe\nORoxrOyFoZBhPI+kEkCqTVcjlzG+pwTRH77NRK0FADxMqUYdllHPwxQCL6Ik\njrzy6I/Bs+QL+OqfyXmc6mHZDNLyrHp028fCQPd7ch7GSgjkaqHAICJ91L97\no0p3xbyjcMxezXy5PcmW9dSdvCNDLyaZVk5e6kbd/0qHcY/dCEjNQN8WhA85\nv+aTGQQaArFrPdvnRxxIwZrw8Qrqwjhi2zx57/eFR/YiUvZnp11ELoc0hWcX\ncAsfs/RwM+11nNtI/R1SoQWY8pBs+5IKWX5WJlMLwG+LQYn8kib3w55VRo/Z\nkHbL+OU+r41eqGyeynSMwN+O/+ZVa9bXCYM1jqh25UQHnN1iy6MFZkbqCo8F\nmr0FS4Puq44IN+NY1WfB8W0FOmPaZK8rzWIg7t/9Cl1JnVm2gG5ClIxXJT/h\nwB0sS4gOSUKSBXugidLHXjeqylw9kNL3+LDZ9VNUedwTbIas7lyhE+ZqZ34H\n9eDAzsgmkqeH9jA57Kcj6ujvqrUXHZEDGGg4bfPjBgohyfjRMqtXSzubgy8A\nyUsMfip6/+xeoddtAYyiIhlX2QtLTJalRO4Zx7/AKHqJM8NBbULXLhkunDVJ\nmCnJi+ELdIC88khYCrOaiWK+ggumEIrYntP1WMwzHqD2lPnKJfU6ZRw82kIu\nZCyq\r\n=9hjG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH+LYf1MpJuaWTL1b4/4xPKe9LMmUw0FeHTqBhS3mEwKAiAwd925kGrz1MDdWdGmXHDvz61xzx91NY3D2gYMzsRk2Q=="}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.2.0_1524142947454_0.880476800609236"},"_hasShrinkwrap":false},"1.2.1":{"name":"@autocodingsystems/node-red-utils","version":"1.2.1","description":"Utility nodes for handling ACS Gateways and workflows","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","node-red":{"nodes":{"array-split":"array-split.js","msg-flow":"msgflow.js","gateway-event":"gateway-event.js","device-clear":"gateway-device-clear.js","device-update":"gateway-device-update.js","device-resolve":"gateway-device-resolve.js","vision-inspection-receive":"vision-inspection.js"}},"dependencies":{"@autocodingsystems/vision-inspection":"2.0.4","signalr-client":"0.0.17"},"gitHead":"4cc0f361fe03a5ce5534f48d97eaabee7b4b5787","_id":"@autocodingsystems/node-red-utils@1.2.1","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"},"dist":{"integrity":"sha512-vtAKxx6BwoHDiB738U7PFKL/EmRVJmJnjMtmxt7nCrGI4Qh8YCsXqUqZO2oNaaduO9K3+RdFJSyEJEqw9zowug==","shasum":"6e69a9010cfa1e0d24d091eddacb3582ae157589","tarball":"https://registry.npmjs.org/@autocodingsystems/node-red-utils/-/node-red-utils-1.2.1.tgz","fileCount":18,"unpackedSize":116515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa30m8CRA9TVsSAnZWagAAcnUP/0o4PjOsBpvaS1bMloJS\nOaMqxAyy5J8tHPGgvzThqwxjowk7CgM3cyGj7f0jtR/ZleVm54+I94VBmbN0\nsZKM/3Mq5xXQybNMXQFXt2XEl2BwJ3TiSkfbdYx2IQH/zJ7vUwxxjsV3M3A6\nuPP6jIkwi1UaToxxUUBmR9/yomOHruG3OEFEada4ZL01GTUDzZpgoPnqFniX\n6LyP47dapY2b4/m4w5xqCL2T4YpMQVerWJE6L6Lq43CAd4dLbqvbtPX39VkZ\nZ112Pl4s/y68q6oFRfFH29GAIeX3kNglP7Y0L7AouXgZ2h7UZ15m2etYzrvm\n4lTf/eeuZfrNgAzjFkF/zlabF2XSOYE8ofwyzMtSg0rvXU/gcQ4EeHur+PGu\nyxU8F1LNjka7XI1G7k8OF8UufVfs/KDy33lzqi9cTAyhmwqvXTvXMUgwkXjV\nJXzPrNZ0tWlGpBVHhq657AqkkREIH71QJVDi8GOKH9kzWDE7owqxwL4dFdva\n98EYu7E+GgqYbWbJTYAitQsP+czr7IcsdwP4JQ7QoVZL+KhlMgIfkpx3qrzb\nBJu+vy7E3AST7BqP9IxcJyfePisFL4LCguRjSJJ7U/9mP57enX0sWH2/QJz+\nyErDAmL+afYLjegm8Nhr+ebP6v9kr82QM92DpOT1UGUh/9SCUWsmt2/Igm0b\nB7DH\r\n=Hh8h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCu0naBm2avi3Ki4o5cRPG0wKehhXhKQDIolPfSFd3EYgIhALtvQGfTIpnkxMdSz6LIq+FC2VTKb9LcCPb0x/md185q"}]},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-utils_1.2.1_1524582842567_0.23672448967471071"},"_hasShrinkwrap":false}},"time":{"created":"2018-03-15T16:10:25.691Z","1.0.0":"2018-03-15T16:10:26.049Z","modified":"2022-04-04T16:35:52.321Z","1.0.1":"2018-03-15T16:42:49.717Z","1.0.2":"2018-03-20T09:43:49.756Z","1.1.0":"2018-04-10T16:01:16.098Z","1.2.0":"2018-04-19T13:02:27.518Z","1.2.1":"2018-04-24T15:14:02.740Z"},"maintainers":[{"name":"autocodingadmin","email":"jimtupper@autocodingsystems.com"}],"description":"Utility nodes for handling ACS Gateways and workflows","author":{"name":"AutoCoding Systems Ltd"},"license":"ISC","readme":"ACS Node Red Utils\n==================\n\nUtility nodes for making workflows using the ACS Gateway\n\n# Nodes available\n\n## Gateway\n\nGateway nodes allow specific actions to be taken on an ACS Gateway.\n\n* `gateway-device-resolve` find a named device across multiple gateways\n* `gateway-device-update` sends a job to a device\n* `gateway-device-clear` clear the job from a device\n* `gateway-event` receive events from a gateway\n\n## Flow\n\nA \"flow\" is a controlled sequence for always running processes.\n\nMessages originate from a `begin` node and flow towards an `end` node. Once reached, a new message will be emitted from the `begin` node, making a never ending sequence of messages. A new message will not be emitted from `begin` until the previous message has hit an `end`, meaning there is only ever a single message in the flow.\n\nIf a flow message is split between 2 or more paths, the first message to hit an `end` node invalidates all other messages originating from the original `begin` message.\n\nA message that has been invalidated will not pass through an `inactive` node, so you can kill dead messages before they take any action by ensuring the action is guarded by these nodes.\n\nFlow messages can be trapped in a `trap` node and released at a later date by specially crafted release messages or http requests. A trapped message will be immediately destroyed if a sibling flow message hits an `end` node. A `trap` node can only hold one message at a time.\n\n* `begin` signals the start of message flow.\n* `end` terminates the current message flow and starts a new one.\n* `isactive` only passes messages that are part of an active message flow.\n* `trap` hold on to a message until it is released or until the flow is ended.\n* `route` send flow messages to one output or the other - is toggled by sending control messages to the node.\n\n## Miscellany\n\nGeneral nodes for handling common situations\n\n* `array-split` a simplified version of the split node that only supports arrays and has a dedicated \"empty\" output so that the associated `array-join` node can be triggered correctly even if there are no items in the array.\n* `array-join` wait for all the messages from the previous `array-split` to arrive, collate their payloads and carry on processing. Also wire the \"empty\" output from the `array-split` to the input to carry on processing if the array was empty.\n\n","readmeFilename":"README.md"}