Xiaomi Aqara wireless switch (with gyroscope) MQTT2

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
djuscha
Beiträge: 130
Registriert: 14. Mai 2016 00:12
Answers: 0

Xiaomi Aqara wireless switch (with gyroscope) MQTT2

Beitrag von djuscha »

heute sind meine Xiaomi Aqara wireless switch aus China gekommen einmal gyroscope einmal ohne hab versucht die beiden inBetrieb zu nehmen und der mit gyroscope macht mir Probleme .Neustart und Cache hab ich schon gelöscht trotzdem ist irgentwie verdreht.
obere ist mit untere ohne gyroscope

Code: Alles auswählen

  
          Thing mqtt:topic:mosquitto:0x00158d00042720fe  "Xiaomi TasterSH" (mqtt:broker:mosquitto) @ "MQTT"  {
        Channels:
           Type string : action "TasterSH" 
             [ stateTopic="zigbee2mqtt/0x00158d00042720fe", transformationPattern="JSONPATH:$.action" ]

           Type string : click "TasterSHack" 
            [ stateTopic="zigbee2mqtt/0x00158d00042720fe", transformationPattern="JSONPATH:$.click" ] 

            Type number : linkquality "RSSISH" 
                [ stateTopic="zigbee2mqtt/0x00158d00042720fe", transformationPattern="JSONPATH:$.linkquality" ]
                
            Type number : battery "BatterieSH" 
                [ stateTopic="zigbee2mqtt/0x00158d00042720fe", transformationPattern="JSONPATH:$.battery" ]
            Type number : voltage "VoltageSH" 
                [ stateTopic="zigbee2mqtt/0x00158d00042720fe", transformationPattern="JSONPATH:$.voltage" ]


} 

  Thing mqtt:topic:mosquitto:0x00158d000205a1c8  "Xiaomi TasterSH" (mqtt:broker:mosquitto) @ "MQTT"  {
        Channels:
            Type string : click "Taster"             
               [ stateTopic="zigbee2mqtt/0x00158d000205a1c8", transformationPattern="JSONPATH:$.click" ]

            Type number : linkquality "RSSI" 
                [ stateTopic="zigbee2mqtt/0x00158d000205a1c8", transformationPattern="JSONPATH:$.linkquality" ]                    
            Type number : battery "Batterie" 
                [ stateTopic="zigbee2mqtt/0x00158d000205a1c8", transformationPattern="JSONPATH:$.battery" ]
            Type number : voltage "Voltage" 
                [ stateTopic="zigbee2mqtt/0x00158d000205a1c8", transformationPattern="JSONPATH:$.voltage" ]
} 

Code: Alles auswählen

  //Aqara Taster shake

String AqaraTastSH        "Click [%s]"       <action>                 {channel="mqtt:topic:mosquitto:0x00158d00042720fe:click"}
String AqaraTastShacke        "Shake [%s]"       <action>             {channel="mqtt:topic:mosquitto:0x00158d00042720fe:action"}
Number AqaraTastSH_RSSI    "Linkquality [%d] " <network>  {channel="mqtt:topic:mosquitto:0x00158d00042720fe:linkquality"}
Number AqaraTastSH_Batt        "Batterie " <battery>                               {channel="mqtt:topic:mosquitto:0x00158d00042720fe:battery"}



//Aqara Taster 

String AqaraTast        "Click [%s]"     <action>                   {channel="mqtt:topic:mosquitto:0x00158d000205a1c8:click"}
Number AqaraTast_RSSI     "Linkquality [%d] " <network>                     {channel="mqtt:topic:mosquitto:0x00158d000205a1c8:linkquality"}
Number AqaraTast_Batt     "Batterie " <battery>                               {channel="mqtt:topic:mosquitto:0x00158d000205a1c8:battery"}
wie so hab ich denn warn im log? ist doch nichts verdreht . in der Sitemap wird alles richtig angezeigt.

Code: Alles auswählen

  [WARN ] [t.generic.ChannelStateTransformation] - Executing the JSONPATH-transformation failed: Invalid path '$.action' in '{"battery":100,"voltage":3095,"linkquality":18,"click":"single"}'
 
 [WARN ] [t.generic.ChannelStateTransformation] - Executing the JSONPATH-transformation failed: Invalid path '$.click' in '{"battery":100,"voltage":3095,"linkquality":28,"action":"shake"}'

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Xiaomi Aqara wireless switch (with gyroscope) MQTT2

Beitrag von udo1toni »

Wenn Du Dir das JSON Objekt anguckst (wird ja mit ausgegeben) kannst Du sehen, dass das angefragte Element jeweils nicht im JSON Objekt enthalten ist. Du kannst über REGEX prüfen, ob der Ausdruck im JSON Objekt vorhanden ist (kompliziert; ich hab nur mal eine entsprechende Anleitung im englischen Forum überflogen) oder pragmatisch vorgehen, nämlich nur einen Channel mit dem gesamten JSON Objekt als String anlegen und diesen in einer Rule in unterschiedliche Items schreiben. In der Rule kannst Du besser auf nicht vorhandene Ausdrücke prüfen und die entsprechenden Items überspringen.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
djuscha
Beiträge: 130
Registriert: 14. Mai 2016 00:12
Answers: 0

Re: Xiaomi Aqara wireless switch (with gyroscope) MQTT2

Beitrag von djuscha »

es wird ja so ausgegeben wie in der Warnung steht
"battery":100,"voltage":3095,"linkquality":18,"click":"single" wenn ich klicke kommt nur 'click' ,'action' kommt ja nicht und anders rum ..es geht ja auch alles nur die Warnung stört mich :(

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Xiaomi Aqara wireless switch (with gyroscope) MQTT2

Beitrag von udo1toni »

Wie gesagt, die Warnung wirst Du los, indem Du die Items nicht direkt mit channels versiehst, sondern eine Rule verwendest.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten