Ich habe folgendes Skript geschrieben um unsere Räume erst zu saugen und anschließend gleich zu wischen. Wir haben einen Roborock Qrevo Pro. Das saugen funktioniert mit dem Skript auch wunderbar. Nur fährt er leider nicht los zum wischen. Kann mir jemand sagen, welchen Fehler ich gemacht habe?
sequence:
- action: vacuum.set_fan_speed
metadata: {}
data:
fan_speed: max
target:
device_id: 84cf2e840d24d0e5bddb350d06dd6127
- device_id: 84cf2e840d24d0e5bddb350d06dd6127
domain: select
entity_id: e6ff32c9f3475e9a2f0b4c444ae121e7
type: select_option
option: "off"
- action: vacuum.send_command
metadata: {}
data:
command: app_segment_clean
params:
- 24
target:
device_id: 84cf2e840d24d0e5bddb350d06dd6127
- wait_for_trigger:
- trigger: state
entity_id:
- vacuum.roborock_qrevo_pro
to: docked
for:
hours: 0
minutes: 1
seconds: 0
timeout:
hours: 1
minutes: 0
seconds: 0
milliseconds: 0
continue_on_timeout: false
- device_id: 84cf2e840d24d0e5bddb350d06dd6127
domain: select
entity_id: a657fa03eec29dc93030bd441d1eb62a
type: select_option
option: standard
- device_id: 84cf2e840d24d0e5bddb350d06dd6127
domain: select
entity_id: e6ff32c9f3475e9a2f0b4c444ae121e7
type: select_option
option: medium
- action: vacuum.set_fan_speed
metadata: {}
data:
fan_speed: "off"
- action: vacuum.send_command
metadata: {}
data:
command: app_segment_clean
params:
- 24
target:
device_id: 84cf2e840d24d0e5bddb350d06dd6127
alias: Staubi Schlafzimmer (saugen+wischen)
description: ""
icon: mdi:robot-vacuum
Thalion
14. Februar 2025 um 07:05
2
Hi,
ich tue mich gerade ein bisschen schwer, da du mit Device IDs arbeitest, aber wenn du mit app_segment_clean arbeitest müsste das zum Beispiel so aussehen:
- action: vacuum.send_command
metadata: {}
data:
command: app_segment_clean
params:
- segments:
- 24
target:
device_id: 84cf2e840d24d0e5bddb350d06dd6127
Dabei gehe ich davon aus, dass ID 24 auch wirklich der richtige Raum ist. Aber ohne den Absatz - segments: weiß der Robi nicht, was du ihm sagen willst
Ich hatte zwischenzeitlich das gleiche Problem. Das konnte ich zwar nun lösen, allerdings wechselt mein Roborock Qrevo QV35A zwischenzeitlich in den Vac&Mop Modus (also genau den Modus den ich nicht möchte).
Mein Script sieht vor, dass ich via einzelner Schalter-Entitäten die zu reinigenden Räume vorselektiere und dann auswähle, ob der Reinigungsmodus “Saugen” oder “Saugen & Wischen” sein soll (wobei Saugen & Wischen nacheinander geschehen soll).
sequence:
- if:
- condition: and
conditions:
- condition: state
entity_id: input_boolean.happy_bad_unten
state: "off"
- condition: state
entity_id: input_boolean.happy_elterschlafzimmer
state: "off"
- condition: state
entity_id: input_boolean.happy_essen
state: "off"
- condition: state
entity_id: input_boolean.happy_flur
state: "off"
- condition: state
entity_id: input_boolean.happy_gaste_wc
state: "off"
- condition: state
entity_id: input_boolean.happy_kuche
state: "off"
then:
- target:
entity_id: vacuum.happy
action: vacuum.start
data: {}
else:
- variables:
room_configs:
- name: Bad unten
boolean: input_boolean.happy_bad_unten
id: 2
- name: Elternschlafzimmer
boolean: input_boolean.happy_elterschlafzimmer
id: 4
- name: Essen
boolean: input_boolean.happy_essen
id: 3
- name: Gäste WC
boolean: input_boolean.happy_gaste_wc
id: 1
- name: Flur
boolean: input_boolean.happy_flur
id: 5
- name: Küche
boolean: input_boolean.happy_kuche
id: 6
- variables:
selected_rooms: |-
{% set ns = namespace(rooms=[]) %}
{% for room in room_configs %}
{% if is_state(room.boolean, 'on') %}
{% set ns.rooms = ns.rooms + [room.id] %}
{% endif %}
{% endfor %}
{{ ns.rooms }}
- choose:
- conditions:
- condition: state
entity_id: input_select.reinigungsmodus
state: Saugen
sequence:
- data:
command: set_custom_mode
params: 104
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
command: set_water_box_custom_mode
params: 200
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
command: app_segment_clean
params:
- segments: "{{ selected_rooms }}"
target:
entity_id: vacuum.happy
action: vacuum.send_command
- conditions:
- condition: state
entity_id: input_select.reinigungsmodus
state: Saugen & Wischen
sequence:
- data:
command: set_custom_mode
params: 104
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
command: set_water_box_custom_mode
params: 200
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
command: app_segment_clean
params:
- segments: "{{ selected_rooms }}"
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
message: >-
Saugen beendet. Warte auf Rückkehr des Roboters zur
Dockingstation. Aktueller Status: {{ states('vacuum.happy')
}}
level: info
action: system_log.write
- wait_template: |-
{{ is_state('vacuum.happy', 'returning_home') or
is_state('vacuum.happy', 'docking') or
is_state('vacuum.happy', 'charging') or
is_state('vacuum.happy', 'docked') }}
timeout: "00:30:00"
continue_on_timeout: false
- data:
message: >-
Roboter ist zurückgekehrt und angedockt. Starte 15 Minuten
Verzögerung. Aktueller Status: {{ states('vacuum.happy') }}
level: info
action: system_log.write
- delay: "00:15:00"
- data:
message: >-
Verzögerung beendet. Bereite Wischvorgang vor. Aktueller
Status: {{ states('vacuum.happy') }}
level: info
action: system_log.write
- data:
command: set_custom_mode
params: 105
target:
entity_id: vacuum.happy
action: vacuum.send_command
- data:
command: set_water_box_custom_mode
params: 201
target:
entity_id: vacuum.happy
action: vacuum.send_command
- delay: "00:00:05"
- data:
command: app_segment_clean
params:
- segments: "{{ selected_rooms }}"
target:
entity_id: vacuum.happy
action: vacuum.send_command
default:
- data:
message: >-
Unbekannter Reinigungsmodus ausgewählt oder kein Reinigungsmodus
für Happy (unten) definiert.
level: warning
action: system_log.write
- wait_template: |-
{{ is_state('vacuum.happy', 'returning_home') or
is_state('vacuum.happy', 'docking') or
is_state('vacuum.happy', 'charging') or
is_state('vacuum.happy', 'docked') }}
continue_on_timeout: true
- target:
entity_id:
- input_boolean.happy_bad_unten
- input_boolean.happy_elterschlafzimmer
- input_boolean.happy_essen
- input_boolean.happy_flur
- input_boolean.happy_gaste_wc
- input_boolean.happy_kuche
action: input_boolean.turn_off
data: {}
alias: Happy (unten) (Modi)
description: ""
icon: mdi:robot-vacuum
Kann mir jemand etwas unter die Arme greifen?