Parameter an Skript übergeben und dort auswerten

So nach viel rumbastelei und zahllosen try and error Durchgängen habe ich es tatsächlich selbst geschafft, das Ding zum Laufen zu bekommen.

Am Ende habe ich’s dann sogar mein bisheriges Rolladengerät mit sämtlichen Entitäten umbenannt und versteckt, damit klar ist, dass dieses Gerät nicht direkt bedient werden soll, sondern nur das zuvorgeschaltete Template Cover verwendet werden sollte.
Mein Template Cover und das dazugehörige Skript sind hier anbei.

Template Cover:

cover:
  - platform: template
    covers:
      rolladen_balkon:
        unique_id: GESICHERTEBALKONROLLADENSTEUERUNG
        device_class: shutter
        friendly_name: "Rolladen Balkon"
        value_template: "{{ states('cover.rolladen_device_balkon') }}"
        position_template: "{{ state_attr('cover.rolladen_device_balkon','current_position') }}"
        open_cover:
          service: script.steuerung_balkon_rolladen_sicher
          data:
            modus: "open"
        close_cover:
          service: script.steuerung_balkon_rolladen_sicher
          data:
            modus: "close"
        stop_cover:
          service: script.steuerung_balkon_rolladen_sicher
          data:
            modus: "stop"
        set_cover_position:
          service: script.steuerung_balkon_rolladen_sicher
          data:
            modus: "set_position"
            neueposition: "{{ position }}"

Script für die Rolladensteuerung:

alias: Steuerung Balkon Rolladen sicher
sequence:
  - choose:
      - conditions:
          - condition: template
            value_template: |-
              {%- if (modus in [ "open", "stop"]) -%} 
              true  {%- else -%}  false  {%- endif -%}
            alias: Prüfen Öffnen oder Stopp
        sequence:
          - service: cover.{{modus}}_cover
            target:
              entity_id:
                - cover.rolladen_device_balkon
        alias: Risikofrei - öffnen oder stopp
      - conditions:
          - alias: Prüfe auf Schliessen
            condition: template
            enabled: true
            value_template: |-
              {%- if (modus == "close") -%} true
              {%- else -%} false 
              {%- endif -%}
        sequence:
          - alias: Warte auf -no presence-
            if:
              - condition: state
                entity_id: binary_sensor.aquara_balkon_presence
                state: "on"
            then:
              - wait_for_trigger:
                  - platform: state
                    entity_id:
                      - binary_sensor.aquara_balkon_presence
                    to: "off"
          - service: cover.close_cover
            metadata: {}
            data: {}
            target:
              entity_id: cover.rolladen_device_balkon
        alias: Schliessen
      - conditions:
          - alias: Prüfe auf Set Position
            condition: template
            value_template: |-
              {%- if ( modus == "set_position" ) -%} true 
              {%- else -%} false 
              {%- endif -%}
            enabled: true
        sequence:
          - alias: Warte auf -no presence-
            if:
              - condition: state
                entity_id: binary_sensor.aquara_balkon_presence
                state: "on"
              - condition: template
                value_template: |-
                  {%- if ( neueposition | int <=70) -%} true 
                  {%- else -%} false 
                  {%- endif -%}
            then:
              - alias: Warte auf no-presence
                wait_for_trigger:
                  - platform: state
                    entity_id:
                      - binary_sensor.aquara_balkon_presence
                    to: "off"
          - service: cover.set_cover_position
            metadata: {}
            data:
              position: "{{ neueposition|int }}"
            target:
              entity_id: cover.rolladen_device_balkon
            enabled: true
        alias: Position setzen
    enabled: true
mode: restart

Vielleicht hilft es ja dem einen oder anderen. :wink: