Använd IKEAs rörelsesensor med Home Assistant: Hämta ut sensorns status från Websockets meddelandet

  • Just nu vill jag jag bara skicka ett meddelande till Home Assistant när det är rorelsesensorn som uppdateras, och jag vill begränsa meddelandet till sensorns status.
  • För att åstadkomma detta, dra klossen ‘function’ från gruppen ‘function’ i spaltet till vänster till arbetsytan och koppla ihop den med klossen ‘json’.
  • Dubbelklicka klossen ‘function’ för att redigera den. Ange ett namn för klossen.
  • I textrutan under namnet, skriv följande kod:
    if (msg.payload.id === "4") {
        msg.payload = {
            "state" : msg.payload.state.presence
        }
        return msg;    
    } else {
        return false;
    }
    
    Ersätt ‘4’ med IDn av din rörelsesensor som du antecknade tidigare.
  • Den här koden gör att om meddelandet från Websockets servern handlar om en sensor med ID 4 så filtreras meddelandets innehåll till et vi senare kommer skicka vidare till Home Assistant, nämligen bara information om sensorns status. Annars förkastas meddelandet.
  • Tryck på knappen ‘Done’. Koppla bort klossen ‘msg.payload’ från klossen ‘json’ och anslut den till funktionsklossen istället. Tryck sedan på knappen ‘Deploy’.
  • Nu när du viftar med handen över rörelsesensorn, kommer du se att bara informationen om sensorns status skrivs ut i ‘Debug’ fliken.
  • Innan vi kan skicka informationen vidare till Home Assistant, behöver vi konvertera den tillbaka till JSON igen. Dra en till kloss ‘json’ från gruppen ‘function’ i spaltet till vänster till arbetsytan och anslut den till funktionsklossen.

Kommentarer