Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Dieser Artikel ist gültig ab Version

Status
colourGreen
titleaPAGER PRO ANDROID 5.5.0.77

Info

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

Inhalt

Hinweise

Info

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

Screenshot 2024-02-01 at 15.33.13.png

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

Screenshot 2024-02-01 at 15.34.30.png

Erstellen Sie unter Objekte einen eigenen Datenpunkt.

Basisordner: 0

Unterordner: webhook

Typ: Zustand

Zustandstyp: Zeichenkette

Name: apager-webhook

Hinweis

Die Baumstruktur muss nach der Erstellung genau wie auf dem Bild aussehen.

Screenshot 2024-02-01 at 15.32.11.png

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:

Codeblock
breakoutModewide
languagexml
<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

Screenshot_20240201-153741.png

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

Nach Stichwort filtern (Inhalt nach Stichwort)
showLabelsfalse
max10
showSpacefalse
cqllabel in ( "apagerpro" , "smart-home" ) and type = "page" and space = "documentation"