hassio-addons / addon-node-red

Node-RED - Home Assistant Community Add-ons
https://addons.community
MIT License
529 stars 122 forks source link

'call service' nodes are failing after upgrade to v17: required key not provided #1810

Closed casperklein closed 6 months ago

casperklein commented 8 months ago

I am cross-posting here, because it's not clear to me, if it's an issue with the addon or the node-red-contrib-home-assistant-websocket.

Problem/Motivation

After Upgrading the Node-Red Addon from v16.0.2 to 17.x.x, the "call service" nodes are failing.

This error is shown: [error] [api-call-service:TV: Source Live TV] HomeAssistantError: required key not provided @ data['source']

When I checked the nodes, they still contain the correct data, which the error messages complains about.

Workarround I did found

After some testing I recognized, that just opening, closing the affected nodes and deploying fixed the issue somehow.

I reverted back to the working 16.0.2 addon version. Then I exported the node as json. After that, I upgrade to 17.0.3 and "fixed" the node by opening them and clicking done. As earlier noticed, this alone changed something in the node. To confirm that, I exported the node again.

Node Export 16.0.2 ``` [ { "id": "f3b62135.127aa", "type": "api-call-service", "z": "1c9d28fa.d1c817", "name": "TV: Source Live TV", "server": "81dba471.c33528", "version": 5, "domain": "media_player", "service": "select_source", "areaId": [], "deviceId": [], "entityId": [ "media_player.tv" ], "data": "{\"source\":\"LiveTV\"}", "mergeContext": "", "mustacheAltTags": false, "outputProperties": [], "queue": "none", "x": 850, "y": 280, "wires": [ [ "116c5b62.93bd2d", "14eafb16.d8a37d" ] ] }, { "id": "81dba471.c33528", "type": "server", "name": "Home Assistant", "version": 5, "addon": true, "rejectUnauthorizedCerts": true, "ha_boolean": "y|yes|true|on|home|open", "connectionDelay": true, "cacheJson": true, "heartbeat": false, "heartbeatInterval": "30", "areaSelector": "friendlyName", "deviceSelector": "friendlyName", "entitySelector": "friendlyName", "statusSeparator": "at: ", "statusYear": "hidden", "statusMonth": "short", "statusDay": "numeric", "statusHourCycle": "h23", "statusTimeFormat": "h:m", "enableGlobalContextStore": true } ] ```
Node Export 17.0.3 ``` [ { "id": "f3b62135.127aa", "type": "api-call-service", "z": "1c9d28fa.d1c817", "name": "TV: Source Live TV", "server": "81dba471.c33528", "version": 5, "debugenabled": false, "domain": "media_player", "service": "select_source", "areaId": [], "deviceId": [], "entityId": [ "media_player.tv" ], "data": "{\"source\":\"LiveTV\"}", "dataType": "jsonata", "mergeContext": "", "mustacheAltTags": false, "outputProperties": [], "queue": "none", "x": 850, "y": 280, "wires": [ [ "116c5b62.93bd2d", "14eafb16.d8a37d" ] ] }, { "id": "81dba471.c33528", "type": "server", "name": "Home Assistant", "version": 5, "addon": true, "rejectUnauthorizedCerts": true, "ha_boolean": "y|yes|true|on|home|open", "connectionDelay": true, "cacheJson": true, "heartbeat": false, "heartbeatInterval": "30", "areaSelector": "friendlyName", "deviceSelector": "friendlyName", "entitySelector": "friendlyName", "statusSeparator": "at: ", "statusYear": "hidden", "statusMonth": "short", "statusDay": "numeric", "statusHourCycle": "h23", "statusTimeFormat": "h:m", "enableGlobalContextStore": true } ] ```

The second export has these two additional lines:

"debugenabled": false,
"dataType": "jsonata",

Expected behavior

The nodes should be working after the upgrade without manual actions.

Actual behavior

The nodes are not working any more and throw an error.

Steps to reproduce

Upgrade from 16.0.2 to 17.x.x

github-actions[bot] commented 7 months ago

There hasn't been any activity on this issue recently, so we clean up some of the older and inactive issues. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by leaving a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thanks!

casperklein commented 7 months ago

This is still an issue when upgrading from 16.0.2 to 17.0.7.

github-actions[bot] commented 6 months ago

There hasn't been any activity on this issue recently, so we clean up some of the older and inactive issues. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by leaving a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thanks!