Re: Sonoff (Tasmota) RF Bridge in OH3
Verfasst: 29. Jan 2021 07:20
Nein, die JSONPATH Transformation musst du erst installieren!!!
Hallo Stachi, JSONPATH habe ich installiert, leider hat sich nicht viel geändert.
Code: Alles auswählen
systemctl status mosquitto.service
Code: Alles auswählen
UID: mqtt:topic:Broker:RFBridge1
label: RF Bridge 1
thingTypeUID: mqtt:topic
configuration: {}
bridgeUID: mqtt:broker:Broker
channels:
- id: Chanel3
channelTypeUID: mqtt:contact
label: TürTest
description: null
configuration:
stateTopic: tele/RFBridge1/RESULT
transformationPattern: JSONPATH:$.RfReceived.RfKey2
on: 7A78B9
Code: Alles auswählen
UID: mqtt:topic:Broker:RFBridge1
label: RF Bridge 1
thingTypeUID: mqtt:topic
configuration: {}
bridgeUID: mqtt:broker:Broker
channels:
- id: Sensoren
channelTypeUID: mqtt:string
label: Sensoren
description: ""
configuration:
stateTopic: tele/RFBridge1/RESULT
Code: Alles auswählen
{"Time":"2021-02-01T17:38:26","RfReceived":{"Sync":8390,"Low":290,"High":840,"Data":"7AA0A6","RfKey":3}}
Code: Alles auswählen
Thing topic SoPa1 "So_Panale_1" {
Channels:
Type number : Leistung_1 "Watt_1" [ stateTopic="tele/SolarPanel_1/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ]
Type number : Leistung_2 "Watt_2" [ stateTopic="tele/SolarPanel_2/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ]
Type number : Leistung_3 "Watt_3" [ stateTopic="tele/SolarPanel_3/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ]
}
Hallo Steinadler,steinadler hat geschrieben: ↑2. Feb 2021 19:09 ---------------------------
transformationPattern="JSONPATH:$.ENERGY.Power"
---------------------------
exrtahiert zb. bei mir POWER aus dem JOSENPATH
Code: Alles auswählen
Thing topic SoPa1 "So_Panale_1" { Channels: Type number : Leistung_1 "Watt_1" [ stateTopic="tele/SolarPanel_1/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ] Type number : Leistung_2 "Watt_2" [ stateTopic="tele/SolarPanel_2/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ] Type number : Leistung_3 "Watt_3" [ stateTopic="tele/SolarPanel_3/SENSOR", transformationPattern="JSONPATH:$.ENERGY.Power" ] }
Code: Alles auswählen
var Timer tZeit = null // Objekt für Timer anlegen
rule "sonoffRF Kontakt Auswahl" // Ruletitel dürfen Leerzeichen und Sonderzeichen enthalten
when
Item RfData01 received update // falls 2 mal der gleiche Befehl kommt
then
if (RfData01.state == NULL) {
logInfo("RfBridge.rules", "Item is null, cancelling...")
return;
}
val sonoffRfData = RfData01.state.toString
logInfo("rfbridge.rules", "Received IT Codes: {}", sonoffRfData)
switch(sonoffRfData) {
case "07206E" : {
So_Ra.sendCommand(ON)
Thread::sleep(500)
playSound("doorbell.mp3", new PercentType(100))
Flur_Licht.sendCommand(ON)
tuerstrasse.sendCommand(ON)
if (Alarmanlage.state == ON)
{
executeCommandLine ("wget https://api.callmebot.com/whatsapp.php?phone=+xxxxxxx&text=Haustür+auf&apikey=xxxxxx")
}
}
case "072067" : { // flurlicht verzögert aus
So_Ra.sendCommand(OFF)
tuerstrasse.sendCommand(OFF)
tZeit?.cancel // falls ein Timer läuft, abbrechen
tZeit = createTimer(now.plusSeconds(30), [ | // Timer anlegen
Flur_Licht.sendCommand(OFF)
])
}
Code: Alles auswählen
//Sensoren
Switch stubenfenster "Stubenfenster" <window> (gSE)
Switch terassentuer "Tür Terasse" <door> (gSE)
Switch tuerstrasse "Haustür" <frontdoor> (gSE)
Switch tuerkeller "Kellertür" <door> (gSE)
Switch tuerbar "Bartür" <door> (gSE)
Switch fensterbar "Fenster Bar" <window> (gSE)
Switch garagentor "Garagentor" <garagedoor> (gSE)
Switch badfensterOben2 "Badfenster ObGe 2" <window> (gSE)
Switch badfensterOben1 "Badfenster ObGe 1" <window> (gSE)
Switch yyFenster "xxx Dachfenster" <window> (gSE, OG_Kinderzimmer2)
Switch yyTerTuer "xxx TerassenTür" <window> (gSE, OG_Kinderzimmer2)
Switch yyTerTuer "xxx TerassenTür" <window> (gSE, OG_Kinderzimmer1)
Code: Alles auswählen
{"Time":"2021-02-01T17:38:26","RfReceived":{"Sync":8390,"Low":290,"High":840,"Data":"7AA0A6","RfKey":3}}
Code: Alles auswählen
{
"Time": "2021-02-01T17:38:26",
"RfReceived": {
"Sync": 8390,
"Low": 290,
"High": 840,
"Data": "7AA0A6",
"RfKey": 3
}
}