CCCPaste

Global Variables - Set or Update Value

alias: Global Variables - Set or Update Value
description: >-
  Gemmer en værdi i sensor.variables. Kan håndtere simple værdier (key, value)
  eller opdatere en nøgle i en nestet tabel (table_name, key, value). Inkluderer
  valgfri tidsstempel-funktion.
sequence:
  - choose:
      - conditions:
          - condition: template
            value_template: "{{ nested_key is defined }}"
        sequence:
          - variables:
              existing_data: "{{ state_attr('sensor.variables', 'variables') }}"
              table: >-
                {{ existing_data.get(key, {}) if existing_data.get(key) is
                mapping else {} }}
              new_data: "{{ {nested_key: value} }}"
          - event: set_variable
            event_data:
              key: "{{ key }}"
              value: "{{ table | combine(new_data) }}"
              set_timestamp: "{{ set_timestamp }}"
        alias: Opdater Nestet Værdi (Tabel)
    default:
      - event: set_variable
        event_data:
          key: "{{ key }}"
          value: "{{ value }}"
          set_timestamp: "{{ set_timestamp }}"
        alias: Sæt Simpel Værdi
fields:
  key:
    name: Variabel/Tabel Nøgle
    description: >-
      Nøglen der skal gemmes (hvis simpel) ELLER navnet på tabellen (hvis
      nestet). (F.eks. Last_Run_Time ELLER SPIES_AIRPORTS)
    required: true
    selector:
      text:
        multiline: false
  value:
    name: Værdi
    description: Værdien der skal gemmes (f.eks. 'I dag' ELLER 12345).
    required: true
    selector:
      text:
        multiline: false
  nested_key:
    name: Nestet Nøgle (Valgfri)
    description: Hvis denne angives, opdateres en nøgle inde i tabellen.
    example: Aalborg
    required: false
    selector:
      text:
        multiline: false
  set_timestamp:
    name: Med Tidsstempel?
    description: "Valgfrit: Sæt til 'true' hvis værdien skal gemmes med et tidsstempel."
    required: false
    default: false
    selector:
      boolean: null