Hallo Community,
kann mir vielleicht jemand bei einer Kleinigkeit in Bezug auf meinen Sonoff Pow und der Waschmaschinen Info weiter helfen?
Ich habe ein im Netz vorhandenes notify meinem Sonoff Pow angepasst, aber mir fehlt dort noch eine Bedingung und ich weis nicht wirklich wie ich die einfügen kann da ich mit pearl nicht gut zu Fuß bin. Im DOIF ist es die Wait Funktion.
Ich möchte das meine Telegram Nachricht erst dann ausgelöst wird wenn die Leistung meines Pows für 10 Minuten unter dem definiertem Wert liegt, in meinem Fall 7Watt. Somit möchte ich falsche Ausgaben vermeiden. Ich gehe davon aus das das ganze in dem Codesnipped eingebunden werden muss
"if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) < 7 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "on")"
weis aber leider nicht welche Befehle und welche syntax ich hier benutzen muss. Über Hilfe würde ich mich sehr freuen.
defmod Waschmaschine_Keller_fertig notify Sonoff_Keller_Waschmaschiene:ENERGY_Power:.* \
{if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) > 50 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "off") {\
fhem("setreading Sonoff_Keller_Waschmaschiene running on");;\
}\
\
if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) < 7 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "on") {\
fhem("setreading Sonoff_Keller_Waschmaschiene running off");;\
fhem("set Telegram msg Die Waschmaschine ist fertig.");;\
fhem("set MyTTS tts Die Waschmaschine ist fertig und die Wäsche kann jetzt aufgehangen werden");;\
}\
}
Ich würde ein userReadings erstellen dessen Wert low ist wenn das Reading ENERGY_Power unter 7 fällt. Und auf dessen Event ein watchdog triggert und nach 10 min schaut ob das Reading immer noch low ist.
Ich würde über ein notify ein at definieren und wenn die wm wieder über 7 Watt kommt mit dem notify löschen lassen.
Gruß Markus
Danke für die Infos, hättet ihr vielleicht noch ein Definition das ich mir dann umstricken kann? ;D
userReadings ist auch eine gute Idee
Gruß Markus
Gib mal bitte ein list vom Device.
hier die list vom notify:
Internals:
.COMMAND {if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) > 50 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "off") {
fhem("setreading Sonoff_Keller_Waschmaschiene running on");
}
if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) < 7 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "on") {
fhem("setreading Sonoff_Keller_Waschmaschiene running off");
fhem("set Telegram msg Die Waschmaschine ist fertig.");
fhem("set MyTTS tts Die Waschmaschine ist fertig und die Wäsche kann jetzt aufgehangen werden");
}
}
DEF Sonoff_Keller_Waschmaschiene:ENERGY_Power:.*
{if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) > 50 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "off") {
fhem("setreading Sonoff_Keller_Waschmaschiene running on");
}
if (ReadingsNum("Sonoff_Keller_Waschmaschiene", "ENERGY_Power", 0) < 7 && ReadingsVal("Sonoff_Keller_Waschmaschiene", "running", "off") eq "on") {
fhem("setreading Sonoff_Keller_Waschmaschiene running off");
fhem("set Telegram msg Die Waschmaschine ist fertig.");
fhem("set MyTTS tts Die Waschmaschine ist fertig und die Wäsche kann jetzt aufgehangen werden");
}
}
NAME Waschmaschine_Keller_fertig
NOTIFYDEV Sonoff_Keller_Waschmaschiene
NR 690
NTFY_ORDER 50-Waschmaschine_Keller_fertig
REGEXP Sonoff_Keller_Waschmaschiene:ENERGY_Power:.*
STATE 2018-12-10 18:17:46
TRIGGERTIME 1544462266.50659
TYPE notify
.attraggr:
.attrminint:
READINGS:
2018-12-10 15:24:16 state active
Attributes:
alias Telegram Waschmaschiene fertig
icon message_mail
room Telegram
und hier das Sonoff Pow device list:
Internals:
.eventMapCmd on:noArg off:noArg
IODev Mosquitto
NAME Sonoff_Keller_Waschmaschiene
NR 688
STATE <div><img src="/fhem/images/default/black_Steckdose.on.png"><br><br> aktuell: 1.4 Watt <br> Heute: 0.08 Kw/h <br> Spannung: 233 V</div>
TYPE MQTT_DEVICE
.attraggr:
.attreocr:
.*
.attrminint:
.qos:
* 0
.retain:
* 0
Helper:
DBLOG:
ENERGY_Current:
DbLog:
TIME 1544462266.09975
VALUE 0.179
ENERGY_Factor:
DbLog:
TIME 1544462266.09975
VALUE 0.03
ENERGY_Period:
DbLog:
TIME 1544451440.86096
VALUE 0.1
ENERGY_Power:
DbLog:
TIME 1544462266.09975
VALUE 1.4
ENERGY_Today:
DbLog:
TIME 1544460766.07295
VALUE 0.077
ENERGY_Total:
DbLog:
TIME 1544461966.09333
VALUE 3.188
ENERGY_Voltage:
DbLog:
TIME 1544461966.09333
VALUE 233
ENERGY_Yesterday:
DbLog:
TIME 1544396409.75208
VALUE 0.338
READINGS:
2018-12-09 18:16:17 CurrentHigh 0
2018-12-09 18:43:55 CurrentLow 0
2018-12-10 18:17:46 ENERGY_Current 0.179
2018-12-10 18:17:46 ENERGY_Factor 0.03
2018-12-10 18:17:46 ENERGY_Period 0.1
2018-12-10 18:17:46 ENERGY_Power 1.4
2018-12-10 18:17:46 ENERGY_Today 0.077
2018-12-10 18:17:46 ENERGY_Total 3.188
2018-12-10 18:17:46 ENERGY_Voltage 233
2018-12-10 18:17:46 ENERGY_Yesterday 0.338
2018-12-07 11:27:18 FallbackTopic DVES_D5C405
2018-12-07 11:27:18 GroupTopic sonoffs
2018-12-07 11:27:18 Hostname Keller_Waschmaschiene-1029
2018-12-07 11:29:38 INFO1 {"Module":"Sonoff Pow","Version":"6.2.1","FallbackTopic":"DVES_D5C405","GroupTopic":"sonoffs"}
2018-12-07 11:29:38 INFO2 {"WebServerMode":"Admin","Hostname":"Keller_Waschmaschiene-1029","IPAddress":"192.168.178.102"}
2018-12-07 11:29:38 INFO3 {"RestartReason":"Power on"}
2018-12-07 11:27:18 IPAddress 192.168.178.102
2018-12-09 18:55:08 LWT online
2018-12-10 15:03:49 MaxPower 0
2018-12-07 11:27:18 Module Sonoff Pow
2018-12-10 18:17:46 POWER on
2018-12-10 15:01:03 PowerDelta 0
2018-12-10 15:02:31 PowerHigh 0
2018-12-10 14:51:33 PowerLow 0
2018-12-10 15:03:49 RESULT {"MaxPower":0}
2018-12-07 11:27:18 RestartReason Power on
2018-12-10 18:17:46 SENSOR {"Time":"2018-12-10T18:17:46","ENERGY":{"Total":3.188,"Yesterday":0.338,"Today":0.077,"Period":0.1,"Power":1.4,"Factor":0.03,"Voltage":233,"Current":0.179}}
2018-12-10 18:17:45 STATE {"Time":"2018-12-10T18:17:45","Uptime":"3T05:41:07","Vcc":3.308,"POWER":"ON","Wifi":{"AP":1,"SSId":"FRITZ!Box 6490 Cable","RSSI":70,"APMac":"44:4E:6D:99:B8:4D"}}
2018-12-09 18:08:51 SaveData off
2018-12-09 18:40:51 SerialLog 0 (Active 0)
2018-12-09 18:39:27 SysLog 0 (Active 0)
2018-12-09 18:35:42 TelePeriod 60
2018-12-10 18:17:46 Time 2018-12-10T18:17:46
2018-12-10 18:02:00 UPTIME {"Time":"2018-12-10T18:02:00","Uptime":"3T05:25:22"}
2018-12-10 18:17:46 Uptime 3T05:41:07
2018-12-10 18:17:46 Vcc 3.308
2018-12-07 11:27:18 Version 6.2.1
2018-12-09 18:20:30 VoltageHigh 0
2018-12-10 14:48:51 WattRes 1
2018-12-09 18:39:10 WebLog 2
2018-12-07 11:27:18 WebServerMode Admin
2018-12-10 18:17:46 Wifi_AP 1
2018-12-10 18:17:46 Wifi_APMac 44:4E:6D:99:B8:4D
2018-12-10 18:17:46 Wifi_RSSI 70
2018-12-10 18:17:46 Wifi_SSId FRITZ!Box 6490 Cable
2018-12-10 14:22:52 running off
2018-12-10 08:52:40 state ON
2018-12-10 18:17:46 transmission-state incoming publish received
message_ids:
publishSets:
:
topic cmnd/Keller_Waschmaschiene/POWER
values:
ON
OFF
sets:
OFF
ON
subscribe:
tele/Keller_Waschmaschiene/ENERGY
tele/Keller_Waschmaschiene/INFO1
tele/Keller_Waschmaschiene/INFO2
tele/Keller_Waschmaschiene/INFO3
tele/Keller_Waschmaschiene/LWT
cmnd/Keller_Waschmaschiene/POWER
stat/Keller_Waschmaschiene/RESULT
tele/Keller_Waschmaschiene/SENSOR
tele/Keller_Waschmaschiene/STATE
tele/Keller_Waschmaschiene/UPTIME
tele/Keller_Waschmaschiene/POWER
subscribeExpr:
^tele\/Keller_Waschmaschiene\/ENERGY$
^tele\/Keller_Waschmaschiene\/INFO1$
^tele\/Keller_Waschmaschiene\/INFO2$
^tele\/Keller_Waschmaschiene\/INFO3$
^tele\/Keller_Waschmaschiene\/LWT$
^cmnd\/Keller_Waschmaschiene\/POWER$
^stat\/Keller_Waschmaschiene\/RESULT$
^tele\/Keller_Waschmaschiene\/SENSOR$
^tele\/Keller_Waschmaschiene\/STATE$
^tele\/Keller_Waschmaschiene\/UPTIME$
^tele\/Keller_Waschmaschiene\/POWER$
subscribeQos:
cmnd/Keller_Waschmaschiene/POWER 0
stat/Keller_Waschmaschiene/RESULT 0
tele/Keller_Waschmaschiene/ENERGY 0
tele/Keller_Waschmaschiene/INFO1 0
tele/Keller_Waschmaschiene/INFO2 0
tele/Keller_Waschmaschiene/INFO3 0
tele/Keller_Waschmaschiene/LWT 0
tele/Keller_Waschmaschiene/POWER 0
tele/Keller_Waschmaschiene/SENSOR 0
tele/Keller_Waschmaschiene/STATE 0
tele/Keller_Waschmaschiene/UPTIME 0
subscribeReadings:
cmnd/Keller_Waschmaschiene/POWER:
cmd
name POWER
stat/Keller_Waschmaschiene/RESULT:
cmd
name RESULT
tele/Keller_Waschmaschiene/ENERGY:
cmd
name ENERGY
tele/Keller_Waschmaschiene/INFO1:
cmd
name INFO1
tele/Keller_Waschmaschiene/INFO2:
cmd
name INFO2
tele/Keller_Waschmaschiene/INFO3:
cmd
name INFO3
tele/Keller_Waschmaschiene/LWT:
cmd
name LWT
tele/Keller_Waschmaschiene/POWER:
cmd
name state
tele/Keller_Waschmaschiene/SENSOR:
cmd
name SENSOR
tele/Keller_Waschmaschiene/STATE:
cmd
name STATE
tele/Keller_Waschmaschiene/UPTIME:
cmd
name UPTIME
Attributes:
IODev Mosquitto
alias Keller Waschmaschine
devStateIcon on:black_Steckdose.on:off off:black_Steckdose.off:on
event-on-change-reading .*
eventMap ON:on OFF:off
genericDeviceType outlet
group Steckdosen
homebridgeMapping On=POWER,values=on:on;;off:off
icon hue_filled_outlet
publishSet ON OFF cmnd/Keller_Waschmaschiene/POWER
room Homekit,MQTT,Schalter
siriName Waschmaschine
sortby 01
stateFormat {
my $state = ReadingsVal($name, "state", "off");
return '<div><img src="/fhem/images/default/black_Steckdose.on.png">'.sprintf
("<br><br> aktuell: %.1f Watt <br> Heute: %.2f Kw/h <br> Spannung: %.f V",
ReadingsVal($name,"ENERGY_Power",undef), ReadingsVal($name,"ENERGY_Today",undef),
ReadingsVal($name,"ENERGY_Voltage",undef)).'</div>' if($state eq "ON");
return '<div><img src="/fhem/images/default/black_Steckdose.off.png">'.sprintf
("<br><br> aktuell: %.1f Watt <br> Heute: %.2f Kw/h <br> Spannung: %.f V",
ReadingsVal($name,"ENERGY_Power",undef), ReadingsVal($name,"ENERGY_Today",undef),
ReadingsVal($name,"ENERGY_Voltage",undef)).'</div>' if($state eq "OFF");
}
subscribeReading_ENERGY tele/Keller_Waschmaschiene/ENERGY
subscribeReading_INFO1 tele/Keller_Waschmaschiene/INFO1
subscribeReading_INFO2 tele/Keller_Waschmaschiene/INFO2
subscribeReading_INFO3 tele/Keller_Waschmaschiene/INFO3
subscribeReading_LWT tele/Keller_Waschmaschiene/LWT
subscribeReading_POWER cmnd/Keller_Waschmaschiene/POWER
subscribeReading_RESULT stat/Keller_Waschmaschiene/RESULT
subscribeReading_SENSOR tele/Keller_Waschmaschiene/SENSOR
subscribeReading_STATE tele/Keller_Waschmaschiene/STATE
subscribeReading_UPTIME tele/Keller_Waschmaschiene/UPTIME
subscribeReading_state tele/Keller_Waschmaschiene/POWER
verbose 1
webCmd on:off
Teilabbildung Deines SONOFF Devices.
userReadings
Internals:
CFGFN
NAME Sonoff_Keller_Waschmaschiene
NR 65
STATE low
TYPE dummy
READINGS:
2018-12-10 12:21:42 ENERGY_Power 5
2018-12-10 12:21:42 power low
2018-12-10 12:22:12 running off
Attributes:
event-on-change-reading .*
group Steckdosen
readingList ENERGY_Power
room Test
setList ENERGY_Power
stateFormat power
userReadings power:ENERGY_Power:.* { if ( ReadingsNum($name,'ENERGY_Power',0) > 50 ) { 'high'}
elsif (ReadingsNum($name,'ENERGY_Power',0) < 7) {'low'} }
Das Attribut event-on-change-reading ist Pflicht, sonst wird power ständig ein Event auslösen.
Und hier nun der passende watchdog.
Aktuell erfolgt das auslösen nach 30s. Musst also umstellen die Zeit.
Internals:
CFGFN
CMD setreading Sonoff_Keller_Waschmaschiene running off; set Telegram msg Die Waschmaschine ist fertig.; set MyTTS tts Die Waschmaschine ist fertig und die Wäsche kann jetzt aufgehangen werden
DEF Sonoff_Keller_Waschmaschiene:power:.low 00:00:30 Sonoff_Keller_Waschmaschiene:power:.high setreading Sonoff_Keller_Waschmaschiene running off; set Telegram msg Die Waschmaschine ist fertig.; set MyTTS tts Die Waschmaschine ist fertig und die Wäsche kann jetzt aufgehangen werden
NAME wd_WaschmaschineRunningOff
NOTIFYDEV watchdogWaschmaschineRunningOff,Sonoff_Keller_Waschmaschiene
NR 92
NTFY_ORDER 50-watchdogWaschmaschineRunningOff
RE1 Sonoff_Keller_Waschmaschiene:power:.low
RE2 Sonoff_Keller_Waschmaschiene:power:.high
STATE defined
TO 30
TYPE watchdog
READINGS:
2018-12-10 12:21:42 Activated activated
2018-12-10 12:22:12 Reset reset
2018-12-10 12:22:12 Triggered triggered
Attributes:
autoRestart 1
room Test
Dankö werde ich im laufe der Woche testen und den Tread dann auf gelösst setzen wenns funzt 8)