Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Respons fra HeatIt!-termostater - hvordan splitter jeg en trigger to ganger?


Anbefalte innlegg

Skrevet (endret)

Jeg har gått over til ZWave JS fra OZW, og det sender respons litt annerledes enn OZW. Det gjør at automasjonene mine får hikke. For jeg har brukt denne automasjonen for å sende responsen på MQTT til EventGhost:

 

  action:
    data_template:
      payload_template: "{{states('climate.termostat_'+trigger.from_state.attributes.friendly_name.split(' ')[1])}},{{state_attr('climate.termostat_'+trigger.from_state.attributes.friendly_name.split(' ')[1], 'node_id')}},{{state_attr('climate.termostat_'+trigger.from_state.attributes.friendly_name.split(' ')[1], 'current_temperature')}},{{trigger.from_state.attributes.friendly_name.split(' ')[1]}},{{state_attr('climate.termostat_'+trigger.from_state.attributes.friendly_name.split(' ')[1], 'temperature')}}"
      topic: eg/Gulvtemperatur
    service: mqtt.publish
  condition: []
  id: '110343257'
  trigger:
  - platform: state
    entity_id:
      - sensor.termostat_1_temperature
      - sensor.termostat_2_temperature
      - sensor.termostat_3_temperature

 

Tidligere fikk jeg med  trigger.from_state.attributes.friendly_name.split(' ')[1] fram nummeret på termostaten (etter sonen i huset), som 1, 2 eller 3. Men med ZWave JS kommer det som 1:, 2:, 3: - altså med et kolon slengt på. Hvordan kan jeg enklest fjerne det kolonet og få fram bare tallene? I et anfall av overmot og overdreven kreativitet prøvde jeg å bytte det ut med trigger.from_state.attributes.entity_id.split('_')[1], men det ga bare total hikke:

 

Sitat

Gulvtemperatur med modus: Error executing script. Invalid data for call_service at pos 1: string value is None for dictionary value @ data['payload_template']
Gulvtemperatur med modus: Error executing script. Error for call_service at pos 1: Error rendering data template: UndefinedError: 'mappingproxy object' has no attribute 'entity_id'

 

 

Endret av Mastiff
Skrevet (endret)

Det vet jeg ikke, men jeg har nettopp fått løst det (for 20 minutter siden, sånn omtrent). Dette funker:

trigger.from_state.attributes.friendly_name.split(' ')[1].split(":")[0]

 

Endret av Mastiff

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.