ioBroker

Dieser Artikel ist gültig ab Version aPAGER PRO ANDROID 5.5.0.77

Im folgenden Abschnitt wird erklärt wie aPager PRO Automatisierungen im beliebten Smart Home System ioBroker auslösen kann. Der Artikel kann für iOS adaptiert werden.

Inhalt

Hinweise

Die nachfolgenden Einstellungen funktionieren nur im lokalen Netzwerk. Sollen die Webhooks auch unterwegs funktionieren so muss ioBroker im Internet freigegeben werden. Dies und die Einrichtung und Installation von ioBroker selbst ist nicht Teil dieser Anleitung. Eine funktionsfähige, im lokalen Netzwerk erreichbare ioBroker Installation, wird vorausgesetzt.

Konfiguration

ioBroker

 

Screenshot 2024-02-01 at 15.32.55.png

Installieren Sie unter Adapter den links gezeigten Adapter

Screenshot 2024-02-01 at 15.33.39.png

 

Konfigurieren Sie den Adapter indem Sie diesen unter Instanzen öffnen. Er heißt dort simple-api.0

 

Stellen Sie bitte sicher unter IP den richtigen Netzwerkadapter zu nutzen. In unseren Tests konnte bei der Bindung auf alle Adapter nur ein Zugriff über IPv6 erfolgen, was nicht gewünscht sein dürfte.

 

 

 

 

Erstellen Sie unter Objekte einen eigenen Datenpunkt.

Basisordner: 0

Unterordner: webhook

Typ: Zustand

Zustandstyp: Zeichenkette

Name: apager-webhook

 

 

 

 

Wechseln Sie nun zu Skripte und erstellen ein neues Skript vom Typ “Blockly”

Prosatext:

Falls Objekt apager-webhook (unser gerade erstellter Datenpunkt) aktualisiert wurde (nicht geändert denn Stichwort und Einheit könnten bei aufeinander folgenden Einsätzen identisch sein) so erstelle aus dem Inhalt ein JSON-Objekt und weise es der Variable webhook_body zu. Gebe dann eine Nachricht im Log Level Info aus, die die Felder keyword und unit des JSON-Objekts enthält. Diese Felder kommen aus der aPager PRO Konfiguration, siehe unten. Natürlich kann hier jede beliebige Automatisierung erstellt werden, etwa die Übergabe an telegram, das Schalten von Hue Lampen, etc. doch dies ist außerhalb dieser kurzen Anleitung.

 

Ggf. kann je nach Version der folgende Code-Block auch direkt importiert werden:

<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="Uq(Z~m~!bmW~.6MQYnVe">webhook_body</variable> </variables> <block type="on_ext" id="B*m$g:59!sPyal3$sx3h" x="38" y="38"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="_%ru6$`%Wy,uIHyn3iU/"> <field name="oid">0_userdata.0.webhook.apager-webhook</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="1P/cXx!,PaGy22D`7XGz"> <field name="VAR" id="Uq(Z~m~!bmW~.6MQYnVe">webhook_body</field> <value name="VALUE"> <block type="convert_json2object" id="/A|g~x=KvKV#4_V4VQ~k"> <value name="VALUE"> <block type="on_source" id="|lHzpvvhZFY_mK@3eLzY"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="debug" id="Uoco0Iq=2a0nGdaUy6GF"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="b{:4OwOKc6ET]Z$$9|Q7"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="CHUg;6uZ4[|^Zw*weIH8"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="U2E,h{tg32(V~+93`aVU"> <field name="TEXT">Stichwort: </field> </block> </value> <value name="ADD1"> <block type="get_attr" id="=1+zXvl~Iwl.5qHr#d,|"> <value name="PATH"> <shadow type="text" id="R=otstKtGGrBa#yXKXig"> <field name="TEXT">keyword</field> </shadow> </value> <value name="OBJECT"> <block type="variables_get" id="?OQdhREG~Y*C]:nTIl[n"> <field name="VAR" id="Uq(Z~m~!bmW~.6MQYnVe">webhook_body</field> </block> </value> </block> </value> <value name="ADD2"> <block type="text" id="3Ubze`B3z!0ZtqY1UdP^"> <field name="TEXT">. Einheit: </field> </block> </value> <value name="ADD3"> <block type="get_attr" id="}Ntyd2qE_aQ*TYPlm9+L"> <value name="PATH"> <shadow type="text" id="7PkX8[)=BQ5gA!F(H}tG"> <field name="TEXT">unit</field> </shadow> </value> <value name="OBJECT"> <block type="variables_get" id="yVWEmie[|?83H;a|KcFY"> <field name="VAR" id="Uq(Z~m~!bmW~.6MQYnVe">webhook_body</field> </block> </value> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </xml>

aPager PRO Android

 

Bitte konfigurieren Sie den Webhook wie folgt

  1. Ihre ioBroker Adresse inkl. Port im lokalen Netzwerk.
    Hier den Port des Adapters simple-api verwenden, nicht den ioBroker Web Port. Der Rest der URL kann 1:1 so gelassen werden, vorausgesetzt Sie haben den Datenpunkt oben in 0/webhook/apager-webhook erstellt.

  2. HTTP-Modus POST

  3. Einheitenkennung übertragen wenn gewünscht. In ioBroker nutzbar wie im o.g. Blockly Script verdeutlicht.

  4. Stichwort übertragen wenn gewünscht. In ioBroker nutzbar wie im o.g. Blockly Script verdeutlicht.

Verwandte Artikel