It´s possible that I expressed myself wrong. I want call this services in automation.
Of course you can do that.
In UI:
In yaml:
service: climate.set_preset_mode
entity_id: climate.netatmo_wohnzimmer
data:
preset_mode: schedule
Just ask outside the thermostat. Yesterday I received a camera from netatmo. Today I noticed that integration only works in dev integration. Is cloud integration also planned?
In theory cameras could also work with the cloud link and that is also the plan for the future. Right now we are facing issues with webhook events that have to be resolved before opening up the cloud link supported devices for cameras. Otherwise the functionality would be very limited and would not result in a good user experience.
In other words, we are working on this.
Hello,
I would like to retrieve the schedules from the netatmo app to an input select. But the app sends me codes, and I would like to translate them into simple names as presented in the netatmo app.
If anyone can help me or enlighten me for the data_template of the input_select.
Thank you
PS: Sorry for my english (thank you google)
## Enregistrement du planning des températures
- id: "automation_netatmo_1"
alias: "netatmo_event Planning de temperature"
trigger:
- platform: event
event_type: netatmo_event
event_data:
type: "schedule"
action:
- service: input_select.select_option
target:
entity_id: input_select.netatmo_planning_select
data_template:
option: >-
{% if {{ trigger.event.data["data"]["schedule_id"] }} = "5fd919d6566c66474e3c2f6d" %}
Planning normal
{% elif {{ trigger.event.data["data"]["schedule_id"] }} = "5fda84e07f7a4c7098753535" %}
vacances a la maison
{% else %}
erreur automation_netatmo_1
{% endif %}
The code below works perfectly but does not offer me common schedule names
- service: input_select.select_option
target:
entity_id: input_select.netatmo_planning_select
data:
option: '{{ trigger.event.data["data"]["schedule_id"] }}'
- service: notify.notification_texte
data:
message: passage au planning {{ trigger.event.data["data"]["schedule_id"] }}
The climate entity has an attribute selected_schedule
. If you only need to retrieve them once, this should be sufficient, no?
The goal is to no longer use the Netatmo app.
And we would select the desired type of schedule directly in homeassistant (via an input_select): Normal, vacances a la maison, teletravail.
Since the netatmo.set_schedule service does not work, it does not work with the name I thought we should use the ID
I am not sure if I understand the issue but netatmo.set_schedule
works fine as far as I can tell.
Thank you for your help. But when I test the service, it gives me an error. So I thought we should use the schedule_id
2021-02-25 12:05:45 ERROR (SyncWorker_36) [homeassistant.components.netatmo.climate] You passed an invalid schedule
Are you sure that schedule exists?
I’m sure the schedule exists.
the webhook does not return a schedule_name, but only schedul_id
[image]
Événement 0 déclenché 7:48:
{
“event_type”: “netatmo_event”,
“data”: {
“type”: “schedule”,
“data”: {
“user_id”: “5f4ce5c369232000622e1aa8”,
“user”: {
“id”: “5f4ce5c369232000622e1aa8”,
“email”: “[email protected]”
},
“home_id”: “5fd919d6566c66474e3c2f6c”,
“event_type”: “schedule”,
“schedule_id”: “600602e60180ba5fbf12f1ee”,
“previous_schedule_id”: “5fda84e07f7a4c7098753535”,
“push_type”: “home_event_changed”
}
},
“origin”: “LOCAL”,
“time_fired”: “2021-02-27T06:48:18.395412+00:00”,
“context”: {
“id”: “9837d9a20238bcda32df6b3675aef674”,
“parent_id”: null,
“user_id”: null
}
}
Maybe I’m targeting the wrong device. At home I have a thermostat and valves. and with netatmo.set_schedule I send only to one device and not to the whole “system”
To be sure. with the climate netatmo we have 3 services:
- climate.set_temperature: Sends a temperature in manual boost over a period defined in the application type: set_point
Réponse du Webhook
{
“event_type”: “netatmo_event”,
“data”: {
“type”: “set_point”,
“data”: {
“user_id”: “5f4ce5c369232000622e1aa8”,
“user”: {
“id”: “5f4ce5c369232000622e1aa8”,
“email”: “[email protected]”
},
“home_id”: “5fd919d6566c66474e3c2f6c”,
“room_id”: “3220156309”,
“home”: {
“id”: “5fd919d6566c66474e3c2f6c”,
“name”: “Rochefort”,
“country”: “FR”,
“rooms”: [
{
“id”: “3220156309”,
“name”: “Cuisine”,
“type”: “kitchen”,
“therm_setpoint_mode”: “manual”,
“therm_setpoint_temperature”: 20.5,
“therm_setpoint_end_time”: 1614419700
}
],
“modules”: [
{
“id”: “09:00:00:14:92:ec”,
“name”: “Cuisine Fenetre”,
“type”: “NRV”
},
{
“id”: “09:00:00:14:93:31”,
“name”: “Cuisine Porte”,
“type”: “NRV”
}
]
},
“mode”: “manual”,
“event_type”: “set_point”,
“temperature”: 20.5,
“push_type”: “display_change”
}
},
“origin”: “LOCAL”,
“time_fired”: “2021-02-27T06:57:48.119264+00:00”,
“context”: {
“id”: “9edf6d153130d2702e710595caf5fdd7”,
“parent_id”: null,
“user_id”: null
}
}
- climate.preset.mode : General operating mode setting : Type: therm_mode
preset_modes: away / boost / Frost Guard / Schedule
reponse du webhook:
{
“event_type”: “netatmo_event”,
“data”: {
“type”: “therm_mode”,
“data”: {
“user_id”: “5f4ce5c369232000622e1aa8”,
“user”: {
“id”: “5f4ce5c369232000622e1aa8”,
“email”: “[email protected]”
},
“home_id”: “5fd919d6566c66474e3c2f6c”,
“event_type”: “therm_mode”,
“home”: {
“id”: “5fd919d6566c66474e3c2f6c”,
“therm_mode”: “away”
},
“mode”: “away”,
“previous_mode”: “schedule”,
“push_type”: “home_event_changed”
}
},
“origin”: “LOCAL”,
“time_fired”: “2021-02-27T07:03:54.361161+00:00”,
“context”: {
“id”: “b1a3493620a6c4a5da7d411203ab9ac2”,
“parent_id”: null,
“user_id”: null
}
}
- And the third ( netatmo.set_schedule) is for the change of schedule recorded in the netatmo application
{
“event_type”: “netatmo_event”,
“data”: {
“type”: “schedule”,
“data”: {
“user_id”: “5f4ce5c369232000622e1aa8”,
“user”: {
“id”: “5f4ce5c369232000622e1aa8”,
“email”: “[email protected]”
},
“home_id”: “5fd919d6566c66474e3c2f6c”,
“event_type”: “schedule”,
“schedule_id”: “5fd919d6566c66474e3c2f6d”,
“previous_schedule_id”: “5fda84e07f7a4c7098753535”,
“push_type”: “home_event_changed”
}
},
“origin”: “LOCAL”,
“time_fired”: “2021-02-27T07:09:20.763485+00:00”,
“context”: {
“id”: “a41f999a68482ab31636c11d11211042”,
“parent_id”: null,
“user_id”: null
}
}
And I do with or without space, with or without capital letter I always have:
2021-02-27 08:17:21 ERROR (SyncWorker_21) [homeassistant.components.netatmo.climate] You passed an invalid schedule
2021-02-27 08:19:08 ERROR (SyncWorker_22) [homeassistant.components.netatmo.climate] You passed an invalid schedule
2021-02-27 08:19:29 ERROR (SyncWorker_6) [homeassistant.components.netatmo.climate] You passed an invalid schedule
2021-02-27 08:20:45 ERROR (SyncWorker_17) [homeassistant.components.netatmo.climate] You passed an invalid schedule
2021-02-27 08:21:05 ERROR (SyncWorker_32) [homeassistant.components.netatmo.climate] You passed an invalid schedule
[image]
Yes, I know it returns the ID. But the integration knows the matching names for the IDs. I am certain that the name doesn’t match the internal name. I’ll have a think how to expose them within HA so you don’t have to guess.
@cgtobi that would be great, cause i have the same problem, and even looked through the code on github, to see that the code matched the name given to an id
But no matter what i try, i alway get an error with wrong schedule name
Please go to and search for your Netatmo climate device. This should give you the currently selected schedule.
Example:
That way you can find the valid name for your desired schedule.
Hi,
i have a similar issue with the set_schedule
service.
In my dev tools, when I select the Netatmo entities I have this :
preset_mode: Schedule
selected_schedule: Standard
friendly_name: Netatmo Salon
But when I’m doing this service call :
service: netatmo.set_schedule
data:
schedule_name: Standard
entity_id: climate.netatmo_salon
I have the following error log
pyatmo.exceptions.NoSchedule: 606e035b18439246ab32c715 is not a valid schedule id
I don’t know how the Netatmo API works, but I guess there is an internal ID for the schedule and I should use it instead of the schedule name ? Any idea how to find it ?
This is currently broken and should be fixed in the next bug fix release (probably 2021.5.2).
Hi @cgtobi, thanks for your answer (and for your contribution on Netatmo integration).
Is this PR the fix you are mentioning ? It appears that it was merge on 2015.5.1, which is already the version I use.
No, the fixes regarding the schedule issues is Bump pyatmo to 4.2.3 by cgtobi · Pull Request #50801 · home-assistant/core · GitHub.
Great, I’ll follow this PR thanks
Hi, I just want to say that it works great with 2021.5.5
now. Thanks a lot for maintaining this integration