Enable and disable apps in ctrlX CORE

This flow is an example how to enable and disable an app using node-RED and the ctrlX CORE api

[{"id":"131fa555.c8c5bb","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"38de6817.f510c8","type":"inject","z":"131fa555.c8c5bb","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"name\":\"boschrexroth\",\"password\":\"boschrexroth\"}","payloadType":"json","x":260,"y":160,"wires":[["4e809144.df3f7"]]},{"id":"4e809144.df3f7","type":"http request","z":"131fa555.c8c5bb","name":"","method":"POST","ret":"obj","paytoqs":"ignore","url":"https://localhost/identity-manager/api/v1/auth/token","tls":"e716e0c0.ba889","persist":false,"proxy":"","authType":"","x":490,"y":160,"wires":[["6ac1d37d.6fc48c"]]},{"id":"84a5d8d6.d19328","type":"inject","z":"131fa555.c8c5bb","name":"enable","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"action\":\"enable\",\"parameters\":{\"id\":\"my-snap\"}}","payloadType":"json","x":250,"y":280,"wires":[["e31d799b.4f37e8"]]},{"id":"c2288148.7d2aa","type":"http request","z":"131fa555.c8c5bb","name":"POST /package-manager/api/v1/tasks","method":"POST","ret":"obj","paytoqs":"ignore","url":"https://localhost/package-manager/api/v1/tasks","tls":"e716e0c0.ba889","persist":false,"proxy":"","authType":"","x":690,"y":280,"wires":[["e2e7ff3.997cd"]]},{"id":"e31d799b.4f37e8","type":"function","z":"131fa555.c8c5bb","name":"Inject token","func":"msg[\"headers\"] = {\n    \"Authorization\": \"Bearer \"+flow.get(\"token\")\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":440,"y":280,"wires":[["c2288148.7d2aa"]]},{"id":"8ed00cfa.25872","type":"debug","z":"131fa555.c8c5bb","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1170,"y":280,"wires":[]},{"id":"6ac1d37d.6fc48c","type":"change","z":"131fa555.c8c5bb","name":"","rules":[{"t":"set","p":"token","pt":"flow","to":"payload.access_token","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":700,"y":160,"wires":[["6858a2cb.a7a9ac"]]},{"id":"6858a2cb.a7a9ac","type":"debug","z":"131fa555.c8c5bb","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":870,"y":160,"wires":[]},{"id":"3872dbe8.d2b5f4","type":"inject","z":"131fa555.c8c5bb","name":"disable","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"action\":\"disable\",\"parameters\":{\"id\":\"my-snap\"}}","payloadType":"json","x":250,"y":340,"wires":[["e31d799b.4f37e8"]]},{"id":"b2f76309.cd4a6","type":"inject","z":"131fa555.c8c5bb","name":"status","props":[],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":250,"y":400,"wires":[["90937e45.6147d"]]},{"id":"1ca992.9d29666e","type":"http request","z":"131fa555.c8c5bb","name":"GET /package-manager/api/v1/tasks/{id}","method":"GET","ret":"obj","paytoqs":"ignore","url":"","tls":"e716e0c0.ba889","persist":false,"proxy":"","authType":"","x":700,"y":400,"wires":[["2ceb9379.9b2dfc"]]},{"id":"90937e45.6147d","type":"function","z":"131fa555.c8c5bb","name":"Inject token","func":"msg[\"headers\"] = {\n    \"Authorization\": \"Bearer \"+flow.get(\"token\")\n}\nmsg[\"url\"] = \"https://localhost/package-manager/api/v1/tasks/\"+flow.get(\"last_task\")\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":440,"y":400,"wires":[["1ca992.9d29666e"]]},{"id":"2ceb9379.9b2dfc","type":"debug","z":"131fa555.c8c5bb","name":"","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload.state","statusType":"msg","x":970,"y":400,"wires":[]},{"id":"e2e7ff3.997cd","type":"change","z":"131fa555.c8c5bb","name":"","rules":[{"t":"set","p":"last_task","pt":"flow","to":"payload.id","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":970,"y":280,"wires":[["8ed00cfa.25872"]]},{"id":"ffb2a8a8.7e4858","type":"comment","z":"131fa555.c8c5bb","name":"app id needs to be configured in inject node","info":"","x":330,"y":240,"wires":[]},{"id":"89780673.dfa7b8","type":"comment","z":"131fa555.c8c5bb","name":"credentials need to be configured in inject node","info":"","x":340,"y":120,"wires":[]},{"id":"e716e0c0.ba889","type":"tls-config","name":"","cert":"","key":"","ca":"","certname":"","keyname":"","caname":"","servername":"","verifyservercert":false}]

Flow Info

Created 3 years, 3 months ago
Rating: not yet rated

Owner

Actions

Rate:

Node Types

Core
  • change (x2)
  • comment (x2)
  • debug (x3)
  • function (x2)
  • http request (x3)
  • inject (x4)
  • tls-config (x1)
Other
  • tab (x1)

Tags

  • ctrlx
  • Bosch_Rexroth
  • ctrlX_CORE
  • ctrlXCORE
  • ctrlX_AUTOMATION
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option