Can't pass beyond "value should be a string"

I’ve tried so many iterations. I can’t get pass

Failed to call service script/1591614579377. value should be a string for dictionary value @ data[‘entity_id’]

My config for this script

'1591614579377':
  alias: Amsert Heat
  sequence:
  - data:
      duration:
        minutes: 135
      setpoint: 5
    entity_id: climate.kantoor
    service: evohome.set_zone_override

the “example data” in service is

entity_id: climate.bathroom
setpoint: 5
duration:
  minutes: 135

What am I doing wrong???

Try this:

  sequence:
  - service: evohome.set_zone_override
    data:
      entity_id: climate.kantoor
      duration: {minutes: 135}
      setpoint: 5

From the example here: https://www.home-assistant.io/integrations/evohome/#evohomeset_zone_override

Thanks for that - and indeed that work (got triggered). But sadly, the evo home didn’t adjust. I'm starting to suspect the integration has issues. It now works…

If I “call service” from the service tab under “developer tools” - with the example data - it triggers errors.

For reference, your code got reformatted by the UI to this which works:

'1591614579377':
  alias: Amsert Heat
  sequence:
  - data:
      duration:
        minutes: 135
      entity_id: climate.kantoor
      setpoint: 22
    service: evohome.set_zone_override

I did a compare with what was “my error” and it’s the 2 spaces I had to add under “entity_id”
What is weird is I use hassio, and use the UI most of the time for scripts. It’s the UI that generated the wrong code. I’m not competent enought in code to understand why but that’s that. And evohome was being a princess on me and worked after some time.
Cheers.

Check your log for errors after running the script.

You can open an issue here: https://github.com/home-assistant/core/issues?q=is%3Aissue+Evohome+is%3Aopen

1 Like