FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Byte09 am 25 März 2018, 12:19:58

Titel: 98_MSwitch - Support
Beitrag von: Byte09 am 25 März 2018, 12:19:58
Bechreibung im FhemWiki:
https://wiki.fhem.de/wiki/MSwitch (https://wiki.fhem.de/wiki/MSwitch)



V2.08
Version_Datenstruktur V2.00

- neu  ATTR MSwitch_Read_Log (0/1)

diese Funktion ermöglicht den Zugriff auf das Logfile , um darauf zu reagieren , wenn das ATTR auf 1 gesetzt ist. Da dieses schnell sehr systemlastig werden kann sollte es nur in Ausnahmefällen eingesetzt werden.
Es gibt 3 Funktionsvarianten , abhängig von den Einstellungen:

1. bei gesetztem ATTR gibt es in dem Feld 'Trigger device: ' eine neue Option 'Logfile'. Wird dieses gewählt reagiert das MSwitch auf alle Einträge in dem Log , und generiert hieraus ein internes EVENT.

2. wird in dem Feld 'Trigger device: ' die Option 'GLOBAL' gewählt , reagiert MSwitch auf alle EVENTS - in Abhängigkeit der 'Whitelist' -und alle Logeinträge (bitte nur bei unvermeidlichem Bedarf einsetzen) .

3. bei gesetztem ATTR und der Auswahl eines Devices im Feld 'Trigger device: ' reagiert MSwitch auf alle EVENTS des angegebenen Devices und auf alle ( vermeintlichen ) Logeinträge dieses Devices.

'Vermeintlich' daher bedingt, das ich keine Möglichkeit habe ( zumindest habe ich bisher keine gefunden ) zu ermitteln, welches Device denn wirklich einen Logeintrag erzeugt hat ( hierfür müssste die fhem.pl angepasst werden ) . Als 'Notlösung' wird auf das Vorkommen des Namens des Devices in dem Logeintrag gefiltert und die Annahme vorausgesetzt , das bei Vorhandensein des Namens , der Eintrag von diesem Devive erzeugt wurde. Leider bedeutet das im Umkehrschluss, das ein Logeintrag ohne Vorkommen des Names nicht berücksichtigt wird !

Eine Auswertung 'eigener' Logeinträge ist nicht möglich , da dieses fast unweigerlich in einer Endlosschleife enden würde. Daher bleiben eigene Logeinträge unberücksichtigt und lösen keine Reaktion des MSwitches aus.
er noch eine Änderung machen , die ein aktivieren dieser Option generell nur in einem MSwitch pro Installation zulässt .

update auf die Testversion im GIT  ( Achtung dieses ist immer eine aktuelle Entwicklerversion ohne Anspruch auf Fehlerfreiheit ):
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

eine Rückkehr von der Testversion zur SVN-Version ist in der Regl problemlos möglich . Im Einzelfall ( je nach Stand der Entwicklungsversion) kann es aber zu Kompatibilitätsproblemen kommen, insbesondere dann , wenn sich die Version_Datenstruktur unterscheidet. In diesem Fall bei Bedarf bitte kurz Anfragen.


gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 28 März 2018, 16:36:40
@det.

hi det. ,

wie schaut es denn bei dir mit den perlwarnings aus seit dem letzten Update ? Habe da einiges gemacht und hoffe das das gröbste raus ist ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: det. am 28 März 2018, 19:02:56
 :) ist bedeutend besser geworden, seit dem letzten update !!!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 31 März 2018, 07:21:15
Die Modulbeschreibung ist ab sofort hier zu finden:

https://wiki.fhem.de/wiki/MSwitch.pm (https://wiki.fhem.de/wiki/MSwitch.pm)


gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 02 April 2018, 08:35:42
Für eine zukünftige Änderung ist es Notwendig geworden , die Struktur der gespeicherten Daten aller MSwitchdevices zu ändern. Dieses geschieht automatisch mit dem Update, das ich eben abgelegt habe.

Nach Fhemneustart werden entsprechende Daten geändert , die interne Prüfziffer 'V_Check' wird von V 0.2 auf V 0.3 geändert. Nach dem Update ist ein Fhemneustart zwingend erforderlich .

Backupdateien, die vor diesem Update gemacht wurden sind danach nicht mehr verwendbar, d.H es sollte dann dringend die Funktion 'backup_mswitch' ausgeführt werden.

gruss Byte09



Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 April 2018, 19:06:58
kommendes update:

mit kommendem Update , was ab morgen früh verfügbar sein wird , gibt es folgende Änderungen:

- deutliche entschlackung des codes
- vollständeige Überarbeitung aller "conditions" betreffender Programmteile und deren RegEx , somit sind u.A. vollständige Sunset - Angaben möglich (z.B. [{sunset(0,"17:00","20:00")}]
- zusätliche Anzeige der "Klar" Schaltzeiten bei allen "Check Condition" funktionen zur besseren Kontrolle

Nötige Änderunge der Datenstruktur wurden bereits mit dem letzten Update vorgenommen , ansonsten wird die Änderung mit diesem Update durchgeführt.

Das Modul läuft mittlerweile ohne gravierende Fehler und kann meines Erachtens daher auch von weniger erfahrenen Usern genutzt werden, da es durchaus eine Alternative für User darstellen kann , die sich mit diversen anderen ( sehr guten ) Hilfsmodulen schwer tun.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 04 April 2018, 06:56:10
ich habe das angekündigte update eben im git abgelegt.

Da ich hier leider gar keine Resonanz bekomme frage ich einfach mal in die Runde ob denn mal jemand das Modul getestet hat ?

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: misux am 04 April 2018, 12:43:40
Ich bin fast mit meiner Konfig fertig... Danach werde ich mich mit dem Modul beschäftigen, aber vorweg eine Frage:

Die schon erstellten DOIFs/ats etc... die man Manuell erstellt hat, werden diese ins Modul übernommen? oder muss man diese im Modul neu erstellen wenn man nur auf das Modul umsteigen möchte?

Gruß und vielen Dank für deine Mühe!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 04 April 2018, 13:03:04
Zitat von: misux am 04 April 2018, 12:43:40
Ich bin fast mit meiner Konfig fertig... Danach werde ich mich mit dem Modul beschäftigen, aber vorweg eine Frage:

Die schon erstellten DOIFs/ats etc... die man Manuell erstellt hat, werden diese ins Modul übernommen? oder muss man diese im Modul neu erstellen wenn man nur auf das Modul umsteigen möchte?

Gruß und vielen Dank für deine Mühe!

Hi Misux,

eine "übernahme" von doifs, notifys etc. ist nicht möglich. Ich hatte das mal angedacht , rudimentär war die Funktion auch schon vorhanden. Ich habe das aber mit dem Update vom 23.03.18 "remove function 'absorb'" rausgenommen da es zum ersten das Modul unnötig aufgebläht hat und ich es aus mehrfacher Hinsicht als ... naja ... , sagen wir mal "doof" befunden habe.

Doifs, Notifys, at etc. - vergleichbare Funktionen sind aber schnell eingerichtet , auch komplexere , wenn man sich mal reingefunden hat .

Nur noch zur Info, da dieine Frage ein Missverständniss vermuten lässt . MSwitch ist kein Gerüst um bestehende Doifs etc. herum , sondern ein komplett eigenständiges Modul , was alles benötigte selber mitbringt - ich habe mein System im Dezember komplett umgestellt und komme seit dem mit MSwitch 'only' aus (Bildanhang).

Gruss Byte09.

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: misux am 04 April 2018, 13:51:22
Okay, dann kommt noch ganz schön Arbeit auf mich zu... und man sollte auf jeden Fall das DOIF was man im Modul erstellt hat löschen bzw. deaktivieren nehme ich an...
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 04 April 2018, 13:58:48
Zitat von: misux am 04 April 2018, 13:51:22
Okay, dann kommt noch ganz schön Arbeit auf mich zu... und man sollte auf jeden Fall das DOIF was man im Modul erstellt hat löschen bzw. deaktivieren nehme ich an...

richtig, sonst reagieren ggf. beide module , was eher unerwünscht ist .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Esjay am 04 April 2018, 14:49:22
Donnerwetter, wusste gar nicht, dass es so etwas gibt. Sobald ich etwas Luft habe, werde ich mir das Ganze genauer Anschauen. Schonmal vorweg, danke für das Modul!

Grüße
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 April 2018, 12:08:49
update vom 05.04.18

die Ansicht im 'MSwitch Inforoom' wurde geändert :

- es wird jetzt zusätzliuch der aktuelle state des devices inc. datum und zeit dargestellt (aktualisierung bei änderung)
- falls das device 'disabled' ist wird das entsprechend dargestellt
- falls weder trigger noch schaltzeiten eingestellt sind wird das device als 'Multiswitch only' deklariert

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 05 April 2018, 15:52:27
Hallo,

ich habe das Modul auch mal installiert und etwas damit rumgespielt.
Ich finde die Übersicht sehr gut, besser als die ganzen DOIF und Notifys wo ich manchmal den Überblick darüber verliere.

Da ich auch einige Dashbuttons habe und damit schalte, habe ich eine Frage bzgl. des Toggles. Im Grunde suche ich nach einer Möglichkeit, das ganze zu vereinfachen...

Bisher habe ich das über ein Notify gelöst:

defmod Dash_AfriCola notify DashButton:68-37-e9-61-39-xx..short { if (ReadingsVal("WZ_TV","state","") eq "ON") { fhem("set WZ_Kodi off;; sleep 20;; set WZ_TV off") } else { fhem("set WZ_TV on") } }
Wenn der Dash Button gedrückt wird, schaut das notify erstmal ob der TV an ist, wenn ja fährt er Kodi herunter und schaltet nach 20 Sekunden den TV bzw. die Steckdosenleiste aus.
Sofern der TV aus ist, wird nur der TV bzw. die Steckdosenleiste eingeschaltet.

Wie würde das mit MSwitch funktionieren? Im Wiki habe ich gesehen, das du ein Toggle im Device (CUL_HM_HM_LC_Dim1TPBU_FM_3387C3) drin hast. Wie hast du das umgesetzt? Bei mir gibt es nur "on" und "off".

Ich habe einige Sonoff Geräte per Tasmota angebunden und WZ_TV ist eine davon.

Würde es gehen, wenn ich unter "device actions" - "on condition" und "off condition" die MAC Adresse des DashButton eintrage, um so ein Toggle umzusetzen?
Wahrscheinlich nicht, oder? :D


Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 April 2018, 16:05:07
Hi Mark


lege für das device "wz_tv" einfach eine zweite aktion an mit dem button "add action for wz_tv".

mit der ersten aktin schaltest du 'ON' , mit der zweiten 'OFF' ( beides im gleichen zweig - z.B 'MSwitch on cmd').

in den Conditions jeweils :

im ersten ( on condition: ) : [WZ_TV :state] eq "OFF"
im zweiten ( on condition: ) : [WZ_TV :state] eq "ON"

dann nutz er immer nur die aktion , die gerade zutrifft.
habe dir zur verdeutlichung mal ein bilder angehangen , bei denen ich ein sonoff entsprechend schalte.

die Schaltung erfolgt wenn ein Trigger den ON-Zweig auslöst .

ich hoffe es ist verständlich , ansonsten gib nochmal bescheid.

gruss Byte09


nachtrag : nochmal zwei sceens aus meiner entsprechenden Dashbutton Steuerung :
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 April 2018, 17:48:09
Zitat von: mark79 am 05 April 2018, 15:52:27
Hallo,

ich habe das Modul auch mal installiert und etwas damit rumgespielt.
Ich finde die Übersicht sehr gut, besser als die ganzen DOIF und Notifys wo ich manchmal den Überblick darüber verliere.

Da ich auch einige Dashbuttons habe und damit schalte, habe ich eine Frage bzgl. des Toggles. Im Grunde suche ich nach einer Möglichkeit, das ganze zu vereinfachen...

Bisher habe ich das über ein Notify gelöst:

defmod Dash_AfriCola notify DashButton:68-37-e9-61-39-xx..short { if (ReadingsVal("WZ_TV","state","") eq "ON") { fhem("set WZ_Kodi off;; sleep 20;; set WZ_TV off") } else { fhem("set WZ_TV on") } }
Wenn der Dash Button gedrückt wird, schaut das notify erstmal ob der TV an ist, wenn ja fährt er Kodi herunter und schaltet nach 20 Sekunden den TV bzw. die Steckdosenleiste aus.
Sofern der TV aus ist, wird nur der TV bzw. die Steckdosenleiste eingeschaltet.

Wie würde das mit MSwitch funktionieren? Im Wiki habe ich gesehen, das du ein Toggle im Device (CUL_HM_HM_LC_Dim1TPBU_FM_3387C3) drin hast. Wie hast du das umgesetzt? Bei mir gibt es nur "on" und "off".

Ich habe einige Sonoff Geräte per Tasmota angebunden und WZ_TV ist eine davon.

Würde es gehen, wenn ich unter "device actions" - "on condition" und "off condition" die MAC Adresse des DashButton eintrage, um so ein Toggle umzusetzen?
Wahrscheinlich nicht, oder? :D


Grüße
Mark

ich habe darüber nachgedacht, das 'problem' wird wohl immer wieder vorkommen mit devices die kein toggle anbieten . Ich werde dafür eine eigene Funkion integrieren , quasi eim MSwitchToggle cmd1/cmd2 .

denke bis morgen oder übermorgen habe ich das.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 05 April 2018, 18:27:14
Zitat von: Byte09 am 05 April 2018, 16:05:07
lege für das device "wz_tv" einfach eine zweite aktion an mit dem button "add action for wz_tv".

mit der ersten aktin schaltest du 'ON' , mit der zweiten 'OFF' ( beides im gleichen zweig - z.B 'MSwitch on cmd').

in den Conditions jeweils :

im ersten ( on condition: ) : [WZ_TV :state] eq "OFF"
im zweiten ( on condition: ) : [WZ_TV :state] eq "ON"

dann nutz er immer nur die aktion , die gerade zutrifft.
habe dir zur verdeutlichung mal ein bilder angehangen , bei denen ich ein sonoff entsprechend schalte.

die Schaltung erfolgt wenn ein Trigger den ON-Zweig auslöst .

Danke dir erstmal für die Erklärung! :)
Ich glaube ich habe es verstanden, nur warum ich die zweite Regel nicht bei "off condition" reinschreiben kann, verstehe ich noch nicht ganz.

Aber wenn ich das ausprobiere, wird mir das bestimmt klarer. Geht aber erstmal morgen, bin aktuell nicht Vorort.

Zitat von: Byte09
ich habe darüber nachgedacht, das 'problem' wird wohl immer wieder vorkommen mit devices die kein toggle anbieten . Ich werde dafür eine eigene Funkion integrieren , quasi eim MSwitchToggle cmd1/cmd2 .

denke bis morgen oder übermorgen habe ich das.

Wenn du so was einbauen würdest, was die Sache vereinfacht, wäre das schon toll! :)
So ein Toggle könnte man noch nachrüsten. Aber dann hätte man wieder ein Device mehr und je mehr das wird, umso unübersichtlich wird es, finde ich.


Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 April 2018, 18:40:42
das kommt darauf an , was dein trigger auslöst .

wenn er z.b den zweig 'switch wz_tv on + execute 'on' commands' auslöst , dann arbeitet das modul nur diesen zweig ab.

wenn du nu möchtest, dass ein gerät bei eintreffen dieses triggers toggelt, welches kein toggel hat , müssen auch beide kommandos ( von denen eins ausgeführt werden soll ) in diesem zweig 'device actions MSwitch on cmd:' stehen .

jetzt prüft er den state des zu schaltenden devices [device:state] eq "ON" oder "OFF" und führt den befehl aus, wenn die Bedingung zutrifft .

.. aber ich habe das MSwitchtoggel bereits zur Hälfte fertig , es wird morgen im laufe des Tages ein Update geben. Dann ist Bei der Befehlsauswahl ein zusätzliches Feld "MSwitchtoggel [cmd1] [cmd2]" vorhanden und dann sollte es passen

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 April 2018, 20:15:00
kommendes update:

mit kommendem Update , was ab morgen früh verfügbar sein wird , gibt es folgende Änderungen:

- neues Attribut "MSwitch_Extensions"

wenn hier "1" gesetzt wird , gibt es in den BefehlsDropdownfeldern ein zusätzliches Auswahlfeld "MSwitchtoggle".
bei Auswahl dieser Option muss in Nebenstehendem Feld die Angabe gemacht werden , zwischen welchen Befehlen er 'toggeln' soll, z.B ( ON/OFF ). Beim ausführen dieses Befehls schaltet das betreffende Device abwechseln ON und OFF mit jedem erneuten Aufruf.
Überprüft wird hier derzeit nur der Zustand des Readings 'state' . Sollte 'state' keinen der beiden Zustände 'ON/OFF' haben, so wird beim Aufruf der erste gesetzte Befehl des Auswahlfeldes (ON/OFF) gesetzt , in diesem Fall 'ON'.

( Funktion wird weiter ergänzt )

die Version läuft bei mir heute Nacht noch zur Probe , wenn ales OK ist stelle ich Sie morgen früh in das Git

Gruss Byte09

update soeben eingespielt !
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 06 April 2018, 20:19:20
Hi,

ich habe das Update eingespielt und ein paar Stunden damit verbracht, bis die Freundin kam...

Was funktioniert, ist ein Toggle mit einem Dash Button ("DashButton:Playboy:.short") über zwei Action Devices der eine Sonoff Steckdose (WZ_Lampe) schaltet.

Nur habe ich ein kleines Problem, das dass MSwitch State Icon, also die Glühbirne nicht mit umschaltet. Schalte ich über on/off über das Webinterface im MSwitch dann schaltet das Glühbirnen State Icon mit um.

Das neue MSwitchToggle hingegen, kriege ich irgendwie gar nicht zum laufen.
Aber das liegt wohl eher daran, das ich das Modul noch nicht so recht verstehe.

Ich habe von beiden Screenshots erstellt...

Vielleicht kannst du noch mal drüber schauen... wenn ich erstmal was lauffähiges habe, dann fällt mir das auch einfacher es zu verstehen.


Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 April 2018, 20:44:44
hi mark ,

kann ich dich mal anders kontakten ? whatsapp, etc. ?

gruss Byte09


das zweite bild sieht okaus , aber zwischen ON und OFF im MSwitchtoggle muss ein /  ... also ON/OFF.

oben die Triggercondition nimm mal ganz raus ( erstmal ).

setz mal das attribut MSwitch_Help auf 1 , dann bekommst du buttons, in denen die formatierung jeweils erklärt wird.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 07 April 2018, 00:59:46
Hallo Byte09,

>>kann ich dich mal anders kontakten ? whatsapp, etc. ?
Klar, ich schreibe dir eine PN. :)

>>das zweite bild sieht ok aus , aber zwischen ON und OFF im MSwitchtoggle muss ein /  ... also ON/OFF.
Das war es, mit dem / funktioniert der MSwitchToggle und auch mit und ohne Triggercondition. Ich habe zwei Screenshoots angehangen.
Was noch nicht geht ist das MSwitch Icon bei OFF (es bleibt auf ON stehen).
Aber das schalten funktioniert sowohl am Dash Button und Webinterface.

Ich werde das morgen mal auf ein Device ändern, was täglich in Benutzung ist.

Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 07 April 2018, 10:20:12
guten morgen zusammen

ich habe heute morgen ein wichtiges update eingespielt , da sich die Conditionabfrage im zusammenhang mit der variable !$we falsch verhalten hat  ( was heute morgen leider zu ungewollt geöffneten rolläden geführt hat - sorry hierfür )

das update sollte so bald wie möglich gemacht werden .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 07 April 2018, 11:01:13
Zitat von: mark79 am 07 April 2018, 00:59:46
...
Was noch nicht geht ist das MSwitch Icon bei OFF (es bleibt auf ON stehen).
...
Grüße
Mark

Hi Mark,

ja, das kommt daher , da du das MSwitch durch den gewählten Triggerzweig 'nur' anschaltest.

du kannst  den gesetzten trigger bei 'switch XXX on + execute 'on' commands' rausnehmen und stattdessen bei 'execute 'on' commands only' setzen , dann schaltet  das MSwitchDevice gar nicht erst in den Status 'on' , sondern es wird nur der 'on-Zweig' abgearbeitet.

alternativ musst du das device wieder abschalten:

dafür musst du das MSwitch-device selber ( du hast es wohl 'test' genannt ) bei 'affected devices :' zufügen .
unter 'device actions : ' wählst du dann bei  'MSwitch on cmd:' -> Set off  und unter 'on delay:' -> 00:00:01

damit schaltet das MSwitch device 'test' dann nach 1 sekunde wieder in den Status 'off'

ist hier nochmal erklärt : https://wiki.fhem.de/wiki/MSwitch.pm#Dashbuttons (https://wiki.fhem.de/wiki/MSwitch.pm#Dashbuttons)

gruss Byte09


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 07 April 2018, 19:27:02
um einfacher und besser support leisten zu können gibt es seit der letzten Version die Option "get [name] config". Diese öffnet ein Fenster mit dem kompletten configfile des Devices in folgender form:

#S .Device_Affected -> Kueche_Licht-AbsCmd1,Kueche_Licht-AbsCmd2,Kueche_Licht_Motion_Ctrl-AbsCmd1
#S .Device_Affected_Details -> Kueche_Licht-AbsCmd1,on,no_action,,,nein,nein,000000,000000,off~eq~"off"~AND~off~eq~"off",|Kueche_Licht-AbsCmd2,off,no_action,,,nein,nein,000130,000000,off~eq~"off"~AND~off~eq~"off",|Kueche_Licht_Motion_Ctrl-AbsCmd1,off,no_action,,,nein,nein,000045,000000,,
#S .Device_Events -> no_trigger|state:on
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> ([{~sunset("-5000")~}-{~sunrise()~}]~OR~[Aussenpflanze.lux]~<~500)~AND~([Kueche_Arbeitsplatte.state]~eq~"off"~AND~[Kueche_Dunsthaube.state]~eq~"off")~~AND~[Kueche_Licht_Motion_Ctrl.state]~eq~"off"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> state:on
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd ->
#S Trigger_device -> IT_1527xac68c
#S Trigger_log -> off
#S last_event -> Stamptime:20.0169160366058
#S state -> off
#A MSwitch_Debug -> 0
#A MSwitch_Inforoom -> MSwitch
#A room -> MSwitch
#A MSwitch_Expert -> 0
#A comment -> Licht Bewegungssteuerung
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Lock_Quickedit -> 0


Ab der nächsten Version lässt sich das File in diesem Fenster auch direkt bearbeiten und komplett oder in Teilen speichern.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 April 2018, 18:53:47
Update auf V1.1 verfügbar ab morgen früh.

Neu: Befehl set del_delays ( löscht alle anstehenden - verzögerten Befehle eines Devices  )
ähnlich der bisherigen funktion 'get active_timer delete', aber als Set Befehl hinterlegt und somit aus MSwitch Devices aufrufbar
Neu: Aufruf des Configfiles eines Devices
Neu: editieren und Speichern des Configfiles ist nun möglich ( hauptsächlich um einfacher support leisten zu können )

Bugfix: Restore all Devices
Bugfix: some Perl Warnings

.. intern diverse änderungen

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 17 April 2018, 23:48:21
Hallo Byte,

ich habe heute weiter mit deinem Modul gespielt und was umgesetzt.

Ist zwar was einfaches, aber ich bin begeistert. Ich konnte ein Dummy und Notify einsparen und dazu nun, mit einem Gerät (WZ_TV MSwitch) den Zustand für on/off auf verschiedene Geräte bzw. Aktionen vereinen.

Es geht darum, das ich im Wohnzimmer,
ein TV habe und ein ESP8266 mit IR Transmitter, zum ein und ausschalten des TVs (im Screenshot, FreeCmd das sendet einfach nur ein http Befehl an den ESP),
ein Raspberry mit Kodi (WZ_KODI) und
eine Sonoff Steckdose (WZ_TV_Sonoff) wo auch die Lautsprecher dran hängen.

Wenn ich den TV ausschalten will, soll zuerst der Kodi RPi sauber heruntergefahren werden und zugleich über den IR Transmitter der TV ausgeschaltet werden.
Dann wird 15 Sekunden gewartet bis der Raspberry heruntergefahren ist und wenn beides aus ist, soll die Sonoff Steckdose den Strom ausschalten.

Zum anschalten wird nur die Sonoff Steckdose eingeschaltet, der rest geht von alleine an.

Das ging mit deinem Modul echt leicht umzusetzen und das ganze ist nun auch einfacher in den DashButtons und anderen Logiken zu intregieren. Jetzt reicht ein einfach WZ_TV on/off

Nur das mit dem DashButton und dem Toggle habe ich bisher nicht hinbekommen, anstatt des DOIFs... das ist noch zu komplex für mich. Werde dich dazu aber noch mal in Whatsapp anschreiben. :)


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 30 April 2018, 18:29:28
@Bäschdler

gib in der cmd von Fhem folgendes ein:
update add https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
damit nimmt er das modul mit in das update von fhem auf.

danach bitte ein
update in der cmd und dann ein
shutdown restart

damit ist das Modul dann istalliert und wird bei bedarf upgedatet.

dann öffnest du erstmal irgend ein device , und gehst unten auf RAWdefinition . dort alles löschen, folgendes reinkopieren und speichern
defmod Schalter MSwitch # dummy3 dummy1 dummy2
attr Schalter room test

defmod dummy1 dummy
attr dummy1 room test
attr dummy1 setList on off

defmod dummy2 dummy
attr dummy2 room test
attr dummy2 setList 1 2 100 150
attr dummy2 webCmd 1:2:100:150

defmod dummy3 dummy
attr dummy3 room test
attr dummy3 webCmd on:off


damit werden 4 devices im raum test angelegt - 3 dummys und ein MSwitch device.
wenn du das hast gehst du auf das MSwitch Device Schalter und dort auf get Schalter get_config.

in dem Feld was sich öffnet bitte alles löschen , und folgendes reinkopieren:

#S .Device_Affected -> dummy3-AbsCmd1,dummy3-AbsCmd2
#S .Device_Affected_Details -> dummy3-AbsCmd1,on,no_action,,,nein,nein,000000,000000,[dummy2:state]~>~100~AND~[dummy1:state]~eq~"on",|dummy3-AbsCmd2,off,no_action,,,nein,nein,000004,000000,,
#S .Device_Events -> dummy2:state:1|*:state:*|dummy2:state:100|dummy1:state:off|dummy2:state:190|dummy2:state:2|no_trigger|dummy2:state:150|dummy1:state:on
#S .First_init -> done
#S .Trigger_Whitelist -> dummy1,dummy2
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> *:state:*
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> undef
#S .V_Check -> V 0.3
#S Exec_cmd -> set dummy3 off
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> state:150
#S state -> off
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 1
#A MSwitch_Extensions -> 0
#A room -> test
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Debug -> 1


und "save changes" drücken

wenn du das hast , melde dich nochmal, dann kann es weitergehen .

gruss Byte09



Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Bäschdler am 03 Mai 2018, 14:38:42
Hallo Byte09,

das habe ich jetzt alles soweit gemacht und es hat auch alles funktioniert.
Von mir aus kann's weitergehen - ich bin schon ganz gespannt :-)

Viele Grüsse
Bäschdler
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Mai 2018, 19:26:49
Zitat von: Bäschdler am 03 Mai 2018, 14:38:42
Hallo Byte09,

das habe ich jetzt alles soweit gemacht und es hat auch alles funktioniert.
Von mir aus kann's weitergehen - ich bin schon ganz gespannt :-)

Viele Grüsse
Bäschdler

Hi ,

im Grunde hast du damit alles was du brauchst . dummy1 und dummy2 sind die gertriggerten devises . jede stateänderung eines dieser dummys bewirkt , das der Teil 'device acctions' ausgeführt wird .
*:state:*

diese dummys musst du ersetzen , durch geräte deiner wahl , du bekommst ja alle in der Liste 'trigger device/time:' angezeigt.

wenn nun eine stateänderung eintritt wird dummy3 angeschaltet, aber nur dann wenn dummy1 > 100 und dummy2 'on' ist
[dummy2:state] > 100 AND [dummy1:state] eq "on"

dummy3 musst du ersetzen durch ein device deiner wahl ( und eine aktion deiner wahl ) - bei standartgeräten werden mögliche Befehle ja ebenfalls in der Dropdownliste angeboten. , werden ja ebenfalls alle gelistet in 'device actions :'

wenn du ein wenig experimentierst wirst du schnell dahinter kommen, das configfile kannst du ja jederzeit wieder einspielen 'get_config' -> 'save'

ansonsten ist in der configuration ja das attr 'MSwitch_Help' ja auf 1 gesetzt und somit stehen ja auch die Hilfebuttons zur verfügung '?'. ( schadet nicht , sich die Texte der belegten Felder mal anzuschauen )

wenn du dich in das modul etwas eingearbeitet hast gibt es im Grunde nur sehr wenig , was du nicht configurieren kannst .

bei konkreten Fragen und problemen gerne nachfragen .

gruss Byte09

PS : sollte dummy3 auf änderungen von dummy2 und dummy1 noch nicht reagieren , bitte einmal 'modify Trigger Device' anklicken , damit er die 'NOTIFYDEV' nach einspielen des configfiles richtig setzt

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 Mai 2018, 07:53:11
Bitte unbedingt ein Update des Moduls machen , die bisherige Version hatte einen Fehler im Auswerteverhalten von Events, der sich zwar nur bei GLOBALEN Events als Trigger ( Expertmode) in Verbindung mit weiteren Conditionen in den Affected Devices bemerkbar gemacht hat , dann aber zu völligem Fehlverhalten führte.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 Mai 2018, 08:30:46
@Maista  @Andies

danke für die Wiki Korrekturen

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Maista am 06 Mai 2018, 10:32:38
Moin Byte09

Gerne  :) Opera hilft  ;D

Schönen Sonntag

Gerd
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 06 Mai 2018, 10:41:20
Danke für das Modul!


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 07 Mai 2018, 18:25:25
mit heutigem update sind die Variablen $we und !$we in den zeitgesteuerten Triggern

   switch MSwitch on + execute 'on' commands at :
   switch MSwitch off + execute 'off' commands at :
   execute 'on' commands only at :
   execute 'off' commands only at :

verfügbar.

Syntax (neu): [20:00|$we] - Schaltet nur an Wochenenden um 20.00 Uhr
Syntax (neu): [20:00|!$we] - Schaltet nur an Wochentagen 20.00 Uhr
Syntax: [20:00|12] - Schaltet nur an Montagen und Dienstagen 20.00 Uhr
etc. ...

Feiertage etc. werden einbezogen,  wenn entsprechend holiday konfiguriert ist

Hilfetext im Webinterface wurde ergänzt, Änderung im Wiki folgt.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 07 Mai 2018, 18:28:42
Ich mache da irgendwas falsch:
2018.05.07 18:27:51 1 : UPD FHEM/98_MSwitch.pm
2018.05.07 18:27:51 1 : Got 160916 bytes for FHEM/98_MSwitch.pm, expected 160077
2018.05.07 18:27:51 1 : aborting

bei
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 07 Mai 2018, 18:32:02
Zitat von: andies am 07 Mai 2018, 18:28:42
Ich mache da irgendwas falsch:
2018.05.07 18:27:51 1 : UPD FHEM/98_MSwitch.pm
2018.05.07 18:27:51 1 : Got 160916 bytes for FHEM/98_MSwitch.pm, expected 160077
2018.05.07 18:27:51 1 : aborting

bei
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

bitte einfach nochmal probieren , ich habe es im github gerade erst geändert , hast wohl genau dann zugegriffen ... denke ich

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 07 Mai 2018, 18:35:26
Looft.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Bäschdler am 07 Mai 2018, 23:55:43
Hallo,

ich habe jetzt mal ein bisschen "rumgespielt", das Tool ist ja echt mächtig - aber für mich noch immer ein bisschen verwirrend...

Zum einen habe ich noch nicht verstanden wozu in dem oben genannten Beispiel (für mich) der "Schalter" da ist, die Eingangsbedingungen sind doch die dummy's 1 & 2 und das Device das damit geschaltet wird ist der dummy3.

Dann würde ich mir bei der Konfiguration der device actions irgend eine optische Trennung der (zuvor ausgewählten) devices wünschen. Im Beispiel erscheint ja dummy3 dort schon 2 mal. Ich habe jetzt noch einen weiteren dummy4 mit dazu konfiguriert, aber da dummy3 bzw. dummy4 dort zentriert vor den Bedingungen steht muss ich immer erst suchen was jetzt zum ersten dummy3, zum zweiten dummy3, zum ersten dummy4,... gehört. Das finde ich als (noch nicht so geübter in diesem Modul) ziemlich unübersichtlich. Eine Leerzeile unterhalb der Buttons "add action ..." / "delete this action ....", ein Strich, eine Zeile Sternchen oder so was würde mir da sehr viel weiterhelfen.

Gruss Bäschdler
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 08 Mai 2018, 05:25:51
Zitat von: Bäschdler am 07 Mai 2018, 23:55:43
Hallo,

ich habe jetzt mal ein bisschen "rumgespielt", das Tool ist ja echt mächtig - aber für mich noch immer ein bisschen verwirrend...

Zum einen habe ich noch nicht verstanden wozu in dem oben genannten Beispiel (für mich) der "Schalter" da ist, die Eingangsbedingungen sind doch die dummy's 1 & 2 und das Device das damit geschaltet wird ist der dummy3.

in der tat kann das etwas verwirrend sein und ist ggf. noch nicht optimal gelöst. das es so ist hat aber seinen hintergrund. schreibe dir heute abend etwas dazu , bin jetzt auf dem sprung zur arbeit.

z.B ich nutze ich viele MSwitch-Devices als quasi Zentralschalter , d.H ich definiere gar keine Einschaltebedingungen, sondern ich ziehe einfach x definierte Devices mit, wenn ich das MSwitch-device manuell ( über den Schalter ) an- oder ausschalte um z.B diesen Schalter dann in Alexa etc. zu integrieren und mit einem Befehl eine beliebige Reihe von Aktionen auszuführen . Dahe werden Geräte , die keine Einschalbedingungen definiert haben in der MSwitch Raumansicht als im  'Multiswitchmode' dargestellt.

Ein weiterer hintergund ist z.B eine Kontrollfunktion, die ich darüber realisieren kann . Siehst du , wenn du dir in dem WIKI das Konfigurationsbeispiel Dashbuttons anschaust. Da wird beim schalten das Device auf 'on' gesetz und für einen gewissen Zeitraum kein weiterer Schaltvorgang bzw. Trigger mehr akzeptiert, bis sich das Device nach einer gewissen Zeit selber wieder auf 'off' setzt.
Werde mir aber gedanken machen , ob ich das irgendwie intuitiver lösen ( und vor allen anzeigen ) kann.


Zitat von: Bäschdler am 07 Mai 2018, 23:55:43
Dann würde ich mir bei der Konfiguration der device actions irgend eine optische Trennung der (zuvor ausgewählten) devices wünschen. Im Beispiel erscheint ja dummy3 dort schon 2 mal. Ich habe jetzt noch einen weiteren dummy4 mit dazu konfiguriert, aber da dummy3 bzw. dummy4 dort zentriert vor den Bedingungen steht muss ich immer erst suchen was jetzt zum ersten dummy3, zum zweiten dummy3, zum ersten dummy4,... gehört. Das finde ich als (noch nicht so geübter in diesem Modul) ziemlich unübersichtlich. Eine Leerzeile unterhalb der Buttons "add action ..." / "delete this action ....", ein Strich, eine Zeile Sternchen oder so was würde mir da sehr viel weiterhelfen.

Gruss Bäschdler

einen optische trennung werde ich einbauen.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 08 Mai 2018, 21:08:40
update verfügbar: kleinere designänderungen

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 08 Mai 2018, 22:15:20
Ich blick bei den Events auch noch nicht wirklich durch, besonders bei dem Dash Button Bespiel. :o Da würde ich mir mehr Bespiele wünschen, am besten erstmal einfache Dinge. :) Sonst bin ich echt zufrieden damit.
Maista, also Gerd hat mich gefragt, ob du nicht mal ein Bespiel für eine IT Fernbedienung posten könntest? :) Die z.B. ein Sonoff Device oder ähnliches über ein Event schaltet.

Ich nutze MSwitch derzeit für 3 Geräte, 2x TV und einmal meinen Xiaomi Staubsauger. Um mit einer MSwitch Aktion mehrere Geräte zeitversetzt zu schalten.
Da finde ich die Übersicht und die Einfachheit der Konfigurationsmöglichkeit sehr gut, besser als bei einem DOIF.

Z.B. TV anschalten: Bei ON, geht die Sonoff Steckdose an. Dazu schaltet ein IR ESP8266 Device den TV an und nach 10 Sekunden wechselt Kodi bei einer bestimmten Uhrzeit direkt auf den gewünschten Kanal.
Bei TV OFF: geht der TV per IR Device aus und der Raspberry mit Kodi wird heruntergefahren. Nach 30 Sekunden geht die Sonoff Steckdose aus...


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 09 Mai 2018, 05:45:30
das lange wochenende steht ja vor der tür, da werde ich die Beispiele entsprechend ergänzen .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Bäschdler am 09 Mai 2018, 10:46:25
Hi,

jetzt habe ich mir den "Schalter" aus dem Beispiel umbenannt und andere Bedingungen ausgewählt. Damit fehlt mir jetzt das Beispiel. Also habe ich mir gedacht, ich lege es einfach nochmal so an wie beschrieben. Aber da läuft irgendwas schief: beim neu angelegten Schalte ssteht beim dummy3 unter off condition "150 > 100 AND on eq "on"" - es fehlen die Devices dazu.

Dann gleich noch eine andere Frage: ich habe das Twilight Modul und möchte daraus den azimith-Wert als Bedingung mit verknüpfen. Aber das ist ja kein Device was dadurch angelegt wird. Kann ich das dann einfach so mit ([myLocation:azimuth]<20) eintragen oder muss ich da noch was in eine (white-)liste eintragen oder sonst irgendwo?

Danke
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 09 Mai 2018, 16:07:17
Zitat von: Bäschdler am 09 Mai 2018, 10:46:25
Hi,

jetzt habe ich mir den "Schalter" aus dem Beispiel umbenannt und andere Bedingungen ausgewählt. Damit fehlt mir jetzt das Beispiel. Also habe ich mir gedacht, ich lege es einfach nochmal so an wie beschrieben. Aber da läuft irgendwas schief: beim neu angelegten Schalte ssteht beim dummy3 unter off condition "150 > 100 AND on eq "on"" - es fehlen die Devices dazu.

Dann gleich noch eine andere Frage: ich habe das Twilight Modul und möchte daraus den azimith-Wert als Bedingung mit verknüpfen. Aber das ist ja kein Device was dadurch angelegt wird. Kann ich das dann einfach so mit ([myLocation:azimuth]<20) eintragen oder muss ich da noch was in eine (white-)liste eintragen oder sonst irgendwo?

Danke

ja , kannst du in den conditions für 'on' oder 'off' einsetzen , allerdings ohne runde klammern:

[myLocation:azimuth] < 20

nachtrag: schädlich sind die runden Klammern aber auch nicht

du kannst auch mal deas attribut 'MSwitch_Help' auf 1 setzen, dann bekommst du entsprechende Buttons für Hilfetexte angezeigt . Da sind solche Dinge beschrieben.

zum ersten Absatz : schaue ich mir heute abend an , ob da etwas quer läuft.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: outhouse am 10 Mai 2018, 08:25:49
Hallo

Die Möglichkeiten dieses Moduls gefallen mir sehr. Herzlichen Dank für die Bereitstellung!

Seit dem heutigen Update erhalte ich - nach erfolgter Schaltung - folgende Fehlermeldung:
PERL WARNING: Use of uninitialized value $args[0] in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 558

Zusätzlich gelingt es mir aktuell nicht, eine Device anhand von Readings UND Zeit zu schalten:

Beispiel:

Das Device "Lamp" soll wie folgt einschalten wenn:

a) der Dämmerungsschalter zwischen 16:30 und 22:00 einschaltet per sofort
b) der Dämmerungsschalter vor 16:30 auf "on" schaltet, erst ab 16:30

Punkt a) erreiche ich mit "on condition" [16:30-22:00], wie kann ich Punkt b) umsetzen?

Gruss

Chris
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Mai 2018, 08:32:13
Zitat von: mark79 am 08 Mai 2018, 22:15:20
Ich blick bei den Events auch noch nicht wirklich durch, besonders bei dem Dash Button Bespiel. :o Da würde ich mir mehr Bespiele wünschen, am besten erstmal einfache Dinge. :) Sonst bin ich echt zufrieden damit.
Maista, also Gerd hat mich gefragt, ob du nicht mal ein Bespiel für eine IT Fernbedienung posten könntest? :) Die z.B. ein Sonoff Device oder ähnliches über ein Event schaltet.


ich habe entsprechendes Beispiel im Wiki zugefügt , hoffe es ist verständlich ( bei einem eigenen Modul tritt schnell eine gewisse Betriebsblindheit auf )

https://wiki.fhem.de/wiki/MSwitch_Konfigurationsbeispiele#MSwitch_IT_to_Sonoff (https://wiki.fhem.de/wiki/MSwitch_Konfigurationsbeispiele#MSwitch_IT_to_Sonoff)

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Mai 2018, 08:42:29
Zitat von: outhouse am 10 Mai 2018, 08:25:49
Hallo

Die Möglichkeiten dieses Moduls gefallen mir sehr. Herzlichen Dank für die Bereitstellung!

Seit dem heutigen Update erhalte ich - nach erfolgter Schaltung - folgende Fehlermeldung:
PERL WARNING: Use of uninitialized value $args[0] in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 558

Zusätzlich gelingt es mir aktuell nicht, eine Device anhand von Readings UND Zeit zu schalten:

Beispiel:

Das Device "Lamp" soll wie folgt einschalten wenn:

a) der Dämmerungsschalter zwischen 16:30 und 22:00 einschaltet per sofort
b) der Dämmerungsschalter vor 16:30 auf "on" schaltet, erst ab 16:30

Punkt a) erreiche ich mit "on condition" [16:30-22:00], wie kann ich Punkt b) umsetzen?

Gruss

Chris

Hi Chris

es handelt sich erstmal "nur" um eine Warnung , somit unschön aber kein Problem. Ich schaue mir das Heute an und behebe es.

zu b:  das ist wohl konfigurierbar, aber etwas "von hinten durch die Brust ins Auge" und wahrscheinlich nur für jemanden, der das Modul aus dem FF kennt ( reduziert das ganze dann wohl auf mich  ::) ). Ich werde eine entsprechende Anpassung des Moduls vornehmen, so das dieses einfacher zu bewerkstelligen ist , wird aber wohl bis morgen dauern.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: outhouse am 10 Mai 2018, 08:51:34
ZitatIch werde eine entsprechende Anpassung des Moduls vornehmen, so das dieses einfacher zu bewerkstelligen ist , wird aber wohl bis morgen dauern.

Byte09

Besten Dank für die rasche Antwort. Nur nicht hetzen mit der Anpassung des Moduls. Habe noch genug anderes zu entdecken!!

Danke
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Mai 2018, 09:07:46
Zitat von: outhouse am 10 Mai 2018, 08:51:34
Byte09

Besten Dank für die rasche Antwort. Nur nicht hetzen mit der Anpassung des Moduls. Habe noch genug anderes zu entdecken!!

Danke

habe mir kurz gedanken gemacht, letztendlich fehlt dem Modul eine Funktion äquivalent zur at-funktion :

d.H wenn dieses oder jenes eintrifft ( in deinem Fall ein Event des Sensors vor 16:00 uhr, dann schalte dieses oder jenes , aber erst um 16:00 uhr.

Im grunde ähnlich eines "delays" ( Verzögerung des Befehles ) , nur so nicht Nutzbar, da du die Zeitverzögerung  die gebraucht würde um 16:00 Uhr zu erreichen nicht so einfach berechnen kannst.

d.H ich werde weitere Felder einbauen ,  (ggf. nur im" Expertmodus" ) die dann ähnlich der delays "on at" und "off at" heissen. Damit sollte es dann relativ einfach realisierbar sein.

gruss Byte09

edit: das ganze wird dann wohl wie auf dem Bild im Anhang aussehen .
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Mai 2018, 11:46:59
Zitat von: outhouse am 10 Mai 2018, 08:25:49

Zusätzlich gelingt es mir aktuell nicht, eine Device anhand von Readings UND Zeit zu schalten:

Beispiel:

Das Device "Lamp" soll wie folgt einschalten wenn:

a) der Dämmerungsschalter zwischen 16:30 und 22:00 einschaltet per sofort
b) der Dämmerungsschalter vor 16:30 auf "on" schaltet, erst ab 16:30

Punkt a) erreiche ich mit "on condition" [16:30-22:00], wie kann ich Punkt b) umsetzen?

Gruss

Chris

mir ist gerade noch ein weiterer Lösungsweg eingefallen:

wahrscheinlich hast du ja bei  'trigger device/time:   ' einen Trigger angegeben , der die schaltung auslöst - vermutlich 'Dämmerungsschalter'.

trage in dem Feld 'execute 'on' commands only at :' zusätzlich
[16:30]
ein und erweitere deine "on condition" von  [16:30-22:00] auf:
[16:30-22:00] AND [Dämmerungsschalter:state] eq "on"

eine OR Verknüpfung sollte in diesem Fall ebenfalls funktionieren

[16:30-22:00] OR [Dämmerungsschalter:state] eq "on"

Dämmerungsschalter:state muss natütlich deinem Namen und dem reading entsprechen , den der Dämmerungsschalte angenommen hat , ich nehme an das ist 'state'.

damit wird ( zusätlich zur vorhandenen Konfiguration ) um 16:30 Uhr geprüft ob es zwischen 16:30 und 22:00 uhr ist ( logisch , ist es ) und ob der state des Dämmerungsschalters 'on' ist . wenn es zutrifft wird die Schaltung ausgelöst.

sollte Funktionieren - ungeprüft .

der zusätzliche Auslöser um 16:30 ersetzt dann im Grunde nur das Event des Dämmerungschalter, das ja nicht kommt , da der Dämmerungsschalter schon zu einem vorherigen Zeitpunkt 'ausgelöst' hat .

kannst mir ja mal Bescheid geben , ob es klappt , ich möchte das jetzt bei mirt nicht alles anlegen.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: outhouse am 10 Mai 2018, 15:52:42
Hallo Byte09

Also. Habe das Ganze mal getestet.

Die Anweisung mit OR funktioniert nicht, da ja die zweite Bedingung immer zutrifft. Heisst, sobald der Dämmerungsschalter auf on geht, schaltet das Licht ein.

Und jetzt wird es komisch. Nach dem Modifizieren von "on condition" erhalte ich bei "check condition"
If Anweisung Perl Klarzeiten:
if ((14:40 < 15:36 && 15:36 < 22:00) && ReadingsVal('WZ_Daemmerung', 'state', 'undef') eq "on"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist nicht Wahr und wird nicht ausgeführt


Setze ich den Dämmerungsschalter nun manuell auf "on", schaltet das Licht ebenfalls sofort ein. "check condition" ergibt:
If Anweisung Perl Klarzeiten:
if ((14:40 < 15:36 && 15:36 < 22:00) && ReadingsVal('WZ_Daemmerung', 'state', 'undef') eq "on"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt


Schalte ich jetzt das Licht manuell aus (nicht den Dämmerungsschalter), funktioniert der (automatische) Einschaltbefehl punkt 14:40 Uhr.

Noch klappte es also nicht ganz.

Gruss Chris
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Mai 2018, 16:26:53
ok , so etwas schwierig.

drück im device bitte mal "get DEVICE get_config" und poste mal das conffile hier.


mit der OR-Verknüpfung hast du natürlich recht !

habe es eben mal in meinem System konfiguriert, es geht mit der UND Verknüfung. Macht von der Logik auch Sinn.

'WZ_Daemmerung' habe ich dazu durch einen Dummy ersetzt , der den state 'on' oder 'off' annimmt, geschaltet wird ein weiterer dummy.

nur das wir nicht aneinander vorbei reden :

folgendes passiert nun bei mir :

wenn der 'WZ_Daemmerung' im definierten Zeitraum auf 'on' geht wird geschaltet
wenn der Zeitpunkt 16:30 erreicht ist UND der state des 'WZ_Daemmerung' bereits auf 'ON' steht wird geschaltet.
wenn der Zeitpunkt 16:30 erreicht ist UND der state des 'WZ_Daemmerung' NICHT auf 'ON' steht wird NICHT geschaltet sonder erst dann , wenn der 'WZ_Daemmerung' das nächste mal auf 'on' geht

d.H schaltet der 'WZ_Daemmerung' vor dem definierten Zeitraum auf 'on' , dann aber wieder auf 'off' wird nicht geschaltet. ( geschaltet wird nur , wenn er auch auf 'on' stehen bleibt , bzw zu dem Zeitpunkt 16:30 auf 'on' steht )

Macht ja nur so sinn, da ja davon auszugehen ist , das das Licht wieder ausreichend ist, wenn der 'WZ_Daemmerung' um 16:30 wieder auf 'off' steht 

...... es sei denn , der 'WZ_Daemmerung' sendet quasi nur einen 'on' - impuls und schaltet dann wieder auf off, egal wie das licht ist , um nach x min wieder einen Impuls zu schicken ?!?

poste mir bitte zusätlich mal ein List und ein raw-definition deines 'WZ_Daemmerung'.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 11 Mai 2018, 08:21:28
Update auf V1.3

Im laufe des Tages werde ich das Update auf die Version 1.3 bereit stellen, diese läuft im Moment bei mir zur Probe.

Dieses Update bringt eine gravierende Änderung mit sich , die das Verhalten bei der Konfiguration von verzögerten Befehlen (delays) betrifft.

Das bisherige verhalten bei einem delays war so, das eine Prüfung der 'on' oder 'off' Conditionen (falls angegeben) nicht bei Eintreffen des triggernden Events , sondern erst nach der Verzögerung, und somit erst unmittelbar vor der Befehlsausführung stattfand.

Neues Verhalten:

die Überprüfung der Conditionen findet jetzt in jedem Fall sofort mit eintreffen des Events statt !
weiterhin wurde die Option 'delays' durch Dropdownfelder ergänzt und es können folgende Einstellungen gewählt werden:

Die zweite Prüfung kann notwendig sein , um das Verhalten eines Watchdogs bieten zu können, ist in anderen Fälen aber ggf. unerwünscht.

delay with Cond-check: +
delay without Cond-check: +
at without Cond-check:
at with Cond-check:


delay with Cond-check: +
Diese Einstellung entsprich weitestgehend der bekannten Funktion und es dürften sich keine Unterschiede zu bisherigem Verhalten ergeben.
Es findet eine erneute Prüfung der Conditionen unmittelbar vor Befehlsausführung statt

delay without Cond-check: +
Es findet keine erneute Prüfung der Conditionen vor Befehlsausführung statt

at without Cond-check:
Es erfolgt keine Angabe einer Verzögerungszeit , sondern ein konkreter Zeitpunkt zur Befehlsausführung. Ist dieser Zeitpunkt am laufenden Tag überschritten , wird dieser Zeitpunkt des kommenden Tages angenommen.
Es findet keine erneute Prüfung der Conditionen unmittelbarvor Befehlsausführung statt

at with Cond-check:
Es erfolgt keine Angabe einer Verzögerungszeit , sondern ein konkreter Zeitpunkt zur Befehlsausführung. Ist dieser Zeitpunkt am laufenden Tag überschritten , wird dieser Zeitpunkt des kommenden Tages angenommen.
Es findet eine erneute Prüfung der Conditionen unmittelbar vor Befehlsausführung statt

Bei bisherigen Konfigurationen wird automatisch diese Option gesetzt : delay with Cond-check: + .
Somit entspricht das Verhalten ohne Eingriff dem bisherigen Verhalten.
Zur sofortigen Befehlsausführung ist diese Option mit der Angabe 00:00:00 zu wählen , diese Entspricht ebenfalls den bisherigen Vorgaben.

sonstige Änderungen: Fix Perl Warnings

allgemeine Info:
da diese Frage einige male aufkam: Wenn in dem Modul bei den triggernden Events Schaltzeitpunkte gesetzt sind, werden diese bei der Ausführung von "get active timer_show" angezeigt.
Das allerdings nur dann , wenn diese Timer noch am aktuellen Tag (bis 24:00) greifen.
Alle Timer, die erst am Folgetag greifen würden werden nicht angezeigt. Bedingt ist das daher, das das Modul aus verschiedenen Gründen nur Timer bis 24:00 Uhr berechnet (eine Ausnahme bilden hier Timer aus delays oder at) . Um 00:01 erfolgt grundsätzlich eine Neuberechnung für den dann aktuellen Tag.

Eine Neuberechnung findet ebenfalls bei Modifikationen der Konfiguration, dem manuellem Löschen aller Timer und einem Modul(Fhem) Neustart statt.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Maista am 11 Mai 2018, 14:15:35
Hallo Byte09,

danke für das Sonoff-Beispiel.
Bin nun aber erst einmal unterwegs. Hoffe das dann am Abend probieren zu können!

;D

Gruss Gerd
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: outhouse am 11 Mai 2018, 15:08:25
Byte09

ok , so etwas schwierig.

drück im device bitte mal "get DEVICE get_config" und poste mal das conffile hier.


Komme frühestens heute Abend dazu. Aber wie es scheint, ändert sich das mit dem V1.3 eh.....

Chris
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 11 Mai 2018, 16:27:32
Ich habe soeben die Version 1.3 im git abgelegt. Ich empfehle dringend, vor dem Update ein Backupfile der gesamten MSwitch-Konfigurationsdatei zu machen:

in irgend einem MSwitch-Device:

set DEVICE backup_Mswitch all_devices

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 11 Mai 2018, 23:34:09
Hi Byte09,

danke dir auch für das IT-Beispiel. :)

Habe heute und gestern damit rumgespielt und bei mir musste ich das ein wenig abändern. Weil der Funk Taster bei mir on und off sendet und das IT Device sich dabei nicht verändert. Das funktioniert soweit, siehe Screenshot 1.
Es ist ein Smartwares Doppelwandschalter, 2-Kanal, SH5-TSW-B der einen Sonoff Lichtschalter mit ESPeasy schaltet.

Die neue 1.3 Version läuft bei mir gut. Die alten Timer mit "delay with Cond-check" wurden korrekt übernommen. :)


Wo ich aber noch Probleme habe ist z.B. das mit dem Toggle.

Ich habe ein Xiaomi Taster, der sendet ein "click" und damit würde ich z.B. ein Sonoff WZ_Lichtschalter toggeln, also on und off schalten mit nur einem Event.
Das kriege ich aber irgendwie nicht gebacken. :(  Wie müsste ich das konfigurieren?
Bei dem DashButton Beispiel blicke ich noch nicht durch.. hatte das auch mal versucht nachzustellen, aber das hat nicht geklappt. :(

Das Event für den Xiaomi Taster sieht so aus:
2018-05-11 22:33:53 XiaomiSmartHome_Device Xiaomi_Taster click

Wenn ich MSwitch on cmd: auf Set on setze geht es, aber wie schalte ich es dann aus?

Setze ich es so, dann passiert nichts:
MSwitch on cmd: Set MSwitchtoogle [WZ_Lichtschalter:0]
MSwitch off cmd: Set MSwitchtoogle [WZ_Lichtschalter:1]


So schaltet er nur ein, aber nicht off. (Off mit einem delay von 2 Sekunden.)
MSwitch on cmd: Set 1 [WZ_Lichtschalter:0]
MSwitch off cmd: Set 0 [WZ_Lichtschalter:1]


Habe davon ein einen zweiten Screenshot angehangen...


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Mai 2018, 08:09:09
ich werde nachher noch ein Beispiel für SOnoff mit toggle im Wiki schreiben.



aber auf die schnelle:

da dein Taster nur ein Event gereriert musst du auch nur einen Kanal belegen, d.H setze 'execute 'off' commands only' auf 'no_trigger'.
'execute 'on' commands only' lass wie es ist.

in den 'Device Actions' setzt du:

'MSwitch on cmd: Set MSwitch_toggle 1/0'   .... wenn ich davon ausgehe das die Schaltbefehle 'set WZ_Lichtschalter 1' und 'set WZ_Lichschalter 0' lauten.

'MSwitch off cmd: Set no_action'
damit sollte es gehen.

was anderes , was für einen Style nutzt du ? das sieht im Feld 'Device Actions' so merkwürdig verrissen aus ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 12 Mai 2018, 12:16:11
Hallo, danke dir das funktioniert nun auch. :) Ich hatte das mit 1 0 probiert, anstatt mit 1/0.  ::)

Gibt es noch eine Möglichkeit das Icon bzw. den State vom MSwitch Device mit ändern zu lassen?
Jetzt steht immer nur "on" und das Icon wird als eingeschaltet angezeigt, auch wenn der toggle für "off" ausgeführt wurde.

Der blaue Style heißt "f18", der ist ziemlich neu bei Fhem mit dabei und ist mit Javascript.
https://forum.fhem.de/index.php?topic=82351.0


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Mai 2018, 13:50:11
Zitat von: mark79 am 12 Mai 2018, 12:16:11
Hallo, danke dir das funktioniert nun auch. :) Ich hatte das mit 1 0 probiert, anstatt mit 1/0.  ::)

Gibt es noch eine Möglichkeit das Icon bzw. den State vom MSwitch Device mit ändern zu lassen?
Jetzt steht immer nur "on" und das Icon wird als eingeschaltet angezeigt, auch wenn der toggle für "off" ausgeführt wurde.

Der blaue Style heißt "f18", der ist ziemlich neu bei Fhem mit dabei und ist mit Javascript.
https://forum.fhem.de/index.php?topic=82351.0


Viele Grüße
Mark

Hi Mark,

im Grunde sollte diese Funktion im reinen Notifymode betrieben werden , d.H den Trigger nur in den feldern 'execute 'on' commands only' oder 'execute 'off' commands only' gesetzt wird, somit würde sich das Icon des MSwitch devices gar nicht verändern. Leider habe ich einen ziemlich ätzenden Bug reingearbeitet ( auf deinen Post hin gefunden ) , der dafür sorgt, das das Togglen gar nicht geht , wenn du den Trigger in geanu diesen Feldern definierst , sondern nur in 'switch All_Off_Dev on + execute 'on' commands' bzw. 'switch All_Off_Dev on + execute 'off' commands'. Ich nehme an das du genau das gemacht hast , sonst würde es gar nicht gehen.

ich werde mich heute Nachmittag mit diesem Fehler beschaäftigen und ein Update einstellen , danach mehr dazu .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 12 Mai 2018, 17:51:45
Hallo Byte,

das ist auch eher nur ein kosmetisches Problem. :) Aber vielleicht kommt das irgendwann mal später. :D
Das man z.B. bei einem affected devices anhaken kann, das sich der state vom MSwitch Device mit ändern soll, wenn das affected devices geschaltet wird.

Den Bug kann ich bestätigen, mit on + execute gehts:
switch <test> on + execute 'on' commands

Und nur bei execute , schaltet er nur aus, aber nicht mehr ein.
execute 'on' commands only

Aber zuvor lag der Fehler bei mir, das ich es nicht mit dem Schrägstrich eingerichtet habe, sondern nur versucht habe mit "1 0" und "1:0"...

Werde nun mal weiter testen.. vielen Dank dir für die Hilfe!


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Mai 2018, 18:15:27
habe eben das Update v1.31 eingespielt Ich hoffe der Bug ist damit behoben.

das Wikibeispiel kommt daher heute leider zu kurz, mache ich morgen  :(

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 13 Mai 2018, 12:27:50
Zitat von: mark79 am 12 Mai 2018, 17:51:45
Hallo Byte,

das ist auch eher nur ein kosmetisches Problem. :) Aber vielleicht kommt das irgendwann mal später. :D
Das man z.B. bei einem affected devices anhaken kann, das sich der state vom MSwitch Device mit ändern soll, wenn das affected devices geschaltet wird.
...........


in der nächsten Version wird es eine Lösung für das Problem geben .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm v1.4
Beitrag von: Byte09 am 14 Mai 2018, 19:16:19
Update auf V1.4 verfügbar:

Änderungen:

in den 'on condition:' und 'off condition:' sind nun folgende Variablen verfügbar

[$EVENT]
[$EVENTFULL]
[$EVTPART1]
[$EVTPART2]
[$EVTPART3]



Zusätzliches Attribut 'MSwitch_Mode' verfügbar.

Mode 'Full' : Device ist in vollem, bisherigem Funktionsumfang verfügbar.
Mode 'Notify' : Device befindet sich im 'Notify' Mode. d.H folgende Optionen sind nicht verfügbar und werden nicht ausgeführt.

'switch MSwitch on + execute 'on' commands at :'
'switch MSwitch off + execute 'on' commands at :'
'switch DEVICE on + execute 'on' commands'
'switch DEVICE on + execute 'on' commands'

desweiteren hat des MSwitch Device in diesem Mode keine set on/off Option und kein devstateicon mehr, sondern wird lediglich als 'active' dargestellt, falls es nicht 'disabled' ist. Somit vergleichbar der Darstellung von Notify, Doif etc.

Wenn dieses Attribut nicht gesetzt ist , wird die Einstellung 'Full' angenommen.
Bei neuen Devices wird das Attribut beim ersten Define auf 'Full' gesetzt .

gruss Byte09


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 15 Mai 2018, 10:35:43
Ich habe in der aktuellen Version leider vergessen ein log0 auf log5 zu ändern , d.h es werden ohne ende logeinträge generiert . Ich ändere das sobald ich Zuhause bin .

Sorry und Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 15 Mai 2018, 16:47:51
update auf V1.41 verfügbar.

fix LOG
add ATTR 'MSwitch_Wait'


das Logproblem (LOG 0 ) wurde behoben. Aus Eigenbedarf habe ich ein Attribut 'MSwitch_Wait' eingebaut . Wenn dieses Attribut gesetzt ist ( Zeit in Sekunden ) reagiert das MSwitch-Device für den gesetzten Zeitraum auf keine weiteren Events, nachdem ein Event positiv getriggert wurde.

Wird dieses Attribut nicht oder auf '0' gesetzt, entspricht das Verhalten dem bisherigen Verhalten .

gruss Byte09

@det. - Danke für den Hinweis  ;)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 16 Mai 2018, 05:33:04
@mark79

ich habe das MSwitch Toggle heute morgen mit einigen Geräten probiert , mit veerschiedenen Kombinationen ( 0/1 , on/off , ON/OFF ) etc. Diese gingen alle ohne Probleme - von daher kann ich nicht nachvollziehen, warum es mit der Yeelight nicht geht. Kannst du mir bitte mal ein LOG einstellen, was beim Schaltvorgang passiert ( verbose 5 ) und ein List der Yeelight ?

was steht denn im reading 'state' der Yeelight ? wird das der aktuelle Zustand on oder off abgebildet ?

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 16 Mai 2018, 10:38:46
Hallo Byte,

ups du hast recht, das liegt am State der Yeelight. Sorry. :)
Dort steht als state "opened" und dadurch sendet das MSwitch immer ein on an die Yeelight.

Das power Reading wäre dann das richtige im Yeelight Device, dort steht entweder "on" oder "off" als State.

Kannst du mir helfen, wie ich mit MSwitch auf das power Reading, reagieren lassen kann? Das kommt dann sicherlich in den on condition, aber wie?
Oder ich schreibe den "State" in der Yeelight um. Komme aber erst später dazu, weiter zu machen...

Internals:
   DEF        192.168.2.67
   DeviceName 192.168.2.67:55443
   FD         49
   HOST       192.168.2.67
   ID         192.168.2.67
   NAME       YeeLight
   NOTIFYDEV  global
   NR         410
   NTFY_ORDER 50-YeeLight
   PARTIAL   
   PORT       55443
   PROTO      1
   STATE      opened
   TYPE       YeeLight
   READINGS:
     2018-05-15 21:31:46   bright          100
     2018-05-15 21:31:46   color_flow      off
     2018-05-15 21:31:46   color_mode      color temperature
     2018-05-15 21:31:46   ct              3500
     2018-05-15 21:31:46   flow_params     
     2018-05-15 21:31:46   hue             359
     2018-05-15 21:31:46   music_mode      off
     2018-05-15 21:31:46   name           
     2018-05-16 10:22:29   power           on
     2018-05-15 21:31:46   rgb             FF0000
     2018-05-15 21:31:46   rgb_blue        0
     2018-05-15 21:31:46   rgb_green       0
     2018-05-15 21:31:46   rgb_red         255
     2018-05-15 21:31:46   sat             100
     2018-05-15 21:31:46   sleeptimer      0
     2018-05-16 10:21:05   state           opened
   helper:
     CommandSet on off toggle on-for-timer off-for-timer intervals bright dimup dimdown name default:noArg reopen:noArg close:noArg statusrequest:noArg hsv hue sat rgb color ct start_cf stop_cf scene circlecolor:noArg blink
     AnsQue:
     ErrQue:
     SendQue:
Attributes:
   DbLogExclude .*
   devStateIcon {my $power=ReadingsVal($name,"power","off");my $mode=ReadingsVal($name,"color_mode","RGB");if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");}}}
   room       YeeLight
   webCmd     rgb:bright:ct:rgb ffffff:rgb ff0000:rgb 00ff00:rgb 0000ff:on:off
   widgetOverride bright:colorpicker,BRI,0,1,100 ct:colorpicker,CT,1700,10,6500 rgb:colorpicker,RGB



root@rock64:/opt/fhem/log# tail -f fhem-2018-05.log |grep test
2018.05.16 10:25:41 5:   test state: click
2018.05.16 10:25:41 5: test MSwitch_Notify: einzeleventtest ende L:1605
2018.05.16 10:25:41 5: test MSwitch_Notif: var set für folgenden Befehlsaufruf ->  on - state:click 1651
2018.05.16 10:25:41 3: test MSwitch_Notif: Befehlsausfuehrung -> set test on state:click 1667
2018.05.16 10:25:41 3: test MSwitch_Set: aufruf MSwitch_checkcondition L:1002
2018.05.16 10:25:41 5: test MSwitch_checkcondition: ->  3705
2018.05.16 10:25:41 3: test MSwitch_Set: Befehlsausfuehrung -> set YeeLight MSwitchtoggle on/off L:1011
2018.05.16 10:25:41 5: test MSwitch_Set:  set YeeLight MSwitchtoggle on/off 1226
2018.05.16 10:25:41 5: test MSwitch_Set:  set YeeLight MSwitchtoggle on/off 1229
2018.05.16 10:25:41 5: test MSwitch_toggle:  set YeeLight MSwitchtoggle on/off 1249
2018.05.16 10:25:41 5: test MSwitch_toggle:  xsetx 1252
2018.05.16 10:25:41 5: test MSwitch_toggle:  xYeeLightx 1253
2018.05.16 10:25:41 5: test MSwitch_toggle:  x x 1254
2018.05.16 10:25:41 5: test MSwitch_toggle:  xonx 1255
2018.05.16 10:25:41 5: test MSwitch_toggle:  xoffx 1256
2018.05.16 10:25:41 5: test MSwitch_toggle: testnew -> opened 1270
2018.05.16 10:25:41 5: test MSwitch_toggle: cmd1 -> set YeeLight on 1271
2018.05.16 10:25:41 5: test MSwitch_toggle: cmd2 -> set YeeLight off 1272
2018.05.16 10:25:41 5: test MSwitch_toggle: neuer befehl -> set YeeLight on 1273
2018.05.16 10:25:41 5: test errechneter befehl:  set YeeLight on 1233


2018.05.16 10:25:49 5:   test state: click
2018.05.16 10:25:49 5: test MSwitch_Notify: einzeleventtest ende L:1605
2018.05.16 10:25:49 5: test MSwitch_Notif: var set für folgenden Befehlsaufruf ->  on - state:click 1651
2018.05.16 10:25:49 3: test MSwitch_Notif: Befehlsausfuehrung -> set test on state:click 1667
2018.05.16 10:25:49 3: test MSwitch_Set: aufruf MSwitch_checkcondition L:1002
2018.05.16 10:25:49 5: test MSwitch_checkcondition: ->  3705
2018.05.16 10:25:49 3: test MSwitch_Set: Befehlsausfuehrung -> set YeeLight MSwitchtoggle on/off L:1011
2018.05.16 10:25:49 5: test MSwitch_Set:  set YeeLight MSwitchtoggle on/off 1226
2018.05.16 10:25:49 5: test MSwitch_Set:  set YeeLight MSwitchtoggle on/off 1229
2018.05.16 10:25:49 5: test MSwitch_toggle:  set YeeLight MSwitchtoggle on/off 1249
2018.05.16 10:25:49 5: test MSwitch_toggle:  xsetx 1252
2018.05.16 10:25:49 5: test MSwitch_toggle:  xYeeLightx 1253
2018.05.16 10:25:49 5: test MSwitch_toggle:  x x 1254
2018.05.16 10:25:49 5: test MSwitch_toggle:  xonx 1255
2018.05.16 10:25:49 5: test MSwitch_toggle:  xoffx 1256
2018.05.16 10:25:49 5: test MSwitch_toggle: testnew -> opened 1270
2018.05.16 10:25:49 5: test MSwitch_toggle: cmd1 -> set YeeLight on 1271
2018.05.16 10:25:49 5: test MSwitch_toggle: cmd2 -> set YeeLight off 1272
2018.05.16 10:25:49 5: test MSwitch_toggle: neuer befehl -> set YeeLight on 1273
2018.05.16 10:25:49 5: test errechneter befehl:  set YeeLight on 1233
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 16 Mai 2018, 11:22:20
Das geht mit dem toggle im moment gar nicht , dieses kann nur dascreading state abfragen und entsprechend reagieren. Habe mir das heute morgen schon gedacht und mir Gedanken dazu gemacht.

Ich werde die toggle Routine heute abend entsprechend ändern/erweitern , so dass hier auf ein beliebiges , definierbares reading  reagiert werden kann

Gruss Bytr09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 16 Mai 2018, 18:42:02
ich werde nachher ein Update auf V1.42 einspielen.

Änderung:
Funktionsänderung/erweiterung MSwitchToggle.

Bisher konnte Toggle nur auf das Reading 'state' eines Devices auswerten und entsprechend reagieren.

set [name] MSwitchtoggle on/off

hier wurde einfach derZustand des Readings 'state' des betreffenden Devices geprüft.
war dieser 'on' wurde ein set off gesendet,
war dieser 'off' wurde ein set oon gesendet.

das funktionierte nur dann , wenn der 'state' genau die im MSwitch-device gespeicherte Befehle beinhaltete.


Neue Funktion :

die alte Syntax bleibt erhalten und entspricht in der Funktion genau dem bisherigen Verhalten.
zusätzlich ist folgende Syntax möglich
set [name] MSwitchtoggle on/off/reading/suchmuster1/suchmuster2
wird nur
set [name] MSwitchtoggle on/off/
angegeben , so entspricht das dieser neuen Syntax  (wird dann intern ergänzt)
set [name] MSwitchtoggle on/off/state/on/off

erklärung :
wird im state von [name] 'on'(suchmuster1)  gefunden, so wird der Befehl 'off' gesendet,
wird im state von [name] 'off'(suchmuster1)  gefunden, so wird der Befehl 'on' gesendet

gruss Byty09

@mark79

set YeeLight MSwitchtoggle on/off/power/on/off
alternativ wird wohl auch :
set YeeLight MSwitchtoggle on/off/state/opened/closed
funftionieren, wenn der state zwischen opened und closed (ggf. opened und closed rumdrehen ) wechselt ?!


Konfigbeispiel Playbulb Sphere - Farbe togglen:

set Sphere MSwitchtoggle rgb ff0000/rgb 0000ff/rgb/ff0000/0000ff

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 16 Mai 2018, 20:11:24
update auf V1.42 verfügbar.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 16 Mai 2018, 23:03:57
Hallo Byte,

das ist ja genial, update eingespielt und es funktioniert. Vielen Dank! :)

set YeeLight MSwitchtoggle on/off/power/on/off
set YeeLight MSwitchtoggle rgb FF0000/rgb 0000FF/rgb/FF0000/0000FF


Damit kann ich eine Nachtischlampe mit der Yeelight umsetzen.. später soll die auch als Lichtwecker fungieren. Aber da überlege ich noch, wie ich das am besten umsetze.

set YeeLight MSwitchtoggle on/off/state/opened/closed

Funktioniert bei mir nicht und ich habe es mit verschiedenen Variationen ausprobiert.


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 17 Mai 2018, 21:26:12
Also, das ist mir jetzt peinlich - ich habe ja im wikieintrag herumgeschrieben, aber bis jetzt das Modul noch nicht im Einsatz, weil ich ein paar elementare Dinge nicht kapiere.

Es heißt ja, dass ,,Zweige" steuerbar sind. Kann man das auch so beschreiben, dass mehrere FHEM-Befehle zusammengefasst und durch einen einzigen Befehl im Modul (bzw. einen trigger oder einen Zeitpunkt) ausgelöst werden? Ist dann also ein Zweig so eine Art Menge von Befehlen?

Bisher sehe ich nur on und off als mögliche Zweige. Oder übersehe ich da was?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 17 Mai 2018, 21:56:11
Zitat von: andies am 17 Mai 2018, 21:26:12
Also, das ist mir jetzt peinlich - ich habe ja im wikieintrag herumgeschrieben, aber bis jetzt das Modul noch nicht im Einsatz, weil ich ein paar elementare Dinge nicht kapiere.

Es heißt ja, dass ,,Zweige" steuerbar sind. Kann man das auch so beschreiben, dass mehrere FHEM-Befehle zusammengefasst und durch einen einzigen Befehl im Modul (bzw. einen trigger oder einen Zeitpunkt) ausgelöst werden? Ist dann also ein Zweig so eine Art Menge von Befehlen?

Bisher sehe ich nur on und off als mögliche Zweige. Oder übersehe ich da was?

Hi Andies ,

die Grundidee des Moduls war ja eine ganz andere , aus dieser resultiert das Grundgerüst des Modules , so wie es ist. Irgendwann hat sich diese Grundidee aber als Sackgasse erwiesen und irgendo viel mal der Satz 'aber ein cooles Mutiswitch-device" , ich glaube von det.

Ab da war die Intention, ein Modul zu schreiben , was alles kann , sprich ich aufkeine anderen Module mehr angewiesen bin.

Zu den Zweigen:

Das "grund"-Mswitch device ist ja schaltbar , On oder Off. Nun kann ich eine beliebige Zahl von Geräten definieren , die eine Aktion ausführen sollen , wenn das MSwitch device geschaltet wird .
der 'on-zweig' - was tun die devices , wenn das MSwitch auf On schaltet
der 'off-zweig' - was tun die Geräte , wenn das MSwitch device auf Off schaltet

beim manuellen schalten des MSwich werden die entsprechenden zweige abgearbeitet
, wobei jedes device in jedem Zweig mit einer vielzahl von Bedingungen verknüpft werden kann  ( "on", oder "offconditions"

alternativ zum manuellen schalten kann das schalten des MSwiches auch durch einen Trigger oder eine feste Zeit ausgelöst werden .

alternativ dazu kann auch jeder zweig durch ein trigger aussgelöst werden , der state des Mswitches ändert sich aber nicht ( notify - mode )

und zuguter letzt können diese alternativen auch gleichzeitig , nebenher belegt werden in einem Device.

so ergeben sich eine Variation von Schaltmöglichkeiten , die - zumindest für mich - jedes weitere 'Schalt'-Modul unnötig machen.

Ist etwas schwierig zu erklären in schriftform. Wenn du lust hast können wir gerne mal dazu telefonieren. Aber das beste wäre es wohl einfach mal ein Device anzulegen und damit zu spielen  ;)

Gruss Thomas


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 18 Mai 2018, 17:27:39
Ich habe ein Bespiel (Screenshot) für meinen TV in der Küche, allerdings nicht über ein trigger, sondern mittels on/off.

Das MSwitch KU_TV fasst alle Aktionen zusammen die ich haben möchte und schalten tue ich es mit einem DashButton, oder Alexa (ha-bridge), oder morgens über einen Motion Sensor, oder aber direkt über Fhem Webinterface.

Es sind bei dem MSwitch KU_TV Device 3 Geräte involviert. Einmal die Sonoff Steckdose, wo alles dran hängt.
Sprich der TV, ein Raspberry mit Libreelec (Kodi) und noch ein NodeMCU mit IR Transmitter (FreeCmd), um den TV ein & auszuschalten.

Bei "set KU_TV off" geht der TV via IR Transmitter in den Standby und der Raspberry wird herunterfahren (shutdown) und nach einigen Sekunden geht die Sonoff Steckdose aus.
Aus dem Grund, damit das Dateisystem vom RPi nicht kaputt geht und der TV nicht hart ausgeschaltet wird, wenn die Sonoff Steckdose ausgeschaltet wird.

Mit einem MSwitch Device (KU_TV) kann ich alle 3 Geräte Zeitversetzt steuern und auch zu verschiedenen Uhrzeiten unterschiedliche Aktionen ausführen.
Wie z.B. Werktags morgens, soll die Lautstärke runter geregelt werden und automatisch SAT1 eingeschaltet werden. Wir schauen gerne Frühstücksfernsehen... :)

MSwitch finde ich einfacher zu konfigurieren, man kann sich das leicht zurecht klicken und man hat alles in einem Device.
Dazu kann man das Device auch mit on/off schalten, also mit Buttons.

Danke an Thomas für das Modul! :)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 18 Mai 2018, 19:20:52
Zitat von: Byte09 am 17 Mai 2018, 21:56:11
die Grundidee des Moduls war ja eine ganz andere , aus dieser resultiert das Grundgerüst des Modules , so wie es ist. Irgendwann hat sich diese Grundidee aber als Sackgasse erwiesen und irgendo viel mal der Satz 'aber ein cooles Mutiswitch-device" , ich glaube von dir.
Ja, ja, ich weiß  ;D

Ich habe das nun im Wiki geändert, weil endlich der Groschen gefallen ist. Ich hatte ja eigentlich vor, etwas anderes zu machen. Ich wollte ein device, das zeitgesteuert bestimmte Dinge auslöst (konkret: Abwesenheitssimulation) und mir war nicht klar, wie das geht.

Also wenn ich beispielsweise das reading eines dummy auf "Ich bin abwesend" stelle, sollten die Lampen A und B um 7:03 bis 7:20 angehen und um 8:10 und 8:20 ausgehen usw usf. Wenn dagegen "Ich bin anwesend" stand, sollte nichts passieren. Mir war nicht klar, dass ich dazu entweder einen Trigger definieren muss, der dann selbst zeitabhängig  einschaltet oder via GLOBAL gehe. Jetzt habe ich das kapiert.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 18 Mai 2018, 20:05:30
Zitat von: mark79 am 18 Mai 2018, 17:27:39
Ich habe ein Bespiel (Screenshot) für meinen TV in der Küche, allerdings nicht über ein trigger, sondern mittels on/off.

Das MSwitch KU_TV fasst alle Aktionen zusammen die ich haben möchte und schalten tue ich es mit einem DashButton, oder Alexa (ha-bridge), oder morgens über einen Motion Sensor, oder aber direkt über Fhem Webinterface.

Es sind bei dem MSwitch KU_TV Device 3 Geräte involviert. Einmal die Sonoff Steckdose, wo alles dran hängt.
Sprich der TV, ein Raspberry mit Libreelec (Kodi) und noch ein NodeMCU mit IR Transmitter (FreeCmd), um den TV ein & auszuschalten.

Bei "set KU_TV off" geht der TV via IR Transmitter in den Standby und der Raspberry wird herunterfahren (shutdown) und nach einigen Sekunden geht die Sonoff Steckdose aus.
Aus dem Grund, damit das Dateisystem vom RPi nicht kaputt geht und der TV nicht hart ausgeschaltet wird, wenn die Sonoff Steckdose ausgeschaltet wird.

Mit einem MSwitch Device (KU_TV) kann ich alle 3 Geräte Zeitversetzt steuern und auch zu verschiedenen Uhrzeiten unterschiedliche Aktionen ausführen.
Wie z.B. Werktags morgens, soll die Lautstärke runter geregelt werden und automatisch SAT1 eingeschaltet werden. Wir schauen gerne Frühstücksfernsehen... :)

MSwitch finde ich einfacher zu konfigurieren, man kann sich das leicht zurecht klicken und man hat alles in einem Device.
Dazu kann man das Device auch mit on/off schalten, also mit Buttons.

Danke an Thomas für das Modul! :)

Hi Mark,

nur aus Neugier : was machen denn die drei dash notifys bzw das doif , die mit dem device 'verbunden' sind ?
ggf, kannst du die sparen ( je nach ddem ) .

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 19 Mai 2018, 00:38:27
Hallo Thomas,

Verbessern kann man bestimmt einiges. :) Allerdings das mit Dash Button Bespiel im Wiki habe ich bei mehreren Versuchen nicht hinbekommen. Aber das ist auch schon etwas her und war am Anfang wohl etwas zu komplex...
Ich werde das später noch mit einem einfaches Device ausprobieren.

>>nur aus Neugier : was machen denn die drei dash notifys bzw das doif , die mit dem device 'verbunden' sind ?

Mit dem "Dash_Power" Button wird der KU_TV bzw. das MSwitch Device an oder ausgeschaltet (Toggle notify)
defmod Dash_Power notify DashButton:18-74-2e-6b-0c-32..short { if (ReadingsVal("KU_TV","state","") eq "on") { fhem("set KU_TV off") } else { fhem("set KU_TV on") } }

Dash_Mentos ist ein Dashbutton im Flur, womit ich einige Geräte beim verlassen der Wohnung, oder beim schlafen gehen ausschalte:
defmod Dash_Mentos notify DashButton:18-74-2e-a2-fc-51:.short {fhem("set WZ_Lichtschalter off;; set WZ_Bilderrahmen off;; set WZ_Stehlampe off;; set KU_Schranklicht off;; set KU_Kaffee off;; set WZ_TV off;; set KU_TV off")}

Das DOIF ist ein IT Bewegungsmelder, der im Moment eigentlich nur morgens beim aufstehen das Küchenlicht, Kaffeemaschine und TV anschaltet. Irgendwann später soll der Sensor, ein Wecker ausschalten und ein Nachtlicht schalten...
defmod Flur_motion_kueche_morgens DOIF ([05:50 - 07:30|Mo Di Mi Do Fr] and [Pearl_Motion:"^on$"]) (set KU_Kaffee on)(set KU_Schranklicht on)(set KU_TV on)DOELSEIF([00:00])

Wozu das DashButton_notify_1 existiert, weiß ich allerdings auch nicht mehr. :D
defmod DashButton_notify_1 notify DashButton:18-74-2e-a2-fc-51:.short {("set WZ_Lichtschalter off;;;; set WZ_Bilderrahmen off;;;; set WZ_Stehlampe off;;;; set KU_Schranklicht off;;;; set KU_Kaffee off;;;; set WZ_TV off;;;; set KU_TV off")}

Das war bestimmt ein Test Device, was ich wohl vergessen habe zu löschen. Oder das schaltet in Wirklichkeit Dash_Mentos. Muss ich mir später noch mal genauer anschauen.

Das meiste ist auch noch aus meiner Anfangszeit und wenn es funktioniert, verändert man es erstmal nicht.
Aber bisher habe ich 3 DOIFs und ein paar Dummys durch MSwitch ersetzt.


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 08:04:58
kommendes Update auf V1.43

das kommende Update wird folgende Änderungen enthalten:

- diverse kleinere Fehler behoben

- gravierenden fehler in Zusammenhang Notify-Mode und Delays behoben

- Funktionserweiterung Events: bisher boten die triggerbaren Events nur in der 'letzten Stelle' die Möglichkeit von Mehrfachangaben  z.B.
state:(on/off) Hier wird es Möglich sein , auch bei dem Readingnamen Mehrfachangaben zu machen  , in dieser Form (state/rgb):(on/off) Dieses zielt insbesondere auf die komfotablerer Einbindung von Dashbuttons ab, da damit folgende Eventabfragen Möglich werden , ohne das in den jeweiligen 'affected devices' nochmals eine Conditionabfrage gemacht werden muss :
(ac-63-be-8c-d2-X1/ac-63-be-8c-d2-X2/ac-63-be-8c-d2-X3):short

- Funktionserweiternug MSwitch_Mode: zu den bisherigen Modes 'Full' und 'Notif' wird der Mode 'Toggle' kommen. In diesm Mode wird in den Triggerdetails statt der bisherigen Felder "execute 'on' commands, execute 'off' commands' ... " nur ein Feld verfügbar sein , 'toggle Mswitch and execute comands". Bei eintreffen des hier definierten Events Toggelt sich das MSwitch Device selber und führt alle Kommandos des dann aktiven Zweiges aus - manuelles umschalten über webcmd ist ebenfalls möglich.

gruss Byt09



Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 19 Mai 2018, 10:04:30
Man kommt ja mit dem Wikischreiben gar nicht hinterher :D
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 10:46:58
Zitat von: andies am 19 Mai 2018, 10:04:30
Man kommt ja mit dem Wikischreiben gar nicht hinterher :D

;D

ja ,sry  ;), da das modul jetzt doch hier und da im einsatz ist stellt sich doch schnell verbesserungsbedarf dar.
die letzten Änderungen beruhen z.B fast ausschliesslich auf dem letzten post von Mark und dem daraus resultierendem vereinfachungspotential

Gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 19 Mai 2018, 12:22:01
Was hältst du von der Idee, einen Text für die commandref innerhalb des Moduls (also am Ende) entwerfen? Ich finde das immer gut, wenn man unten auf ,,device help" klickt und gleich was sieht, das passiert dann nämlich.  Soll ich mal versuchen?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 12:29:46
Zitat von: andies am 19 Mai 2018, 12:22:01
Was hältst du von der Idee, einen Text für die commandref innerhalb des Moduls (also am Ende) entwerfen? Ich finde das immer gut, wenn man unten auf ,,device help" klickt und gleich was sieht, das passiert dann nämlich.  Soll ich mal versuchen?

hi andies

sehr sehr gerne ,

genau diese fehlende commandref ist eigentlich auch der grund, warum ich zur zeit nicht mal daran denke , das Modul offiziell zu machen.

traue es mich ja kaum es zu sagen , aber das ist mir im moment zu zeitaufwendig ( und schreibarbeit ist eh nicht so meins )  :o

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 20:20:20
Hallo Thomas,

nach deinem Hinweis eben auf dieses Modul habe ich mir nun die 6 Seiten hier durchgelesen und auch das wiki mal überflogen. Ist für mich heute irgendwie schwere Kost.

Nun eine bitte an dich:

Ich habe einen HM-PB-2-WM55 (Flur_Taster1_01:.*Short.*(Licht an), Flur_Taster1_02:.*Short.*(Licht aus)) als Taster, einen HM-Sen-MDIR-WM55 (Flur_Taster2_01:.*Short.*(Licht an), Flur_Taster2_02:.*Short.*(Licht aus), Flur_Taster2_Motion(Bewegungsmelder)) als Taster mit Bewegungsmelder und beide schalten einen HM-LC-DIM1T-FM (Flur_Lampe) wo eine Lampe angeschlossen ist. Der Bewegungsmelder schaltet die Lampe nur in der Zeit von 18 Uhr bis 6 Uhr.

Kannst du mir das mal als Beispiel für dein Modul machen? Vielleicht verstehe ich dann den ganzen Zusammenhang.

Vielen Dank schonmal

Gruß Torsten
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 19 Mai 2018, 20:37:37
also ich kann das auch nicht auf die Schnelle, aber man muss da ungefähr wie folgt herangehen. Du brauchst ein Gerät, das auslöst. Das könnte im Zweifel ein dummy sein, muss aber nicht. Das Gerät hat on und off. Dieses Gerät ist der trigger.

Und dann überlegst du dir, was nach dem on oder dem off geschaltet werden soll. Das sind die Geräte, die du dann im webinterface anlegst. Die Geräte stehen dann in den Zweigen, also dem on-Zweig bzw. dem off-Zweig.

Jetzt klarer?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 20:48:11
Zitat von: andies am 19 Mai 2018, 20:37:37
...
Jetzt klarer?

Leider nein
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 20:56:50
Zitat von: Torsten_MG am 19 Mai 2018, 20:48:11
Leider nein
Hi

Heute leider nicht mehr ... bin unterwegs und habe gerade ein schönes Bier vor mir stehen.

Mache ich morgen früh.

Gruss Byte09

Kurz da mobil

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 20:57:50
Zitat von: Byte09 am 19 Mai 2018, 20:56:50
Hi

Heute leider nicht mehr ... bin unterwegs und habe gerade ein schönes Bier vor mir stehen.

Mache ich morgen früh.

Gruss Byte09

Kurz da mobil

Gesendet von meinem SM-G900F mit Tapatalk

Super, vielen Dank. Dann noch Prost!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 19 Mai 2018, 21:07:09
Zitat von: Torsten_MG am 19 Mai 2018, 20:48:11
Leider nein
Kannst du wenigstens sagen, wieso? Sonst hole ich mir auch ein Bier ;-)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 21:08:58
Liegt wahrscheinlich daran, dass ich heute eine ziemlich lange Leitung habe. Dazu kommt, dass ich noch Anfänger bin und noch nicht den Durchblick habe.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 19 Mai 2018, 21:12:37
Hallo Thomas und Prost, :)

die Neuerungen hören sich toll an und so was habe ich noch vermisst, sofern ich das richtig verstehe...

Das heißt also, das es mit der V1.43 und dem neuen MSwitch_Mode: 'Toggle' es dann Möglich ist, auf ein Event zu triggern und zugleich könnte man das Device auch im Webinterface schalten?
In beiden fällen, würde sich dann auch der State des MSwitch Device mit ändern? Das wäre super und dadurch könnte man sich auch die notifys und DOIFs sparen...


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 21:15:09
Auf den Punkt gebracht ;-)

Gruss Thomas

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 19 Mai 2018, 21:34:20
So, hier kommen mal meine ersten Gehversuche mit Hilfe. Du musst, Thomas, den Text in dem Codeblock einfach nach der 1 am (derzeitigen) Ende des Modulfiles hinzufügen. Danach erscheinen ein paar Dinge, die auch im Wiki und so stehen, unter "device specific help". Englisch schaffe ich momentan nicht, vielleicht ist einer schneller.



=pod
=item device
=item summary    controls several devices using a trigger device
=item summary_DE kontrolliert mehrere Geraete mit Hilfe eines Trigger-Geraetes
=begin html
=end html
=begin html_DE

<!-- ================================ -->
<a name="MSwitch"></a>
<h3>MSwitch</h3>

<ul>MSwitch ist ein Hilfsmodul. Es erlaubt das gleichzeitige Schalten von mehreren devices. Weitere Abhängigkeiten und Bedingungen wie ereignisgesteuertes und/oder zeitgesteuertes Schalten einzelner devices sind einstellbar.<br>

Das define eines MSwitch Devices generiert lediglich eine 'leere Hülle'. Alle relevante Einstellungen werden in Readings und/oder Hashes gespeichert. Daher stehen relevanten Daten nicht in der fhem.cfg! Vielmehr finden sich diese Daten in der Datei fhem.save (die Speicherung erfolgt durch den Befehl Fhemsave).

<br><br>

<b>Vorbereitungen</b> <br><br>
Um das Modul zu nutzen, muss man sich zuerst drei Dinge überlegen:
<ol>
<li>Welches Gerät soll auslösen? Dies ist der Trigger. Ein Trigger muss on- und off-Befehle haben.</li>
<li>Wenn der Trigger ausgelöst hast, welche nachfolgenden Geräte sollen dann geschaltet werden? Dabei unterscheidet das Modul zwischen den Geräten, die bei einem on-Befehl (auch 'on-Zweig'), und den Geräten, die bei einem off-Befehl (auch 'off-Zweig') ausgelöst werden.</li>
<li> Welche weiteren Bedingungen sollen für die Geräte, die im on- bzw off-Zweig liegen, noch gelten? Hier sind ereignisgesteuerte woe auch zeitgesteuerte Bedingungen möglich.</li>
</ol>
<br><br>
<b>Define</b>
  <ul>
    <br>

    <code>define &lt;name&gt; MSwitch</code>
    <br><br>
    <code>&lt;name&gt;</code> ist Name des Moduls. Es sind weder Trigger noch Geräte in den Zweigen definiert, dies geschieht durch die Weboberfläche.<br>
<br><br>
</ul>

  <b>Set</b>
    <br><br>
   <ul>
     <b>on/off</b>     
     <ul><code>set &lt;name&gt; on/off
      </code><br>
Schaltet das Gerät on bzw off und löst damit diejenigen Geräte aus, die sich im on- bzw off-Zweig befinden.</ul>
   </ul>
   <ul>
     <b> MSwitch_backup</b>     
     <ul><code>set &lt;name&gt; MSwitch_backup
      </code><br>
Erstellt eine Backup-Datei aller MSwitch Devices unter ./fhem/MSwitch_backup.cfg.
Daten dieser Datei können im Bedarfsfall für einzelne oder gleichzeitig alle MSwitch Devices wieder zurück gespielt (hergestellt) werden. </ul>

    <b>Get</b>
    <br><br>
   <ul>
     <b>show_timer</b>
     <ul><code>get &lt;name&gt; show_timer
      </code><br>
      Zeigt alle anstehenden (gesetzten) Timer des Devices, die aus zeitabhängigen oder verzögerten Schaltbefehlen resultieren.
     </ul>
</ul>
   <ul>
     <b>delete_timer</b>
     <ul><code>get &lt;name&gt; delete_timer
      </code><br>
  Löscht alle anstehenden (gesetzten) Timer des Devices, die aus zeitabhängigen oder verzögerten Schaltbefehlen resultieren. Schaltbefehle, basierend auf rein zeitabhängigen Angaben, werden neu berechnet und gesetzt.
</ul>
     </ul>
</ul>

<b>Attribute</b>
    <br><br>
   <ul>

     <b>MSwitch_Help (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Help 1
   </code><br>
Schaltet Hilfebuttons zu den einzelnen Eingabefeldern an oder aus.<br><br>
     </ul>

     <b>MSwitch_Debug (0:1:2)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Debug 1
   </code><br>
0 - Abgeschaltet<br>
1 - Schaltet Felder zum testen der Conditionstrings etc. an<br>
2 - erweiterte Debugfunktion (nur für Entwicklung)<br><br>
     </ul>

     <b>MSwitch_Expert (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Expert 1
   </code><br>
In der Liste der möglichen Trigger erscheint das Selectfeld 'GLOBAL'. Dieses ermöglicht das Setzen eines Triggers auf alle Events und damit nicht nur auf einzelne Devices. In einem weiteren Feld kann eine weitere Selektion der triggernden Events erfolgen.<br><br>
     </ul>

     <b>MSwitch_Delete_Delays (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Delete_Delays 1
   </code><br>
Bewirkt das Löschen aller anstehende Timer (Delays) bei dem Auftreten eines erneuten, passenden Events. Bei der Option '0' bleiben bereits gesetzte Delays aus einem vorherigen, getriggertem Event erhalten und werden ausgeführt.<br><br>
     </ul>

     <b>MSwitch_Include_Devicecmds (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Include_Devicecmds 1
   </code><br>
Bewirkt die Aufnahme aller Devices in die Auswahlliste 'Affected Devices', die einen eigenen Befehlssatz liefern (bei Abfrage set DEVICE ?). Bei gesetzter Option (0) werden diese Devices nicht mehr berücksichtigt und somit nicht mehr angeboten.<br><br>
     </ul>

     </ul>


<!-- ================================ -->
=end html_DE
=cut
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: det. am 19 Mai 2018, 21:55:00
Hallo Thomas und @all,
Erst mal ist Pfingsten und die Dixielandmeile und Biergärten stehen im Vordergrund.


Das Modul läuft seit einiger Zeit bei mir prima. Nur wächst langsam die Sorge, dass durch immer neue Ideen einzelner User, die Thomas vorbildlich und schnell einbaut und umsetzt, sich das Konstrukt in eine Eierlegendewollmilchsau verwandelt. So was hat Damian mit DOIF leider inzwischen auch geschafft.
Wenn man dann zur (optimal auf die Aufgabenstellung abgestimmten) Konfiguration  einer einzelnen Instanz ein FHEM spezifisches Informatik Studium braucht, wird das Ganze wieder irgendwie Sinnlos und man kommt mit at und notify letztendlich einfacher, intuitiver und schneller zum Ziel.


Meine Message - bitte treibt den Entwickler nicht vor Euch her - Thomas macht das schon!

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 19 Mai 2018, 21:55:26
Zitat von: Torsten_MG am 19 Mai 2018, 21:08:58
Liegt wahrscheinlich daran, dass ich heute eine ziemlich lange Leitung habe. Dazu kommt, dass ich noch Anfänger bin und noch nicht den Durchblick habe.

Du hast schon sehr viele Devices und mit den Triggern bei MSwitch, bin ich selber noch ein Newbie.  :-\

Ich würde dir erstmal empfehlen, es nur mit einem trigger Device umzusetzen, um das Modul zu verstehen.

Wichtig ist dort das "Save incomming events" an zu haken und mit "modify" zu bestätigen. Das braucht man aber nur zu machen, wenn man nur ein Trigger Device hat.

Danach das zu triggernde Device (z.B. HM-PB-2-WM55) betätigen und nun kannst du das Event bzw. den State des Devices unter "trigger details" in der Dropdown-Liste auswählen. Jeweils bei on & off und auch wieder mit modify bestätigen..

Bei affected devices muss dann noch das zu schaltende Device hinzugefügt werden. Wie z.B. HM-LC-DIM1T-FM (Flur_Lampe).

Unten bei "device actions" (HM-LC-DIM1T-FM) kannst du dann bei "MSwitch on cmd: Set" auswählen was bei on/off passieren soll. Also Lampe on und off schalten.

Bei mehreren trigger Devices müsstes du meiner Meinung nach, das oberste "Trigger device" auf GLOBAL setzen und bei "switch MSwitch on + execute 'on' commands at" die zu triggernde Geräte rein schreiben. Das selbe bei "switch MSwitch off...".
Bei affected devices das zu schaltene Device hinzufügen. Aber ab dort bin ich auch raus... weil ich das selber noch nicht mit so vielen trigger Devices umgesetzt habe.


Viele Grüße
Mark


Zitat von: Byte09 am 19 Mai 2018, 21:15:09
Auf den Punkt gebracht ;-)

Gruss Thomas
Darauf bin ich schon gespannt, werde dann noch so einige Devices ersetzen. :)
Danke dir schon mal, das du das doch umgesetzt hast! :)

Zitat von: andies am 19 Mai 2018, 21:07:09
Kannst du wenigstens sagen, wieso? Sonst hole ich mir auch ein Bier ;-)
Ein Bier geht um diese Uhrzeit doch immer... Prost ;D
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 22:06:35
Zitat von: mark79 am 19 Mai 2018, 21:55:26
...
Ich würde dir erstmal empfehlen, es nur mit einem trigger Device umzusetzen, um das Modul zu verstehen.

Wichtig ist dort das "Save incomming events" an zu haken und mit "modify" zu bestätigen. Das braucht man aber nur zu machen, wenn man nur ein Trigger Device hat.

Danach das zu triggernde Device (z.B. HM-PB-2-WM55) betätigen und nun kannst du das Event bzw. den State des Devices unter "trigger details" in der Dropdown-Liste auswählen. Jeweils bei on & off und auch wieder mit modify bestätigen..

...
Da fangen meine Probleme schon an, siehe Fotos. Anscheinend habe ich was falsch eingetragen
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 22:09:52
Zitat von: det. am 19 Mai 2018, 21:55:00
Hallo Thomas und @all,
Erst mal ist Pfingsten und die Dixielandmeile und Biergärten stehen im Vordergrund.


Das Modul läuft seit einiger Zeit bei mir prima. Nur wächst langsam die Sorge, dass durch immer neue Ideen einzelner User, die Thomas vorbildlich und schnell einbaut und umsetzt, sich das Konstrukt in eine Eierlegendewollmilchsau verwandelt. So was hat Damian mit DOIF leider inzwischen auch geschafft.
Wenn man dann zur (optimal auf die Aufgabenstellung abgestimmten) Konfiguration  einer einzelnen Instanz ein FHEM spezifisches Informatik Studium braucht, wird das Ganze wieder irgendwie Sinnlos und man kommt mit at und notify letztendlich einfacher, intuitiver und schneller zum Ziel.


Meine Message - bitte treibt den Entwickler nicht vor Euch her - Thomas macht das schon!
Diese sorge hatte ich auch schon selber , aber alle Funktionen die in letzter zeit gekommen sind oder kommen weden entweder durch attr zugeschaltet z.b expertmode oder sind im Grunde nicht sichtbar , wenn man sie nicht weiss. Insofern wird sich das 'sichtbare ' grundmodul in der grundkonfiguratin nicht mehr ändern ( Änderung der delays ausgenommen ;-) )

Gruss Thomss

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 22:12:32
Das event ist im normalmode nur zweistellig , also state.*  ... nicht *.state.*

Einfacher ist es wenn du die event speichern lässt.

Gruss Byte09
Zitat von: Torsten_MG am 19 Mai 2018, 22:06:35
Da fangen meine Probleme schon an, siehe Fotos. Anscheinend habe ich was falsch eingetragen

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 22:14:18
Zitat von: Byte09 am 19 Mai 2018, 22:12:32
Das event ist im normalmode nur zweistellig , also state.*  ... nicht *.state.*

Einfacher ist es wenn du die event speichern lässt.

Gruss Byte09
Gesendet von meinem SM-G900F mit Tapatalk

im dropdown wird mir nur *.state.* und no_trigger angeboten
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 22:17:39
Markiert mal 'Save incommig events'  und bestätige das mit modify.  Dann scalte mal alle Optionen des zu triggernden devices durch. Danach das mswitch Device aktualisieren . Dann sollten alle aufgetretenen events in der liste sein.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 22:22:38
Zitat von: Byte09 am 19 Mai 2018, 22:17:39
Markiert mal 'Save incommig events'  und bestätige das mit modify.  Dann scalte mal alle Optionen des zu triggernden devices durch. Danach das mswitch Device aktualisieren . Dann sollten alle aufgetretenen events in der liste sein.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Habe es mehrfach versucht mit modify, werden immer nur die beiden möglichkeiten angezeigt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 19 Mai 2018, 22:23:24
Verschieben wir das auf morgen, möchte dich nicht von deinem Bier abhalten  ;)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 19 Mai 2018, 22:25:47
Top , so machen wirres ;-)

Gruss Thomas

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 19 Mai 2018, 22:51:00
Zitat von: Torsten_MG am 19 Mai 2018, 22:22:38
Habe es mehrfach versucht mit modify, werden immer nur die beiden möglichkeiten angezeigt

Ich habe ein Bespiel Device angelegt. Siehe Screenshot.

Das ist ein Xiaomi Funk Taster der mehrere Events produziert: "click" und "double_click"
2018-05-19 22:40:59 XiaomiSmartHome_Device Xiaomi_Taster click
2018-05-19 22:43:14 XiaomiSmartHome_Device Xiaomi_Taster double_click

Um die aufzunehmen muss man "Save incomming events" anhaken und einmal in dem Bereich (trigger details) auf modify klicken.
Danach den Taster bedienen und dann die Fhem Seite im Browser mit der F5 Taste neu laden, dann solltest du die Events wie im Sceenshot zu sehen ist auswählen können.

Weiter unten habe ich ein WZ_Lichtschalter Device mit dem Xiaomi_Taster verknüpft, das schaltet dann einfach das Wohnzimmer Licht mit "click" und double_click" an und aus.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 07:28:04
Habe es jetzt mal versucht, siehe Screenshots. Aber wenn ich den Taster betätige passiert nichts
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 09:23:13
joooooo,

du hast es richtig konfiguriert , aber ... wie soll ich sagen ... probiert und Fehler gefunden , der jetzt 6 Monate nicht aufgefallen ist . Das Modul kommt mit den () im Event nicht klar.

kannst du erstmal auf ein anderes verfügbares Event Triggern - ohne Klammern im Event ?

ich Fixe das mit der Version die heute kommt.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 09:32:21
ich spiele in der nächsten Stunde ein Zwischenupdate ein , das diesen Fehler behebt.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 09:35:29
Ich habe state nur mit (to broadcast)
und auf trigger:Short reagiert es nicht
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 10:36:05
Zitat von: Torsten_MG am 20 Mai 2018, 09:35:29
Ich habe state nur mit (to broadcast)
und auf trigger:Short reagiert es nicht

ich habe eben ein Update ( nur ein Fix ) eingespielt und hoffe das dieses Problem damit behoben ist . Somit sollte dein obiges Beispiel nun gehen

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 11:22:16
Zitat von: Byte09 am 20 Mai 2018, 10:36:05
ich habe eben ein Update ( nur ein Fix ) eingespielt und hoffe das dieses Problem damit behoben ist . Somit sollte dein obiges Beispiel nun gehen

gruss Byte09

bekomme ich den fix mit update oder muß ich den vom git runterladen? Kannst du mir dann den link geben?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 11:37:35
Zitat von: Torsten_MG am 20 Mai 2018, 11:22:16
bekomme ich den fix mit update oder muß ich den vom git runterladen? Kannst du mir dann den link geben?

in der fhem befehlszeile eingeben:

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 11:45:25
Zitat von: andies am 19 Mai 2018, 21:34:20
So, hier kommen mal meine ersten Gehversuche mit Hilfe. Du musst, Thomas, den Text in dem Codeblock einfach nach der 1 am (derzeitigen) Ende des Modulfiles hinzufügen. Danach erscheinen ein paar Dinge, die auch im Wiki und so stehen, unter "device specific help". Englisch schaffe ich momentan nicht, vielleicht ist einer schneller.



=pod
=item device
=item summary    controls several devices using a trigger device
=item summary_DE kontrolliert mehrere Geraete mit Hilfe eines Trigger-Geraetes
=begin html
=end html
=begin html_DE

<!-- ================================ -->
<a name="MSwitch"></a>
<h3>MSwitch</h3>

<ul>MSwitch ist ein Hilfsmodul. Es erlaubt das gleichzeitige Schalten von mehreren devices. Weitere Abhängigkeiten und Bedingungen wie ereignisgesteuertes und/oder zeitgesteuertes Schalten einzelner devices sind einstellbar.<br>

Das define eines MSwitch Devices generiert lediglich eine 'leere Hülle'. Alle relevante Einstellungen werden in Readings und/oder Hashes gespeichert. Daher stehen relevanten Daten nicht in der fhem.cfg! Vielmehr finden sich diese Daten in der Datei fhem.save (die Speicherung erfolgt durch den Befehl Fhemsave).

<br><br>

<b>Vorbereitungen</b> <br><br>
Um das Modul zu nutzen, muss man sich zuerst drei Dinge überlegen:
<ol>
<li>Welches Gerät soll auslösen? Dies ist der Trigger. Ein Trigger muss on- und off-Befehle haben.</li>
<li>Wenn der Trigger ausgelöst hast, welche nachfolgenden Geräte sollen dann geschaltet werden? Dabei unterscheidet das Modul zwischen den Geräten, die bei einem on-Befehl (auch 'on-Zweig'), und den Geräten, die bei einem off-Befehl (auch 'off-Zweig') ausgelöst werden.</li>
<li> Welche weiteren Bedingungen sollen für die Geräte, die im on- bzw off-Zweig liegen, noch gelten? Hier sind ereignisgesteuerte woe auch zeitgesteuerte Bedingungen möglich.</li>
</ol>
<br><br>
<b>Define</b>
  <ul>
    <br>

    <code>define &lt;name&gt; MSwitch</code>
    <br><br>
    <code>&lt;name&gt;</code> ist Name des Moduls. Es sind weder Trigger noch Geräte in den Zweigen definiert, dies geschieht durch die Weboberfläche.<br>
<br><br>
</ul>

  <b>Set</b>
    <br><br>
   <ul>
     <b>on/off</b>     
     <ul><code>set &lt;name&gt; on/off
      </code><br>
Schaltet das Gerät on bzw off und löst damit diejenigen Geräte aus, die sich im on- bzw off-Zweig befinden.</ul>
   </ul>
   <ul>
     <b> MSwitch_backup</b>     
     <ul><code>set &lt;name&gt; MSwitch_backup
      </code><br>
Erstellt eine Backup-Datei aller MSwitch Devices unter ./fhem/MSwitch_backup.cfg.
Daten dieser Datei können im Bedarfsfall für einzelne oder gleichzeitig alle MSwitch Devices wieder zurück gespielt (hergestellt) werden. </ul>

    <b>Get</b>
    <br><br>
   <ul>
     <b>show_timer</b>
     <ul><code>get &lt;name&gt; show_timer
      </code><br>
      Zeigt alle anstehenden (gesetzten) Timer des Devices, die aus zeitabhängigen oder verzögerten Schaltbefehlen resultieren.
     </ul>
</ul>
   <ul>
     <b>delete_timer</b>
     <ul><code>get &lt;name&gt; delete_timer
      </code><br>
  Löscht alle anstehenden (gesetzten) Timer des Devices, die aus zeitabhängigen oder verzögerten Schaltbefehlen resultieren. Schaltbefehle, basierend auf rein zeitabhängigen Angaben, werden neu berechnet und gesetzt.
</ul>
     </ul>
</ul>

<b>Attribute</b>
    <br><br>
   <ul>

     <b>MSwitch_Help (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Help 1
   </code><br>
Schaltet Hilfebuttons zu den einzelnen Eingabefeldern an oder aus.<br><br>
     </ul>

     <b>MSwitch_Debug (0:1:2)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Debug 1
   </code><br>
0 - Abgeschaltet<br>
1 - Schaltet Felder zum testen der Conditionstrings etc. an<br>
2 - erweiterte Debugfunktion (nur für Entwicklung)<br><br>
     </ul>

     <b>MSwitch_Expert (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Expert 1
   </code><br>
In der Liste der möglichen Trigger erscheint das Selectfeld 'GLOBAL'. Dieses ermöglicht das Setzen eines Triggers auf alle Events und damit nicht nur auf einzelne Devices. In einem weiteren Feld kann eine weitere Selektion der triggernden Events erfolgen.<br><br>
     </ul>

     <b>MSwitch_Delete_Delays (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Delete_Delays 1
   </code><br>
Bewirkt das Löschen aller anstehende Timer (Delays) bei dem Auftreten eines erneuten, passenden Events. Bei der Option '0' bleiben bereits gesetzte Delays aus einem vorherigen, getriggertem Event erhalten und werden ausgeführt.<br><br>
     </ul>

     <b>MSwitch_Include_Devicecmds (0:1)</b>   
     <ul><code>attr &lt;name&gt; MSwitch_Include_Devicecmds 1
   </code><br>
Bewirkt die Aufnahme aller Devices in die Auswahlliste 'Affected Devices', die einen eigenen Befehlssatz liefern (bei Abfrage set DEVICE ?). Bei gesetzter Option (0) werden diese Devices nicht mehr berücksichtigt und somit nicht mehr angeboten.<br><br>
     </ul>

     </ul>


<!-- ================================ -->
=end html_DE
=cut


thx, nehme ich mit in die v1.43

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 11:59:58
aus irgendeinem Grund passiert leider nichts. Habe mit filezilla nachgeschaut die Datei ist 180.783 groß und heute geändert. Im Event Monitor steht:

2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster battery: ok
2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster Flur_Klingel Short
2018-05-20 11:58:17 dummy Klingel_dummy Klingel: 1
2018-05-20 11:58:17 dummy Klingel_dummy Klingel: 1
2018-05-20 11:58:17 CUL_HM Flur_Klingel Short 1_109 (to broadcast)
2018-05-20 11:58:17 CUL_HM Flur_Klingel trigger: Short_109
2018-05-20 11:58:17 CUL_HM Flur_Klingel trigger_cnt: 109
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 12:04:33
Zitat von: Torsten_MG am 20 Mai 2018, 11:59:58
aus irgendeinem Grund passiert leider nichts. Habe mit filezilla nachgeschaut die Datei ist 180.783 groß und heute geändert. Im Event Monitor steht:

2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster battery: ok
2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster Flur_Klingel Short
2018-05-20 11:58:17 dummy Klingel_dummy Klingel: 1
2018-05-20 11:58:17 dummy Klingel_dummy Klingel: 1
2018-05-20 11:58:17 CUL_HM Flur_Klingel Short 1_109 (to broadcast)
2018-05-20 11:58:17 CUL_HM Flur_Klingel trigger: Short_109
2018-05-20 11:58:17 CUL_HM Flur_Klingel trigger_cnt: 109


hast du nach dem Update fhem neu gestartet oder ein reload 98_MSwitch.pm in der befehlszeile eingegeben ?

.... ansonsten arbeitet fhem noch mit der alten Modulversion !
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 12:08:06
und ich sehe gerade dass sich das Event 'Short 1_109 (to broadcast)'  von dem von dir getriggertem Event 'Short 1_XX (to broadcast)' unterscheidet .

warum , was bedeutet die Zahl im Event in diesem Fall ?

bekommst du nicht dieses Event '2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster Flur_Klingel Short' zur auswahl ? darauf solltest du triggern.

mach mal im MSwitch device ein get get_config und poste mal die daten bitte
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 12:14:44
Zitat von: Byte09 am 20 Mai 2018, 12:04:33
hast du nach dem Update fhem neu gestartet oder ein reload 98_MSwitch.pm in der befehlszeile eingegeben ?

.... ansonsten arbeitet fhem noch mit der alten Modulversion !

ich habe ein shutdown restart durchgeführt.
Zitat
und ich sehe gerade dass sich das Event 'Short 1_109 (to broadcast)'  von dem von dir getriggertem Event 'Short 1_XX (to broadcast)' unterscheidet .

warum , was bedeutet die Zahl im Event in diesem Fall ?

bekommst du nicht dieses Event '2018-05-20 11:58:17 CUL_HM Flur_4_fach_Taster Flur_Klingel Short' zur auswahl ? darauf solltest du triggern.

Ok, Fehler erkannt und beseitigt.

Läuft jetzt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 12:15:43
alternativ lege mal das state mit 'add even't an :
trigger_cnt:*

und wähle das dann in der dropdownlist , ob es damit geht . das hochzählende event ist etwas merkwürdig.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 12:20:59
Zitat von: Byte09 am 20 Mai 2018, 12:15:43


... das hochzählende event ist etwas merkwürdig.

gruss Byte09

Das liegt wahrscheinlich daran, dass ich als Trigger Device nicht den 4-fach Taster genommen habe sondern den Taster1 davon. Dort wird der State immer hochgetriggert.

Im Screenshot ist zu sehen, wie ich es abgeändert habe, so klappt es nun
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 12:31:40
Zitat von: Torsten_MG am 20 Mai 2018, 12:20:59
Das liegt wahrscheinlich daran, dass ich als Trigger Device nicht den 4-fach Taster genommen habe sondern den Taster1 davon. Dort wird der State immer hochgetriggert.

Im Screenshot ist zu sehen, wie ich es abgeändert habe, so klappt es nun

ok, prima.

am rande: wenn du hochzählende events oder ähnliches hast , solltest du nach der konfiguration die option 'Save incomming events : ' deaktivieren, da er diese daten sonst alle speichert ( ist dann nicht wirklich systemschonend )

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 12:36:08
ok, bin jetzt noch auf das update gespannt, wegen dem Blinken, was du gestern in meinem anderen Thema angekündigt hast.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 12:39:59
wird noch 1 , 2 Stunden dauern  ;)  ..... läuft bei mir zur Probe
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 12:49:06
Keine Hektik!  ;D

Verstehe ich das Richtig
bei Repeats gebe ich die Anzahl der Wiederholungen an und bei repeatdelay die Pausenlänge?

Wie gebe ich an, wie lange die Lampe an bleiben soll?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 13:15:03
Zitat von: Torsten_MG am 20 Mai 2018, 12:49:06
Keine Hektik!  ;D

Verstehe ich das Richtig
bei Repeats gebe ich die Anzahl der Wiederholungen an und bei repeatdelay die Pausenlänge?

Wie gebe ich an, wie lange die Lampe an bleiben soll?

in der einfachsten variante ergiebt sich das [blinkzeit = Anzahl der Wiederholungen * Pausenlänge ]

d.H
bei 6 wiederholungen und einer pausenlängevon 1 sec ergiebt sich eine Blinkzeit von 6 sekunden
bei 12 wiederholungen und einer pausenlängevon 0.5 sec ergiebt sich eine Blinkzeit von 6 sekunden
etc..
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 13:19:16
Zitat von: Byte09 am 20 Mai 2018, 13:15:03
in der einfachsten variante ergiebt sich das [blinkzeit = Anzahl der Wiederholungen * Pausenlänge ]

d.H
bei 6 wiederholungen und einer pausenlängevon 1 sec ergiebt sich eine Blinkzeit von 6 sekunden
bei 12 wiederholungen und einer pausenlängevon 0.5 sec ergiebt sich eine Blinkzeit von 6 sekunden
etc..

Ok, also stelle ich alles so ein wie in deinem Screenshot
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 13:21:18
Zitat von: Torsten_MG am 20 Mai 2018, 13:19:16
Ok, also stelle ich alles so ein wie in deinem Screenshot

nein , da habe ich etwas anderes probiert kommt ein wenig darauf was du triggerst , aber fast. schreibe ich dir dann
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 13:52:20
V1.43 im Git verfügbar.

- diverse kleinere Fehler behoben

- gravierenden fehler in Zusammenhang Notify-Mode und Delays behoben

- Funktionserweiterung Events: bisher boten die triggerbaren Events nur in der 'letzten Stelle' die Möglichkeit von Mehrfachangaben  z.B.
state:(on/off) Hier wird es Möglich sein , auch bei dem Readingnamen Mehrfachangaben zu machen  , in dieser Form (state/rgb):(on/off) Dieses zielt insbesondere auf die komfotablerer Einbindung von Dashbuttons ab, da damit folgende Eventabfragen Möglich werden , ohne das in den jeweiligen 'affected devices' nochmals eine Conditionabfrage gemacht werden muss :
(ac-63-be-8c-d2-X1/ac-63-be-8c-d2-X2/ac-63-be-8c-d2-X3):short

- Funktionserweiternug MSwitch_Mode: zu den bisherigen Modes 'Full' und 'Notif' wird der Mode 'Toggle' kommen. In diesm Mode wird in den Triggerdetails statt der bisherigen Felder "execute 'on' commands, execute 'off' commands' ... " nur ein Feld verfügbar sein , 'toggle Mswitch and execute comands". Bei eintreffen des hier definierten Events Toggelt sich das MSwitch Device selber und führt alle Kommandos des dann aktiven Zweiges aus - manuelles umschalten über webcmd ist ebenfalls möglich.

- Funktionserweiternug Expert-Mode : im Expertenmode gibt es nun zusätliche Felder 'Repeats: ' und 'Repeatdelay in sec:' . Die Vorgabe hier ist jeweils 0 , was einem leeren Feld entspricht.
Bei ausgefüllten Feldern wird der jeweilige befehl bei Auslösung um angegebene Anszahl (Repeats)  mit einer Pause von 'Repeatdelay' wiederholt.

- erste Comandref ( Deutsch ) eingefügt, hierfür ein danke an @Andies, der sie erstellt hat.


Da es doch einige Änderungen gibt , stelle ich hier im Anhang die jetzige Version (V1.42) nochmal bereit , nur für den Fall der Fälle.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 14:27:17
Habe die 98_MSwitch.pm heruntergeladen, in den FHEM-Ordner gepackt und Fhem mit shutdown restart neu gestartet. Irgendwas mache ich falsch  :o . Ich habe immer noch Version 1.42 und die Erweiterung MSwitch fehlt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 14:44:47
ZitatDa es doch einige Änderungen gibt , stelle ich hier im Anhang die jetzige Version (V1.42) nochmal bereit , nur für den Fall der Fälle.

;)  ... V1.43 über normales Update falls update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt bei Update eingetragen , oder update add https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt über Fhem Befehlszeile.

@Thorsten :
wenn du die neuen Funktionen nutzen willst musst du das attribut MSwitch_Expert dann auf 1 setzen.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 14:45:56
wer lesen kann ist klar im vorteil  ::)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 20 Mai 2018, 15:12:30
Ich habe jetzt alles so wie auf den beiden Screenshots eingestellt und habe folgenden Effekt:

a)
Taster Flur_Klingel: Licht geht an
anschließend
Taster Klingel_deaktiviert: Licht blinkt 10x im gleichen Rhythmus und geht aus.

b)
Taster Klingel_deaktiviert: nichts passiert
anschließend
Taster Flur_Klingel:  Licht blinkt 10x unregelmäßig und Licht bleibt an


EDIT:

ok, hab´s kapiert. Habe den MSwitch on cmd: Set noch auf toggle gesetzt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 20 Mai 2018, 20:43:04
Hallo Thomas,

zuerst mal danke für das Update. :)

Ich habe die neue Version heute ausprobiert, aber irgendwie bekomme ich das nicht so richtig hin. Kannst du bitte drüber schauen, habe ein Screenshot angehangen und dazu unten Logs.

Das Problem ist, das ich das Trigger Device, also z.B. ein Dash Button jeweils zwei mal betätigen muss, um das Device ein oder aus zu schalten.
Es sieht so aus, als ob das MSwitch Device zuerst seinen eigenen State schaltet, jedoch nicht das eigentliche Device wie ein LED z.B. "on"  schaltet.

Erst beim zweiten drücken des Dash Buttons schaltet es das LED Licht "on", jedoch ist dann der State von MSwitch auf "off". Als entgegen gesetzt.

Das ist ein bisschen kompliziert zu erklären, ich schreib einfach den Verlauf hier nieder, um das besser zu verstehen:

Ich habe ein Dash_Button im MSwitchToggle Modus zum schalten. Dazu ist die neue Funktion MSwitch_Mode: Toggle aktiviert.

Ausganssituation:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: off

Dann erfolgt ein Event durch drücken des Dash_Button und folendes passiert... (bis hier noch alles normal)
WZ_Bilderrahmen State: ON und duracell_dash_MSwitch State: on

Ab hier geht es dann los... drücke ich noch mal auf den Dash Button, sollte das WZ_Bilderrahmen Device auch aus gehen, tut es aber nicht.
Sondern nur das MSwitch Device geht aus:
WZ_Bilderrahmen State: ON und duracell_dash_MSwitch State: off

Drücke ich noch noch mal auf den Dash Button, dann passiert folgendes:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: on

Ein weiteres Event vom Dash_Button:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: off

Ich habe das mit dem Dash Button und dem Xiaomi Taster ausprobiert, jeweils bei unterschiedlichen Sonoff Steckdosen, einmal mit ESPeasy (0/1) und Tasmota (ON/OFF).

Dazu ist mir noch aufgefallen, das man das MSwitch WEBcmd also on/off nur "on" funktioniert und "off" ohne Funktion ist.

Wäre super, wenn du Zeit hast dort noch mal drüber schauen könntest.. :)

Hier noch ein Log vom Xiaomi Taster:
Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:13:44 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:13:44 5: SUB  main::MSwitch_Notify
2018.05.20 18:13:44 5:   xiaomi_ku_licht state: click
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:13:44 5: Trigger: state  . L:4760
2018.05.20 18:13:44 5: Trigger: state  . L:4796
2018.05.20 18:13:44 5: Trigger: 0 L:4797
2018.05.20 18:13:44 5: Trigger: state . L:4798
2018.05.20 18:13:44 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:13:44 5: Trigger: click  . L:4760
2018.05.20 18:13:44 5: Trigger: click  . L:4796
2018.05.20 18:13:44 5: Trigger: 0 L:4797
2018.05.20 18:13:44 5: Trigger: click . L:4798
2018.05.20 18:13:44 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:13:44 5: Toggle -> 0 L:1670
2018.05.20 18:13:44 5:  set -> on L:1671
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -on-   L:1679
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht off  L:1684
2018.05.20 18:13:44 5: args
2018.05.20 18:13:44 5: SUB  main::MSwitch_Set
2018.05.20 18:13:44 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:13:44 5: args
2018.05.20 18:13:44 5: SUB  main::MSwitch_Set
2018.05.20 18:13:44 5: SUB  main::MSwitch_Cmd
2018.05.20 18:13:44 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: array12 -0- L:3526

Fhem log mit Verbose 5 und Xiaomi_Taster click:
2018.05.20 18:14:27 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Motion SID: 158d0001d926ca Type: motion Status: motion
2018.05.20 18:14:28 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:14:28 5: SUB  main::MSwitch_Notify
2018.05.20 18:14:28 5:   xiaomi_ku_licht state: click
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:14:28 5: Trigger: state  . L:4760
2018.05.20 18:14:28 5: Trigger: state  . L:4796
2018.05.20 18:14:28 5: Trigger: 0 L:4797
2018.05.20 18:14:28 5: Trigger: state . L:4798
2018.05.20 18:14:28 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:14:28 5: Trigger: click  . L:4760
2018.05.20 18:14:28 5: Trigger: click  . L:4796
2018.05.20 18:14:28 5: Trigger: 0 L:4797
2018.05.20 18:14:28 5: Trigger: click . L:4798
2018.05.20 18:14:28 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:14:28 5: Toggle -> 0 L:1670
2018.05.20 18:14:28 5:  set -> on L:1671
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -off-   L:1679
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht on  L:1684
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set
2018.05.20 18:14:28 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:14:28 3: xiaomi_ku_licht MSwitch_Set: aufruf MSwitch_checkcondition L:1016
2018.05.20 18:14:28 5: SUB  main::MSwitch_checkcondition
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_checkcondition: ->  3970
2018.05.20 18:14:28 3: xiaomi_ku_licht MSwitch_Set: Befehlsausfuehrung -> set KU_Schranklicht MSwitchtoggle ON/OFF L:1025
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set
2018.05.20 18:14:28 5: SUB  main::MSwitch_Cmd
2018.05.20 18:14:28 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF|KU_Schranklicht-AbsCmd1 1251
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  cmds -> set KU_Schranklicht MSwitchtoggle ON/OFF 1257
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  device -> KU_Schranklicht-AbsCmd1 1258
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF 1263
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle:  set KU_Schranklicht MSwitchtoggle ON/OFF 1337
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 1:  set 1340
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 2:  KU_Schranklicht 1341
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 3:    1342
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 4:  ON/OFF 1343
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd0:  ON 1351
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd1:  OFF 1352
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd2:  state 1353
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd3:  ON 1354
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd4:  OFF 1355
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: cmd1 -> set KU_Schranklicht ON 1360
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: cmd2 -> set KU_Schranklicht OFF 1361
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: test reading state -> OFF 1367
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: neuer befehl -> set KU_Schranklicht ON 1383
2018.05.20 18:14:28 5: xiaomi_ku_licht errechneter befehl:  set KU_Schranklicht ON 1267
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1276
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1277
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set


Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:15:32 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:15:32 5: SUB  main::MSwitch_Notify
2018.05.20 18:15:32 5:   xiaomi_ku_licht state: click
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:15:32 5: Trigger: state  . L:4760
2018.05.20 18:15:32 5: Trigger: state  . L:4796
2018.05.20 18:15:32 5: Trigger: 0 L:4797
2018.05.20 18:15:32 5: Trigger: state . L:4798
2018.05.20 18:15:32 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:15:32 5: Trigger: click  . L:4760
2018.05.20 18:15:32 5: Trigger: click  . L:4796
2018.05.20 18:15:32 5: Trigger: 0 L:4797
2018.05.20 18:15:32 5: Trigger: click . L:4798
2018.05.20 18:15:32 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:15:32 5: Toggle -> 0 L:1670
2018.05.20 18:15:32 5:  set -> on L:1671
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -on-   L:1679
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht off  L:1684
2018.05.20 18:15:32 5: args
2018.05.20 18:15:32 5: SUB  main::MSwitch_Set
2018.05.20 18:15:32 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:32 5: args
2018.05.20 18:15:32 5: SUB  main::MSwitch_Set
2018.05.20 18:15:32 5: SUB  main::MSwitch_Cmd
2018.05.20 18:15:32 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: array12 -0- L:3526


Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:15:49 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:15:49 5: SUB  main::MSwitch_Notify
2018.05.20 18:15:49 5:   xiaomi_ku_licht state: click
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:15:49 5: Trigger: state  . L:4760
2018.05.20 18:15:49 5: Trigger: state  . L:4796
2018.05.20 18:15:49 5: Trigger: 0 L:4797
2018.05.20 18:15:49 5: Trigger: state . L:4798
2018.05.20 18:15:49 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:15:49 5: Trigger: click  . L:4760
2018.05.20 18:15:49 5: Trigger: click  . L:4796
2018.05.20 18:15:49 5: Trigger: 0 L:4797
2018.05.20 18:15:49 5: Trigger: click . L:4798
2018.05.20 18:15:49 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:15:49 5: Toggle -> 0 L:1670
2018.05.20 18:15:49 5:  set -> on L:1671
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -off-   L:1679
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht on  L:1684
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set
2018.05.20 18:15:49 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:49 3: xiaomi_ku_licht MSwitch_Set: aufruf MSwitch_checkcondition L:1016
2018.05.20 18:15:49 5: SUB  main::MSwitch_checkcondition
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_checkcondition: ->  3970
2018.05.20 18:15:49 3: xiaomi_ku_licht MSwitch_Set: Befehlsausfuehrung -> set KU_Schranklicht MSwitchtoggle ON/OFF L:1025
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set
2018.05.20 18:15:49 5: SUB  main::MSwitch_Cmd
2018.05.20 18:15:49 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF|KU_Schranklicht-AbsCmd1 1251
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  cmds -> set KU_Schranklicht MSwitchtoggle ON/OFF 1257
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  device -> KU_Schranklicht-AbsCmd1 1258
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF 1263
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle:  set KU_Schranklicht MSwitchtoggle ON/OFF 1337
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 1:  set 1340
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 2:  KU_Schranklicht 1341
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 3:    1342
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 4:  ON/OFF 1343
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd0:  ON 1351
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd1:  OFF 1352
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd2:  state 1353
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd3:  ON 1354
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd4:  OFF 1355
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: cmd1 -> set KU_Schranklicht ON 1360
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: cmd2 -> set KU_Schranklicht OFF 1361
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: test reading state -> ON 1367
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: neuer befehl -> set KU_Schranklicht OFF 1383
2018.05.20 18:15:49 5: xiaomi_ku_licht errechneter befehl:  set KU_Schranklicht OFF 1267
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1276
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1277
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 21:37:56
Schaffe es erst morgen früh mir das anzuschauen.

Dazu ist mir noch aufgefallen, das man das MSwitch WEBcmd also on/off nur "on" funktioniert und "off" ohne Funktion ist.

definitiv ein fehler, die felder müssen ausgeblendet werden im togglemode
siehe nächsten post !

Gruss thomas

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 20 Mai 2018, 21:53:40
Zitat von: mark79 am 20 Mai 2018, 20:43:04
Hallo Thomas,

zuerst mal danke für das Update. :)

Ich habe die neue Version heute ausprobiert, aber irgendwie bekomme ich das nicht so richtig hin. Kannst du bitte drüber schauen, habe ein Screenshot angehangen und dazu unten Logs.

Das Problem ist, das ich das Trigger Device, also z.B. ein Dash Button jeweils zwei mal betätigen muss, um das Device ein oder aus zu schalten.
Es sieht so aus, als ob das MSwitch Device zuerst seinen eigenen State schaltet, jedoch nicht das eigentliche Device wie ein LED z.B. "on"  schaltet.

Erst beim zweiten drücken des Dash Buttons schaltet es das LED Licht "on", jedoch ist dann der State von MSwitch auf "off". Als entgegen gesetzt.

Das ist ein bisschen kompliziert zu erklären, ich schreib einfach den Verlauf hier nieder, um das besser zu verstehen:

Ich habe ein Dash_Button im MSwitchToggle Modus zum schalten. Dazu ist die neue Funktion MSwitch_Mode: Toggle aktiviert.

Ausganssituation:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: off

Dann erfolgt ein Event durch drücken des Dash_Button und folendes passiert... (bis hier noch alles normal)
WZ_Bilderrahmen State: ON und duracell_dash_MSwitch State: on

Ab hier geht es dann los... drücke ich noch mal auf den Dash Button, sollte das WZ_Bilderrahmen Device auch aus gehen, tut es aber nicht.
Sondern nur das MSwitch Device geht aus:
WZ_Bilderrahmen State: ON und duracell_dash_MSwitch State: off

Drücke ich noch noch mal auf den Dash Button, dann passiert folgendes:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: on

Ein weiteres Event vom Dash_Button:
WZ_Bilderrahmen State: OFF und duracell_dash_MSwitch State: off

Ich habe das mit dem Dash Button und dem Xiaomi Taster ausprobiert, jeweils bei unterschiedlichen Sonoff Steckdosen, einmal mit ESPeasy (0/1) und Tasmota (ON/OFF).

Dazu ist mir noch aufgefallen, das man das MSwitch WEBcmd also on/off nur "on" funktioniert und "off" ohne Funktion ist.

Wäre super, wenn du Zeit hast dort noch mal drüber schauen könntest.. :)

Hier noch ein Log vom Xiaomi Taster:
Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:13:44 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:13:44 5: SUB  main::MSwitch_Notify
2018.05.20 18:13:44 5:   xiaomi_ku_licht state: click
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:13:44 5: Trigger: state  . L:4760
2018.05.20 18:13:44 5: Trigger: state  . L:4796
2018.05.20 18:13:44 5: Trigger: 0 L:4797
2018.05.20 18:13:44 5: Trigger: state . L:4798
2018.05.20 18:13:44 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:13:44 5: Trigger: click  . L:4760
2018.05.20 18:13:44 5: Trigger: click  . L:4796
2018.05.20 18:13:44 5: Trigger: 0 L:4797
2018.05.20 18:13:44 5: Trigger: click . L:4798
2018.05.20 18:13:44 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:13:44 5: Toggle -> 0 L:1670
2018.05.20 18:13:44 5:  set -> on L:1671
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -on-   L:1679
2018.05.20 18:13:44 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht off  L:1684
2018.05.20 18:13:44 5: args
2018.05.20 18:13:44 5: SUB  main::MSwitch_Set
2018.05.20 18:13:44 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:13:44 5: args
2018.05.20 18:13:44 5: SUB  main::MSwitch_Set
2018.05.20 18:13:44 5: SUB  main::MSwitch_Cmd
2018.05.20 18:13:44 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:13:44 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:13:44 5: MSwitch_makeCmdHash: array12 -0- L:3526

Fhem log mit Verbose 5 und Xiaomi_Taster click:
2018.05.20 18:14:27 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Motion SID: 158d0001d926ca Type: motion Status: motion
2018.05.20 18:14:28 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:14:28 5: SUB  main::MSwitch_Notify
2018.05.20 18:14:28 5:   xiaomi_ku_licht state: click
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:14:28 5: Trigger: state  . L:4760
2018.05.20 18:14:28 5: Trigger: state  . L:4796
2018.05.20 18:14:28 5: Trigger: 0 L:4797
2018.05.20 18:14:28 5: Trigger: state . L:4798
2018.05.20 18:14:28 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:14:28 5: Trigger: click  . L:4760
2018.05.20 18:14:28 5: Trigger: click  . L:4796
2018.05.20 18:14:28 5: Trigger: 0 L:4797
2018.05.20 18:14:28 5: Trigger: click . L:4798
2018.05.20 18:14:28 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:14:28 5: Toggle -> 0 L:1670
2018.05.20 18:14:28 5:  set -> on L:1671
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -off-   L:1679
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht on  L:1684
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set
2018.05.20 18:14:28 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:14:28 3: xiaomi_ku_licht MSwitch_Set: aufruf MSwitch_checkcondition L:1016
2018.05.20 18:14:28 5: SUB  main::MSwitch_checkcondition
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_checkcondition: ->  3970
2018.05.20 18:14:28 3: xiaomi_ku_licht MSwitch_Set: Befehlsausfuehrung -> set KU_Schranklicht MSwitchtoggle ON/OFF L:1025
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set
2018.05.20 18:14:28 5: SUB  main::MSwitch_Cmd
2018.05.20 18:14:28 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:14:28 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:14:28 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF|KU_Schranklicht-AbsCmd1 1251
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  cmds -> set KU_Schranklicht MSwitchtoggle ON/OFF 1257
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  device -> KU_Schranklicht-AbsCmd1 1258
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF 1263
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle:  set KU_Schranklicht MSwitchtoggle ON/OFF 1337
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 1:  set 1340
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 2:  KU_Schranklicht 1341
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 3:    1342
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle 4:  ON/OFF 1343
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd0:  ON 1351
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd1:  OFF 1352
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd2:  state 1353
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd3:  ON 1354
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle cmd4:  OFF 1355
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: cmd1 -> set KU_Schranklicht ON 1360
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: cmd2 -> set KU_Schranklicht OFF 1361
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: test reading state -> OFF 1367
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_toggle: neuer befehl -> set KU_Schranklicht ON 1383
2018.05.20 18:14:28 5: xiaomi_ku_licht errechneter befehl:  set KU_Schranklicht ON 1267
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1276
2018.05.20 18:14:28 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1277
2018.05.20 18:14:28 5: args
2018.05.20 18:14:28 5: SUB  main::MSwitch_Set


Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:15:32 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:15:32 5: SUB  main::MSwitch_Notify
2018.05.20 18:15:32 5:   xiaomi_ku_licht state: click
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:15:32 5: Trigger: state  . L:4760
2018.05.20 18:15:32 5: Trigger: state  . L:4796
2018.05.20 18:15:32 5: Trigger: 0 L:4797
2018.05.20 18:15:32 5: Trigger: state . L:4798
2018.05.20 18:15:32 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:15:32 5: Trigger: click  . L:4760
2018.05.20 18:15:32 5: Trigger: click  . L:4796
2018.05.20 18:15:32 5: Trigger: 0 L:4797
2018.05.20 18:15:32 5: Trigger: click . L:4798
2018.05.20 18:15:32 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:15:32 5: Toggle -> 0 L:1670
2018.05.20 18:15:32 5:  set -> on L:1671
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -on-   L:1679
2018.05.20 18:15:32 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht off  L:1684
2018.05.20 18:15:32 5: args
2018.05.20 18:15:32 5: SUB  main::MSwitch_Set
2018.05.20 18:15:32 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:32 5: args
2018.05.20 18:15:32 5: SUB  main::MSwitch_Set
2018.05.20 18:15:32 5: SUB  main::MSwitch_Cmd
2018.05.20 18:15:32 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:32 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:32 5: MSwitch_makeCmdHash: array12 -0- L:3526


Fhem log mit Verbose 5 und Xiaomi_Taster click:

2018.05.20 18:15:49 3: Xiaomi_GW: DEV_Read> Name: Xiaomi_Taster SID: 158d00016d7946 Type: switch Status: click
2018.05.20 18:15:49 5: SUB  main::MSwitch_Notify
2018.05.20 18:15:49 5:   xiaomi_ku_licht state: click
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggeron -> state:click  L:1615
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggeroff -> no_trigger  L:1616
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggercmdon -> no_trigger  L:1617
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: triggercmdoff -> no_trigger  L:1618
2018.05.20 18:15:49 5: Trigger: state  . L:4760
2018.05.20 18:15:49 5: Trigger: state  . L:4796
2018.05.20 18:15:49 5: Trigger: 0 L:4797
2018.05.20 18:15:49 5: Trigger: state . L:4798
2018.05.20 18:15:49 5: Trigger-state-state-: wahr . L:4805
2018.05.20 18:15:49 5: Trigger: click  . L:4760
2018.05.20 18:15:49 5: Trigger: click  . L:4796
2018.05.20 18:15:49 5: Trigger: 0 L:4797
2018.05.20 18:15:49 5: Trigger: click . L:4798
2018.05.20 18:15:49 5: Trigger-click-click-: wahr . L:4805
2018.05.20 18:15:49 5: Toggle -> 0 L:1670
2018.05.20 18:15:49 5:  set -> on L:1671
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode ->schalte MSwitch device  L:1676
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode -> statetest -> -off-   L:1679
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Notify: Togglemode-cmd -> set xiaomi_ku_licht on  L:1684
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set
2018.05.20 18:15:49 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:49 3: xiaomi_ku_licht MSwitch_Set: aufruf MSwitch_checkcondition L:1016
2018.05.20 18:15:49 5: SUB  main::MSwitch_checkcondition
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_checkcondition: ->  3970
2018.05.20 18:15:49 3: xiaomi_ku_licht MSwitch_Set: Befehlsausfuehrung -> set KU_Schranklicht MSwitchtoggle ON/OFF L:1025
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set
2018.05.20 18:15:49 5: SUB  main::MSwitch_Cmd
2018.05.20 18:15:49 5: SUB  main::MSwitch_makeCmdHash
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1,MSwitchtoggle,no_action,ON/OFF,,delay1,delay1,000000,000000,,,0,0 L:3469
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1 MSwitchtoggle no_action ON/OFF  delay1 delay1 000000 000000   0 0 L:3475
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: KU_Schranklicht-AbsCmd1_delayatonorg ->  000000 L:3485
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3488
2018.05.20 18:15:49 5: MSwitch_makeCmdHash:  L:3501
2018.05.20 18:15:49 5: MSwitch_makeCmdHash: array12 -0- L:3526
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF|KU_Schranklicht-AbsCmd1 1251
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  cmds -> set KU_Schranklicht MSwitchtoggle ON/OFF 1257
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  device -> KU_Schranklicht-AbsCmd1 1258
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Set:  set KU_Schranklicht MSwitchtoggle ON/OFF 1263
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle:  set KU_Schranklicht MSwitchtoggle ON/OFF 1337
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 1:  set 1340
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 2:  KU_Schranklicht 1341
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 3:    1342
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle 4:  ON/OFF 1343
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd0:  ON 1351
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd1:  OFF 1352
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd2:  state 1353
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd3:  ON 1354
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle cmd4:  OFF 1355
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: cmd1 -> set KU_Schranklicht ON 1360
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: cmd2 -> set KU_Schranklicht OFF 1361
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: test reading state -> ON 1367
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_toggle: neuer befehl -> set KU_Schranklicht OFF 1383
2018.05.20 18:15:49 5: xiaomi_ku_licht errechneter befehl:  set KU_Schranklicht OFF 1267
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1276
2018.05.20 18:15:49 5: xiaomi_ku_licht MSwitch_Exec_Notif:Repeater 0 1277
2018.05.20 18:15:49 5: args
2018.05.20 18:15:49 5: SUB  main::MSwitch_Set


Viele Grüße
Mark

doch nochmal drübergeschaut .

im togglemode musst du den off zweig in den deviceactions auc belegen. entweder auch mit einem MSwitchtoggle ( im grunde dasselbe ) oder du belegst den onzweig mit 'on' und den offzweig mit 'off'.

im togglemode führt er , wenn er off schaltet , den offzweig aus. wenn der nicht belegt ist passiert nichts.

gruss thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 20 Mai 2018, 22:53:04
Danke, das war die Lösung. :) Jetzt funktionieren die beiden Taster und auch das WEB MSwitch on/off korrekt.

Bin davon ausgegangen, man müsste das auch mit "MSwitchToggle" in den "device actions" umsetzen, da lag der Fehler... Aber nun weiß ich bescheid.

Werde mich dann mal ran machen und ein paar Devices ersetzen... danke dir nochmals, das macht einiges einfacher! :)


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 21 Mai 2018, 08:21:15
Update auf V1.44

Fehler in der Webansicht behoben ( Auswahl der Eventfelder in den 'trigger details :' war Fehlerhaft )

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 21 Mai 2018, 12:16:54
Da ich hier im Forum fast alles Mitlese und mir irgendwie angewöhnt habe, zu versuchen, alle aufkommenden Fragen bezüglich "Umsetzung Dieses und Jenes" für mich versuche über MSwitch zu lösen - da ich schon seit einiger Zeit ausschliesslich MSwitch nutze - werde ich im Wiki einen neuen Punkt "Tipps und Tricks" anhängen , in dem ich Lösungansätze, Möglichkeiten , Tricks, etc. mehr oder weniger zusammenhanglos ,stichpunktartig hinterlege. Lohnt sich bestimmt , ab und an mal reinzuschauen.

https://wiki.fhem.de/wiki/MSwitch.pm#Tipps.2C_Tricks.2C_Kurzbeispiele (https://wiki.fhem.de/wiki/MSwitch.pm#Tipps.2C_Tricks.2C_Kurzbeispiele)

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 23 Mai 2018, 05:23:00
mit kommendem Update ( wohl erst am WE ) werden in den Schaltzeit-Angaben folgende Konstruktionen möglich sein:

[?21:00-22:00|123]
löst den Schaltbefehl zu einem zufälligen Zeitpunkt zwischen 21 und22 Uhr aus (Mo,Di,Mi).

[00:00:10*21:00-22:00|123]
löst den Schaltbefehl zwischen 21 Uhr und 22 Uhr alle 10 Minuten aus

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 23 Mai 2018, 19:35:15
Im Anhang eine Testversion , bei der das zufällige schalten in einem definierten Zeitraum möglich sein sollte. Die Intervallschaltoption ist hier noch nicht integriert.

Syntax:[?19:05-19:07|123]

Info: Der reale Schaltzeitpunkt wird für den definierten Zeitraum nur einmal - bei modify - berechnet und für den laufenden Tag gesetzt . Auch bei einem erneuten 'Modify' bleibt dieser SchaltZEITPUNKT dann erhalten , wenn der Zeitraum nicht geändert wurde . Dieser wird dann erst wieder am Folgetag um 00:01 neu berechnet und gesetzt.

der reale Zeitpunkt ist in einem 'list DEVICE' zu sehen ( unter helper/randomtimer/(<definierter zeitraum>) ).

Internals:
   CFGFN     
   NAME       timertest
   NEXT_TIMERCHECK 2018-05-24 00:00:01
   NEXT_TIMEREVENT 2018-05-23 20:40:00
   NOTIFYDEV  no_trigger
   NR         208
   NTFY_ORDER 45-timertest
   STATE      on
   TYPE       MSwitch
   Version    1.44
   OLDREADINGS:
   READINGS:
     2018-05-23 18:39:12   Next_Time_Event 1527100800.50871-1
     2018-05-23 18:39:12   Trigger_device  no_trigger
     2018-05-22 17:39:24   Trigger_log     off
     2018-05-22 23:00:00   state           on
   helper:
     events:
       no_trigger:
         no_trigger on
     randomtimer:
       20:01-21:16 21:11
       20:02-21:16 20:40
     timer:
       HASH(0x1adb278) 1527100800.50871
.
.
.


falls es jemand peobiert, wäre ich über eine Info , ob es richtig funktioniert dankbar.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 23 Mai 2018, 22:19:06
Hallo Thomas,

wo genau aktiviert man das "zufällige schalten" und wofür könnte man das verwenden?
Kann man es z.B. dafür verwenden, wenn man nicht anwesend ist, das Abends z.B. das Licht zufällig geschaltet wird? Zur Abschreckung von Einbrechern z.B.

Ich habe es über ein neues Device (random_wz_bilderrahmen), über die "on condition" und "off condition" ausprobiert: [?19:05-19:07|123] und auch alles Mögliche versucht zu aktivieren (1).
Aber ich krieg es nicht hin... Ein attr dazu finde ich auch nicht. Die MSwitch Testversion habe ich eingebunden und wird auch angezeigt.


Was mir aber aufgefallen ist, das beim vorgestrigen Wohnzimmer Device unter "trigger details" und "toggle Wohnzimmer_MSwitch + execute commands" der DashButton verschwunden ist. Eigentlich sollte dort "afri_cola:short" stehen. Siehe Screenshot 2.
Das schalten geht aber trotzdem noch und ein anderer DashButton kommt dem auch nicht in die Quere.
Das Dashbutton Event wird nur nicht mehr in der Dropdown Liste angezeigt. Es steht nur noch "no_trigger" und "state:stopped" zur Auswahl. Screenshot 1
Ein neu anlernen klappt auch nicht, es kommen keine neue Trigger Devices hinzu.

Der MSwitch_Mode Toggle funktioniert übrigens prima, habe ein MSwitch Wohnzimmer Device mit Twilight umgesetzt, das nur ab einer bestimmten Dunkelheit und Tagen die Beleuchtung spezifisch schaltet.

Für die Küche muss ich das noch umsetzten.. nur da fehlt mir derzeit die Zeit und Ruhe dafür.
Dort habe ich mehrere unterschiedliche Trigger Devices und ich frage mich schon die ganze Zeit, ob das mit Trigger Device "Global" und MSwitch_Mode Toggle so funktioniert. Aber versuch macht klug. :)


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Mai 2018, 05:21:30
hi mark

ZitatIch habe es über ein neues Device (random_wz_bilderrahmen), über die "on condition" und "off condition" ausprobiert: [?19:05-19:07|123] und auch alles Mögliche versucht zu aktivieren (1).
Aber ich krieg es nicht hin... Ein attr dazu finde ich auch nicht. Die MSwitch Testversion habe ich eingebunden und wird auch angezeigt.

du musst das in den schaltzeiten eintragen : trigger device/time: - switch MSwitch on + execute 'on' commands at : ...

ZitatWas mir aber aufgefallen ist, das beim vorgestrigen Wohnzimmer Device unter "trigger details" und "toggle Wohnzimmer_MSwitch + execute commands" der DashButton verschwunden ist. Eigentlich sollte dort "afri_cola:short" stehen. Siehe Screenshot 2.
Das schalten geht aber trotzdem noch und ein anderer DashButton kommt dem auch nicht in die Quere.
Das Dashbutton Event wird nur nicht mehr in der Dropdown Liste angezeigt. Es steht nur noch "no_trigger" und "state:stopped" zur Auswahl. Screenshot 1
Ein neu anlernen klappt auch nicht, es kommen keine neue Trigger Devices hinzu.

ja, der fehler ist mir auch aufgefallen, ich muss schauen , woher das kommt. drück bitte einfach mal auf 'clear saved events" , dann dollte e wieder da sein. Da ich das nicht bewusst reproduzieren kann , muss ich erstmal abwarten , bis das bei mir wieder auftritt .

habe das Problem behoben (hoffe ich - schlecht reproduzierbar, das es nur unter ganz bestimmte umständen eintritt), stelle ich heute abend noch in das GIT

thx und gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Mai 2018, 15:49:18
Hallo Thomas,

zurück aus meinem Kurzurlaub wollte ich gleich nochmal mit deinem Modul was spielen. Ist echt super, aber ich scheitere anscheinend wieder an einer kleinigkeit. Ich habe es hinbekommen, dass über dein Modul meine Lampe im Flur mit dem Bewegungsmelder geschaltet wird, das soll aber nur abends passieren. Soweit ich es verstanden habe könnte ich es wie folgt machen:

Im device action bei on codition: einfach z.B. [18:00-06:00] schreiben.

Das wäre mir aber zu einfach ::) .

Ich kann über meine Tablet UI die 2 Zeiten (von/bis) einstellen. Diese 2 Zeiten werden im Dummy Flur_Lampe_Dummy in den Readings Licht_an & Licht_aus abgelegt. Wie kann ich das einbinden?

Gruß Torsten


EDIT:

Eine Zusatzfrage:

Der Aktor ist ein Dimmer, wie bekomme ich es hin, dass das Licht bei Schalten über motion z.B. nur mit 30% angeht?

Momentan habe ich bei device action: MSwitch on cmd: Set on-for-timer 30 stehen
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Mai 2018, 17:34:25
Ich habe da direkt nochwas. Der Bewegungsmelder ist in einem Taster Homematic HM-Sen-MDIR-WM55 integriert. Den Sensor habe ich als Trigger Device Flur_Taster2_Motion genommen, der Funktioniert problemlos. Der andere Taster im Flur ist ein HM-PB-2-WM55 den konnte ich problemlos einbinden. Den 2. Taster ( wo der Sensor integriert ist) aber aus irgendeinem Grund nicht.

Als Trigger Device habe ich Flur_Taster2 ausgewählt, aber bei trigger details bekomme ich im Pulldown nur no_trigger & battery:ok aber kein state.

Beim Taster 1 wird mir state:Flur_Taster1_01 Short & Flur_Taster1_02 Short angezeigt.

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 06:29:41
Ho Torsten,

ZitatSoweit ich es verstanden habe könnte ich es wie folgt machen:

Im device action bei on codition: einfach z.B. [18:00-06:00] schreiben.

du kannst das entweder bei den 'Trigger condition: ' eingeben ( genau wie geschrieben ) , damit wird der gesamte Trigger nur in dieser Zeit 'abgearbeitet, oder du kannst es wie von dir gechrieben in den 'device actions ,on-off conditions' angeben, dann wird der Trigger zwar abgearbeitet, aber dieser Befehl nur in angegebenen Zeiten geschaltet.

ZitatIch kann über meine Tablet UI die 2 Zeiten (von/bis) einstellen. Diese 2 Zeiten werden im Dummy Flur_Lampe_Dummy in den Readings Licht_an & Licht_aus abgelegt. Wie kann ich das einbinden?

geht in dieser version leider nicht so einfach , müsste dann über freecmd gemacht werden. Ich werde für die nächste version( noch am WE ) eine jkleine änderung machen , sa dass er in den conditions eine solche syntax erkennt :

[[dummy1:state]-[dummy2:state]]

gruss Byte

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 06:31:19
Zitat von: Torsten_MG am 25 Mai 2018, 17:34:25
Ich habe da direkt nochwas. Der Bewegungsmelder ist in einem Taster Homematic HM-Sen-MDIR-WM55 integriert. Den Sensor habe ich als Trigger Device Flur_Taster2_Motion genommen, der Funktioniert problemlos. Der andere Taster im Flur ist ein HM-PB-2-WM55 den konnte ich problemlos einbinden. Den 2. Taster ( wo der Sensor integriert ist) aber aus irgendeinem Grund nicht.

Als Trigger Device habe ich Flur_Taster2 ausgewählt, aber bei trigger details bekomme ich im Pulldown nur no_trigger & battery:ok aber kein state.

Beim Taster 1 wird mir state:Flur_Taster1_01 Short & Flur_Taster1_02 Short angezeigt.

schau doch bitte mal im eventmonitor, was für ein event generiert wird, wenn der schalter sich meldet.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 07:56:03
Zitat von: Byte09 am 26 Mai 2018, 06:31:19
schau doch bitte mal im eventmonitor, was für ein event generiert wird, wenn der schalter sich meldet.

gruss Byte09

folgendes wird mir im Eventmonitor bei betätigung der beiden Taster des Schalters2 angezeigt

2018-05-26 07:46:33 CUL_HM Flur_Taster2_01 Short 1_27 (to broadcast)
2018-05-26 07:46:33 CUL_HM Flur_Taster2_01 trigger: Short_27
2018-05-26 07:46:33 CUL_HM Flur_Taster2_01 trigger_cnt: 27


2018-05-26 07:47:15 CUL_HM Flur_Taster2_02 Short 1_33 (to broadcast)
2018-05-26 07:47:15 CUL_HM Flur_Taster2_02 trigger: Short_33
2018-05-26 07:47:15 CUL_HM Flur_Taster2_02 trigger_cnt: 33
2018-05-26 07:47:21 CUL_HM Flur_Taster2 battery: ok


beim funktionierenden Schalter sieht es so aus
2018-05-26 07:53:13 CUL_HM Flur_Taster1 battery: ok
2018-05-26 07:53:13 CUL_HM Flur_Taster1 Flur_Taster1_01 Short
2018-05-26 07:53:13 CUL_HM Flur_Taster1_01 Short 1_12 (to broadcast)
2018-05-26 07:53:13 CUL_HM Flur_Taster1_01 trigger: Short_12
2018-05-26 07:53:13 CUL_HM Flur_Taster1_01 trigger_cnt: 12


2018-05-26 07:54:17 CUL_HM Flur_Taster1 battery: ok
2018-05-26 07:54:17 CUL_HM Flur_Taster1 Flur_Taster1_02 Short
2018-05-26 07:54:17 CUL_HM Flur_Taster1_02 Short 1_21 (to broadcast)
2018-05-26 07:54:17 CUL_HM Flur_Taster1_02 trigger: Short_21
2018-05-26 07:54:17 CUL_HM Flur_Taster1_02 trigger_cnt: 21
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 08:08:01
bei dem taster wo es nicht geht kommen ja wieder nur diese hochzählenden events, die niemals gleich sind. da der andere ja passende events liefert muss es ja irgendwie an den einstellungen des tasters liegen ?! leider habe ich einen solchen taster nicht .

im zweilfe gib doch bei 'add event' mal einen stern (trigger_cnt.*) ein und dann auf 'add event' klicke. dann hast du diesen wildcard in der eventauswahlliste und er triggert auf dieses Event. sollte auch gehen, das er dieses event ja bei jedem druck liefert

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 08:56:15
Zitat von: Byte09 am 26 Mai 2018, 08:08:01
...

im zweilfe gib doch bei 'add event' mal einen stern (trigger_cnt.*) ein und dann auf 'add event' klicke. dann hast du diesen wildcard in der eventauswahlliste und er triggert auf dieses Event. sollte auch gehen, das er dieses event ja bei jedem druck liefert

gruss Byte09

Funktioniert leide nicht

Edit:

Beim funktionierenden Schalter habe ich ja bei Flur_Taster1 (a: t:CUL_HM) ausgewählt und bei trigger details dann state:Flur_Taster1_01 Short (für on) bzw. state:Flur_Taster1_02 Short (für off) ausgewählt.

CUL_HM Flur_Taster1 Flur_Taster1_01 Short
CUL_HM Flur_Taster1 Flur_Taster1_02 Short


Beim anderen Schalter habe ich dann Flur_Taster2 (a: t:CUL_HM) ausgewählt. Aber im Eventmonitor steht ja dieser Taster nicht sondern

CUL_HM Flur_Taster2_01 Short 1_27 (to broadcast)
CUL_HM Flur_Taster2_01 trigger: Short_27
CUL_HM Flur_Taster2_01 trigger_cnt: 27


CUL_HM Flur_Taster2_02 Short 1_33 (to broadcast)
CUL_HM Flur_Taster2_02 trigger: Short_33
CUL_HM Flur_Taster2_02 trigger_cnt: 33
CUL_HM Flur_Taster2 battery: ok
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 09:24:33
Zitat von: Torsten_MG am 26 Mai 2018, 08:56:15
Funktioniert leide nicht

ich stelle das gerade mal mit einem dummy nach , melde mich dann.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 09:26:51
Zitat von: Byte09 am 26 Mai 2018, 09:24:33
ich stelle das gerade mal mit einem dummy nach , melde mich dann.

gruss Byte09

Siehe Edit ein Post drüber
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 10:06:41
Zitat von: Torsten_MG am 26 Mai 2018, 09:26:51
Siehe Edit ein Post drüber

ich habe mal einen Dummy angelegt, der mir folgende Events liefert:
2018-05-26 10:02:53 dummy eventtest on
2018-05-26 10:02:53 dummy eventtest triggercount: 41
2018-05-26 10:02:53 dummy eventtest trigger: Short_ 41


als zu triggerndes event habe ich mit 'add Event' folgendes Event angelegt:
trigger:Short* ... bitte das Wildcart am ende beachten.

MSwitch schaltet nun bei jedem Event, was folgenden Inhalt hat
trigger:Short<egal_was_hier_steht>

geht einwandfrei .

gruss Byte09


zum nachstellen
raw des dummys:
defmod eventtest dummy
attr eventtest room test
attr eventtest userReadings triggercount:* {ReadingsVal("$NAME","triggercount",0)+1;;;;},\
trigger:* { "Short_ ".ReadingsVal("$NAME","triggercount",0)}
attr eventtest webCmd on:off

setstate eventtest off
setstate eventtest 2018-05-26 10:08:04 state off
setstate eventtest 2018-05-26 10:08:04 trigger Short_ 54
setstate eventtest 2018-05-26 10:08:04 triggercount 54


configfile des MSwitch
#S .Device_Affected -> no_device
#S .Device_Affected_Details -> undef
#S .Device_Events -> trigger:short*|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> trigger:short*
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> undef
#S Trigger_device -> eventtest
#S Trigger_log -> off
#S last_event -> undef
#S state -> off
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Help -> 0
#A MSwitch_Mode -> Toggle
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Webcmds -> 0
#A room -> test
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Debug -> 0



Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 10:20:56
danke für deine Bemühungen @Thomas,

ich habe es jetzt so gemacht wie auf dem Foto


aber das Problem was ich habe liegt nicht daran, dass Problem ist, ich müßte bei Trigger device: Flur_Taster1_01 mit deinem Vorschlag umsetzen für Einschalten und einen Trigger device: Flur_Taster1_02 für das Ausschalten einsetzen, da der Trigger ja auf diese beiden liegt und nicht auf Flur_Taster2. Also müßte ich ja dann 2 MSwitch machen und das ist nicht praktikabel.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 10:32:33
Zitat von: Torsten_MG am 26 Mai 2018, 10:20:56
danke für deine Bemühungen @Thomas,

ich habe es jetzt so gemacht wie auf dem Foto


aber das Problem was ich habe liegt nicht daran, dass Problem ist, ich müßte bei Trigger device: Flur_Taster1_01 mit deinem Vorschlag umsetzen für Einschalten und einen Trigger device: Flur_Taster1_02 für das Ausschalten einsetzen, da der Trigger ja auf diese beiden liegt und nicht auf Flur_Taster2. Also müßte ich ja dann 2 MSwitch machen und das ist nicht praktikabel.

das geht auch über ein MSwitch Device,da müsstest du aber GLOBAL triggern, da du auf 2 Geräte triggern willst . Ich mache dir dazu nochmal ein Beispiel und poste es . Das sprengt hier den Rahmen es so zu erklären. Bei interesse kannst du mich auch gerna mal anrufen, würde dir die Nummer dann privat schicken.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 10:40:50
taster 1 (dummy)
defmod eventtest dummy
attr eventtest room test
attr eventtest userReadings triggercount:* {ReadingsVal("$NAME","triggercount",0)+1;;;;},\
trigger:* { "Short_ ".ReadingsVal("$NAME","triggercount",0)}
attr eventtest webCmd on

setstate eventtest on
setstate eventtest 2018-05-26 10:38:24 state on
setstate eventtest 2018-05-26 10:38:24 trigger Short_ 93
setstate eventtest 2018-05-26 10:38:24 triggercount 93


taster2 (dummy)
defmod eventtest1 dummy
attr eventtest1 room test
attr eventtest1 userReadings triggercount:* {ReadingsVal("$NAME","triggercount",0)+1;;;;},\
trigger:* { "Short_ ".ReadingsVal("$NAME","triggercount",0)}
attr eventtest1 webCmd on

setstate eventtest1 on
setstate eventtest1 2018-05-26 10:38:24 state on
setstate eventtest1 2018-05-26 10:38:24 trigger Short_ 9
setstate eventtest1 2018-05-26 10:38:24 triggercount 9


configfile MSwitch ( die dummys müssen erst angelegt werden )
#S .Device_Affected -> no_device
#S .Device_Affected_Details -> undef
#S .Device_Events -> eventtest:trigger:short*|eventtest1:trigger:short*|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> eventtest,eventtest1
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> eventtest1:trigger:short*
#S .Trigger_on -> eventtest:trigger:short*
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> undef
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> eventtest1:trigger:Short_
#S state -> off
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Help -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Webcmds -> 0
#A room -> test
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Debug -> 0


nach de speichern des configfiles musst du einmal auf 'modify trigger device' drücken , da das Modul intern den Mode wechseln muss, das tut er nicht automatisch beim einspielen des files.


gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 14:01:13
Zu den dummys habe ich noch eine Frage:

in den Bereichen vom ReadingsVal habe ich für $Name Flur_Taster2_01 bzw. Flur_Taster2_02 eingesetzt. Was muß ich bei triggercount eingeben? Weil weder triggercount, trigger_cnt noch trigger funktioniert.

Hier mal die list von Flur_Taster2_01

Internals:
   DEF        57C3AE01
   NAME       Flur_Taster2_01
   NOTIFYDEV  global
   NR         60
   NTFY_ORDER 50-Flur_Taster2_01
   STATE      Short 1_60 (to broadcast)
   TYPE       CUL_HM
   chanNo     01
   device     Flur_Taster2
   READINGS:
     2018-05-25 16:50:00   motion          off
     2018-05-26 13:58:08   state           Short 1_60 (to broadcast)
     2018-05-26 13:58:08   trigger         Short_60
     2018-05-26 13:58:08   trigger_cnt     60
   helper:
     BNO        60
     BNOCNT     1
     regLst     ,1,4p
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     role:
       chn        1
     tmpl:
Attributes:
   model      HM-Sen-MDIR-WM55
   peerIDs    00000000,
   room       Flur->Licht
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 14:18:26
Zitat von: Torsten_MG am 26 Mai 2018, 14:01:13
Zu den dummys habe ich noch eine Frage:

in den Bereichen vom ReadingsVal habe ich für $Name Flur_Taster2_01 bzw. Flur_Taster2_02 eingesetzt. Was muß ich bei triggercount eingeben? Weil weder triggercount, trigger_cnt noch trigger funktioniert.

Hier mal die list von Flur_Taster2_01

Internals:
   DEF        57C3AE01
   NAME       Flur_Taster2_01
   NOTIFYDEV  global
   NR         60
   NTFY_ORDER 50-Flur_Taster2_01
   STATE      Short 1_60 (to broadcast)
   TYPE       CUL_HM
   chanNo     01
   device     Flur_Taster2
   READINGS:
     2018-05-25 16:50:00   motion          off
     2018-05-26 13:58:08   state           Short 1_60 (to broadcast)
     2018-05-26 13:58:08   trigger         Short_60
     2018-05-26 13:58:08   trigger_cnt     60
   helper:
     BNO        60
     BNOCNT     1
     regLst     ,1,4p
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     role:
       chn        1
     tmpl:
Attributes:
   model      HM-Sen-MDIR-WM55
   peerIDs    00000000,
   room       Flur->Licht


die dummys hatte ich nur angelegt , da ich keinen entsprechenden taster habe, anstatt der Taster.

du kannst doch direkt auf die beiden taster ( die beiden namen der dummys gegen die beiden namen der taster in 'Trigger Device Global Whitelist: ' ändern ) triggern .

grundsätzlich: $NAME musst du gar nicht ändern , das wird automatisch von fhem ersetzt gegen den Namen ders Gerätes in dem (in diesem fall) das Userreading steht.

ggf. kann ich dir aber gerade auch nur nicht folgen ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 14:32:08
Ok, jetzt ist mir ein Licht aufgegangen  ::) Nicht nur sprichwörtlich.

Habe es jetzt so umgesetzt und hinbekommen:

Trigger device: GLOBAL
Trigger Device Global Whitelist Flur_Taster2_01,Flur_Taster2_02

Bei triggerdetails habe ich von Hand Flur_Taster2_01:trigger:Short* und Flur_Taster2_02:trigger:Short* hinzugefügt und für on und off ausgewählt.

FUNKTIONIERT!!

TOP TOOL!!


EDIT:

Bin jetzt nurnoch gespannt ob du das auch hinbekommst

Zitat von: Byte09 am 26 Mai 2018, 06:29:41
...
geht in dieser version leider nicht so einfach , müsste dann über freecmd gemacht werden. Ich werde für die nächste version( noch am WE ) eine jkleine änderung machen , sa dass er in den conditions eine solche syntax erkennt :

[[dummy1:state]-[dummy2:state]]

gruss Byte

Das wäre echt super! Aber keine Kektik ;)


EDIT2:

Zitat von: Torsten_MG am 25 Mai 2018, 15:49:18
...
Eine Zusatzfrage:

Der Aktor ist ein Dimmer, wie bekomme ich es hin, dass das Licht bei Schalten über motion z.B. nur mit 30% angeht?

Momentan habe ich bei device action: MSwitch on cmd: Set on-for-timer 30 stehen

Darauf bist du bisher garnicht eingegangen, dann gehe ich mal davon aus, dass dafür keine Möglichkeit gibt. Es ist nämlich so, dass ich gerne das Licht gedimmt für 30sek. eingeschaltet haben möchte, wenn der Bewegungsmelder abends/nachts schaltet
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 14:47:44
Zitat von: Torsten_MG am 26 Mai 2018, 14:32:08

Bin jetzt nurnoch gespannt ob du das auch hinbekommst

Das wäre echt super! Aber keine Kektik ;)

.
.
.. Es ist nämlich so, dass ich gerne das Licht gedimmt für 30sek. eingeschaltet haben möchte, wenn der Bewegungsmelder abends/nachts schaltet

ich habe es schon hinbekommen, läuft bei mir und ist in der kommenden version vorhanden.  ;)

zum zweiten punkt schreibe ich dir nachher was, bin jetzt erstmal kindertaxi. geht aber auch

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 26 Mai 2018, 15:00:01
Hat keine Eile!!

Sitze auch im Garten, genieße die Sonne und spiele etwas nebenbei mit Fhem  ;D . Gleich kommen noch Gäste, dann wird lecker gegrillt  8)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 26 Mai 2018, 17:34:14
Zitat von: Byte09 am 26 Mai 2018, 14:47:44
ich habe es schon hinbekommen, läuft bei mir und ist in der kommenden version vorhanden.  ;)

zum zweiten punkt schreibe ich dir nachher was, bin jetzt erstmal kindertaxi. geht aber auch

gruss Byte09

im grunde musst du hier 2 befehle ausführen lassen , beide im on- zweig , da der dimmer es nicht unterstützt ( on for timer und einen pct wert gleichzeitig zu setzen zu setzen  - glaube ich .

anbei einfach ein bild mit der config.

gruss thomas
Titel: kommendes Update auf V 1.5
Beitrag von: Byte09 am 27 Mai 2018, 07:18:49
das kommende Update auf V1.5 wird folgende Änderungen/Neuerungen beinhalten.

der Code wurde vollkommen überarbeitet, diverse Routinen von Grund auf neu geschrieben.

neue Attribute:

MSwitch_Condition_Time (0,1)
- bewirkt die überprüfung der 'Trigger condition' auch für zeitgesteuertes Schalten . 0 entspricht dem bisherigen Verhalten

MSwitch_RandomTime (00:00:01-00:00:10)
- bewirkt die berechnung einer Zufallszeit zwischen 1 und 10 Sekunden vor JEDER Ausführung von Delays. Auf diese kann durch Angabe von '[random]' im Delayfeld zugegriffen werden. Delays werden entsprechend zufällig mit einer Verzögerung zwischen 0 und 10 Sekunden ausgeführt (je nach belegung des Attributes). Leeres oder nicht vorhandenes Attibut entspricht dem bisherigem verhalten.

MSwitch_RandomNumber ( 0 - 100)
- bewirkt die Berechnung einer Zufallszahl  in angegebenem Rahmen vor JEDER Befehlsausführung . Auf diese kann in den 'conditions' zugegriffen werden , und es besteht so die Möglichkeit einen Befehl nur mit einer bestimmten Wahrscheinlichkeit ausführen zu lassen (weitere Erklärung folgt). Leeres oder nicht vorhandenes Attibut entspricht dem bisherigem verhalten.

MSwitch_Conditions (ggf. erst ab V1.51)
- bietet die Möglichkeit , häufig genutzte Conditions in einer Liste zu hinterlegen, um diese in den Conditions Feldern über ein Kürzel aufzurufen, genaue Syntax folgt.

neue (zusätzliche) Syntax in den Schaltzeiten:

[?20:00-21:00|1]
der Schaltzeitpunkt wird zufällig gewählt , in diesem Fall Montags zwischen 20:00 Uhr und 21:00 Uhr

[00:10*20:00-21:00]
der Schaltbefehl wird zwischen 20 Uhr und 21 Uhr alle 10 Minuten ausgeführt


neu in Conditions

in den conditions ( in diesem Falll für angegebene Schaltzeiten ) kann jetzt auf 'fremde' Readings zugegriffen werden.
folgende Syntax z.B bewirkt , das der Befehl nur in Zeitraum ausgeführt wird, der in den states entsprechender Dummys etc. hinterlegt ist. Dabei muss das Format in folgender Form vorliegen HH:MM.
Syntax [[dummy1:state]-[dummy2:state]]

diverse Fehler behoben

eine Kombination dieser neuen Optionen ergiebt die komfortable Möglichkeit einer Anwesenheitssimulation in einem MSwitch-Device für alle beteiligten Geräte.

gruss Byte09

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 08:47:57
Ich bin begeistert  ;D

Dein Modul ist super, pass nur auf, daß es nicht zur Eierlegendenwollmilchsau wird, dann wird es zu unübersichtlich!

Durch dein Modul ist es bei mir jetzt etwas übersichtlicher geworden.

Um nochmal auf gestern mit den Dummsy zurück zu kommen. Da du geschrieben hattest:
Zitat...configfile MSwitch ( die dummys müssen erst angelegt werden )...

Habe ich gedacht, ich brauche die!

Aber es läuft jetzt perfekt!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 09:11:06
Zitat von: Torsten_MG am 27 Mai 2018, 08:47:57
Ich bin begeistert  ;D

Dein Modul ist super, pass nur auf, daß es nicht zur Eierlegendenwollmilchsau wird, dann wird es zu unübersichtlich!

Durch dein Modul ist es bei mir jetzt etwas übersichtlicher geworden.

Um nochmal auf gestern mit den Dummsy zurück zu kommen. Da du geschrieben hattest:
Habe ich gedacht, ich brauche die!

Aber es läuft jetzt perfekt!


nein , brauchst du nicht. damit konntest du die funktion nur am besten nachvollziehen . das
Zitat...configfile MSwitch ( die dummys müssen erst angelegt werden )...
war nur darauf bezogen , das sich das configfile nicht einspielen lässt , wenn die dummys nicht da sind, da sich alles auf diese dummys bezieht.

zur wollmilchsau :

es ist in der Tat so , dass  es eine solche werden muss ( fast ist ), da ich z.B nichts anderes mehr nutze , kein notify,kein watchdog, kein at, kein doif etc. pp . in meinem system gibt es ausschliesslich MSwitch , da ich alle Automatisierungen übersichtlich - auf einer Seite - einsehen können will , und das ist nunmal bisher nur im MSwitch - Inforoom gegeben (Anhang).
Sozusagen ein Alleinstellungsmerkmal  ;)

Insofern muss/soll es alles können. Aber da det. ja schon ähnliche bedenken geäussert hat bleibt die Grundfunktion und Konfiguration so , wie sie jetzt ist . Alles weiter sind/werden Funktionen , die entweder komplett im Hintergrund laufen , oder die Zuschalbar sind , nach Bedarf, und somit nicht auffallen , wenn sie nicht aktiviert werden.

gruss thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 27 Mai 2018, 09:22:56
Hmm. Da brauchen wir so was wie eine richtige Einführung über mehrere Seiten, damit das möglichst viele verstehen. Eine Einleitung von Grund auf, meine ich. Das ist Arbeit ✍️


Gesendet von iPad mit Tapatalk Pro
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 09:24:54
Zitat von: andies am 27 Mai 2018, 09:22:56
Hmm. Da brauchen wir so was wie eine richtige Einführung über mehrere Seiten, damit das möglichst viele verstehen. Eine Einleitung von Grund auf, meine ich. Das ist Arbeit ✍️


Gesendet von iPad mit Tapatalk Pro

das ist es in jedem Fall  :o .....und ich sträube mich sowas von .. dagegen  ;) ;) ;)

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 10:57:46
Zitat von: Byte09 am 27 Mai 2018, 09:11:06

...
zur wollmilchsau :

es ist in der Tat so , dass  es eine solche werden muss ( fast ist ), da ich z.B nichts anderes mehr nutze , kein notify,kein watchdog, kein at, kein doif etc. pp . in meinem system gibt es ausschliesslich MSwitch , da ich alle Automatisierungen übersichtlich - auf einer Seite - einsehen können will , und das ist nunmal bisher nur im MSwitch - Inforoom gegeben (Anhang).
Sozusagen ein Alleinstellungsmerkmal  ;)

Insofern muss/soll es alles können. Aber da det. ja schon ähnliche bedenken geäussert hat bleibt die Grundfunktion und Konfiguration so , wie sie jetzt ist . Alles weiter sind/werden Funktionen , die entweder komplett im Hintergrund laufen , oder die Zuschalbar sind , nach Bedarf, und somit nicht auffallen , wenn sie nicht aktiviert werden.

gruss thomas

Das stimmt schon und erleichtert vieles auf anhieb, aber die Anfälligkeit für Fehler wird immer größer.

Im Grunde bin ich auch für ein Modul das alles kann, aber es kann auch zu Problemen führen.


Noch eine Frage:

Wie komme ich an den Inforoom? Kann ihn irgendwie nicht finden
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 12:10:39
Zitat von: Torsten_MG am 27 Mai 2018, 10:57:46
Das stimmt schon und erleichtert vieles auf anhieb, aber die Anfälligkeit für Fehler wird immer größer.

Im Grunde bin ich auch für ein Modul das alles kann, aber es kann auch zu Problemen führen.


Noch eine Frage:

Wie komme ich an den Inforoom? Kann ihn irgendwie nicht finden

du musst alle MSwitch Devices (zusätlich) in einen Raum sortieren (da sollten nur MSwitch Devices drinnen sein) z.B  Room MSwitch.

Dann stellst du in einem MSwitch Device das Attribut 'MSwitch_Inforoom' auf diesen Raum (MSwitch). Das Modul setzt dann in allen MSwitch Devices dieses Attribut automatisch .

Wenn du dann auf diesen Raum gehst hast du entsprechende Ansicht.

https://wiki.fhem.de/wiki/MSwitch.pm#MSwitch_Inforoom (https://wiki.fhem.de/wiki/MSwitch.pm#MSwitch_Inforoom)

wenn du das Attribut in einem Device löscht (änderst) , wird dieses Attribut automatisch in allen MSwitch Devices ebenfalls gelöscht (geändert)

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 12:41:08
Zitat von: Byte09 am 26 Mai 2018, 17:34:14
im grunde musst du hier 2 befehle ausführen lassen , beide im on- zweig , da der dimmer es nicht unterstützt ( on for timer und einen pct wert gleichzeitig zu setzen zu setzen  - glaube ich .

anbei einfach ein bild mit der config.

gruss thomas

Wie gerade gemerkt, hat die Sache leider einen negativen Effekt.

Zur Erklärung der ganzen Struktur.

Im Flur habe ich eine Lampe (Flur_Lampe) und 2 Taster (Flur_Taster1 & Flur_Taster2). Im Flur_Taster2 ist noch ein Bewegungsmelder integriert.

Ich habe nun 3 MSwitch um dieses zu schalten:


MSwitch: Flur_Licht_S1

Trigger device:
[b]Flur_Taster1[/b]

trigger details :
[b]execute 'on' commands Trigger Flur_Taster1 :[/b] state:Flur_Taster1_01 Short
[b]execute 'off' commands Trigger Flur_Taster1 :[/b] state:Flur_Taster1_02 Short

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set on[/b]
[b]MSwitch off cmd: Set off[/b]


MSwitch: Flur_Licht_S2

Trigger device:
[b]GLOBAL[/b]
Trigger Device Global Whitelist:
[b]Flur_Taster2_01,Flur_Taster2_02[/b]

trigger details :
[b]execute 'on' commands Trigger all_events :[/b] Flur_Taster2_01:trigger:Short
[b]execute 'off' commands Trigger all_events :[/b] Flur_Taster2_02:trigger:Short

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set on[/b]
[b]MSwitch off cmd: Set off[/b]


MSwitch: Flur_Licht_motion

Trigger device:
[b]Flur_Taster1_motion[/b]

trigger details :
[b]execute 'on' commands Trigger Flur_Taster1 :[/b] state:motion
[b]execute 'off' commands Trigger Flur_Taster1 :[/b] no_trigger

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set pct[/b]  60
[b]MSwitch off cmd: Set no_action[/b]
[b]on condition:[/b] [18:00-6:00]

Flur_Lampe   

[b]MSwitch on cmd: Set off[/b]
[b]MSwitch off cmd: Set no_action[/b]
[b]on delay with cond-check: +[/b] 00:00:30


Nun zu meinem Problem.

Der Befehl im 3. MSwitch mit dem ausschalten nach 30sek hat leider auch auswirkung auf das Licht, wenn ich dieses mit einem der beiden Taster einschalte. In diesem Fall sollte das Licht aber nur ausgehen, wenn es von Hand ausgeschaltet wird.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 13:06:07
Zitat von: Torsten_MG am 27 Mai 2018, 12:41:08
Wie gerade gemerkt, hat die Sache leider einen negativen Effekt.

Zur Erklärung der ganzen Struktur.

Im Flur habe ich eine Lampe (Flur_Lampe) und 2 Taster (Flur_Taster1 & Flur_Taster2). Im Flur_Taster2 ist noch ein Bewegungsmelder integriert.

Ich habe nun 3 MSwitch um dieses zu schalten:


MSwitch: Flur_Licht_S1

Trigger device:
[b]Flur_Taster1[/b]

trigger details :
[b]execute 'on' commands Trigger Flur_Taster1 :[/b] state:Flur_Taster1_01 Short
[b]execute 'off' commands Trigger Flur_Taster1 :[/b] state:Flur_Taster1_02 Short

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set on[/b]
[b]MSwitch off cmd: Set off[/b]


MSwitch: Flur_Licht_S2

Trigger device:
[b]GLOBAL[/b]
Trigger Device Global Whitelist:
[b]Flur_Taster2_01,Flur_Taster2_02[/b]

trigger details :
[b]execute 'on' commands Trigger all_events :[/b] Flur_Taster2_01:trigger:Short
[b]execute 'off' commands Trigger all_events :[/b] Flur_Taster2_02:trigger:Short

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set on[/b]
[b]MSwitch off cmd: Set off[/b]


MSwitch: Flur_Licht_motion

Trigger device:
[b]Flur_Taster1_motion[/b]

trigger details :
[b]execute 'on' commands Trigger Flur_Taster1 :[/b] state:motion
[b]execute 'off' commands Trigger Flur_Taster1 :[/b] no_trigger

device actions :
Flur_Lampe   

[b]MSwitch on cmd: Set pct[/b]  60
[b]MSwitch off cmd: Set no_action[/b]
[b]on condition:[/b] [18:00-6:00]

Flur_Lampe   

[b]MSwitch on cmd: Set off[/b]
[b]MSwitch off cmd: Set no_action[/b]
[b]on delay with cond-check: +[/b] 00:00:30


Nun zu meinem Problem.

Der Befehl im 3. MSwitch mit dem ausschalten nach 30sek hat leider auch auswirkung auf das Licht, wenn ich dieses mit einem der beiden Taster einschalte. In diesem Fall sollte das Licht aber nur ausgehen, wenn es von Hand ausgeschaltet wird.

ok, etwas schwierig zu folgen :

also erstmal benötigst du dafür nur ein Device. würde dir nochmal ein beispiel basteln , mit dummys , muss aber genau wissen , was - wann pasiieren soll.

mein verständniss:

taster 1 und zwei schalten an und aus , jeder beides - also im grunde wechselschaltung .
bewegungsmeder schaltet für 30 sek an  . nur wenn licht noch aus . wenn das licht schon an ist , durch taster geschaltet soll es nicht ausgehen nach den 30 sekunden ?

passt das so ?

gruss Thomas

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 13:14:58
Zitat von: Byte09 am 27 Mai 2018, 13:06:07
...
mein verständniss:

taster 1 und zwei schalten an und aus , jeder beides - also im grunde wechselschaltung .
bewegungsmeder schaltet für 30 sek an  . nur wenn licht noch aus . wenn das licht schon an ist , durch taster geschaltet soll es nicht ausgehen nach den 30 sekunden ?

passt das so ?

gruss Thomas

Bingo, zusätzlich soll der Bewegungsmelder in diesem Fall nur zw. 18Uhr und 6Uhr schalten. Wobei ich das ja gerne Variabel halten würde über meine Tablet UI und dummy

Zitat von: Torsten_MG am 25 Mai 2018, 15:49:18
Ich kann über meine Tablet UI die 2 Zeiten (von/bis) einstellen. Diese 2 Zeiten werden im Dummy Flur_Lampe_Dummy in den Readings Licht_an & Licht_aus abgelegt. Wie kann ich das einbinden?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 13:30:06
gib mir 10 minuten , poste dan die beispielkonfig.

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 13:31:16
Zitat von: Byte09 am 27 Mai 2018, 13:30:06
gib mir 10 minuten , poste dan die beispielkonfig.

gruss Thomas

kein Sress!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 13:38:19
Zitat von: Torsten_MG am 27 Mai 2018, 13:31:16
kein Sress!

beispielkonfiguration - wird alles im raum bsp angelegt.
bitte erst die dummys anlegen, dann ein leeres MSwitch Device anlegen und das MSwitch Configfile einspielen.
danach 'modify trigger device' drücken.

schau es dir einfach an , bei fragen melden  ;)

defmod Dummy_taster2 dummy
attr Dummy_taster2 room bsp
attr Dummy_taster2 webCmd on

setstate Dummy_taster2 on
setstate Dummy_taster2 2018-05-27 13:28:11 state on

defmod Dummy_taster1 dummy
attr Dummy_taster1 room bsp
attr Dummy_taster1 webCmd on

setstate Dummy_taster1 on
setstate Dummy_taster1 2018-05-27 13:28:40 state on

defmod Dummy_Lampe dummy
attr Dummy_Lampe room bsp
attr Dummy_Lampe webCmd on:off

setstate Dummy_Lampe off
setstate Dummy_Lampe 2018-05-27 13:32:07 state off

defmod Dummy_Bewegungsmelder dummy
attr Dummy_Bewegungsmelder room bsp
attr Dummy_Bewegungsmelder webCmd on

setstate Dummy_Bewegungsmelder on
setstate Dummy_Bewegungsmelder 2018-05-27 13:32:14 state on



#S .Device_Affected -> Dummy_Lampe-AbsCmd1,Dummy_Lampe-AbsCmd2,Dummy_Lampe-AbsCmd3
#S .Device_Affected_Details -> Dummy_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Dummy_Bewegungsmelder:state:on"~AND~[Dummy_Lampe:state]~eq~"off"~AND~[18:00-06:00],,0,0|Dummy_Lampe-AbsCmd2,off,no_action,,,delay0,delay1,000010,000000,[$EVENT]~eq~"Dummy_Bewegungsmelder:state:on"~AND~[Dummy_Lampe:state]~eq~"off"~AND~[18:00-06:00],,0,0|Dummy_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Dummy_taster1:state:on"~OR~[$EVENT]~eq~"Dummy_taster2:state:on",,0,0
#S .Device_Events -> no_trigger|*:state:on|Dummy_Bewegungsmelder:state:on|Dummy_taster2:state:on|Dummy_taster1:state:on
#S .First_init -> done
#S .Trigger_Whitelist -> Dummy_taster1,Dummy_taster2,Dummy_Bewegungsmelder
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *:state:on
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Dummy_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> Dummy_Bewegungsmelder:state:on
#S state -> on
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A room -> bsp
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Expert -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Help -> 1


ziemlich schnell zusammengeklickt , denke aber das es geht .

gruss Thomas

EDIT : dummy_bewegungsmelder schaltet nur zwischn 18 und 6 uhr , findest du in den conditions
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 13:48:42
nachtrag:

im Feld 'switch Mswitch on + execute 'on' commands' kannst du auch alle events durchlassen  , add event * und den dann auswählen.

Auf die einzelevents wird ja nochmal bei den conditions unterschieden.

gruss thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 13:52:00
ok, viel Futter für Papa  :o

Muß ich jetzt die Dummys anlegen und mit den Tastern belegen, oder statt der dummys die Taster/Lampe eintragen?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 13:54:59
Zitat von: Torsten_MG am 27 Mai 2018, 13:52:00
ok, viel Futter für Papa  :o

Muß ich jetzt die Dummys anlegen und mit den Tastern belegen, oder statt der dummys die Taster/Lampe eintragen?
Genau , die Dummys und die von denen generierten events musst du durch deine Geräte und deren events ersetzen.

Gruss thomas

Gesendet von meinem SM-G900F mit Tapatalk

EDIT:

es kann hier zu problemen kommen , wenn das event des bewegungsmelder kommt, und quasi im selben moment das manuelle anschalten . das kannst du mit dem attribut MSwitch_Wait umgehen. wenn das gesetzt ist  nimmt das modul nach einem event für gesetzte zeit keine weiteren events an , um fhem und MSwitch zeit zu geben , alle zustaände richtig herzustellen.

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 14:25:30
Funktioniert leider nicht. Anbei mal die config von dem MSwitch wie ich ihn angepasst habe

#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1:state:*Short"~OR~[$EVENT]~eq~"Flur_Taster2_01:trigger:Short*"~OR~[$EVENT]~eq~"Flur_Taster2_02:trigger:Short*",,0,0
#S .Device_Events -> no_trigger|*
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Dummy_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:trigger_cnt:204
#S state -> on
#A room -> bsp
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Full
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_Webcmds -> 1


Bin jetzt aber auch erstmal unterwegs.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 27 Mai 2018, 14:30:13
Ich habe mal angefangen, eine Einführung zu entwerfen. Eventuell fixieren wir die auch im ersten Post? Ich brauche, glaube ich, da mithilfe von der Community. Ist das, was da bisher steht, überhaupt richtig? Was sollte als nächstes kommen?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 14:35:43
Zitat von: Torsten_MG am 27 Mai 2018, 14:25:30
Funktioniert leider nicht. Anbei mal die config von dem MSwitch wie ich ihn angepasst habe

#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1:state:*Short"~OR~[$EVENT]~eq~"Flur_Taster2_01:trigger:Short*"~OR~[$EVENT]~eq~"Flur_Taster2_02:trigger:Short*",,0,0
#S .Device_Events -> no_trigger|*
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Dummy_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:trigger_cnt:204
#S state -> on
#A room -> bsp
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Full
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_Webcmds -> 1


Bin jetzt aber auch erstmal unterwegs.

wenn du es noch schaffdt, mach doch bitte im device mal 'save events' an , löse jedes beteiligte gerät mal aus und schicke mir dann nochmal die config. dann habe ich auch alle generierten events und kann es mir anschauen.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 14:36:36
Zitat von: andies am 27 Mai 2018, 14:30:13
Ich habe mal angefangen, eine Einführung zu entwerfen. Eventuell fixieren wir die auch im ersten Post? Ich brauche, glaube ich, da mithilfe von der Community. Ist das, was da bisher steht, überhaupt richtig? Was sollte als nächstes kommen?

bekommen jetzt auch erstmal besuch , ich schaue es mir später an . thx.

gruss thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 19:29:36
Zitat von: andies am 27 Mai 2018, 14:30:13
Ich habe mal angefangen, eine Einführung zu entwerfen. Eventuell fixieren wir die auch im ersten Post? Ich brauche, glaube ich, da mithilfe von der Community. Ist das, was da bisher steht, überhaupt richtig? Was sollte als nächstes kommen?

Das liest sich doch schonmal gut  :) .... ich denke es sollte hier ähnlich wiki schritt für schritt vorgegangen werden , attr, sets , gets und webinterface ...stück für stück.

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 19:59:47
Zitat von: Byte09 am 27 Mai 2018, 14:35:43
wenn du es noch schaffdt, mach doch bitte im device mal 'save events' an , löse jedes beteiligte gerät mal aus und schicke mir dann nochmal die config. dann habe ich auch alle generierten events und kann es mir anschauen.

gruss Byte09

Habe das jetzt vom Handy gemacht, da alle PC's besetzt. Hoffe ist komplett.


#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay0,delay1,000030,000000,[$EVENT]~eq~"Flur_Taster1:state:on"~OR~[$EVENT]~eq~"Flur_Taster2_01:state:on"~OR~[$EVENT]~eq~"Flur_Taster2_02:state:on",,0,0
#S .Device_Events -> global:INITIALIZED|testmswitch:state:on|testmswitch:EVENT:global:INITIALIZED|testmswitch1:EVTPART3:on|testmswitch:last_event:global:INITIALIZED|testmswitch1:EVTPART2:state|testmswitch1:EVTPART1:testmswitch|testmswitch1:state:on|testmswitch:EVTPART1:global|testmswitch:EVTPART2:global|*|testmswitch:EVTPART3:INITIALIZED|testmswitch1:EVTFULL:testmswitch:state:on|testmswitch:EVTFULL:global:global:INITIALIZED|testmswitch1:EVENT:testmswitch:state:on|testmswitch1:last_event:testmswitch:state:on
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Dummy_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> testmswitch1:state:on
#S state -> on
#A MSwitch_Expert -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A MSwitch_Debug -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Webcmds -> 1
#A room -> bsp
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 27 Mai 2018, 20:21:56
Zitat von: Torsten_MG am 27 Mai 2018, 19:59:47
Habe das jetzt vom Handy gemacht, da alle PC's besetzt. Hoffe ist komplett.


#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay0,delay1,000030,000000,[$EVENT]~eq~"Flur_Taster1:state:on"~OR~[$EVENT]~eq~"Flur_Taster2_01:state:on"~OR~[$EVENT]~eq~"Flur_Taster2_02:state:on",,0,0
#S .Device_Events -> global:INITIALIZED|testmswitch:state:on|testmswitch:EVENT:global:INITIALIZED|testmswitch1:EVTPART3:on|testmswitch:last_event:global:INITIALIZED|testmswitch1:EVTPART2:state|testmswitch1:EVTPART1:testmswitch|testmswitch1:state:on|testmswitch:EVTPART1:global|testmswitch:EVTPART2:global|*|testmswitch:EVTPART3:INITIALIZED|testmswitch1:EVTFULL:testmswitch:state:on|testmswitch:EVTFULL:global:global:INITIALIZED|testmswitch1:EVENT:testmswitch:state:on|testmswitch1:last_event:testmswitch:state:on
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Dummy_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> testmswitch1:state:on
#S state -> on
#A MSwitch_Expert -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A MSwitch_Debug -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Webcmds -> 1
#A room -> bsp
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1



ja, ist alles drinnen was ich brauche. schaffe es aber erst morgen abend, dir ein entsprechended configfile ( auf deine geräte bezogen ) zu machen , muss jetzt gleich noch weg.

gruss Byte09

edit:
ggf.kannst du dir das beispiel ja auch nochmal anscheuen, in deiner version ist einiges quer, insbesondere bei den events.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Mai 2018, 20:30:45
Da ich diese Woche Spätschicht habe, kann ich das dann erst Dienstag Vormittag testen
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 28 Mai 2018, 10:15:21
Habe es hinbekommen

#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay0,delay1,000030,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1:state:Flur_Taster1_01"~OR~[$EVENT]~eq~"Flur_Taster1:state:Flur_Taster1_02"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0
#S .Device_Events -> Flur_Taster1:battery:ok|Flur_Taster2_01:trigger_cnt:74|Flur_Taster2_01:trigger_cnt:73|Flur_Taster2_Motion:state:motion|Flur_Taster2_01:state:Short 1_73 (to broadcast)|Flur_Taster2_Motion:trigger_cnt:122|Flur_Taster2_01:trigger:Short_74|Flur_Taster1:state:Flur_Taster1_02 Short|Flur_Taster2_02:trigger_cnt:79|Flur_Taster2_Motion:motion:on (to broadcast)|Flur_Taster2_01:state:Short 1_74 (to broadcast)|Flur_Taster2_Motion:motion:off|Flur_Taster2_Motion:brightness:110|Flur_Taster1:state:Flur_Taster1_01 Short|Flur_Taster2_Motion:motionCount:122_next:30s|Flur_Taster2_01:trigger:Short_73|no_trigger|*|Flur_Taster2_Motion:state:noMotion|Flur_Taster2_02:trigger:Short_79|Flur_Taster2_Motion:motionDuration:32|Flur_Taster2_02:state:Short 1_79 (to broadcast)
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe off
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:state:noMotion
#S state -> on
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A room -> Flur->Licht
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Debug -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Nur das mit dem Bewegungsmelder habe ich noch nicht getestet

Jetzt funktioniert es wieder nicht. Suche später warum
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 28 Mai 2018, 10:59:12
Zitat von: Torsten_MG am 28 Mai 2018, 10:15:21
Habe es hinbekommen

#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay0,delay1,000030,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1:state:Flur_Taster1_01"~OR~[$EVENT]~eq~"Flur_Taster1:state:Flur_Taster1_02"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0
#S .Device_Events -> Flur_Taster1:battery:ok|Flur_Taster2_01:trigger_cnt:74|Flur_Taster2_01:trigger_cnt:73|Flur_Taster2_Motion:state:motion|Flur_Taster2_01:state:Short 1_73 (to broadcast)|Flur_Taster2_Motion:trigger_cnt:122|Flur_Taster2_01:trigger:Short_74|Flur_Taster1:state:Flur_Taster1_02 Short|Flur_Taster2_02:trigger_cnt:79|Flur_Taster2_Motion:motion:on (to broadcast)|Flur_Taster2_01:state:Short 1_74 (to broadcast)|Flur_Taster2_Motion:motion:off|Flur_Taster2_Motion:brightness:110|Flur_Taster1:state:Flur_Taster1_01 Short|Flur_Taster2_Motion:motionCount:122_next:30s|Flur_Taster2_01:trigger:Short_73|no_trigger|*|Flur_Taster2_Motion:state:noMotion|Flur_Taster2_02:trigger:Short_79|Flur_Taster2_Motion:motionDuration:32|Flur_Taster2_02:state:Short 1_79 (to broadcast)
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe off
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:state:noMotion
#S state -> on
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A room -> Flur->Licht
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Debug -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Nur das mit dem Bewegungsmelder habe ich noch nicht getestet

Jetzt funktioniert es wieder nicht. Suche später warum
Kurz da Handy  . Da stimmt mit deinen condition was nicht .  Irgendwo taucht da sinngemäß auf  ... wenn off dann off ... .
Scalte doch mal das Attribut debug auf 1 , dann kannst du jedes event bei jeder bondition testen und siehst welches er wie beantwortet.

Gruss thomas

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 28 Mai 2018, 11:31:28
die condition habe ich so von dir übernommen und nur die dummys durch meine Geräte ersetzt.

Was mir aber jetzt auffällt, die readings EVENT, EVTPART1, EVTPART2 & EVTPART3 werden nicht mehr gefüttert

In der CUL_HM kann ich aber sehen, dass die Taster noch senden und die Signale empfangen werden
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 28 Mai 2018, 12:10:19
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe-AbsCmd3
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd2,off,no_action,,,delay0,delay1,000030,000000,[$EVENT]~eq~"Flur_Taster2_Motion:state:motion"~AND~off~eq~"off"~AND~[18:00-06:00],,0,0|Flur_Lampe-AbsCmd3,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,,,,
#S .Device_Events -> Flur_Taster2_01:trigger_cnt:105|*|Flur_Taster2_02:state:Short 1_108 (to broadcast)|Flur_Taster1:state:Flur_Taster1_02 Short|no_trigger|Flur_Taster2_01:state:Short 1_105 (to broadcast)|Flur_Taster2_02:trigger:Short_108|Flur_Taster2_01:trigger:Short_105|Flur_Taster2_02:trigger_cnt:108|Flur_Taster1:state:Flur_Taster1_01 Short|Flur_Taster1:battery:ok
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:trigger_cnt:196
#S state -> on
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A room -> Flur->Licht
#A MSwitch_Include_MSwitchcmds -> 0
#A disable -> 0
#A MSwitch_Help -> 1
#A MSwitch_Debug -> 1


Damit funktioniert es erstmal, habe leider keine Zeit mehr zum weitersuchen. Das einzige Problem ist, dass momentan der Bewegungsmelder immer die Lampe einschaltet, das ausschalten nach 30sek funktioniert auch
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 28 Mai 2018, 17:47:21
habe mich jetzt gerade mal an dein configfile gesetzt , da ist einiges im argen ,z.b. hier : 'on condition'

[$EVENT] eq "Flur_Taster2_Motion:state:motion" AND off eq "off" AND [18:00-06:00]

das macht so keinen sinnn und war auch in dem file den ich dir geposted habe nicht so , ich habe diesen eben selber nochmal eingespielt.

Wie dem auch sei , ich mache dir nachher die konfig, komme aber mit denen devices noch nicht ganz klar. was solle folgende devices bewirken?

Flur_Taster1 - an/aus denke ich
Flur_Taster2_01 - ?
Flur_Taster2_02 - ?
Flur_Taster2_Motion -  ist klar

gruss Byte


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 28 Mai 2018, 21:15:07
Testversion V1.50a im Anhang.

da diese Version massiv überarbeitet ist , ist ein vorheriges Backup mit Sicherheit ratsam. Die Version ist zwar getestet , aber sicher ist sicher. Wenn ich hier keine Fehler mitgeteilt bekomme , werde ich die Version in den kommenden Tagen in das GIT laden.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 29 Mai 2018, 06:49:19
Zitat von: Byte09 am 28 Mai 2018, 17:47:21
...Flur_Taster1 - an/aus denke ich
Flur_Taster2_01 - ?
Flur_Taster2_02 - ?
Flur_Taster2_Motion -  ist klar

gruss Byte

Der Flur_Taster2 wird ja leider nicht als solcher erkannt, haben wir die Tage ja festgestellt, deswegen frage ich direkt die 2Kanäle ab. 01 nehme ich zum einschalten, 02 zum ausschalten.

Das mit den on condition finde ich seltsam. Habe es 3x von hier kopiert und jedesmal diesen Eintrag gehabt.

EDIT:

Gerade nochmal wegen dem on conditon einen MSwitch erstellt, siehe Foto.

Aber ich blicke da sowieso noch nicht ganz durch
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 29 Mai 2018, 07:29:17
Der Fehler der config entsteht beim einspielen des config Files habe ich heute morgen gesehen ... beheben ich heute abend.

Das File poste ich dir dann heute abend

Gruss thomas

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 29 Mai 2018, 08:37:11
V1.50 bekannte Fehler. ..

- Fehler beim Rückspiegel eines config Files
- Fehler im löschverhalten von delays unter best.  Umständen

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 29 Mai 2018, 19:43:47
Zitat von: Byte09 am 29 Mai 2018, 08:37:11
V1.50 bekannte Fehler. ..

- Fehler beim Rückspiegel eines config Files
- Fehler im löschverhalten von delays unter best.  Umständen

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

beide Fehler behoben , Version 1.50b im Anhang.
Achtung: Configfiles aus vorherigen Versionen sind nicht mehr kompatibel !!

Backups sind davon nicht betroffen und sind weiterhin nutzbar.

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 30 Mai 2018, 11:41:17
Habe jetzt nochmal ein bisschen rum gespielt und anscheinend habe ich es hinbekommen.

Hier die config:
#V V1.50b
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"state.~Flur_Taster1_02~Short"~OR~[$EVENT]~eq~"state.~Flur_Taster1_01~Short"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,2,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~[18.00-06.00],,0,0
#S .Device_Events -> *|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> trigger_cnt: 45
#S state -> on
#A disable -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 1
#A room -> test
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Help -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Mode -> Full


Aber es wird sich im laufe des Tages herausstellen, ob wirklich alles so klappt, wie ich es gerne hätte.

Bei V1.44 war mir noch ein Problem aufgefallen und zwar hatte ich ein paarmal das Problem gehabt, dass einzelne "MSwitch" "eingefroren" waren. Es gab keine Reaktion und auch in den Readings hat sich bei EVENT, EVTFULL, EVTPART1, EVTPART2 & EVTPART3 nichts mehr getan, die Schalter haben aber fleißig gesendet. Wenn das Problem nochmal auftritt melde ich mich morgen.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 30 Mai 2018, 11:59:34
Kurze Frage nochmal dazu:

Zitat von: Torsten_MG am 25 Mai 2018, 15:49:18

...
Ich kann über meine Tablet UI die 2 Zeiten (von/bis) einstellen. Diese 2 Zeiten werden im Dummy Flur_Lampe_Dummy in den Readings Licht_an & Licht_aus abgelegt. Wie kann ich das einbinden?

Gruß Torsten
...

Zitat von: Byte09 am 26 Mai 2018, 06:29:41

geht in dieser version leider nicht so einfach , müsste dann über freecmd gemacht werden. Ich werde für die nächste version( noch am WE ) eine jkleine änderung machen , sa dass er in den conditions eine solche syntax erkennt :

[[dummy1:state]-[dummy2:state]]

gruss Byte

Mein Dummy heißt Flur_Lampe_Dummy
Reading für Zeitpunkt Licht ein Licht_an
Reading für Zeitpunkt Licht aus Licht_aus

Muß ich dann bei on condition statt [18:00-6:00] folgendes eintragen:

[[Flur_Lampe_Dummy:Licht_an]-[Flur_Lampe_Dummy:Licht_aus]]

Keine Zeit zum Testen, darum die kurze Frage.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 30 Mai 2018, 12:27:14
Ja , so sollte es gehen. Aber bitte darauf achten , dass die Zeit in den Dummys such dieses Format hh:mm haben.


Der freeze mit den nicht mehr aktualisierenden events sollte nicht mehr passieren .... eigentlich.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: MSwitch V1.5
Beitrag von: Byte09 am 31 Mai 2018, 06:24:19
Ich habe die Version V1.5 eben in das GIT geladen , sie ist somit über das Update verfügbar .
Das Wiki wurde entsprechend angepasst.

Die Vorgängerversion ist im Anhang des ersten Beitrages zu finden.

Gruss Byte09

PS: Uber die neuen Attribute und Schaltmöglichkeiten ist relativ einfach eine komplexe Anwesenheitssimulation zu realisieren.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 31 Mai 2018, 09:42:38
ATTR Safemode hinzugefügt.

Da es mit einem MSwitch Device durchaus möglich ist ... ist mir selber schon mehr als einmal passiert .... , bei entsprechender Konfiguration, das Device und somit Fhem in eine Endlosschleife zu schicken , die nur noch durch einen Neustart zu beenden ist - insbesondere daher, das sich ein MSwitch device selber togglen kann - habe ich ab sofort das Attribut 'MSwitch_Safemode (0,1)' eingeführt .

Bei aktiviertem Attribut (1) beendet das Device den Vorgang bei Verdacht auf eine Endlosschleife.
In diesem Fall erfolgt ein Logeintrag
2018.05.31 10:38:43 0: Das Device Aborttest wurde automatisch deaktiviert ( Safemode )
und das Device wird automatisch auf ATTR disable gesetzt. Meim nächsten Aufruf des Devices erfolgt ein Hinweis in der Webansicht .

Vor dem deaktivieren des Devices wird ein letztes Event generiert, auf das reagiert werden kann :
2018-05-31 09:39:21 MSwitch dummytest Safemode: on

Bei Neuanlage eines (komplizierten) Devices ist die Aktivierung dieses Attributes somit durchaus empfehlenswert.

Sollte die Erkennung einer Schleife zu eng gesteckt sein , bitte kurze Info, dann erweitere ich das etwas.

gruss Byte09


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 31 Mai 2018, 20:45:57
habe gerade update all durchgeführt und diese Meldung bekommen

2018.05.31 20:43:22 1 : UPD FHEM/98_MSwitch.pm
2018.05.31 20:43:22 1 : open ./FHEM/98_MSwitch.pm failed: Permission denied, trying to restore the previous version and aborting the update


Habe auch schon das Problem gehabt, wenn ich über FileZilla das Modul einladen möchte, dass ich das alte erstmal vom RPi löschen muß bevor ich das neue speichern kann

EDIT:

habe jetzt 98_mswitch.pm über FileZilla gelöscht, dann ging update
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 31 Mai 2018, 20:57:49
Irgendwie ist da noch der Wurm drin.

Gestern hat alles wunderbar funktioniert. Als wir eben nach Hause kamen, hat der Bewegungsmelder nicht "reagier" also Licht ging nicht an. Im On Condition steht [$EVTPART1] eq "Flur_Taster2_Motion" AND [18:00-06:00] als ich es auf [$EVTPART1] eq "Flur_Taster2_Motion" geändert habe, ging der Bewegungsmelder, als ich die Zeit wieder eingefügt habe nichtmehr. Nun habe ich noch das update gemacht, jetzt geht der MSwitch komplett nicht mehr  :o

Im reading steht jetzt auch was ganz anderes, siehe Foto
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 31 Mai 2018, 21:39:07
Zitat von: Torsten_MG am 31 Mai 2018, 20:57:49
Irgendwie ist da noch der Wurm drin.

Gestern hat alles wunderbar funktioniert. Als wir eben nach Hause kamen, hat der Bewegungsmelder nicht "reagier" also Licht ging nicht an. Im On Condition steht [$EVTPART1] eq "Flur_Taster2_Motion" AND [18:00-06:00] als ich es auf [$EVTPART1] eq "Flur_Taster2_Motion" geändert habe, ging der Bewegungsmelder, als ich die Zeit wieder eingefügt habe nichtmehr. Nun habe ich noch das update gemacht, jetzt geht der MSwitch komplett nicht mehr  :o

Im reading steht jetzt auch was ganz anderes, siehe Foto

zu deinem ersten post : das ist/war ein rechteproblem - hast da ja wohl behoben

zum zweiten: ich habe die gesamte funktion ( kombi aus zeit und readingbedingung ) eben geprüft und kann keinen Fehler feststellen.

kannst du mir bitte den configfile schicken ?

EDIT on:
Falls du Fhem nach dem löschen der 98_Mswitch.pm neu gestartet hast , ohne das Modul , kann es sein das du die Config des MSwitch-Devices 'zerstört' hast . Diese ist dann zwar noch vorhanden und wird angezeigt , aber nicht mehr richtig eingelesen. Mit einem Klick auf 'modify device' kannst du das beheben. Ich spiele heute Nachmitag eine Version ein , die dieses in einem solchen Fall automatisch macht ( auch nach einspielen eine Configfiles - da gab es ein ähnliches Problem . Konkret: in diesen Fällen wurde das Internal 'NOTIFYDEV' nicht neu Belegt und somit nicht Korrekt getriggert)

ich weiss aber nicht ob dieses das Problem ist - nur ein Verdacht
EDIT off

Das Event , das im Reading steht, ist das letzte Event , was die Trigger-Condition passiert hat .

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 01 Juni 2018, 11:32:18
Ok, nach modify Device funktioniert es wieder, auch der Bewegungsmelder. Nur schaltet er jetzt das Licht 2x

#V V1.51
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"state.~Flur_Taster1_02~Short"~OR~[$EVENT]~eq~"state.~Flur_Taster1_01~Short"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,30,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~[11.00-06.00],,0,0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on-for-timer 30
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:state:noMotion
#S state -> on
#A disable -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Delete_Delays -> 1
#A room -> Flur->Licht,MSwitch
#A MSwitch_Help -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 01 Juni 2018, 11:47:59
Bin in 2 Std wieder zuhause ... schaue es mir dann an .

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 01 Juni 2018, 11:58:15
Ok, bin in 30min zur Arbeit. Bin also erst ab morgen wieder erreichbar
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 02 Juni 2018, 07:10:20
Zitat von: Torsten_MG am 01 Juni 2018, 11:58:15
Ok, bin in 30min zur Arbeit. Bin also erst ab morgen wieder erreichbar

Hi Torsten,

ich habe mich jetzt recht lange damit beschäftigt . Entgegen meiner bisherigen Aussage ist es über ein Device aus verschiedenen Gründen nicht lösbar ( zumindest nicht ohne einen weiteren Dummy ):
1. die Devices liefern teilweise gleiche events, was eine trennung in einem MSwitch echt schwierig macht
2. wenn es über ein MSwitch gelöst wird kann das MSwitch nicht prüfen , wodurch das Licht angeschaltet wurde  ( manuell ? ) und somit nicht entscheiden, ob der bewegungsmelder nun aktiv sein soll oder nicht .

Also Fakt ist - es werden 2 Devices benötigt.

Die angehängten Configfiles setzen V1.52 und folgende Devices als vorhanden voraus:
Flur_Taster1
Flur_Taster2_01
Flur_Taster2_Motion
Flur_Lampe

und sollten wie folgt heissen :

Lampenschalter (MSwitch für taster)
Bewegungschalter (MSwitch für Bewegungsmelder)
bei anderer Namensgebung muss entsprechend anders konfiguriert werden.


das erste Device: ( hier: Lampenschalter)
mit diesem reagierst du nur auf die Taster. Um eine Kontrollmöglichkeit zu haben , ob das Licht durch die Taster angeschaltet wurde betreibst du dieses MSwitch im Togglemode. Somit kann durch das zweite Device später der Zustand dieses Devices abgefragt werden und somit der Bewegungsmelder aktiviert werden / oder eben nicht.
Getriggert werden muss in diesem Device GLOBAL, da du auf mehrere Geräte ( Taster ) reagieren willst.
Der Togglemode des MSwitcdevices bewirkt, das sich bei jedem getriggerten Event der Zustand des MSwitches toggelt und alle eingetragenen Geräte ( Lampe ) mit in den Zustand des MSwitches schalten.
Konfiguration im Anhang 1
File:
#V V1.52
#S .Device_Affected -> Flur_Lampe-AbsCmd1
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on,off,,,delay1,delay1,000000,000000,,,0,0
#S .Device_Events -> *:*:Short*|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *:*:Short*
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe off
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> trigger: Short_12
#S state -> off
#A room -> Flur->Licht,MSwitch
#A MSwitch_Extensions -> 1
#A MSwitch_Mode -> Toggle
#A MSwitch_Debug -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Delete_Delays -> 1
#A disable -> 0
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



das zweite Device: ( Bewegungschalter )
dieses Devive betreibst du im Notifymode und es Triggert nur auf den Bewegungsmeder , und schaltet die Lampe für 30 sekunden an , aber nur dann , wenn das erste Device auf 'off' steht und die Lampen somit ebenfalls aus sind . Als weitere Bedingung schaltet es nur zwischen xx und xx Uhr.
Steht das erste Device auf an , d.H die Lampen wurden manuell angeschaltet , reagiert das zweite Device gar nicht .
Konfiguration im Anhang 2.
File:
#V V1.52
#S .Device_Affected -> Flur_Lampe-AbsCmd1
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,on-for-timer,no_action,5,,delay1,delay1,000000,000000,,,0,0
#S .Device_Events -> motion:on|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> motion:on
#S .Trigger_condition -> [Lampenschalter.state]~eq~"off"~AND~[16.00-22.00]
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on-for-timer 5
#S Trigger_device -> Flur_Taster2_Motion
#S Trigger_log -> off
#S last_event -> trigger:Short_45
#S state -> active
#A MSwitch_Extensions -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Debug -> 0
#A MSwitch_Lock_Quickedit -> 1
#A room -> Flur->Licht
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 0
#A MSwitch_Include_Devicecmds -> 1


Bitte auf die Abhängigkeiten - insbesondere in der Namensgebung - achten und anpassen.

Gruss Byte
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juni 2018, 11:13:37
Wenn ich jetzt nichts übersehen habe, habe ich es mit einem MSwitch und einem Dummy hinbekommen
Warte aber jetzt noch heute Abend ab, wenn der Timer greift:

#V V1.51
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe_Dummy-AbsCmd1
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_02"~OR~[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,30,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~[$EVTPART2]~eq~"trigger_cnt"~AND~[Flur_Lampe_Dummy.off]~AND~[18.00-06.00],,0,0|Flur_Lampe_Dummy-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_02"~OR~[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0
#S .Device_Events -> *state*|no_trigger|*
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on-for-timer 30
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:trigger_cnt:78
#S state -> on
#A disable -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Delete_Delays -> 1
#A room -> Flur->Licht,MSwitch
#A MSwitch_Help -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 02 Juni 2018, 12:16:42
Zitat von: Torsten_MG am 02 Juni 2018, 11:13:37
Wenn ich jetzt nichts übersehen habe, habe ich es mit einem MSwitch und einem Dummy hinbekommen
Warte aber jetzt noch heute Abend ab, wenn der Timer greift:

#V V1.51
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2,Flur_Lampe_Dummy-AbsCmd1
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_02"~OR~[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,30,,delay1,delay1,000000,000000,[$EVTPART1]~eq~"Flur_Taster2_Motion"~AND~[$EVTPART2]~eq~"trigger_cnt"~AND~[Flur_Lampe_Dummy.off]~AND~[18.00-06.00],,0,0|Flur_Lampe_Dummy-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_02"~OR~[$EVENT]~eq~"Flur_Taster1.state.Flur_Taster1_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_01"~OR~[$EVTPART1]~eq~"Flur_Taster2_02",,0,0
#S .Device_Events -> *state*|no_trigger|*
#S .First_init -> done
#S .Trigger_Whitelist -> Flur_Taster1,Flur_Taster2_01,Flur_Taster2_02,Flur_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Exec_cmd -> set Flur_Lampe on-for-timer 30
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> Flur_Taster2_Motion:trigger_cnt:78
#S state -> on
#A disable -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Delete_Delays -> 1
#A room -> Flur->Licht,MSwitch
#A MSwitch_Help -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul


jetzt nur mal schnell drüber geflogen . Diese condition :
[$EVENT] eq "Flur_Taster1:state:Flur_Taster1_02" OR [$EVENT] eq "Flur_Taster1:state:Flur_Taster1_01" OR [$EVTPART1] eq "Flur_Taster2_01" OR [$EVTPART1] eq "Flur_Taster2_02"

reagiert nur daher überhaupt, da diese Teile greifen:

OR [$EVENT] eq "OR [$EVTPART1] eq "Flur_Taster2_01" OR [$EVTPART1] eq "Flur_Taster2_02"

die zwei ausdrücke davor werden nie greifen , da es sich bei deiner abfrage 'Flur_Taster1:state:Flur_Taster1_02'  nicht um events handeln, die jemals eintreten.

Ich sehe zwar wie du es dir gedacht hast , hat aber - selbst wenn es funktioniert - den nachteil , das der bewegungsmelder nicht mehr "nach"schaltet , wenn er einmal angeschaltet hat , sprich : das licht muss erst ausgehen und erst dann kann der bewegungsmelder es wieder anschalten. warum machst du es nicht wie oben von mir beschrieben ,  so schaltet der bewegungsmelder den on-for-timer immer wieder neu , solange bewegung erkannt wird und das licht geht nicht aus, solange sich jemand im flur? aufhält.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juni 2018, 12:37:30
Alle Events kommen so wie eingetragen, mache später mal Screenshots bin gerade unterwegs
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 02 Juni 2018, 12:45:15
Zitat von: Torsten_MG am 02 Juni 2018, 12:37:30
Alle Events kommen so wie eingetragen, mache später mal Screenshots bin gerade unterwegs

hm, ok  ...... muss mir glaube ich unbedingt mal so einen taster / bewegungsmelder kaufen !
kannst du mir mal die bezeichnung von den teilen geben ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juni 2018, 12:56:51
Zitat von: Torsten_MG am 25 Mai 2018, 17:34:25
... Der Bewegungsmelder ist in einem Taster Homematic HM-Sen-MDIR-WM55 integriert. Den Sensor habe ich als Trigger Device Flur_Taster2_Motion genommen, der Funktioniert problemlos. Der andere Taster im Flur ist ein HM-PB-2-WM55 ...
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juni 2018, 17:35:55
Hier mal die Screenshots von meinen Events
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juni 2018, 21:13:51
Habe jetzt mal versucht statt einem festen Wert [18:00-06:00]
die Variablen Werte aus dem Dummy zu nehmen [[Flur_Lampe_Dummy:Licht_an]-[Flur_Lampe_Dummy:Licht_aus]]

Aber leider scheint es nicht zu funktionieren.

Anbei Foto vom on condition
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Ranseyer am 02 Juni 2018, 22:00:26
Hi,

MSwitch habe ich über einen anderen Thread kennengelernt.

Ich habe mal versucht das Thema Markise damit abzubilden (weil ich daran gerade war).

Aufgefallen ist mir: Ein List auf das Device gibt mir auch ein paar Infos:
Internals:
   CFGFN     
   DEF        WG_Steuerung # WG_Steuerung
   NAME       Test
   NOTIFYDEV  WG_Steuerung
   NR         521
   NTFY_ORDER 45-Test
   STATE      on
   TYPE       MSwitch
   Version    V1.52
   OLDREADINGS:
   READINGS:
     2018-06-02 21:38:45   EVENT           down2:
     2018-06-02 21:38:45   EVTFULL         WG_Steuerung:down2:
     2018-06-02 21:38:45   EVTPART1        WG_Steuerung
     2018-06-02 21:38:45   EVTPART2        down2
     2018-06-02 21:38:45   EVTPART3         
     2018-06-02 21:38:45   Exec_cmd        set WG_Steuerung down2
     2018-06-02 21:43:46   Trigger_device  WG_Steuerung
     2018-06-02 20:25:04   Trigger_log     off
     2018-06-02 21:38:45   last_event      down2:
     2018-06-02 21:38:45   state           on
   helper:
     eventfrom  WG_Steuerung
     events:
       WG_Steuerung:
         no_trigger on
     savemodeblock:
     timer:
       1527976810 1527976810-5
Attributes:
   DbLogExclude .*
   MSwitch_Debug 0
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 0
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full


Aber in der RAW-Definition steht z.B. auch:
Zitatsetstate Test 2018-06-02 21:49:35 .Trigger_time on[00:30:00*8:00-19:00]~off~ononly~offonly
Das ist mir nur so aufgefallen und für jetzt weniger ein Problem.

Warum ich es im Moment nicht für diesen Zweck verwenden kann ist dass ich meinen Schaltbefehl nicht eintragen kann:"set WG_Steuerung:FILTER=percentage2<100 percentage2 100"
Vermutlich unwissenheit bei mir.

Und: Könnte ich falls das Problem zu lösen ist auch noch die Frage: Kann ich on/off durch andere Bezeichnungen ersetzen (Oben / Unten) ?

PS: Weitere Hinweise: Speichern laut Wikitext/CMDRef ist mir unklar:
ZitatUnknown command Fhemsave, try help.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 05:47:41
Zitat von: Torsten_MG am 02 Juni 2018, 21:13:51
Habe jetzt mal versucht statt einem festen Wert [18:00-06:00]
die Variablen Werte aus dem Dummy zu nehmen [[Flur_Lampe_Dummy:Licht_an]-[Flur_Lampe_Dummy:Licht_aus]]

Aber leider scheint es nicht zu funktionieren.

Anbei Foto vom on condition

gib mir bitte mal die raw definition eines der summys in dem du die zeiten stehen hast .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 06:02:35
Zitat von: Ranseyer am 02 Juni 2018, 22:00:26
Hi,

MSwitch habe ich über einen anderen Thread kennengelernt.

Ich habe mal versucht das Thema Markise damit abzubilden (weil ich daran gerade war).

Aufgefallen ist mir: Ein List auf das Device gibt mir auch ein paar Infos:
Internals:
   CFGFN     
   DEF        WG_Steuerung # WG_Steuerung
   NAME       Test
   NOTIFYDEV  WG_Steuerung
   NR         521
   NTFY_ORDER 45-Test
   STATE      on
   TYPE       MSwitch
   Version    V1.52
   OLDREADINGS:
   READINGS:
     2018-06-02 21:38:45   EVENT           down2:
     2018-06-02 21:38:45   EVTFULL         WG_Steuerung:down2:
     2018-06-02 21:38:45   EVTPART1        WG_Steuerung
     2018-06-02 21:38:45   EVTPART2        down2
     2018-06-02 21:38:45   EVTPART3         
     2018-06-02 21:38:45   Exec_cmd        set WG_Steuerung down2
     2018-06-02 21:43:46   Trigger_device  WG_Steuerung
     2018-06-02 20:25:04   Trigger_log     off
     2018-06-02 21:38:45   last_event      down2:
     2018-06-02 21:38:45   state           on
   helper:
     eventfrom  WG_Steuerung
     events:
       WG_Steuerung:
         no_trigger on
     savemodeblock:
     timer:
       1527976810 1527976810-5
Attributes:
   DbLogExclude .*
   MSwitch_Debug 0
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 0
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full


Aber in der RAW-Definition steht z.B. auch:Das ist mir nur so aufgefallen und für jetzt weniger ein Problem.

Warum ich es im Moment nicht für diesen Zweck verwenden kann ist dass ich meinen Schaltbefehl nicht eintragen kann:"set WG_Steuerung:FILTER=percentage2<100 percentage2 100"
Vermutlich unwissenheit bei mir.

Und: Könnte ich falls das Problem zu lösen ist auch noch die Frage: Kann ich on/off durch andere Bezeichnungen ersetzen (Oben / Unten) ?

PS: Weitere Hinweise: Speichern laut Wikitext/CMDRef ist mir unklar:

hier habe ich leider einen fehler in derm wiki gemacht . die zeitangabe für mehrfaches schalten darf nicht wie von dir angegeben ' [00:30:00*8:00-19:00] 'sein , sondern die intervallangabe darf nur 4 stellig sein . Richtig ist: '[00:30*8:00-19:00]'.

grundsätlich kannst du alle schaltbefehle verwenden, die das zu schaltende Device verstehst , im grunde sollten die dir im webinterface auch angeboten werden.

bei dem rest kann ich noch nicht genau folgen. kannst du bitte nochmal erklären was genau du wann schalten willst ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juni 2018, 08:44:54
Zitat von: Byte09 am 03 Juni 2018, 05:47:41
gib mir bitte mal die raw definition eines der summys in dem du die zeiten stehen hast .

gruss Byte09


defmod Flur_Lampe_Dummy dummy
attr Flur_Lampe_Dummy disable 0
attr Flur_Lampe_Dummy room Flur->Licht
attr Flur_Lampe_Dummy setList on off
attr Flur_Lampe_Dummy webCmd on:off

setstate Flur_Lampe_Dummy off
setstate Flur_Lampe_Dummy 2018-05-26 10:16:30 Dummy_Lampe_Flur off
setstate Flur_Lampe_Dummy 2018-06-02 20:53:39 Licht_an 19:00
setstate Flur_Lampe_Dummy 2018-06-02 20:53:43 Licht_aus 07:00
setstate Flur_Lampe_Dummy 2018-06-02 17:21:45 state off
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 09:21:16
Zitat von: Torsten_MG am 03 Juni 2018, 08:44:54

defmod Flur_Lampe_Dummy dummy
attr Flur_Lampe_Dummy disable 0
attr Flur_Lampe_Dummy room Flur->Licht
attr Flur_Lampe_Dummy setList on off
attr Flur_Lampe_Dummy webCmd on:off

setstate Flur_Lampe_Dummy off
setstate Flur_Lampe_Dummy 2018-05-26 10:16:30 Dummy_Lampe_Flur off
setstate Flur_Lampe_Dummy 2018-06-02 20:53:39 Licht_an 19:00
setstate Flur_Lampe_Dummy 2018-06-02 20:53:43 Licht_aus 07:00
setstate Flur_Lampe_Dummy 2018-06-02 17:21:45 state off


ok, da habe ich einen fehler in der regex , sonderzeichen werden im namen nicht zugelassen - ich korrigiere das und stelle den fix gleich online .

gruss Thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 09:50:25
ich habe gerade ein update in das git gestellt, damit geht es.

gruss thomas
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juni 2018, 10:05:41
Zitat von: Byte09 am 03 Juni 2018, 09:50:25
ich habe gerade ein update in das git gestellt, damit geht es.

gruss thomas

Teste es heute Abend, da ich en ganzen Tag unterwegs bin
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 14:55:44
einfach mal ein Tipp !

Umsetzung eines Linearschalters mit MSwitch :

https://forum.fhem.de/index.php/topic,88331.msg807985.html#msg807985 (https://forum.fhem.de/index.php/topic,88331.msg807985.html#msg807985)

werde ich die Tage als Tipp in das Wiki übernehmen ( mit Raw definition als Beispiel ).

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juni 2018, 17:37:11
Zitat von: Torsten_MG am 03 Juni 2018, 10:05:41
Teste es heute Abend, da ich en ganzen Tag unterwegs bin

Funktioniert leider immer noch nicht

EDIT:
Habe gerade festgestellt, dass der ganze MSwitch nicht mehr geht

EDIT2:
Nachdem ich nochmal Modify trigger Device durchgeführt habe klappt alles
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 18:30:45
Zitat von: Torsten_MG am 03 Juni 2018, 17:37:11
Funktioniert leider immer noch nicht

EDIT:
Habe gerade festgestellt, dass der ganze MSwitch nicht mehr geht

EDIT2:
Nachdem ich nochmal Modify trigger Device durchgeführt habe klappt alles

ok, super.

ich kann das Problem noch nicht ganz nachvollziehen, wann er den Trigger verliert, sprich du den modify drücken musst, kannst du das ggf. nachvollziehen, was du vorher tust , das es das verliert ( backup einspielen , config einspielen etc. )

gruss Byte09

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juni 2018, 18:43:19
Zitat von: Byte09 am 03 Juni 2018, 18:30:45
ok, super.

ich kann das Problem noch nicht ganz nachvollziehen, wann er den Trigger verliert, sprich du den modify drücken musst, kannst du das ggf. nachvollziehen, was du vorher tust , das es das verliert ( backup einspielen , config einspielen etc. )

gruss Byte09

Leider nein, ich habe nur gesehen, dass der letzte Eintrag in den Events heute morgen war und irgendwas mit "Init..." in den Readings bei EVENT stand. Falls es nochmal passiert mache ich ein paar Screenshots
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juni 2018, 18:52:08
Habe gerade festgestellt, dass eine Sache nicht funktioniert.

Als ich für mein Flurlicht noch 3 MSwitch hatte und in dem für den Dimmer das on-for-timer und pct hatte, hat die Lampe abends gedimmt geschaltet. Das Dimmen funktioniert jetzt in dem zusammengelegten Switch seltsamer weise nicht mehr, obwohl ich bei bei beiden on condition das gleiche eingetragen habe.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juni 2018, 19:01:01
Zitat von: Torsten_MG am 03 Juni 2018, 18:52:08
Habe gerade festgestellt, dass eine Sache nicht funktioniert.

Als ich für mein Flurlicht noch 3 MSwitch hatte und in dem für den Dimmer das on-for-timer und pct hatte, hat die Lampe abends gedimmt geschaltet. Das Dimmen funktioniert jetzt in dem zusammengelegten Switch seltsamer weise nicht mehr, obwohl ich bei bei beiden on condition das gleiche eingetragen habe.

so schwer zu beurteilen so  . da kann ggf ein gemeinsames event ( dadurch das du nur teile auswertest ) ? Auf der sicheren und einfacheren seite bist du wirklich wenn du es trennst .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 Juni 2018, 18:40:29
Wiki wurde um den Tipp 'Linearschalter' ergänzt:

https://wiki.fhem.de/wiki/MSwitch.pm#Lienearschalter (https://wiki.fhem.de/wiki/MSwitch.pm#Lienearschalter)

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 10 Juni 2018, 12:42:09
Hallo Byte,

ich habe ein neues Spielzeug, ein Xiaomi Cube und versuche mit MSwitch eine Multifunktion umzusetzen.
https://youtu.be/iPMrfjilYzU?t=50s & https://forum.fhem.de/index.php/topic,84790.0.html

Komme da aber nicht recht weiter, wenn ich das MSwitch Device erweitere, funktioniert es nicht mehr und zudem springt immer der Safemode an. Habe diesen nun deaktiviert...

Der Würfel hat 7 Funktionen bzw. Events: shake, rotate_left, rotate_ride, tap, slide, flip90, flip180, fall

Ich möchte damit die Kodi Lautstärke regeln und das Schranklicht dimmen. Über rotate_left, rotate_ride

Mit "shake" schaltet MSwitch ein Dummy auf KU_KODI/KU_Schranklicht im Toggle Modus um, was auch funktioniert.

Und über AND [KU_MSwitch_Dummy] eq "KU_Schranklicht" möchte ich in den einzelnen MSwitch Devices selektieren, was beim drehen des Würfels passieren soll:
KU_LED_Stripe_Schrank
MSwitch on cmd: Set > dimdown 10
on condition: [$EVENT] eq "KU_Cube:action:rotate_left" AND [KU_MSwitch_Dummy] eq "KU_Schranklicht"

Nur das  mit dem Dummy und dem Filtern nach "KU_KODI/KU_Schranklicht" funktioniert nicht. Ich habe davon zwei Screenshots angelegt.

Der erste Screenshot zeigt ein MSwitch Device welches funktioniert ohne die AND Regel.
Der zweite Screenshot zeigt das Device, was ich eigentlich umsetzen möchte und was nicht funktioniert.

Eventlog:
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: transmission-state: incoming publish received
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:transmission-state:incomingpublishreceived
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:transmission-state:incomingpublishreceived
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:transmission-state:incomingpublishreceived
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:transmission-state:incomingpublishreceived
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:transmission-state:incomingpublishreceived
2018-06-10 12:39:22 XiaomiMQTTDevice KU_Cube transmission-state: incoming publish received
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: voltage: 3005
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:voltage:3005
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:voltage:3005
2018-06-10 12:39:22 MSwitch KU_Cube_MSwitch last_event: KU_Cube:voltage:3005
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:voltage:3005
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:voltage:3005
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: battery_level: 100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery_level:100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery_level:100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery_level:100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery_level:100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery_level:100.00
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: battery: ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery:ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery:ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery:ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery:ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:battery:ok
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: action: rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:action:rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:action:rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:action:rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:action:rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:action:rotate_left
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: angle: -89.05
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:angle:-89.05
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:angle:-89.05
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:angle:-89.05
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:angle:-89.05
2018-06-10 12:39:23 MSwitch KU_Cube_MSwitch last_event: KU_Cube:angle:-89.05
2018-06-10 12:39:23 XiaomiMQTTDevice KU_Cube voltage: 3005
2018-06-10 12:39:23 XiaomiMQTTDevice KU_Cube battery_level: 100.00
2018-06-10 12:39:23 XiaomiMQTTDevice KU_Cube battery: ok
2018-06-10 12:39:23 XiaomiMQTTDevice KU_Cube action: rotate_left
2018-06-10 12:39:23 XiaomiMQTTDevice KU_Cube angle: -89.05


Wäre super wenn du da mal drüber schauen könntest und wenn du ne bessere Idee hast, immer her damit. :)


Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 10 Juni 2018, 13:05:31
Ich habe den Fehler gefunden, bei KU_MSwitch_Dummy fehlt das "state".  ::)
Also so: KU_MSwitch_Dummy:state
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Juni 2018, 13:27:35
Zitat von: mark79 am 10 Juni 2018, 13:05:31
Ich habe den Fehler gefunden, bei KU_MSwitch_Dummy fehlt das "state".  ::)
Also so: KU_MSwitch_Dummy:state

OT: braucht du dafür ein Gateway, oder kann er direkt mit fhem ?

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 10 Juni 2018, 14:02:02
Zitat von: Byte09 am 10 Juni 2018, 13:27:35
OT: braucht du dafür ein Gateway, oder kann er direkt mit fhem ?

Gruss Byte09

Entweder das orginale Gateway oder ein Zigbee Stick: https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-sniffer-devices
Würde dir ein CC2530 empfehlen, wegen der größeren Reichweite. Man muss diesen aber in beiden Fällen noch umflashen.

Der Vorteil daran ist, man benötigt das originale GW nicht, also ohne Xiaomi Cloud. Man kann mehr Geräte anbinden, ich glaube bis zu 50 und die Devices haben teilweise mehr Funktionen als mit dem org. Gateway. Und dazu kann man noch Ikea und Hue etc. anbinden: https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-devices

EDIT: Der Würfel ist im Moment auch noch im Angebot: https://www.mydealz.de/deals/xiaomi-aqara-cube-remote-controller-fur-6-aktionen-gateway-wird-benotigt-1177426
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Juni 2018, 14:26:26
Zitat von: mark79 am 10 Juni 2018, 14:02:02
Entweder das orginale Gateway oder ein Zigbee Stick: https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-sniffer-devices
Würde dir ein CC2530 empfehlen, wegen der größeren Reichweite. Man muss diesen aber in beiden Fällen noch umflashen.

Der Vorteil daran ist, man benötigt das originale GW nicht, also ohne Xiaomi Cloud. Man kann mehr Geräte anbinden, ich glaube bis zu 50 und die Devices haben teilweise mehr Funktionen als mit dem org. Gateway. Und dazu kann man noch Ikea und Hue etc. anbinden: https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-devices

EDIT: Der Würfel ist im Moment auch noch im Angebot: https://www.mydealz.de/deals/xiaomi-aqara-cube-remote-controller-fur-6-aktionen-gateway-wird-benotigt-1177426

dank dir, ich habe mir das ganze Zeugs gerade bestellt .... jetzt heisst es warten.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Juni 2018, 14:38:53
MSwitch - Fhem SVN

ich habe mich heute entschlossen, das Modul MSwitch leider auch längerfristig nicht in das Fhem SVN zu übernehmen.
Ein Modul, welches in das SVN soll muss eine comandref beinhalten ( auch eine Englische Version ist Voraussetzung ).
Da dieses Modul ständig in der Weiterentwicklung ist und  der Funktionsumfang deutlich zu Gross ist, um ihn nur in der Commandref zu beschreiben habe ich angefangen das Wiki zu schreiben und versuche dieses auf dem laufenden zu halten , weiterhin versuche ich die modulinternen Hilfetexte permanent zu aktualisieren.

Da ich denke das das Wiki unverzichbar ist,  macht mir die zusätzliche nötige Aktualisierung der Commandref ( noch dazu in 2 Sprachen ) den doppelten und dreifachen  Arbeitsaufwand - und dazu habe ich, schlicht und ergreifend, derzeit keine Motivation ( die Zeit stecke ich lieber in das Modul ) .

von daher bleibt die derzeitige 'GIT' Lösung weiterhin so bestehen. Ich denke das ist für die User, die es gerne nutzen, und  da es sich ohnehin irgendwie um ein 'Nischenmodul ' handelt, eine nicht unüberwindbare Hürde.

Gruss Byte09

PS:seit der letzten Version ist im übrigen das komplette Einspielen einer RAW-Definition eines MSwitch Devices möglich und es muss insofern nicht mehr zwingend über ein Config-File eingespielt werden.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 10 Juni 2018, 16:13:05
Zitat von: Byte09 am 10 Juni 2018, 14:26:26
dank dir, ich habe mir das ganze Zeugs gerade bestellt .... jetzt heisst es warten.

gruss Byte09

Gern geschehen und ich bin schon gespannt, was du mit dem Würfel umsetzt ;)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Juni 2018, 16:13:23
Zitat von: mark79 am 10 Juni 2018, 12:42:09
Hallo Byte,

.......

Hi Mark,

warum triggerst du in deiner obigen Config 'GLOBAT' und filterst dann in der 'Whitelist' nur auf den Würfel ?
das ist deutlich systemlastiger , als wenn du direkt auf den Würfel triggern würdest .
Den Trigger auf GLOBAL zu setzen , würde ich nur dann machen , wenn ich in einem Devive gerne mehrere Trigger nutzen würde ( verschiedene Geräte  ).

gruss Byte09

edit: aber achtung wenn du das änderst . wenn du direkt auf ein Gerät triggerst , ist das event nur noch '2stellig' , also ohne gerätenamen . Das ist dann in den Conditions zu beachten !
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 10 Juni 2018, 16:40:21
Mhh gute Frage :D
Ich bin noch in der Lernphase und teste viel rum. Ich habe vorher noch nicht mit der Global und $EVENT Funktion gearbeitet.

Ich habe es aber jetzt umgestellt:
Trigger device: KU_Cube (a: t:XiaomiMQTTDevice)
[$EVENT] eq "action:rotate_right" AND [KU_MSwitch_Dummy:state] eq "KU_KODI"

Funktioniert auch :)

Ich werde das aber wohl noch umändern auf Free Cmd und dann noch ein TTS mit einbauen. Wo man eine Bestätigung erhält, auf welches Dummy Device (Kodi oder LED Schranklicht) es gerade umgeschaltet hat.

Noch eine Frage.. Kann man eigentlich auch bei...
execute 'on' commands only
execute 'off' commands only

auf beiden mit "*" triggern? und bei den zu schaltenen Devices mit "on" "off" arbeiten.
Also z.B. bei on volumedown und bei off auf volumedown?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 10 Juni 2018, 18:55:56
Zitat von: mark79 am 10 Juni 2018, 16:40:21
Mhh gute Frage :D
Ich bin noch in der Lernphase und teste viel rum. Ich habe vorher noch nicht mit der Global und $EVENT Funktion gearbeitet.

Ich habe es aber jetzt umgestellt:
Trigger device: KU_Cube (a: t:XiaomiMQTTDevice)
[$EVENT] eq "action:rotate_right" AND [KU_MSwitch_Dummy:state] eq "KU_KODI"

Funktioniert auch :)

Ich werde das aber wohl noch umändern auf Free Cmd und dann noch ein TTS mit einbauen. Wo man eine Bestätigung erhält, auf welches Dummy Device (Kodi oder LED Schranklicht) es gerade umgeschaltet hat.

Noch eine Frage.. Kann man eigentlich auch bei...
execute 'on' commands only
execute 'off' commands only

auf beiden mit "*" triggern? und bei den zu schaltenen Devices mit "on" "off" arbeiten.
Also z.B. bei on volumedown und bei off auf volumedown?
Bei den 'only' zweigen geht das triggern in beiden zweigen auf Wildcard '*'. In den beiden zweigen in denen das Device auch umschaltet 'switch mswitch Device and execute ...' geht es nicht .  Die Auswertung des events muss dann in den condition der Schaltzweige erfolgen.

Am besten das mswitch in den notifymode setzen , dann hast du eh nur noch die beiden zweigen , in denen das geht

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 12 Juni 2018, 16:22:53
Da ich ja gerne hätte, dass abends das Licht gedämmt ist, wenn es vom Bewegungsmelder eingeschaltet wird, habe ich wieder ein seperates MSwitch dafür angelegt, so wie es schonmal funktioniert hat (Hoffe ich habe da nichts vergessen). Aber aus irgendeinem Grund funktioniert es nicht mehr. Der On-for-Timer funktioniert, aber nicht der pct. Einzeln funktioniert es, zusammen aber nicht

#V V1.54
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,pct,no_action,20,,delay1,delay1,000000,000000,,,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,30,,delay1,delay1,000000,000000,,,0,0
#S .Device_Events -> no_trigger|state:motion
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> state:motion
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> Flur_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state: noMotion
#S state -> on
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Full
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Juni 2018, 17:53:14
Zitat von: Torsten_MG am 12 Juni 2018, 16:22:53
Da ich ja gerne hätte, dass abends das Licht gedämmt ist, wenn es vom Bewegungsmelder eingeschaltet wird, habe ich wieder ein seperates MSwitch dafür angelegt, so wie es schonmal funktioniert hat (Hoffe ich habe da nichts vergessen). Aber aus irgendeinem Grund funktioniert es nicht mehr. Der On-for-Timer funktioniert, aber nicht der pct. Einzeln funktioniert es, zusammen aber nicht

#V V1.54
#S .Device_Affected -> Flur_Lampe-AbsCmd1,Flur_Lampe-AbsCmd2
#S .Device_Affected_Details -> Flur_Lampe-AbsCmd1,pct,no_action,20,,delay1,delay1,000000,000000,,,0,0|Flur_Lampe-AbsCmd2,on-for-timer,no_action,30,,delay1,delay1,000000,000000,,,0,0
#S .Device_Events -> no_trigger|state:motion
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> state:motion
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> Flur_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state: noMotion
#S state -> on
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Full
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0


eweriss jetzt gerade nicht wie du es schonmal hattest, aber ich habe ähnlich probleme mit meinen dimmern gehabt ( konnte kein on-for-timer gleichzeitig mit dem pct auslösen ) . Ich habe es so gelöst , dass ich den dimmer nicht auf on-for-timer setze, sondern auf pct 20.  Mit einem zweiten Befehl für den Dimmer ( im selben MSwitch Device - auch im 'on' zweig ) setze ich den Dimmer dann zeitverzögert ( delay without conditioncheck ) wieder auf 'off' . Delay entspricht dann der Zeit , die das Licht anbleibt.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 12 Juni 2018, 17:58:13
Ich meine, ich hatte es damals genau so wie im oberen Post gemacht
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Juni 2018, 18:02:29
Zitat von: Torsten_MG am 12 Juni 2018, 17:58:13
Ich meine, ich hatte es damals genau so wie im oberen Post gemacht

gib mir doch bitte mal eine Raw - definition , incl aller beteiligten Geräte 'Dump "Probably associated with" too' , dann muss ich es nicht mit Dummys nachbauen.

Gruss Byte09


Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 12 Juni 2018, 18:23:37
@Torsten_MG

habe mich gerade nochmal reingelesen :
versuch mal statt on for timer folgenden Befehl zu setzen

set device pct 30 10
sollte den dimmer für 10 sekunden auf 30% schalten ( zumindest geht es bei meinem Homematic )

gruss Byte09

edit: die Ramptime könntest du durch die Angabe eines dritten wertes ändern . z.B: 30 10 0.1
dann dimmt er niocht langsam hoch , sondern erreicht den sollwert innerhalb 0.1 sekunden
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 12 Juni 2018, 19:21:31
Zitat von: Byte09 am 12 Juni 2018, 18:23:37
@Torsten_MG

habe mich gerade nochmal reingelesen :
versuch mal statt on for timer folgenden Befehl zu setzen

set device pct 30 10
sollte den dimmer für 10 sekunden auf 30% schalten ( zumindest geht es bei meinem Homematic )

gruss Byte09

edit: die Ramptime könntest du durch die Angabe eines dritten wertes ändern . z.B: 30 10 0.1
dann dimmt er niocht langsam hoch , sondern erreicht den sollwert innerhalb 0.1 sekunden

Funktioniert einwandfrei!

Sowohl in einem separaten MSwitch als auch in meinem zusammengefassten!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 13 Juni 2018, 18:43:33
Update auf 1.54 verfügbar:

Änderungen :
die Schaltzweige 'on...' und 'off...' wurden umbenannt in 'cmd1' und'cmd2' da die benennung doch zu verwirrung geführt hat und die Schaltzweige nicht zwangsläufig mit on und off verbunden sein müssen.

neue set befehle :

set MSwitch exec_cmd1 und exec_cmd2
die entsprechenden Schaltzweige werde ohne Eventprüfung sofort ausgeführt.
ACHTUNG in diesem Fall steht kein auswertbarebs Event zur Verfügung

Diverse interne Änderungen , insbesondere bei der Erzeugung der MSwitch Events ( reduziert ) .

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 13 Juni 2018, 18:52:00
@Andies

hier die Rawdefinition , wie besprochen.

Ich hoffe, ich habe bei den Devices überall deine Namensgebung getroffen , sonst wird es nicht gehen.

Funktion :

es wird auf 2 Geräte getriggert,  Fenster offen oder zu und Temperatur.
bei einer Änderung wird geprüft ob fenster offen und temp < 12 Grad . In diesem Fall wird eine Mail ausgegeben und und der CMD1 Zweig wird nach 10 minuten erneut abgearbeitet . Sind die bedingungen nicht erfüllt, wird cmd1 nicht erneut abgearbeitet.

im cmd2 prüfe ich nur auf die temperatur bei entsprechendem event , ist diese unter 12 grad, wird sofort cmd1 ausgelöst ( prüfung auf zustand offen und < 12 grad )

Zustandsänderung des Fensters (cmd1) führt direkt den cmd1 aus incl Prüfung .ö

Mailangaben musst du an dich anpassen ! Das Device wird im Raum MSwitchtest angelegt.

Bitte MSwitch erst Updaten ! ... bei MSwitchdevices , die sich seöber aufrufen und ändern bitte unbedingt Safemode = 1 setzen !

Gruss Byte09

defmod TMail MSwitch Schlafzimmerfenster    # FreeCmd TMail
attr TMail MSwitch_Debug 0
attr TMail MSwitch_Delete_Delays 1
attr TMail MSwitch_Expert 1
attr TMail MSwitch_Extensions 0
attr TMail MSwitch_Help 0
attr TMail MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr TMail MSwitch_Include_Devicecmds 1
attr TMail MSwitch_Include_MSwitchcmds 0
attr TMail MSwitch_Include_Webcmds 1
attr TMail MSwitch_Inforoom MSwitch
attr TMail MSwitch_Lock_Quickedit 1
attr TMail MSwitch_Mode Notify
attr TMail MSwitch_Safemode 1
attr TMail room MSwitchtest

setstate TMail active
setstate TMail 2018-06-13 15:33:34 .Device_Affected FreeCmd-AbsCmd1,TMail-AbsCmd1
setstate TMail 2018-06-13 18:49:08 .Device_Affected_Details FreeCmd-AbsCmd1,cmd,cmd,{DebianMail("xxx\@web.de"##"Fenster offen!"##"Das Fenster im Schlafzimmer ist seit zwölf Minuten offen! Dort sind es jetzt ".sprintf("%.0f°C"##ReadingsVal("Schlafzimmer"##"Temperature"##""))." und das ist KALT. Bitte schließen."##"")},,delay1,delay1,000000,000000,[Schlafzimmer:Temperature]~<~12~AND~[Schlafzimmerfenster:state]~eq~"open",,0,0|TMail-AbsCmd1,exec_cmd1,exec_cmd1,,,delay0,delay1,001000,000000,[Schlafzimmer:Temperature]~<~12~AND~[Schlafzimmerfenster:state]~eq~"open",[Schlafzimmer:Temperature]~<~12~AND~[Schlafzimmerfenster:state]~eq~"open",0,0
setstate TMail 2018-06-13 18:20:49 .Device_Events testproxy:off|myBroker:connection:connecting|TMail:state:active
setstate TMail 2018-06-13 13:56:59 .First_init done
setstate TMail 2018-06-13 18:08:01 .Trigger_Whitelist Schlafzimmer,Schlafzimmerfenster
setstate TMail 2018-06-13 17:43:44 .Trigger_cmd_off Schlafzimmer:Temperature:*
setstate TMail 2018-06-13 17:43:44 .Trigger_cmd_on Schlafzimmerfenster:state:open
setstate TMail 2018-06-13 18:08:01 .Trigger_condition
setstate TMail 2018-06-13 17:43:44 .Trigger_off no_trigger
setstate TMail 2018-06-13 17:43:44 .Trigger_on no_trigger
setstate TMail 2018-06-13 18:08:01 .Trigger_time
setstate TMail 2018-06-13 13:56:59 .V_Check V 0.3
setstate TMail 2018-06-13 17:59:32 EVENT Schlafzimmer:Temperature:13
setstate TMail 2018-06-13 17:59:32 EVTFULL Schlafzimmer:Temperature:13
setstate TMail 2018-06-13 17:59:32 EVTPART1 Schlafzimmer
setstate TMail 2018-06-13 17:59:32 EVTPART2 Temperature
setstate TMail 2018-06-13 17:59:32 EVTPART3 13
setstate TMail 2018-06-13 17:59:32 Exec_cmd
setstate TMail 2018-06-13 18:20:46 Trigger_device all_events
setstate TMail 2018-06-13 17:43:44 Trigger_log on
setstate TMail 2018-06-13 17:59:32 last_event Schlafzimmer:Temperature:13
setstate TMail 2018-06-13 18:50:11 state active


EDIT : wäre auch möglich gewesen alles in einem Schaltzweig zusammenzufassen , aber so ist es glaube ich einfacher, nachzuvollziehen, was passiert.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 14 Juni 2018, 08:40:02
Zitat von: Byte09 am 13 Juni 2018, 18:43:33
die Schaltzweige 'on...' und 'off...' wurden umbenannt in 'cmd1' und'cmd2' da die benennung doch zu verwirrung geführt hat und die Schaltzweige nicht zwangsläufig mit on und off verbunden sein müssen.

Wenn ich ein Update mache, funktionieren denn noch die alten Configs also mit on/off? Oder muss man das überall umschreiben?

Ich habe noch ein Problem mit dem Datum/Zeit Trigger bzw. in Verwendung mit "on condition": [5:30-8:00|12345]
Diese condition sollte eigentlich nur werktags und morgens zwischen 5:30-8:00 eintreffen.
Das setzt die Kodi Lautstärke auf 61 und schaltet auf Sat1 (openchannelid 117) um.

Aber es schaltet sporadisch zu anderen Zeiten. Gestern z.B. um 17:42, schaltet Kodi einfach auf Sat1 um.
Das ist schon öfters passiert. Habe ich da irgendwo ein Fehler drin? Weil ganz früher war das nicht so.

Hier mal das Log:
2018-06-13 17:42:33 MSwitch KU_TV last_event: KU_KODI-AbsCmd2_conditionon
2018-06-13 17:42:33 KODI KU_KODI openchannelid 117
2018-06-13 17:42:33 MSwitch KU_TV Exec_cmd: set KU_KODI openchannelid 117
2018-06-13 17:42:34 KODI KU_KODI jsonResponse: {"jsonrpc":"2.0","method":"Player.OnResume","params":{"data":{"item":{"channeltype":"tv","id":111,"title":"Kabel1","type":"channel"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"jsonrpc":"2.0","method":"Player.OnPlay","params":{"data":{"item":{"channeltype":"tv","id":117,"title":"Sat.1","type":"channel"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}
2018-06-13 17:42:35 KODI KU_KODI currentTitle:
2018-06-13 17:42:35 KODI KU_KODI label:
2018-06-13 17:42:35 KODI KU_KODI type:
2018-06-13 17:42:35 KODI KU_KODI year:
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":249,"jsonrpc":"2.0","result":{"muted":false,"name":"Kodi","version":{"major":18,"minor":0,"revision":"cd6c3fa","tag":"alpha","tagversion":"2"},"volume":71}}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":250,"jsonrpc":"2.0","result":{"fullscreen":true,"skin":{"id":"skin.estuary","name":"Estuary"},"stereoscopicmode":{"label":"Deaktiviert","mode":"off"}}}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":"251","jsonrpc":"2.0","result":[{"playerid":1,"type":"video"}]}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":"252","jsonrpc":"2.0","result":[{"playerid":1,"type":"video"}]}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"jsonrpc":"2.0","method":"Player.OnAVChange","params":{"data":{"item":{"channeltype":"tv","id":117,"title":"Sat.1","type":"channel"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":253,"jsonrpc":"2.0","result":{"partymode":false,"repeat":"off","shuffled":false,"speed":1,"time":{"hours":0,"milliseconds":0,"minutes":12,"seconds":35},"totaltime":{"hours":0,"milliseconds":0,"minutes":30,"seconds":0}}}
2018-06-13 17:42:35 KODI KU_KODI time: 00:12:35.000
2018-06-13 17:42:35 KODI KU_KODI totaltime: 00:30:00.000
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"id":254,"jsonrpc":"2.0","result":{"item":{"id":117,"label":"Sat.1","thumbnail":"image://https%3a%2f%2fmedia.cinergy.ch%2ft_station%2f360%2ficon320_dark.png/","title":"Schicksale - und plötzlich ist alles anders","type":"channel","year":2010}}}
2018-06-13 17:42:35 KODI KU_KODI year: 2010
2018-06-13 17:42:35 KODI KU_KODI thumbnail: image://https%3a%2f%2fmedia.cinergy.ch%2ft_station%2f360%2ficon320_dark.png/
2018-06-13 17:42:35 KODI KU_KODI currentTitle: Schicksale - und plötzlich ist alles anders
2018-06-13 17:42:35 KODI KU_KODI label: Sat.1
2018-06-13 17:42:35 KODI KU_KODI type: channel
2018-06-13 17:42:35 KODI KU_KODI id: 117
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"jsonrpc":"2.0","method":"Player.OnAVChange","params":{"data":{"item":{"channeltype":"tv","id":117,"title":"Sat.1","type":"channel"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}
2018-06-13 17:42:35 KODI KU_KODI jsonResponse: {"jsonrpc":"2.0","method":"Player.OnAVStart","params":{"data":{"item":{"channeltype":"tv","id":117,"title":"Sat.1","type":"channel"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}


Readings:
Readings
EVENT
FreeCmd-AbsCmd1_conditionon
2018-06-04 06:07:27
EVTFULL
myBroker:FreeCmd-AbsCmd1_conditionon
2018-06-04 06:07:27
EVTPART1
myBroker
2018-06-04 06:07:27
EVTPART2
FreeCmd-AbsCmd1_conditionon
2018-06-04 06:07:27
Exec_cmd
set KU_KODI openchannelid 117
2018-06-13 17:42:33
Trigger_log
off
2018-06-04 22:42:00
last_event
KU_KODI-AbsCmd2_conditionon
2018-06-13 17:42:33
state
on
2018-06-13 17:29:13



Viele Grüße
Mark
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 14 Juni 2018, 08:44:59
Hi Mark,

Das update kannst du machen , es sind nur die Bezeichnungen die sich geändert haben.

Zum Rest .... das schaue ich mir heute abend an ... den Screenshot sehe ich auf dem Handy nur verwaschen dank tapatalk .... , wenn ich von der Arbeit komme und melde mich dann

Stell mir bitte mal den config file des mswitch devices hier ein.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 14 Juni 2018, 08:55:51
Nachtrag :

Mach die Zeitangaben Bitte mal in diesem Format hh:mm statt h:mm.

Aber jetzt nur eine Vermutungen.

Gruss Bytr09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: mark79 am 14 Juni 2018, 08:59:19
Zitat von: Byte09 am 14 Juni 2018, 08:44:59
Hi Mark,

Das update kannst du machen , es sind nur die Bezeichnungen die sich geändert haben.

Zum Rest .... das schaue ich mir heute abend an ... den Screenshot sehe ich auf dem Handy nur verwaschen dank tapatalk .... , wenn ich von der Arbeit komme und melde mich dann

Stell mir bitte mal den config file des mswitch devices hier ein.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Hallo Byte09,

ahh ok nur die Bezeichnung, dann kann ich sorglos ein update machen, danke. :)

Die Config hänge ich an, ich habe aber mittlerweile ein "Probably associated with" (KU_morgens_motion) gelöscht, falls das wichtig ist. Das war nur ein leeres MSwitch Device.
#V V1.54
#S .Device_Affected -> FreeCmd-AbsCmd1,KU_KODI-AbsCmd1,KU_KODI-AbsCmd2,KU_TV_Sonoff-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{system "/opt/fhem/script/KU_KodiTV.sh&"},{system~"/opt/fhem/script/KU_KodiTV.sh&"},delay0,delay1,000013,000000,[KU_KODI.state]~ne~"opened",,0,0|KU_KODI-AbsCmd1,volume,shutdown,61,,delay1,delay1,000030,000000,[5.30-8.00(DAYS)12345],,0,0|KU_KODI-AbsCmd2,openchannelid,no_action,117,,delay1,delay1,001320,000000,[5.30-8.00(DAYS)12345],,0,0|KU_TV_Sonoff-AbsCmd1,ON,OFF,,,delay1,delay1,000000,000030,,,0,0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> undef
#S .V_Check -> V 0.3
#S Trigger_device -> undef
#S Trigger_log -> off
#S last_event -> KU_KODI-AbsCmd1_conditionon
#S state -> off
#A alias -> TV Küche
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 0
#A DbLogExclude -> .*
#A group -> TV
#A room -> 2_Kueche,MSwitch
#A MSwitch_Help -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Extensions -> 0
#A disable -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A icon -> rc_TV
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A verbose -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Debug -> 0
#A userattr -> lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0


Die Zeitangaben werde ich ändern.. werde berichten, wenn es noch mal auftritt.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 14 Juni 2018, 16:13:35
Zitat von: Byte09 am 13 Juni 2018, 18:52:00
@Andies

hier die Rawdefinition , wie besprochen.
Vielen, vielen Dank. Ich muss aber leider einiges nachfragen, weil das genau die Dinge sind, die ich nicht kapiere (und die ich gern auch in dem Wiki eintrage). Also mal los:
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 14 Juni 2018, 16:45:36
Zitat von: andies am 14 Juni 2018, 16:13:35
Vielen, vielen Dank. Ich muss aber leider einiges nachfragen, weil das genau die Dinge sind, die ich nicht kapiere (und die ich gern auch in dem Wiki eintrage). Also mal los:

  • Warum wird als device GLOBAL genommen (mit Whiteliste und zwei devices) und nicht Schlafzimmerfenster alleine? Denn nur das Fenster soll doch etwas auslösen?

  • trigger details enthält jetzt zwei cmds. Sind das die Kommandos, die früher on und off hießen? Also  'cmd1' wird vom rechts davon stehenden trigger ausgelöst, korrekt?

    Rein theoretisch könnte man das auch auf mehrere erweitern, wenn man denn das für sinnvoll hielte - richtig?
  • cmd1 und cmd2 sind erst einmal unabhängig voneinander? Oder kommt cmd2 nur dann, wenn cmd1 ausgelöst wurde?
  • Die eigentlichen Kommandos werden unter FreeCmd definiert, richtig? Aber wieso fehlt da cmd2? Und wieso ist cmd2 nicht SchlafzimmerfensterMail?

Hi Andies,

zu 1.
ja, das ist richtig. ich wollte damit nur vermeiden , das wenn das fenster offen ist , alle 10 minuten das MSwitch nachschauen muss, wie denn nun die Temperatur ist , so wird nur dann ausgelöst , wenn auch die temperatur unter die 12 grad fällt. nur wenn das der fall ist , fällt das MSwitch in den 10 minuten tournuss, um die mail zu senden . Trifft eine von den beiden Bedingungen nicht mehr zu , findet keine weiteres intervall mehr statt.

Ausserdem ist nur so gewährleistet , das wenn das Fenster geöffnet ist und die Temperatur unter 12 grad fällt sofort benachrichtigt wird. Andernfalls könnte es passieren, das erst ( im maximalfall ) 10 minuten später benachrichtigt wird.

zu 2.
genau so ist es  ;)

ja, das kann man beliebig erweitern . cmd1 und cmd2 sindunabhängig und werden durch den jeweils definierten trigger ausgelöst.

das cmd2 triggert in diesem Fall nur auf eine statusänderung der Temperatur und startet im <12 grad fall sofort cmd1 ( dort wird dann geprüft ob beide bedingungen vorliegen , ggf. die mail gesendet und ein erneutes ausführen von cmd1 gesetzt ( wenn beide bedingungen erfüllt sind )

ist eine bedingung nicht mehr erfüllt , wird erst wieder gestartet durch definierten Trigger .

Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 14 Juni 2018, 20:56:30
OK, ins Wiki übernommen. Noch eine Nachfrage zu dem unteren Teil im Webinterface. FreeCmd ist das eigentlich auszulösende Kommando? Aber warum steht das nur in cmd1 und nicht in cmd2?

Ich überlege auch, ob der device-help in der Datei nicht vielleicht besser einen Link auf den Wiki enthält? Soll ich das mal anpassen und Dir posten?

Noch eine Frage. Ich habe ganz viele Logeinträge:
2018.06.14 19:25:06 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:06 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2

Ist das normal?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 14 Juni 2018, 22:06:03
Zitat von: andies am 14 Juni 2018, 20:56:30
OK, ins Wiki übernommen. Noch eine Nachfrage zu dem unteren Teil im Webinterface. FreeCmd ist das eigentlich auszulösende Kommando? Aber warum steht das nur in cmd1 und nicht in cmd2?

Ich überlege auch, ob der device-help in der Datei nicht vielleicht besser einen Link auf den Wiki enthält? Soll ich das mal anpassen und Dir posten?

Noch eine Frage. Ich habe ganz viele Logeinträge:
2018.06.14 19:25:06 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:06 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:21 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Notif: Befehlsausfüehrung ->    4216
2018.06.14 19:25:36 3: SchlafzimmerfensterMail MSwitch_Restartcm: Befehlsausfuehrung ->    4222
2

Ist das normal?


muss ich mir morgen anschauen , was es mit den logs auf sich hat . stell das verbose solange mal auf 2 oder 1, das es dir das log nicht zumüllt. ist aber nichts dramatisches.

klar, kannst du mir gerne schicken.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 16 Juni 2018, 17:49:22
Zitat von: andies am 19 Mai 2018, 21:34:20
So, hier kommen mal meine ersten Gehversuche mit Hilfe. Du musst, Thomas, den Text in dem Codeblock einfach nach der 1 am (derzeitigen) Ende des Modulfiles hinzufügen. Danach erscheinen ein paar Dinge, die auch im Wiki und so stehen, unter "device specific help". Englisch schaffe ich momentan nicht, vielleicht ist einer schneller.
Ich habe den Text angepasst. Die Änderungen sind jetzt: Es stehen eher allgemeine Dinge da, es wird auf die vielen Hilfebuttons im Modul selber und vor allem auf den Wiki-Artikel verwiesen. Letzterer kann dann unabhängig vom Modul bearbeitet werden.

Ich hätte auch noch ein, zwei Tipps bei den Hilfetexten im Modul selber. Nur weiß ich nicht, wie ich das sinnvollerweise mitteilen soll. Ich meine: Wenn ich da ein falsches Anführungszeichen mache und Du fügst das ein, geht schon gar nichts mehr  :-\  Also wenn Du da eine Idee hast...



=pod
=item device
=item summary    controls several devices using a trigger device
=item summary_DE kontrolliert mehrere Geraete mit Hilfe eines Trigger-Geraetes
=begin html
=end html
=begin html_DE

<!-- ================================ -->
<a name="MSwitch"></a>
<h3>MSwitch</h3>

<ul>
<b>&Uuml;bersicht</b> <br><br>
MSwitch ist ein Hilfsmodul. Es erlaubt das gleichzeitige Schalten von mehreren devices. Weitere Abhängigkeiten und Bedingungen wie ereignisgesteuertes und/oder zeitgesteuertes Schalten einzelner devices sind einstellbar.<br>

Das define eines MSwitch Devices generiert lediglich eine 'leere H&uuml;lle'. Alle relevante Einstellungen werden in Readings und/oder Hashes gespeichert. Daher stehen relevanten Daten nicht in der fhem.cfg! Vielmehr finden sich diese Daten in der Datei fhem.save (die Speicherung erfolgt durch den Befehl Fhemsave).

<br><br>

<b>Hilfe</b> <br><br>
Derzeit sind zwei Hilfemöglichkeiten implementiert. Das Attribut

<code>attr &lt;name&gt; MSwitch_Help 1 </code><br>
schaltet Hilfebuttons zu den einzelnen Eingabefeldern an oder aus. Die dort angegebenen Hilfen sind sehr umfangreich.<br>
    <br>

Alternativ findet man auf der Wiki-Seite des Moduls weitere <a href="https://wiki.fhem.de/wiki/MSwitch.pm">Hinweise</a>.
</ul>
<!-- ================================ -->
=end html_DE
=cut

[/quote]
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 16 Juni 2018, 18:11:47
Zitat von: Byte09 am 13 Juni 2018, 18:52:00
@Andies

hier die Rawdefinition , wie besprochen.
Ich habe das jetzt ein wenig anders definiert, kannst Du mal drüberschauen:

#V V1.54
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set TelegramBot _msg Schlafzimmerfenster offen[S]{DebianMail("mail@adresse.com"##"Fenster offen!"##"der Roman"##"/opt/fhem/www/snapshots/SchlafzimmerFensterOffen.jpg")},,delay1,delay1,001200,000000,,,600,720
#S .Device_Events -> Schlafzimmerfenster:state:open|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> Schlafzimmerfenster
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> Schlafzimmerfenster:state:open
#S .Trigger_condition -> [BresserTemeo_1.temperature]~<~12
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> state:Hum:37.20Tem:27.20
#S state -> active
#A verbose -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Notify
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Safemode -> 1
#A room -> MSwitchtest
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 1
#A MSwitch_Debug -> 0

Ich lasse nur auf offenes Fenster triggern und löse dann aus, wenn die Außentemperatur unter 12 Grad ist. Und "Repeats" ist was genau? Also was ist der Unterschied zu Repeatdelay? Oder ist das Anzahl der Repeats - was wäre dann unendlich?

Letzte Frage: Ich wollte bei Auslösung noch die Heizung runterdrehen, das füge ich einfach hinzu. Das könnte ich doch so machen, dass bei Fenster-zu die Heizung wieder hochfährt, oder?
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 16 Juni 2018, 19:02:12
Zitat von: andies am 16 Juni 2018, 18:11:47
Ich habe das jetzt ein wenig anders definiert, kannst Du mal drüberschauen:

#V V1.54
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set TelegramBot _msg Schlafzimmerfenster offen[S]{DebianMail("mail@adresse.com"##"Fenster offen!"##"der Roman"##"/opt/fhem/www/snapshots/SchlafzimmerFensterOffen.jpg")},,delay1,delay1,001200,000000,,,600,720
#S .Device_Events -> Schlafzimmerfenster:state:open|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> Schlafzimmerfenster
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> Schlafzimmerfenster:state:open
#S .Trigger_condition -> [BresserTemeo_1.temperature]~<~12
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> state:Hum:37.20Tem:27.20
#S state -> active
#A verbose -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Notify
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Safemode -> 1
#A room -> MSwitchtest
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 1
#A MSwitch_Debug -> 0

Ich lasse nur auf offenes Fenster triggern und löse dann aus, wenn die Außentemperatur unter 12 Grad ist. Und "Repeats" ist was genau? Also was ist der Unterschied zu Repeatdelay? Oder ist das Anzahl der Repeats - was wäre dann unendlich?

Letzte Frage: Ich wollte bei Auslösung noch die Heizung runterdrehen, das füge ich einfach hinzu. Das könnte ich doch so machen, dass bei Fenster-zu die Heizung wieder hochfährt, oder?

das geht so in die hosen.
zum ersten wird nur geprüft , wenn du das fenster öffnest und es unter 12 grad ist . wenn es zu diesem zeitpunkt wärmer ist , findet keine weitere prüfung mehr statt, selbst wenn das wasser gerfiert.  ;D

und mit den reppeats hast du dir eine gemeine schleife eingebaut , die nichtmal durch den safemode erkannt wird . die wirst du nur durch einen Fhemneustart unterprechen können, wenn einmal ausgelöst . Ansonsten bekommst du 600 mal die mitteilung über bot, alle 720 sekunden

wenn du lust hast , gib mir doch mal per pm deine telenummer, dann rufe ich dich mal an - ist einfacher.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 16 Juni 2018, 21:30:24
Ich glaube, ich habe es kapiert. Repeats ist unabhängig von der Condition. Und wenn ich ehrlich bin: Da reicht eine Nachricht, meine Frau wird sonst im Dreieck springen. Also mache ich das so:

#V V1.54
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{fhem("set TelegramBot _msg Schlafzimmerfenster offen")[S]DebianMail("ich@mail.de"##"Fenster offen!"##"Der Roman"##"/opt/fhem/www/snapshots/SchlafzimmerFensterOffen.jpg")},,delay1,delay1,001200,000000,,,0,0
#S .Device_Events -> SchlafzimmerfensterMail:state:active|Schlafzimmerfenster:state:set_reset|Schlafzimmerfenster:state:closed|Schlafzimmerfenster:Activity:alive|Schlafzimmerfenster:state:open|Flic:state:connected|ActionDetector:state:alive:1 dead:0 unkn:0 off:0|Mosquitto:connection:connecting|VCCU:state:WLAN_HmUART:disconnected,|Schlafzimmerfenster:contact:closed (to broadcast)|Schlafzimmerfenster:trigger_cnt:64|Schlafzimmerthermostat:Activity:alive|Flic:state:disconnected|Schlafzimmerfenster:NACK|Schlafzimmerfenster:battery:ok|no_trigger|ActionDetector:state:alive:2 dead:0 unkn:0 off:0|Schlafzimmerfenster:sabotageError:off|Schlafzimmerfenster:state:Nack|Schlafzimmerfenster:alive:yes|Schlafzimmerfenster:trigger_cnt:63|Schlafzimmerfenster:trigDst_broadcast:noConfig|Schlafzimmerfenster:trigger_cnt:62|Schlafzimmerfenster:contact:open (to broadcast)
#S .First_init -> done
#S .Trigger_Whitelist -> Schlafzimmerfenster
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> Schlafzimmerfenster:state:open
#S .Trigger_condition -> ([Schlafzimmerfenster.state]~eq~"open")~AND~([BresserTemeo_1.temperature]<12)
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> trigger_cnt:64
#S state -> active
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A room -> hidden
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Mode -> Notify
#A MSwitch_Help -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Safemode -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A verbose -> 1
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 17 Juni 2018, 06:34:32
Zitat von: andies am 16 Juni 2018, 21:30:24
Ich glaube, ich habe es kapiert. Repeats ist unabhängig von der Condition. Und wenn ich ehrlich bin: Da reicht eine Nachricht, meine Frau wird sonst im Dreieck springen. Also mache ich das so:

#V V1.54
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{fhem("set TelegramBot _msg Schlafzimmerfenster offen")[S]DebianMail("ich@mail.de"##"Fenster offen!"##"Der Roman"##"/opt/fhem/www/snapshots/SchlafzimmerFensterOffen.jpg")},,delay1,delay1,001200,000000,,,0,0
#S .Device_Events -> SchlafzimmerfensterMail:state:active|Schlafzimmerfenster:state:set_reset|Schlafzimmerfenster:state:closed|Schlafzimmerfenster:Activity:alive|Schlafzimmerfenster:state:open|Flic:state:connected|ActionDetector:state:alive:1 dead:0 unkn:0 off:0|Mosquitto:connection:connecting|VCCU:state:WLAN_HmUART:disconnected,|Schlafzimmerfenster:contact:closed (to broadcast)|Schlafzimmerfenster:trigger_cnt:64|Schlafzimmerthermostat:Activity:alive|Flic:state:disconnected|Schlafzimmerfenster:NACK|Schlafzimmerfenster:battery:ok|no_trigger|ActionDetector:state:alive:2 dead:0 unkn:0 off:0|Schlafzimmerfenster:sabotageError:off|Schlafzimmerfenster:state:Nack|Schlafzimmerfenster:alive:yes|Schlafzimmerfenster:trigger_cnt:63|Schlafzimmerfenster:trigDst_broadcast:noConfig|Schlafzimmerfenster:trigger_cnt:62|Schlafzimmerfenster:contact:open (to broadcast)
#S .First_init -> done
#S .Trigger_Whitelist -> Schlafzimmerfenster
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> Schlafzimmerfenster:state:open
#S .Trigger_condition -> ([Schlafzimmerfenster.state]~eq~"open")~AND~([BresserTemeo_1.temperature]<12)
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> all_events
#S Trigger_log -> on
#S last_event -> trigger_cnt:64
#S state -> active
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A room -> hidden
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Mode -> Notify
#A MSwitch_Help -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Safemode -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A verbose -> 1


zumindest ist kein grundsätzlicher fehler drinnen, aber:

er löst die message nur einmal aus , in dem moment , wenn du das fenster öffnest , weil nur dann das even t'state:open' eintritt. ist in diesem moment die temperatur < 12 grad, bekommst du 12 minuten später ( delay 12 )  die nachricht, wenn dann das Fenster noch auf ist und die temp immer noch < 12 grad ist ( delay with cond-check ).

wenn das Fenster offen ist , und die temperatur dann fällt ( unter 12 Grad ) wird kein Event getriggert und du wirst nicht benachrichtigt.

grundsätzlich: wenn nur auf ein device getriggert wird, sollte das device direkt angewählt werden , und nicht über GLOBAL und dann per Whitelist gefiltert , da das Triggern auf GLOBAL deutlich systemlastiger ist .

den telegram_bot musst du nicht über freecmd ansprechen ( geht aber auch ) , er sollte in der liste der 'affected devices' direkt verfügbar sein ?!

Ich melde mich nachher bei dir.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: andies am 17 Juni 2018, 08:44:07
Die Temperatur, die ich messe, ist die Außentemperatur - das habe ich nicht klar genug gesagt.

Liegt aber auch daran, weil ich gar nicht wüsste, wie ich dass mit der Innentemperatur machen könnte  ;)
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 17 Juni 2018, 10:18:44
Zitat von: andies am 17 Juni 2018, 08:44:07
Die Temperatur, die ich messe, ist die Außentemperatur - das habe ich nicht klar genug gesagt.

Liegt aber auch daran, weil ich gar nicht wüsste, wie ich dass mit der Innentemperatur machen könnte  ;)

Ah ...ok, ich ging die ganze zeit von der innentemperatur aus. Wäre aber trotzdem besser, wenn du die benachrichtigung auch dann erhäst, wenn die aussentemperatur fällt , und das Fenster bereits offen ist.
ist ja nur eine kleinigkeit, nimm einfach den temperaturfühler wieder mit als trigger auf , den rest kannst du dann ja so lassen.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 24 Juni 2018, 12:35:49
Bin bis jetzt super begeistert mit dem Modul, Super gemacht!!!

Jetzt habe ich noch eine Sache die gerne damit machen möchte weiß aber nicht ob das geht, und wenn ja, wie ich es umsetze.

Hier mein bisheriger aufbau:

Ich habe 3 at´s die wie folgt aufgebaut sind:

Frühschicht
*13:55:00 {if ((ReadingsVal("vKalender_Schicht","t_001_summary","") eq "Frühschicht") && (ReadingsVal("vKalender_Schicht","c-today","") eq "1")) {Fahrtstrecke()}}

Spätschicht
*21:55:00 {if ((ReadingsVal("vKalender_Schicht","t_001_summary","") eq "Spätschicht") && (ReadingsVal("vKalender_Schicht","c-today","") eq "1")) {Fahrtstrecke()}}

Nachtschicht
*05:55:00 {if ((ReadingsVal("vKalender_Schicht","t_001_summary","") eq "Nachtschicht") && (ReadingsVal("vKalender_Schicht","c-today","") eq "1")) {Fahrtstrecke()}}

{Fahrtstrecke()}
sub
Fahrtstrecke()
{
my @Strecke1 = "";
my @Strecke1a = "";
my @Strecke1b = "";
my @Strecke2 = "";
my @Strecke2a ="";
my @Strecke2b ="";

@Strecke1 =  ReadingsVal("Fahrtzeit_Arbeit","duration_in_traffic","");
@Strecke2 =  ReadingsVal("Arbeit_ohne_Autobahn","duration_in_traffic","");
@Strecke1a = split(/ /,@Strecke1);
@Strecke2a = split(/ /,@Strecke2);

if (@Strecke2a[0]<@Strecke1a[0])
{
fhem("set teleBot send Alternative Strecke @Strecke2")}
else
{
fhem("set teleBot send Standard Strecke @Strecke1")}
}


Damit sende ich mir zum feierabend per Telegramm, welche Strecke die schnellere ist.

Funktioniert so, aber ich würde gerne mein System etwas aufräumen.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Juni 2018, 13:55:33
Kurz da Handy. ..

Die 3 at kannst du in jedem Fall in ein mswitch packen . ... im Grunde mit gleichem Inhalt ( mswitch Syntax halt )..


Theoretisch kannst du auch die ganze sub in das gleiche mswitch in ein freecmd packen ... muss ich aber selber probieren ob er das frisst .

Melde mich , wenn ich Zuhause bin .

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Juni 2018, 15:09:43
@Torsten_MG

ich habe dir jetzt nur mal schnell die 3 at in ein MSwitch zusammengefasst. Ich hoffe , dass die devicenamen alle stimmen. Das ganze habe ich nicht getestet , hätte sonst nen haufen dummys anlegen müssen. probier einfach mal ob es geht . im zweiten schritt könnte man die gasamte sub dann mit in das device übernehmen.

gruss Byte09


Zitat#V V1.61
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{Fahrtstrecke()},,delay1,delay1,000000,000000,([13.50-13.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Frühschicht")~OR~([21.50-21.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Spätschicht")~OR~([05.50-05.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Nachtschicht"),,0,0
#S .Device_Events -> no_trigger|state:on|state:off
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> state:off
#S .Trigger_cmd_on -> state:on
#S .Trigger_condition -> [vKalender_Schicht.c-today"]~eq~"1"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[13:55][21:55][05:55]~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> state:off
#S state -> active
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A room -> Test
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Extensions -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Condition_Time -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Safemode -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 24 Juni 2018, 18:41:03
Danke erstmal, bin gespannt ob´s funktioniert. Werde es morgen früh sehen, da ich gleich Nachtschicht habe.

Verstehe ich das mit dem Trigger device richtig, dass immer zu den Zeiten im execute cmd die Trigger condition abgefragt wird und wenn diese übereinstimmt, dann wird der device action ausgelöst
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 24 Juni 2018, 18:49:18
Da ist aber ein Fehler drin, siehe Foto. Da ist ein " zu viel
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Juni 2018, 19:51:18
Zitat von: Torsten_MG am 24 Juni 2018, 18:41:03
Danke erstmal, bin gespannt ob´s funktioniert. Werde es morgen früh sehen, da ich gleich Nachtschicht habe.

Verstehe ich das mit dem Trigger device richtig, dass immer zu den Zeiten im execute cmd die Trigger condition abgefragt wird und wenn diese übereinstimmt, dann wird der device action ausgelöst

ja,

zu den 3 betreffenden zeiten
Zitat[13:55][21:55][05:55]
wird der cmdzweig 1 ausgelöst , aber nur dann, wenn [vKalender_Schicht:c-today] eq "1"

in der condition wird dann geprüft, ob, und welcher zeitraum/reading Kombination passt :
Zitat([13:50-13:59] AND [vKalender_Schicht:t_001_summary] eq "Frühschicht") OR ...

passt der auslüsende zeitpunkt zu einer der 3 kombinationen , wird der befehl
Zitat{Fahrtstrecke()}
ausgeführt.

aber wie gesagt, ich habe es selber nicht getestet und mit dem Fehler hast du natürlich recht , ist "copy and paste" geschuldet   ;)

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 25 Juni 2018, 06:13:08
Zitat von: Torsten_MG am 24 Juni 2018, 18:41:03
Danke erstmal, bin gespannt ob´s funktioniert. Werde es morgen früh sehen, da ich gleich Nachtschicht habe.

Verstehe ich das mit dem Trigger device richtig, dass immer zu den Zeiten im execute cmd die Trigger condition abgefragt wird und wenn diese übereinstimmt, dann wird der device action ausgelöst

falls es bis hierhin funktioniert - etwas erweitert:

manuelle anfrage über telebot möglich , mit der Anfrage "Weg" über telegram.
schickt dir den besten weg , falls du mal abweichend der vorgegebenen zeiten fährst.

kurz langeweile gehabt  ;)
gruss Byte09

#V V1.6
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{Fahrtstrecke()},{Fahrtstrecke()},delay1,delay1,000000,000000,([13.50-13.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Frühschicht")~OR~([21.50-21.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Spätschicht")~OR~([05.50-05.59]),,0,0
#S .Device_Events -> msgText:Weg|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> msgText:Weg
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> [vKalender_Schicht.c-today]~eq~"1"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[13:55][21:55][05:55][[05:58]]~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> teleBot
#S Trigger_log -> off
#S last_event -> state:off
#S state -> active
#A MSwitch_Debug -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Notify
#A MSwitch_Help -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Safemode -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Webcmds -> 0
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Juni 2018, 06:34:11
Guten Morgen, sieht erstmal gut aus. Um 5:55Uhr kam die Nachricht per Telegramm. Den Zusatz schau ihr mir heute Nachmittag an, gehe jetzt erstmal schlafen.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Juni 2018, 16:26:08
Zitat von: Byte09 am 25 Juni 2018, 06:13:08
falls es bis hierhin funktioniert - etwas erweitert:

manuelle anfrage über telebot möglich , mit der Anfrage "Weg" über telegram.
schickt dir den besten weg , falls du mal abweichend der vorgegebenen zeiten fährst.

kurz langeweile gehabt  ;)
gruss Byte09

Funktioniert soweit, nur bekomme ich den Text 3x zugeschickt. Kann aber auch mit dem anderen Code zusammenhängen.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 25 Juni 2018, 16:35:48
Zitat von: Torsten_MG am 25 Juni 2018, 16:26:08
Funktioniert soweit, nur bekomme ich den Text 3x zugeschickt. Kann aber auch mit dem anderen Code zusammenhängen.

immer, also auch bei zeitauslösung, oder wenn du ihn 'abrufst' ?

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Juni 2018, 16:38:11
Zitat von: Byte09 am 25 Juni 2018, 16:35:48
immer, also auch bei zeitauslösung, oder wenn du ihn 'abrufst' ?

gruss Byte09

Nur bei manuellem abruf
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 25 Juni 2018, 16:42:28
Zitat von: Torsten_MG am 25 Juni 2018, 16:38:11
Nur bei manuellem abruf

ja, habe es gerade probiert, liegt am MSwitch ... schaue mir das gerade an
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 25 Juni 2018, 17:28:32
Zitat von: Torsten_MG am 25 Juni 2018, 16:38:11
Nur bei manuellem abruf

ich habe das problem gefunden und spiele nachher ein update ein , in dem das behoben ist.

V1.61 neu:

-code bereinigt
-einstellung 'priority' im expertenmodus.

diese auswahl ermöglicht die reihenfolge der abarbeitung der einzelnen 'affected defices' zu beeinflussen , ohne mit delays arbeiten zu müssen . hierbei hat eins die höchste Priorität . Es steht eine Anzahl von Stufen bereit , die der Anzahl der 'affected defices entsprich't. Gleiche Einstellungen werden willkürlich abgearbeitet , das muss nicht der reihenfplge der darstellung entsprechen . ist der Expertenmodus abgeschaltet, entspricht die Reihenfolge immer der Reihenfolge der Darstellung. ( siehe anhang)

-verfeinerung in der auswahl der delays
-set MSwitch wait <sek>

bewirkt das ignorieren von events für vorgegebenen zeitraum in sekunden ( einmalig ).

- diverses

gruss Byte09

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 25 Juni 2018, 18:11:09
Testweise die Version V1.61 erstmal im Anhang.

Da ich morgen für ein paar Tage weg fahre bin ich mir noch nicht sicher , ob ich diese Version schon in das GIT stellen möchte. Wäre cool, wenn sie trotzdem jemand testet.


Gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 25 Juni 2018, 18:13:47
Bin gerade unterwegs und gleich zur Arbeit. Werde heute nicht mehr testen können

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 27 Juni 2018, 14:18:49
Habe es gestern runtergeladen und eingefügt. Das einzige was mir aufgefallen ist, dass ich jetzt die automatischen Telegramm-Nachricht mit der besten Strecke 2x bekomme.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 01 Juli 2018, 09:07:04
Update auf V1.62 verfügber.

- einige kleinere Fehler behoben
- eingabemaske für FreeCmd geändert ( Zeilenumbrüche sind jetzt möglich , für eine bessere Übersichtlichkeit bei grösseren FreeCMDs

Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 01 Juli 2018, 10:22:37
Zitat von: Torsten_MG am 27 Juni 2018, 14:18:49
Habe es gestern runtergeladen und eingefügt. Das einzige was mir aufgefallen ist, dass ich jetzt die automatischen Telegramm-Nachricht mit der besten Strecke 2x bekomme.

sorry für die späte antwort, war ein paar tage im urlaub.

kann ich so nicht nachvollziehen . ggf. ein fehler in der 1.61 . du kannst mir ja bitte mal bescheid geben , ob es mit der 1.62 immer noch ist , dann müssen wir schauen.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juli 2018, 20:17:40
Zitat von: Byte09 am 25 Juni 2018, 16:35:48
immer, also auch bei zeitauslösung, oder wenn du ihn 'abrufst' ?

gruss Byte09

Da ich seit heute Frühschicht habe, hätte die Nachricht um 13:55Uhr kommen müssen. Kam aber trotzdem schon um 5:55Uhr und jetzt mit V1.62 nur 1x und nicht 2x
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 02 Juli 2018, 20:52:09
Zitat von: Torsten_MG am 02 Juli 2018, 20:17:40
Da ich seit heute Frühschicht habe, hätte die Nachricht um 13:55Uhr kommen müssen. Kam aber trotzdem schon um 5:55Uhr und jetzt mit V1.62 nur 1x und nicht 2x
Bist du sicher , dass deine Readings stimmen ?

Ist das mswitch config genau so , wie ich es dir gegeben habe ?

Gruss Byte09


Edit : ich baue das nachher mal mit Dummys nach

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juli 2018, 20:59:48
Hier der Code:

#V V1.62
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{Fahrtstrecke()},,delay1,delay1,000000,000000,([13.50-13.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Frühschicht")~OR~([21.50-21.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Spätschicht")~OR~([05.50-05.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Nachtschicht"),,0,0
#S .Device_Events -> no_trigger|state:on|state:off
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> state:off
#S .Trigger_cmd_on -> state:on
#S .Trigger_condition -> [vKalender_Schicht.daysleft]~eq~"0"~OR~[vKalender_Schicht.daysleft]~eq~"-1"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[13:55][21:55][05:55]~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> state:off
#S state -> active
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Debug -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Safemode -> 1
#A MSwitch_Help -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> MSwitch
#A room -> Draussen->Fahren
#A MSwitch_Mode -> Notify



Habe überprüft und keine Unterschiede festgestellt.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 02 Juli 2018, 21:02:17
Ich habe nur die Trigger conditions geändert, da der ursprüngliche Eintrag nicht bei Datumübergreifenen Terminen (Nachtschicht) funktioniert

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juli 2018, 07:14:09
Ich habe das ganze jetzt mal mit dummys nachgestellt und kann den Fehler nicht nachvollziehen .
es wäre wichtig zu wissen , ob das reading setreading "vKalender_Schicht:t_001_summary" denn wirklich den richtigen Wert hat im Moment der Schaltzeit.

Leg doch bitte einfach mal ein zweites affected device an , wie auf dem Bild . Dieses schickt dann bei jeder schaltzeit den Inhalt des Readings , dann kann man hier zumindest ausschliessen oder eben nicht.


#V V1.62
#S .Device_Affected -> FreeCmd-AbsCmd1,teleBot-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{Fahrtstrecke()},,delay1,delay1,000000,000000,([13.50-13.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Frühschicht")~OR~([21.50-21.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Spätschicht")~OR~([05.50-05.59]~AND~[vKalender_Schicht.t_001_summary]~eq~"Nachtschicht"),,0,0,1|teleBot-AbsCmd1,_msg,no_action,[vKalender_Schicht.t_001_summary],,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> no_trigger|state:on|state:off
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> state:off
#S .Trigger_cmd_on -> state:on
#S .Trigger_condition -> [vKalender_Schicht.daysleft]~eq~"0"~OR~[vKalender_Schicht.daysleft]~eq~"-1"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[13:55][21:55][05:55]~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> state:off
#S state -> active
#A MSwitch_Safemode -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Expert -> 0
#A room -> Draussen->Fahren
#A MSwitch_Debug -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Help -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Notify
#A MSwitch_Extensions -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Delete_Delays -> 1



gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juli 2018, 11:35:14
Ich habe gestern Abend die Triggrtime geändert und heute morgen keine Meldung bekommen.

Vorher:[13:55][21:55][05:55]

Nahher:[05:55][13:55][21:55]


Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 03 Juli 2018, 12:43:48
Zitat von: Torsten_MG am 03 Juli 2018, 11:35:14
Ich habe gestern Abend die Triggrtime geändert und heute morgen keine Meldung bekommen.

Vorher:[13:55][21:55][05:55]

Nahher:[05:55][13:55][21:55]


Gesendet von meinem SM-J730F mit Tapatalk

ok , muss aber an etwas anderem gelegen haben , die triggerzeiten werden gleich angelegt, egal wierum du sie eingiebst. Das kannst du sehen, wenn du auf get active_timer show klickst.


eingabe: [13:55][21:55][05:55]

Schaltzeiten (at - kommandos).
2018-07-03 13:55:00 execute 'on' commands only
2018-07-03 21:55:00 execute 'on' commands only
2018-07-04 00:00:10 neuberechnung aller Schaltzeiten



eingabe [05:55][13:55][21:55]

Schaltzeiten (at - kommandos).
2018-07-03 13:55:00 execute 'on' commands only
2018-07-03 21:55:00 execute 'on' commands only
2018-07-04 00:00:10 neuberechnung aller Schaltzeiten


die 05:55 hat er jetzt nur unterschlagen , da es sich um einen bereits vergangenen Zeitpunkt handelt.

Gruss Byte09

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 03 Juli 2018, 16:45:52
Habe den Msitch von Post 828 angelegt. Mal schauen was passiert.

Achso, um 13:55Uhr habe ich auch keine Nachricht bekommen.


EDIT:

Habe den Fehler gefunden:

Habe [vKalender_Schicht:daysleft] statt [vKalender_Schicht:t_001_daysleft] eingegeben
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 04 Juli 2018, 19:00:12
Scheint jetzt zu funktionieren, habe um 13:55Uhr die Nachricht bekommen.

Jetzt noch eine Frage, in deinem Screenshot steht ja bei telebot MSwitch 'cmd1' hinten dran _001_summary als ich deine Config übernommen habe, ist es bei mir nicht erschienen. Siehe Foto
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 04 Juli 2018, 20:05:15
Zitat von: Torsten_MG am 04 Juli 2018, 19:00:12
Scheint jetzt zu funktionieren, habe um 13:55Uhr die Nachricht bekommen.

Jetzt noch eine Frage, in deinem Screenshot steht ja bei telebot MSwitch 'cmd1' hinten dran _001_summary als ich deine Config übernommen habe, ist es bei mir nicht erschienen. Siehe Foto
Erstmal gut das es jetzt geht . Sitze aber gerade im Musical (pause) ... Insofern melde ich mich morgen . ;-)

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 04 Juli 2018, 20:05:57
Zitat von: Byte09 am 04 Juli 2018, 20:05:15
Erstmal gut das es jetzt geht . Sitze aber gerade im Musical (pause) ... Insofern melde ich mich morgen . ;-)

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Kein Stress und viel Spaß
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 05 Juli 2018, 19:09:40
Zitat von: Torsten_MG am 04 Juli 2018, 19:00:12
Scheint jetzt zu funktionieren, habe um 13:55Uhr die Nachricht bekommen.

Jetzt noch eine Frage, in deinem Screenshot steht ja bei telebot MSwitch 'cmd1' hinten dran _001_summary als ich deine Config übernommen habe, ist es bei mir nicht erschienen. Siehe Foto

das scheint mir ein problem mit dem darkstyle zu sein . die textarea-felder werden extrem weit auseinandergezogen und dadurch schiebt sich das entsprechende feld sehr weit nach rechts. schau mal , ob du die seite nach rechts scrollen kannst, dann sollte es zu dsehen sein.

ich passe das an.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 Juli 2018, 08:46:01
das problem mit dem DarkStyle sollte behoben sein.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 06 Juli 2018, 18:17:44
Zitat von: Byte09 am 06 Juli 2018, 08:46:01
das problem mit dem DarkStyle sollte behoben sein.

gruss Byte09

Funktioniert!

Super!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 06 Juli 2018, 18:56:12
Eine Frage noch.

Im device action rufe ich ja mit {Fahrtstrecke()} den Code in den 99_myUtils auf.
Du wolltest mal schauen, ob man das auch direkt in den MSwitch einbinden kann.

Hier nochmal der Code:
sub
Fahrtstrecke()
{
my @Strecke1 = "";
my @Strecke1a = "";
my @Strecke2 = "";
my @Strecke2a ="";

@Strecke1 =  ReadingsVal("Fahrtzeit_Arbeit","duration_in_traffic","");
@Strecke2 =  ReadingsVal("Abbelen_ohne_Arbeit","duration_in_traffic","");
@Strecke1a = split(/ /,@Strecke1);
@Strecke2a = split(/ /,@Strecke2);

if (@Strecke2a[0]<@Strecke1a[0])
{
fhem("set teleBot send Alternative Strecke @Strecke2")}
else
{
fhem("set teleBot send Standard Strecke @Strecke1")}
}
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 06 Juli 2018, 19:25:02
Zitat von: Torsten_MG am 06 Juli 2018, 18:56:12
Eine Frage noch.

Im device action rufe ich ja mit {Fahrtstrecke()} den Code in den 99_myUtils auf.
Du wolltest mal schauen, ob man das auch direkt in den MSwitch einbinden kann.

Hier nochmal der Code:
sub
Fahrtstrecke()
{
my @Strecke1 = "";
my @Strecke1a = "";
my @Strecke2 = "";
my @Strecke2a ="";

@Strecke1 =  ReadingsVal("Fahrtzeit_Arbeit","duration_in_traffic","");
@Strecke2 =  ReadingsVal("Abbelen_ohne_Arbeit","duration_in_traffic","");
@Strecke1a = split(/ /,@Strecke1);
@Strecke2a = split(/ /,@Strecke2);

if (@Strecke2a[0]<@Strecke1a[0])
{
fhem("set teleBot send Alternative Strecke @Strecke2")}
else
{
fhem("set teleBot send Standard Strecke @Strecke1")}
}


es sollte gehen, wenn du den code genau so :
{
my @Strecke1 = "";
my @Strecke1a = "";
my @Strecke2 = "";
my @Strecke2a ="";
@Strecke1 =  ReadingsVal("Fahrtzeit_Arbeit","duration_in_traffic","");
@Strecke2 =  ReadingsVal("Abbelen_ohne_Arbeit","duration_in_traffic","");
@Strecke1a = split(/ /,@Strecke1);
@Strecke2a = split(/ /,@Strecke2);
if (@Strecke2a[0]<@Strecke1a[0])
{
fhem("set teleBot send Alternative Strecke @Strecke2")}
else
{
fhem("set teleBot send Standard Strecke @Strecke1")}
}


in das cmd1 eingiebst , anstatt des aufrufes der routine.

ungetestet  - bin gerade auf dem sprung . probier es einfach mal .


gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 06 Juli 2018, 19:30:06
Zitat von: Byte09 am 06 Juli 2018, 19:25:02
...
in das cmd1 eingiebst , anstatt des aufrufes der routine.

ungetestet  - bin gerade auf dem sprung . probier es einfach mal .


gruss Byte09

Scheint zu funktionieren!

Super!

Also einfach den Code aus myUtils übernehmen!
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 15 Juli 2018, 20:16:31
Ich habe mir heute ein neues MSwitch gemacht und da nochmal eine Frage.

Ich habe als Trigger device meinen Bewegungsmelder genommen. Zusätzlich habe ich bei Trigger condition folgendes eingetragen: [Handy_Torsten:state] eq "absent" AND [Handy_Tanja:state] eq "absent" AND [Handy_Ben:state] eq "absent" AND [Handy_Denise:state] eq "absent". Bei trigger details habe ich bei cmd1 state:motion ausgewählt

Als affected device habe ich den teleBot ausgewählt und bei cmd1 Set msg Bewegungsmelder aktiv eingetragen.

Es funktioniert soweit alles gut. Was mir nur etwas stört ist, dass es ein paar min. dauert bis die Handy´s auf present stehen und so bekomme ich, wenn jemand nach Hause kommt (die 1. Person) sofort die Nachricht geschickt wird. Gibt es eine Möglichkeit in dem MSwitch noch einen Timer einzubinden? Etwa so, dass nachdem der Bewegungsmelder etwas registriert hat, eine Zeit gewartet wird, bis er auf Anwesenheit der Handy´s prüft und dann gegebenenfalls die Nachricht rausschickt.

Hier noch die config:
#V V1.62
#S .Device_Affected -> teleBot-AbsCmd1
#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> motion:off|motion:on (to broadcast)|state:noMotion|no_trigger|motionCount:89_next:30s|brightness:75|state:motion|motionDuration:32|trigger_cnt:89
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> state:motion
#S .Trigger_condition -> [Handy_Torsten.state]~eq~"absent"~AND~[Handy_Tanja.state]~eq~"absent"~AND~[Handy_Ben.state]~eq~"absent"~AND~[Handy_Denise.state]~eq~"absent"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> FL_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state:motion
#S state -> active
#A room -> Sicherheit
#A MSwitch_Mode -> Notify
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Condition_Time -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A disable -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 0
#A MSwitch_Extensions -> 0
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 15 Juli 2018, 20:26:20
Zitat von: Torsten_MG am 15 Juli 2018, 20:16:31
Ich habe mir heute ein neues MSwitch gemacht und da nochmal eine Frage.

Ich habe als Trigger device meinen Bewegungsmelder genommen. Zusätzlich habe ich bei Trigger condition folgendes eingetragen: [Handy_Torsten:state] eq "absent" AND [Handy_Tanja:state] eq "absent" AND [Handy_Ben:state] eq "absent" AND [Handy_Denise:state] eq "absent". Bei trigger details habe ich bei cmd1 state:motion ausgewählt

Als affected device habe ich den teleBot ausgewählt und bei cmd1 Set msg Bewegungsmelder aktiv eingetragen.

Es funktioniert soweit alles gut. Was mir nur etwas stört ist, dass es ein paar min. dauert bis die Handy´s auf present stehen und so bekomme ich, wenn jemand nach Hause kommt (die 1. Person) sofort die Nachricht geschickt wird. Gibt es eine Möglichkeit in dem MSwitch noch einen Timer einzubinden? Etwa so, dass nachdem der Bewegungsmelder etwas registriert hat, eine Zeit gewartet wird, bis er auf Anwesenheit der Handy´s prüft und dann gegebenenfalls die Nachricht rausschickt.

Hier noch die config:
#V V1.62
#S .Device_Affected -> teleBot-AbsCmd1
#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> motion:off|motion:on (to broadcast)|state:noMotion|no_trigger|motionCount:89_next:30s|brightness:75|state:motion|motionDuration:32|trigger_cnt:89
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> state:motion
#S .Trigger_condition -> [Handy_Torsten.state]~eq~"absent"~AND~[Handy_Tanja.state]~eq~"absent"~AND~[Handy_Ben.state]~eq~"absent"~AND~[Handy_Denise.state]~eq~"absent"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> FL_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state:motion
#S state -> active
#A room -> Sicherheit
#A MSwitch_Mode -> Notify
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Condition_Time -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A disable -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 0
#A MSwitch_Extensions -> 0


ja , klar.

du trägst bei ''cmd1 condition:' ebenfalls folgendes ein :
[Handy_Torsten:state] eq "absent" AND [Handy_Tanja:state] eq "absent" AND [Handy_Ben:state] eq "absent" AND [Handy_Denise:state] eq "absent".

bei cmd1 (selectfeld) trägst du immidialety and delayed ein und z.b 00:01:00.
so führt er den befehl 1 minute später aus , schaut aber vorher nochmals, ob die bedingung erfüllt ist.
so sollte es eigentlich gehen  ;)

gruss Byte09


edit: die zeit ( 1min) musst du halt entsprechend anpassen , so dass es passt.
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 15 Juli 2018, 20:37:21
ok, vielen Dank. Werde ich gleich einpflegen und beim nächsten Fall merken ob´s dann klappt
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 15 Juli 2018, 20:38:06
nachtrag:

ich würde die 3 telefone aber ggf. in eine structure setzen , das erspart jede menge abfragen.


z:B ... musst du natürlich auf deine devicenamen anpassen
defmod HomeStatus structure home_structure  HandyThomas HandySandra HandyDevon HandyJay  PreseceState
attr HomeStatus clientstate_behavior relative
attr HomeStatus clientstate_priority present absent
attr HomeStatus devStateIcon present:status_available:home absent:control_building_empty:home
attr HomeStatus event-on-change-reading .*
attr HomeStatus group .Home Status
attr HomeStatus icon system_fhem
attr HomeStatus room Anwesenheit


gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 15 Juli 2018, 21:04:44
Zitat von: Torsten_MG am 15 Juli 2018, 20:37:21
ok, vielen Dank. Werde ich gleich einpflegen und beim nächsten Fall merken ob´s dann klappt

da fällt mir gerade nochwas ein !
du solltest in diesem MSwitch das attribut 'MSwitch_Delete_Delays' unbedingt auf 0 stellen.

wenn dieses nicht auf 0 steht, wird bei jedem neuen event ( innerhalb der minute wartezeit ) das MSwitch im grunde resettet und alle delays ( verzögerungen ) gelöscht und neu gesetzt. d.H bei regelmässigen bewegungen würdest du nur dann eine Nachricht bekommen , wenn es mindestens für die dauer der wartezeit keine neue bewegung gab. das ist wohl nicht sinn der sache .

ist das attribut auf 0 , wird die bereits gesetzte verzögerung nicht gelöscht und eine zusätzliche gesetzt.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 21 Juli 2018, 16:51:39
update auf v1.66 verfügbar.

change:
-bugfix timespec regex ( führte zu Fehlermeldung bei bestimmten Schaltzeiten )
-add ATTR 'disabledForIntervals'
-fix wrong-timespec bug at at-comands (fhem-crash)
-add EVENT readings - ececute timer or at-comands

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 22 Juli 2018, 12:49:57
wer noch die Version v1.62 einsetzt sollte bitte unbedingt ein update auf V1.65 machen.
die Version V1.62 enthällt einen Fehler, der unter ganz bestimmten Umständen ( bei einsatz von zeitgesteuerten Schaltvorgängen ) zum Fhemcrash führen kann.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 23 Juli 2018, 21:25:23
Zitat von: Byte09 am 15 Juli 2018, 20:26:20
ja , klar.

...

bei cmd1 (selectfeld) trägst du immidialety and delayed ein und z.b 00:01:00.
so führt er den befehl 1 minute später aus , schaut aber vorher nochmals, ob die bedingung erfüllt ist.
so sollte es eigentlich gehen  ;)

gruss Byte09


edit: die zeit ( 1min) musst du halt entsprechend anpassen , so dass es passt.

Funktioniert leider nicht.

Ich habe als Zeit zu testzwecken 00:06:00 eingetragen.

Handy aus dem W-Lan genommen gewartet bis absent kommt. Dann das W-Lan wieder eingeschaltet. Nach ca. 3min. schaltete Homestatus auf present. Nachdem die 6min. abgelaufen sind kam trotzdem per TeleBot die Meldung "Bewegungsmelder aktiv"
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Juli 2018, 05:19:23
Zitat von: Torsten_MG am 23 Juli 2018, 21:25:23
Funktioniert leider nicht.

Ich habe als Zeit zu testzwecken 00:06:00 eingetragen.

Handy aus dem W-Lan genommen gewartet bis absent kommt. Dann das W-Lan wieder eingeschaltet. Nach ca. 3min. schaltete Homestatus auf present. Nachdem die 6min. abgelaufen sind kam trotzdem per TeleBot die Meldung "Bewegungsmelder aktiv"

ich habe das gerade nochmal bei mir probiert und es geht ohne probleme. schick mir doch bitte mal dei komplette rawdefinition oder den configfile des devices.

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 24 Juli 2018, 08:28:15
Zitat von: Byte09 am 24 Juli 2018, 05:19:23
ich habe das gerade nochmal bei mir probiert und es geht ohne probleme. schick mir doch bitte mal dei komplette rawdefinition oder den configfile des devices.

gruss Byte09

Hier die config

#V V1.66
#S .Device_Affected -> teleBot-AbsCmd1
#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000600,000000,,,,,1
#S .Device_Events -> motion:off|motion:on (to broadcast)|state:noMotion|no_trigger|motionCount:89_next:30s|brightness:75|state:motion|motionDuration:32|trigger_cnt:89
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> state:motion
#S .Trigger_condition -> [HomeStatus.state]~eq~"absent"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> FL_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state:motion
#S state -> active
#A MSwitch_Debug -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A disable -> 0
#A MSwitch_Help -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Extensions -> 0
#A room -> Sicherheit
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_MSwitchcmds -> 0
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Byte09 am 24 Juli 2018, 17:47:50
Zitat von: Torsten_MG am 24 Juli 2018, 08:28:15
Hier die config

#V V1.66
#S .Device_Affected -> teleBot-AbsCmd1
#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000600,000000,,,,,1
#S .Device_Events -> motion:off|motion:on (to broadcast)|state:noMotion|no_trigger|motionCount:89_next:30s|brightness:75|state:motion|motionDuration:32|trigger_cnt:89
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> state:motion
#S .Trigger_condition -> [HomeStatus.state]~eq~"absent"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.3
#S Trigger_device -> FL_Taster2_Motion
#S Trigger_log -> off
#S last_event -> state:motion
#S state -> active
#A MSwitch_Debug -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A disable -> 0
#A MSwitch_Help -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Extensions -> 0
#A room -> Sicherheit
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_MSwitchcmds -> 0


so, ich habe mir das gerade mal angesehen . Ich glaube du hast den Eintrag den du machen solltest ( Antwort #296 ) gar nicht gemacht, zumindest findet er sich im configfile nicht wieder , wieer sein sollte -> siehe Anhang.

entsprechende zeile würde dann so aussehen :

#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000600,000000,[HomeStatus.state]~eq~"absent",,,,1


ohne diesen Eintrag führt er den befehl einfach aus ( nach 6 minuten ). nur wenn dieser eintrag vorhanden ist prüft er diesen auf "wahr" oder "nicht wahr" - und zwar direkt bei eintreffen des events, und erneut nach ablaufen der 6 minuten und vor ausführung des Befehls ( bei jetziger einstellung ).

gruss Byte09
Titel: Antw:neues modul: 98_MSwitch.pm
Beitrag von: Torsten_MG am 24 Juli 2018, 21:02:01
Zitat von: Byte09 am 24 Juli 2018, 17:47:50
so, ich habe mir das gerade mal angesehen . Ich glaube du hast den Eintrag den du machen solltest ( Antwort #296 ) gar nicht gemacht, zumindest findet er sich im configfile nicht wieder , wieer sein sollte -> siehe Anhang.

entsprechende zeile würde dann so aussehen :

#S .Device_Affected_Details -> teleBot-AbsCmd1,msg,no_action,Bewegungsmelder aktiv,,delay1,delay1,000600,000000,[HomeStatus.state]~eq~"absent",,,,1


ohne diesen Eintrag führt er den befehl einfach aus ( nach 6 minuten ). nur wenn dieser eintrag vorhanden ist prüft er diesen auf "wahr" oder "nicht wahr" - und zwar direkt bei eintreffen des events, und erneut nach ablaufen der 6 minuten und vor ausführung des Befehls ( bei jetziger einstellung ).

gruss Byte09

Asche auf mein Haupt. Das mit dem Eintrag in den 'cmd1' condition im device actions habe ich total übersehen ::)

Ich habe das nur in den Trigger condition stehen gehabt.

Läuft!! Super Teil!!
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 25 Juli 2018, 19:31:29
kommende version v1.67

mit der kommenden Version werde/habe  ich die Eventverarbeitung nochmals komplett überarbeitet.
d.H bei manuellen hinzufügen von zu erjkennenden Events könne zukünftig Ausdrücke nach den Regeln der PerlRegex angewendet werden. Hierdurch werden die Möglichkeiten auf ( bestimmte ) Events zu reagieren erheblich grösser.
https://wiki.fhem.de/wiki/Regul%C3%A4rer_Ausdruck (https://wiki.fhem.de/wiki/Regul%C3%A4rer_Ausdruck)

die bisherige Formatierung z.B  "state:(on/off)" bleibt erhalten , sollte dann aber nicht mehr verwendet werden.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 29 Juli 2018, 14:39:45
Moin Byte09

ich würde erwarten, dass der Command zu den jeweiligen Zeiten auslöst, aber Pustekuchen. Kannst du mir den Fehler sagen?

#V V1.66
#S .Device_Affected -> Flur-AbsCmd1,ReceiverAxBox4K-AbsCmd1,TelegramBot-AbsCmd1
#S .Device_Affected_Details -> Flur-AbsCmd1,Speak,no_action,45 de Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~eq~"home",,,,1|ReceiverAxBox4K-AbsCmd1,showText,no_action,Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~eq~"home",,,,1|TelegramBot-AbsCmd1,msg,no_action,@#Home Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~ne~"home",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[14:22|19:30|20:30|1234567]~off~ononly~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> undef
#S state -> on
#A MSwitch_Debug -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A room -> MSwitch,
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0


Haus steht auf state--> home

Wäre es eventuell möglich im ausführenden Command sowas möglich zu machen?

set Sonos speak 45 de |Ton| Das sit ein Test

Hier wird nach dem |Ton| einfach alles abgeschnitten.

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 Juli 2018, 14:57:24
Ich bin heute den ganzen tag unterwegs , schaue mir das dann heute abend an .

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 Juli 2018, 18:06:35
Zitat von: Esjay am 29 Juli 2018, 14:39:45
Moin Byte09

ich würde erwarten, dass der Command zu den jeweiligen Zeiten auslöst, aber Pustekuchen. Kannst du mir den Fehler sagen?

#V V1.66
#S .Device_Affected -> Flur-AbsCmd1,ReceiverAxBox4K-AbsCmd1,TelegramBot-AbsCmd1
#S .Device_Affected_Details -> Flur-AbsCmd1,Speak,no_action,45 de Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~eq~"home",,,,1|ReceiverAxBox4K-AbsCmd1,showText,no_action,Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~eq~"home",,,,1|TelegramBot-AbsCmd1,msg,no_action,@#Home Am [myAbfall.next_weekday] wird [ArtikelMuell.state] [myAbfall.next_text] abgeholt heute ist [Wochentag.state],,delay1,delay1,000000,000000,[Haus.state]~ne~"home",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[14:22|19:30|20:30|1234567]~off~ononly~offonly
#S .V_Check -> V 0.3
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> undef
#S state -> on
#A MSwitch_Debug -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A room -> MSwitch,
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0


Haus steht auf state--> home

Wäre es eventuell möglich im ausführenden Command sowas möglich zu machen?

set Sonos speak 45 de |Ton| Das sit ein Test

Hier wird nach dem |Ton| einfach alles abgeschnitten.

Grüße

du hast die zeiten falsch formatiert:
[14:22|19:30|20:30|1234567]

richtig muss es so heissen:
[14:22][19:30][20:30]

auszug aus dem Hilfetext:
Zitat[17:00|1][18:30|23] würde den Trigger Montags um 17 Uhr auslösen und Dienstags,Mittwochs um 18 Uhr 30.

die angabe der tage kannst du dier sparen , wenn an allen tagen geschaltet werden soll. Wenn du tage angiebst , müssen sie für jede zeit angegeben werden.


ZitatWäre es eventuell möglich im ausführenden Command sowas möglich zu machen?

Code: [Auswählen]

set Sonos speak 45 de |Ton| Das sit ein Test


Hier wird nach dem |Ton| einfach alles abgeschnitten.

Grüße

... wird in der nächsten Version gehen , wahscheinlich morgen im Laufe des Tages.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 Juli 2018, 12:39:55
da ich mit dem fhem-wiki nicht wirklich zurecht komme, und das Modul hier sowieso nicht mehr zum Download bereit steht ( updates wird es unter bekanntem Link weiterhin geben ) habe ich entsprechenden Wikieintrag gelöscht.

Ich werde die komplette WikiSeite überarbeiten und in absehbarer Zeit, bei Interesse, anderweitig zur Verfügung stellen.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: andies am 30 Juli 2018, 12:46:54
Uups. Das ist Schade. Hast Du denn einen github-Account? Den habe ich auf die schnelle nicht gefunden. Kannst Du die bisherigen Einträge nicht da einstellen, es war doch eine Menge Arbeit und Leute wie ich nutzen lieber Wiki als das Forum, weil das so viele Einträge sind.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 Juli 2018, 12:49:28
Zitat von: andies am 30 Juli 2018, 12:46:54
Uups. Das ist Schade. Hast Du denn einen github-Account? Den habe ich auf die schnelle nicht gefunden. Kannst Du die bisherigen Einträge nicht da einstellen, es war doch eine Menge Arbeit und Leute wie ich nutzen lieber Wiki als das Forum, weil das so viele Einträge sind.

ja, habe ich . Werde mich heute oder morgen mal damit beschäftigen und es dort einstellen.


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 31 Juli 2018, 07:59:39
ich werde heute mittag die Version V1.67 einspielen.

Leider ist es notwendig geworden , die gesamte Datenstruktur umzustellen.
d.H nach dem Update sind keine MSwitches mehr Funktionsfähig und es werden sich folgende Einträge im Logfile finden:
2018.07.31 07:41:11 0: <Devicename> Versionskonflikt, aktion abgebrochen !  erwartet:V 0.5 vorhanden:V 0.3

Bis zu einem Fhemneustart führen keine MSwitcdevicec mehr Aktionen aus. Mit Fhemneustart werden alle Datensätze automatisch geändert und im Logfile entsprechend dokumentiert:
2018.07.31 07:49:07 0: Backupdatei vor Strukturupdate wird erzeugt: MSwitch_backup_V03.cfg. Für einen Restore muss diese in MSwitch_backup.cfg umbenannt werden.
2018.07.31 07:49:08 0: Strukturupdate V 0.5 fuer MSwitch - Lueftung_Ctrl


Vor der Umstellung der Datensätze wird ein automatisches Backup der Configfiles angelegt :
MSwitch_backup_V03.cfg
Dieses kann in Notfall verwendet werden , um die die Version V1.66 im Notfall wieder einzuspielen und kann gelöscht werden , wenn es keine Probleme gibt.

Mit V1.67 können in allen Conditionfeldern Bedingungen nach den Regeln der Regex geprüft werden , alte Formatierungen können weiterhin genutzt werden.

ACHTUNG: MSwitchdevices, die auf "disable" stehen , werden nicht automatisch angepasst. Dieses muss bei Bedarf manuell mit dem Befehl set <DEVICE> VUpdate manuell ausgeführt werden, entsprechender Hinweis erfolgt auf der Konfigurationsseite.
Bitte, sofern möglich, das "Disable" für das Update auf 0 setzen.

@Esjay

set Sonos speak 45 de |Ton| Das sit ein Test
sollte nun innerhalb eines Freecmds möglich sein .

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 01 August 2018, 20:46:58
Moin moin Byte,

Danke für die Umsetzung.
Zur Info:

2018.08.01 20:39:03 1: PERL WARNING: "my" variable $test masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 5568, <$fh> line 2030.
2018.08.01 20:39:04 1: PERL WARNING: Use of uninitialized value $test in string ne at ./FHEM/98_MSwitch.pm line 5569.


Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 August 2018, 21:14:25
Ups.... kümmere mich morgen um die Warnungen . Aber es geht hoffe ich ?

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 01 August 2018, 21:27:01
Ja die Funktion ist soweit gegeben 👍
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 03 August 2018, 10:49:25
Habe seit gestern erfolgreich eine Tradfri Lampe (IKEA) über zigbee2mqtt laufen. Ich schalte sie mit einem Homematic Taster. Was mir nur nicht so gefällt ist, daß ich das über freecmd lösen mußte, da wenn ich bei Deviceaction die Lampe auswähle nur no_action, remove & MSwitchtoggle zur verfügung habe. Wenn ich bei mswitchtoggle on/off eingebe, dann wird der Zustand nur bei jeder 2. Schaltung geändert.

Bei der freecmd lösung ist mir noch aufgefallen, dass die Taster on und off oben bei Device overview invertiert sind. Ich habe noch Version 1.66 (!) bei mir laufen da ich momentan nicht genug Zeit habe zu wechseln um gegbenenfalls änderungen vorzunehmen.

Hier mal die Raw von dem mswitch

defmod BD_Licht MSwitch BD_Taster1   # FreeCmd
attr BD_Licht MSwitch_Activate_MSwitchcmds 1
attr BD_Licht MSwitch_Debug 0
attr BD_Licht MSwitch_Delete_Delays 1
attr BD_Licht MSwitch_Expert 1
attr BD_Licht MSwitch_Extensions 1
attr BD_Licht MSwitch_Help 1
attr BD_Licht MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr BD_Licht MSwitch_Include_Devicecmds 1
attr BD_Licht MSwitch_Include_MSwitchcmds 1
attr BD_Licht MSwitch_Include_Webcmds 1
attr BD_Licht MSwitch_Inforoom MSwitch
attr BD_Licht MSwitch_Lock_Quickedit 1
attr BD_Licht MSwitch_Mode Full
attr BD_Licht room 01_Bad
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 03 August 2018, 11:18:43
Zitat von: Byte09 am 30 Juli 2018, 12:39:55
... ( updates wird es unter bekanntem Link weiterhin geben ) habe ich entsprechenden Wikieintrag gelöscht.
...

Gruss Byte09

Welchen Link meinst du? Den hier? Tue es mir irgendie immer schwer mit den ganzen update Sachen

Zitat von: Byte09 am 20 Mai 2018, 11:37:35
in der fhem befehlszeile eingeben:

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 August 2018, 11:40:54
Spendiere der ikea mal ein webcmd on:off .  Im mswitch dann das attr Include_webcmd  auf 1 setzen , dann musst du nicht mehr über freecmd und kannst das Device direkt einstellen .

Kurz da mobil , mehr heute abend.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 03 August 2018, 12:21:51
Zitat von: Byte09 am 03 August 2018, 11:40:54
Spendiere der ikea mal ein webcmd on:off .  Im mswitch dann das attr Include_webcmd  auf 1 setzen , dann musst du nicht mehr über freecmd und kannst das Device direkt einstellen .

Kurz da mobil , mehr heute abend.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Hatte ich beides schon gemacht. Ohne Erfolg. Siehe Fotos

Bin jetzt auch weg. Spätschicht.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 August 2018, 12:52:39
Ok , dann schaue ich es mir auch in Ruhe heute abend an.

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 August 2018, 15:48:47
du musst das attr 'MSwitch_Include_Devicecmds' auf 0 setzen , wenn du 'MSwitch_Include_WebCmds'' auf 1 setzt.
das hatte vermutlich mal einen Hintergrund , dasss ich das so gemacht habe .... glaube ich  ..... ich weiss aber absolut nicht mehr warum  :-\  .... und ergiebt jetzt für mich auch keinen sinn mehr  ::).

ich werde das morge ändern , so dasss beide Befehlslisten gleichzeitig einbezogen werden können.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 03 August 2018, 16:29:07
Zitat von: Byte09 am 03 August 2018, 15:48:47
du musst das attr 'MSwitch_Include_Devicecmds' auf 0 setzen , wenn du 'MSwitch_Include_WebCmds'' auf 1 setzt.
das hatte vermutlich mal einen Hintergrund , dasss ich das so gemacht habe .... glaube ich  ..... ich weiss aber absolut nicht mehr warum  :-\  .... und ergiebt jetzt für mich auch keinen sinn mehr  ::).

ich werde das morge ändern , so dasss beide Befehlslisten gleichzeitig einbezogen werden können.

gruss Byte09
Ok, probiere ich morgen aus

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 August 2018, 17:37:45
V1.68 verfügbar

bugfix (DeviceCMD/WebCMD) MQTT  (hoffentlich  :-\)

gruss Byte09

PS: sprung von 1.66 auf 1.68 ist möglich , anpassung erfolgt automatisch ( post #314 )
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 03 August 2018, 18:28:41
Zitat von: Byte09 am 03 August 2018, 17:37:45
V1.68 verfügbar

bugfix (DeviceCMD/WebCMD) MQTT  (hoffentlich  :-\)

gruss Byte09

PS: sprung von 1.66 auf 1.68 ist möglich , anpassung erfolgt automatisch ( post #314 )
Update bekomme ich wie in Post #320 nachgefragt?

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 August 2018, 18:41:56
Zitat von: Torsten_MG am 03 August 2018, 18:28:41
Update bekomme ich wie in Post #320 nachgefragt?

Gesendet von meinem SM-J730F mit Tapatalk

ja :

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 04 August 2018, 21:02:56
Zitat von: Byte09 am 03 August 2018, 17:37:45
V1.68 verfügbar

bugfix (DeviceCMD/WebCMD) MQTT  (hoffentlich  :-\)

gruss Byte09

PS: sprung von 1.66 auf 1.68 ist möglich , anpassung erfolgt automatisch ( post #314 )

ON und OFF funktionieren jetzt bei mir mit den Einstellungen

MSwitch_Include_Devicecmds 0

MSwitch_Include_Webcmds 1
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 August 2018, 21:18:01
Im Grunde sollte es mit v1.69 auch gehen wenn du beides auf 1 setzt ?!

Gruss Byte09
Zitat von: Torsten_MG am 04 August 2018, 21:02:56
ON und OFF funktionieren jetzt bei mir mit den Einstellungen

MSwitch_Include_Devicecmds 0

MSwitch_Include_Webcmds 1


Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 05 August 2018, 08:22:01
update kommen ja schneller als ich laden kann  ;D

Wollte gerade auf v1.69 updaten und muß feststellen, ist ja schon v1.70 :o

Zurück zu meinem Problem:


ON und OFF funktionieren soweit, nur sind die vertauscht  ???

Wenn ich im Device der Lampe auf ON schalte geht die Lampe an und wenn ich auff off schalte geht sie aus. Soweit alles OK.

Wenn ich aber im Mswitch oben im Device overview auf off schalte geht die Lampe an und bei on aus.

Genauso im device action. Bei cmd1 steht off, hier geht die Lampe an und bei cmd2 steht on, hier geht die Lampe aus
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 August 2018, 10:31:37
Zitat von: Torsten_MG am 05 August 2018, 08:22:01
update kommen ja schneller als ich laden kann  ;D


... immer mal wenn ich lust und zeit habe  ;)

ok ,ich glaube nicht das es ein fehler ist , sondern irgendwo in der config etwas nicht in ordnung .  gib mir bitte nochmal die rawdefinitionen von dem mswitch und des geschalteten devices bitte.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 05 August 2018, 11:12:02
MSwitch:

defmod BD_Licht MSwitch BD_Taster1 # BD_Lampe
attr BD_Licht MSwitch_Activate_MSwitchcmds 1
attr BD_Licht MSwitch_Debug 0
attr BD_Licht MSwitch_Delete_Delays 1
attr BD_Licht MSwitch_Expert 1
attr BD_Licht MSwitch_Extensions 1
attr BD_Licht MSwitch_Help 1
attr BD_Licht MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr BD_Licht MSwitch_Include_Devicecmds 0
attr BD_Licht MSwitch_Include_MSwitchcmds 1
attr BD_Licht MSwitch_Include_Webcmds 1
attr BD_Licht MSwitch_Inforoom MSwitch
attr BD_Licht MSwitch_Lock_Quickedit 1
attr BD_Licht MSwitch_Mode Full
attr BD_Licht MSwitchcmd 1
attr BD_Licht disable 1
attr BD_Licht room 01_Bad
attr BD_Licht verbose 0

setstate BD_Licht on
setstate BD_Licht 2018-08-03 22:05:17 .Device_Affected BD_Lampe-AbsCmd1
setstate BD_Licht 2018-08-03 22:06:30 .Device_Affected_Details BD_Lampe-AbsCmd1,off,on,,,delay1,delay1,000000,000000,,,,,1
setstate BD_Licht 2018-08-03 10:39:49 .Device_Events no_trigger|battery:ok|BD_Taster1_02 Short|BD_Taster1_01 Short|state:CMDs_done
setstate BD_Licht 2018-08-02 10:59:11 .First_init done
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_cmd_off no_trigger
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_cmd_on no_trigger
setstate BD_Licht 2018-08-03 21:59:18 .Trigger_condition
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_off BD_Taster1_02 Short
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_on BD_Taster1_01 Short
setstate BD_Licht 2018-08-03 10:33:50 .Trigger_time
setstate BD_Licht 2018-08-03 21:59:18 .V_Check V 0.4
setstate BD_Licht 2018-08-05 08:56:11 .inc_event state: CMDs_done
setstate BD_Licht 2018-08-05 08:56:11 EVENT BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 EVTFULL BD_Taster1:BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 EVTPART1 BD_Taster1
setstate BD_Licht 2018-08-05 08:56:11 EVTPART2 BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 Exec_cmd set BD_Lampe off
setstate BD_Licht 2018-08-05 08:13:26 Trigger_device BD_Taster1
setstate BD_Licht 2018-08-02 11:25:21 Trigger_log off
setstate BD_Licht 2018-08-05 08:56:11 last_event BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 state on


BD_Lampe:
defmod BD_Lampe XiaomiMQTTDevice LED1650R5 0x000b57fffed4ace8
attr BD_Lampe IODev Mosquitto
attr BD_Lampe room 01_Bad,XiaomiMQTTDevice
attr BD_Lampe stateFormat state
attr BD_Lampe verbose 5
attr BD_Lampe webCmd on:off:brightness
attr BD_Lampe widgetOverride brightness:slider,0,15,255

setstate BD_Lampe OFF
setstate BD_Lampe 2018-08-05 11:01:41 brightness 254
setstate BD_Lampe 2018-08-05 11:01:41 state OFF
setstate BD_Lampe 2018-08-05 11:01:41 transmission-state incoming publish received


Ich habe den mswitch momentan deaktiviert und 2 notifys laufen. Habe noch ein anderes Problem dass, wenn die Lampe längere Zeit nicht geschaltet wird, muß ich mehrmals den Taster drücken bis die Lampe angeht. Ich will so herausfinden ob es am mswitch oder an der Lampe selber liegt.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 August 2018, 11:15:03
Zitat von: Torsten_MG am 05 August 2018, 11:12:02
MSwitch:

defmod BD_Licht MSwitch BD_Taster1 # BD_Lampe
attr BD_Licht MSwitch_Activate_MSwitchcmds 1
attr BD_Licht MSwitch_Debug 0
attr BD_Licht MSwitch_Delete_Delays 1
attr BD_Licht MSwitch_Expert 1
attr BD_Licht MSwitch_Extensions 1
attr BD_Licht MSwitch_Help 1
attr BD_Licht MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr BD_Licht MSwitch_Include_Devicecmds 0
attr BD_Licht MSwitch_Include_MSwitchcmds 1
attr BD_Licht MSwitch_Include_Webcmds 1
attr BD_Licht MSwitch_Inforoom MSwitch
attr BD_Licht MSwitch_Lock_Quickedit 1
attr BD_Licht MSwitch_Mode Full
attr BD_Licht MSwitchcmd 1
attr BD_Licht disable 1
attr BD_Licht room 01_Bad
attr BD_Licht verbose 0

setstate BD_Licht on
setstate BD_Licht 2018-08-03 22:05:17 .Device_Affected BD_Lampe-AbsCmd1
setstate BD_Licht 2018-08-03 22:06:30 .Device_Affected_Details BD_Lampe-AbsCmd1,off,on,,,delay1,delay1,000000,000000,,,,,1
setstate BD_Licht 2018-08-03 10:39:49 .Device_Events no_trigger|battery:ok|BD_Taster1_02 Short|BD_Taster1_01 Short|state:CMDs_done
setstate BD_Licht 2018-08-02 10:59:11 .First_init done
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_cmd_off no_trigger
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_cmd_on no_trigger
setstate BD_Licht 2018-08-03 21:59:18 .Trigger_condition
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_off BD_Taster1_02 Short
setstate BD_Licht 2018-08-02 11:25:21 .Trigger_on BD_Taster1_01 Short
setstate BD_Licht 2018-08-03 10:33:50 .Trigger_time
setstate BD_Licht 2018-08-03 21:59:18 .V_Check V 0.4
setstate BD_Licht 2018-08-05 08:56:11 .inc_event state: CMDs_done
setstate BD_Licht 2018-08-05 08:56:11 EVENT BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 EVTFULL BD_Taster1:BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 EVTPART1 BD_Taster1
setstate BD_Licht 2018-08-05 08:56:11 EVTPART2 BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 Exec_cmd set BD_Lampe off
setstate BD_Licht 2018-08-05 08:13:26 Trigger_device BD_Taster1
setstate BD_Licht 2018-08-02 11:25:21 Trigger_log off
setstate BD_Licht 2018-08-05 08:56:11 last_event BD_Taster1_01
setstate BD_Licht 2018-08-05 08:56:11 state on


BD_Lampe:
defmod BD_Lampe XiaomiMQTTDevice LED1650R5 0x000b57fffed4ace8
attr BD_Lampe IODev Mosquitto
attr BD_Lampe room 01_Bad,XiaomiMQTTDevice
attr BD_Lampe stateFormat state
attr BD_Lampe verbose 5
attr BD_Lampe webCmd on:off:brightness
attr BD_Lampe widgetOverride brightness:slider,0,15,255

setstate BD_Lampe OFF
setstate BD_Lampe 2018-08-05 11:01:41 brightness 254
setstate BD_Lampe 2018-08-05 11:01:41 state OFF
setstate BD_Lampe 2018-08-05 11:01:41 transmission-state incoming publish received


Ich habe den mswitch momentan deaktiviert und 2 notifys laufen. Habe noch ein anderes Problem dass, wenn die Lampe längere Zeit nicht geschaltet wird, muß ich mehrmals den Taster drücken bis die Lampe angeht. Ich will so herausfinden ob es am mswitch oder an der Lampe selber liegt.
Schaue ich mir nachher an .

Im mswitch kannst du ja in den Readings sehen ,  ob er den Befehl abgesetzt hat.  Da gibt es ja nur schwarz oder weiß .

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 August 2018, 12:00:30
habe das gerade mal bei mir entsprechend angelegt und kann das verdrehen der on/off schaltungen nicht nachvollziehen.
allerdings habe ich auch einen solchen taster nicht 'BD_Taster1_02 Short' und musste das .. in diesem fall einen cube ... ersetzen.

bei diesem trigger 'BD_Taster1_02 Short' bin ich aber der meinung , das irgendwas nicht passt. hat mswitch dieses Event so gespeichert , oder hast du es manuell angelegt ? das müsste meines erachtens so aussehen 'BD_Taster1_02:Short' . ... aber wenn es so geht ist alle ok

gruss Byte09

edit: kann es doch nachvollziehen.

du hast die cmds vertauscht. im mswitchdevice off führt immer cmd2 aus, im device auf on immer cmd1.
d.H du musst die beiden trigger einfach tauschen , und die cmds in dem affected device tauschen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 August 2018, 13:19:04
codeschnipsel:


da es mir wiederholt auf die Nerven ging, das MSwitch - wie andere hilfsmodule auch - nicht erkennt, wenn beteiligte Devices umbenannt wurden , habe ich mal ein MSwitch zusammengeklickt , was diesen Umstand behebt.

dieses Device überwacht das system auf namensänderungen und konfiguriert entsprechend alle MSwitch-devices um.

ich habe es gefühlte 100mal getestet und es gab keine Probleme, trotzdem kann ich hier nicht garantieren , das doch mal was 'übersehen' wird, insofern ist vor gravierenden änderungen ein MSwitch-Backup immer eine gute wahl.

Achtung: Das device geht nur mit V1.71 die ab sofort verfügbar ist.

Nach dem einspielen steht das device auf disabled 1 und muss erst aktiviert werden. Das device darf nicht umbenannt werden , bzw. ist in diesem fall eine anpassung im freecmd notwendig.
sinniger weise sollte dieses device nur aktiviert werden , wenn systemänderungen anstehen.

gruss Byte09

defmod Rename_Ctrl MSwitch global # FreeCmd
attr Rename_Ctrl MSwitch_Debug 0
attr Rename_Ctrl MSwitch_Delete_Delays 1
attr Rename_Ctrl MSwitch_Expert 0
attr Rename_Ctrl MSwitch_Extensions 0
attr Rename_Ctrl MSwitch_Help 0
attr Rename_Ctrl MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Rename_Ctrl MSwitch_Include_Devicecmds 0
attr Rename_Ctrl MSwitch_Include_MSwitchcmds 0
attr Rename_Ctrl MSwitch_Include_Webcmds 0
attr Rename_Ctrl MSwitch_Lock_Quickedit 1
attr Rename_Ctrl MSwitch_Mode Notify
attr Rename_Ctrl disable 1
attr Rename_Ctrl room MSwitch

setstate Rename_Ctrl active
setstate Rename_Ctrl 2018-08-05 13:43:19 .Device_Affected FreeCmd-AbsCmd1
setstate Rename_Ctrl 2018-08-05 13:45:02 .Device_Affected_Details FreeCmd-AbsCmd1,cmd,cmd,{\
my~$ev~=~ReadingsVal(~"Rename_Ctrl"#[ko]~".inc_event"#[ko]~"no_event"~);;\
my~(~$cmd~#[ko]$oldname#[ko]~$newname~)~=~split(~/~/#[ko]~$ev~);;\
foreach~my~$testdevice~(~keys~%{~$modules{MSwitch}{defptr}~}~)~\
~{\
~my~$devhash~=~$defs{$testdevice};;\
~my~$tochange1~=~ReadingsVal(~$testdevice#[ko]~".Device_Affected"#[ko]~""~);;\
~$tochange1~~~~=#[ti]~s/$oldname-/$newname-/g;;\
~readingsSingleUpdate(~$devhash#[ko]~".Device_Affected"#[ko]~$tochange1#[ko]~0~);;\
~$tochange1~=~ReadingsVal(~$testdevice#[ko]~".Device_Affected_Details"#[ko]~""~);;\
~$tochange1~=#[ti]~s/\n/[enl]/g;;\
~~~~my~$x~=~0;;\
~~~~while~(~$tochange1~=#[ti]~m/(.*[^a-zA-Z])(d1)(.*)/)\
{\
my~$firstpart~=~$1;;\
my~$secondpart~=~$2;;\
my~$lastpart~=~$3;;\
$tochange1~=~$firstpart.$newname.$lastpart;;\
$x++;;\
last~if~$x~>~10;;~\
}\
~$tochange1~=#[ti]~s/\[enl\]/\n/g;;\
~readingsSingleUpdate(~$devhash#[ko]~".Device_Affected_Details"#[ko]~$tochange1#[ko]~0~);;\
~$tochange1~=~ReadingsVal(~$testdevice#[ko]~"Trigger_device"#[ko]~""~);;\
~$tochange1~~~~=#[ti]~s/$oldname/$newname/g;;\
~readingsSingleUpdate(~$devhash#[ko]~"Trigger_device"#[ko]~$tochange1#[ko]~0~);;\
~MSwitch_LoadHelper($devhash);;\
~}\
}\
\
,,delay1,delay1,000000,000000,,,,,1
setstate Rename_Ctrl 2018-08-05 12:55:26 .Device_Events RENAMED.*|no_trigger
setstate Rename_Ctrl 2018-08-05 12:31:55 .First_init done
setstate Rename_Ctrl 2018-08-05 12:31:55 .Trigger_cmd_off no_trigger
setstate Rename_Ctrl 2018-08-05 12:31:55 .Trigger_cmd_on RENAMED.*
setstate Rename_Ctrl 2018-08-05 12:31:55 .Trigger_condition [$EVENT]#[sp]=#[ti]#[sp]m/RENAMED(#[pt]*)/
setstate Rename_Ctrl 2018-08-05 12:31:55 .Trigger_off no_trigger
setstate Rename_Ctrl 2018-08-05 12:31:55 .Trigger_on no_trigger
setstate Rename_Ctrl 2018-08-04 16:13:04 .Trigger_time
setstate Rename_Ctrl 2018-08-05 12:31:55 .V_Check V 0.4
setstate Rename_Ctrl 2018-08-05 13:43:17 .inc_event RENAMED d2 d10
setstate Rename_Ctrl 2018-08-05 13:43:17 EVENT RENAMED d2 d10
setstate Rename_Ctrl 2018-08-05 13:43:17 EVTFULL global:RENAMED d2 d10
setstate Rename_Ctrl 2018-08-05 13:43:17 EVTPART1 global
setstate Rename_Ctrl 2018-08-05 13:43:17 EVTPART2 RENAMED d2 d10
setstate Rename_Ctrl 2018-08-05 13:43:19 Exec_cmd   {my $ev = ReadingsVal( "Rename_Ctrl", ".inc_event", "no_event" );;my ( $cmd ,$oldname, $newname ) =....
setstate Rename_Ctrl 2018-08-05 13:43:19 Trigger_device global
setstate Rename_Ctrl 2018-08-05 12:31:55 Trigger_log off
setstate Rename_Ctrl 2018-08-05 13:43:17 last_event RENAMED d2 d10
setstate Rename_Ctrl 2018-08-05 13:45:18 state active


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 August 2018, 17:11:32
im obigen device (rename_ctrl) ist das freecdm leider fehlerhaft und sollte durch das folgende ersetzt werden:

{
my $ev = ReadingsVal( "Rename_Ctrl", ".inc_event", "no_event" );
my ( $cmd ,$oldname, $newname ) = split( / /, $ev );
foreach my $testdevice ( keys %{ $modules{MSwitch}{defptr} } )
{
my $devhash = $defs{$testdevice};
my $tochange1 = ReadingsVal( $testdevice, ".Device_Affected", "" );
$tochange1    =~ s/$oldname-/$newname-/g;
readingsSingleUpdate( $devhash, ".Device_Affected", $tochange1, 0 );
$tochange1 = ReadingsVal( $testdevice, ".Device_Affected_Details", "" );
$tochange1 =~ s/\n/[enl]/g;
$tochange1 = "[sta]".$tochange1;
    my $x = 0;
    while ( $tochange1 =~ m/(.*?[^a-zA-Z0-9])($oldname)([^a-zA-Z0-9].*)/)
{
my $firstpart = $1;
my $secondpart = $2;
my $lastpart = $3;
$tochange1 = $firstpart.$newname.$lastpart;
$x++;
last if $x > 10;
}
$tochange1 =~ s/\[enl\]/\\n/g;
$tochange1 =~ s/\[sta\]//g;
readingsSingleUpdate( $devhash, ".Device_Affected_Details", $tochange1, 0 );
$tochange1 = ReadingsVal( $testdevice, "Trigger_device", "" );
$tochange1    =~ s/$oldname/$newname/g;
readingsSingleUpdate( $devhash, "Trigger_device", $tochange1, 0 );
MSwitch_LoadHelper($devhash);
}
}


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 09 August 2018, 20:27:36
Ich brauche nochmal hilfe beim erstellen eines MSwitch.

Ich möchte, wenn in dem Dummy Reset das reading Reset_on_off auf on gesetzt wird im freecmd folgende Befehle abgesetzt werden:

set Od_Gymn update
setreading Reset Reset_on_off off

Was muß ich alles einstellen?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 August 2018, 20:42:02
Zitat von: Torsten_MG am 09 August 2018, 20:27:36
Ich brauche nochmal hilfe beim erstellen eines MSwitch.

Ich möchte, wenn in dem Dummy Reset das reading Reset_on_off auf on gesetzt wird im freecmd folgende Befehle abgesetzt werden:

set Od_Gymn update
setreading Reset Reset_on_off off

Was muß ich alles einstellen?

schnell zusammengeklickt , sollte aber gehen. Configfile in ein leeres MSwitchDevice ( V1.71 ) einspielen.

gruss Byte09

#V V1.71
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~Od_Gymn~update[se][cnl]setreading~Reset~Reset_on_off~off[se],,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> Reset_on_off:on|no_trigger|Reset_on_off:off
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> Reset_on_off:on
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.4
#S Trigger_device -> Reset
#S Trigger_log -> on
#S last_event -> Reset_on_off:on
#S state -> active
#A MSwitch_Extensions -> 0
#A MSwitch_Help -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Mode -> Notify
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 09 August 2018, 21:10:57
Danke, probiere ich morgen Nachmittag aus, bin jetzt auf der Arbeit (Nachtschicht)

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 14:22:25
Zitat von: Byte09 am 09 August 2018, 20:42:02
schnell zusammengeklickt , sollte aber gehen. Configfile in ein leeres MSwitchDevice ( V1.71 ) einspielen.

gruss Byte09

Super funktioniert!!

Nun habe ich noch eine Bitte, da ich es irgendwie nicht hinbekomme.

5 sek. nachdem die Befehle aus cmd1 abgesetzt wurden,

soll folgender Code aufgerufen werden:

{
my $richtung = "";
my $uhrzeit = "";
my $min = "";
my $linie = "";
my $i = 0;
my $j = 0;
my $k = 0;
{fhem("deletereading richtung_od Bus.*")};
{fhem("deletereading richtung_ry Bus.*")};
do
{
$richtung =  ReadingsVal("Od_Gymn","departure_" . $i . "_text","<undef>");
$uhrzeit =  ReadingsVal("Od_Gymn","departure_" . $i . "_time_human_readable","<undef>");
$linie =  ReadingsVal("Od_Gymn","departure_" . $i . "_number","<undef>");
$min = ReadingsVal("Od_Gymn","departure_" . $i . "_timeInMinutes","<undef>");
{fhem("setreading richtung_od Marker 0")};
{fhem("setreading richtung_ry Marker 0")};
if ($richtung ne "<undef>")
{
if($richtung eq "Mön. Clemens-August-Str." || $richtung eq "Mönchengl Nievelsteinstr." || $richtung eq "MG Rheydt Hbf" || $richtung eq "Mönchengl. Rostocker Straße" || $richtung eq "Mönchengladb. Wickrath Markt" || $richtung eq "MG Regiopark 3")
{fhem("setreading richtung_od Bus$j $richtung");
fhem("setreading richtung_od Bus_zeit$j $uhrzeit");
fhem("setreading richtung_od Bus_linie$j $linie");
fhem("setreading richtung_od Bus_min$j $min");
fhem("setreading richtung_od Marker 1")}
if(ReadingsVal("richtung_od","Marker","") ne "1")
{$j--}
if($richtung eq "Mönchengl. Künkelstraße" || $richtung eq "Mönchengladbach Marienplatz" || $richtung eq "MG Hbf /Europaplatz" || $richtung eq "Mönchengl. Am Hommelsbach" || $richtung eq "Mönchengl. Künkelstraße")
{fhem("setreading richtung_ry Bus$k $richtung");
fhem("setreading richtung_ry Bus_zeit$k $uhrzeit");
fhem("setreading richtung_ry Bus_linie$k $linie");
fhem("setreading richtung_ry Bus_min$k $min");
fhem("setreading richtung_ry Marker 1")}
if(ReadingsVal("richtung_ry","Marker","") ne "1")
{$k--}
}
$i++;
$j++;
$k++;
}while($richtung ne "<undef>")
}


Habe das jetzt erstmal ohne Zeitverzögerung in den MSwitch 'cmd2 eingetragen, aber irgendwie funktioniert es nicht.

#V V1.71
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~Od_Gymn~update[se][cnl]setreading~Reset~Reset_on_off~off[se],{[cnl]my~$richtung~=~""[se][cnl]my~$uhrzeit~=~""[se][cnl]my~$min~=~""[se][cnl]my~$linie~=~""[se][cnl]my~$i~=~0[se][cnl]my~$j~=~0[se][cnl]my~$k~=~0[se][cnl]{fhem("deletereading~richtung_od~Bus.*")}[se][cnl]{fhem("deletereading~richtung_ry~Bus.*")}[se][cnl]do[cnl]{[cnl]$richtung~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_text"#[ko]"<undef>")[se][cnl]$uhrzeit~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_time_human_readable"#[ko]"<undef>")[se][cnl]$linie~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_number"#[ko]"<undef>")[se][cnl]$min~=~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_timeInMinutes"#[ko]"<undef>")[se][cnl]{fhem("setreading~richtung_od~Marker~0")}[se][cnl]{fhem("setreading~richtung_ry~Marker~0")}[se][cnl]if~($richtung~ne~"<undef>")[cnl]{[cnl]if($richtung~eq~"Mön.~Clemens-August-Str."~#[wa]#[wa]~$richtung~eq~"Mönchengl~Nievelsteinstr."~#[wa]#[wa]~$richtung~eq~"MG~Rheydt~Hbf"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Rostocker~Straße"~#[wa]#[wa]~$richtung~eq~"Mönchengladb.~Wickrath~Markt"~#[wa]#[wa]~$richtung~eq~"MG~Regiopark~3")[cnl]{fhem("setreading~richtung_od~Bus$j~$richtung")[se][cnl]fhem("setreading~richtung_od~Bus_zeit$j~$uhrzeit")[se][cnl]fhem("setreading~richtung_od~Bus_linie$j~$linie")[se][cnl]fhem("setreading~richtung_od~Bus_min$j~$min")[se][cnl]fhem("setreading~richtung_od~Marker~1")}[cnl]if(ReadingsVal("richtung_od"#[ko]"Marker"#[ko]"")~ne~"1")[cnl]{$j--}[cnl]if($richtung~eq~"Mönchengl.~Künkelstraße"~#[wa]#[wa]~$richtung~eq~"Mönchengladbach~Marienplatz"~#[wa]#[wa]~$richtung~eq~"MG~Hbf~/Europaplatz"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Am~Hommelsbach"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Künkelstraße")[cnl]{fhem("setreading~richtung_ry~Bus$k~$richtung")[se][cnl]fhem("setreading~richtung_ry~Bus_zeit$k~$uhrzeit")[se][cnl]fhem("setreading~richtung_ry~Bus_linie$k~$linie")[se][cnl]fhem("setreading~richtung_ry~Bus_min$k~$min")[se][cnl]fhem("setreading~richtung_ry~Marker~1")}[cnl]if(ReadingsVal("richtung_ry"#[ko]"Marker"#[ko]"")~ne~"1")[cnl]{$k--}[cnl]}[cnl]$i++[se][cnl]$j++[se][cnl]$k++[se][cnl]}while($richtung~ne~"<undef>")[cnl]},delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> Reset_on_off:on|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> Reset_on_off:on
#S .Trigger_cmd_on -> Reset_on_off:on
#S .Trigger_condition -> [Reset#[dp]Reset_on_off]#[sp]eq#[sp]"on"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.4
#S Trigger_device -> Reset
#S Trigger_log -> on
#S last_event -> Reset_on_off:on
#S state -> active
#A MSwitch_Include_Webcmds -> 0
#A room -> Draussen->BUS
#A MSwitch_Mode -> Notify
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Safemode -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1


Wenn ich den code über {Fahrplan()} aus myUtils aufrufe, funktioniert der direkte Aufruf.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 16:03:37
Zitat von: Torsten_MG am 10 August 2018, 14:22:25
Super funktioniert!!

Nun habe ich noch eine Bitte, da ich es irgendwie nicht hinbekomme.

5 sek. nachdem die Befehle aus cmd1 abgesetzt wurden,

soll folgender Code aufgerufen werden:

{
my $richtung = "";
my $uhrzeit = "";
my $min = "";
my $linie = "";
my $i = 0;
my $j = 0;
my $k = 0;
{fhem("deletereading richtung_od Bus.*")};
{fhem("deletereading richtung_ry Bus.*")};
do
{
$richtung =  ReadingsVal("Od_Gymn","departure_" . $i . "_text","<undef>");
$uhrzeit =  ReadingsVal("Od_Gymn","departure_" . $i . "_time_human_readable","<undef>");
$linie =  ReadingsVal("Od_Gymn","departure_" . $i . "_number","<undef>");
$min = ReadingsVal("Od_Gymn","departure_" . $i . "_timeInMinutes","<undef>");
{fhem("setreading richtung_od Marker 0")};
{fhem("setreading richtung_ry Marker 0")};
if ($richtung ne "<undef>")
{
if($richtung eq "Mön. Clemens-August-Str." || $richtung eq "Mönchengl Nievelsteinstr." || $richtung eq "MG Rheydt Hbf" || $richtung eq "Mönchengl. Rostocker Straße" || $richtung eq "Mönchengladb. Wickrath Markt" || $richtung eq "MG Regiopark 3")
{fhem("setreading richtung_od Bus$j $richtung");
fhem("setreading richtung_od Bus_zeit$j $uhrzeit");
fhem("setreading richtung_od Bus_linie$j $linie");
fhem("setreading richtung_od Bus_min$j $min");
fhem("setreading richtung_od Marker 1")}
if(ReadingsVal("richtung_od","Marker","") ne "1")
{$j--}
if($richtung eq "Mönchengl. Künkelstraße" || $richtung eq "Mönchengladbach Marienplatz" || $richtung eq "MG Hbf /Europaplatz" || $richtung eq "Mönchengl. Am Hommelsbach" || $richtung eq "Mönchengl. Künkelstraße")
{fhem("setreading richtung_ry Bus$k $richtung");
fhem("setreading richtung_ry Bus_zeit$k $uhrzeit");
fhem("setreading richtung_ry Bus_linie$k $linie");
fhem("setreading richtung_ry Bus_min$k $min");
fhem("setreading richtung_ry Marker 1")}
if(ReadingsVal("richtung_ry","Marker","") ne "1")
{$k--}
}
$i++;
$j++;
$k++;
}while($richtung ne "<undef>")
}


Habe das jetzt erstmal ohne Zeitverzögerung in den MSwitch 'cmd2 eingetragen, aber irgendwie funktioniert es nicht.

#V V1.71
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~Od_Gymn~update[se][cnl]setreading~Reset~Reset_on_off~off[se],{[cnl]my~$richtung~=~""[se][cnl]my~$uhrzeit~=~""[se][cnl]my~$min~=~""[se][cnl]my~$linie~=~""[se][cnl]my~$i~=~0[se][cnl]my~$j~=~0[se][cnl]my~$k~=~0[se][cnl]{fhem("deletereading~richtung_od~Bus.*")}[se][cnl]{fhem("deletereading~richtung_ry~Bus.*")}[se][cnl]do[cnl]{[cnl]$richtung~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_text"#[ko]"<undef>")[se][cnl]$uhrzeit~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_time_human_readable"#[ko]"<undef>")[se][cnl]$linie~=~~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_number"#[ko]"<undef>")[se][cnl]$min~=~ReadingsVal("Od_Gymn"#[ko]"departure_"~.~$i~.~"_timeInMinutes"#[ko]"<undef>")[se][cnl]{fhem("setreading~richtung_od~Marker~0")}[se][cnl]{fhem("setreading~richtung_ry~Marker~0")}[se][cnl]if~($richtung~ne~"<undef>")[cnl]{[cnl]if($richtung~eq~"Mön.~Clemens-August-Str."~#[wa]#[wa]~$richtung~eq~"Mönchengl~Nievelsteinstr."~#[wa]#[wa]~$richtung~eq~"MG~Rheydt~Hbf"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Rostocker~Straße"~#[wa]#[wa]~$richtung~eq~"Mönchengladb.~Wickrath~Markt"~#[wa]#[wa]~$richtung~eq~"MG~Regiopark~3")[cnl]{fhem("setreading~richtung_od~Bus$j~$richtung")[se][cnl]fhem("setreading~richtung_od~Bus_zeit$j~$uhrzeit")[se][cnl]fhem("setreading~richtung_od~Bus_linie$j~$linie")[se][cnl]fhem("setreading~richtung_od~Bus_min$j~$min")[se][cnl]fhem("setreading~richtung_od~Marker~1")}[cnl]if(ReadingsVal("richtung_od"#[ko]"Marker"#[ko]"")~ne~"1")[cnl]{$j--}[cnl]if($richtung~eq~"Mönchengl.~Künkelstraße"~#[wa]#[wa]~$richtung~eq~"Mönchengladbach~Marienplatz"~#[wa]#[wa]~$richtung~eq~"MG~Hbf~/Europaplatz"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Am~Hommelsbach"~#[wa]#[wa]~$richtung~eq~"Mönchengl.~Künkelstraße")[cnl]{fhem("setreading~richtung_ry~Bus$k~$richtung")[se][cnl]fhem("setreading~richtung_ry~Bus_zeit$k~$uhrzeit")[se][cnl]fhem("setreading~richtung_ry~Bus_linie$k~$linie")[se][cnl]fhem("setreading~richtung_ry~Bus_min$k~$min")[se][cnl]fhem("setreading~richtung_ry~Marker~1")}[cnl]if(ReadingsVal("richtung_ry"#[ko]"Marker"#[ko]"")~ne~"1")[cnl]{$k--}[cnl]}[cnl]$i++[se][cnl]$j++[se][cnl]$k++[se][cnl]}while($richtung~ne~"<undef>")[cnl]},delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> Reset_on_off:on|no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> Reset_on_off:on
#S .Trigger_cmd_on -> Reset_on_off:on
#S .Trigger_condition -> [Reset#[dp]Reset_on_off]#[sp]eq#[sp]"on"
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 0.4
#S Trigger_device -> Reset
#S Trigger_log -> on
#S last_event -> Reset_on_off:on
#S state -> active
#A MSwitch_Include_Webcmds -> 0
#A room -> Draussen->BUS
#A MSwitch_Mode -> Notify
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Condition_Time -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Safemode -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1


Wenn ich den code über {Fahrplan()} aus myUtils aufrufe, funktioniert der direkte Aufruf.

schaue mir das gerne an , dafür musst du mir aber bitte die jeweilige rawdefinition aller beteiligten dummys aus dem code mal einstellen, sonst muss ich die alle nachbauen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 16:15:27
Departure:
defmod Od_Gymn Departure 6000000
attr Od_Gymn departure_departure 20023031
attr Od_Gymn departure_max_readings 20
attr Od_Gymn departure_provider Vrr
attr Od_Gymn disable 0
attr Od_Gymn room Draussen->BUS

setstate Od_Gymn active
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_delay 2
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_text MG Regiopark 3
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_time 2018-08-10T14:46+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_timeInMinutes 2
setstate Od_Gymn 2018-08-10 14:44:19 departure_0_time_human_readable 10.08.2018, 14:46 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_text Mönchengl. Am Hommelsbach
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_time 2018-08-10T15:26+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_timeInMinutes 42
setstate Od_Gymn 2018-08-10 14:44:19 departure_10_time_human_readable 10.08.2018, 15:26 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_text Mön. Clemens-August-Str.
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_time 2018-08-10T15:36+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_timeInMinutes 52
setstate Od_Gymn 2018-08-10 14:44:19 departure_11_time_human_readable 10.08.2018, 15:36 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_text Mönchengl. Künkelstraße
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_time 2018-08-10T15:38+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_timeInMinutes 54
setstate Od_Gymn 2018-08-10 14:44:19 departure_12_time_human_readable 10.08.2018, 15:38 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_text Mönchengl. Rostocker Straße
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_time 2018-08-10T15:44+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_timeInMinutes 60
setstate Od_Gymn 2018-08-10 14:44:19 departure_13_time_human_readable 10.08.2018, 15:44 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_text Mönchengl. Am Hommelsbach
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_time 2018-08-10T15:46+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_timeInMinutes 62
setstate Od_Gymn 2018-08-10 14:44:19 departure_14_time_human_readable 10.08.2018, 15:46 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_text Mön. Clemens-August-Str.
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_time 2018-08-10T15:56+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_timeInMinutes 72
setstate Od_Gymn 2018-08-10 14:44:19 departure_15_time_human_readable 10.08.2018, 15:56 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_text Mönchengl. Künkelstraße
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_time 2018-08-10T15:58+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_timeInMinutes 74
setstate Od_Gymn 2018-08-10 14:44:19 departure_16_time_human_readable 10.08.2018, 15:58 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_text Mönchengl. Rostocker Straße
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_time 2018-08-10T16:04+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_timeInMinutes 80
setstate Od_Gymn 2018-08-10 14:44:19 departure_17_time_human_readable 10.08.2018, 16:04 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_text Mönchengl. Am Hommelsbach
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_time 2018-08-10T16:06+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_timeInMinutes 82
setstate Od_Gymn 2018-08-10 14:44:19 departure_18_time_human_readable 10.08.2018, 16:06 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_text Mön. Clemens-August-Str.
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_time 2018-08-10T16:16+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_timeInMinutes 92
setstate Od_Gymn 2018-08-10 14:44:19 departure_19_time_human_readable 10.08.2018, 16:16 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_text Mönchengl. Am Hommelsbach
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_time 2018-08-10T14:46+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_timeInMinutes 2
setstate Od_Gymn 2018-08-10 14:44:19 departure_1_time_human_readable 10.08.2018, 14:46 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_text MG Hbf /Europaplatz
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_time 2018-08-10T14:56+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_timeInMinutes 12
setstate Od_Gymn 2018-08-10 14:44:19 departure_2_time_human_readable 10.08.2018, 14:56 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_text Mön. Clemens-August-Str.
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_time 2018-08-10T14:56+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_timeInMinutes 12
setstate Od_Gymn 2018-08-10 14:44:19 departure_3_time_human_readable 10.08.2018, 14:56 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_text Mönchengl. Künkelstraße
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_time 2018-08-10T14:58+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_timeInMinutes 14
setstate Od_Gymn 2018-08-10 14:44:19 departure_4_time_human_readable 10.08.2018, 14:58 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_text MG Regiopark 3
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_time 2018-08-10T15:04+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_timeInMinutes 20
setstate Od_Gymn 2018-08-10 14:44:19 departure_5_time_human_readable 10.08.2018, 15:04 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_text Mönchengl. Am Hommelsbach
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_time 2018-08-10T15:06+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_timeInMinutes 22
setstate Od_Gymn 2018-08-10 14:44:19 departure_6_time_human_readable 10.08.2018, 15:06 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_text Mön. Clemens-August-Str.
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_time 2018-08-10T15:16+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_timeInMinutes 32
setstate Od_Gymn 2018-08-10 14:44:19 departure_7_time_human_readable 10.08.2018, 15:16 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_number 001
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_text Mönchengl. Künkelstraße
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_time 2018-08-10T15:18+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_timeInMinutes 34
setstate Od_Gymn 2018-08-10 14:44:19 departure_8_time_human_readable 10.08.2018, 15:18 Uhr
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_delay 0
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_number 002
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_text MG Regiopark 3
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_time 2018-08-10T15:24+0200
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_timeInMinutes 40
setstate Od_Gymn 2018-08-10 14:44:19 departure_9_time_human_readable 10.08.2018, 15:24 Uhr
setstate Od_Gymn 2018-01-24 12:25:26 test 1


Dummy1
defmod richtung_od dummy
attr richtung_od room Draussen->BUS
attr richtung_od verbose 0

setstate richtung_od 2018-08-10 14:41:35 Bus0 MG Regiopark 3
setstate richtung_od 2018-08-10 14:41:35 Bus1 Mön. Clemens-August-Str.
setstate richtung_od 2018-08-10 14:41:35 Bus2 MG Regiopark 3
setstate richtung_od 2018-08-10 14:41:36 Bus3 Mön. Clemens-August-Str.
setstate richtung_od 2018-08-10 14:41:36 Bus4 MG Regiopark 3
setstate richtung_od 2018-08-10 14:41:36 Bus5 Mön. Clemens-August-Str.
setstate richtung_od 2018-08-10 14:41:36 Bus6 Mönchengl. Rostocker Straße
setstate richtung_od 2018-08-10 14:41:36 Bus7 Mön. Clemens-August-Str.
setstate richtung_od 2018-08-10 14:41:36 Bus8 Mönchengl. Rostocker Straße
setstate richtung_od 2018-08-10 14:41:36 Bus9 Mön. Clemens-August-Str.
setstate richtung_od 2018-08-10 14:41:35 Bus_linie0 002
setstate richtung_od 2018-08-10 14:41:35 Bus_linie1 001
setstate richtung_od 2018-08-10 14:41:35 Bus_linie2 002
setstate richtung_od 2018-08-10 14:41:36 Bus_linie3 001
setstate richtung_od 2018-08-10 14:41:36 Bus_linie4 002
setstate richtung_od 2018-08-10 14:41:36 Bus_linie5 001
setstate richtung_od 2018-08-10 14:41:36 Bus_linie6 002
setstate richtung_od 2018-08-10 14:41:36 Bus_linie7 001
setstate richtung_od 2018-08-10 14:41:36 Bus_linie8 002
setstate richtung_od 2018-08-10 14:41:36 Bus_linie9 001
setstate richtung_od 2018-08-10 14:41:35 Bus_min0 5
setstate richtung_od 2018-08-10 14:41:35 Bus_min1 15
setstate richtung_od 2018-08-10 14:41:35 Bus_min2 23
setstate richtung_od 2018-08-10 14:41:36 Bus_min3 35
setstate richtung_od 2018-08-10 14:41:36 Bus_min4 43
setstate richtung_od 2018-08-10 14:41:36 Bus_min5 55
setstate richtung_od 2018-08-10 14:41:36 Bus_min6 63
setstate richtung_od 2018-08-10 14:41:36 Bus_min7 75
setstate richtung_od 2018-08-10 14:41:36 Bus_min8 83
setstate richtung_od 2018-08-10 14:41:36 Bus_min9 95
setstate richtung_od 2018-08-10 14:41:35 Bus_zeit0 10.08.2018, 14:46 Uhr
setstate richtung_od 2018-08-10 14:41:35 Bus_zeit1 10.08.2018, 14:56 Uhr
setstate richtung_od 2018-08-10 14:41:35 Bus_zeit2 10.08.2018, 15:04 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit3 10.08.2018, 15:16 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit4 10.08.2018, 15:24 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit5 10.08.2018, 15:36 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit6 10.08.2018, 15:44 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit7 10.08.2018, 15:56 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit8 10.08.2018, 16:04 Uhr
setstate richtung_od 2018-08-10 14:41:36 Bus_zeit9 10.08.2018, 16:16 Uhr
setstate richtung_od 2018-08-10 14:41:36 Marker 0


Dummy2
defmod richtung_ry dummy
attr richtung_ry room Draussen->BUS
attr richtung_ry verbose 0

setstate richtung_ry 2018-08-10 14:41:35 Bus0 Mönchengl. Am Hommelsbach
setstate richtung_ry 2018-08-10 14:41:35 Bus1 MG Hbf /Europaplatz
setstate richtung_ry 2018-08-10 14:41:35 Bus2 Mönchengl. Künkelstraße
setstate richtung_ry 2018-08-10 14:41:35 Bus3 Mönchengl. Am Hommelsbach
setstate richtung_ry 2018-08-10 14:41:36 Bus4 Mönchengl. Künkelstraße
setstate richtung_ry 2018-08-10 14:41:36 Bus5 Mönchengl. Am Hommelsbach
setstate richtung_ry 2018-08-10 14:41:36 Bus6 Mönchengl. Künkelstraße
setstate richtung_ry 2018-08-10 14:41:36 Bus7 Mönchengl. Am Hommelsbach
setstate richtung_ry 2018-08-10 14:41:36 Bus8 Mönchengl. Künkelstraße
setstate richtung_ry 2018-08-10 14:41:36 Bus9 Mönchengl. Am Hommelsbach
setstate richtung_ry 2018-08-10 14:41:35 Bus_linie0 002
setstate richtung_ry 2018-08-10 14:41:35 Bus_linie1 002
setstate richtung_ry 2018-08-10 14:41:35 Bus_linie2 001
setstate richtung_ry 2018-08-10 14:41:35 Bus_linie3 002
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie4 001
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie5 002
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie6 001
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie7 002
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie8 001
setstate richtung_ry 2018-08-10 14:41:36 Bus_linie9 002
setstate richtung_ry 2018-08-10 14:41:35 Bus_min0 5
setstate richtung_ry 2018-08-10 14:41:35 Bus_min1 15
setstate richtung_ry 2018-08-10 14:41:35 Bus_min2 17
setstate richtung_ry 2018-08-10 14:41:35 Bus_min3 25
setstate richtung_ry 2018-08-10 14:41:36 Bus_min4 37
setstate richtung_ry 2018-08-10 14:41:36 Bus_min5 45
setstate richtung_ry 2018-08-10 14:41:36 Bus_min6 57
setstate richtung_ry 2018-08-10 14:41:36 Bus_min7 65
setstate richtung_ry 2018-08-10 14:41:36 Bus_min8 77
setstate richtung_ry 2018-08-10 14:41:36 Bus_min9 85
setstate richtung_ry 2018-08-10 14:41:35 Bus_zeit0 10.08.2018, 14:46 Uhr
setstate richtung_ry 2018-08-10 14:41:35 Bus_zeit1 10.08.2018, 14:56 Uhr
setstate richtung_ry 2018-08-10 14:41:35 Bus_zeit2 10.08.2018, 14:58 Uhr
setstate richtung_ry 2018-08-10 14:41:35 Bus_zeit3 10.08.2018, 15:06 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit4 10.08.2018, 15:18 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit5 10.08.2018, 15:26 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit6 10.08.2018, 15:38 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit7 10.08.2018, 15:46 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit8 10.08.2018, 15:58 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Bus_zeit9 10.08.2018, 16:06 Uhr
setstate richtung_ry 2018-08-10 14:41:36 Marker 0


Dummy3
defmod Reset dummy
attr Reset room Draussen->BUS

setstate Reset on
setstate Reset 2018-08-10 14:44:18 Reset_on_off off
setstate Reset 2018-08-09 20:14:10 state on
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 16:33:19
ich habe mir das jetzt schonmal angeschaut, ohne dummys . ich bin der meinung , das in deiner routine ( zumindest so wie du sie geposted hast ) schliessende Klammern "}" fehlen. kann das sein.

wenn ich die einzelnen if anweisungen etc mal nach und nach rausnehme , bleiben offnende klammern , zu denen es kein gegenstück gibt .

wobei du beachten musst , das die erste { und letzte } nicht zur routine gehört, sondern bei freecmd den perlcode ein/ausleitet .

kannst du das bitte mal prüfen.

poste doch bitten ochmal die routine direkt aus der myutils, ohne irgendwelche änderungen .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 16:39:37
habe dir mal eine PM geschrieben , wenn du willst kannst du mich gerne mal anrufen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 16:48:32
Wenn ich jetzt nichts übersehen habe, sind alle Klammern da.

Hier mal der Code direkt aus der myUtils
sub
Fahrplan()
{
my $richtung = "";
my $uhrzeit = "";
my $min = "";
my $linie = "";
my $i = 0;
my $j = 0;
my $k = 0;
{fhem("deletereading richtung_od Bus.*")};
{fhem("deletereading richtung_ry Bus.*")};
do
{
        $richtung =  ReadingsVal("Od_Gymn","departure_" . $i . "_text","<undef>");
$uhrzeit =  ReadingsVal("Od_Gymn","departure_" . $i . "_time_human_readable","<undef>");
$linie =  ReadingsVal("Od_Gymn","departure_" . $i . "_number","<undef>");
$min = ReadingsVal("Od_Gymn","departure_" . $i . "_timeInMinutes","<undef>");
{fhem("setreading richtung_od Marker 0")};
{fhem("setreading richtung_ry Marker 0")};

        if ($richtung ne "<undef>")
       {
if($richtung eq "Mön. Clemens-August-Str." || $richtung eq "Mönchengl Nievelsteinstr." || $richtung eq "MG Rheydt Hbf" || $richtung eq "Mönchengl. Rostocker Straße" || $richtung eq "Mönchengladb. Wickrath Markt" || $richtung eq "MG Regiopark 3")
{fhem("setreading richtung_od Bus$j $richtung");
fhem("setreading richtung_od Bus_zeit$j $uhrzeit");
fhem("setreading richtung_od Bus_linie$j $linie");
fhem("setreading richtung_od Bus_min$j $min");
fhem("setreading richtung_od Marker 1")
}
if(ReadingsVal("richtung_od","Marker","") ne "1")
{$j--}
if($richtung eq "Mönchengl. Künkelstraße" || $richtung eq "Mönchengladbach Marienplatz" || $richtung eq "MG Hbf /Europaplatz" || $richtung eq "Mönchengl. Am Hommelsbach" || $richtung eq "Mönchengl. Künkelstraße")
{fhem("setreading richtung_ry Bus$k $richtung");
fhem("setreading richtung_ry Bus_zeit$k $uhrzeit");
fhem("setreading richtung_ry Bus_linie$k $linie");
fhem("setreading richtung_ry Bus_min$k $min");
fhem("setreading richtung_ry Marker 1")
}
if(ReadingsVal("richtung_ry","Marker","") ne "1")
{$k--}
}
$i++;
$j++;
$k++;
}while($richtung ne "<undef>")
}
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 17:10:14
Zitat von: Torsten_MG am 10 August 2018, 16:48:32
Wenn ich jetzt nichts übersehen habe, sind alle Klammern da.

Hier mal der Code direkt aus der myUtils
sub
Fahrplan()
{
my $richtung = "";
my $uhrzeit = "";
my $min = "";
my $linie = "";
my $i = 0;
my $j = 0;
my $k = 0;
{fhem("deletereading richtung_od Bus.*")};
{fhem("deletereading richtung_ry Bus.*")};
do
{
        $richtung =  ReadingsVal("Od_Gymn","departure_" . $i . "_text","<undef>");
$uhrzeit =  ReadingsVal("Od_Gymn","departure_" . $i . "_time_human_readable","<undef>");
$linie =  ReadingsVal("Od_Gymn","departure_" . $i . "_number","<undef>");
$min = ReadingsVal("Od_Gymn","departure_" . $i . "_timeInMinutes","<undef>");
{fhem("setreading richtung_od Marker 0")};
{fhem("setreading richtung_ry Marker 0")};

        if ($richtung ne "<undef>")
       {
if($richtung eq "Mön. Clemens-August-Str." || $richtung eq "Mönchengl Nievelsteinstr." || $richtung eq "MG Rheydt Hbf" || $richtung eq "Mönchengl. Rostocker Straße" || $richtung eq "Mönchengladb. Wickrath Markt" || $richtung eq "MG Regiopark 3")
{fhem("setreading richtung_od Bus$j $richtung");
fhem("setreading richtung_od Bus_zeit$j $uhrzeit");
fhem("setreading richtung_od Bus_linie$j $linie");
fhem("setreading richtung_od Bus_min$j $min");
fhem("setreading richtung_od Marker 1")
}
if(ReadingsVal("richtung_od","Marker","") ne "1")
{$j--}
if($richtung eq "Mönchengl. Künkelstraße" || $richtung eq "Mönchengladbach Marienplatz" || $richtung eq "MG Hbf /Europaplatz" || $richtung eq "Mönchengl. Am Hommelsbach" || $richtung eq "Mönchengl. Künkelstraße")
{fhem("setreading richtung_ry Bus$k $richtung");
fhem("setreading richtung_ry Bus_zeit$k $uhrzeit");
fhem("setreading richtung_ry Bus_linie$k $linie");
fhem("setreading richtung_ry Bus_min$k $min");
fhem("setreading richtung_ry Marker 1")
}
if(ReadingsVal("richtung_ry","Marker","") ne "1")
{$k--}
}
$i++;
$j++;
$k++;
}while($richtung ne "<undef>")
}


ja, du hast recht .

es gibt einen fehler bei der verarbeitung des perlcodes, und zwar werde "||" intern  falsch behandelt . gib mir eine stunde zeit , ich behebe das.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 17:34:46
Zusätzlich muß ja dieser Code um 5sek verzögert abgesetzt werden.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 17:44:40
Zitat von: Torsten_MG am 10 August 2018, 17:34:46
Zusätzlich muß ja dieser Code um 5sek verzögert abgesetzt werden.

so , nimm den code bitte aus freecmd "cmd2" raus .
drücke dann "add action for freecmd"

dort fügst du den code bitte in "cmd1" ein und gibst darunterbei cmd1 delay 00:00:05 ein.
modify actions drücken.

den trigger für cmd 2 nimmst du bitte ganz raus.

wenn alles gespeichert ist mach bitteein update , ich habe probehalber mal v1.71a eingespielt . reload 98_MSwitch.pm.

danach versuch bitte mal ob es geht und sag mir bescheid.

parallel richt ich jetzt auch mal die ganzen dummys ein

gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 17:58:36
Mit dem Code funktioniert es noch nicht.

Aber mit dem 2. freecmd und den 5sek und den Aufruf {Fahrplan()} funktionierts
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 18:04:22
Zitat von: Torsten_MG am 10 August 2018, 17:58:36
Mit dem Code funktioniert es noch nicht.

Aber mit dem 2. freecmd und den 5sek und den Aufruf {Fahrplan()} funktionierts

ok ,dann lass es bitte erstmal so , ich muss das in ruhe durchtesten. muss dafür aber auch noch module installieren , die ich nicht nutze.

ich melde mich sobald ich es habe.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 18:05:48
Kein Streß, es funktioniert ja erstmal!!
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 August 2018, 18:39:37
Zitat von: Torsten_MG am 10 August 2018, 18:05:48
Kein Streß, es funktioniert ja erstmal!!

noch eine kleinigkeit umgebaut, geht jetzt bei mir mit V1.71b.

danke für deine Geduld.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 10 August 2018, 19:02:20
Zitat von: Byte09 am 10 August 2018, 18:39:37
noch eine kleinigkeit umgebaut, geht jetzt bei mir mit V1.71b.
Perfekt! Funktioniert!

Zitat von: Byte09 am 10 August 2018, 18:39:37
danke für deine Geduld.

Kein Problem! Ich habe zu danken, für das super Modul

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 12 August 2018, 06:18:23
Guten morgen,

mir ist da gerade noch ein Problem bei einem schon laufendem MSwitch aufgefallen.

#V V1.71b
#S .Device_Affected -> FL_Lampe-AbsCmd1,FL_Lampe-AbsCmd2,FL_Lampe_D-AbsCmd1,FL_Lampe_D-AbsCmd2
#S .Device_Affected_Details -> FL_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]#[sp]eq#[sp]"FL_Taster1#[dp]state#[dp]FL_Taster1_02"#[sp]OR#[sp][$EVENT]#[sp]eq#[sp]"FL_Taster1#[dp]state#[dp]FL_Taster1_01"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_01"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_02",,0,0,1|FL_Lampe-AbsCmd2,pct,no_action,50 30 0.1,,delay1,delay1,000000,000000,[$EVTPART1]#[sp]eq#[sp]"FL_Taster2_Motion"#[sp]AND#[sp][$EVTPART2]#[sp]eq#[sp]"trigger_cnt"#[sp]AND#[sp][[FL_Lampe_D#[dp]Licht_an]-[FL_Lampe_D#[dp]Licht_aus]]#[sp]AND#[sp][FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1|FL_Lampe_D-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"on",,0,0,1|FL_Lampe_D-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> FL_Taster1,FL_Taster2_01,FL_Taster2_02,FL_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.4
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> FL_Taster2_Motion:state:noMotion
#S state -> on
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Flur->Licht,MSwitch
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0


Und zwar bei dem Bereich wo ich den Bewegungsmelder einsetze.

Ich frage ja mit
[$EVTPART1] eq "FL_Taster2_Motion" AND [$EVTPART2] eq "trigger_cnt" AND [[FL_Lampe_D:Licht_an]-[FL_Lampe_D:Licht_aus]] AND [FL_Lampe:state] eq "off"
die Bedingungen ab und Schalte die Lampe mit
MSwitch 'cmd1': Set pct 50 30 1

für 30sek. mit einer leuchtkraft von 50%

Mir ist nun aufgefallen,

daß wenn nach ablauf der 30sek. sich noch jemand im erfassungsbereich des BWM befindet, dann ändert sich der Zustand der Bedingungen nicht, was so auch erwünscht ist. Aber die Lampe geht nicht an. Erst, wenn nach weiteren 30sek, immer noch jemand im Erfassungsbereich ist, geht die Lampe an.

Beispiel:

um 6:10:24 Uhr wird der BWM ausgelöst, die Lampe geht an
um 6:10:54 Uhr geht die Lampe wieder aus, obwohl noch jemand im Erfassungsbereich ist und die Events haben sich nicht geändert.
um 6:11:24 Uhr geht die Lampe wieder an, weil immer noch jemand im Erfassungsbereich des BWM ist.

Am BWM kann es ja nicht liegen, da die Events sich ja nicht ändern. Den minInterval habe ich auch auf 30sek. stehen


EDIT:

Wo holt sich der MSwitch eigentlich die Info FL_Taster2_Motion:trigger_cnt:243 im EVENT her? Das trigger_cnt staht ja auch im [EVTPART2] welches ich abfrage. Ich kann diese Zeile weder im FL_Taster2 noch im FL_Taster2_Motion finden. Ich wollte nämlich mal mit hilfe eines notify ausprobieren, ob es am MSwitch liegt, oder ob ich mit dem notify auch diesen Effekt habe. Aber das trigger_cnt finde ich in beiden devices nicht
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 09:12:42
Zitat von: Torsten_MG am 12 August 2018, 06:18:23
Guten morgen,

mir ist da gerade noch ein Problem bei einem schon laufendem MSwitch aufgefallen.

#V V1.71b
#S .Device_Affected -> FL_Lampe-AbsCmd1,FL_Lampe-AbsCmd2,FL_Lampe_D-AbsCmd1,FL_Lampe_D-AbsCmd2
#S .Device_Affected_Details -> FL_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVENT]#[sp]eq#[sp]"FL_Taster1#[dp]state#[dp]FL_Taster1_02"#[sp]OR#[sp][$EVENT]#[sp]eq#[sp]"FL_Taster1#[dp]state#[dp]FL_Taster1_01"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_01"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_02",,0,0,1|FL_Lampe-AbsCmd2,pct,no_action,50 30 0.1,,delay1,delay1,000000,000000,[$EVTPART1]#[sp]eq#[sp]"FL_Taster2_Motion"#[sp]AND#[sp][$EVTPART2]#[sp]eq#[sp]"trigger_cnt"#[sp]AND#[sp][[FL_Lampe_D#[dp]Licht_an]-[FL_Lampe_D#[dp]Licht_aus]]#[sp]AND#[sp][FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1|FL_Lampe_D-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"on",,0,0,1|FL_Lampe_D-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> FL_Taster1,FL_Taster2_01,FL_Taster2_02,FL_Taster2_Motion
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 0.4
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> FL_Taster2_Motion:state:noMotion
#S state -> on
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Flur->Licht,MSwitch
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0


Und zwar bei dem Bereich wo ich den Bewegungsmelder einsetze.

Ich frage ja mit
[$EVTPART1] eq "FL_Taster2_Motion" AND [$EVTPART2] eq "trigger_cnt" AND [[FL_Lampe_D:Licht_an]-[FL_Lampe_D:Licht_aus]] AND [FL_Lampe:state] eq "off"
die Bedingungen ab und Schalte die Lampe mit
MSwitch 'cmd1': Set pct 50 30 1

für 30sek. mit einer leuchtkraft von 50%

Mir ist nun aufgefallen,

daß wenn nach ablauf der 30sek. sich noch jemand im erfassungsbereich des BWM befindet, dann ändert sich der Zustand der Bedingungen nicht, was so auch erwünscht ist. Aber die Lampe geht nicht an. Erst, wenn nach weiteren 30sek, immer noch jemand im Erfassungsbereich ist, geht die Lampe an.

Beispiel:

um 6:10:24 Uhr wird der BWM ausgelöst, die Lampe geht an
um 6:10:54 Uhr geht die Lampe wieder aus, obwohl noch jemand im Erfassungsbereich ist und die Events haben sich nicht geändert.
um 6:11:24 Uhr geht die Lampe wieder an, weil immer noch jemand im Erfassungsbereich des BWM ist.

Am BWM kann es ja nicht liegen, da die Events sich ja nicht ändern. Den minInterval habe ich auch auf 30sek. stehen


EDIT:

Wo holt sich der MSwitch eigentlich die Info FL_Taster2_Motion:trigger_cnt:243 im EVENT her? Das trigger_cnt staht ja auch im [EVTPART2] welches ich abfrage. Ich kann diese Zeile weder im FL_Taster2 noch im FL_Taster2_Motion finden. Ich wollte nämlich mal mit hilfe eines notify ausprobieren, ob es am MSwitch liegt, oder ob ich mit dem notify auch diesen Effekt habe. Aber das trigger_cnt finde ich in beiden devices nicht

ich muss das nachher mal anhand deiner config durchspielen , hat letztendlich wohl aber damit zu tun , dass die lampe nach 30 sekunden ausgeht , wenn kein neues event mit motion kommt. dieses scheint aber auch erst erneut nach den 30 sekunden zu kommen ?! da muss einfach das timing passen , das heisst , die lampen müssen mindestens solange an sein , bis der melder ( zumindest theoretisch ) en erneutes motion melden kann, est dann kann auch ein erneutes setzen der timer für die lampe erfolgen.

kurz: solange in den 30 sekunden brenndauer kein erneutes event erfolgt , schaltet er die lampen ( richtigerweise ) ab.

ich werde mich aber heute nochmal damit beschäftigen und melde mich dann nochmal , stehe aber gerade erstmal mit meinen eigenen bewegungsmeldern auf kriegsfuss  ;)

edit:

ZitatEDIT:

Wo holt sich der MSwitch eigentlich die Info FL_Taster2_Motion:trigger_cnt:243 im EVENT her? Das trigger_cnt staht ja auch im [EVTPART2] welches ich abfrage. Ich kann diese Zeile weder im FL_Taster2 noch im FL_Taster2_Motion finden. Ich wollte nämlich mal mit hilfe eines notify ausprobieren, ob es am MSwitch liegt, oder ob ich mit dem notify auch diesen Effekt habe. Aber das trigger_cnt finde ich in beiden devices nicht

das ist ein Event, welches von zugehörigem Modul erzeugt wird ( handelt sich ja um einen Homematicschalter mi BWM - glaube ich ) - insofern muss es auch im Eventmonitor auftauchen .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 12 August 2018, 10:07:17
Wenn nach dem ersten Motion keine Bewegung kommt, geht der BWM nach 30ek. Auf nomotion. Ist aber permanent Bewegung vor dem BWM bleibt er bei motion. Aber erst 60sek  nach dem 1. schalten geht die Lampe wieder an.

Also: eine Bewegung, Lampe geht an. 30sek später geht auf nomotion und Lampe geht aus.

Dauerhafte Bewegung: motion on. Nach 30sek geht Lampe aus, aber weiterhin motion on. Nach weiteren 30sek. Lampe geht an und weiterhin motion on.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 11:03:34
Zitat von: Torsten_MG am 12 August 2018, 10:07:17
Wenn nach dem ersten Motion keine Bewegung kommt, geht der BWM nach 30ek. Auf nomotion. Ist aber permanent Bewegung vor dem BWM bleibt er bei motion.

genau das ist das problem , er bleibt bei motion , aber es wird kein neues event generiert , auf das reagiert werden kann .

da muss entweder im bewegungsmelder dafür gesorgt werden , dass ei neues event generiert wird ( per event on-...regel ) , weiss aber nicht ob des bei deinen Meldern geht, oder es muss im MSwitch eine entsprechende prüfung stattfinden.

reagiert werden kann nur auf ein erzeugtes event . wird keines generiert , sondern es nur nicht geändert , gibt es erstmal nichts , worauf reagiert werden kann.

ich schaue es mir nachher an.

gruss Byte09 
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 11:27:06
versuch bitte mal , ob du es lösen kannst , indem du bei deinem bewegungsmelder das attribut "attr <device> event-min-interval reading1:minInterval1" entsprechend setzt .

du musst halt dafür sorgen , dass das event erneut kommt, bevor die 30 sekunden abgelaufen sind.

nicht so schön ist dabei , dass natürlich eine entsprechende systemlast erzeugt wird.

alternativ müsstest du das MSwitch komplett umbauen , und zwar so , dass die lampen nicht schon von vornherein mit einem timer gesetzt werden , sondern diese "nur" angeschaltet werden. dann muss nach 30 sekunden geprüft werden, ob das reading noch auf motion steht , wenn nicht -> lampen aus , wenn ja -> erneute prüfung naxh 30 sekunden.
das geht auch alles in einem device, ist aber schon etwas komplizierter.

alternativ2 kannst du auch bei dem event motion nur "anschalten" , und wenn das event nomotion kommt "abschalten". dann bist du halt an die internen vorgaben des bewegungsmelders gebunden , wielange es dauert, bis das event "nomotion" kommt. ich glaube aber bei den homematic kannst du das über die register ändern (?).

gruss Byte09

edit: du triggerst auch nicht wirklich auf motion, obwohl dieses event ja kommen sollte , sondern irgendwie "hintenrum" (  bei den conditions ) . das sollte auch mal geändert werden , das das alles unnötig verkompliziert. Gerne kannst du mich dazu anrufen , das übersteigt hier den rahmen , bzw verkompliziert es nochmals
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 11:50:16
alternativ3: du gaukelst demMSwitch über set MSwitch fakeevent .... vor, das ein Event "motion" ankommt, wenn nach 29 sekunden der state des melders noch auf motion steht. Ist m.E die einfachste lösung in diesem Fall , sollten wir ggf. aber auch telefonieren.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 12 August 2018, 11:55:59
Bin jetzt unterwegs.

Aber mir würde folgende Lösung am besten gefallen.

Bei motion bzw. Trigger_cnt geht die Lampe mit set pcs 50 an und bleibt an bis nomotion kommt.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 12:02:02
Zitat von: Torsten_MG am 12 August 2018, 11:55:59
Bin jetzt unterwegs.

Aber mir würde folgende Lösung am besten gefallen.

Bei motion bzw. Trigger_cnt geht die Lampe mit set pcs 50 an und bleibt an bis nomotion kommt.

Gesendet von meinem SM-J730F mit Tapatalk

dann ändere alles was die lampe mit timer einschaltet auf pct 50 und lege den  cmd2 an, der ja jetzt komplett leer ist .

diesen löst du mit entsprechendem event "nomotion" bei "switch DEVICE off + execute 'cmd2'"aus und schaltest die lampe bei affected devicec im cmd2 aus.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 12 August 2018, 18:32:29
Wenn ich versuche bei trigger details bei switch FL_Licht off + execute 'cmd2' etwas einzutragen, dann kommt die Meldung trigger for 'switch Test on + execute on commands' and 'switch Test off + execute off commands' must not both be '*'


Habe deswegen ein weiteres affects Device gemacht und den OFF Befehl dort eingetragen. Scheint so zu funktionieren.

Gesendet von meinem SM-J730F mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 August 2018, 18:36:42
Zitat von: Torsten_MG am 12 August 2018, 18:32:29
Wenn ich versuche bei trigger details bei switch FL_Licht off + execute 'cmd2' etwas einzutragen, dann kommt die Meldung trigger for 'switch Test on + execute on commands' and 'switch Test off + execute off commands' must not both be '*'


Habe deswegen ein weiteres affects Device gemacht und den OFF Befehl dort eingetragen. Scheint so zu funktionieren.

Gesendet von meinem SM-J730F mit Tapatalk

ja, im notifymode geht das , das beide zweige denselben trigger nutzen , im fullmode nicht , das dort keinen sinn ergiebt , weil das MSwitch in diesem mode ja auch seinen status ändert. da musst du in den verschiedenen zweigen auf verschiedene events triggern

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 August 2018, 18:14:00
Ich werde die kommende Version des Moduls in den nächsten Tagen nun doch in das Fhem SVN einpflegen und eine aktualisierte Dokumentation im Wiki einstellen.

das heisst, das Updates demnächst über das Fhemupdate erfolgen und das bisherige Repository aus der Verwaltungsdatei entfernt werden sollte.

dieses Repository werde ich künftig nur nutzen , um Entwicklerversionen anzubieten.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 August 2018, 11:40:48
ich habe eben die Version V1.73 in das SVN eingechecked, somit ist ein update über git nicht mehr nötig.

die Version 1.73 hat ein geändertes Startverhalten. Ohne weitere Einstellungen reagieren MSwitch - devices nun innerhalb von 1 Minute nach Fhemstart nicht auf Events, somit fängt das Modul im Grunde erst 1 Minute verzögert an zu arbeiten. Dieses war aus verschiedenen Gründen notwendig.

Mit dem neuen Attribut "MSwitch_Startdelay" ist dieses Verhalten beinflussbar und kann auch auf sofortigen Start gesetzt werden (0 Sekunden verzögerung). Dierses sollte nur in Ausnahmefällen genutzt werden.
Für ein nicht gesetztes Attribut werden aut. 60 Sekunden angenommen.

Weiterhin wird bei dem ersten Systemstart nach einem Update die interne StrukturVersionsnummer auf V1.2 gesetzt, dazu werden alle MSwitchdevices aktualisiert.

Interne Hilfetexte wurden aktualisiert und die anordnung derHilfebuttons geändert.

diverse interne änderungen

Bechreibung im FhemWiki:
https://wiki.fhem.de/wiki/MSwitch (https://wiki.fhem.de/wiki/MSwitch)

Der Update-Verweis auf das GIT kann und sollte somit gelöscht werden , falls gesetzt :

update delete https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: andies am 26 August 2018, 13:13:55
Zitat von: Byte09 am 26 August 2018, 11:40:48
Der Update-Verweis auf das GIT kann und sollte somit gelöscht werden , falls gesetzt :

update delete https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
Dann lösche ich das mal aus dem Wiki, oder?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 August 2018, 13:44:13
Zitat von: andies am 26 August 2018, 13:13:55
Dann lösche ich das mal aus dem Wiki, oder?

ja, prima.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 27 August 2018, 17:59:48
Aus irgendeinem Grund hats mir heute ein MSwitch zerschossen. Habe update all und shutdown restart gemacht und plötzlich war trigger details und device action leer.

Habe wieder alles gefüllt und läuft wieder.

Es ging um das MSwitch wo ich mit einem Homematic Taster eine Ikea Tradfri Lampe schalte. Desweiteren muß ich wieder FreeCMD nehmen, da wenn ich den Device der Lampe direkt wähle zur Auswahl nur no_action und remove stehen.

#V V1.73
#S .Device_Affected -> BD_Lampe-AbsCmd1,FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> BD_Taster1_02 Short#[tr]no_trigger#[tr]BD_Taster1_01 Short
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> BD_Taster1_02 Short
#S .Trigger_on -> BD_Taster1_01 Short
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_01
#S state -> on
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Extensions -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Help -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitchcmd -> 1
#A MSwitch_Mode -> Full
#A room -> 01_Bad
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Debug -> 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 August 2018, 18:18:09
Zitat von: Torsten_MG am 27 August 2018, 17:59:48
Aus irgendeinem Grund hats mir heute ein MSwitch zerschossen. Habe update all und shutdown restart gemacht und plötzlich war trigger details und device action leer.

Habe wieder alles gefüllt und läuft wieder.

Es ging um das MSwitch wo ich mit einem Homematic Taster eine Ikea Tradfri Lampe schalte. Desweiteren muß ich wieder FreeCMD nehmen, da wenn ich den Device der Lampe direkt wähle zur Auswahl nur no_action und remove stehen.

#V V1.73
#S .Device_Affected -> BD_Lampe-AbsCmd1,FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> BD_Taster1_02 Short#[tr]no_trigger#[tr]BD_Taster1_01 Short
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> BD_Taster1_02 Short
#S .Trigger_on -> BD_Taster1_01 Short
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_01
#S state -> on
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Extensions -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Help -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitchcmd -> 1
#A MSwitch_Mode -> Full
#A room -> 01_Bad
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Debug -> 0



Habe eben das gleiche Phämonen gehabt und schaue gerade was da los ist .

BITTE UNBEDINGT MAL EIN BACKUP_MSWITCH ALL_DEVICES machen vor eine fhem restart.

ich stelle sobald wie möglich eine aktualisierte version ein , die wieder alle devices lädt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 August 2018, 18:54:37
WICHTIG !

Leider hat sich bei der Codebereinigung , vor dem einchecken in das svn ein blöder fehler eingeschlichen.

dieser sorgt dafür , dass nach einem Neustart von Fhem nur noch leere MSwitch-Devices existieren.

ich habe eine gefixde version in das GIT gestellt, bitte unbedingt so schnell wie möglich ein einmaliges update machen

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

einen Fix stelle ich in der kommende Stunde in das SVN.

Sorry, das hätte nicht passieren dürfen , ist aber nicht mehr zu ändern

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: andies am 27 August 2018, 19:28:55
Shit happens  ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: det. am 27 August 2018, 20:13:45
Und ich hatte gedacht, das muss so sein  :D :D  Hatte heute früh, als mein Sonos keinen Ton spielte nach dem PC Start einfach die Mswitch Einstellungen mit restore zurückgeholt. Gut wenn man sie gespeichert  hat...
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 27 August 2018, 20:27:35
Muß ich das set <device> backup_mswitch all_devices in jedem MSwitch auslösen, oder nur in einem und damit wird von allen MSwitch ein Backup gemacht?

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 August 2018, 20:36:34
Zitat von: Torsten_MG am 27 August 2018, 20:27:35
Muß ich das set <device> backup_mswitch all_devices in jedem MSwitch auslösen, oder nur in einem und damit wird von allen MSwitch ein Backup gemacht?

Gesendet von meinem SM-J730F mit Tapatalk
Nur in einem ... da gibt es ja nur die Auswahl all-devices

Gruss Byte0o

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 August 2018, 20:38:10
Zitat von: det. am 27 August 2018, 20:13:45
Und ich hatte gedacht, das muss so sein  :D :D  Hatte heute früh, als mein Sonos keinen Ton spielte nach dem PC Start einfach die Mswitch Einstellungen mit restore zurückgeholt. Gut wenn man sie gepieichert hat...
Definitiv ! Sonst geht es halt nur über die fhem.save ... aber kennen wir ja ;-)

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 August 2018, 17:15:20
ab morgigem fhemupdate werden in Freecmds Kommentarzeilen akzeptiert. Wie in Perl beginnen diese mit einer Raute und enden mit Zeilenumbruch.
Dieses ist sowoh im Perlmodus "{}" als auch im Fhemmodus möglich.
Entsprechende Zeilen werden vor intern Befehlsausführung komplett entfernt.

anzeige der aktuellen systemzeit im Fenster "show active timer".

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 August 2018, 18:49:14
nur mal so ein codeschnipsel , ggf. such ja mal jemand so etwas.

da die dunklen monate wieder vor der tür stehe und ich es leid bin , nach hause zu kommen , wohnzimmer - volle beleuchtung, fernseher an  - aber leer. beide kinder in ihren zimmern , natürlich auch alles an  habe ich mal ein MSwitch gebastelt, was entsprechend alles Abschaltet ( bis auf eine Minimalbeleuchtung ) , wenn in einem gewissen zeitraum keine bewegung mehr festgestellt wird. wird nach der abschaltung wieder bewegung registriert, schaltet alles in den zustand , der bei abschaltung aktuell war ( nur für einen eingestellten zeitraum - hier 1800 sekunden -, danach schaltet es alles ab und reagiert auch nicht mehr auf bewegungen , bis manuell wieder etwas angeschaltet wurde ).

unterschieden wird hier noch nach 2 modi - ferneher an / fernseher nicht an - und die zeiten , in denen eine bewegung registriert werden muss, um nicht abzuschalten, werden unterschiedlich ( falls man beim fernsehen nicht zum zappeln neigt ) gesetzt.

ich setze das MSwitch seit einiger Zeit in drei Zimmern ( kinderzimmer / Wohnzimmer ) ein und es läuft ( nach anpassung der erkennungszeiten ) zuverlässig.

aufgrund der raumgrösse betreibe ich im wohnzimmer 3 bewegungsmelder ( zonen ) die zur einer struktur zusammengefasst sind. zur überprüfung , ob das MSwitch überhaupt aktiv werden muss sind ebenso alle geräte , die berücksichtigt werden sollen zur einer struktur zusammengefasst ( wenn sowieso alles aus ist , muss das Device ja nicht aktiv werden).

weiterhin gibt es einen dummy "energy_save" , mit dem ich das ganze aktivieren/deaktivieren kann.

da es doch recht komplex ist und natürlich diverse spezifische gerätenamen enthält , habe ich nur mal ein screenshot in den anhang gestellt. Falls jemand interesse hat , stelle ich gerne ein abgespecktes configfile zur verfügung , dass sich dann entsprechend erweitern , anpassen lässt.

gruss Byte09



.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 31 August 2018, 18:24:22
kommendes update

mit dem nächsten Update ändere ich die EVENT-Readings , wenn das MSwitch über Zeitsteuerung 'ausgelöst' wird.

Bei 'Auslösung ' um z.b 17:59 werden die Readings wie folgt aussehen, wobei "timetest" in diesem Fall der Name des MSwitch-Devices ist:

EVENT timetest:execute_timer_P1:17:59
EVTFULL timetest:execute_timer_P1:17:59
EVTPART1 timetest
EVTPART2 execute_timer_P1
EVTPART3 17:59


"execute_timer_P1" bis "execute_timer_P4" ist der auslösende Zweig .

somit ist es möglich , in einem device welches zu mehreren Zeiten auslöst, verschiedene Aktionen auszuführe , indem in den Conditions auf die konkrete Zeit (EVTPART3) geprüft wird und jeder Zeit eine Aktion zugeordnet wird.

bisher lieferte eine zeitgesteuerte Auslüsung keine Zeit in den EVENTparts .

weiterhin stehen alle EVENTS ($EVENT, $EVTFULL, $EVTPART1, $EVTPART2, $EVTPART3) als vordefinierte Variablen in den Freecmds zur verfügung . Diese werden in Freecmd mit dem Inhalt der jeweiligen Readings ersetzt.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 September 2018, 11:29:35
@ christian ,

da ist unerklärlicher weise beim einspielen was schief gegangen. kann ich noch nicht nachvollziehen.

geh mal in dem device bitte auf get_config

ersetze dort das angezeigte gegen
#V V1.74
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,FreeCmd-AbsCmd3,FreeCmd-AbsCmd4,FreeCmd-AbsCmd5,Ikeadimmer1-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{[cnl]my~$ziel[se][cnl]my~$soll[se][cnl][cnl]$ziel~=~ReadingsVal("Ikeadimmer1"#[ko]"ziel"#[ko]0)[se]~#~bis~wohin~gedimmt~werden~soll[cnl]$soll~=~ReadingsVal("trafo_wohnzimmer"#[ko]"pct"#[ko]0)[se]~#~zustand~der~lampe[cnl][cnl]if~($soll~<=~$ziel~)~#~lösche~wiederholung~wenn~ziel~erreicht[cnl]~{[cnl]~fhem("set~Ikeadimmer1~del_delays")[se][cnl]~return[se][cnl]~}[cnl][cnl]if~($soll~>~5){$soll~=~$soll~-5}~else~{$soll=0}[se]~#~setze~zustand~der~lampe~-5[cnl]fhem("set~trafo_wohnzimmer~pct~$soll")[se][cnl]},,delay1,delay1,000000,000000,,,0,0,4|FreeCmd-AbsCmd2,cmd,cmd,setreading~Ikeadimmer1~ziel~90,,delay1,delay1,000000,000000,[$EVTPART3]#[sp]eq#[sp]"18#[dp]00",,,,1|FreeCmd-AbsCmd3,cmd,cmd,setreading~Ikeadimmer1~ziel~60,,delay1,delay1,000000,000000,[$EVTPART3]#[sp]eq#[sp]"18#[dp]25",,,,1|FreeCmd-AbsCmd4,cmd,cmd,setreading~Ikeadimmer1~ziel~40,,delay1,delay1,000000,000000,[$EVTPART3]#[sp]eq#[sp]"22#[dp]25",,,,1|FreeCmd-AbsCmd5,cmd,cmd,setreading~Ikeadimmer1~ziel~0,,delay1,delay1,000000,000000,[$EVTPART3]#[sp]eq#[sp]"23#[dp]55",,,,1|Ikeadimmer1-AbsCmd1,exec_cmd1,no_action,,,delay1,delay1,000000,000000,[trafo_wohnzimmer#[dp]pct]#[sp]>=#[sp]0,,,,2
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[09:15][18:00][18:25][22:25][23:55]~offonly
#S .V_Check -> V 1.2
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> Ikeadimmer1-AbsCmd1_conditionon
#S state -> active
#A MSwitch_Safemode -> 0
#A MSwitch_Help -> 0
#A disable -> 0
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Debug -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 1
#A room -> 1_Test
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Expert -> 1


und drücke auf save changes.

gib mir bitte dann bescheid, ob er das device nun korrekt hat.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChristianH am 01 September 2018, 11:38:40
@Bytes01 - sieht im WebGui schon mal besser aus ... bin mir noch nicht ganz schlüssig, wie ich das testen kann.

Christian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 September 2018, 11:43:03
ersetze di auslösezeiten
'[09:15][18:00][18:25][22:25][23:55]'

einfach gegen eine naheliegende zeit [11:50] und schalte die lampe auf 100 %.
'modify trigger device' drücken zum speichern.

wenn er dann auslöst und keine weitere zeitzuordnung in den freecmds findet sollte er die lampe bis auf 0 runterdimmen, bzw. bis auf den wert , der im reading 'ziel' steht ( falls bereits vorhanden)

die zeiten kannst du dann ja wieder ersetzen

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 September 2018, 11:52:42
PS: setze mal die attribute Mswitch_help und MSwitch_debug auf 1 , dann bekommst du entsprechende hilfetexte und prüfoptionen

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChristianH am 01 September 2018, 14:09:25
Habe die 18:00 Bedingung auf 14:05 gesetzt und "Check Condition" gemacht:

Zitateingehender String:
[$EVTPART3] eq "14:05"

If Anweisung Perl:
if (ReadingsVal('Ikeadimmer1', 'EVTPART3', 'undef') eq "14:05"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist nicht Wahr und wird nicht ausgeführt

Trotz Debug keine Ausgabe in den Logs

Christian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 September 2018, 14:13:51
Zitat von: ChristianH am 01 September 2018, 14:09:25
Habe die 18:00 Bedingung auf 14:05 gesetzt und "Check Condition" gemacht:

Trotz Debug keine Ausgabe in den Logs

Christian

diese bedingung lässt sich mit check condition nicht prüfen. Debug 1 betrifft nicht das logverhalten , sondern nur das gui .

das eventpart3 wird nur dann gesetzt , wenn das MSwitch über den 'execute 'cmd1' at :'  auch um 14:05 ausgelöst hat. dann werden diereadings entsprechend aktualisiert , und nur dann trifft auch die bedingung zu .

in den reading siehst du dann aber , ab der befehl ausgeführt wurde 'Exec_cmd'.


gruss Byte09

ps_: wenn du möchtest können wir mal eine Teamviewer Sitzung machen , dann schaue ich es mir direkt an , muss aber erstmal schnell einkaufen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 September 2018, 16:16:27
Zitat von: ChristianH am 01 September 2018, 14:09:25
Habe die 18:00 Bedingung auf 14:05 gesetzt und "Check Condition" gemacht:

Trotz Debug keine Ausgabe in den Logs

Christian

wenn du mal bei dir schaust ist da keine verzögerung eingetragen . siehe bild . trage da bitte 8 sekunden ein , dann sollte es passen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 10:27:19
Ich habe da noch ein Problem gefunden.

Habe es mehrfach getestet.

Immer wenn ich ein Shutdown restart auslöse, verliert folgendes MSwitch seine trigger details:

#V V1.73
#S .Device_Affected -> no_device
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_01
#S state -> off
#A MSwitch_Extensions -> 0
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Bad
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitchcmd -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0


nach restore ist aber alles wieder da!

#V V1.73
#S .Device_Affected -> BD_Lampe-AbsCmd1,FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> BD_Taster1_02 Short#[tr]no_trigger#[tr]BD_Taster1_01 Short
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> BD_Taster1_02 Short
#S .Trigger_on -> BD_Taster1_01 Short
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_02
#S state -> off
#A MSwitch_Extensions -> 0
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Bad
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitchcmd -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 10:30:49
Zitat von: Torsten_MG am 02 September 2018, 10:27:19
Ich habe da noch ein Problem gefunden.

Habe es mehrfach getestet.

Immer wenn ich ein Shutdown restart auslöse, verliert folgendes MSwitch seine trigger details:

#V V1.73
#S .Device_Affected -> no_device
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_01
#S state -> off
#A MSwitch_Extensions -> 0
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Bad
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitchcmd -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0


nach restore ist aber alles wieder da!

#V V1.73
#S .Device_Affected -> BD_Lampe-AbsCmd1,FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,set~BD_Lampe~off,set~BD_Lampe~on,delay1,delay1,000000,000000,,,,,1
#S .Device_Events -> BD_Taster1_02 Short#[tr]no_trigger#[tr]BD_Taster1_01 Short
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> BD_Taster1_02 Short
#S .Trigger_on -> BD_Taster1_01 Short
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> BD_Taster1
#S Trigger_log -> off
#S last_event -> BD_Taster1_02
#S state -> off
#A MSwitch_Extensions -> 0
#A MSwitch_Activate_MSwitchcmds -> 1
#A room -> 01_Bad
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 0
#A verbose -> 0
#A disable -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitchcmd -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Help -> 0


schaue ich mir nach dem frühstück an

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 12:07:38
ich habe versucht da bei mir nachzubauen ( ua. mit dummys ) , kann das problem aber nicht nachstellen.

versuch bitte mal folgendes . lösche das ganze device. danach leg es neu an und spiele das vorhandene configfile ein. dann bitte ein update auf die aktuelle version 1.74 machen und das attribut MSwitch_startdelay auf 0 setzen .

schau ob es dann nach einem restart geht.

sollte es dann immer noch fehlerhaft sein , kann ich es nur prüfen , wenn du mir ein log verbose 5 des gesamten startvorganges schickst. da dieser vermutlich extrem gross ist müsstest du mir diesen bitte per mail schicken . Mailadresse:Byte009@web.de

danach bitte wieder deas loglevel runtersetzen .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 13:19:35
Ok. Probiere ich später mal aus

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 13:33:20
update all gemacht und shutdown restart.

Bleibt bei V1.73

Aber die Daten bleiben drin! Habe mehrere shutdown restart gemacht!
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 14:18:32
Zitat von: Torsten_MG am 02 September 2018, 13:33:20
update all gemacht und shutdown restart.

Bleibt bei V1.73

Aber die Daten bleiben drin! Habe mehrere shutdown restart gemacht!

ok, die versionsnummer wird er beim nachsten update incl. strukturupdate automatisch fixen. das ist kein drama, hauptsache die daten bleiben jetzt erhalten .

ist mir aber fast unerklärlich  ---  aber egal ( nicht nachvollziehbar ), solange einzelfall.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 14:45:10
ich habe da direkt noch etwas  ;D

da ich gerade ein bisschen mit mqtt rumspiele, habe ich das in meinem MSwitch für die Lampe im Flur mit eingebaut. Das was soll funktioniert auch, aber selsamerweise bekomme ich auch fehlerhafte Meldungen.

Und zwar, wenn jemand durch den Bewegungsmelder läuft, dann wird der Publish angestoßen, obwohl ich in cmd1 condition folgendes eingetragen habe:
[FL_Lampe:state] eq "on"

bzw.
[FL_Lampe:state] eq "off"
Der State der Lampe ändert sich aber nicht!

#V V1.73
#S .Device_Affected -> FL_Lampe-AbsCmd1,FL_Lampe-AbsCmd2,FL_Lampe-AbsCmd3,FL_Lampe_D-AbsCmd1,FL_Lampe_D-AbsCmd2,Mosquitto-AbsCmd1,Mosquitto-AbsCmd2
#S .Device_Affected_Details -> FL_Lampe-AbsCmd1,MSwitchtoggle,no_action,on/off,,delay1,delay1,000000,000000,[$EVTPART1]#[sp]eq#[sp]"FL_Taster1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_01"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"FL_Taster2_02"#[sp]OR#[sp][$EVTFULL]#[sp]eq#[sp]"MQTT_dummy#[dp]FL_Lampe#[dp]on"#[sp]OR#[sp][$EVTFULL]#[sp]eq#[sp]"MQTT_dummy#[dp]FL_Lampe#[dp]off",,,,1|FL_Lampe-AbsCmd2,pct,no_action,50~3600~1,,delay1,delay1,000000,000000,[$EVTPART1]#[sp]eq#[sp]"FL_Taster2_Motion"#[sp]AND#[sp][$EVTPART2]#[sp]eq#[sp]"trigger_cnt"#[sp]AND#[sp][[FL_Lampe_D#[dp]Licht_an]-[FL_Lampe_D#[dp]Licht_aus]]#[sp]AND#[sp][FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1|FL_Lampe-AbsCmd3,off,no_action,,,delay1,delay1,000000,000000,[$EVTPART1]#[sp]eq#[sp]"FL_Taster2_Motion"#[sp]AND#[sp][$EVTPART3]#[sp]eq#[sp]"noMotion"#[sp]AND#[sp][[FL_Lampe_D#[dp]Licht_an]-[FL_Lampe_D#[dp]Licht_aus]]#[sp]#[sp]AND#[sp][FL_Lampe#[dp]state]#[sp]ne#[sp]"off"#[sp]AND#[sp][FL_Lampe#[dp]state]#[sp]ne#[sp]"on",,,,1|FL_Lampe_D-AbsCmd1,on,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"on",,0,0,1|FL_Lampe_D-AbsCmd2,off,no_action,,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,0,0,1|Mosquitto-AbsCmd1,publish,no_action,/Smarthome/FL_Lampe/State2~off,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"on",,,,1|Mosquitto-AbsCmd2,publish,no_action,/Smarthome/FL_Lampe/State2~on,,delay1,delay1,000000,000000,[FL_Lampe#[dp]state]#[sp]eq#[sp]"off",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> FL_Taster1,FL_Taster2_01,FL_Taster2_02,FL_Taster2_Motion,MQTT_dummy
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> *
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> all_events
#S Trigger_log -> off
#S last_event -> FL_Taster2_Motion:state:noMotion
#S state -> on
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Extensions -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A room -> 01_Flur->Licht,MSwitch
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Expert -> 1


Der Übersicht halber habe ich noch 2 Fotos den neuen Device action beigefügt
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 15:53:03
das ist für mich so schwer nachzuvollziehen , da ich alles per dummy anlegen müsste. Die Abfrage der Bedingungen habe ich eben in allen möglichen variationen geprüft, da gibt es keine fehler. d.H es hakt irgendwo in deinen einstellungen. d.h in dem moment , in dem er an die entsprechende prüfung kommt und den befehl ausführt muss das geprüfte device den verlangte status haben .

schaue mir das gerne an ,brauche dafür aber die rawdefinitionen aller beteiligten devices . Alternativ mal per teamviewer drübeschauen.

das problem ist , dass ich das MSwitch nicht anlegen kann, wenn nicht alle beteiligten devices vorhanden sind.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 16:05:57
PS: du kannst mal angehängte version einspielen. stell das device auf verbose 3 . jede conditionprüfung wird dann im log protokoliert.

dann schau mal im log, wie denn der finalstring aussieht und ob das ergebniss zu entsprechender prüfung true oder false ist.

gruss Byte09

- DIESE VERSION BITTE ANSONSTEN NICHT EINSPIELEN -

edit : Anhang gelöscht !
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 16:16:13
Das taucht nun im Event Monitor auf

2018-09-02 16:13:54 MSwitch FL_Licht EVENT: FL_Taster2_Motion:trigger_cnt:213
2018-09-02 16:13:54 MSwitch FL_Licht EVTFULL: FL_Taster2_Motion:trigger_cnt:213
2018-09-02 16:13:54 MSwitch FL_Licht EVTPART1: FL_Taster2_Motion
2018-09-02 16:13:54 MSwitch FL_Licht EVTPART2: trigger_cnt
2018-09-02 16:13:54 MSwitch FL_Licht EVTPART3: 213
2018-09-02 16:13:54 MSwitch FL_Licht last_event: FL_Taster2_Motion:trigger_cnt:213
2018-09-02 16:13:54 MSwitch FL_Licht on
2018-09-02 16:13:54 MSwitch FL_Licht Exec_cmd: set FL_Lampe_D off ,set Mosquitto publish /Smarthome/FL_Lampe/State2 on


Das Problem ist, warum kommt da auch set Mosquitto publish /Smarthome/FL_Lampe/State2 on


ich habe auch hier wieder das Problem, dass on und off vertauscht sind, siehe Fotos oben.


Da die Lampe nicht auf on gesetzt wird, scheint er alle Komandos für Lampe off zu senden, siehe set FL_Lampe_D off
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 16:27:49
wie gesagt , ich kann das device nicht anlegen . poste doch mal ein screen , dieser drei befehle ( anhang ) .

die vertauschung on und off  kommt daher , da du die zuordnung cmd1 und cmd2 vertauscht hast . ein on des MSwitch devices wird immer mit ausführung des cmd1 quittiert, ein off mit cmd2 . du musst die cmds nur tauschen.

gruss Byte09

PS:hast du einen reload des moduls gemacht nach einspielen ? es werden keine conditions protokoliert ?
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 16:35:17
Zitat von: Byte09 am 02 September 2018, 16:27:49
... poste doch mal ein screen , dieser drei befehle ( anhang ) .

..

Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 16:40:47
Hier noch der Log

2018.09.02 16:39:03 5: TSCUL_Read CUL1: /AF0011475B7E9000D98844157C3AE00000003DF6D5032

2018.09.02 16:39:03 4: TSCUL_Parse: CUL1  069109 A F001 14081956 00 0D 98 8441 57C3AE 000000 03DF6D50 -49dB -49
2018.09.02 16:39:03 5: CUL1: dispatch A0D98844157C3AE00000003DF6D50::-49:CUL1:
2018.09.02 16:39:03 3: FL_Licht MSwitch_Notif: Befehlsausfuehrung -> set FL_Licht on FL_Taster2_Motion:trigger_cnt:223 2159
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [$EVTPART1] eq "FL_Taster2_Motion" AND [$EVTPART3] eq "noMotion" AND [[FL_Lampe_D:Licht_an]-[FL_Lampe_D:Licht_aus]]  AND [FL_Lampe:state] ne "off" AND [FL_Lampe:state] ne "on", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Licht', 'EVTPART1', 'undef') eq "FL_Taster2_Motion" && ReadingsVal('FL_Licht', 'EVTPART3', 'undef') eq "noMotion" && (1514919600 < 1514907540 && 1514907540 < 1514959200)  && ReadingsVal('FL_Lampe', 'state', 'undef') ne "off" && ReadingsVal('FL_Lampe', 'state', 'undef') ne "on"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return false
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [FL_Lampe:state] eq "on", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Lampe', 'state', 'undef') eq "on"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return false
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [$EVTPART1] eq "FL_Taster2_Motion" AND [$EVTPART2] eq "trigger_cnt" AND [[FL_Lampe_D:Licht_an]-[FL_Lampe_D:Licht_aus]] AND [FL_Lampe:state] eq "off", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Licht', 'EVTPART1', 'undef') eq "FL_Taster2_Motion" && ReadingsVal('FL_Licht', 'EVTPART2', 'undef') eq "trigger_cnt" && (1514919600 < 1514907540 && 1514907540 < 1514959200) && ReadingsVal('FL_Lampe', 'state', 'undef') eq "off"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return false
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [$EVTPART1] eq "FL_Taster1" OR [$EVTPART1] eq "FL_Taster2_01" OR [$EVTPART1] eq "FL_Taster2_02" OR [$EVTFULL] eq "MQTT_dummy:FL_Lampe:on" OR [$EVTFULL] eq "MQTT_dummy:FL_Lampe:off", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Licht', 'EVTPART1', 'undef') eq "FL_Taster1" || ReadingsVal('FL_Licht', 'EVTPART1', 'undef') eq "FL_Taster2_01" || ReadingsVal('FL_Licht', 'EVTPART1', 'undef') eq "FL_Taster2_02" || ReadingsVal('FL_Licht', 'EVTFULL', 'undef') eq "MQTT_dummy:FL_Lampe:on" || ReadingsVal('FL_Licht', 'EVTFULL', 'undef') eq "MQTT_dummy:FL_Lampe:off"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return false
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [FL_Lampe:state] eq "off", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Lampe', 'state', 'undef') eq "off"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return true
2018.09.02 16:39:03 3: FL_Licht MSwitch_Set: Befehlsausfuehrung -> set FL_Lampe_D off  L:1238
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [FL_Lampe:state] eq "on", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Lampe', 'state', 'undef') eq "on"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return false
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [FL_Lampe:state] eq "off", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Lampe', 'state', 'undef') eq "off"){$answer = 'true';} else {$answer = 'false';} 
2018.09.02 16:39:03 3: Aufruf Checkcondition - return true
2018.09.02 16:39:03 3: FL_Licht MSwitch_Set: Befehlsausfuehrung -> set Mosquitto publish /Smarthome/FL_Lampe/State2 on L:1238
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 16:53:00
hier kannst du doch klar sehen ,woher der mosquito befehl kommt :

2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter condition, name: [FL_Lampe:state] eq "off", FL_Licht
2018.09.02 16:39:03 3: Aufruf Checkcondition - Parameter event: FL_Taster2_Motion:trigger_cnt:223
2018.09.02 16:39:03 3: Aufruf Checkcondition - finalstring if (ReadingsVal('FL_Lampe', 'state', 'undef') eq "off"){$answer = 'true';} else {$answer = 'false';}
2018.09.02 16:39:03 3: Aufruf Checkcondition - return true
2018.09.02 16:39:03 3: FL_Licht MSwitch_Set: Befehlsausfuehrung -> set Mosquitto publish /Smarthome/FL_Lampe/State2 on L:1238


es wird geprüft ob FL_Lampe aus ist . offensichtlich ist diese aus und der befehl set Mosquitto publish /Smarthome/FL_Lampe/State2 on wird ausgeführt .

ich steige irgendwie noch überhaupt nicht hinter die problematik.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 16:57:39
Mein Problem ist, das der Aufruf/Befehl ausgeführt wird, wenn jemand tagsüber durch den BWM läuft. Der wird aber nur für abends/nachts gebraucht wo das Licht gedämmt automatisch eingeschaltet werden soll.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 17:06:19
Zitat von: Torsten_MG am 02 September 2018, 16:57:39
Mein Problem ist, das der Aufruf/Befehl ausgeführt wird, wenn jemand tagsüber durch den BWM läuft. Der wird aber nur für abends/nachts gebraucht wo das Licht gedämmt automatisch eingeschaltet werden soll.

Gesendet von meinem SM-J730F mit Tapatalk

dann setze doch in den entsprechenden cmd noch eine bedingung , die ihn nur zu bestimmten zeiten ausführen lässt AND [20:00-23:00] oder per sunset AND [{ sunset() }-{ sunrise() }]

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 17:12:15
Zitat von: Byte09 am 02 September 2018, 17:06:19
dann setze doch in den entsprechenden cmd noch eine bedingung , die ihn nur zu bestimmten zeiten ausführen lässt AND [20:00-23:00] oder per sunset AND [{ sunset() }-{ sunrise() }]

gruss Byte09
Die Idee hatte ich am Anfang auch, aber der Publish soll ja immer gesendet werden, wenn sich der state der Lampe ändert.

Dann muß ich mir was anderes einfallen lassen.

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 17:14:44
Zitat von: Torsten_MG am 02 September 2018, 17:12:15
Die Idee hatte ich am Anfang auch, aber der Publish soll ja immer gesendet werden, wenn sich der state der Lampe ändert.

Dann muß ich mir was anderes einfallen lassen.

Gesendet von meinem SM-J730F mit Tapatalk

offenbar möchtest du ja verschiedene aktionen ausführen , je nach nacht/tag bzw Lichtverhältnissen.  Wenn dem so ist , solltest du eine Aktion ggf. in ein komplett eigenständiges MSwitch auslagern ?!

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 02 September 2018, 17:31:19
Habe es jetzt ganz anders gelöst. Der Weg war viel einfacher.[emoji16]

Da ich ja MQTT_GENERIC_BRIDGE installiert habe, brauchte ich ja im Lampen Device nur mqttPublish zu aktivieren [emoji41]

Gesendet von meinem SM-J730F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 September 2018, 17:33:26
Zitat von: Torsten_MG am 02 September 2018, 17:31:19
Habe es jetzt ganz anders gelöst. Der Weg war viel einfacher.[emoji16]

Da ich ja MQTT_GENERIC_BRIDGE installiert habe, brauchte ich ja im Lampen Device nur mqttPublish zu aktivieren [emoji41]

Gesendet von meinem SM-J730F mit Tapatalk

ZitatViele Wege führen nach Rom
;)
Titel: Dummy als Trigger - geht nicht recht
Beitrag von: Panik am 03 September 2018, 16:44:39
Hallo,

ich habe einen Dummy als Trigger und der ist "eins" als State
Prüfe ich die conditions erhalte ich merkwürdigerweise ein unwahre Ergebnis. :o
Was ist falsch?

eingehender String:
[anwesend:State] eq "eins"

If Anweisung Perl:
if ( ReadingsVal('anwesend', 'State', 'undef') eq "eins"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist nicht Wahr und wird nicht ausgeführt
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 03 September 2018, 16:52:15
Antwort an mich  ;)

nicht "State" sondern "state" ist zu schreiben
Vielleicht kann das ja noch großzügiger behandelt werden...

Aber das Modul ist Klasse.
Besonders die Hilfestellungen mit den Fragezeichen und weitere
Schmankerl mit den ganzen Einstellmöglichkeiten über das Webinterface.
So würde man es sich auch bei anderen Modulen wünschen ...
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 September 2018, 17:05:12
Zitat von: Panik am 03 September 2018, 16:52:15
Antwort an mich  ;)

nicht "State" sondern "state" ist zu schreiben
Vielleicht kann das ja noch großzügiger behandelt werden...

Aber das Modul ist Klasse.
Besonders die Hilfestellungen mit den Fragezeichen und weitere
Schmankerl mit den ganzen Einstellmöglichkeiten über das Webinterface.
So würde man es sich auch bei anderen Modulen wünschen ...

problem selber gelöst  ;), thx für den rest

ZitatVielleicht kann das ja noch großzügiger behandelt werden...

möchte ich ungerne, da ja alle möglichen readings etc. geprüft werden können und es ggf. ja mal vorkommen kann, dass da Gross und Kleinschreibung den kleinen Unterschied machen , falls wirklich ( obwohl unwahrscheinlich ) mal beides in einem Device vorhanden sein sollte.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 September 2018, 17:57:37
ich habe den letzten Beitrag zum Anlass genommen , die Ausgabe bei check conditions etwas zu erweitern. Ab der kommenden Version wird der Status aller geprüften Readings mit angezeigt.

eingehender String:
[HARMONY:activity] ne "PowerOff"

If Anweisung Perl:
if (ReadingsVal('HARMONY', 'activity', 'undef') ne "PowerOff"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist nicht Wahr und wird nicht ausgeführt

States der geprüften Readings:
Reading: [HARMONY:activity] - Inhalt: PowerOff


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 03 September 2018, 20:40:57
Nabend Byte,
Hast du zufällig etwas an dem Modul geändert zwecks der verwendung der Pipes?
#V V1.74
#S .Device_Affected -> Flur-AbsCmd1,ReceiverAxBox4K-AbsCmd1,TelegramBot-AbsCmd1
#S .Device_Affected_Details -> Flur-AbsCmd1,Speak,no_action,45~de~#[wa]Ton#[wa]~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",000000,home~eq~"home",0,1|ReceiverAxBox4K-AbsCmd1,showText,no_action,Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",,,,1|TelegramBot-AbsCmd1,msg,no_action,@#Home~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]ne#[sp]"home",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[18:30][19:30][20:30]~off~ononly~offonly
#S .V_Check -> V 1.2
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> undef
#S state -> on
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A room -> MSwitch
#A MSwitch_Lock_Quickedit -> 1


Wenn ich den Command über "set Muelinfo exec_cmd1" ausführe ist alles in Ordnung.

Führt das Modul ihn über den Timer aus, kommt das bei raus.

Siehe Exec_cmd

Internals:
   NAME       MuellInfo
   NOTIFYDEV  no_trigger
   NR         284
   NTFY_ORDER 45-MuellInfo
   STATE      on
   TYPE       MSwitch
   Version    V1.74
   READINGS:
     2018-09-03 20:30:00   EVENT           MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTFULL         MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTPART1        MuellInfo
     2018-09-03 20:30:00   EVTPART2        execute_timer_P1
     2018-09-03 20:30:00   EVTPART3        20:30
     2018-09-03 20:30:00   Exec_cmd        set Flur Speak 45 de #[wa]Ton#[wa] Am [myAbfall:next_weekday] wird [ArtikelMuell:state] [myAbfall:ne....
     2018-09-03 20:15:26   Trigger_device  no_trigger
     2018-07-26 20:12:23   Trigger_log     off
     2018-09-03 20:30:00   state           on
   helper:
     conditioncheck if (ReadingsVal('Haus', 'state', 'undef') ne "home"){$answer = 'true';} else {$answer = 'false';}
     savemodeblock:
     timer:
       1535999400-1 1535999400-1
       1536012010 1536012010-5
Attributes:
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full
   room       MSwitch





Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 September 2018, 21:22:05
Zitat von: Esjay am 03 September 2018, 20:40:57
Nabend Byte,
Hast du zufällig etwas an dem Modul geändert zwecks der verwendung der Pipes?
#V V1.74
#S .Device_Affected -> Flur-AbsCmd1,ReceiverAxBox4K-AbsCmd1,TelegramBot-AbsCmd1
#S .Device_Affected_Details -> Flur-AbsCmd1,Speak,no_action,45~de~#[wa]Ton#[wa]~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",000000,home~eq~"home",0,1|ReceiverAxBox4K-AbsCmd1,showText,no_action,Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",,,,1|TelegramBot-AbsCmd1,msg,no_action,@#Home~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]ne#[sp]"home",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[18:30][19:30][20:30]~off~ononly~offonly
#S .V_Check -> V 1.2
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> undef
#S state -> on
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A room -> MSwitch
#A MSwitch_Lock_Quickedit -> 1


Wenn ich den Command über "set Muelinfo exec_cmd1" ausführe ist alles in Ordnung.

Führt das Modul ihn über den Timer aus, kommt das bei raus.

Siehe Exec_cmd

Internals:
   NAME       MuellInfo
   NOTIFYDEV  no_trigger
   NR         284
   NTFY_ORDER 45-MuellInfo
   STATE      on
   TYPE       MSwitch
   Version    V1.74
   READINGS:
     2018-09-03 20:30:00   EVENT           MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTFULL         MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTPART1        MuellInfo
     2018-09-03 20:30:00   EVTPART2        execute_timer_P1
     2018-09-03 20:30:00   EVTPART3        20:30
     2018-09-03 20:30:00   Exec_cmd        set Flur Speak 45 de #[wa]Ton#[wa] Am [myAbfall:next_weekday] wird [ArtikelMuell:state] [myAbfall:ne....
     2018-09-03 20:15:26   Trigger_device  no_trigger
     2018-07-26 20:12:23   Trigger_log     off
     2018-09-03 20:30:00   state           on
   helper:
     conditioncheck if (ReadingsVal('Haus', 'state', 'undef') ne "home"){$answer = 'true';} else {$answer = 'false';}
     savemodeblock:
     timer:
       1535999400-1 1535999400-1
       1536012010 1536012010-5
Attributes:
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full
   room       MSwitch





Grüße

in der tat habe ich da etwas geändert und habe da etwas verbockt. versuche in 10 minuten einen fix hier einzustellen

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 September 2018, 05:39:53
Ich habe eben einen FIX in das SVN geladen , der das Problem hoffentlich beseitigt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 September 2018, 18:40:35
V1.75 ab morgen im SVN

Webinterface geändert: Bei Datenänderung in einem Abschnitt wird das Speichern in allen anderen Abschnitten gesperrt, bis die Daten gespeichert wurden , oder wieder im Ursprungszustand sind.
( mal sehen , weiss noch nicht ob das der Weisheit letzter Schluss ist )

Mit dem Befehl on und off kann nun ein weiteres Argument übergeben werden set <device> on/off <parameter>. dieses wird als allererste Aktion im Reading 'Parameter' gespeichert und kann somit in jeder Aktion genutzt werden.

Behandlung von Readingaktivierten Sonderfällen/Modes.
- Zuschalten von besonderen Modes, die aber so speziell sind, dass ich sie nicht über attribute schaltbar machen möchte. Im Grunde nur aus Eigenbedarf , mehr dazu falls mal irgendwo Bedarf besteht

FIX: setmagic / ersetzungen

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 September 2018, 12:28:42
kommendes Update auf V1.76

- Logverhalten:
überarbeitet

- Bugfix:
im 'cmd2' wurde fälschlicher Weise versucht den Eintrag 'no_action' als Befehl  'no:action' an betreffendes Device abzusetzen. Das hat die Funtion erstmal nicht beeinträchtigt, sorgte aber unter umständen für 'unschöne' Fehlermeldungen im Log.
Dieses wurde behoben

- Funktionserweiterung Expertenmodus:
neben dem Auswahlfeld 'priority' steht nun ein weiteres Feld 'ID' zur Verfügung. Dieses steht standartmässig auf '-' kann aber auf eine ID gessetzt werden.
Die Auswahlmöglichkeiten der ID stehen in direktem Zusammenhang zur Anzahl der 'affected devices'.

Sobald der Wert von '-' auf eine ID gesetzt wird, wird dieses Device im normalen Programmablauf nicht mehr berücksichtigt ( es finden keine Schaltvorgänge statt ). Dier hier gesetze Befehl (oder Freecmd) kann aber separat aufgerufen werden set <DEVICE> <exec_cmd1>/<exec_cmd2> ID <NUMMER>Sollte das MSwitch Device selber in der Liste der 'affected devices' stehen , so werde diese Befehle direkt in entsprechenden Feldern angeboten.

Sollten mehrere 'affected Devices' die gleiche ID haben , werden mit entsprechendem Aufruf alle 'cmds' mit entsprechender ID ausgeführt.
Hintergund dieser Erweiterung ist der, das unter Umständen Befehle / Befehlsketten ausgeführt werden sollen , die völlig unabhängig von einem bestimmten 'Schalten' sind. Ich werde in den kommenden Tagen einige Beispieldevices in das Wiki stellen , die diese Funtion nutzen.
Im Normalmodus bleibt hier alles beim alten, ebenso im Expertenmode, wenn keine IDs zugewiesen werden.

- Funtionserweiterung durch Reading
Diese Option erwähne ich hier nur, damit bekannt ist das sie da ist, und niemand durch zufall darauf stösst und sich damit seine Fheminstallation 'verbiegt'. Ein Eintrag hier ist im Grunde ein direkter Eingriff in den Modulcode !
Durch setzten des Readings 'Sys_Extension' -> 'on' wird eine weiter Option in den Get Kommados aktiviert ( 'get_sysextension' ). Hier ist es Möglich , Perlcode einzutragen , der der nach bestimmten Kriterien an bestimmten Punkten des Codes ausgeführt wird.

Hintergund ist hier der, das ich so die Möglichkeit habe , gewisse 'Sonderanpassungen' zu machen , die ich aber nicht grundsätzlich im Modul habe möchte , da der  'allgemeine' Umfang einfach gesprengt werden würde. So kann ich Anpassungen nur für bestimmte Devices ermöglichen.

Als Beispiel habe ich jedem Dimmer ein MSwitch vorgeschaltet , um bestimmte Aktionen nach bestimmten Bedingungen zu ermöglichen , die das Dimmerdevice so nicht hergiebt. Gleichzeitig möchte ich dieses Device aber auch genau wie einen Dimmer Bedienen können. Dazu muss das Modul aber mit dem Befehl 'pct' umgehen können , da ansonsten u.A. gar keine Parameter zu 'on' oder 'off' zugelassen wären. Dazu habe ich an dieser Stelle z.b diesen code erweitert.
$special='pct:slider,0,1,100';
my $arg = $args[0];
if ($cmd eq "pct" && $arg eq '0')
{
$cmd ='off';
}
if ($cmd eq "pct" && $arg ne '0')
{
$cmd ='on';
}   
if ( $cmd eq 'on' && $arg eq '')
{
$args[0] = ReadingsVal( $name, 'pct', 100);
}
if ( $cmd eq 'off' && $arg eq ''    )
{
$args[0] = 0;
}
readingsSingleUpdate( $hash, "pct", $args[0], 1 );


stark vereinfacht um um den Hintergrund dieser Möglichkeit zu erklären, diese hier könnte man in diesem Fall auch anders bezwecken.
Diese Möglichkeit sollte im Grunde nicht genutzt werden, sondern ich möchte hiermit auf Userwünsche und oder spezielle Anforderungen eingehen können.

gruss Byte09




Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 10 September 2018, 16:01:08
Hallo,

ich habe ein MSwitch, mit den Trigger-Einstellungen im Bild.
Werktags funktioniert es perfekt.
Heute hatte ich Urlaub. Da sollte es nicht auslösen. Hat es aber dennoch.
Die Trigger condition ist aber nachweisbar richtig und bringt heute auch "nicht wahr"

Muss ich das Trigger-Gebilde anders aufbauen?

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 September 2018, 16:32:48
Zitat von: Panik am 10 September 2018, 16:01:08
Hallo,

ich habe ein MSwitch, mit den Trigger-Einstellungen im Bild.
Werktags funktioniert es perfekt.
Heute hatte ich Urlaub. Da sollte es nicht auslösen. Hat es aber dennoch.
Die Trigger condition ist aber nachweisbar richtig und bringt heute auch "nicht wahr"

Muss ich das Trigger-Gebilde anders aufbauen?

Hi , hab es auf die schnelle bei mir mal gechecked, scheint aber auf den 1 blick alles OK. Mal ganz dumm gerfagt, '$we' weiss auch , dass du heute urlaub hast ? ist das in der holiday definiert ?

was liefert denn ein
{$we}
in der kommandozeile ?  .... müsste dann ja heute bei dir eine 1 zurückgeben ?

gruss Byte09


Edit: die Triggerconditionen greifen nicht bei einer reinen Zeitsteuerung in der Grundeinstellung  . Das $we müsste hier auch ausreichend sein , wenn holiday definiert ist .

Deine einstellung ist auch im 'normalmode/grundeinstellung', das siehst du an : "Trigger condition (events only): ". soll die condition auch bei reiner zeitsteuerung greifen , musst du das attribut 'MSwitch_Condition_Time' auf 1 setzen , dann greift es auch für zeiten und es sollte dort stehen : "Trigger condition (time&events): "

Auszug Hilfetxt :
ZitatAchtung: Conditions gelten nur für auslösende Trigger eines Devices und haben keinen Einfluss auf zeitgesteuerte Auslöser. Um Zeitgesteuerte Auslösr ebenfalls an Bedingungen zu Knüpfen muss dieses in den Attributen aktiviert werden.

PS: so wie du das MSwitch konfiguriert hast ( zumindest beim trigger ), ist es systemschonender , wenn du das MSwitch in den reinen Notifymode bringst . Attribut 'MSwitch_Mode' auf 'Notify' , ausser du schaltest es auch manuell
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 10 September 2018, 17:36:21
Nabend, kurze Frage.
Wie bekomme ich Repeat und Repeatdelay eingeblendet?
Geschweige denn, wo ist "without Conf-check" ?

ZitatDie Auswahl "with Conf-check" oder "without Conf-check" legt fest, ob unmittelbar vor Befehlsausführung nochmals die Condition für den Befehl geprüft wird oder nicht.


Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 September 2018, 17:40:42
Zitat von: Esjay am 10 September 2018, 17:36:21
Nabend, kurze Frage.
Wie bekomme ich Repeat und Repeatdelay eingeblendet?
Geschweige denn, wo ist "without Conf-check" ?

Grüße
Kurz da Handy

Für repeats das Attribut mswitch_expert auf 1 setzen ... dann bekommst du u.a diese Optionen.   Die configoptionen befinden sich in den dropdownlisten bei den affected devices , vor den Eingabefeldern für verzögertes schalten.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 10 September 2018, 17:44:59
Zitat von: Byte09 am 10 September 2018, 17:40:42
Kurz da Handy

Für repeats das Attribut mswitch_expert auf 1 setzen ... dann bekommst du u.a diese Optionen.   Die configoptionen befinden sich in den dropdownlisten bei den affected devices , vor den Eingabefeldern für verzögertes schalten.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Man sollte die Texte auch zuende lesen. Sry.

Das habe ich gefunden, aber da steht ja überall nur "with cond check......."
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 September 2018, 18:01:06
Zitat von: Esjay am 10 September 2018, 17:44:59
Man sollte die Texte auch zuende lesen. Sry.

Das habe ich gefunden, aber da steht ja überall nur "with cond check......."

ja , mit diesen optionen kannst du doch alles abdecken

wenn du eine condition angiebst kannst du wählen:

- check nur sofort
- check nur verzögert
- check sofort und nochmal verzögert

wenn du keine condition eingiebst hast du : without check  ;)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 10 September 2018, 18:10:00
Ok, habe den zusammenhang nicht gecheckt.

Danke für die Gedult.

Gruß
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 10 September 2018, 20:09:37
Hallo Byte09,

ich habe jetzt MSwitch_Condition_Time' auf 1 gesetzt, denn das ist was ich wollte. Danke!
Probieren werde ich es morgen.

PS: "urlaubsstatus" ziehe ich aus Google-Kalender und ist nicht in holiday sowie we hinterlegt.
Soll praktisch dynamisch-flexibel unkompliziert dazu kommen und so wirken als wäre es in der Holidaydatei  hinterlegt.

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 September 2018, 20:18:07
das angekündigte update auf V1.76 wir noch etwas auf sich warten lassen , da ich mich entschlossen habe daraus ein 'grosses' update zu machen. dazu wird u.a die form der gespeicherten daten komplett geändert . aufgrund vieler änderungen im laufe der zeit ist das intern derzeit nicht einheitlich . dieses führt zu extremen aufwand bei jeder änderung und ist somit fehleranfällig ( musste ich die tage erst feststelle mit einer fehlenden ersetzung ). Dieses werde ich nun ändern, auch mit dem Ziel backups, configfiles etc. wieder etwas leserlicher zu machen.

vorhanden daten bleiben dabei natürlich erhalten und werden dann automatisch angepasst , wie einige male schon  ;)

mit morgigem update im svn habe ich nur eine kleinigkeit gefixt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: arthur_dent_2015 am 13 September 2018, 18:26:49
Moin Byte09,
MSwitch schein DAS Modul zu sein mit dem ich meine, inzwischen etwas unübersichtliche, Fhem Installation wieder in den Griff bekommen könnte. Hab mich also durch das Wiki und den Foren Threat gelesen und mein erstes device angelegt und die bisherigen DOIF's und notifys deaktiviert. Hat soweit auch (fast) alles auf Anhieb funktioniert. Bis auf eine condition die falsch gesetzt war. Folge war, das Licht im Wohnzimmer brannte die ganze Nacht und ich habs erst heute morgen bemerkt :( Kurzer Blick ins Log und die Sache war klar. Kommt halt davon wenn man den Überblick verloren hat  ??? Ich fände es daher sehr hilfreich wenn es einen "testmode" gäbe mit dem man das device testen könnte, sprich die commands werden alle, wie definiert, abgearbeitet und das Ergebnis ins Log geschrieben, aber nicht wirklich abgesetzt. Die debug level geben das anscheinend nicht her, oder hab ich das nur falsch verstanden? Ich kann mir aber auch sehr gut vorstellen dass das ein ziemlicher Aufwand sein kann....  Naja, der nächste Winter kommt bestimmt ;)
Eine konkrete Frage hab ich dann auch noch. Ich habe einige devices im Harmony Hub definiert für die keine activities hinterlegt sind. Diese setze ich über set harmony_deviceid command. Wenn ich das Wiki richtig verstanden habe, müsste ich im jeweiligen device die commands als webcmd hinterlegen um sie im MSwitch nutzen zu können. Andernfalls geht nur freecmd?

Gruß & Danke für Deine Arbeit!
Arthur

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2018, 20:52:57
Zitat von: arthur_dent_2015 am 13 September 2018, 18:26:49
Moin Byte09,
MSwitch schein DAS Modul zu sein mit dem ich meine, inzwischen etwas unübersichtliche, Fhem Installation wieder in den Griff bekommen könnte. Hab mich also durch das Wiki und den Foren Threat gelesen und mein erstes device angelegt und die bisherigen DOIF's und notifys deaktiviert. Hat soweit auch (fast) alles auf Anhieb funktioniert. Bis auf eine condition die falsch gesetzt war. Folge war, das Licht im Wohnzimmer brannte die ganze Nacht und ich habs erst heute morgen bemerkt :( Kurzer Blick ins Log und die Sache war klar. Kommt halt davon wenn man den Überblick verloren hat  ??? Ich fände es daher sehr hilfreich wenn es einen "testmode" gäbe mit dem man das device testen könnte, sprich die commands werden alle, wie definiert, abgearbeitet und das Ergebnis ins Log geschrieben, aber nicht wirklich abgesetzt. Die debug level geben das anscheinend nicht her, oder hab ich das nur falsch verstanden? Ich kann mir aber auch sehr gut vorstellen dass das ein ziemlicher Aufwand sein kann....  Naja, der nächste Winter kommt bestimmt ;)
Eine konkrete Frage hab ich dann auch noch. Ich habe einige devices im Harmony Hub definiert für die keine activities hinterlegt sind. Diese setze ich über set harmony_deviceid command. Wenn ich das Wiki richtig verstanden habe, müsste ich im jeweiligen device die commands als webcmd hinterlegen um sie im MSwitch nutzen zu können. Andernfalls geht nur freecmd?

Gruß & Danke für Deine Arbeit!
Arthur

hi arthur

das mit dem testmode ist , denke ich , eine ganz gute sache. ich arbeite im moment eh an einem 'grossen' update und werde das in irgend einer form einbauen , wird zwar nicht bis in den winter dauern , aber sicher noch einige tage.

zu den commands:

version 1: Freecmd

version 2: webcmd des devices

version 3 : im mswitch das attribut 'MSwitch_Activate_MSwitchcmds' auf 1.

damit hast du in allen deinen geräten das attribut 'MSwitchcmds' zur verfügung . dort kannst du die befehle analog zu webcmd ( z.b on:off ) eintragen , ohne z.B einer änderung der ansicht der devices, wie es bei webcmd natürlich erfolgt.

wenn du dann noch im MSwitch das attribut 'MSwitch_Include_MSwitchcmds' auf 1 setzt , hast du die befehle ebenfalls in entsprechendem geraät ( affected_device ) zur verfügung ( jedenfalls sollte es so sein  ;) )

gruss Byte09

PS: sorry, für die späte antwort, habe mir heute aber mal einen pc-freien abend gegönnt ( fast ) ...... eigentlich musste ich was für das familiäre bonuskonto tun  ;D ;D ;D
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2018, 21:07:17
Zitat von: Panik am 10 September 2018, 20:09:37
Hallo Byte09,

ich habe jetzt MSwitch_Condition_Time' auf 1 gesetzt, denn das ist was ich wollte. Danke!
Probieren werde ich es morgen.

PS: "urlaubsstatus" ziehe ich aus Google-Kalender und ist nicht in holiday sowie we hinterlegt.
Soll praktisch dynamisch-flexibel unkompliziert dazu kommen und so wirken als wäre es in der Holidaydatei  hinterlegt.

Panik

hi panik ,

hat es denn funktioniert ?

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: arthur_dent_2015 am 14 September 2018, 14:22:31
Hi Byte,
der PC-freie Abend sei Dir gegönnt! Keiner erwartet von Dir dass Du innerhalb von n Minuten hier antwortest! Als user freut man sich ja mittlerweile schon wenn man überhaupt eine Antwort bekommt ;)

Das Problem mit den Harmony devices ist ja schon dass ich sie überhaupt nicht zur Auswahl angeboten bekomme :( Es handelt sich um die vom Hub per autocreate angelegten devices. Die devices haben nicht einmal readings, die commands bekommt man nur per get commands vom Hub. Ist wohl eher eine Frage die ich im Mutimedia Bereich stellen müsste, Freecmd funktioniert ja...
Ne andere Frage noch, kann es sein dass, wenn ich attr MSwitch_Condition_Time 1 gesetzt habe und keine Zeit definiert ist, das Modul nie auslösen wird?
und warum hat diese MSwitch heute morgen ausgelöst?

#V V1.75
#S .Device_Affected -> atimer1-AbsCmd1,atimer2-AbsCmd1,test-AbsCmd1
#S .Device_Affected_Details -> atimer1-AbsCmd1,on,off,,,delay1,delay1,000003,000003,,,,,1|atimer2-AbsCmd1,on,off,,,delay1,delay1,000006,000006,,,,,1|test-AbsCmd1,on,off,,,delay1,delay1,000010,000010,,,,,1
#S .Device_Events -> state:off#[tr]state:on#[tr]no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> state:off
#S .Trigger_on -> state:on
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> Test
#S Trigger_log -> off
#S last_event -> test-AbsCmd1_conditionoff
#S state -> off
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 0
#A MSwitch_Lock_Quickedit -> 1
#A room -> Test
#A MSwitch_Extensions -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Mode -> Full



2018.09.14 09:49:43 3: Events from device BM_HM_Sz:motion
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Notif: Befehlsausfuehrung -> set Test_MSwitch on state:on 2170
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter condition: 
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter event: state:on
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: conidtion ok - Befehl mt at/delay wird ausgefuehrt -> set atimer1 on  L:1312
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: teststateorg -> 000003 L:1317
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter condition: 
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter event: state:on
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: conidtion ok - Befehl mt at/delay wird ausgefuehrt -> set atimer2 on  L:1312
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: teststateorg -> 000006 L:1317
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter condition: 
2018.09.14 09:49:44 3: Test_MSwitch Checkcondition - Parameter event: state:on
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: conidtion ok - Befehl mt at/delay wird ausgefuehrt -> set test on  L:1312
2018.09.14 09:49:44 3: Test_MSwitch MSwitch_Set: teststateorg -> 000010 L:1317


Gruß
Arthur
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 September 2018, 16:12:43
hi arthur,

ok , jetzt habe ich es verstanden mit den harmonydevices - da geht im moment nur der weg über freecmd . wenn entsprechende nachfrage ist , werde ich da ggf. mal irgendetwas machen.


ZitatNe andere Frage noch, kann es sein dass, wenn ich attr MSwitch_Condition_Time 1 gesetzt habe und keine Zeit definiert ist, das Modul nie auslösen wird?

hier kann ich nicht ganz nachvollziehen , was du meinst . wenn keine zeit definiert ist löst es ja so der so nicht aus.

wenn das attribut gesetzt ist prüft er bei auslösung durch event und durch zeit entsprechende condition ( die kann jawas auch immer sein ) . wenn dieses attribut nicht gesetzt ist , prüft er nur eingehende events auf diese bedingung , zeitauslöser werden nicht auf die bedingung geprüft.
manuelles schalten wird ebenso nicht geprüft.
das mswitch kann ja , je nach bedarf, alles kombinieren.

um dirgenau zu sagen , warum das modul ausgelöst hat , habe ixh so nicht geniug daten. fakt ist aber, das du des mswitch in einen zustand gebracht hast , den es nicht geben dürfte ( und ich kann diesen auch nicht herbeiführen )  und daraus der schaltvorgang resultierte.

du hast keinen trigger angegeben , sondern nur schaltzeiten . im nächtsen feld hast du aber events angegeben , auf die reagiert werden soll ( diese konstellation ist so nicht vorgesehen , da es ja auch keinen sinn macht ) und sollte eigentlich nicht möglich sein.

in der kommenden version werde ich das zusätzlich überprüfen .  der spuk sollte aber vorbei sein , wenn du einfach nochmal 'modify trigger device ' drückst.

gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: arthur_dent_2015 am 14 September 2018, 17:04:16
Hi Byte,
ich versuche es mal konkreter zu formulieren. Bei meinem ersten Versuch habe ich unter switch MSwitch on + execute 'cmd1' at : [20:00-05:00] und unter switch MSwitch on + execute 'cmd2' at : [05:00-20:00] gesetzt ohne attr MSwitch_Condition_Time 1 gesetzt zu haben. Prompt saß ich um 20 Uhr im dunklen :( Also hab ich die Zeiten gelöscht und war der Meinung jetzt reagiert das Modul nur auf die trigger closed bzw opened. Das hat bei closed auch funktioniert, aber auf opened am nächsten Morgen erfolgte keine Reaktion. Ich musste im Modul off setzen damit die commands abgesetzt werden. Gestern noch mal im Wiki gelesen und über MSwitch_Condition_Time gestolpert und ausprobiert. Das Licht blieb um 20 Uhr an  8) Allerdings löste dann der Trigger auch nicht aus und ich musste wieder im Modul on setzen. Das könnte aber mein Fehler gewesen sein, Taster zu lange gedrückt oder so. Heute Abend neuer Versuch ;)

Zitat von: Byte09 am 14 September 2018, 16:12:43
fakt ist aber, das du des mswitch in einen zustand gebracht hast , den es nicht geben dürfte ( und ich kann diesen auch nicht herbeiführen ) 
Der Dau hat mal wieder sein bestes gegeben  :-[ :o 8) Ich lösch das Ding, sollte eh nur dazu da sein das Modul zu verstehen.

Wenn Du eh gerade eine größere Änderung an dem Modul machst, könntest Du vielleicht auch noch attr auf die todo Liste setzen. Ich habe einige notifys mit denen ich Geräte über Nacht, sie nicht im Netz sind oder ich nicht Zuhause bin, auf inactive setze um freezes zu vermeiden.

Ach ja, bekommt MSwitch den INITIALIZED vom global device mit? Den SHUTDOWN wohl mit Sicherheit. Aber wie reagiert Fhem wenn beim shutdown noch delays im MSwitch anstehen? Verzögern die den shutdown oder fährt Fhem einfach runter?

Gruß
Arthur
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 September 2018, 19:31:34
hi,

ZitatAch ja, bekommt MSwitch den INITIALIZED vom global device mit? Den SHUTDOWN wohl mit Sicherheit. Aber wie reagiert Fhem wenn beim shutdown noch delays im MSwitch anstehen? Verzögern die den shutdown oder fährt Fhem einfach runter?

bei einem shutdown werden alle delays, timer etc gelöscht´. Nach neustart werden ganz oben gesetzte auslösezeiten neu gesetzt ( oder berechnet ) . delays sind in diesem moment 'verloren' ( derzeitiger stand ) .

zu 'attr'

das möchte ich im grunde nur ungerne, da fremdattribute - denke ich - nicht von einem Modul geändert werden sollten.
was mit freecmd angestellt wird .... naja, steht ja jedem frei  ;)

so, und hier:

Zitatich versuche es mal konkreter zu formulieren. Bei meinem ersten Versuch habe ich unter switch MSwitch on + execute 'cmd1' at : [20:00-05:00] und unter switch MSwitch on + execute 'cmd2' at : [05:00-20:00] gesetzt ohne attr MSwitch_Condition_Time 1 gesetzt zu haben. Prompt saß ich um 20 Uhr im dunklen :( Also hab ich die Zeiten gelöscht und war der Meinung jetzt reagiert das Modul nur auf die trigger closed bzw opened. Das hat bei closed auch funktioniert, aber auf opened am nächsten Morgen erfolgte keine Reaktion. Ich musste im Modul off setzen damit die commands abgesetzt werden. Gestern noch mal im Wiki gelesen und über MSwitch_Condition_Time gestolpert und ausprobiert. Das Licht blieb um 20 Uhr an  8) Allerdings löste dann der Trigger auch nicht aus und ich musste wieder im Modul on setzen. Das könnte aber mein Fehler gewesen sein, Taster zu lange gedrückt oder so. Heute Abend neuer Versuch

läuft glaube ich etwas grundlegend quer :
MSwitch on + execute 'cmd2' at : [05:00-20:00]
das ist keine formatierung , mit der das modul umgehen kann .
schaltzeiten müssen konkret benannt werden :

[21:00][22:00] schaltet um 21 uhr und um 22 uhr
ergänzend kann hier auch $we oder sunset genutzt werden und ein wochentag angegeben werden.
[21:00|1][22:00|2] schaltet um 21 montags uhr und um 22 uhr dienstags
[21:00|1][22:00|$we] schaltet um 21 uhr und um 22 uhr am wochenende

es gibt nur 2 ausnahme mit anderem format:

[?20:00-21:00|5] - Zufälliger Schaltvorgang zwischen 20 Uhr und 21 Uhr am Freitag
[00:02*04:10-06:30] - Schaltvorgang alle 2 Minuten zwischen 4.10 Uhr und 6.30 Uhr


bei der condition hingegn kann dieses angegeben werden:
[05:00-20:00]

bedeutet erstmal nur , das alle events von einem device ( fallls zusätzlich als trigger definiert ) nur zwischen 05 uhr und 20 uhr überhaupt berücksichtigt werden . Zeitschaltungen werden aber weiterhin ausgeführt , d.h hier wird nicht auf diese bedingung geprüft.

erst besagtes attribut sorgt dafür, das auch zeitschaltungen auf diese bedingung geprüft wird. dabei muss es sich ja nicht um einen zeitraum handeln , sondern um ein reading etc. pp. [device:reading] eq "on/grün .... ".

ggf. hat diese zeitangabe [05:00-20:00] zu dem merkwürdigen verhalten geführt, da überprüfe ich nicht auf syntaxfehler. muss ich prüfen.


sag mir doch bitte mal , was du genau wie bezwecken willst .

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: arthur_dent_2015 am 14 September 2018, 22:02:01
nachem ich heute um 20 Uhr wieder im dunkeln saß, habe ich das Modul erst mal deaktiviert und das alte DOIF wieder aktiviert. Deine Antwort habe ich erst später gelesen. Ich bin halt davon ausgegangen Syntax stark an DOIF angelehnt, wird schon gehen. Okay, habe gelernt das geht hier nicht so.
Was ich erreichen will, relativ einfach. Mit dem Schalter ET1 wird nachts die halbe Wohnung stromlos und das Licht im Schlafzimmer geschaltet und das eben nicht versehentlich z.B. durch die Putze, tagsüber passieren.
Also, wenn ich Dich richtig verstehe muss ich die Zeiten bei jedem device in den conditions setzen?
Zitat von: Byte09 am 14 September 2018, 19:31:34
zu 'attr'

das möchte ich im grunde nur ungerne, da fremdattribute - denke ich - nicht von einem Modul geändert werden sollten.
was mit freecmd angestellt wird .... naja, steht ja jedem frei  ;)
okay, kann ich verstehen. Über freecmd muss ich mal nachdenken. Die ganzen notifys, da verliert man irgendwann den Überblick wann und wo ein device inactiv und wieder active gesetzt wird.

Zitat von: Byte09 am 14 September 2018, 19:31:34

bei einem shutdown werden alle delays, timer etc gelöscht´. Nach neustart werden ganz oben gesetzte auslösezeiten neu gesetzt ( oder berechnet ) . delays sind in diesem moment 'verloren' ( derzeitiger stand ) .

Okay, auch verstanden, kann ich meine Idee vergessen und was ist mit INITIALIZED, bekommt MSwitch das schon mit?

Gruß
Arthur
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 September 2018, 07:08:20
Zitat von: arthur_dent_2015 am 14 September 2018, 22:02:01
nachem ich heute um 20 Uhr wieder im dunkeln saß, habe ich das Modul erst mal deaktiviert und das alte DOIF wieder aktiviert. Deine Antwort habe ich erst später gelesen. Ich bin halt davon ausgegangen Syntax stark an DOIF angelehnt, wird schon gehen. Okay, habe gelernt das geht hier nicht so.
Was ich erreichen will, relativ einfach. Mit dem Schalter ET1 wird nachts die halbe Wohnung stromlos und das Licht im Schlafzimmer geschaltet und das eben nicht versehentlich z.B. durch die Putze, tagsüber passieren.
Also, wenn ich Dich richtig verstehe muss ich die Zeiten bei jedem device in den conditions setzen? okay, kann ich verstehen. Über freecmd muss ich mal nachdenken. Die ganzen notifys, da verliert man irgendwann den Überblick wann und wo ein device inactiv und wieder active gesetzt wird.
Okay, auch verstanden, kann ich meine Idee vergessen und was ist mit INITIALIZED, bekommt MSwitch das schon mit?

Gruß
Arthur


hier ein configfile eines MSwitches , das auf INITIALIZED reagiert. In diesem Beispeil wird bei init nur ein logeintrag geschrieben .
( geh in einem neuen mswitch auf get_config , dort das file einsetzen und speichern drücken.

#V V1.75
#S .Device_Affected -> FreeCmd-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1,cmd,cmd,{[cnl]Log3(~"test"#[ko]~0#[ko]~"Fhem~wurde~initialisiert"~)[se][cnl]},,delay1,delay1,000000,000000,,,,,1
#S .Device_Events ->
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> INITIALIZED
#S .Trigger_condition -> [$EVENT]#[sp]=#[ti]#[sp]m/INITIALIZED(#[pt]*)/
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V 1.2
#S Trigger_device -> global
#S Trigger_log -> on
#S last_event -> INITIALIZED
#S state -> off
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A room -> 1_Test
#A MSwitch_Safemode -> 1
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Help -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Startdelay -> 0


2 besonderheiten: das mswich triggert hier auf den eintrag GLOBAL - konket auf INITILIZED. diesen eintrag in der Liste bekommst du nur dann , wenn das MSwitch im Expertenmodus ist ( attr MSwitch_Expert 1 ).
weiterhin reagiert das MSwitch hier schon auf alle während der startphase anfallende events. das tut es normalerweise nicht , sondern nimmt erst 1 minute nach fhemstart seine arbeit auf. um das zu erreichen , muss das attr 'MSwitch_Startdelay' auf 0 gesetzt werden.

zu deiner stromlosschaltung -  das ist glaube ich einfacher als du es gerade versuchst:
im anhang ein bild zur verdeutlichung. des gerät xioamibuttons entspricht deinem schalter ET1. wenn dieser og on geschaltet wird, wird der schaltzweig cmd1 ausgelöst ( event state:on) , enntsprechend für off des schalters. Auf den schalter wird aber nur zwischen 20 uhr und 8 uhr reagiert (Trigger condition (events only): ) .

zeitgesteuert wird der cmd1 um 8 uhr ausgelöst , der cmd2 um 20 uhr , diese schaltvorgänge werden immer ausgelöst , unabhängig von diesem Feld (Trigger condition (events only): )  .

wbei du die zeitgesteuerten schaltvorgönge in diesem fallja gar nicht brauchst, du willst ja über den schalter ab/anschalten. dann lass die 2 zeilen mit den zeiten einfach leer , aber den  (Trigger condition (events only): ) lass gesetzt , damit der schalter nur in den angegebenen zeiten reagiert.

was du dann in den affected devices für die schaltvorgänge für devices und aktionen einsetzt ist hier ja erstmal egal.

gruss Byte09

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Torsten_MG am 15 September 2018, 08:43:43
Gibt es eine möglichkeit den Log von einem speziellem MSwitch separat zu loggen? Mein Logfile ist ziemlich voll und meine Fam. sagt immer wieder das es probleme mit einer Schaltung gibt. Es würde eine Lampe immer wieder aus und angehen obwohl nur 1x eingeschaltet wurde. Würde gerne den MSwitch über mehrere std. isoliert loggen um zu sehen woran es liegen könnte. Ob es z.b. am MSwitch liegt oder an was anderem.

Im Log der Lampe wird nämlich angezeigt, das die Lampe immer wieder on/off gesetzt wird. Die Lampe ist eine Ikea Tradfri und wird über zigbee2mqtt angesteuert.

2018-09-15_07:59:02 BD_Lampe on
2018-09-15_07:59:04 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:04 BD_Lampe on
2018-09-15_07:59:09 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:09 BD_Lampe off
2018-09-15_07:59:15 BD_Lampe on
2018-09-15_07:59:15 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:15 BD_Lampe on
2018-09-15_07:59:36 BD_Lampe off
2018-09-15_07:59:44 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:44 BD_Lampe off
2018-09-15_08:01:57 BD_Lampe on
2018-09-15_08:02:41 BD_Lampe off
2018-09-15_08:02:43 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:02:43 BD_Lampe off
2018-09-15_08:02:58 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:02:58 BD_Lampe OFF
2018-09-15_08:03:19 BD_Lampe on
2018-09-15_08:03:34 BD_Lampe off
2018-09-15_08:03:35 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:35 BD_Lampe ON
2018-09-15_08:03:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:36 BD_Lampe off
2018-09-15_08:03:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:36 BD_Lampe OFF
2018-09-15_08:03:44 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:44 BD_Lampe OFF
2018-09-15_08:06:00 BD_Lampe on
2018-09-15_08:06:02 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:02 BD_Lampe ON
2018-09-15_08:06:02 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:02 BD_Lampe on
2018-09-15_08:06:08 BD_Lampe off
2018-09-15_08:06:08 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:08 BD_Lampe off
2018-09-15_08:06:10 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:10 BD_Lampe OFF
2018-09-15_08:06:21 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:21 BD_Lampe OFF
2018-09-15_08:09:41 BD_Lampe on
2018-09-15_08:09:41 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:41 BD_Lampe on
2018-09-15_08:09:42 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:42 BD_Lampe ON
2018-09-15_08:09:48 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:48 BD_Lampe ON
2018-09-15_08:20:13 BD_Lampe off
2018-09-15_08:20:27 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:20:27 BD_Lampe off
2018-09-15_08:24:38 BD_Lampe on
2018-09-15_08:24:39 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:24:39 BD_Lampe on
2018-09-15_08:27:11 BD_Lampe off
2018-09-15_08:27:11 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:11 BD_Lampe off
2018-09-15_08:27:31 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:31 BD_Lampe OFF
2018-09-15_08:27:51 BD_Lampe on
2018-09-15_08:27:51 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:51 BD_Lampe on
2018-09-15_08:28:04 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:04 BD_Lampe ON
2018-09-15_08:28:30 BD_Lampe off
2018-09-15_08:28:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:36 BD_Lampe off
2018-09-15_08:28:41 BD_Lampe on
2018-09-15_08:28:44 BD_Lampe off
2018-09-15_08:28:45 BD_Lampe on
2018-09-15_08:28:45 BD_Lampe off
2018-09-15_08:28:45 BD_Lampe on
2018-09-15_08:28:46 BD_Lampe on
2018-09-15_08:28:52 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:52 BD_Lampe OFF
2018-09-15_08:28:53 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:53 BD_Lampe ON
2018-09-15_08:30:37 BD_Lampe off
2018-09-15_08:30:37 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:30:37 BD_Lampe off
2018-09-15_08:30:45 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:30:45 BD_Lampe OFF
2018-09-15_08:33:55 BD_Lampe on
2018-09-15_08:33:56 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:33:56 BD_Lampe ON
2018-09-15_08:33:56 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:33:56 BD_Lampe on
2018-09-15_08:37:11 BD_Lampe off
2018-09-15_08:37:11 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:11 BD_Lampe off
2018-09-15_08:37:12 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:12 BD_Lampe OFF
2018-09-15_08:37:15 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:15 BD_Lampe OFF
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 September 2018, 09:17:21
Zitat von: Torsten_MG am 15 September 2018, 08:43:43
Gibt es eine möglichkeit den Log von einem speziellem MSwitch separat zu loggen? Mein Logfile ist ziemlich voll und meine Fam. sagt immer wieder das es probleme mit einer Schaltung gibt. Es würde eine Lampe immer wieder aus und angehen obwohl nur 1x eingeschaltet wurde. Würde gerne den MSwitch über mehrere std. isoliert loggen um zu sehen woran es liegen könnte. Ob es z.b. am MSwitch liegt oder an was anderem.

Im Log der Lampe wird nämlich angezeigt, das die Lampe immer wieder on/off gesetzt wird. Die Lampe ist eine Ikea Tradfri und wird über zigbee2mqtt angesteuert.

2018-09-15_07:59:02 BD_Lampe on
2018-09-15_07:59:04 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:04 BD_Lampe on
2018-09-15_07:59:09 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:09 BD_Lampe off
2018-09-15_07:59:15 BD_Lampe on
2018-09-15_07:59:15 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:15 BD_Lampe on
2018-09-15_07:59:36 BD_Lampe off
2018-09-15_07:59:44 BD_Lampe transmission-state: incoming publish received
2018-09-15_07:59:44 BD_Lampe off
2018-09-15_08:01:57 BD_Lampe on
2018-09-15_08:02:41 BD_Lampe off
2018-09-15_08:02:43 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:02:43 BD_Lampe off
2018-09-15_08:02:58 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:02:58 BD_Lampe OFF
2018-09-15_08:03:19 BD_Lampe on
2018-09-15_08:03:34 BD_Lampe off
2018-09-15_08:03:35 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:35 BD_Lampe ON
2018-09-15_08:03:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:36 BD_Lampe off
2018-09-15_08:03:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:36 BD_Lampe OFF
2018-09-15_08:03:44 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:03:44 BD_Lampe OFF
2018-09-15_08:06:00 BD_Lampe on
2018-09-15_08:06:02 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:02 BD_Lampe ON
2018-09-15_08:06:02 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:02 BD_Lampe on
2018-09-15_08:06:08 BD_Lampe off
2018-09-15_08:06:08 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:08 BD_Lampe off
2018-09-15_08:06:10 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:10 BD_Lampe OFF
2018-09-15_08:06:21 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:06:21 BD_Lampe OFF
2018-09-15_08:09:41 BD_Lampe on
2018-09-15_08:09:41 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:41 BD_Lampe on
2018-09-15_08:09:42 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:42 BD_Lampe ON
2018-09-15_08:09:48 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:09:48 BD_Lampe ON
2018-09-15_08:20:13 BD_Lampe off
2018-09-15_08:20:27 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:20:27 BD_Lampe off
2018-09-15_08:24:38 BD_Lampe on
2018-09-15_08:24:39 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:24:39 BD_Lampe on
2018-09-15_08:27:11 BD_Lampe off
2018-09-15_08:27:11 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:11 BD_Lampe off
2018-09-15_08:27:31 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:31 BD_Lampe OFF
2018-09-15_08:27:51 BD_Lampe on
2018-09-15_08:27:51 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:27:51 BD_Lampe on
2018-09-15_08:28:04 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:04 BD_Lampe ON
2018-09-15_08:28:30 BD_Lampe off
2018-09-15_08:28:36 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:36 BD_Lampe off
2018-09-15_08:28:41 BD_Lampe on
2018-09-15_08:28:44 BD_Lampe off
2018-09-15_08:28:45 BD_Lampe on
2018-09-15_08:28:45 BD_Lampe off
2018-09-15_08:28:45 BD_Lampe on
2018-09-15_08:28:46 BD_Lampe on
2018-09-15_08:28:52 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:52 BD_Lampe OFF
2018-09-15_08:28:53 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:28:53 BD_Lampe ON
2018-09-15_08:30:37 BD_Lampe off
2018-09-15_08:30:37 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:30:37 BD_Lampe off
2018-09-15_08:30:45 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:30:45 BD_Lampe OFF
2018-09-15_08:33:55 BD_Lampe on
2018-09-15_08:33:56 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:33:56 BD_Lampe ON
2018-09-15_08:33:56 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:33:56 BD_Lampe on
2018-09-15_08:37:11 BD_Lampe off
2018-09-15_08:37:11 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:11 BD_Lampe off
2018-09-15_08:37:12 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:12 BD_Lampe OFF
2018-09-15_08:37:15 BD_Lampe transmission-state: incoming publish received
2018-09-15_08:37:15 BD_Lampe OFF


in dier aktuellen Version leider nicht . In der kommenden Version wird es so etwas geben, ich arbeite gerade daran , wird aber wohl noch ein paar tage dauern.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 September 2018, 16:01:43
auf mehrfachen Wunsch wird die Debug Funktion in der kommenden Version geändert sein.

Debug 0
Keine gesonderte Funktion

Debug 1
zusätzliche Einblendung von Testbuttons für Conditions, etc.

Debug 2
Portokollierung aller Aktionen des Devices in gesonderter Logdatei - Aktionen werden nur simuliert und nicht ausgeführt

Debug 3
normaler Ablauf incl. ausführung aller Schaltvorgänge . Es werden alle Aktionen in gesonderter Datei protokolliert.

Sat Sep 15 15:49:35 2018 Starte Log
Sat Sep 15 15:49:38 2018: -> ----------------------------------------
Sat Sep 15 15:49:38 2018: -> t: aufruf on/off -> off
Sat Sep 15 15:49:38 2018: -> ----------------------------------------
Sat Sep 15 15:49:38 2018: -> t: angesprochener zweig cmd1 -> device -> -HM_1F675D-AbsCmd1-
Sat Sep 15 15:49:38 2018: -> t: teste auf timerstatus -> 0
Sat Sep 15 15:49:38 2018: -> t: timerstatus nach test -> 0
Sat Sep 15 15:49:38 2018: -> t: befehl gefunden -> set HM_1F675D off
Sat Sep 15 15:49:38 2018: -> t: teste auf delay -> 0
Sat Sep 15 15:49:38 2018: -> t: teste auf condition -> wird nicht getestet - kein eintrag
Sat Sep 15 15:49:38 2018: -> t: ergebniss condition -> ergebniss true
Sat Sep 15 15:49:38 2018: -> t: in exec-cmdpool geschrieben ->set HM_1F675D off
Sat Sep 15 15:49:38 2018: -> t: anzahl der auszufuehrenden befehle -> 1
Sat Sep 15 15:49:38 2018: -> t: uebergabe an sub execute
Sat Sep 15 15:49:38 2018: -> t:     execute -> set HM_1F675D off |HM_1F675D-AbsCmd1
Sat Sep 15 15:49:38 2018: -> t:     cmd nach decodierung -> set HM_1F675D off
Sat Sep 15 15:49:38 2018: -> t:     execute als fhemcode -> set HM_1F675D off


sieht im Device dann aus wi in angehangenem Screenshot.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 September 2018, 12:35:20
Ich habe eine erste Version , der V2.0 soeben in das GIT gestellt. Wer möchte kann sie gerne testen. Feedback wäre hilfreich.

Vor dem Update auf diese Verion ist unbedingt ein Backup aller MSwitch-Devices zu machen , andernfalls gibt es kein zurück auf die atuelle Version im Falle eines Falles.

Nach dem Update ist zwingend ein Fhemneustart erforderlich .

In dieser Betaversion habe ich (aus sicherheitsgründen) das automatische anpassen der gespeicherten Daten deaktiviert, d.H es muss jedes Device manuell upgedatet werden. Ein entsprechender Button wird im Device angeboten. Solange ein Device nicht aktualisiert wurde ist es blockiert. ( siehe Bilder im Anhang )

Ein normales Fhemupdate überspielt diese Version wieder auf aktuelle version . Falls es Probleme mit dieser Version gibt kann insofern wieder auf die jetzt aktuelle Version umgestellt werden. Nach Rückspielung dieser Version muss ein Fhemneustart und danach ein 'Restore MSwitch_data all_devices' ausgeführt werden , damit sollte der aktuelle Stand wieder hergestellt sein.

Info: Der Debugmode 2 und 3 in der neuen verision ist Resourcenhungrig, d.H diese sollten wirklich nur eingesetzt werden , wenn es nötig ist . Der Debugmode 4 ist ein reiner Entwicklungsmode , auf den ich verschiedene Funktionen nach Bedarf lege. In der fertigen version wird dieser nicht mehr verfügbar sein.

einmaliges update über die Befehlszeile:
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Nochmal der Hinweis:
Es handelt sich um eine Testversion . Fehler (ggf. auch gravierende) sind nicht ausgeschlossen !

gruss Byte09

Edit:
Bekannte probleme:
Repeatfunktion fehlerhaft -> Fix V2.0 beta 1 - eingespielt 17.09.18 - 17:00
configfile fehlerhaft -> Fix V2.0 beta 2 - eingespielt 19.09.18 - 19:00
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 September 2018, 18:57:33
INFO:

bekanntes problem mit den modulen 21_OWSWITCH.pm und  21_OWLCD.pm.

diese werden von MSwitch nicht als schaltbare Devices erkannt . Das Problem ist nicht über das MSwitch-Modul lösbar. Falls jemand MSwitch in Verbindung mit diesen Modulen nutzen möchte -> bitte kurze nachfrage per PM

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 20 September 2018, 14:21:25
Hallo,

jetzt habe ich endlich wieder Zeit gefunden mich um die (Um-)Programmierung auf dieses Modul zu kümmern. Ich habe vieles gefunden und es scheint wirklich DAS Modul für meine Anforderung zu sein. Danke an diese Stelle an Byte09.

Jetzt habe ich noch 2 Problemchen ungelöst:
Das MSwitch Device das ich angelegt habe (OG_WZ_ROLL_Balkon_Abschattung) lässt sich innerhalb des Moduls über entsprechende Parameter (in meinem Fall azimuth aus dem twilight Modul zwischen 100 und 230 bzw über 230) an- und wieder ausschalten. Wenn ich aber innerhalb des Moduls " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [OG_WZROLL_Balkon_Abschattung:state] eq "off" " eintrage wird der Status nicht erkannt. Setze ich einen testdummy mit derselben Regel und trage " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [testdummy:state] eq "off" " ein dann funktioniert es.
Was auch nicht funktioniert ist den pct-Wert des Rolladens auszuwerten. Dies habe ich mit " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [OG_WZ_Roll_Balkon:pct]>5 " versucht aber diese Bedingung wird nie wahr.

Kann mir jemand sagen was ich anders machen muss, dass diese beiden Dinge funktionieren ?


Danke für eure Hilfe

Viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 September 2018, 16:05:31
Zitat von: Bäschdler am 20 September 2018, 14:21:25
Hallo,

jetzt habe ich endlich wieder Zeit gefunden mich um die (Um-)Programmierung auf dieses Modul zu kümmern. Ich habe vieles gefunden und es scheint wirklich DAS Modul für meine Anforderung zu sein. Danke an diese Stelle an Byte09.

Jetzt habe ich noch 2 Problemchen ungelöst:
Das MSwitch Device das ich angelegt habe (OG_WZ_ROLL_Balkon_Abschattung) lässt sich innerhalb des Moduls über entsprechende Parameter (in meinem Fall azimuth aus dem twilight Modul zwischen 100 und 230 bzw über 230) an- und wieder ausschalten. Wenn ich aber innerhalb des Moduls " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [OG_WZROLL_Balkon_Abschattung:state] eq "off" " eintrage wird der Status nicht erkannt. Setze ich einen testdummy mit derselben Regel und trage " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [testdummy:state] eq "off" " ein dann funktioniert es.
Was auch nicht funktioniert ist den pct-Wert des Rolladens auszuwerten. Dies habe ich mit " [myLocation:azimuth]>100 AND [myLocation:azimuth]<230 AND [OG_WZ_Roll_Balkon:pct]>5 " versucht aber diese Bedingung wird nie wahr.

Kann mir jemand sagen was ich anders machen muss, dass diese beiden Dinge funktionieren ?


Danke für eure Hilfe

Viele Grüsse
Bäschdler

Hi Bäschdler,

das sind leider zu wenig infos, um hier genau zu schauen was schief läuft. Schalte doch erstmal deas entsprechende MSwitch in den debugmodus ( attribut MSwitch_debug auf 1) . dann hast du entsprechende Felder, mit denen du die Conditions prüfen kannst , sieht dann so aus:

eingehender String:
[detdummy_1:pct] >7 AND [detdummy_1:state] eq "up"

If Anweisung Perl:
if (ReadingsVal('detdummy_1', 'pct', 'undef') >7 && ReadingsVal('detdummy_1', 'state', 'undef') eq "up"){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [detdummy_1:state] - Inhalt: up
Reading: [detdummy_1:pct] - Inhalt: 8


ggf. kannst du ja hier schon sehen , ob estwas nicht stimmt.

ansonsten gib mir bitte mal ein configfile des devices ( get DEVICE get_config) und ggf. ein list des devices, dessen zustand nicht erkannt wird.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 21 September 2018, 13:46:37
Hallo,

(gefühlt) habe ich seit ich das erste Mal den Debug-Mode eingeschaltet habe, dass mir das Logfile überläuft. Letzten Monat war es ein paar hundert kByte gross, diesen Monat hat es stolze 450 MByte.

Kann man da was einstellen, dass da nicht so viele Meldungen generiert werden?

Danke und Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 September 2018, 16:07:13
Zitat von: Bäschdler am 21 September 2018, 13:46:37
Hallo,

(gefühlt) habe ich seit ich das erste Mal den Debug-Mode eingeschaltet habe, dass mir das Logfile überläuft. Letzten Monat war es ein paar hundert kByte gross, diesen Monat hat es stolze 450 MByte.

Kann man da was einstellen, dass da nicht so viele Meldungen generiert werden?

Danke und Grüsse
Bäschdler

auf was hast du denn das verbose der devices stehen ? stell die mal auf 1, dann werden nur Fehler protokolliert. der Debugmode hat in der von dir genutzten Version nicht mit dem Logfile zu tun .

Letztendlich empfehle ich dir eh ein update auf die Version 2.0 ( ein paar posts drüber ) .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 September 2018, 08:13:15
update auf v2.00.

ab sofort ist die version 2.00 über das svn verfügbar.
diese version beinhaltet gravierende änderungen in der datenstruktur, d.H ich empfehle vor dem update ein backup der MSwitches.

- Debugmodus 2 und 3 protokollieren alle aktionen in einer eigenen datei . debug 3 sendet dabei keine Befehle , sondern simuliert lediglich

- in der auswahlliste der betroffenen geräte ist jetzt immer das device 'MSwitch_Self' zur auswahl vorhanden. d.H wenn sich das MSwitch selber schalten soll , kann hier immer dieses device gewählt werden. vorteil : bei einspielung eines configfiles muss keine anpassung erfolgen , wenn sich der name des devices geändert hat.

-auswahlfelder ID : bei setzten einer ID wird dieser befehl im normale ablauf nicht mehr berücksichtigt . Mit einer ID besetzte Befehle können aber aus den cmd-zweigen abgerufen werden . vorteil: erheblich mehr schaltmöglichkeiten , nicht mehr in direkter abhängigkeit von den schaltzweigen.

- änderung disable : das device kann nun auch bearbeitet werden , wenn es disabled ist

- editorfenster für 'get sysextension' : nur für sonderfunktionen

- configfiles geändert: configfiles können nun so angelegt werden , dass nach dem einspielen bestimmte geräteersetzungen etc. abgefragt werden . dieses mache einen support erheblich einfacher.

Achtung , alte Backups und Configfiles sind in dieser Version nicht mehr verwendbar.

gruss Byte09


edit: Zeitfenster verpasst , erst ab morgem im update   :( .
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 September 2018, 16:59:52
die aktuelle Version ist jetzt auch im GIT verfügbar.

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

nach update ist ein fhemneustart zwingend notwendig !

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 23 September 2018, 22:34:14
Hallo,

Zitat
auf was hast du denn das verbose der devices stehen ? stell die mal auf 1, dann werden nur Fehler protokolliert. der Debugmode hat in der von dir genutzten Version nicht mit dem Logfile zu tun .

Letztendlich empfehle ich dir eh ein update auf die Version 2.0 ( ein paar posts drüber ) .

Verbose war gar nicht als attribut gesetzt. Habe dann erst mal 1 eingestellt, da kam aber irgendwie auch mehr als nur Fehler und habe es jetzt mal auf 0 gesetzt. Jetzt kommt zwar gar nichts mehr im Logfile an, aber dafür wird's auch nicht dadurch unnötig gross ;-)

Jetzt funktioniert soweit alles so, wie ich es mir vorgestellt hatte :-)

Eine Frage hätte ich jetzt noch: In der Doku habe ich nichts über Ausdrücke in Klammer gelesen. Ich habe ein Konstrukt von "Bedingung1 AND Bedingung2 OR Bedingung1 AND Bedingung3" fände es aber viel hübscher wenn ich "Bedingung1 AND (Bedingung2 OR Bedingung3) schreiben könnte. Geht so was und wenn ja, wie muss ich das eintragen?


Habe eben ein Update auf die Version 2 gemacht, kann daher zu dieser Version noch nichts sagen.

Danke und Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 September 2018, 05:26:55
setze mal das attribut 'MSwitch_Help' auf 1, dann hast du vor jedem Feld ein Hilfebutton . dort ist entsprechende syntax beschrieben .

[19.10-23:00] AND ([Devicename:Reading] = 10 OR [Devicename:Reading] = 11)

... kannst du so schreiben.

letztendlich kannst du die klammern nach 'normalen' regeln setzen. mit den entsprechenden buttons 'check condition ' kannst du dir ansehen, was dabei herauskommt ( dafür attribut 'MSwitch_Debug' auf 1 setzen ) :

z.B.
[$EVENT] eq "IT_1527xac68c:state:on"  AND ([{ sunset("-5000") }-{ sunrise() }] OR [Motion_Control:Lux] < [Lux_Schwelle:state]) AND ([Kueche_Arbeitsplatte:state] eq "on" OR [Kueche_Dunsthaube:state] eq "on")

ansicht 'check condition':
eingehender String:
[$EVENT] eq "IT_1527xac68c:state:on" AND [Kueche_Arbeitsplatte:state] eq "off" AND [Kueche_Dunsthaube:state] eq "off" AND ([{ sunset("-5000") }-{ sunrise() }] OR [Motion_Control:Lux] < [Lux_Schwelle:state])

If Anweisung Perl:
if (ReadingsVal('Motion_Control', 'last_event', 'undef') eq "IT_1527xac68c:state:on" && ReadingsVal('Kueche_Arbeitsplatte', 'state', 'undef') eq "off" && ReadingsVal('Kueche_Dunsthaube', 'state', 'undef') eq "off" && ((1516728540 < 1516768740 && 1516768740 < 1516772400) || ReadingsVal('Motion_Control', 'Lux', 'undef') < ReadingsVal('Lux_Schwelle', 'state', 'undef'))){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if (ReadingsVal('Motion_Control', 'last_event', 'undef') eq "IT_1527xac68c:state:on" && ReadingsVal('Kueche_Arbeitsplatte', 'state', 'undef') eq "off" && ReadingsVal('Kueche_Dunsthaube', 'state', 'undef') eq "off" && ((18:29 < 05:39 && 05:39 < 06:40) || ReadingsVal('Motion_Control', 'Lux', 'undef') < ReadingsVal('Lux_Schwelle', 'state', 'undef'))){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [Lux_Schwelle:state] - Inhalt: 13
Reading: [Motion_Control:Lux] - Inhalt: 9
Reading: [Kueche_Dunsthaube:state] - Inhalt: off
Reading: [Kueche_Arbeitsplatte:state] - Inhalt: off
Reading: [Motion_Control:last_event] - Inhalt: IT_1527xac68c:state:on



gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 September 2018, 17:01:29
Codeschnipsel:

MSwitch-Configuration  um 'soft' zu dimmen.

Da ich doch einige Dimmer betreibe, die keine ramptime etc unterstützen , bzw nicht über register beinflussbar sind habe ich mal dieses MSwitch gebastelt, welches beliebige Dimmer soft dimmt. die Dimmgeschwindigkeit ist dabei über zwei dropdowns einstellbar ( siehe Bild ). Voraussetzung ist , das das Dimmdevice sowohl das reading ptc hat , als auch den Befehl set ptc ... versteht.

vorgehen : leeres MSwitch-Device erstellen , anhängenden Configfile einspielen - Frage nach zu dimmendem Device beantworten - fertig. Würde mich freuen , wenn es mal jemand testen würde. Umbau auf andere readings/sets ist möglich. Das Configfile benötigt mindestensdie Modulversion V2.0.


über die beiden dropdowns wird zum einen die Verzögerungszeit eingestellt , zum anderen die 'Dimmschritte' per durchlauf.

10 - 00:00:10 -alle 10 sekunden wird um 10% gedimmt

Bei entsprechender restlicher Systemkonfiguration ( genericDeviceType-light etc. ) ist dieses Device direkt über Alexa ansprechbar : Schalte Device XX%


PS:In einer Variante dieses Devices betreibe ich auch meine Tradfri etc. Lampen (MQTT) . Diese Version hat einen 'vogeschalteten' Linearschalter, da diese über MQTT einen Dimmbereich von 0 - 256 haben , Alexa z.B aber nur bis 100% versteht ( glaube ich ). Bei Interesse oder Bedarf -> kurze Anfrage hier.

#I Achtung, des zu steuernde Device muss das Reading ptc haben und über set DEVICE ptc WERT angesteuert werden können !
#Q HM_1F675D#bitte dieses Device gegen ein vorhandenes Dimmer-Device ersetzen :#device
#V V2.00
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HM_1F675D-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HM_1F675D","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HM_1F675D pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]HM_1F675D-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> undef
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#A MSwitch_Expert -> 1
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Debug -> 0
#A disable -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A room -> 1_Test
#A MSwitch_Extensions -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Safemode -> 0


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 24 September 2018, 21:00:04
Zitat von: Esjay am 03 September 2018, 20:40:57
Nabend Byte,
Hast du zufällig etwas an dem Modul geändert zwecks der verwendung der Pipes?
#V V1.74
#S .Device_Affected -> Flur-AbsCmd1,ReceiverAxBox4K-AbsCmd1,TelegramBot-AbsCmd1
#S .Device_Affected_Details -> Flur-AbsCmd1,Speak,no_action,45~de~#[wa]Ton#[wa]~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",000000,home~eq~"home",0,1|ReceiverAxBox4K-AbsCmd1,showText,no_action,Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]eq#[sp]"home",,,,1|TelegramBot-AbsCmd1,msg,no_action,@#Home~Am~[myAbfall.next_weekday]~wird~[ArtikelMuell.state]~[myAbfall.next_text]~abgeholt~heute~ist~[Wochentag.state],,delay1,delay1,000000,000000,[Haus#[dp]state]#[sp]ne#[sp]"home",,,,1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[18:30][19:30][20:30]~off~ononly~offonly
#S .V_Check -> V 1.2
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> undef
#S state -> on
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Full
#A room -> MSwitch
#A MSwitch_Lock_Quickedit -> 1


Wenn ich den Command über "set Muelinfo exec_cmd1" ausführe ist alles in Ordnung.

Führt das Modul ihn über den Timer aus, kommt das bei raus.

Siehe Exec_cmd

Internals:
   NAME       MuellInfo
   NOTIFYDEV  no_trigger
   NR         284
   NTFY_ORDER 45-MuellInfo
   STATE      on
   TYPE       MSwitch
   Version    V1.74
   READINGS:
     2018-09-03 20:30:00   EVENT           MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTFULL         MuellInfo:execute_timer_P1:20:30
     2018-09-03 20:30:00   EVTPART1        MuellInfo
     2018-09-03 20:30:00   EVTPART2        execute_timer_P1
     2018-09-03 20:30:00   EVTPART3        20:30
     2018-09-03 20:30:00   Exec_cmd        set Flur Speak 45 de #[wa]Ton#[wa] Am [myAbfall:next_weekday] wird [ArtikelMuell:state] [myAbfall:ne....
     2018-09-03 20:15:26   Trigger_device  no_trigger
     2018-07-26 20:12:23   Trigger_log     off
     2018-09-03 20:30:00   state           on
   helper:
     conditioncheck if (ReadingsVal('Haus', 'state', 'undef') ne "home"){$answer = 'true';} else {$answer = 'false';}
     savemodeblock:
     timer:
       1535999400-1 1535999400-1
       1536012010 1536012010-5
Attributes:
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full
   room       MSwitch





Grüße

Moin Byte09,
Das Problem tritt wieder auf  :)

Zitat von: Byte09 am 24 September 2018, 17:01:29
Codeschnipsel:

MSwitch-Configuration  um 'soft' zu dimmen.

Da ich doch einige Dimmer betreibe, die keine ramptime etc unterstützen , bzw nicht über register beinflussbar sind habe ich mal dieses MSwitch gebastelt, welches beliebige Dimmer soft dimmt. die Dimmgeschwindigkeit ist dabei über zwei dropdowns einstellbar ( siehe Bild ). Voraussetzung ist , das das Dimmdevice sowohl das reading ptc hat , als auch den Befehl set ptc ... versteht.

vorgehen : leeres MSwitch-Device erstellen , anhängenden Configfile einspielen - Frage nach zu dimmendem Device beantworten - fertig. Würde mich freuen , wenn es mal jemand testen würde. Umbau auf andere readings/sets ist möglich. Das Configfile benötigt mindestensdie Modulversion V2.0.


über die beiden dropdowns wird zum einen die Verzögerungszeit eingestellt , zum anderen die 'Dimmschritte' per durchlauf.

10 - 00:00:10 -alle 10 sekunden wird um 10% gedimmt

Bei entsprechender restlicher Systemkonfiguration ( genericDeviceType-light etc. ) ist dieses Device direkt über Alexa ansprechbar : Schalte Device XX%


PS:In einer Variante dieses Devices betreibe ich auch meine Tradfri etc. Lampen (MQTT) . Diese Version hat einen 'vogeschalteten' Linearschalter, da diese über MQTT einen Dimmbereich von 0 - 256 haben , Alexa z.B aber nur bis 100% versteht ( glaube ich ). Bei Interesse oder Bedarf -> kurze Anfrage hier.
.......
.
.
..
.
.
.
gruss Byte09

Funktioniert sehr gut. Schöne Sache in Verbindung mit Twilight.

Grüße

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 September 2018, 21:30:17
Shit , da habe ich nicht aufgepasst .  Ist morgen früh im update behoben.

vorab im anhang

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

edit: ich habe da probleme und muss mir das heute abend nochmal genauer anschauen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 25 September 2018, 15:27:21
Hi,

eine Frage noch: ich habe bisher bei einigen Fahrbefehlen einen manuellen Logbucheintrag mittels


trigger man_log_OG_Buero_Roll_Garten log "Rolladen Abschattung auf Position 60 % fahren"


erzeugt. Kann ich das auch mittels MSwitch machen und wenn ja wie?

Danke und Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 25 September 2018, 17:11:23
Zitat von: Bäschdler am 25 September 2018, 15:27:21
Hi,

eine Frage noch: ich habe bisher bei einigen Fahrbefehlen einen manuellen Logbucheintrag mittels


trigger man_log_OG_Buero_Roll_Garten log "Rolladen Abschattung auf Position 60 % fahren"


erzeugt. Kann ich das auch mittels MSwitch machen und wenn ja wie?

Danke und Grüsse
Bäschdler

solle es in das ganz 'normale' logfile geschrieben werden ? siehe anhang:

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 26 September 2018, 18:06:40
Moin Byte,
kann es sein dass dein Modul die Trigger time einmalig einließt, und diesen Wert dann dauerhaft speichert?
Wenn ich in "switch MSwitch on + execute 'cmd1' at :" [Twilight:ss_astro] eintrage, trägt das Modul die Zeit im Klarform ein, und behält diese auch über die nächste Akualisierung des Twilight Device bei.

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 September 2018, 20:12:12
Zitat von: Esjay am 26 September 2018, 18:06:40
Moin Byte,
kann es sein dass dein Modul die Trigger time einmalig einließt, und diesen Wert dann dauerhaft speichert?
Wenn ich in "switch MSwitch on + execute 'cmd1' at :" [Twilight:ss_astro] eintrage, trägt das Modul die Zeit im Klarform ein, und behält diese auch über die nächste Akualisierung des Twilight Device bei.

Grüße

servus,

ja genau sp ist es . in dem moment, wenn du modify trigger device drückst , werden die schaltzeiten für den gesamten tag gesetzt und abgearbeitet -24.00 uhr. kurz nach 24.00 werden alle zeiten für den nächsten tag gesetzt.

so wie du es nun nutzt sehe ich natürlich das problem. ich habe mich mit dem twilightmodul allerdings noch nicht auseinandergesetzt. wieoft und wann aktualisiert dieses denn diese daten ?

ich sehe auch im augenblick keine direkt lösung dafür, da es ja nunmal zeitgesteuert ist / nicht eventgesteuert . Insofern kann das device ja gar nicht mitbekommen , wenn diese zeit sich ändert.  das wird bei einem at oder ähnlichem im grunde wohl nicht anders sein können ( vermute ich - ich arbeite nicht mit at ) und wohl mit setzen des at dann auch statisch ( ggf. mit zyklischen aktualisierungen ) sein.

die einzige lösung , die ich anbieten könnte , wäre das du im selben mswitch das twilight als trigger definierst und er bei änderung twilightreadings die zeiten neu berechnest ( über ein cmd ) . den befehl 'reload-timer' o.Ä müsste ich aber erst einbauen , wäre aber keine grosse sache. würde das helfen ?

gruss Byte09

PS: die gesetzten zeiten kannst du übrigens mit get active_timer show abrufen.

Beispiel:
Systemzeit: Wed Sep 26 20:34:59 2018
Schaltzeiten (at - kommandos).
2018-09-26 21:00:00 switch MSwitch on + execute 'on' cmds
2018-09-26 21:05:00 switch MSwitch off + execute 'off' cmds
2018-09-27 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 September 2018, 20:32:13
mit der angehängten version wäre es lösbar.
edit: habe es in das svn übernommen

dazu muss allerdings ( um es sinnvoll zu gestalten ) ein zweites mswitch angelegt werden . dieses muss auf das device twilight triggern ( entsprechendes event ) und in den affected devices das mswitch-device welches aktualisiert werden soll mit 'set device reload_timer' aktualisieren.

wenn es unverständlich ist schicke ich dir gerne eine entsprechende config ( brauche dann aber ein list deines twiligts ).

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 27 September 2018, 14:03:09
Zitat von: Byte09 am 26 September 2018, 20:12:12
servus,

ja genau sp ist es . in dem moment, wenn du modify trigger device drückst , werden die schaltzeiten für den gesamten tag gesetzt und abgearbeitet -24.00 uhr. kurz nach 24.00 werden alle zeiten für den nächsten tag gesetzt.

so wie du es nun nutzt sehe ich natürlich das problem. ich habe mich mit dem twilightmodul allerdings noch nicht auseinandergesetzt. wieoft und wann aktualisiert dieses denn diese daten ?

ich sehe auch im augenblick keine direkt lösung dafür, da es ja nunmal zeitgesteuert ist / nicht eventgesteuert . Insofern kann das device ja gar nicht mitbekommen , wenn diese zeit sich ändert.  das wird bei einem at oder ähnlichem im grunde wohl nicht anders sein können ( vermute ich - ich arbeite nicht mit at ) und wohl mit setzen des at dann auch statisch ( ggf. mit zyklischen aktualisierungen ) sein.

die einzige lösung , die ich anbieten könnte , wäre das du im selben mswitch das twilight als trigger definierst und er bei änderung twilightreadings die zeiten neu berechnest ( über ein cmd ) . den befehl 'reload-timer' o.Ä müsste ich aber erst einbauen , wäre aber keine grosse sache. würde das helfen ?

gruss Byte09

PS: die gesetzten zeiten kannst du übrigens mit get active_timer show abrufen.

Beispiel:
Systemzeit: Wed Sep 26 20:34:59 2018
Schaltzeiten (at - kommandos).
2018-09-26 21:00:00 switch MSwitch on + execute 'on' cmds
2018-09-26 21:05:00 switch MSwitch off + execute 'off' cmds
2018-09-27 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Das twilight Modul aktualisiert sich um 00:00:03.

Zitat von: Byte09 am 26 September 2018, 20:32:13
mit der angehängten version wäre es lösbar.
edit: habe es in das svn übernommen

dazu muss allerdings ( um es sinnvoll zu gestalten ) ein zweites mswitch angelegt werden . dieses muss auf das device twilight triggern ( entsprechendes event ) und in den affected devices das mswitch-device welches aktualisiert werden soll mit 'set device reload_timer' aktualisieren.

wenn es unverständlich ist schicke ich dir gerne eine entsprechende config ( brauche dann aber ein list deines twiligts ).

gruss Byte09

Nee alles gut, sonst gewöhnt man sich daran, sein Problemlöseverhalten auf andere abzuwälzen  ;). Ich habe gerade sowieso in den Kopf bekommen, mir eigene Helligkeitssensoren über LaCrosse zu bauen, daher wäre das wahrscheinlich Perlen vor die Säue.

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 September 2018, 15:47:32
Zitat von: Esjay am 27 September 2018, 14:03:09
Das twilight Modul aktualisiert sich um 00:00:03.

Nee alles gut, sonst gewöhnt man sich daran, sein Problemlöseverhalten auf andere abzuwälzen  ;). Ich habe gerade sowieso in den Kopf bekommen, mir eigene Helligkeitssensoren über LaCrosse zu bauen, daher wäre das wahrscheinlich Perlen vor die Säue.

Grüße

somit 7 sekunden vor dem MSwitch. d.H eigentlich müsste er das geänderte reading berücksichtigen . werde mir das heute nacht mal anschauen.

die Lösung von oben habe ich übrigens eingecheckt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 27 September 2018, 17:53:01
Zitat von: Byte09 am 27 September 2018, 15:47:32
somit 7 sekunden vor dem MSwitch. d.H eigentlich müsste er das geänderte reading berücksichtigen . werde mir das heute nacht mal anschauen.

die Lösung von oben habe ich übrigens eingecheckt.

gruss Byte09

Besten Dank!
Sag mal, wo kann ich die Steps bzw. die Sekunden in deinem Dimmerbeispiel anpassen? Momentan ist das Limit ja bei 5 Minuten. Würde das gerne noch ein wenig strecken!

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 September 2018, 21:22:47
Zitat von: Esjay am 27 September 2018, 17:53:01
Besten Dank!
Sag mal, wo kann ich die Steps bzw. die Sekunden in deinem Dimmerbeispiel anpassen? Momentan ist das Limit ja bei 5 Minuten. Würde das gerne noch ein wenig strecken!

Grüße
Geh mal im Device auf get get_sysextensions , da wirst du es schnell sehen . Aber in der Datei ist Vorsicht angesagt [emoji6]

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 05:54:03
Zitat von: Esjay am 26 September 2018, 18:06:40
Moin Byte,
kann es sein dass dein Modul die Trigger time einmalig einließt, und diesen Wert dann dauerhaft speichert?
Wenn ich in "switch MSwitch on + execute 'cmd1' at :" [Twilight:ss_astro] eintrage, trägt das Modul die Zeit im Klarform ein, und behält diese auch über die nächste Akualisierung des Twilight Device bei.

Grüße

ich habe eben nochmal ein fix in das svn gestellt, damit dürfte das problem gelöst sein. in betreffendem Device musst du aber die schaltzeit neu ein eingeben '[Twilight:ss_astro]' und speichern.

eine aktualisierung erfolgt dann immer um 00:00:10 uhr oder mit 'set reload_timer'.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 12:10:48
Zitat von: Byte09 am 28 September 2018, 05:54:03
ich habe eben nochmal ein fix in das svn gestellt, damit dürfte das problem gelöst sein. in betreffendem Device musst du aber die schaltzeit neu ein eingeben '[Twilight:ss_astro]' und speichern.

eine aktualisierung erfolgt dann immer um 00:00:10 uhr oder mit 'set reload_timer'.

gruss Byte09

Ich danke dir! Werde das die nächsten Tage beobachten. Wie sieht es eigentlich mit einer automatischen Konvertierung von doif`s,notify`s und at`s in ein MSwitch aus? ;D ;)

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 12:49:25
Zitat von: Esjay am 28 September 2018, 12:10:48
Ich danke dir! Werde das die nächsten Tage beobachten. Wie sieht es eigentlich mit einer automatischen Konvertierung von doif`s,notify`s und at`s in ein MSwitch aus? ;D ;)

Grüße
Hi,
Hatte ich mal angedacht , gab es auch mal im Ansatz , habe ich aber wieder rausgenommen ... sagen wir mal aus einer Vielzahl von Gründen . Wobei doif auch sehr komplex sein kann , für notifys kein Thema .

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 19:21:07
Moin Byte, kann es sein, dass ein rename das MSwitch durcheinander bringt?

2018.09.28 18:15:30 1: Logfile gelöscht
2018.09.28 18:15:46 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (7069)
2018.09.28 18:15:46 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:15:46 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: readingsUpdate(,EVENT,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7070)
2018.09.28 18:15:46 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:15:46 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: readingsUpdate(,EVTFULL,:MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7071)
2018.09.28 18:15:46 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:15:46 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: readingsUpdate(,EVTPART2,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7073)
2018.09.28 18:15:46 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:15:46 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: readingsUpdate(,last_event,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7075)
2018.09.28 18:15:46 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:15:46 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: MSWohnzimmerDim MSwitch_Restartcmd :Fehler bei Befehlsausfuehrung  ERROR Please define exec_cmd1 first 5384
2018.09.28 18:15:46 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBeginUpdate           called by fhem.pl (4748)
2018.09.28 18:15:46 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:15:46 1: readingsUpdate(,Exec_cmd,set  exec_cmd1 ) missed to call readingsBeginUpdate first.
2018.09.28 18:15:46 1: stacktrace:
2018.09.28 18:15:46 1:     main::readingsBulkUpdate            called by fhem.pl (4749)
2018.09.28 18:15:46 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:15:46 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:15:46 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:24:56 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (7069)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,EVENT,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7070)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,EVTFULL,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7071)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,EVTPART1,MSWohnzimmerDim) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7072)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,EVTPART2,on_with_Parameter) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7073)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,EVTPART3,100) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7074)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:24:56 1: readingsUpdate(,last_event,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:24:56 1: stacktrace:
2018.09.28 18:24:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7075)
2018.09.28 18:24:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:24:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:24:56 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:24:56 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:24:56 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:24:56 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:24:56 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:24:56 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:24:56 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:24:56 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:24:56 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:26:56 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (7069)
2018.09.28 18:26:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:26:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: readingsUpdate(,EVENT,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7070)
2018.09.28 18:26:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:26:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: readingsUpdate(,EVTFULL,:MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7071)
2018.09.28 18:26:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:26:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: readingsUpdate(,EVTPART2,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7073)
2018.09.28 18:26:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:26:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: readingsUpdate(,last_event,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7075)
2018.09.28 18:26:56 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:26:56 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: MSWohnzimmerDim MSwitch_Restartcmd :Fehler bei Befehlsausfuehrung  ERROR Please define exec_cmd1 first 5384
2018.09.28 18:26:56 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBeginUpdate           called by fhem.pl (4748)
2018.09.28 18:26:56 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:26:56 1: readingsUpdate(,Exec_cmd,set  exec_cmd1 ) missed to call readingsBeginUpdate first.
2018.09.28 18:26:56 1: stacktrace:
2018.09.28 18:26:56 1:     main::readingsBulkUpdate            called by fhem.pl (4749)
2018.09.28 18:26:56 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:26:56 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:26:56 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:35:42 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (7069)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,EVENT,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7070)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,EVTFULL,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7071)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,EVTPART1,MSWohnzimmerDim) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7072)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,EVTPART2,on_with_Parameter) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7073)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,EVTPART3,100) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7074)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:35:42 1: readingsUpdate(,last_event,MSWohnzimmerDim:on_with_Parameter:100) missed to call readingsBeginUpdate first.
2018.09.28 18:35:42 1: stacktrace:
2018.09.28 18:35:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7075)
2018.09.28 18:35:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:35:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (1430)
2018.09.28 18:35:42 1:     main::MSwitch_Set                   called by fhem.pl (3592)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (1807)
2018.09.28 18:35:42 1:     main::DoSet                         called by fhem.pl (1840)
2018.09.28 18:35:42 1:     main::CommandSet                    called by ./FHEM/98_cmdalias.pm (99)
2018.09.28 18:35:42 1:     main::CommandCmdAlias               called by fhem.pl (1214)
2018.09.28 18:35:42 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2583)
2018.09.28 18:35:42 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (861)
2018.09.28 18:35:42 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.09.28 18:35:42 1:     main::FW_Read                       called by fhem.pl (3597)
2018.09.28 18:35:42 1:     main::CallFn                        called by fhem.pl (726)
2018.09.28 18:37:42 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (7069)
2018.09.28 18:37:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:37:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: readingsUpdate(,EVENT,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7070)
2018.09.28 18:37:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:37:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: readingsUpdate(,EVTFULL,:MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7071)
2018.09.28 18:37:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:37:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: readingsUpdate(,EVTPART2,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7073)
2018.09.28 18:37:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:37:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: readingsUpdate(,last_event,MSwitch_Self-AbsCmd1_conditionon) missed to call readingsBeginUpdate first.
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (7075)
2018.09.28 18:37:42 1:     main::MSwitch_EventBulk             called by ./FHEM/98_MSwitch.pm (5408)
2018.09.28 18:37:42 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (5296)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: MSWohnzimmerDim MSwitch_Restartcmd :Fehler bei Befehlsausfuehrung  ERROR Please define exec_cmd1 first 5384
2018.09.28 18:37:42 1: ERROR: empty name in readingsBeginUpdate
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBeginUpdate           called by fhem.pl (4748)
2018.09.28 18:37:42 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.09.28 18:37:42 1: readingsUpdate(,Exec_cmd,set  exec_cmd1 ) missed to call readingsBeginUpdate first.
2018.09.28 18:37:42 1: stacktrace:
2018.09.28 18:37:42 1:     main::readingsBulkUpdate            called by fhem.pl (4749)
2018.09.28 18:37:42 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (5389)
2018.09.28 18:37:42 1:     main::MSwitch_Restartcmd            called by fhem.pl (3140)
2018.09.28 18:37:42 1:     main::HandleTimeout                 called by fhem.pl (649)


Zusätzlich hat das Einfügen des Dimmercodes gerade meinen kompletten Raspi abgeschossen  ;D

2018.09.28 18:40:12 0: vor change: FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{#[nl]my#[sp]$ziel#[sp]=#[sp]ReadingsVal("$SELF"#[ko]"ziel"#[ko]0)#[se]#[sp]##[sp]bis#[sp]wohin#[sp]gedimmt#[sp]werden#[sp]soll#[nl]my#[sp]$ist#[sp]=#[sp]ReadingsVal("HM_1F675D"#[ko]"pct"#[ko]0)#[se]#[sp]##[sp]zustand#[sp]der#[sp]lampe#[se]#[nl]my#[sp]$steps#[sp]=#[sp]ReadingsVal("$SELF"#[ko]"steps"#[ko]1)#[se]#[sp]##[sp]dimmschritte#[sp]pro#[sp]durchgang#[nl]Log3(#[sp]"SELF"#[ko]#[sp]5#[ko]#[sp]"SELF#[dp]#[sp]ziel#[sp]".$ziel#[sp])#[se]#[nl]Log3(#[sp]"SELF"#[ko]#[sp]5#[ko]#[sp]"SELF#[dp]#[sp]ist#[sp]".$ist#[sp])#[se]#[nl]if#[sp]($ist#[sp]==#[sp]$ziel#[sp])#[sp]##[sp]lösche#[sp]wiederholung#[sp]wenn#[sp]ziel#[sp]erreicht#[nl]#[sp]{#[nl]#[sp]fhem("set#[sp]$SELF#[sp]del_delays")#[se]#[nl]#[sp]return#[se]#[nl]#[sp]}#[nl]if#[sp]($ziel#[sp]>#[sp]$ist#[sp])#[nl]{#[nl]##[sp]setze#[sp]zustand#[sp]der#[sp]lampe#[sp]-#[sp]steps#[nl]$ist#[sp]=#[sp]$ist#[sp]+#[sp]$steps#[se]#[nl]$ist#[sp]=int($ist)#[se]#[nl]#[sp]#[sp]#[sp]if#[sp]($ziel#[sp]<#[sp]$ist#[sp])#[nl]#[sp]#[sp]#[sp]{#[nl]#[sp]#[sp]#[sp]$ist#[sp]=#[sp]$ziel#[se]#[nl]#[sp]#[sp]#[sp]}#[nl]}#[nl]if#[sp]($ziel#[sp]<#[sp]$ist#[sp])#[nl]{#[nl]##[sp]setze#[sp]zustand#[sp]der#[sp]lampe#[sp]-#[sp]steps#[nl]$ist#[sp]=#[sp]$ist#[sp]-#[sp]$steps#[se]#[sp]#[nl]$ist#[sp]=int($ist)#[se]#[nl]#[sp]#[sp]#[sp]if#[sp]($ziel#[sp]>#[sp]$ist#[sp])#[nl]#[sp]#[sp]#[sp]{#[nl]#[sp]#[sp]#[sp]$ist#[sp]=#[sp]$ziel#[se]#[nl]#[sp]#[sp]#[sp]}#[nl]}#[nl]Log3(#[sp]"SELF"#[ko]#[sp]5#[ko]#[sp]"SELF#[dp]#[sp]SETTING#[sp]".$ist#[sp])#[se]#[nl]fhem("set#[sp]HM_1F675D#[sp]pct#[sp]$ist")#[se]#[nl]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp]ziel#[sp][$SELF#[dp]Parameter]#[NF]set#[sp]$SELF#[sp]del_delays#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]HM_1F675D-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF#[dp]seconds]#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0
2018.09.28 18:40:21 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1356.
2018.09.28 18:40:21 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1357.
2018.09.28 18:40:21 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 1358.
2018.09.28 18:40:21 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 1358.
2018.09.28 18:40:22 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 4947.
2018.09.28 18:40:22 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 4948.
2018.09.28 18:40:22 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 4949.
2018.09.28 18:40:22 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 4949.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 3517.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 1807.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommandChain" at ./FHEM/98_MSwitch.pm line 5067.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommand" at fhem.pl line 1062.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::CommandCmdAlias" at fhem.pl line 1214.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::CommandSet" at ./FHEM/98_cmdalias.pm line 99.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::DoSet" at fhem.pl line 1840.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Set" at fhem.pl line 3592.
2018.09.28 18:40:27 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Exec_Notif" at ./FHEM/98_MSwitch.pm line 919.
2018.09.27 18:58:13 1: Including fhem.cfg


Ebenfalls habe ich beim Start von fhem folgende Warnungen.

2018.09.28 19:09:37 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 3507, <$fh> line 2020.
2018.09.28 19:09:37 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 7210, <$fh> line 2020.
2018.09.28 19:09:37 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 7331, <$fh> line 2020.


Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 20:18:44
ja, mit dem rename gibt es probleme - ist mir aber selber erst seit gestern oder vorgestern bewusst - ich arbeite daran und hoffe das ich sonntag entsprechende zeit finde . da ist im moment  noch ein neustart fällig.
die warnungen habe ich heute bereits behoben , waren nur doppeldeclarierungen.

aber mit dem einfügen des codes weiss ich nicht was passiert ist . wie und wo hast du diesen eingefügt ? einfach in ein freecmd kopiert ?
... und gib mir bitte mal den code, den du eingefügt hast .  edit: wobei mir das aussiht als hattest du ein config eingespielt ?

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 20:31:32
Habe ein einfaches MSwitch angelegt. Anschließend ein "get xyz get_config" gemacht, anschließend folgendes eingefügt:

#I Achtung, des zu steuernde Device muss das Reading ptc haben und über set DEVICE ptc WERT angesteuert werden können !
#Q HM_1F675D#bitte dieses Device gegen ein vorhandenes Dimmer-Device ersetzen :#device
#V V2.00
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HM_1F675D-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HM_1F675D","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HM_1F675D pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]HM_1F675D-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> undef
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#A MSwitch_Expert -> 1
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Debug -> 0
#A disable -> 0
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A room -> 1_Test
#A MSwitch_Extensions -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Safemode -> 0


anschließend ein save change, dann kam die Frage nach dem Device welches gedimmt werden soll,daraufhin habe ich folgendes Device genommen:

Internals:
   DEF        group 1  IODev=Hue
   ID         G1
   INTERVAL   
   IODev      Hue
   NAME       HUEGroup1
   NR         43
   STATE      on
   TYPE       HUEDevice
   class      Living room
   lights     1,2,3,4
   name       Wz
   type       Room
   READINGS:
     2018-09-28 20:29:49   alert           nonuniform
     2018-09-28 20:29:04   all_on          true
     2018-09-28 20:29:04   any_on          true
     2018-09-28 20:29:49   bri             216
     2018-09-28 20:29:49   colormode       ct
     2018-09-28 20:29:49   ct              406
     2018-09-28 20:29:49   effect          none
     2018-09-28 20:29:49   onoff           1
     2018-09-28 20:29:49   pct             85
     2018-09-28 20:29:49   reachable       1
     2018-09-28 20:29:49   sat             170
     2018-09-28 20:29:49   state           on
   helper:
     alert      nonuniform
     bri        216
     colormode  ct
     ct         406
     devtype    G
     effect     none
     onoff      1
     pct        85
     reachable  1
     sat        170
     state      dim81%
     update_timeout 1
Attributes:
   IODev      Hue
   alias      Wohnzimmergruppe
   color-icons 2
   delayedUpdate 1
   devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
   group      HUEGroup
   icon       logic
   room       Wohnzimmer,hidden
   stateFormat {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}
   userReadings state {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}
   userattr   createActionReadings:1,0 createGroupReadings:1,0


Nach dem Bestätigen--> Feierabend!

Eben nach dem Update:

2018.09.28 20:28:40 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 3532, <$fh> line 2020.
2018.09.28 20:28:41 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 5894, <$fh> line 2020.
2018.09.28 20:30:00 1: PERL WARNING: Use of uninitialized value $evtparts[0] in join or string at ./FHEM/98_MSwitch.pm line 7138.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 20:51:19
ich habe das jetzt glaube ich 10 mal probiert , in ähnlicher konstellation, ebenfalls mit dem device Huegroup1 ... ich kann es nicht nachvollziehen.

.. könntest du mir ggf. nochmal die RAW des devices geben (obwohl dort im grunde keine fehlerquelle sein kann , da hier nur eine ersetzung stattfindet ) ... aber sicher ist sicher

unabhängig davon wird das config nicht bei einer Huegroup funktionieren , da diese kein reading ptc besizt ( aber ein absturz dürfte es nicht produzieren )

... sehe gerade,das deine gruppe dieses reading besitzt , warum ? meine nicht?!  ... ggf. resultiert doch hieraus das problem ?!

gruss Byte
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 21:07:05
Setz mal folgendes:

attr <HueBridge> createGroupReadings 1

Damit werden die Gruppen zu "normalen" Devices gemacht.

Hier der Raw-Code

defmod HUEGroup1 HUEDevice group 1  IODev=Hue
attr HUEGroup1 userattr createActionReadings:1,0 createGroupReadings:1,0
attr HUEGroup1 IODev Hue
attr HUEGroup1 alias Wohnzimmergruppe
attr HUEGroup1 color-icons 2
attr HUEGroup1 delayedUpdate 1
attr HUEGroup1 devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr HUEGroup1 group HUEGroup
attr HUEGroup1 icon logic
attr HUEGroup1 room Wohnzimmer,hidden
attr HUEGroup1 stateFormat {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}
attr HUEGroup1 userReadings state {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}

setstate HUEGroup1 on
setstate HUEGroup1 2018-09-28 20:29:49 alert nonuniform
setstate HUEGroup1 2018-09-28 20:29:04 all_on true
setstate HUEGroup1 2018-09-28 20:29:04 any_on true
setstate HUEGroup1 2018-09-28 20:29:49 bri 216
setstate HUEGroup1 2018-09-28 20:29:49 colormode ct
setstate HUEGroup1 2018-09-28 20:29:49 ct 406
setstate HUEGroup1 2018-09-28 20:29:49 effect none
setstate HUEGroup1 2018-09-28 20:29:49 onoff 1
setstate HUEGroup1 2018-09-28 20:29:49 pct 85
setstate HUEGroup1 2018-09-28 20:29:49 reachable 1
setstate HUEGroup1 2018-09-28 20:29:49 sat 170
setstate HUEGroup1 2018-09-28 21:04:12 state on

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 21:14:55
Zitat von: Esjay am 28 September 2018, 21:07:05
Setz mal folgendes:

attr <HueBridge> createGroupReadings 1

Damit werden die Gruppen zu "normalen" Devices gemacht.

Hier der Raw-Code

defmod HUEGroup1 HUEDevice group 1  IODev=Hue
attr HUEGroup1 userattr createActionReadings:1,0 createGroupReadings:1,0
attr HUEGroup1 IODev Hue
attr HUEGroup1 alias Wohnzimmergruppe
attr HUEGroup1 color-icons 2
attr HUEGroup1 delayedUpdate 1
attr HUEGroup1 devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr HUEGroup1 group HUEGroup
attr HUEGroup1 icon logic
attr HUEGroup1 room Wohnzimmer,hidden
attr HUEGroup1 stateFormat {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}
attr HUEGroup1 userReadings state {ReadingsVal("HUEGroup1","all_on","") eq "false"?"off":"on"}

setstate HUEGroup1 on
setstate HUEGroup1 2018-09-28 20:29:49 alert nonuniform
setstate HUEGroup1 2018-09-28 20:29:04 all_on true
setstate HUEGroup1 2018-09-28 20:29:04 any_on true
setstate HUEGroup1 2018-09-28 20:29:49 bri 216
setstate HUEGroup1 2018-09-28 20:29:49 colormode ct
setstate HUEGroup1 2018-09-28 20:29:49 ct 406
setstate HUEGroup1 2018-09-28 20:29:49 effect none
setstate HUEGroup1 2018-09-28 20:29:49 onoff 1
setstate HUEGroup1 2018-09-28 20:29:49 pct 85
setstate HUEGroup1 2018-09-28 20:29:49 reachable 1
setstate HUEGroup1 2018-09-28 20:29:49 sat 170
setstate HUEGroup1 2018-09-28 21:04:12 state on



ok, thx ... hab ich.

habe jetzt das config eingespielt, ohne fehler . gruppe lässt sich ansteuern über das mswitch. ich verstehe es gerade nicht.
frage mal ganz vorsichtig : kannst du es reproduzieren ?

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 22:02:45
Gerade mal versucht zu reproduzieren. Klappt natürlich nicht  ;D

Kanns mir auch nicht erklären. Solange ich der einzige mit dem "Problem" bin, bzw. war, ist es wie es ist.

Zumindest haben deine Hue Gruppen jetzt das pct reading  ;D
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 September 2018, 22:10:37
Zitat von: Esjay am 28 September 2018, 22:02:45
Gerade mal versucht zu reproduzieren. Klappt natürlich nicht  ;D

Kanns mir auch nicht erklären. Solange ich der einzige mit dem "Problem" bin, bzw. war, ist es wie es ist.

Zumindest haben deine Hue Gruppen jetzt das pct reading  ;D
Das heisst jetzt ging es ?

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 28 September 2018, 22:12:20
Jap ohne Probleme mehrmals hintereinander.

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 September 2018, 09:55:15
kommendes Update auf V2.01

- Fix: Rename
Fehler bei der Renamefunktion ( rename MSwitchname Mswitchnewname ) behoben

- Fix/new : Copy
copy MSwitchdevice1 Mswitchdevice2 ist nun möglich . Bisher wurde hier nur die leere 'Hülle' kopiert , mit der kommenden Version werden alle daten übernommen. Aus Sicherheitsgründen wird ein kopiertes Device standartmässig immer auf 'disable' gesetzt

- Fix Delays
unter ganz bestimmten Voraussetzungen konnte es hier zu einem Fehlverhalten kommen , das Fhem zum Asturz brachte.
Bezug: https://forum.fhem.de/index.php/topic,86199.msg840535.html#msg840535 (https://forum.fhem.de/index.php/topic,86199.msg840535.html#msg840535)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 30 September 2018, 17:07:37
Hallo Byte,

ich möchte die Logbucheinträge im jeweiligen Logfile des Rolladen eintragen. Dafür habe ich jeweils weiteres Filelog definiert welches in das selbe File schribt wie das Rolladen-Modul dies tut.
Das würde ich auch gerne wieder so abbilden, denn dann steht bei dem Fahrbefehl eich ein Logbucheintrag weshalb der Rolladen da hin gefahren ist.

Dann hätte ich da noch § weitere Fragen:
- kann man innerhalb des MSwitch Moduls die (optische) Reihenfolge der Device Actions nachträglich noch ändern ?
- wäre es möglich eine "Überschrift" bzw. einen Kommentar bei dem jeweiligen Device Action-Block einzufügen (ich möchte mir da rein schreiben was die jeweilige Aktion macht)?
- kann man einen kompletten MSwitch irgendwie kopieren um quasi dieselbe Funktionalität unter einem anderen Namen und für ein anderes affected device zu bekommen?

Viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 September 2018, 19:05:07
Zitat von: Bäschdler am 30 September 2018, 17:07:37
Hallo Byte,

ich möchte die Logbucheinträge im jeweiligen Logfile des Rolladen eintragen. Dafür habe ich jeweils weiteres Filelog definiert welches in das selbe File schribt wie das Rolladen-Modul dies tut.
Das würde ich auch gerne wieder so abbilden, denn dann steht bei dem Fahrbefehl eich ein Logbucheintrag weshalb der Rolladen da hin gefahren ist.

Dann hätte ich da noch § weitere Fragen:
- kann man innerhalb des MSwitch Moduls die (optische) Reihenfolge der Device Actions nachträglich noch ändern ?
- wäre es möglich eine "Überschrift" bzw. einen Kommentar bei dem jeweiligen Device Action-Block einzufügen (ich möchte mir da rein schreiben was die jeweilige Aktion macht)?
- kann man einen kompletten MSwitch irgendwie kopieren um quasi dieselbe Funktionalität unter einem anderen Namen und für ein anderes affected device zu bekommen?

Viele Grüsse
Bäschdler

zu den logeinträgen . letztendlich sicher machbar, da müsstest du halt ein weiteres Freecmd definieren , welches den lofeintrag schreibt . formatierung muss ich mir nachher selber erstmal anschauen.

edit : schau mal hier -> https://forum.fhem.de/index.php/topic,69917.msg614675.html#msg614675 (https://forum.fhem.de/index.php/topic,69917.msg614675.html#msg614675) ... das als freecmd und es sollte gehen.

Zitat- kann man innerhalb des MSwitch Moduls die (optische) Reihenfolge der Device Actions nachträglich noch ändern ?

derzeit nicht , ist auch nicht wirklich sinnvoll , da es ja 'allgemein' gehalten sein müsste. wonach willst du da sortieren? es alphabetisch ( auch umgekehrt ) zu sortieren wäre kein problem , aber wird in aller regel ja nicht das sein , was gewünscht ist . Die reihenfolge des 'abarbeitens' kannst du mit 'priority' im expertenmodus bearbeiten .

Zitat- wäre es möglich eine "Überschrift" bzw. einen Kommentar bei dem jeweiligen Device Action-Block einzufügen (ich möchte mir da rein schreiben was die jeweilige Aktion macht)?

... mache ich mir mal einen kopf drüber , in aller regel ist aber jedes affected device ein einzeiler und somit recht durchschaubar .
bei gesetzten Freecmds ist es möglich kommentarzeilen einzusetzen ( # text ; ). ich bin mir nicht wirklich sicher, ob es sinnig ist  die resourcen hier weiter zu belasten ?! das du das attribut 'comment' nutzen kannst , in dieses auch als info angezeigt bekommmst , wenn du das attribut 'MSwitch-Inforoom' nutzt ist dir bewusst ?

edit:bin da gerade hin- und hergerissen , sollte das mehrheitlich für sinnvoll erachtet werden baue ich etwas ein.

Zitat- kann man einen kompletten MSwitch irgendwie kopieren um quasi dieselbe Funktionalität unter einem anderen Namen und für ein anderes affected device zu bekommen?

ein komplettes 'copy' ist ab der kommenden Version möglich , siehe einen post über deinem (https://forum.fhem.de/index.php/topic,86199.msg840923.html#msg840923 (https://forum.fhem.de/index.php/topic,86199.msg840923.html#msg840923)). alternativ und im grunde nicht als 'öffentliche' Funktion vorgesehen:

wenn du in einem device auf getconfig gehst und in diesem configfile die folgende zeile einbaust

#Q <NAME_zu ersetzendes_device>#irgendein text zur beschreibung#device

wird beim einspielen des Files in ein anderes device eine Abfrage gestartet, gegen welches device das <NAME_zu ersetzendes_device> ersetzt werden soll . damit werden  auch alle abhängigkeiten (conditions die auf dieses gerät verweisten etc. pp.)  ersetzt . das funktionier aber nur für die affected devices, nicht für die triggernden. Geht aber auch für mehrere devices - eine Zeile pro device.

... aber wie gesagt , das ist eine Funktion , eigentlich für mich , um configfiles vernünftig weitergeben zu können .
nutze ich z.B hier:
https://forum.fhem.de/index.php/topic,86199.msg839234.html#msg839234 (https://forum.fhem.de/index.php/topic,86199.msg839234.html#msg839234)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 30 September 2018, 23:47:07
Hallo,

Zitat
Zitat

    - kann man innerhalb des MSwitch Moduls die (optische) Reihenfolge der Device Actions nachträglich noch ändern ?


derzeit nicht , ist auch nicht wirklich sinnvoll , da es ja 'allgemein' gehalten sein müsste. wonach willst du da sortieren? es alphabetisch ( auch umgekehrt ) zu sortieren wäre kein problem , aber wird in aller regel ja nicht das sein , was gewünscht ist . Die reihenfolge des 'abarbeitens' kannst du mit 'priority' im expertenmodus bearbeiten .

Ich dachte daran, dass man (optional) die Reihenfolge manuell festlegen kann.

Beispiel:
Ich erstelle für das affected device "Rolladen1" eine 1. action "morgens auf 0%" und "abends mit 5 Minuten Verzögerung auf 100% wenn er auf 10% steht", dann eine 2. action "abends auf 10%".
Der Sinn dahinter ist, dass der Rolladen erst ein Stück runter fährt (als Vorwarnung) und erst dann komplett sofern er nicht manuell hoch gefahren wird.
Sind also schon mal 2 Aktionen für dasselbe Device. Wenn ich jetzt noch nach Wochentagen / Wochenende unterscheiden möchte bin ich bei 4 Aktionen. Dann noch Abschattung, also nochmal 2 dazu.
Diese Aktionen stehen dann in der Reihenfolge untereinander wie ich sie programmiert habe.
Wenn ich jetzt das mit dem Logfile als FreeCMD eintrage (habe ich eben gemacht und bin gespannt ob es so tut wie ich mir das vorstelle) habe ich nochmal weitere 6 Aktionen, auch diese in der Reihenfolge wie programmiert. Jeweils als Block von Fahrbefehlen und Logeinträgen.
ich würde jetzt gerne erst die Action "morgens auf 0%", "abends auf 100%" und danach die Action FreeCMD "logbuch bin auf 0% gefahren", "bin auf 100% gefahren" sehen bevor ich dann die "auf 10% fahren" und "logbuch bin auf 10% gefahren" sehe.

Ich hoffe ich konnte das verständlich ausdrücken ?!?

Wobei mir da gerade auf fällt, dass es natürlich auch äusserst cool wäre, wenn man ein cmd1a, cmd1b, ... für dieselbe condition und dasselbe für 2 natürlich auch eintragen könnte, da bei mir 2 - 3 mal dasselbe unter condition steht und ja quasi durch das selbe triggernde Ereignis mehrere Dinge ausgelöst werden.

Viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 Oktober 2018, 09:38:00
Moin,

Ich werde mit der Sortierung was machen .. ähnlich wie Priorität und id ... ich habe auch mswitch devices mit teilweise 25+ affected devices .... macht schon Sinn und geht mit ein paar Zeilen code. 

cmd1a,b etc. Ist nicht machbar ... dafür ist die Struktur des Moduls einfach nicht gemacht ... da müsste ich von Grund auf umbauen.

Gruss Byte09



Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 01 Oktober 2018, 17:18:30
Hi,

ich habe jetzt einfach alle 3 Kommandos unter FreeCMD nacheinander und mit Semikolon getrennt eingetragen und habe damit genau das was ich mit cmd1a, cmd1b,... gemeint habe. Und da ich für das schreiben in's Lofgfile ja sowieso das FreeCMD brauche ist das eine für mich super Lösung.

Damit relativiert sich auch das mit der Sortierung, da ich ja jetzt alle Kommandos "beieinander" habe.

Danke und viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 Oktober 2018, 17:44:49
Zitat von: Bäschdler am 01 Oktober 2018, 17:18:30
Hi,

ich habe jetzt einfach alle 3 Kommandos unter FreeCMD nacheinander und mit Semikolon getrennt eingetragen und habe damit genau das was ich mit cmd1a, cmd1b,... gemeint habe. Und da ich für das schreiben in's Lofgfile ja sowieso das FreeCMD brauche ist das eine für mich super Lösung.

Damit relativiert sich auch das mit der Sortierung, da ich ja jetzt alle Kommandos "beieinander" habe.

Danke und viele Grüsse
Bäschdler

nun ist es mit dem nächsten update drinnen   ;)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 01 Oktober 2018, 20:04:57
Super

Vielen Dank.


Ich habe gerade ein "komisches" Verhalten, bin mir aber auch nicht sicher ob es schon mal tat da ich gerade noch am rumprobieren bin.

Folgende Fehlermeldung bekomme ich wenn ich auf "check condition" gehe:
Zitat
eingehender String:
*{twilight("myLocation","sr_weather","04:00","09:30")}

If Anweisung Perl:


Syntaxfehler:
Can't use string ("07:05:52") as a symbol ref while "strict refs" in use at (eval 9010) line 1.

Dann habe ich das selbe mal mit dem Sunset probiert.
Manchmal kommt folgendes (auch bei twilight):
Zitat
eingehender String:*{sunset(0,"15:00","22:00")}If Anweisung Perl:if (ReadingsVal('myLocation', 'azimuth', 'undef')>100 && ReadingsVal('myLocation', 'azimuth', 'undef')<230 && ReadingsVal('OG_WZ_Roll_Balkon_Fahrbefehle', 'state', 'undef') eq "off"){$answer = 'true';} else {$answer = 'false';}
Syntaxfehler:Can't use string ("43:32:43") as a symbol ref while "strict refs" in use at (eval 9077) line 1. States der geprüften Readings:Reading: [OG_WZ_Roll_Balkon_Fahrbefehle:state] - Inhalt: offReading: [myLocation:azimuth] - Inhalt: 276.2Reading: [myLocation:azimuth] - Inhalt: 276.2

meistens kommt das:
Zitat
eingehender String:
*{sunset(0,"15:00","22:00")}

If Anweisung Perl:


Syntaxfehler:
Can't use string ("43:32:43") as a symbol ref while "strict refs" in use at (eval 9079) line 1.

Ich bin aber irgendwie der Meinung das hätte so (egal ob sunset oder twilight) schon getan.
Habe ich da was falsch gemacht?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 Oktober 2018, 20:14:39
ok , thx für die info.

schaue ich mir an , komme aber erst morgen abend dazu.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 Oktober 2018, 05:39:49
Zitat von: Bäschdler am 01 Oktober 2018, 20:04:57
Super

Vielen Dank.


Ich habe gerade ein "komisches" Verhalten, bin mir aber auch nicht sicher ob es schon mal tat da ich gerade noch am rumprobieren bin.

Folgende Fehlermeldung bekomme ich wenn ich auf "check condition" gehe:
Dann habe ich das selbe mal mit dem Sunset probiert.
Manchmal kommt folgendes (auch bei twilight):
meistens kommt das:
Ich bin aber irgendwie der Meinung das hätte so (egal ob sunset oder twilight) schon getan.
Habe ich da was falsch gemacht?

habe mir das gerade malangeschaut. die erkennung von sunset ist sehr kleinkariert in bezug auf die syntax ( incl. leerzeichen )  , das werde ich überarbeiten , aber es funktioniert.

in deinem obigen beispiel sieht es aber so aus, als hättest du nur einen zeitpunkt definiert ( oder da hat MSwitch etwas unterschlagen ), als condition wird aber immer ein zeitraum benötigt .

wenn ich z.B folgendes eingebe :
[{ sunset(0,"15:00","22:00") }-{ sunrise("+3600") }]

dann geht es  .

eingehender String:
[{ sunset(0,"15:00","22:00") }-{ sunrise("+3600") }]

If Anweisung Perl:
if ((1514831640 < 1514867940 && 1514867940 < 1514875920)){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if ((19:34 < 05:39 && 05:39 < 07:52)){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt


.... oder reden wir jetzt aneinander vorbei ?

gruss BYte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 02 Oktober 2018, 11:32:47
Moin Byte09, ich mal wieder.
folgende Version habe ich im Einsatz.

98_MSwitch.pm             17417 2018-09-28 03:52:31Z Byte09 Update zeigt mir keine neuere Version.

Wollte gerade meine beiden Mswitche (Die von dir zur Verfügung gestellten Dimmer) über die Slider in FHEMWEB einstellen, anschließend geht der fhem Prozess auf 100% (per top festgestellt) und nur ein reboot machte fhem wieder bedienbar!

2018.10.02 11:12:26 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1367.
2018.10.02 11:12:26 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1368.
2018.10.02 11:12:26 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 1369.
2018.10.02 11:12:26 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 1369.
2018.10.02 11:12:26 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 4999.
2018.10.02 11:12:26 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 5000.
2018.10.02 11:12:26 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5001.
2018.10.02 11:12:26 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5001.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 3517.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 1807.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommandChain" at ./FHEM/98_MSwitch.pm line 5119.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommand" at fhem.pl line 1062.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CommandCmdAlias" at fhem.pl line 1214.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CommandSet" at ./FHEM/98_cmdalias.pm line 99.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::DoSet" at fhem.pl line 1840.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Set" at fhem.pl line 3592.

2018.10.02 11:25:10 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 3532, <$fh> line 2020.
2018.10.02 11:25:10 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 5894, <$fh> line 2020.
2018.10.02 11:25:12 1: Including ./log/fhem.save


Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 Oktober 2018, 11:38:50
Zitat von: Esjay am 02 Oktober 2018, 11:32:47
Moin Byte09, ich mal wieder.
folgende Version habe ich im Einsatz.

98_MSwitch.pm             17417 2018-09-28 03:52:31Z Byte09 Update zeigt mir keine neuere Version.

Wollte gerade meine beiden Mswitche (Die von dir zur Verfügung gestellten Dimmer) über die Slider in FHEMWEB einstellen, anschließend geht der fhem Prozess auf 100% (per top festgestellt) und nur ein reboot machte fhem wieder bedienbar!

2018.10.02 11:12:26 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1367.
2018.10.02 11:12:26 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 1368.
2018.10.02 11:12:26 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 1369.
2018.10.02 11:12:26 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 1369.
2018.10.02 11:12:26 1: PERL WARNING: Argument "un" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 4999.
2018.10.02 11:12:26 1: PERL WARNING: Argument "ef" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 5000.
2018.10.02 11:12:26 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5001.
2018.10.02 11:12:26 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5001.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 3517.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 1807.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommandChain" at ./FHEM/98_MSwitch.pm line 5119.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommand" at fhem.pl line 1062.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CommandCmdAlias" at fhem.pl line 1214.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::CommandSet" at ./FHEM/98_cmdalias.pm line 99.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::DoSet" at fhem.pl line 1840.
2018.10.02 11:12:32 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Set" at fhem.pl line 3592.

2018.10.02 11:25:10 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 3532, <$fh> line 2020.
2018.10.02 11:25:10 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 5894, <$fh> line 2020.
2018.10.02 11:25:12 1: Including ./log/fhem.save


Grüße

Hi ,

Das ist das gleiche Problem ... zumindest die gleiche Ursache ..., was du die tage schon hattest . Die Ursache habe ich zwischenzeitlich behoben , das update aber noch nicht online gestellt.  Sobald ich heute nachmittag Zuhause bin lasse ich dir    die gefixte version zukommen. 

Gruss Byte09



Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 02 Oktober 2018, 11:43:41
Tip Top !

Ich danke dir!

8)

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 Oktober 2018, 20:26:03
Zitat von: Esjay am 02 Oktober 2018, 11:43:41
Tip Top !

Ich danke dir!

8)

Grüße

hi ,

wollte nur schnell bescheid geben , dass ich es heute nicht mehr schaffe mit der gefixten version , brauche morgen noch 1-2 stunden . sorry.

gruss Byte09

PM konnte ich dir leider nicht schicken .
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 03 Oktober 2018, 14:44:48
Moin Byte09

habe im Log folgende Meldung
Zitat2018.10.02 22:20:04 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 3532, <$fh> line 479.
2018.10.02 22:20:05 1: PERL WARNING: "my" variable $x masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 5894, <$fh> line 479.

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 Oktober 2018, 18:35:39
Zitat von: Maista am 03 Oktober 2018, 14:44:48
Moin Byte09

habe im Log folgende Meldung
Gruss Gerd

danke für den Hinweis, ist in der V2.01 weg. wollte ich eigentlich heute einspielen , leider habe ich mir heute morgen mein aktivsystem zerschosse ( vielmehr hat es sich irgendwie ohne mein zutun zerschossen ) und ich bekomme das problem nicht in den griff ( zigbee2mqtt
) . somit steht die Hälfte meiner Sensoren still ... super WAF.

Sobald ich das im Griff habe kümmere ich mich darum , das die Version online kommt .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 03 Oktober 2018, 20:00:57
Hi,

also beim sunset / sunrise weiss ich jetzt nicht geau, ich hatte den twilight genau so wie ich ihn jetzt im MSwitch drin habe in einem watchdog drin gehabt der mir den Rolladen gesteuert hat. Da hat's getan (aber ich brauchte halt 2 oder gar 3 watchdog's was ich jetzt durch einen MSwitch mit mehr Funktionalität ablösen will). Den sunset / sunrise aus meinem Beispiel hatte ich so aus der Doku von sunset / sunrise übernommen und testhalber in den MSwitch rein gemacht um zu sehen ob es da auch so ein ähnliches Verhalten gibt.

Was Du allerdings mit

[{ sunset(0,"15:00","22:00") }-{ sunrise("+3600") }]

machen willst verstehe ich jetzt nicht. Vom Sonnenuntergang zwischen 15 Uhr und 22 Uhr wird der Sonnenaufgang + 1 Stunde abgezogen?
Oder verstehe ich den Syntax nicht?

Gruss Bäschdler

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 Oktober 2018, 20:28:32
Zitat von: Bäschdler am 03 Oktober 2018, 20:00:57
Hi,

also beim sunset / sunrise weiss ich jetzt nicht geau, ich hatte den twilight genau so wie ich ihn jetzt im MSwitch drin habe in einem watchdog drin gehabt der mir den Rolladen gesteuert hat. Da hat's getan (aber ich brauchte halt 2 oder gar 3 watchdog's was ich jetzt durch einen MSwitch mit mehr Funktionalität ablösen will). Den sunset / sunrise aus meinem Beispiel hatte ich so aus der Doku von sunset / sunrise übernommen und testhalber in den MSwitch rein gemacht um zu sehen ob es da auch so ein ähnliches Verhalten gibt.

Was Du allerdings mit

[{ sunset(0,"15:00","22:00") }-{ sunrise("+3600") }]

machen willst verstehe ich jetzt nicht. Vom Sonnenuntergang zwischen 15 Uhr und 22 Uhr wird der Sonnenaufgang + 1 Stunde abgezogen?
Oder verstehe ich den Syntax nicht?

Gruss Bäschdler

wenn du es in zusammenhang mit conditions meinst ist es ein zeitraum : [zeit1-zeit2] ( zei1 bis zeit2 )

eingehender String:
[{ sunset(0,"15:00","22:00") }-{ sunrise("+3600") }]

If Anweisung Perl:
if ((1515004200 < 1515007740 && 1515007740 < 1515048900)){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if ((19:30 < 20:29 && 20:29 < 07:55)){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt


oder redest du garnicht von conditions , sondern von einem zeitschaltpunt ?
ZitatFolgende Fehlermeldung bekomme ich wenn ich auf "check condition" gehe:

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 Oktober 2018, 20:00:43
V2.01 ist ab morgen verfügbar.

- Rename eines MSwitch Devices - Fehler behoben
- Copy eines MSwitch Devices ist nun möglich - alle daten werden übernommen , nicht nur die 'Hülle'
- regex für die Conditions überarbeitet / Ensatz von z.B twilight etc. ist nun möglich
- Fehler inm Zusammenhang mit 'undef' in den delays behoben

Die angedachte Sortierreihenfolge in der Webansicht habe ich doch verworfen ( zumindest vorerst ) .

ACHTUNG: ich habe hier mal ein MSwitch eingestellt, welches auf das globale EVENT 'renamed' reagiert hat und von einem Rename betroffene devices innerhalb eines MSwitch-Devices angepassst hat . Dieses darf während eines Renames eines MSwitch-devices keinesfalls aktiv sein , das wird unweigerlich zum Totalverlust ALLER gespeicherten MSwitches führen.

Dieses bitte unbedingt löschen , ich werde hier in den kommenden Tagen ein überarbeitetes MSwitch mit dieser Funktion einstellen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 Oktober 2018, 20:16:12
@Esjay

der Fehler, der bei dir aufgetreten ist , ist ganz schwierig reproduzierbar . Die Änderungen die ich diesbezüglich gemacht habe basieren somit eher auf Vermutungen . Ich haffe, dass es behoben ist , würde im Augenblick aber nicht die Hand dafür insFeuer legen .

Info Allgemein: dieser Fehler betrifft nur ein ganz spezielles MSwitch , mit Sonderfunktionen !

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 04 Oktober 2018, 20:32:59
Zitat von: Byte09 am 04 Oktober 2018, 20:16:12
@Esjay

der Fehler, der bei dir aufgetreten ist , ist ganz schwierig reproduzierbar . Die Änderungen die ich diesbezüglich gemacht habe basieren somit eher auf Vermutungen . Ich haffe, dass es behoben ist , würde im Augenblick aber nicht die Hand dafür insFeuer legen .

Info Allgemein: dieser Fehler betrifft nur ein ganz spezielles MSwitch , mit Sonderfunktionen !

Gruss Byte09

Kein Thema, ich werde weiter testen, und wenn es Probleme gibt sage ich bescheid!

Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 07 Oktober 2018, 10:28:49
kommende Version 2.02

in der kommenden Version gibt es einen neuen Befehl
set <DEVICE> change_renamed <NAMEOLD> <NAMENEW>

Hintergund:
bisher gab es ein MSwitchdevice, was automatisch auf Namensänderungen von Devices reagiert hat. Da diese Funktion sehr stark von der aktuellen 'Version_Datenstruktur' ahängig ist , ist dieses Device nicht mehr nutzbar.

um bei zukünftigen Änderungen darauf reagieren (und das anpassen)  zu können , habe ich eine Funktion , die sowieso schon vorhanden war, mit diesem Befehl zugänglich gemacht.

Dieser Befehl ändert alle im MSwitch vorkommenden Devices <NAME> in <NAME1>. Das betrifft die 'affected_devices' sowie alle vorkommenden Verweise in conditions etc. und das triggerde Device.

Da diese Funktion nicht automatisch ausgelöst werden kann /soll - jedes MSwitch-Device müsste permanent auf alle globalen Events 'lauschen' , muss dieses erstmal manuell ausgeführt werden .

Zusätzlich werde ich wieder ein MSwitch bereitstellen , was diese Überwachung übernimmt ( und bei Vorkommen ) entsprechend warnt und/oder diese Änderung automatisch veranlasst.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 08 Oktober 2018, 14:27:50
Zitat
oder redest du garnicht von conditions , sondern von einem zeitschaltpunt ?

Ich bin darüber gestolpert, dass sunrise und sunset in demselben statement verwendet waren. Aber ich habe es jetzt so wie ich es wollte  :) und kann die Zeitpunkte (-räume) von sunset / sunrise mit entsprechenden offsetwerten berechnen.

Jetzt habe ich mir ein MSwich Device gebaut das 11 Free command's hat in denen ich abhängig von Sonnenaufgang, Helligkeit und Azimuth einen Dummy mit entsprechendem (aufsteigendem) Wert befüllt. Leider kann ich jetzt keine 12. (und weitere) Action für FreeCMD mehr hinzufügen. Ist das "gewollt" oder ist da noch eine Begrenzung drin die aus einem "alten" Entwicklungsstand her kommt?

Viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 Oktober 2018, 14:34:16
Hi ,

Ganz ehrlich .... ich habe im Moment keine Ahnung warum er kein 12tes nimmt. Habe ich noch nicht gemacht , gebundene befehle habe ich weit über 20.

Ich schaue mir das an , wenn ich nach hause komme und gebe dir dann Bescheid , bzw fixe es falls nötig.

Poste mir doch bitte mal die raw definition des Devices bzw den config file.

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 08 Oktober 2018, 14:43:58
Ich habe gerade entdeckt, dass die neuen actions doch angelegt wurden.

Bis action "11" war es so, dass die neue action immer am Ende angefügt wurde. Da habe ich jedes Mal auch hin gescrollt und daher nicht gesehen, dass die neue (leere) action an der zweiten Stelle eingefügt wurde. Da habe ich jetzt 4 leere action's, kann daher nicht sagen ob jetzt immer bei 2 eingefügt wurde (und dann die älteren wieder nach unten gerutscht sind) oder ob die nächste neue dann bei 3, 4, 5 eingefügt wurde. Aber jetzt kann ich weiter machen.

Gibt's jetzt schon die Möglichkeit die action's (manuell) zu sortieren? Wenn nicht ist nicht schlimm, wenn ja: wie kann man das machen?

Und dann noch die Frage: Wie kopiere ich einen MSwich? Habe ich da nicht alles gelesen oder bin ich einfach zu blind um die Funktion zu finden?


Danke und Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 Oktober 2018, 15:05:26
Sortieren geht noch nicht. Kopieren ganz normal über fhem

Copy mswitch mswitchcopy.

Die Kopie wird automatisch auf disable 1 gesetzt

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 10 Oktober 2018, 20:13:38
Ich zweifle gerade entweder an meinen Programmierkünsten oder am MSwitch:

Folgendes habe ich als condition:
Zitat
eingehender String:
[{ sunset(0,"17:00","21:30") }-23:59] AND [Rolladen_Aktionen:state] < 570

If Anweisung Perl:
if ((1515608040 < 1515611160 && 1515611160 < 1515625140) && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 570){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if ((19:14 < 20:06 && 20:06 < 23:59) && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 570){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [Rolladen_Aktionen:state] - Inhalt: 102

Das cmd ist eigentlich ganz einfach:

set Rolladen_Aktionen 570


Rolladen_Aktionen ist ein Dummy

Trotzdem der MSwitch bei "check conditions" ausspuckt, dass die Bedingung wahr ist wird der Dummy leider nicht auf 570 gesetzt.

Hat mir jemand einen Tipp was das falsch läuft?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 Oktober 2018, 22:41:44
Hi ,

Bin bis morgen abend unterwegs , kann es mir leider erst dann anschauen.

Scalte das Device doch mal auf debug 3 und stelle das interne log hier ein . Ggf. Kann ich auf dem Handy was erkennen.

Was löst denn das Device überhaupt aus ? Ein event oder zu einer bestimmten Zeit ?

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 11 Oktober 2018, 07:26:38
Guten Morgen zusammen,

ich versuch schon seit gestern mir einen MSwitch zu bauen, aber irgendwie steh ich auf dem Schlauch. Er macht nicht das was ich möchte. Ich vermute aber das der Fehler 40cm vor dem Bildschirm sitzt,  :-\

Also:
Ich hab im Keller einen Fensterkontakt (Homematic HmIP-SRH), einen Temperatur und Luftfeuchtesensor und einen Entfeuchter der über eine 433MHz Steckdose angeschlossen ist.
Der Entfeuchter soll an gehen sobald die Luftfeuchtigkeit über 69% steigt, aus gehen soll der Entfeuchter sobald 62% erreicht sind. Soweit geht es auch. Jetzt soll der Entfeuchter nicht angehen wenn das Fenster offen oder gekippt ist. Ist das Fenster geschlossen und die Feuchtigkeit bei 69% soll er angeschaltet werden.

Zur zeit hab ich es mit Dummys für Fenster und Entfeuchter versucht nachzustellen. Vom Büro aus öffnet sich das Fenster schlecht,  :)

config des MSwitch:


#V V2.01
#VS V2.00
#S .Device_Affected -> Entfeuchter-AbsCmd1,brennenstuhl_00110_1-AbsCmd1,test_Dummy-AbsCmd1
#S .Device_Affected_Details -> Entfeuchter-AbsCmd1#[NF]no_action#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]brennenstuhl_00110_1-AbsCmd1#[NF]no_action#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]test_Dummy-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][FensterTestDummy:state] eq "closed"#[NF][FensterTestDummy:state] eq "open"#[NF]#[NF]#[NF]1#[NF]0
#S .Device_Events -> state:T: 20.8 H: 60 dewpoint:12.6 D:12.4 D:12.6 dewpoint:12.8 humidity:59 temperature:20.8 temperature:20.7 temperature:20.9 state:T: 20.5 H: 61 D:12.2 dewpoint:12.2 state:T: 20.2 H: 61 temperature:20.3 dewpoint:12.7 state:T: 20.3 H: 61 temperature:20.6 state:closed state:T: 20.5 H: 59 state:T: 20.7 H: 60 humidity:61 state:T: 20.9 H: 60 D:12.7 D:12.8 humidity:60 humidity:58 battery:ok state:open dewpoint:12.5 state:T: 20.6 H: 60 humidity:69 no_trigger temperature:20.4 temperature:20.5 D:12.5
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> humidity:58
#S .Trigger_on -> humidity:60
#S .Trigger_time ->
#S .V_Check -> V2.00
#S Trigger_device -> TempundHumi_KG_rechts
#S Trigger_log -> on
#S last_event -> Entfeuchtet_MSwitch:on_with_Parameter:humidity:60
#S .sysconf -> undef
#S state -> on
#S Sys_Extension -> undef
#A MSwitch_Help -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Extensions -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Debug -> 0



Ich hoffe ihr könnt helfen!!!



Grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Oktober 2018, 09:10:56
Hi .

Ich schaue heute abend drüber , wenn ich wieder zu hause bin.



Soweit ich das jetzt am Handy sehen kann schaltest du bei humidity:62 an und bei humidity:58 aus. Damitschaltet er such nur dann , wenn genau diese Werte als event ankommen.   Du solltest auf generelle Änderungen des Readings reagieren ... humidity:.*  und eine abfrage ob größer oder kleiner bestimmter wert dann in den condition machen

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 11 Oktober 2018, 11:32:55
ja super, mach entspannt.

so hatte ich es schon probiert, bestimmt aber nicht richtig!!

danke und grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Oktober 2018, 19:00:46
Zitat von: pflock_y am 11 Oktober 2018, 07:26:38
Guten Morgen zusammen,

ich versuch schon seit gestern mir einen MSwitch zu bauen, aber irgendwie steh ich auf dem Schlauch. Er macht nicht das was ich möchte. Ich vermute aber das der Fehler 40cm vor dem Bildschirm sitzt,  :-\

Also:
Ich hab im Keller einen Fensterkontakt (Homematic HmIP-SRH), einen Temperatur und Luftfeuchtesensor und einen Entfeuchter der über eine 433MHz Steckdose angeschlossen ist.
Der Entfeuchter soll an gehen sobald die Luftfeuchtigkeit über 69% steigt, aus gehen soll der Entfeuchter sobald 62% erreicht sind. Soweit geht es auch. Jetzt soll der Entfeuchter nicht angehen wenn das Fenster offen oder gekippt ist. Ist das Fenster geschlossen und die Feuchtigkeit bei 69% soll er angeschaltet werden.

Zur zeit hab ich es mit Dummys für Fenster und Entfeuchter versucht nachzustellen. Vom Büro aus öffnet sich das Fenster schlecht,  :)

config des MSwitch:


#V V2.01
#VS V2.00
#S .Device_Affected -> Entfeuchter-AbsCmd1,brennenstuhl_00110_1-AbsCmd1,test_Dummy-AbsCmd1
#S .Device_Affected_Details -> Entfeuchter-AbsCmd1#[NF]no_action#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]brennenstuhl_00110_1-AbsCmd1#[NF]no_action#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]test_Dummy-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][FensterTestDummy:state] eq "closed"#[NF][FensterTestDummy:state] eq "open"#[NF]#[NF]#[NF]1#[NF]0
#S .Device_Events -> state:T: 20.8 H: 60 dewpoint:12.6 D:12.4 D:12.6 dewpoint:12.8 humidity:59 temperature:20.8 temperature:20.7 temperature:20.9 state:T: 20.5 H: 61 D:12.2 dewpoint:12.2 state:T: 20.2 H: 61 temperature:20.3 dewpoint:12.7 state:T: 20.3 H: 61 temperature:20.6 state:closed state:T: 20.5 H: 59 state:T: 20.7 H: 60 humidity:61 state:T: 20.9 H: 60 D:12.7 D:12.8 humidity:60 humidity:58 battery:ok state:open dewpoint:12.5 state:T: 20.6 H: 60 humidity:69 no_trigger temperature:20.4 temperature:20.5 D:12.5
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> humidity:58
#S .Trigger_on -> humidity:60
#S .Trigger_time ->
#S .V_Check -> V2.00
#S Trigger_device -> TempundHumi_KG_rechts
#S Trigger_log -> on
#S last_event -> Entfeuchtet_MSwitch:on_with_Parameter:humidity:60
#S .sysconf -> undef
#S state -> on
#S Sys_Extension -> undef
#A MSwitch_Help -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Extensions -> 0
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Debug -> 0



Ich hoffe ihr könnt helfen!!!



Grüße
pflock_y

hi ,

habe mir das gerade mal angeschaut.

hier mal eine funktionierende konfiguration, anhand derer du die funktionsweise nachvollziehen kannst. Die von dir vorgegebenen Dummys müssen vorhanden sein.

schau es dir einfach mal an , wenn dann fragen sind melde dich gerne.

Das Device habe ich in den Notifymode gesetzt , da es wesentlich einfacher zu konfigurieren ist . im Fullmode müsstest du bei den triggernden events schon mit regex arbeiten , da cmd1 und cmd2 nicht das gleiche event beinhalten darf, cmd3 und cmd4 schon. die genaue unterscheidung erfolgt dann in den conditions der ausgeführten zweige.

#V Arbeitsversion
#VS V2.00
#S .Device_Affected -> test_Dummy-AbsCmd1
#S .Device_Affected_Details -> test_Dummy-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][FensterTestDummy:state] eq "closed" AND [$EVTPART3] > 69#[NF][$EVTPART3] < 62#[NF]#[NF]#[NF]1#[NF]0
#S .Device_Events -> humidity:60 humidity:.* state:humidity 30 humidity:30 humidity:70
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> humidity:.*
#S .Trigger_cmd_on -> humidity:.*
#S .Trigger_condition -> undef
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> undef
#S .V_Check -> V2.00
#S Trigger_device -> TempundHumi_KG_rechts
#S Trigger_log -> on
#S last_event -> humidity:60
#S .sysconf -> undef
#S state -> active
#S Sys_Extension -> undef
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Debug -> 0
#A room -> 1_test
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Mode -> Notify
#A MSwitch_Include_MSwitchcmds -> 1
#A MSwitch_Activate_MSwitchcmds -> 1
#A MSwitch_Extensions -> 0


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 11 Oktober 2018, 19:43:18
nabend Byte09,

super vielen Dank für die Hilfe, soweit funktioniert der MSwitch.  ;D

Einzig der Status des FensterTestDummy "open" wurde nicht getriggert, ich hab es bei  'cmd2' condition: noch mit eingebaut und zum testen die Werte für humidity runter gesetzt.

Jetzt werd ich die Dummys gegen die "echten Geräte" ersetzen, bin gespannt und berichte

Dank und Gruß
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 11 Oktober 2018, 20:08:04
nur der Vollständigkeit halber:

Ich hab noch den tilted Status des Fensters im 'cmd2' condition: eingefügt

[FK_Keller_rechts_F_links:state] eq "open" OR [FK_Keller_rechts_F_links:state] eq "tilted" OR [$EVTPART3] < 62

und auch die "echten" Werte für Luftfeuchtigkeit geändert. Beim nächsten Wäsche trocknen im Keller wird sich zeigen ob es auch unter realen Bedingungen funktioniert,  :)

Auf den MSwitch_Mode Notify wär ich allein nie gekommen!!!

Danke nochmals und Grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Oktober 2018, 10:08:50
V2.01a ab morgen im SVN

um Supportanfragen zu vereinfachen habe ich in dieser Zwischenversion das Kommando 'get <DEVICE> get_support_site' eingefügt.

Bei zukünftigen Supportanfragen wäre es Hilfreich , wenn dieses genuzt würde und entsprechende Daten mit der Anfrage eingestellt werden ( erspart auch das posten von screenshots und somit datenlast im Forum ) .

Die angeforderten Daten sehen dann wie folgt aus:
Modulversion: Arbeitsversion
Datenstruktur: V2.00

----- Devicename -----
usertest

----- Attribute -----
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Expert: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Include_MSwitchcmds: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut room: 1_test
Attribut MSwitch_Activate_MSwitchcmds: 1
Attribut MSwitch_Include_Devicecmds: 1

----- Trigger -----
Trigger device:  TempundHumi_KG_rechts
Trigger time: undef
Trigger condition: undef
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: humidity:.*
Trigger cmd4: humidity:.*

----- Device Actions -----

Device: test_Dummy-AbsCmd1
cmd1: on
cmd2: off
cmd1 condition: [FensterTestDummy:state] eq "closed" AND [$EVTPART3] > 69
cmd2 condition: [$EVTPART3] < 62
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0


Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 Oktober 2018, 09:47:06
ich habe für die nächste Version doch einen früheren Vorschlag/Bitte aufgegriffen und es wird eine Kommentarfunktion geben , die es erlaubt jedes 'affected device' mit einem kommentar zu versehen . Bei grossen Mswitches ist es doch Hilfreich , um die Übersicht zuu behalten.

Die Funktion muss in jedem Mswitch per attribut ( MSwitch_Comments = 1  ) aktiviert werden.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 Oktober 2018, 10:11:12
weitere neuerung in kommender v2.02

ab dieser version gibt es die möglichkeit einer abbruchoption in den 'affected devices' im expertenmode. das bedeutet , wenn entsprechender befehl ( in abhängigkeit der conditions ) ausgeführt wird , wird das programm danach abgebrochen und die folgenden befehle werden nicht mehr ausgeführt.

im zusammenhang mit der 'priorityfuktion' werden nachfolgende befehle nur dann abgearbeitet, wenn vorheriger befehl nicht ausgeführt wurde . Somit stellt dieses im grunde eine 'elsif' funktion dar.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 Oktober 2018, 13:12:01
die Versio 2.02 steht jetzt zum Update im GIT.

wer sie probieren möchte , kann sie mit folgendem Befehl einspielen:

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Falls es Probleme gibt , ist mit normalem Fhemupdate ein 'zurück' auf 2.01 möglich , da die Datenstruktur unverändert ist.

nach dem update muss zwingend ein Fhemneustart durchgeführt werden.

bei Problemen wäre eine kurze Info hilfreich .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Oktober 2018, 13:24:17
Zitat von: Bäschdler am 08 Oktober 2018, 14:43:58
...

Gibt's jetzt schon die Möglichkeit die action's (manuell) zu sortieren? Wenn nicht ist nicht schlimm, wenn ja: wie kann man das machen?

...

Danke und Grüsse
Bäschdler

ich habe nochmals ein Update der Testversion im GIT gemacht. V 2.02a_Test.

in dieser Version lässt sich die Ansicht der 'affected_devicec' nun sortieren.
derzeit stehen folgende sortierungen zur verfügung:

none - ansicht entspricht der reihenfolge, in der die befehle abgearbeitet werden.

field show - ansicht wir anhand der einträge im Feld 'Show' sortiert . dieses Feld hat keinen einfluss auf die reihenfolge der abarbeitung und kann beliebig geändert werden.

field priority (nur im experten-mode verfügbar) - ansicht wir anhand der einträge im Feld 'Show' sortiert . dieses Feld beinflusst die reihenfolge der abarbeitung der Befehle ( nur in bestimmten fällen benötigt )

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 15 Oktober 2018, 19:42:31
Hallo,

sorry ich hab' momentan noch viel anderes um die Ohren und komme daher immer nur "nebenher" zum ausprobieren und ändern :-(

Folgendes steht im Logfile (DebigMode 3):
Zitat
Mon Oct 15 19:25:55 2018 Starte Log
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:55 2018: -> ----------------------------------------
Mon Oct 15 19:25:56 2018: -> ----------------------------------------
Mon Oct 15 19:25:56 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:25:56 2018: -> ----------------------------------------
Mon Oct 15 19:25:56 2018: -> ----------------------------------------
Mon Oct 15 19:25:56 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:56 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:25:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myHmUART
Mon Oct 15 19:25:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Clima
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Weather
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:00 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> ActionDetector
Mon Oct 15 19:26:00 2018: -> ----------------------------------------
Mon Oct 15 19:26:01 2018: -> ----------------------------------------
Mon Oct 15 19:26:01 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof
Mon Oct 15 19:26:01 2018: -> ----------------------------------------
Mon Oct 15 19:26:01 2018: -> ----------------------------------------
Mon Oct 15 19:26:01 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> ActionDetector
Mon Oct 15 19:26:01 2018: -> ----------------------------------------
Mon Oct 15 19:26:03 2018: -> ----------------------------------------
Mon Oct 15 19:26:03 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Strasse
Mon Oct 15 19:26:03 2018: -> ----------------------------------------
Mon Oct 15 19:26:03 2018: -> ----------------------------------------
Mon Oct 15 19:26:03 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Alle
Mon Oct 15 19:26:03 2018: -> ----------------------------------------
Mon Oct 15 19:26:05 2018: -> ----------------------------------------
Mon Oct 15 19:26:05 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Hof
Mon Oct 15 19:26:05 2018: -> ----------------------------------------
Mon Oct 15 19:26:05 2018: -> ----------------------------------------
Mon Oct 15 19:26:05 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:26:05 2018: -> ----------------------------------------
Mon Oct 15 19:26:06 2018: -> ----------------------------------------
Mon Oct 15 19:26:06 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Roll_Garten
Mon Oct 15 19:26:06 2018: -> ----------------------------------------
Mon Oct 15 19:26:06 2018: -> ----------------------------------------
Mon Oct 15 19:26:06 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Roll_Alle
Mon Oct 15 19:26:06 2018: -> ----------------------------------------
Mon Oct 15 19:26:07 2018: -> ----------------------------------------
Mon Oct 15 19:26:07 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_KiZ_Roll
Mon Oct 15 19:26:07 2018: -> ----------------------------------------
Mon Oct 15 19:26:08 2018: -> ----------------------------------------
Mon Oct 15 19:26:08 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_SZ_Roll_Hof
Mon Oct 15 19:26:08 2018: -> ----------------------------------------
Mon Oct 15 19:26:08 2018: -> ----------------------------------------
Mon Oct 15 19:26:08 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_SZ_Roll_Alle
Mon Oct 15 19:26:08 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> meinWetter
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Wetterbedingungen_fuer_Abschattung
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> man_log_FileLog_meinWetter
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Wetter_fuer_Abschattung
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_SZ_Roll_Strasse
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:09 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_SZ_Roll_Alle
Mon Oct 15 19:26:09 2018: -> ----------------------------------------
Mon Oct 15 19:26:10 2018: -> ----------------------------------------
Mon Oct 15 19:26:10 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Balkon
Mon Oct 15 19:26:10 2018: -> ----------------------------------------
Mon Oct 15 19:26:10 2018: -> ----------------------------------------
Mon Oct 15 19:26:10 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Alle
Mon Oct 15 19:26:10 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Garten
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Alle
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:11 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Alle_o_Balkon
Mon Oct 15 19:26:11 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Hof
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Alle
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:12 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Roll_Alle_o_Balkon
Mon Oct 15 19:26:12 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Hof
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Alle
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Hof
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Alle
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Hof
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_SZ_Roll_Alle
Mon Oct 15 19:26:22 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:24 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:26:24 2018: -> ----------------------------------------
Mon Oct 15 19:26:55 2018: -> ----------------------------------------
Mon Oct 15 19:26:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> 5_aktUhrzeit
Mon Oct 15 19:26:55 2018: -> ----------------------------------------
Mon Oct 15 19:26:55 2018: -> ----------------------------------------
Mon Oct 15 19:26:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Time_Timer
Mon Oct 15 19:26:55 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> mailcheck
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_dew_point
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_humidness
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_israining
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_temperature
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_winddirection
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_winddirectionrange
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:26:58 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_windspeed
Mon Oct 15 19:26:58 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof_Clima
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:04 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof_Weather
Mon Oct 15 19:27:04 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Hof
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:21 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Hof
Mon Oct 15 19:27:21 2018: -> ----------------------------------------
Mon Oct 15 19:27:22 2018: -> ----------------------------------------
Mon Oct 15 19:27:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Hof
Mon Oct 15 19:27:22 2018: -> ----------------------------------------
Mon Oct 15 19:27:22 2018: -> ----------------------------------------
Mon Oct 15 19:27:22 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:27:22 2018: -> ----------------------------------------
Mon Oct 15 19:27:35 2018: -> ----------------------------------------
Mon Oct 15 19:27:35 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Hof
Mon Oct 15 19:27:35 2018: -> ----------------------------------------
Mon Oct 15 19:27:35 2018: -> ----------------------------------------
Mon Oct 15 19:27:35 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:27:35 2018: -> ----------------------------------------
Mon Oct 15 19:27:38 2018: -> ----------------------------------------
Mon Oct 15 19:27:38 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> global
Mon Oct 15 19:27:38 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Garten
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:41 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> EG_WZ_Roll_Alle
Mon Oct 15 19:27:41 2018: -> ----------------------------------------
Mon Oct 15 19:27:55 2018: -> ----------------------------------------
Mon Oct 15 19:27:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> 5_aktUhrzeit
Mon Oct 15 19:27:55 2018: -> ----------------------------------------
Mon Oct 15 19:27:55 2018: -> ----------------------------------------
Mon Oct 15 19:27:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Time_Timer
Mon Oct 15 19:27:55 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Clima
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Weather
Mon Oct 15 19:28:15 2018: -> ----------------------------------------
Mon Oct 15 19:28:55 2018: -> ----------------------------------------
Mon Oct 15 19:28:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> 5_aktUhrzeit
Mon Oct 15 19:28:55 2018: -> ----------------------------------------
Mon Oct 15 19:28:55 2018: -> ----------------------------------------
Mon Oct 15 19:28:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Time_Timer
Mon Oct 15 19:28:55 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> mailcheck
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_dew_point
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_humidness
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_israining
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_temperature
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_winddirection
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_winddirectionrange
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_windspeed
Mon Oct 15 19:29:02 2018: -> ----------------------------------------
Mon Oct 15 19:29:55 2018: -> ----------------------------------------
Mon Oct 15 19:29:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> 5_aktUhrzeit
Mon Oct 15 19:29:55 2018: -> ----------------------------------------
Mon Oct 15 19:29:55 2018: -> ----------------------------------------
Mon Oct 15 19:29:55 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> Time_Timer
Mon Oct 15 19:29:55 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof_Clima
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:02 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_WZ_Hzg_Hof_Weather
Mon Oct 15 19:30:02 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Clima
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:15 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> OG_Buero_Hzg_Weather
Mon Oct 15 19:30:15 2018: -> ----------------------------------------
Mon Oct 15 19:30:54 2018: -> ----------------------------------------
Mon Oct 15 19:30:54 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> myLocation
Mon Oct 15 19:30:54 2018: -> ----------------------------------------

affected devices: FreeCmd

   
MSwitch 'cmd1': set Rolladen_Aktionen 10
MSwitch 'cmd2': set Rolladen_Aktionen 20

'cmd1' condition: [00:00-00:02]
'cmd2' condition: [00:02-{ sunrise("-1") }] AND [Rolladen_Aktionen:state] < 20

Rolladen_Aktionen ist ein Dummy


Leider steht der Wert des Dummy immer auf (von mir testhalber manuell gesetzten) 101


Ich hoffe Du kannst mir schreiben was ich da falsch gemacht habe.

Ich werde nachher versuchen auf die neue Version upzudaten, dann kann ich ja auch noch mehr Info's zur Verfügung stellen wenn Du die brauchst.

Danke und viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Oktober 2018, 20:04:58
Hi Bäschdler,

in erster linie triggerst du 'global' , d.H jedes event löst hier das MSwitch device aus , scheinbar ohne jeden Filter.
inaller regel ist das nicht notwendig und ergiebt eine wirklich spürbare systemlast.

kannst du mir bitte nochmal sagen , was du überhaupt erreichen willst , was soll der auslöser sein , um das MSwitch auszulösen .

in jetziger konfiguration löstt ja keines der eingehenden Events wirklich den schaltvorgang aus.

un poste doch bitte die ausgabe von get DEVICE get_support_site mit, nur da kann ich wirklich sehen , was du eigentlich konfiguriert hat.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 15 Oktober 2018, 20:22:42
Hallo Byte09,

ich möchte mit diesem MSwitch den Tag über bei Eintritt von bestimmten Bedingungen (vor Sonnenaufgang, x Minuten nach Sonnenaufgang, Helligkeit über y, Azimuth grösser Z1, Azimuth grösser Z2, x Minuten vor Sonnenuntergang, Helligkeit unter y, ...) einen Dummy "hochzählen" (und damit quasi eine Schrittkette aufbauen). In Abhängigkeit von diesem Dummywert soll dann mit je einem weiteren MSwitch je Rolladen dieser gesteuert werden. In diesem MSwitch wird dann (sinngemäß) drin stehen Rolladen_Ablaufsteuerung > 100 set Rolladen 0, Rolladen_Abaufsteuerung > 200 AND Raumtemperatur > 21 set Rolladen 60, ...

Ach ja, die whitelist hatte ich vergessen und habe sie jetzt eingetragen. Danke für den Hinweis

Welches Attribut muss ich denn setzen, dass die Sortierung dann auswählbar ist ?

hier die DAten von Support_Site:
Zitat
Modulversion: 2.02a_Test
Datenstruktur: V2.00

----- Devicename -----
Rolladen_Ablaufsteuerung

----- Attribute -----
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Mode: Full
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 3
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Comments: 1
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 1

----- Trigger -----
Trigger device:  all_events
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: Rolladen_Aktionen,

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: cmd set Rolladen_Aktionen 10
cmd2: cmd set Rolladen_Aktionen 20
cmd1 condition: [00:00-00:02]
cmd2 condition: [00:02-{ sunrise("-1") }] AND [Rolladen_Aktionen:state] < 20
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 15 Oktober 2018, 20:31:11
Mir ist eben aufgefallen, dass die whitelist die ich mit "Rolladen_Aktionen, sunrise, sunset, dy_Wetterstation_Stefan_brightness, myLocation" ausfülle irgendwie immer nur "Rolladen_Aktionen, " enthält.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Oktober 2018, 05:24:51
Zitat von: Bäschdler am 15 Oktober 2018, 20:22:42
Hallo Byte09,

ich möchte mit diesem MSwitch den Tag über bei Eintritt von bestimmten Bedingungen (vor Sonnenaufgang, x Minuten nach Sonnenaufgang, Helligkeit über y, Azimuth grösser Z1, Azimuth grösser Z2, x Minuten vor Sonnenuntergang, Helligkeit unter y, ...) einen Dummy "hochzählen" (und damit quasi eine Schrittkette aufbauen). In Abhängigkeit von diesem Dummywert soll dann mit je einem weiteren MSwitch je Rolladen dieser gesteuert werden. In diesem MSwitch wird dann (sinngemäß) drin stehen Rolladen_Ablaufsteuerung > 100 set Rolladen 0, Rolladen_Abaufsteuerung > 200 AND Raumtemperatur > 21 set Rolladen 60, ...

Ach ja, die whitelist hatte ich vergessen und habe sie jetzt eingetragen. Danke für den Hinweis

Welches Attribut muss ich denn setzen, dass die Sortierung dann auswählbar ist ?

hier die DAten von Support_Site:

moin,

so wie du das mswitchkonfiguriert hast , kann es nicht funktionieren , unabhängig davon, was in den affected devices und den zugehörigen conditions steht. das mswitch lauscht zwar auf alle events 'global', aber es ist nichts konfiguriert, was einen zweig des mswitches dann wirklich auslösen soll :
----- Trigger -----
Trigger device:  all_events
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: Rolladen_Aktionen,

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger


diese Teile cmd1: cmd set Rolladen_Aktionen 10
cmd2: cmd set Rolladen_Aktionen 20
cmd1 condition: [00:00-00:02]
cmd2 condition: [00:02-{ sunrise("-1") }] AND [Rolladen_Aktionen:state] < 20


besagen ledigleich , dass Rolladen_Aktionen auf 10 gesetzt wird, wenn cmd1 ausgelöst ist und es zwischen 00 Uhr und 00 Uhr 02 ist, bzw , dass Rolladen_Aktionen auf 20 gesetzt wird, wenn es cmd2 ausgelöst wird und es zwischen 00 uhr 02 und 7 uhr 14 ( zumindest heute ) ist und Rolladen_Aktionen kleiner als 20 ist . Aber eben die Auslöser für cmd1 und/oder cmd2 sind nicht konfiguriert :

Trigger cmd1: no_trigger
Trigger cmd2: no_trigger

auch das lauschen auf alle events macht nicht wirklich sinn , sondern hier solltest du wirklich nur auf das gerät 'hören', dessen ausgabe wirklich das auslösen des mswitches veranlassen soll.

das triggern auf alle events macht wirklich nur in ganz wenigen ausnahmefällen sinn und dann sollte es über die whitelist oder entsprechendes attribut (MSwitch_trigger_filter) weiter eingegrenzt werden , sonst belastet es das system wirklich völlig unnötig und spürbar. ( in deinem debugfile werden in 4 Minuten über 115 events in irgendeiner form vom modul ausgewertet )

alternativ dazu kannst du das mswitch zu bestimmten zeiten auslösen , um mit vorhandenen readings aus sunset, twilight etc. zu arbeiten , dann brauchst du aber gar kein gerät angeben , das als trigger dient.

es muss ein oder mehrere events eingestellt werden , die den entsprechenden zweig (cmd1-4) auslösen sollen, erst dann kannst du dich damit beschäftigen , was in den eigentlichen cmds dann passieren soll.

ps: in den Hilfefeldern ist doch zu jedem Eingabefeld erklärt, was dort hinein muss - und entsprechendes Format. Weiterhin wäre es ratsam , gerade wenn du global triggerst , das MSwitch in den Safemode zu schalten ( attr MSwitch_Safemode = 1 ) , hier besteht sonst immer die gefahr, das sich bei fehlerhafter konfiguration das MSwitch selber triggert und ruckzuck befindet es sich in einer endlosschleife = fhemabsturz = Fhemneustart erforderlich = doof . Im Safemode kann das nicht passieren , da hier nur eine gewisse anzahl anfragen in einem best. zeitraum zugelassen wird. wird diese überschritten schaltet sich das Mswitch auf disabled = 1 und eine vermutete endlosschleife wird unterbrochen.

Auch hast du das MSwitch in den Expertmodus geschaltet.Attribut MSwitch_Expert: 1 Wenn nicht zwingender Bedarf besteht solltest du das vermeiden. Zum einen sind im Normalmode schon ain grosser Teil an Fehlerquellen ausgeschlossen ( da nicht einstellbar ) und die internen Abläufe sind deutlich abgespeckt - d.H das device benötigt deutlich weniger verarbeitungszeit. Den Expertenmode brauchst du auch im Grunde nur in Ausnahmefällen. Selbst bei mir laufen von weit über 40 MSwitches nur eine Handvoll im Expertenmodus ( bei denen entsprechende Funktionen halt unverzichtbar sind ).

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Oktober 2018, 17:21:43
Zitat von: Bäschdler am 15 Oktober 2018, 20:31:11
Mir ist eben aufgefallen, dass die whitelist die ich mit "Rolladen_Aktionen, sunrise, sunset, dy_Wetterstation_Stefan_brightness, myLocation" ausfülle irgendwie immer nur "Rolladen_Aktionen, " enthält.

trennung der namen nur durch komma. Leerzeichen dürfen nicht enthalten sein !

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 17 Oktober 2018, 22:22:07
Hi Byte09,

jetzt habe ich den MSwitch umgebaut. Ich habe jetzt nur noch Zeiten, die brightness und den Rolladen_Aktionen drin.

Im Device: FreeCmd-AbsCmd2 bekomme ich die Anzeige, dass die Bedingung wahr ist und ausgeführt wird, aber der set wird nicht ausgeführt.

Nochmals zur Verdeutlichung was ich haben möchte:
- bei Device: FreeCmd-AbsCmd1 soll der Dummy Rolladen_Aktionen nur abhängig von der Zeit (und bei cmd2 auch vom state des Dummy Rolladen_Aktionen) auf 10 bzw. 20 gesetzt werden.
- bei Device: FreeCmd-AbsCmd2 soll der Dummy Rolladen_Aktionen abhängig von brightness und state des Dummy Rolladen_Aktionen auf 520 bzw. 530 gesetzt werden.

Ich habe mit das so vorgestellt, dass ich je cmd1 / cmd2 Pfad in jedem Device FreeCmd im Prinzip einen vom anderen total unabhängigen Befehl eingeben kann. Das eine Mal nur abhängig von einer Zeit, das andere Mal nur abhängig von einem Reading (in diesem Fall brightness) und wieder ein anderes Mal abhängig von einer Kombination von 2 oder 3 Bedingungen.

Irgendwie stehe ich hier wohl auf dem Schlauch...

Viele Grüsse
Bäschdler



Hier der check condition von Device: FreeCmd-AbsCmd2:
Zitat
eingehender String:
[dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520

If Anweisung Perl:
if (ReadingsVal('dy_Wetterstation_Stefan_brightness', 'state', '00:00:00') < 60 && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 520){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [Rolladen_Aktionen:state] - Inhalt: 102
Reading: [dy_Wetterstation_Stefan_brightness:state] - Inhalt: 0
Das zugehörige MSwich cmd1 ist "set Rolladen_Aktionen 520". Da würde ich jetzt erwarten, dass der Dummy auf 520 gesetzt wird. er bleibt aber dauerhaft auf (manuell von mir irgendwann mal gesetzten) 102.

Und hier der get_support_site
Zitat
Modulversion: 2.02a_Test
Datenstruktur: V2.00

----- Devicename -----
Rolladen_Ablaufsteuerung

----- Attribute -----
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Mode: Full
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Comments: 1
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 0

----- Trigger -----
Trigger device:  dy_Wetterstation_Stefan_brightness
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: *:state: > 60
Trigger cmd2: *:state: < 60
Trigger cmd3: *:state:*
Trigger cmd4: *:state:*

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: cmd set Rolladen_Aktionen 10
cmd2: cmd set Rolladen_Aktionen 20
cmd1 condition: [00:00-00:02]
cmd2 condition: [00:02-{ sunrise("-1") }] AND [Rolladen_Aktionen:state] < 20
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd2
cmd1: cmd set Rolladen_Aktionen 520
cmd2: cmd set Rolladen_Aktionen 530
cmd1 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd3
cmd1: cmd set Rolladen_Aktionen 540
cmd2: cmd set Rolladen_Aktionen 550
cmd1 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 540
cmd2 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 550
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd4
cmd1: cmd set Rolladen_Aktionen 560
cmd2: cmd set Rolladen_Aktionen 570
cmd1 condition: [{ sunset(0,"17:00","21:30") }-{ sunset("+60") }] AND [Rolladen_Aktionen:state] < 560
cmd2 condition: [{ sunset(0,"17:00","21:30") }-23:59] AND [Rolladen_Aktionen:state] < 570
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd5
cmd1: cmd set Rolladen_Aktionen 30
cmd2: cmd set Rolladen_Aktionen 40
cmd1 condition: [{ sunrise(0,"05:00","08:30") }-{ sunrise("+60") }] AND [Rolladen_Aktionen:state] < 30
cmd2 condition: [{ sunrise(0,"05:00","08:30") }-{ sunrise("+60") }] AND [Rolladen_Aktionen:state] < 40
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd6
cmd1: cmd set Rolladen_Aktionen 50
cmd2: cmd set Rolladen_Aktionen 60
cmd1 condition: [dy_Wetterstation_Stefan_brightness:state] > 60 AND [Rolladen_Aktionen:state] < 50
cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] > 60 AND [Rolladen_Aktionen:state] < 50
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd7
cmd1: cmd set Rolladen_Aktionen 70
cmd2: cmd set Rolladen_Aktionen 80
cmd1 condition: [{ sunrise(2700,"05:00","08:30") }-{ sunrise("+2820") }] AND [Rolladen_Aktionen:state] < 70
cmd2 condition: [{ sunrise(2700,"05:00","08:30") }-{ sunrise("+2820") }] AND [Rolladen_Aktionen:state] < 70
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd8
cmd1: cmd set Rolladen_Aktionen 110
cmd2: cmd set Rolladen_Aktionen 100
cmd1 condition: [08:17-13:44] AND [Rolladen_Aktionen:state] < 110
cmd2 condition: [08:15-08:17] AND [Rolladen_Aktionen:state] < 100
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd9
cmd1: cmd set Rolladen_Aktionen 210
cmd2: cmd set Rolladen_Aktionen 200
cmd1 condition: [13:47-13:59] AND  [Rolladen_Aktionen:state] < 210
cmd2 condition: [13:45-13:47] AND [Rolladen_Aktionen:state] < 200
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd10
cmd1: cmd set Rolladen_Aktionen 250
cmd2: cmd set Rolladen_Aktionen 240
cmd1 condition: [14:02-17:29] AND [Rolladen_Aktionen:state] < 250
cmd2 condition: [14:00-14:02] AND [Rolladen_Aktionen:state] < 240
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd11
cmd1: cmd set Rolladen_Aktionen 270
cmd2: cmd set Rolladen_Aktionen 260
cmd1 condition: [17:30-{ sunset("-1") }] AND [Rolladen_Aktionen:state] < 270
cmd2 condition: [17:30-17:32] AND [Rolladen_Aktionen:state] < 260
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd12
cmd1: cmd set Rolladen_Aktionen 500
cmd2: cmd set Rolladen_Aktionen 510
cmd1 condition: [{ sunset(-2700,"17:00","21:30") }-{ sunset("-2580") }] AND [Rolladen_Aktionen:state] < 500
cmd2 condition: [{ sunset(-2700,"17:00","21:30") }-{ sunset("-2580") }] AND [Rolladen_Aktionen:state] < 510
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Oktober 2018, 05:51:46
ok, da liegt einiges im argen .

zum ersten die trigger :
Trigger cmd1: *:state: > 60
Trigger cmd2: *:state: < 60
Trigger cmd3: *:state:*
Trigger cmd4: *:state:*


cmd3 und cmd4 sind ok , d.h diese beiden zweige werden ausgeführt , sobald sich der state des devices ändert - egal welchen wert state annimmt.

cmd1 und cmd2 werde niemals auslösen ( müssen sie aber auch nicht  ) . in den zweigen 1 und 2 schaltet der state des mswitches zusätzlich auf on oder off, wird in deinem fall aber nicht benötigt . Daher dürfen 1 und 2 auch nicht mit dem gleichen string belegt sein , da hier eine klare abgrenzung zwischen on und off vorhanden sein muss.
Auslösen würde es nur dann ,wenn ein event eintrefffen würde, welches wirklich so aussieht "state: < 60" , ankommen wird aber "state:60(59,58,etc) " . Hier wird kein mathematischer "vergleich" durchgeführt, sondern ein reiner vergleich der strings . Lösbar wäre das nur über regex.

aber da du diese zweige eh nicht benötigst , setze 1 und 2 einfach auf 'no_trigger' ( du kanns das ganze mswitch auch in den Notify-Mode setzen - über attribut -, dann sind sie eh nicht mehr aufgeführt und können hier nicht mehr zur verwirrung beitragen).

zu den affected devices:

auch hier gibt es probleme mit einer eindeutigen definition:

angenommen das ankommende event ist 'state:59' , so werden beide zweige ausgefügrt, weil für beide zweige der auslöser 'state:*' ist.

bei dieser definition : (1)
Device: FreeCmd-AbsCmd2
cmd1: cmd set Rolladen_Aktionen 520
cmd2: cmd set Rolladen_Aktionen 530
cmd1 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00


werden beide befehle ausgeführt , weil die bedingungen BEIDE zutreffen ,d.h wenn Rolladen_Aktionen:state < 520 ist , wird das endergebniss in jedem fall nach 2 min 530 annehmen .... ( theroretisch, ... weill ja das zweite,dritte,...  affected device ggf. auch greift )

Device: FreeCmd-AbsCmd3
cmd1: cmd set Rolladen_Aktionen 540
cmd2: cmd set Rolladen_Aktionen 550
cmd1 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 540
cmd2 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 550


.... dieses erfüllt unter umständein die Bedingung nämlich auch und würde auf in jedem fall auf 550 schalten . 540 können hier nie erreicht werden , da die erste bedingung zutrifff und auf 540 geschaltet würde, aber die zweite trifft ebenso zu und es geht gleich weiter nach 550 .

...... und dann 2 min später schlägt das delay aus dem ersten 'affected zu ' und setzt wieder zurück nach 520 do diese bedingung :cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520  vor 2 minuten nämlich zutraf !

ich kann die hier gar nicht wirklich helfen. du musst schritt für schrittt logisch durchgehen , was passiert , wenn welches event kommt ( ggf. sogar anhand eines diagrammes )  und dabei nicht vergessen: wenn eine bedingung erfüllt ist , bricht er nicht ab , d.h er testet auch alle anderen 'affected devices' noch und führt diese aus , wenn es passt , es sei denn du gibst explizit an , dass er nach einem befehl abbrechen soll ).

weiterhin wichtig: die befehle werden blockweise ausgeführt ! d.h es wird nicht 'affected_device1' geprüft und ausgeführt , und dann  affected_device 2 etc, sondern es werde erst alle affected devices geprüft und danach der oder die entsprechenden befehle abgesetzt . das ist nicht ganz unwesentlich , da sich eine bedingung somit während der prüfung nicht ändert, auch wenn diese zutrifft und er den befehl ausführen sollte und unter umständen damit die bedingung ändern würde - ich weise daher darauf hin , da sich bei dir ja eine bedingung nach prüfung des ersten devices ändern würde , und im zweiten device dann anders wäre. tut sie aber nicht - sie hat immer den wert, den sie hat , wenn das mswitch auslöst .
( einzige ausnahme ist hier zeitversetztes schalten ( delay ) da kannst du explizit angeben , ob er unmittelbar vor dem schalte nochmals prüfen soll )
gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 18 Oktober 2018, 09:11:37
Guten Morgen,

danke für die ausführliche Antwort.
Anscheinend müsste ja jetzt das was ich programmiert habe eigentlich wenigstens ein bisschen funktionieren ;-)

Zitat
bei dieser definition : (1)
Code: [Auswählen]

Device: FreeCmd-AbsCmd2
cmd1: cmd set Rolladen_Aktionen 520
cmd2: cmd set Rolladen_Aktionen 530
cmd1 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520
cmd1 delay: 00:00:00
cmd2 delay: 00:02:00


werden beide befehle ausgeführt , weil die bedingungen BEIDE zutreffen ,d.h wenn Rolladen_Aktionen:state < 520 ist , wird das endergebniss in jedem fall nach 2 min 530 annehmen .... ( theroretisch, ... weill ja das zweite,dritte,...  affected device ggf. auch greift )
Genau das hatte ich so beabsichtigt, dass beide getriggert werden, das eine (520) für 2 Minuten bleibt und dann das nächste (530) geschaltet wird.

Zitat
Code: [Auswählen]

Device: FreeCmd-AbsCmd3
cmd1: cmd set Rolladen_Aktionen 540
cmd2: cmd set Rolladen_Aktionen 550
cmd1 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 540
cmd2 condition: [{ sunset(-900,"17:00","21:30") }-{ sunset("-780") }] AND [Rolladen_Aktionen:state] < 550



.... dieses erfüllt unter umständein die Bedingung nämlich auch und würde auf in jedem fall auf 550 schalten . 540 können hier nie erreicht werden , da die erste bedingung zutrifff und auf 540 geschaltet würde, aber die zweite trifft ebenso zu und es geht gleich weiter nach 550 .
Auch das hatte ich so beabsichtigt, denn wenn das nachfolgende "überholt" soll das "höhere" gesetzt werden.

Zitat
...... und dann 2 min später schlägt das delay aus dem ersten 'affected zu ' und setzt wieder zurück nach 520 do diese bedingung :
Code: [Auswählen]

cmd2 condition: [dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520

  vor 2 minuten nämlich zutraf !
Das sollte eigentlich nicht passieren, daher habe ich es (hoffentlich) so eingestellt, dass die condition erst nach 2 Minuten geprüft werden soll und dann verhindert ja der "AND [Rolladen_Aktionen:state] < 520" was wahr werden der Bedigung, da er höher als 520 ist.

Zitat
und dabei nicht vergessen: wenn eine bedingung erfüllt ist , bricht er nicht ab , d.h er testet auch alle anderen 'affected devices' noch und führt diese aus , wenn es passt
Genau so habe ich meine Logik aufgebaut und möchte ja bewusst, dass ein "höherer" Wert gesetzt wird wenn mehrere Dinge gleichzeitig zutreffen. Die weitere Logik die dann den Rolladen steuert hat dann als condition ein "[Rolladen_Aktionen:state] > x".

Zitat
weiterhin wichtig: die befehle werden blockweise ausgeführt ! d.h es wird nicht 'affected_device1' geprüft und ausgeführt , und dann  affected_device 2 etc,
Da ich im Augenblick nur ein affected device habe (den dummy "Rolladen_Aktionen") kann da auch nix passieren.


Jetzt bleibt für mich aber noch immer die Frage offen weshalb bei
Zitat
eingehender String:
[dy_Wetterstation_Stefan_brightness:state] < 60 AND [Rolladen_Aktionen:state] < 520

If Anweisung Perl:
if (ReadingsVal('dy_Wetterstation_Stefan_brightness', 'state', '00:00:00') < 60 && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 520){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [Rolladen_Aktionen:state] - Inhalt: 102
Reading: [dy_Wetterstation_Stefan_brightness:state] - Inhalt: 0
und
Zitat
cmd1 ist "set Rolladen_Aktionen 520"
der Dummy nicht auf 520 gesetzt wird.

Wenn ich es mal schaffen würde, dass der MSwitch hier wenigstens mal überhaupt irgend einen Wert setzen würde dann wäre ich an dem Punkt an dem ich nachschauen könnte was ich falsch gemacht habe aber so tappe ich leider total im dunkeln und weiss nicht was ich ändern muss.


Danke und viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Oktober 2018, 09:46:02
Bitte das Device nochmal auf debug 3 setzen , eine Auslösung veranlassen und den gesamten log hier einstellen . Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 18 Oktober 2018, 12:31:47
Hallo Byte09,

hier das Log
Zitat
Thu Oct 18 10:25:15 2018 Starte Log
Thu Oct 18 10:26:46 2018: -> ----------------------------------------
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Thu Oct 18 10:26:46 2018: -> ----------------------------------------
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event  -> dy_Wetterstation_Stefan_brightness state: 199
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: anzahl gefundener Befehle -> 0
Thu Oct 18 10:26:46 2018: -> Rolladen_Ablaufsteuerung: inhalt gefundener Befehle ->
Thu Oct 18 10:29:34 2018: -> ----------------------------------------
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Thu Oct 18 10:29:34 2018: -> ----------------------------------------
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event  -> dy_Wetterstation_Stefan_brightness state: 199
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: anzahl gefundener Befehle -> 0
Thu Oct 18 10:29:34 2018: -> Rolladen_Ablaufsteuerung: inhalt gefundener Befehle ->
Thu Oct 18 10:32:07 2018: -> ----------------------------------------
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Thu Oct 18 10:32:07 2018: -> ----------------------------------------
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event  -> dy_Wetterstation_Stefan_brightness state: 197
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: anzahl gefundener Befehle -> 0
Thu Oct 18 10:32:07 2018: -> Rolladen_Ablaufsteuerung: inhalt gefundener Befehle ->
Thu Oct 18 10:34:26 2018: -> ----------------------------------------
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event von -> dy_Wetterstation_Stefan_brightness
Thu Oct 18 10:34:26 2018: -> ----------------------------------------
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: eingehendes Event  -> dy_Wetterstation_Stefan_brightness state: 196
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: checktrigger trigger cmd4 ->
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: checktrigger ergebniss -> undef
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: anzahl gefundener Befehle -> 0
Thu Oct 18 10:34:26 2018: -> Rolladen_Ablaufsteuerung: inhalt gefundener Befehle ->
so ging's bis 12:25 weiter - ich habe es uns erspart alles hier rein zu kopieren.

Aktuell müsste der Dummy auf 110 gesetzt werden. Check condition:
Zitat
eingehender String:
[08:17-13:44] AND [Rolladen_Aktionen:state] < 110

If Anweisung Perl:
if ((1516259820 < 1516274820 && 1516274820 < 1516279440) && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 110){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if ((08:17 < 12:27 && 12:27 < 13:44) && ReadingsVal('Rolladen_Aktionen', 'state', '00:00:00') < 110){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [Rolladen_Aktionen:state] - Inhalt: 102

Der Teil des FreeCmd's:
Zitat
Device: FreeCmd-AbsCmd8
cmd1: cmd set Rolladen_Aktionen 110
cmd2: cmd set Rolladen_Aktionen 100
cmd1 condition: [08:17-13:44] AND [Rolladen_Aktionen:state] < 110
cmd2 condition: [08:15-08:17] AND [Rolladen_Aktionen:state] < 100
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Viele Grüsse
Bäschdler
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Oktober 2018, 13:34:31
Ok thx. Ich werde da aber nicht richtig schlau draus ... am Handy schon gar nicht. Würdest du mir nochmal die raw definition oder den config file geben ?

Ich spiele es dann bei mir mal ein ... mit Dummys ... und schaue es mir genau sn heute abend.


Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Oktober 2018, 15:12:57
hi bäschdler ,

ich habe gerade am laptop erst gesehen , dass du den trigger von 'global' umgestellt hast auf ein einzeldevice .

in diesem Fall sehen die ankommenden Events anders aus und du musst das anpassen, da kein gerätename mitgeliefert wird.

Ändere mal die beiden trigger von
.*:state:.*
nach
state:.*

das ist noch ein ( ätzendes ) überbleibsel aus einer ganz alten version des moduls ( damals noch 98_absent.pm ) und ich habe mich nie getraut das zu ändern, da das im grunde allle bestehenden konfugurationen betreffen würde .

auszug Helpbutton:
ZitatHier können manuell Events zugefügt werden , die in den Auswahllisten verfügbar sein sollen und auf die das Modul reagiert.
Grundsätzlich ist zu unterscheiden , ob das Device im Normal-, oder Globalmode betrieben wird
Im Normalmode bestehen die Events aus 2 Teilen , dem Reading und dem Wert "state:on"
Wenn sich das Device im GLOBAL Mode befindet müssen die Events aus 3 Teilen bestehen , dem Devicename, dem Reading und dem Wert "device:state:on".
Wird hier nur ein "*" angegeben , reagiert der entsprechende Zweig auf alle eingehenden Events.
Weitherhin sind folgende Syntaxmöglichkeiten vorgesehen :
device:state:*, device:*:*, *:state:* , etc.
Der Wert kann mehrere Auswahlmöglichkeiten haben , durch folgende Syntax: "device:state:(on/off)". In diesem Fal reagiert der Zweig sowohl auf den Wert on, als auch auf off.

auszug wiki:
Zitathier besteht die Möglichkeit, unabhängig von der Option, ankommende Events automatisch zu speichern, manuell Events anzulegen, die in den Dropdownliste zur Auswahl angeboten werden, ohne das entsprechendes Event erst vom Device geliefert werden muss.
Es können mehrere Events gleichzeitig eingegeben werden, eine Trennung erfolgt durch " , "
Hier ist zu unterscheiden, ob das gewählte triggernde Device ein einfaches Device ist oder ob der Trigger 'GLOBAL' ist.
Bei triggernden Devices können Events in folgendem Formaten zugefügt werden:

- * - Aktion erfolgt auf alle auftretende Events des entsprechenden Device
- reading:wert (z.b. state:on ) - Aktion erfolgt nur auf das Event "state:on"
- reading:* (z.b. state:* ) - Aktion erfolgt auf die Events "state:(on,off,etc.)
- reading:(wert1/wert2/wert3) (z.b. state:(left/right) - Aktion erfolgt nur auf Events "state:left" oder "state:right" etc.

Falls auf 'GLOBALE' Events getriggert wird, muss das auslösende Device vorangestellt werden:

- * - Aktion erfolgt auf alle auftretende Events des entsprechenden Device
- device:reading:wert (z.b. device:state:on ) - Aktion erfolgt nur auf das Event "device:state:on"
- device:reading:* (z.b. device:state:* ) - Aktion erfolgt auf die Events "device:state:(on,off,etc.)
- device:reading:(wert1/wert2/wert3) (z.b. device:state:(left/right) - Aktion erfolgt nur auf Events "device:state:left" oder "devicestate:right" etc.


zugegeben , das ist nicht wirklich schön - dieser unterschied . ggf. traue ich mich da irgendwann mal ran.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 18 Oktober 2018, 17:41:23
HEUREKA !!!

Ich habe wie du mir geschrieben hast den Trigger geändert und es hat funktioniert. :-)

Der Dummy steht auf 270.


Jetzt kann ich schauen ob der Ablauf wirklich so tut wie ich geplant hatte ;-)


DANKE für die Hilfe !!!!
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Oktober 2018, 17:46:01
Zitat von: Bäschdler am 18 Oktober 2018, 17:41:23
HEUREKA !!!

Ich habe wie du mir geschrieben hast den Trigger geändert und es hat funktioniert. :-)

Der Dummy steht auf 270.


Jetzt kann ich schauen ob der Ablauf wirklich so tut wie ich geplant hatte ;-)



DANKE für die Hilfe !!!!

ok ,wenn es nachwievor probleme gibt melde dich einfach.

ps: editiere doch bitte den vorherigen beitrag un nimm die raw raus , ich brauche sie dann nicht und sie ist eh irgendwie 'zerrissen'  ;)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 Oktober 2018, 09:46:58
aktualisierte Testversion im GIT vorhanden.

wer mit der Testversion arbeitet sollte diese bitte entsprechend updaten ( siehe post 1 des threads )

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Bäschdler am 21 Oktober 2018, 17:27:15
Hallo Byte09,

ich verstehe gerade nicht warum folgendes passiert:
Der MSwitch hat bei einem FreeCmd quasi dieselbe condition. Der Plan wäre, dass der Dummy auf 240 gesetzt wird und dann nach 2 Minuten auf 250 gesetzt wird. Die 250 erreicht er aber nie (auch bei den anderen FreeCmd's die so aufgebaut sind nicht), sondern immer dann erst den nächsten Wert des nächsten FreeCmd's. Wenn ich get active timer mache kommt
Zitat
aktive Delays:
2018-10-21 17:21:33   set Rolladen_Aktionen 250
Da steht aber jedesmal der Zeitpunkt in 2 Minuten drin. Der MSwitch startet also jedesmal (er wird jede Minute getriggert) den Timer neu. Bei der Einstellung "condition check immediately only" hätte ich gedacht wird der Timer einmal getriggert, läuft dann im Hintergrund und führt dann nach der eingestellten Zeit das command aus.
Denke ich da falsch?

Danke und Grüsse
Bäschdler


Hier ein Beispielhafter Auszug eines FreeCmd:
Zitat
Device: FreeCmd-AbsCmd10
cmd1: cmd set Rolladen_Aktionen 250
cmd2: cmd set Rolladen_Aktionen 240
cmd1 condition: [myLocation:azimuth] > 230 AND [myLocation:azimuth] < 245 AND  [Rolladen_Aktionen:state] < 250
cmd2 condition: [myLocation:azimuth] > 230 AND [myLocation:azimuth] < 245 AND [Rolladen_Aktionen:state] < 240
cmd1 delay: 00:02:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 Oktober 2018, 19:20:43
hi Bäschdler.

ich gehe mal davon aus, das es sich u das gleiche device vom letzten mal handelt ?

wenn dem so ist , werden alle delays glöscht, wenn ein neues (passendes) event 'hereinkommt':
Attribut MSwitch_Delete_Delays: 1

.... ändere das mal auf '0'.

ZitatMSwitch_Delete_Delays (0:1)

Bewirkt das Löschen aller anstehende Timer (Delays) bei dem Auftreten eines erneuten, passenden Events. Bei der Option '0' bleiben bereits gesetzte Delays aus einem vorherigen, getriggertem Event erhalten und werden ausgeführt.
Empfohlene Einstellung (1)


ausserdem musst du dir über die reihenfolge der abarbeitung bewusst sein , ich weiss aber nicht , ob das bei deinem device eine rolle spielt.

wenn ein und das selbe event cmd1 und cmd2 auslöst, ist die reihenfolge der abarbeitung der befehle nicht :

AD ( affected defice ) cmd1
AD cmd2
AD1 cmd1
AD1 cmd2
etc.

sondern:

AD cmd2
AD1 cmd2
AD2 cmd2
AD cmd1
AD1 cmd1
AD2 cmd1

dabei können natürlich gehörige unterschiede ( besonders in einem solchen Konstrukt ) im ergebniss entstehen.
Da du es im grunde zweckentfremdest , imdem du immer beide zweige auslöst , emfehle ich das entsprechend zu ändern , d.H nur einen zweig auslösen und alle Schaltvorgändge in diesen zweig in verschiedene ADs zu packen ,
bei dem was du erreichen willst wäre es ggf. sogar das beste , nur ein AD anzulegen , dieses im PERLmode auszuführen '{}' und die unterscheidung dort - in diesem einen affected device - zu machen und auch von dort aus den schaltbefehl abzusetzen . Das ist leztendlich viel schneller für das Modul abzuarbeiten , und  im Grunde viel einfacher in der Handhabung , da du nie die Kontrolle über die Reihenfolge verlierst.

und ich würde sogar behauüpten , das hier ( speziell für dein vorhaben ) ggf. ein Ausweichen auf die 99_utils der beste weg sein dürfte.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 07 November 2018, 15:14:18
Ich möchte gerne das "Kamin" um 23.59 auf off gesetzt wird falls er "on" ist ...
Wie bastel ich das am einfachsten ein ?
Internals:
   DEF        Kamin # heizung_wohnzimmersofa_Clima heizung_wohnzimmervitrine_Clima heizung_esszimmer_Clima
   NAME       Kamin
   NOTIFYDEV  Kamin
   NR         909
   NTFY_ORDER 45-Kamin
   STATE      off
   TYPE       MSwitch
   Version_Datenstruktur V2.00
   Version_Modul 2.02
   Version_autoupdate on
   eventsave  unsaved
   .attraggr:
   .attrminint:
   OLDREADINGS:
   READINGS:
     2018-11-06 16:51:06   .Device_Affected heizung_esszimmer_Clima-AbsCmd1,heizung_wohnzimmersofa_Clima-AbsCmd1,heizung_wohnzimmervitrine_Clima-AbsCmd1
     2018-11-06 16:52:47   .Device_Affected_Details heizung_esszimmer_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmersofa_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmervitrine_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
     2018-11-06 21:49:15   .Device_Events  no_trigger
     2018-11-06 16:13:46   .First_init     done
     2018-11-06 16:13:46   .Trigger_cmd_off no_trigger
     2018-11-06 16:13:46   .Trigger_cmd_on no_trigger
     2018-11-07 15:07:37   .Trigger_condition
     2018-11-06 16:13:46   .Trigger_off    no_trigger
     2018-11-06 16:13:46   .Trigger_on     no_trigger
     2018-11-07 15:07:37   .Trigger_time   
     2018-11-06 16:13:46   .V_Check        V2.00
     2018-11-07 15:07:36   EVENT           Trigger_device:Kamin
     2018-11-07 15:07:36   EVTFULL         Kamin:Trigger_device:Kamin
     2018-11-07 15:07:36   EVTPART1        Kamin
     2018-11-07 15:07:36   EVTPART2        Trigger_device
     2018-11-07 15:07:36   EVTPART3        Kamin
     2018-11-06 21:49:15   Exec_cmd        set heizung_esszimmer_Clima controlMode auto,set heizung_wohnzimmersofa_Clima controlMode auto,set h....
     2018-11-07 15:07:36   Trigger_device  Kamin
     2018-11-06 16:13:46   Trigger_log     off
     2018-11-07 15:07:36   incomming       Trigger_device:Kamin
     2018-11-07 15:07:36   last_event      Trigger_device:Kamin
     2018-11-06 21:49:15   state           off
   helper:
     eventfrom  Kamin
     events:
       Kamin:
         no_trigger on
     savemodeblock:
Attributes:
   MSwitch_Debug 0
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full
   room       timer
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 07 November 2018, 17:22:18
Zitat von: ChrisW am 07 November 2018, 15:14:18
Ich möchte gerne das "Kamin" um 23.59 auf off gesetzt wird falls er "on" ist ...
Wie bastel ich das am einfachsten ein ?
Internals:
   DEF        Kamin # heizung_wohnzimmersofa_Clima heizung_wohnzimmervitrine_Clima heizung_esszimmer_Clima
   NAME       Kamin
   NOTIFYDEV  Kamin
   NR         909
   NTFY_ORDER 45-Kamin
   STATE      off
   TYPE       MSwitch
   Version_Datenstruktur V2.00
   Version_Modul 2.02
   Version_autoupdate on
   eventsave  unsaved
   .attraggr:
   .attrminint:
   OLDREADINGS:
   READINGS:
     2018-11-06 16:51:06   .Device_Affected heizung_esszimmer_Clima-AbsCmd1,heizung_wohnzimmersofa_Clima-AbsCmd1,heizung_wohnzimmervitrine_Clima-AbsCmd1
     2018-11-06 16:52:47   .Device_Affected_Details heizung_esszimmer_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmersofa_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmervitrine_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
     2018-11-06 21:49:15   .Device_Events  no_trigger
     2018-11-06 16:13:46   .First_init     done
     2018-11-06 16:13:46   .Trigger_cmd_off no_trigger
     2018-11-06 16:13:46   .Trigger_cmd_on no_trigger
     2018-11-07 15:07:37   .Trigger_condition
     2018-11-06 16:13:46   .Trigger_off    no_trigger
     2018-11-06 16:13:46   .Trigger_on     no_trigger
     2018-11-07 15:07:37   .Trigger_time   
     2018-11-06 16:13:46   .V_Check        V2.00
     2018-11-07 15:07:36   EVENT           Trigger_device:Kamin
     2018-11-07 15:07:36   EVTFULL         Kamin:Trigger_device:Kamin
     2018-11-07 15:07:36   EVTPART1        Kamin
     2018-11-07 15:07:36   EVTPART2        Trigger_device
     2018-11-07 15:07:36   EVTPART3        Kamin
     2018-11-06 21:49:15   Exec_cmd        set heizung_esszimmer_Clima controlMode auto,set heizung_wohnzimmersofa_Clima controlMode auto,set h....
     2018-11-07 15:07:36   Trigger_device  Kamin
     2018-11-06 16:13:46   Trigger_log     off
     2018-11-07 15:07:36   incomming       Trigger_device:Kamin
     2018-11-07 15:07:36   last_event      Trigger_device:Kamin
     2018-11-06 21:49:15   state           off
   helper:
     eventfrom  Kamin
     events:
       Kamin:
         no_trigger on
     savemodeblock:
Attributes:
   MSwitch_Debug 0
   MSwitch_Delete_Delays 1
   MSwitch_Expert 0
   MSwitch_Extensions 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Include_Devicecmds 1
   MSwitch_Include_MSwitchcmds 0
   MSwitch_Include_Webcmds 0
   MSwitch_Lock_Quickedit 1
   MSwitch_Mode Full
   room       timer


zwei kleineEigenheiten von MSwitch:
1. das überall geforderte List desDevices hier nicht wirklich geeignet ist um zu helfen .
2. du kannst leider kaum Hilfe erwarten, ausser von mir, da das Modul leider nur recht wenig genutzt wird und es insofern nur eine handoll User gibt, die sich damit auskennen - denke ich . Führt leider dazu , das es mal länger dauern kann , so wie jetzt  :-\

geh doch in betreffendem Device mal auf get get_config und poste mir diese. ich setze es dir dann ein und schicke sie dir zurück . ist der einfachste weg. dann siehst du wie es sein muss.

ansonsten bitte bei fragen immer auf
get get_support_info und diesen file posten , das macht es einfacher für mich .

Dieses gilt aber nur für MSwitch - Devices.

gruss Byte09


edit : habe dir mal die rawdef eines MSwitch angehangen , das nur die gewünschte aktion ausführt ( nicht in kombination mit bestehendem device, dazu benötige ich oben angesprochene daten )
da ein manuelles schalten hier ja nicht erforderlich ist , habe ich das device in den notify-mode gesetzt ( attribut 'MSwitch_Mode' -> 'Notify' )
den im device eingefügten Kommentar kannst du durch löschen des Attributs 'MSwitch_Comments' bzw durch setzen auf '0' löschen.

defmod Kamin_off MSwitch
attr Kamin_off MSwitch_Comments 1
attr Kamin_off MSwitch_Debug 0
attr Kamin_off MSwitch_Delete_Delays 1
attr Kamin_off MSwitch_Expert 0
attr Kamin_off MSwitch_Extensions 0
attr Kamin_off MSwitch_Help 0
attr Kamin_off MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Kamin_off MSwitch_Include_Devicecmds 1
attr Kamin_off MSwitch_Include_MSwitchcmds 0
attr Kamin_off MSwitch_Include_Webcmds 1
attr Kamin_off MSwitch_Inforoom MSwitch
attr Kamin_off MSwitch_Lock_Quickedit 1
attr Kamin_off MSwitch_Mode Notify
attr Kamin_off room 1_Test

setstate Kamin_off active
setstate Kamin_off 2018-11-07 17:51:38 .Device_Affected Kamin-AbsCmd1
setstate Kamin_off 2018-11-07 17:58:28 .Device_Affected_Details Kamin-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF][Kamin#[dp]state]#[sp]eq#[sp]"on"#[sp]AND#[sp][$EVTPART3]#[sp]eq#[sp]"17#[dp]54"#[NF]#[NF]#[NF]1#[NF]0#[NF]die#[sp]hier#[sp]angegebene#[sp]condition#[sp]muss#[sp]in#[sp]diesem#[sp]Fall#[sp]nicht#[sp]vorhanden#[sp]sein#[sp]#[ko]#[sp]wird#[sp]nur#[sp]dann#[sp]benötigt#[sp]#[ko]#[sp]wenn#[sp]ein#[sp]mswitch#[sp]verschiedene#[sp]aktionen#[sp]zu#[sp]verschiedenen#[sp]zeiten#[sp]ausführen#[sp]soll.#[sp]könntest#[sp]du#[sp]im#[sp]grunde#[sp]löschen.#[sp]gruss#[sp]Byte09#[NF]0#[NF]0#[NF]1
setstate Kamin_off 2018-11-07 17:51:07 .Device_Events no_trigger
setstate Kamin_off 2018-11-07 17:49:48 .First_init done
setstate Kamin_off 2018-11-07 17:49:48 .Trigger_cmd_off no_trigger
setstate Kamin_off 2018-11-07 17:49:48 .Trigger_cmd_on no_trigger
setstate Kamin_off 2018-11-07 17:52:59 .Trigger_condition
setstate Kamin_off 2018-11-07 17:49:48 .Trigger_off no_trigger
setstate Kamin_off 2018-11-07 17:49:48 .Trigger_on no_trigger
setstate Kamin_off 2018-11-07 17:52:59 .Trigger_time on~off~ononly~offonly[17#[dp]54]
setstate Kamin_off 2018-11-07 17:49:48 .V_Check V2.00
setstate Kamin_off 2018-11-07 17:54:00 EVENT Kamin_off:execute_timer_P4:17:54
setstate Kamin_off 2018-11-07 17:54:00 EVTFULL Kamin_off:execute_timer_P4:17:54
setstate Kamin_off 2018-11-07 17:54:00 EVTPART1 Kamin_off
setstate Kamin_off 2018-11-07 17:54:00 EVTPART2 execute_timer_P4
setstate Kamin_off 2018-11-07 17:54:00 EVTPART3 17:54
setstate Kamin_off 2018-11-07 17:54:00 Exec_cmd set Kamin off
setstate Kamin_off 2018-11-07 17:52:59 Trigger_device no_trigger
setstate Kamin_off 2018-11-07 17:49:48 Trigger_log off
setstate Kamin_off 2018-11-07 17:58:28 state active




das hie wäre das entsprechende get_support_info file:

Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
Kamin_off

----- Attribute -----
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Expert: 0
Attribut MSwitch_Debug: 0
Attribut MSwitch_Help: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut room: 1_Test
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Comments: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Delete_Delays: 1

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on off ononly offonly[17:54]
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: Kamin-AbsCmd1
cmd1: no_action
cmd2: off
cmd1 condition:
cmd2 condition: [Kamin:state] eq "on" AND [$EVTPART3] eq "17:54"
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment: die hier angegebene condition muss in diesem Fall nicht vorhanden sein , wird nur dann benötigt , wenn ein mswitch verschiedene aktionen zu verschiedenen zeiten ausführen soll. könntest du im grunde löschen. gruss Byte09
cmd1 exit: 0
cmd2 exit: 0
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 07 November 2018, 20:54:51
hi, klar ich kann auch warten ist ja kein Notfall :) Finde das Modul super vor allem weil es per Webinterface funktioniert.
Wäre ja super wenn man da per Webinterface so einen Timer noch einbauen kann ähnlich wie man die Geräte hinzufügt :)

DANKE

getconfig:
#V 2.02
#VS V2.00
#S .Device_Affected -> heizung_esszimmer_Clima-AbsCmd1,heizung_wohnzimmersofa_Clima-AbsCmd1,heizung_wohnzimmervitrine_Clima-AbsCmd1
#S .Device_Affected_Details -> heizung_esszimmer_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmersofa_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmervitrine_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V2.00
#S Trigger_device -> Kamin
#S Trigger_log -> off
#S last_event -> Trigger_device:Kamin
#S .sysconf -> undef
#S state -> off
#S Sys_Extension -> undef
#S .sortby -> undef
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Expert -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Include_Devicecmds -> 1
#A room -> timer
#A MSwitch_Help -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Mode -> Full
#A MSwitch_Extensions -> 0




Support:
Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
Kamin

----- Attribute -----
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Expert: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Include_Devicecmds: 1
Attribut room: timer
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Mode: Full
Attribut MSwitch_Extensions: 0

----- Trigger -----
Trigger device:  Kamin
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: heizung_esszimmer_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmersofa_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmervitrine_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 November 2018, 05:46:15
Zitat von: ChrisW am 07 November 2018, 20:54:51
...

Hi Chris,
mit anhängender Rawdefinition schaltet sich das Device um 23:59 aus, wenn es an ist.

defmod Kamin MSwitch
attr Kamin MSwitch_Comments 0
attr Kamin MSwitch_Condition_Time 1
attr Kamin MSwitch_Debug 0
attr Kamin MSwitch_Delete_Delays 1
attr Kamin MSwitch_Expert 0
attr Kamin MSwitch_Extensions 0
attr Kamin MSwitch_Help 1
attr Kamin MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Kamin MSwitch_Include_Devicecmds 1
attr Kamin MSwitch_Include_MSwitchcmds 0
attr Kamin MSwitch_Include_Webcmds 1
attr Kamin MSwitch_Inforoom MSwitch
attr Kamin MSwitch_Lock_Quickedit 1
attr Kamin MSwitch_Mode Full
attr Kamin room timer

setstate Kamin off
setstate Kamin 2018-11-08 05:37:07 .Device_Affected heizung_esszimmer_Clima-AbsCmd1,heizung_wohnzimmersofa_Clima-AbsCmd1,heizung_wohnzimmervitrine_Clima-AbsCmd1
setstate Kamin 2018-11-08 05:40:37 .Device_Affected_Details heizung_esszimmer_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmersofa_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]heizung_wohnzimmervitrine_Clima-AbsCmd1#[NF]controlManu#[NF]controlMode#[NF]16.0#[NF]auto#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Kamin 2018-11-08 05:38:06 .Device_Events no_trigger
setstate Kamin 2018-11-08 05:21:19 .First_init done
setstate Kamin 2018-11-08 05:21:19 .Trigger_cmd_off no_trigger
setstate Kamin 2018-11-08 05:21:19 .Trigger_cmd_on no_trigger
setstate Kamin 2018-11-08 05:42:26 .Trigger_condition [$SELF#[dp]state]#[sp]eq#[sp]"on"
setstate Kamin 2018-11-08 05:21:19 .Trigger_off no_trigger
setstate Kamin 2018-11-08 05:21:19 .Trigger_on no_trigger
setstate Kamin 2018-11-08 05:42:26 .Trigger_time on~off[23#[dp]59]~ononly~offonly
setstate Kamin 2018-11-08 05:21:19 .V_Check V2.00
setstate Kamin 2018-11-08 05:41:00 EVENT Kamin:execute_timer_P2:05:41
setstate Kamin 2018-11-08 05:41:00 EVTFULL Kamin:execute_timer_P2:05:41
setstate Kamin 2018-11-08 05:41:00 EVTPART1 Kamin
setstate Kamin 2018-11-08 05:41:00 EVTPART2 execute_timer_P2
setstate Kamin 2018-11-08 05:41:00 EVTPART3 05:41
setstate Kamin 2018-11-08 05:41:00 Exec_cmd set heizung_esszimmer_Clima controlMode auto,set heizung_wohnzimmersofa_Clima controlMode auto,set h....
setstate Kamin 2018-11-08 05:42:26 Trigger_device no_trigger
setstate Kamin 2018-11-08 05:21:19 Trigger_log off
setstate Kamin 2018-11-08 05:33:20 incomming Trigger_device:Kamin
setstate Kamin 2018-11-08 05:21:19 last_event Trigger_device:Kamin
setstate Kamin 2018-11-08 05:41:00 state off



sind im Grunde nur 2 Änderungen:
1. attribut MSwitch_Condition_Time auf 1 setzen
2. siehe Bild im Anhang

ich bin mir jetzt nicht ganz sicher, was du mit dem timer per webcmd meinst , aber theoretisch kann man es so machen , dass du ein weiteres Feld in der DeviceOverview hast , in welchem du die Abschaltzeit direkt wählen kannst - ähnlich angehängtem Bild2 . meinst du so etwas ? Bei Interesse kann ich dir das heute Abend mal bauen - als Muster - . Das ist aber schon etwas komplexer .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 08 November 2018, 10:33:01
hi, vielen Dankk ich werde es heute mal testen.

Ja genau irgendwie "einfacher" wobei wenn ich da snun einmal weiss ist es ja Okay

Werde das Modul jetzt mal öfters benutzen. Ideen habe ich bestimmt einige *g* kann ich ja gerne hier dann mal erfragen ob dies möglich ist.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 November 2018, 19:17:44
kommendes Update auf V2.03

ab dieser Version gibt es ein neues Attribut 'MSwitch_Config'. Über dieses Attribut ist es möglich , vorkonfigurierte ( doch spezielle ) MSwitches zu 'laden' , die zT Modulerweiterungen beinhalten.

Dieses Attribut ist nur dann vorhanden, wenn diese Erweiterungen durch das Fhemupdate auch geladen sind. Andernfalls wird dieses Attribut nicht vorhanden sein.

Da ich diese Erweiterungen nicht in das Fhem-Svn aufnehme möchte , muss hier zusätzlich eine Updatequelle eingetragen sein . Diese muss wie folgt im Webinterface eingegeben werden :

einmaliges update:
update all https://raw.githubusercontent.com/Byte009/MSwitch_Addons/master/controls_mswitchaddons.txt

bei jedem Update aktualisieren:
update add https://raw.githubusercontent.com/Byte009/MSwitch_Addons/master/controls_mswitchaddons.txt

wichtig: dieses ist eine 'Kann-Option', kein muss.

Anfangs werden 3 Mswitchkonfigurationen vorhanden sein :

1. MSwitch-Rename
Überwacht alle Mswitchdevices auf Namensänderungen bei Rename eines beinhalteten Gerätes ( und ändert diese optional )

2. Slowdimmer
Dimmt geräte in einstellbarem Intervall ( für Devices ohne Ramptime )

3.
MSwitch-Timer
Simpler Timer , über Dropdown einstellbar.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 13 November 2018, 14:32:25
hi, danke werde das Update mal machen. Hab es nun paar Tage beobachtet leider funktioniert der Timer nicht um 23:59 passiert nichts bleibt on :(
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 November 2018, 16:05:46
Hi ,

Zeig mir nochmal die Daten die du bei get Support Info bekommst.schaue mir das dann nochmal an.

Zeigt er die Schaltzeiten denn an , wenn du auf get active_timer Show gehst ?

ansonsten schlte des Device mal auf 'attr MSwitch_debug 3' und poste mir den logfile, der angezeigt wir ( sinniger weise, nachdem einmal die schaltzeit erreicht wurde)

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 14 November 2018, 15:14:49
Moin Byte09,
sollte hier nicht zwischen, 15:00 und 18:00 Uhr wenn ss_astro oder der Lacrosse Sensor unter 20 fällt, das Device getriggert werden?

.   Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
AutomatikWZLicht

----- Attribute -----
Attribut MSwitch_Safemode: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Help: 1
Attribut webCmd: on:off:pct:steps:seconds
Attribut disable: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Mode: Full
Attribut MSwitch_Delete_Delays: 0
Attribut room: MSwitch
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Expert: 1
Attribut MSwitch_Lock_Quickedit: 1

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on[15:00-18:00] off ononly offonly
Trigger condition: [Twilight:ss_astro] OR [LaCrosse_3B:temperature] < 11
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: cmd {
my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll
my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;
my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang
Log3( "SELF", 5, "SELF: ziel ".$ziel );
Log3( "SELF", 5, "SELF: ist ".$ist );
if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht
{
fhem("set $SELF del_delays");
return;
}
if ($ziel > $ist )
{
# setze zustand der lampe - steps
$ist = $ist + $steps;
$ist =int($ist);
   if ($ziel < $ist )
   {
   $ist = $ziel;
   }
}
if ($ziel < $ist )
{
# setze zustand der lampe - steps
$ist = $ist - $steps;
$ist =int($ist);
   if ($ziel > $ist )
   {
   $ist = $ziel;
   }
}
Log3( "SELF", 5, "SELF: SETTING ".$ist );
fhem("set HUEGroup1 pct $ist");
}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 3
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: FreeCmd-AbsCmd2
cmd1: cmd setreading $SELF ziel [$SELF:Parameter]
cmd2: cmd set $SELF del_delays
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: HUEGroup1-AbsCmd1
cmd1: no_action
cmd2: off
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 4
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: MSwitch_Self-AbsCmd1
cmd1: exec_cmd1
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: [$SELF:seconds]
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 2
id: 0
comment:
cmd1 exit:
cmd2 exit:


Grüße
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 November 2018, 17:56:08
Zitat von: Esjay am 14 November 2018, 15:14:49
Moin Byte09,
sollte hier nicht zwischen, 15:00 und 18:00 Uhr wenn ss_astro oder der Lacrosse Sensor unter 20 fällt, das Device getriggert werden?

.   Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
AutomatikWZLicht

----- Attribute -----
Attribut MSwitch_Safemode: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Help: 1
Attribut webCmd: on:off:pct:steps:seconds
Attribut disable: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Mode: Full
Attribut MSwitch_Delete_Delays: 0
Attribut room: MSwitch
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Expert: 1
Attribut MSwitch_Lock_Quickedit: 1

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on[15:00-18:00] off ononly offonly
Trigger condition: [Twilight:ss_astro] OR [LaCrosse_3B:temperature] < 11
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: cmd {
my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll
my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;
my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang
Log3( "SELF", 5, "SELF: ziel ".$ziel );
Log3( "SELF", 5, "SELF: ist ".$ist );
if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht
{
fhem("set $SELF del_delays");
return;
}
if ($ziel > $ist )
{
# setze zustand der lampe - steps
$ist = $ist + $steps;
$ist =int($ist);
   if ($ziel < $ist )
   {
   $ist = $ziel;
   }
}
if ($ziel < $ist )
{
# setze zustand der lampe - steps
$ist = $ist - $steps;
$ist =int($ist);
   if ($ziel > $ist )
   {
   $ist = $ziel;
   }
}
Log3( "SELF", 5, "SELF: SETTING ".$ist );
fhem("set HUEGroup1 pct $ist");
}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 3
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: FreeCmd-AbsCmd2
cmd1: cmd setreading $SELF ziel [$SELF:Parameter]
cmd2: cmd set $SELF del_delays
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: HUEGroup1-AbsCmd1
cmd1: no_action
cmd2: off
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 4
id: 0
comment:
cmd1 exit:
cmd2 exit:

Device: MSwitch_Self-AbsCmd1
cmd1: exec_cmd1
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: [$SELF:seconds]
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 2
id: 0
comment:
cmd1 exit:
cmd2 exit:


Grüße

Hi  Esjay,

nein, das geht so nicht und ist glaube ich eine typische doif-schreibweise. Doif wertet automatisch JEDES event aus ( ist mir unsympatisch ) , MSwitch tut das nicht . ... daher braucht MSwitch einen Trigger , den es hier nicht bekommt.

[15:00-18:00] ist keine Schaltzeit , die MSwitch ausführen kann , es gehen nur klare zeitpunkte [15:00] oder entsprechende Formulierungen gemäss Help-Button.

es würde funktionieren, wenn du das MSwitch in den expertenmodus setzt und den TRIGGER auf GLOBAL , dann reagiert MSwitch ebenso wie DOIF auf ALLE events ALLER Devices . Dann müsste die Bedingung aber komplett in das Bedingungsfeld gepackt werden [Twilight:ss_astro] < 11 OR [LaCrosse_3B:temperature] < 11 AND [15:00-18:00] ( rot markiert hast du einen fehler in der schreibweise ).

wenn du nun in die 'Trigger whitelist' die beiden Devices Twilight,LaCrosse_3B setzt kommen nur noch events dieser beiden Geräte durch.

eine schaltbedingung hast du aber trotzdem noch nicht .
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger


mache hier mal einen 'add state' -> (Twilight|LaCrosse_3B).*
und wähle diesen dann im feld 'switch DEVICE on + execute 'cmd1'' aus.

damit sollte da Device entsprechend schalten ( schaltet dann aber bei jedem EVENT von einem der Geräte ein wenn die bedingungen erfüllt sind ).

klingt jetzt wohl etwas kompliziert, gerne kannst du mir das config posten , ich ändere es dann entsprechend.

in dem ganzen eingabefeld 'trigger device/time:   ' wird im grunde nur konfiguriert, welche events überhaupt "durchgelassen" werden ( zeitsteuerung ausgennommen ) , d.H aber noch nicht , dass diese auch zwingend schalten, dieses wird erst durch die Felder in 'trigger details :' konfiguriert - welches event welchen zweig auslöst.



gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 November 2018, 19:09:08
ergänzung zum kommenden Update auf V2.03

zusätzlich zu bereits angekündigten Änderungen  werden in der kommenden Version die Attribute 'setlist', 'readinglist'  und alle 'readingFnAttributes' verfügbar sein.

somit kann ein MSwitch-Device u.a die kompette Funktionalität eines Dummys selber bereitstellen und Konstrukte aus dummys+notifys oder dummy+ XXX sollten im Grunde nicht mehr nötig sein  - insbesonder Konstrukte wie dieses :

https://forum.fhem.de/index.php/topic,93221.0.html (https://forum.fhem.de/index.php/topic,93221.0.html)

dieses lässt sich dann alles in ein MSwitch 'packen' und es müssen nicht 6 Devices angelegt werden, um eine Lampe zu steuern.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 15 November 2018, 18:10:54
Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
Kamin

----- Attribute -----
Attribut MSwitch_Debug: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Expert: 0
Attribut room: timer
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Help: 1
Attribut MSwitch_Comments: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Mode: Full
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Lock_Quickedit: 1

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on off[23:59] ononly offonly
Trigger condition: [$SELF:state] eq "on"
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: heizung_esszimmer_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmersofa_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmervitrine_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 November 2018, 18:16:09
Zitat von: ChrisW am 15 November 2018, 18:10:54
Modulversion: 2.02
Datenstruktur: V2.00

----- Devicename -----
Kamin

----- Attribute -----
Attribut MSwitch_Debug: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Expert: 0
Attribut room: timer
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Help: 1
Attribut MSwitch_Comments: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Mode: Full
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Lock_Quickedit: 1

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on off[23:59] ononly offonly
Trigger condition: [$SELF:state] eq "on"
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: heizung_esszimmer_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmersofa_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: heizung_wohnzimmervitrine_Clima-AbsCmd1
cmd1: controlManu 16.0
cmd2: controlMode auto
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


werden denn die geräte entsprechend geschaltet, wenn du das MSwitch 'manuell' aud 'on' oder'off' schaltest ?

und wichtig : es wird nur dann abgeschaltet , wenn das MSwitch zu Zeitpunkt [23:59] auch auf 'on' steht. Steht es auf 'off', ggf. weil u es manuell so geschaltet hast , findet kein Schaltvorgang statt.
Trigger condition: [$SELF:state] eq "on"

wenn auf jeden Fall geschaltet werden soll, musst du das rausnehmen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 16 November 2018, 11:19:19
also ich setze auf on die Geräte stellen die Temperatur um Uhrzeit 23 Uhr. Dann schaue ich heute morgen ist der status Kamin immer noch on.
Kann ich irgendwie eine art Log schreiben lassen ? Ganz normal ein filelog dafür?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 November 2018, 15:54:43
Zitat von: ChrisW am 16 November 2018, 11:19:19
also ich setze auf on die Geräte stellen die Temperatur um Uhrzeit 23 Uhr. Dann schaue ich heute morgen ist der status Kamin immer noch on.
Kann ich irgendwie eine art Log schreiben lassen ? Ganz normal ein filelog dafür?

ja , hatte ich die tage schon geschrieben . stell mal das attribut MSwitch_Debug auf 3 und poste mir morgen früh mal die Ausgabe. ( möglichst ohne manuelle schaltungen - wegen übersichtlichkeit )

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 17 November 2018, 09:42:19
ich habe die Version 2.03 soeben in das GIT eingespielt.

entgegen der vorherigen info wird es das attribut 'MSwitch_Config' nun doch nicht geben. Stattdessen ist dieses nun über get'get_Mswitch_preconf' verfügbar.

ich werde diese Version einige Tage im git lassen und selber testen , sollte nichtsgravierendes Auftreten übernehme ich sie dann in das SVN.

Setlist und readinglist sind integriert und entsprechen der bekannten Funktion in Dummy etc. und das Mswitch kann auf sich selber reagieren (Triggerdevice 'MSwitch_Self'. Empfehlung - ATTR MSwich_Safemode = 1 )

Ich habe somit seit gestern somit auch keine Dummys mehr in meinem System und deren Funtion alle durch entsprechende Erweiterungen in vorhandenen Mswitches ersetzt - da sie in der Regel ja eh nur als Hilfsdevices für Notify,Doif, MSwitch etc. gedient haben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2018, 07:53:41
Wichtig: Fehler in der Testversion 2.03 ( GIT )

leider hat sich in der Testversion im GIT ein Fehler eingeschlichen der dafür gesorgt hat , das MSwitches die im Notify-Mode betrieben wurden, bei Fhemstart nicht richtig initialisiert wurde.
Somit wurde das triggernde Device nicht richtig in entsprechenden Hash geschrieben und das Device hat nach Fhemneustart nicht mehr auf den Trigger reagiert.

Ich habe den Fehler behoben und die Testversion im GIT eben aktualisiert. Wer diese Version nutzt sollte somit unbedingt ein Update auf die Version 2.03a_Test durchführen.

Die Version im SVN ist/war davon nicht betroffen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 November 2018, 19:03:27
nachdem dei Funktion "get_preconfig" nun vorhanden ist werde ich nach und nach vorkonfigurierte Devices einspielen.  Eben habe ich das MSwitch 'Rename_Ctrl" in das GIT gestellt. Entsprechende Beschreibungen werde ich im ertsen Post aktualisieren .

Bei Gelegenheit werde ich dieses auch in das Wiki aufnehmen.

Diese Funktion ist nur in der Testversion 2.03 vorhanden -nicht in der SVN Version - , und das auch nur dann , wenn sie aktiviert wurde ( siehe einige Posts über diesem).

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 20 November 2018, 12:19:21
Soo
reich das schon aus dem Logfile:
2018.11.19 23:59:00 1: PERL WARNING: Use of uninitialized value $evtparts[0] in join or string at ./FHEM/98_MSwitch.pm line 6052.
2018.11.19 23:59:00 3: Kamin MSwitch_Execute_Timer: Befehlsausfuehrung -> set Kamin off6727
2018.11.19 23:59:00 3: CUL_HM set heizung_esszimmer_Clima controlMode auto
2018.11.19 23:59:00 3: CUL_HM set heizung_wohnzimmersofa_Clima controlMode auto
2018.11.19 23:59:00 3: CUL_HM set heizung_wohnzimmervitrine_Clima controlMode auto


Gesetzt hat er wohl auf Auto ( Falls es nicht ein Profil der Regler ist ?? ) Aber heute morgen war Kamin immer noch "on"
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 November 2018, 15:17:58
Zitat von: ChrisW am 20 November 2018, 12:19:21
Soo
reich das schon aus dem Logfile:
2018.11.19 23:59:00 1: PERL WARNING: Use of uninitialized value $evtparts[0] in join or string at ./FHEM/98_MSwitch.pm line 6052.
2018.11.19 23:59:00 3: Kamin MSwitch_Execute_Timer: Befehlsausfuehrung -> set Kamin off6727
2018.11.19 23:59:00 3: CUL_HM set heizung_esszimmer_Clima controlMode auto
2018.11.19 23:59:00 3: CUL_HM set heizung_wohnzimmersofa_Clima controlMode auto
2018.11.19 23:59:00 3: CUL_HM set heizung_wohnzimmervitrine_Clima controlMode auto


Gesetzt hat er wohl auf Auto ( Falls es nicht ein Profil der Regler ist ?? ) Aber heute morgen war Kamin immer noch "on"

Hi chris, ich kann leider nicht wirklich helfen , splange du mir die daten nicht gibst , die ich brauche. Aber wenn ich mir das so anschaue tut der MSwitch genau das , was eingestellt ist:
23:59 schaltet sich der mSwitch auf off und zieht die 3 gesetzten geräte auf auto.

die frage warum das MSwitch 'Kamin ' morgens wieder auf 'on' steht bei dir, kann ich nicht beantworten ohne den Log. Bitte stell mal das ATTR Mswitch_Debug auf '3' ( nicht verbose ) und lass ihn einfach so laufen . Dieses File benötige ich , da dort ersichtlich sein sollte wann es wieder auf on geht und ggf. aucch warum.

Die Perlwarnung lasse ich jetzt mal aussen vor, da muss ich schauen woher sie kommt , aber für dieses Funktion egal.

ich habe das ganze nochmal bei mir am laufen und es tut wie es soll. Der Logfile (debug3) sieht entsprechend aus:

Tue Nov 20 15:12:53 2018 Starte Log
Tue Nov 20 15:13:00 2018: -> Kamin:     Checkcondition - Parameter condition -> [$SELF:state] eq "on"
Tue Nov 20 15:13:00 2018: -> Kamin:     Checkcondition - Parameter event ->
Tue Nov 20 15:13:00 2018: -> ----------------------------------------
Tue Nov 20 15:13:00 2018: -> Kamin: MSwitch_Checkcond_state -> [Kamin:state]
Tue Nov 20 15:13:00 2018: -> ----------------------------------------
Tue Nov 20 15:13:00 2018: -> Kamin: MSwitch_Checkcond_state OUT -> ReadingsVal('Kamin', 'state', '00:00:00')
Tue Nov 20 15:13:00 2018: -> Kamin:     Checkcondition - finalstring -> if (ReadingsVal('Kamin', 'state', '00:00:00') eq "on"){$answer = 'true';} else {$answer = 'false';}
Tue Nov 20 15:13:00 2018: -> Kamin:     Checkcondition - return -> true
Tue Nov 20 15:13:00 2018: -> ----------------------------------------
Tue Nov 20 15:13:00 2018: -> Kamin: aufruf on/off -> off
Tue Nov 20 15:13:00 2018: -> ----------------------------------------
Tue Nov 20 15:13:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 15:13:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 15:13:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 15:13:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 15:13:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 15:13:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 15:13:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 15:13:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 15:13:00 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 15:13:00 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 15:13:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 15:13:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 15:13:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 15:13:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto


gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 20 November 2018, 17:11:13
ATTR Mswitch_Debug auf '3' hatte ich aktiv wo bekomme ich nun das was er erstellt ??
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 November 2018, 17:18:20
Zitat von: ChrisW am 20 November 2018, 17:11:13
ATTR Mswitch_Debug auf '3' hatte ich aktiv wo bekomme ich nun das was er erstellt ??

wenn du das device mal aktualisierst im grunde unübersehbar ? ... oder zeigt er es dir nicht an ?
me -> *verwirrt

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 21 November 2018, 11:30:43
glaub das liegt an meinem Design das war echt klein kaum zu sehen aber hier der Inhalt:
Mon Nov 19 21:06:19 2018 Starte Log
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - Parameter condition -> [$SELF:state] eq "on"
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - Parameter event ->
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state -> [Kamin:state]
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state OUT -> ReadingsVal('Kamin', 'state', '00:00:00')
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - finalstring -> if (ReadingsVal('Kamin', 'state', '00:00:00') eq "on"){$answer = 'true';} else {$answer = 'false';}
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - return -> true
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: aufruf on/off -> off
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Mon Nov 19 23:59:00 2018: -> Kamin: uebergabe an sub execute
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> ----------------------------------------
Tue Nov 20 06:56:57 2018: -> Kamin: aufruf on/off -> off
Tue Nov 20 06:56:57 2018: -> ----------------------------------------
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 06:56:57 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 18:30:48 2018: -> ----------------------------------------
Tue Nov 20 18:30:48 2018: -> Kamin: aufruf on/off -> on
Tue Nov 20 18:30:48 2018: -> ----------------------------------------
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 18:30:48 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlManu 16.0|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlManu 16.0|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlManu 16.0|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - Parameter condition -> [$SELF:state] eq "on"
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - Parameter event ->
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state -> [Kamin:state]
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state OUT -> ReadingsVal('Kamin', 'state', '00:00:00')
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - finalstring -> if (ReadingsVal('Kamin', 'state', '00:00:00') eq "on"){$answer = 'true';} else {$answer = 'false';}
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - return -> true
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: aufruf on/off -> off
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 23:59:00 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 November 2018, 11:57:20
Zitat von: ChrisW am 21 November 2018, 11:30:43
glaub das liegt an meinem Design das war echt klein kaum zu sehen aber hier der Inhalt:
Mon Nov 19 21:06:19 2018 Starte Log
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:20 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:0
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:21 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:1
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:22 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:2
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:23 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:3
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:29 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:9
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 21:06:30 2018: -> Anfrage fuer Kamin blockiert - Zeit seit start:10
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - Parameter condition -> [$SELF:state] eq "on"
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - Parameter event ->
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state -> [Kamin:state]
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state OUT -> ReadingsVal('Kamin', 'state', '00:00:00')
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - finalstring -> if (ReadingsVal('Kamin', 'state', '00:00:00') eq "on"){$answer = 'true';} else {$answer = 'false';}
Mon Nov 19 23:59:00 2018: -> Kamin:     Checkcondition - return -> true
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: aufruf on/off -> off
Mon Nov 19 23:59:00 2018: -> ----------------------------------------
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf delay -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Mon Nov 19 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Mon Nov 19 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Mon Nov 19 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Mon Nov 19 23:59:00 2018: -> Kamin: uebergabe an sub execute
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Mon Nov 19 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Mon Nov 19 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> ----------------------------------------
Tue Nov 20 06:56:57 2018: -> Kamin: aufruf on/off -> off
Tue Nov 20 06:56:57 2018: -> ----------------------------------------
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 06:56:57 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 06:56:57 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 06:56:57 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 06:56:57 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 06:56:57 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 06:56:57 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 18:30:48 2018: -> ----------------------------------------
Tue Nov 20 18:30:48 2018: -> Kamin: aufruf on/off -> on
Tue Nov 20 18:30:48 2018: -> ----------------------------------------
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: angesprochener zweig cmd1 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 18:30:48 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 18:30:48 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 18:30:48 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 18:30:48 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlManu 16.0|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlManu 16.0|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlManu 16.0|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 18:30:48 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 18:30:48 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlManu 16.0
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - Parameter condition -> [$SELF:state] eq "on"
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - Parameter event ->
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state -> [Kamin:state]
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: MSwitch_Checkcond_state OUT -> ReadingsVal('Kamin', 'state', '00:00:00')
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - finalstring -> if (ReadingsVal('Kamin', 'state', '00:00:00') eq "on"){$answer = 'true';} else {$answer = 'false';}
Tue Nov 20 23:59:00 2018: -> Kamin:     Checkcondition - return -> true
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: aufruf on/off -> off
Tue Nov 20 23:59:00 2018: -> ----------------------------------------
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_esszimmer_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmersofa_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: angesprochener zweig cmd2 -> device -> -heizung_wohnzimmervitrine_Clima-AbsCmd1-
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf timerstatus -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: timerstatus nach test -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: befehl gefunden -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf delay -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: TIMERKEY -> 0
Tue Nov 20 23:59:00 2018: -> Kamin: teste auf condition -> wird nicht getestet - kein eintrag
Tue Nov 20 23:59:00 2018: -> Kamin: ergebniss condition -> ergebniss true
Tue Nov 20 23:59:00 2018: -> Kamin: in exec-cmdpool geschrieben ->set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin: anzahl der auszufuehrenden befehle -> 3
Tue Nov 20 23:59:00 2018: -> Kamin: uebergabe an sub execute
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_esszimmer_Clima controlMode auto|heizung_esszimmer_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_esszimmer_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmersofa_Clima controlMode auto|heizung_wohnzimmersofa_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmersofa_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute -> set heizung_wohnzimmervitrine_Clima controlMode auto|heizung_wohnzimmervitrine_Clima-AbsCmd1
Tue Nov 20 23:59:00 2018: -> Kamin:     cmd nach decodierung -> set heizung_wohnzimmervitrine_Clima controlMode auto
Tue Nov 20 23:59:00 2018: -> Kamin:     execute als fhemcode -> set heizung_wohnzimmervitrine_Clima controlMode auto

Schaffe es erst heute abend drüber zuschauen.

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 21 November 2018, 12:45:46
Kein Stress nicht so wichtig :)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 November 2018, 16:48:54
Zitat von: ChrisW am 21 November 2018, 12:45:46
Kein Stress nicht so wichtig :)


so gerade mal drübergeschaut, ich stehe hier leider echt auf dem schlauch und kann kein falsches verhalten fesstellen .

was ich aus dem log entnehme ist , dass um 23:59 korrekt ausgeschaltet wurde , dann um 6:16 nochmal manuelles abschalten ( es gab aber kein 'on' dazwischen , daher kann ich fast nicht glauben , dass er morgens auf on stand - bitte nicht falsch verstehen - aber das muss im log stehen , da geht fast kein weg daran vorbei , es sei denn du änderst den state auf andere weise ) und um 18:30 (manuelles ) anschalten.
etc. pp.
auch die befehle an alle beteiligten Geräte wurden ordnungsgemäss abgesetzt.

insofern ist mir das Problem völlig suspekt .. bzw. ich verstehe es nichtmal.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 November 2018, 19:25:21
hi zusammen ,

ich würde in der nächsten Version die ich in das SVN einspiele das Reading 'Exec_cmd' abschaffen , bzw. in 'last_exec_cmd' umbenennen . In diesem zug werde ich das Reading 'last_cmd' einführen ( mehr dazu später ).

Frage in den Raum : nutz jemand dieses Reading , in den conditions etc. pp. ? falls ja würde ich eine entsprechende aut. änderung einbauen .

sollte ich diesbezüglich hier keine Einwände bekommen , änder ich es zu nächsten version ohne automatische korrektur.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 26 November 2018, 19:46:36
So nochmal dazu gekommen das zu Prüfen. SORRY MEIN FEHLER ..
Hatte bei Tabletui auf ON / OFF geschaut aber es ist on/off ;)
Das kann ja nicht richtig klappen.
Also funktioniert alles. DANKE
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 26 November 2018, 19:50:47
Hallo Byte09,

erst mal danke für das tolle Modul. Das Reading 'Exec_cmd' verwende ich nicht.

Ich habe aber eine Frage zu  Trigger time. Hintergrund ist, ich würde gerne mein WLAN und Heizung anhand des Anwesenheitsstatus sprich beim Nachhause kommen steuern. Dazu würde ich gerne ein MSwitch Device verwenden, wobei zusätzlich das WLAN über Trigger time morgens 6 Uhr eingeschaltet (zus. Prüfung über condition, dass auch jemand zu Hause ist) und nachts ausgeschaltet wird.

Verstehe ich das richtig, dass trigger time sich immer auf alle "Actions" bezieht? Also eine zweite Action, die zur Heizung dann ebenfalls morgens 6 Uhr ausgelöst wird.

Gibt es noch eine Option oder muss ich dann wirklich mehrere MSwitch einsetzen, die auf die Anwesenheit triggern? Liese sich ein time trigger je Action bei einem nächste Release des Moduls realisieren?

Danke und beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 November 2018, 20:03:09
Zitat von: ChrisW am 26 November 2018, 19:46:36
So nochmal dazu gekommen das zu Prüfen. SORRY MEIN FEHLER ..
Hatte bei Tabletui auf ON / OFF geschaut aber es ist on/off ;)
Das kann ja nicht richtig klappen.
Also funktioniert alles. DANKE

super, hauptsache es geht   ;)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 November 2018, 20:17:44
Zitat von: ToKa am 26 November 2018, 19:50:47
Hallo Byte09,

erst mal danke für das tolle Modul. Das Reading 'Exec_cmd' verwende ich nicht.

Ich habe aber eine Frage zu  Trigger time. Hintergrund ist, ich würde gerne mein WLAN und Heizung anhand des Anwesenheitsstatus sprich beim Nachhause kommen steuern. Dazu würde ich gerne ein MSwitch Device verwenden, wobei zusätzlich das WLAN über Trigger time morgens 6 Uhr eingeschaltet (zus. Prüfung über condition, dass auch jemand zu Hause ist) und nachts ausgeschaltet wird.

Verstehe ich das richtig, dass trigger time sich immer auf alle "Actions" bezieht? Also eine zweite Action, die zur Heizung dann ebenfalls morgens 6 Uhr ausgelöst wird.

Gibt es noch eine Option oder muss ich dann wirklich mehrere MSwitch einsetzen, die auf die Anwesenheit triggern? Liese sich ein time trigger je Action bei einem nächste Release des Moduls realisieren?

Danke und beste Grüße
Torsten

hi torsten ,

ja , erstmal bezieht sich diese time auf alle 'actions' . bei auslösen dieses timers wird aber ein eigenes event erzeugt , siehe anhang. auf dieses kannst du entsprechend in den actions reagieren , oder eben explizit nicht reagieren : [$EVENT eq "TEsttrigger:execute_timer_P1:20:05] oder eben 'ne'

du kannst auch eine action setzen (MSwitch_Self) und kannst in diesem veranlassen, das eine weitere action angestossen wird "set DEVICE set_cmd1 1", bei diesem event.
actions mit gesetzer ID werden grundsätzlich nicht ausgeführt, es sei denn sie werden explizit aufgerufen.

diese weiteren actions gibst du eine ID (expert_mode ).  - siehe bild 2.

hoffe ich habe mich halbwegs verständlich ausgedrückt, sonst gerne nachhaken.  ???

ZitatLiese sich ein time trigger je Action bei einem nächste Release des Moduls realisieren?

... ja , das lässt sich wahrscheinlich machen , aber auch nur direkt auf eine action , bei der eine ID gesetzt ist. .... ich schaue mal  ;)

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 26 November 2018, 20:39:07
Hallo Byte09,

Danke für die schnelle Antwort. Mit dem Timer Event sollte ich das hinbekommen, dass nur bestimmte actions ausgelöst werden.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 November 2018, 19:34:41
Zitat von: ToKa am 26 November 2018, 20:39:07
Hallo Byte09,

Danke für die schnelle Antwort. Mit dem Timer Event sollte ich das hinbekommen, dass nur bestimmte actions ausgelöst werden.

Beste Grüße
Torsten

hi torsten,

bevor du dieses device ausbaust warte doch ggf. mal bis ende der woche . bis dahin wird der aufruf einzelner 'actions' über timer möglich sein und die gesamte Funktion bzgl. dieser wird leicht geändert/erweitert sein ( wie immer abwärtskompatibel ).

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 28 November 2018, 20:45:59
Hallo Byte09,

das ist ja ein Service. Vielen Dank, da warte ich natürlich sehr gerne.

Beste Grüße

Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: andies am 28 November 2018, 21:31:50
Zitat von: ToKa am 28 November 2018, 20:45:59
Hallo Byte09,

das ist ja ein Service.
Man muss dazu sagen: im ersten Wikieintrag bestand Byte09 noch darauf, dass er hier keinen Rund-um-Service anbieten könne. Ich kenne niemanden, der so aktiv sein Modul weiterentwickelt!


Gesendet von iPad mit Tapatalk Pro
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2018, 17:52:08
@Larusso

den text findest du nur im webcmd des devices . MSwitch ist so angelegt , das eine konfiguration über die def nicht möglich ist / und nicht gewollt ist.

siehe anhang ...

'text to speak' ist der text der ausgegeben wird. dort den text ändern und mit 'modify actions' speichern,

gruss Byte09

edit: wenn dir das modul zusagt, nimm dir am besten mal die Zeit und schau mal in das wiki:
https://wiki.fhem.de/wiki/MSwitch (https://wiki.fhem.de/wiki/MSwitch)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 November 2018, 05:35:26
im GIT gibt es eine neue Testversion ( V2.05)
siehe Eingangspost.

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: Larusso am 30 November 2018, 06:57:12
Hallo Byte09,

vielleicht hab ich ein Brett vorm Kopf aber ich tue mich echt schwer mit MSwitch. Ich finde in der Menüstruktur leider nicht den Punkt wo ich das TTS Device und die passende CMD Ausgabe schreiben kann, vielleicht kannst du mir da mit einem tut für Dummies bei meinem Fall helfen  :-\. Das Update habe ich gemacht. Ist bei deiner def die du mir geschickt hast alles schon konfiguriert, bis auf den Ausgabetext beim TTS? schau mal bitte über die beiden Screenshots ob da was fehlt und vielleicht markierst du mir einfach die Stelle wo ich die TTS Ausgabe in Textform ändern kann. Die commandref ist bei dem Tool sehr Umfangreich und ich muss ehrlich gestehen das ich da nicht viel verstehe.

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 November 2018, 07:03:50
Zitat von: Larusso am 30 November 2018, 06:57:12
Hallo Byte09,

vielleicht hab ich ein Brett vorm Kopf aber ich tue mich echt schwer mit MSwitch. Ich finde in der Menüstruktur leider nicht den Punkt wo ich das TTS Device und die passende CMD Ausgabe schreiben kann, vielleicht kannst du mir da mit einem tut für Dummies bei meinem Fall helfen  :-\. Das Update habe ich gemacht. Ist bei deiner def die du mir geschickt hast alles schon konfiguriert, bis auf den Ausgabetext beim TTS? schau mal bitte über die beiden Screenshots ob da was fehlt und vielleicht markierst du mir einfach die Stelle wo ich die TTS Ausgabe in Textform ändern kann. Die commandref ist bei dem Tool sehr Umfangreich und ich muss ehrlich gestehen das ich da nicht viel verstehe.
Hi larusso ,
Ich kann leider über tapatalk die Bilder nicht richtig sehen , es Schatten mir aber so aus , als ob da einige dinge fehlen. Dass kann passiert sein , wenn die von mir angenommenen DeviceName nicht gestimmt haben und du mal gespeichert hast. Mach doch bitte um Device mal ein get Support Info .. über das webinterface ...  und poste die Ausgabe hier. Ich schaue mir das dann nach der Arbeit an. Gerne kannst du mir auch per pm deinen whatsapp Kontakt schicken .... ist oft der kürzere und effektivere weg.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Larusso am 30 November 2018, 08:24:53
Hallo Byte09,

anbei die Info:

Modulversion: 2.05_Test
Datenstruktur: V2.00

----- Devicename -----
Sauna_MSwitch

----- Attribute -----
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Expert: 1
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut setList: kuehlphase:on,off Min:10,11,12,13,14,15 Max:65,66,67,68,69,70,71,72
Attribut MSwitch_Debug: 0
Attribut readingList: kuehlphase Min Max
Attribut webCmd: Min:Max
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Help: 1
Attribut room: 00 Schneider,MSwitch
Attribut stateFormat: Abkühlphase: kuehlphase Temp: EVTPART3 Grad
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Mode: Notify
Attribut verbose: 3
Attribut webCmdLabel: Schwellwert min:Schwellwert max

----- Trigger -----
Trigger device:  ESPEasy_Sauna_MSwitch_Klima
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----



hab die von dir zugeschickte defmod genommen, aber da scheint wirklich einiges zu fehlen...trigger, Ausgabedevice.......komisch
Titel: Antw:98_MSwitch - Support
Beitrag von: Esjay am 30 November 2018, 11:10:19
Moin moin Byte

Zitat von: Byte09 am 14 November 2018, 17:56:08
Hi  Esjay,

nein, das geht so nicht und ist glaube ich eine typische doif-schreibweise. Doif wertet automatisch JEDES event aus ( ist mir unsympatisch ) , MSwitch tut das nicht . ... daher braucht MSwitch einen Trigger , den es hier nicht bekommt.

[15:00-18:00] ist keine Schaltzeit , die MSwitch ausführen kann , es gehen nur klare zeitpunkte [15:00] oder entsprechende Formulierungen gemäss Help-Button.

es würde funktionieren, wenn du das MSwitch in den expertenmodus setzt und den TRIGGER auf GLOBAL , dann reagiert MSwitch ebenso wie DOIF auf ALLE events ALLER Devices . Dann müsste die Bedingung aber komplett in das Bedingungsfeld gepackt werden [Twilight:ss_astro] < 11 OR [LaCrosse_3B:temperature] < 11 AND [15:00-18:00] ( rot markiert hast du einen fehler in der schreibweise ).

wenn du nun in die 'Trigger whitelist' die beiden Devices Twilight,LaCrosse_3B setzt kommen nur noch events dieser beiden Geräte durch.

eine schaltbedingung hast du aber trotzdem noch nicht .
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger


mache hier mal einen 'add state' -> (Twilight|LaCrosse_3B).*
und wähle diesen dann im feld 'switch DEVICE on + execute 'cmd1'' aus.

damit sollte da Device entsprechend schalten ( schaltet dann aber bei jedem EVENT von einem der Geräte ein wenn die bedingungen erfüllt sind ).

klingt jetzt wohl etwas kompliziert, gerne kannst du mir das config posten , ich ändere es dann entsprechend.

in dem ganzen eingabefeld 'trigger device/time:   ' wird im grunde nur konfiguriert, welche events überhaupt "durchgelassen" werden ( zeitsteuerung ausgennommen ) , d.H aber noch nicht , dass diese auch zwingend schalten, dieses wird erst durch die Felder in 'trigger details :' konfiguriert - welches event welchen zweig auslöst.



gruss Byte09

Anbei mal die alte Config.

Zur Erklärung:
Die Trigger condition: [Twilight:ss_astro] OR [LaCrosse_3B:temperature] < 11 ist so gedacht, das das Device schalten soll, wenn die Uhrzeit ss_astro erreicht ist oder der Lacrosse Sensor einen Wert kleiner 11 meldet (der LaCrosse Sensor ist ein umgebauter Helligkeitssensor). Sprich je nachdem was eher passiert.
Deswegen kann ich deine rot markierte 11 nicht nachvollziehen.


#V 2.02
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HUEGroup1-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HUEGroup1 pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]HUEGroup1-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> [Twilight#[dp]ss_astro]#[sp]OR#[sp][LaCrosse_3B#[dp]temperature]#[sp]<#[sp]11
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[15#[dp]00-18#[dp]00]~off~ononly~offonly
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#S .sortby -> undef
#A disable -> 0
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Safemode -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> MSwitch
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Sollte es nicht reichen, das MSwitch so einzustellen?

#V 2.02
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HUEGroup1-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HUEGroup1 pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][15:00-18:00] AND [Haus:state] ne "home"#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][15:00-18:00] AND [Haus:state] ne "home"#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]HUEGroup1-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> [Twilight#[dp]ss_astro]#[sp]OR#[sp][LaCrosse_3B#[dp]temperature]#[sp]<#[sp]11
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#S .sortby -> undef
#A disable -> 0
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Safemode -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> MSwitch
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Mir ist aufgefallen das du im Help-Text folgendes aufführst --> Zeitabhängiges schalten: [19.10-23:00] - Schaltbefehl erfolgt nur in angegebenem Zeitraum

Muss es nicht 19:10 anstatt 19.10 heißen?

Grüße aus Golfsburg

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 November 2018, 11:55:07
Zitat von: Esjay am 30 November 2018, 11:10:19
Moin moin Byte

Anbei mal die alte Config.

Zur Erklärung:
Die Trigger condition: [Twilight:ss_astro] OR [LaCrosse_3B:temperature] < 11 ist so gedacht, das das Device schalten soll, wenn die Uhrzeit ss_astro erreicht ist oder der Lacrosse Sensor einen Wert kleiner 11 meldet (der LaCrosse Sensor ist ein umgebauter Helligkeitssensor). Sprich je nachdem was eher passiert.
Deswegen kann ich deine rot markierte 11 nicht nachvollziehen.


#V 2.02
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HUEGroup1-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HUEGroup1 pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[ND]HUEGroup1-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> [Twilight#[dp]ss_astro]#[sp]OR#[sp][LaCrosse_3B#[dp]temperature]#[sp]<#[sp]11
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on[15#[dp]00-18#[dp]00]~off~ononly~offonly
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#S .sortby -> undef
#A disable -> 0
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Safemode -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> MSwitch
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Sollte es nicht reichen, das MSwitch so einzustellen?

#V 2.02
#VS V2.00
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,HUEGroup1-AbsCmd1,MSwitch_Self-AbsCmd1
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{;;my $ziel = ReadingsVal("$SELF","ziel",0); # bis wohin gedimmt werden soll;;my $ist = ReadingsVal("HUEGroup1","pct",0); # zustand der lampe;;;my $steps = ReadingsVal("$SELF","steps",1); # dimmschritte pro durchgang;;Log3( "SELF", 5, "SELF: ziel ".$ziel );;;Log3( "SELF", 5, "SELF: ist ".$ist );;;if ($ist == $ziel ) # lösche wiederholung wenn ziel erreicht;; {;; fhem("set $SELF del_delays");;; return;;; };;if ($ziel > $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist + $steps;;;$ist =int($ist);;;   if ($ziel < $ist );;   {;;   $ist = $ziel;;;   };;};;if ($ziel < $ist );;{;;# setze zustand der lampe - steps;;$ist = $ist - $steps; ;;$ist =int($ist);;;   if ($ziel > $ist );;   {;;   $ist = $ziel;;;   };;};;Log3( "SELF", 5, "SELF: SETTING ".$ist );;;fhem("set HUEGroup1 pct $ist");;;}#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][15:00-18:00] AND [Haus:state] ne "home"#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading $SELF ziel [$SELF:Parameter]#[NF]set $SELF del_delays#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][15:00-18:00] AND [Haus:state] ne "home"#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]HUEGroup1-AbsCmd1#[NF]no_action#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd1#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF:seconds]#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Device_Events -> no_trigger
#S .First_init -> done
#S .Trigger_Whitelist -> undef
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition -> [Twilight#[dp]ss_astro]#[sp]OR#[sp][LaCrosse_3B#[dp]temperature]#[sp]<#[sp]11
#S .Trigger_off -> no_trigger
#S .Trigger_on -> no_trigger
#S .Trigger_time ->
#S .V_Check -> V2.00
#S Trigger_device -> no_trigger
#S Trigger_log -> off
#S last_event -> MSwitch_Self-AbsCmd1_conditionon
#S .sysconf -> #test#[se]#[nl]#[nl]$special="pct#[dp]slider#[ko]0#[ko]1#[ko]100#[sp]steps#[dp]1#[ko]2#[ko]3#[ko]4#[ko]5#[ko]6#[ko]7#[ko]8#[ko]9#[ko]10#[sp]seconds#[dp]00#[dp]00#[dp]01#[ko]00#[dp]00#[dp]02#[ko]00#[dp]00#[dp]03#[ko]00#[dp]00#[dp]04#[ko]00#[dp]00#[dp]05#[ko]00#[dp]00#[dp]06#[ko]00#[dp]00#[dp]07#[ko]00#[dp]00#[dp]08#[ko]00#[dp]00#[dp]09#[ko]00#[dp]00#[dp]10#[ko]00#[dp]00#[dp]30"#[sp]#[se]#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"steps")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"steps"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"seconds")#[nl]{#[nl]MSwitch_LOG(#[sp]$name#[ko]#[sp]5#[ko]#[sp]"setting#[sp]STEPS#[sp]#[dp]#[sp]$cmd#[sp]$args[0]"#[sp])#[se]#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"seconds"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]return#[sp]"exit"#[se]#[nl]}#[nl]#[nl]#[nl]#[nl]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]{#[nl]$args[0]#[sp]=""#[sp]if#[sp]#[sp]!defined#[sp]$args[0]#[se]#[nl]my#[sp]$arg#[sp]=#[sp]$args[0]#[se]#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"on"#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"off"#[sp]#[sp]#[wa]#[wa]#[sp]$cmd#[sp]eq#[sp]"pct")#[nl]#[sp]{#[nl]#[sp]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]0#[st])#[nl]#[sp]{#[nl]#[sp]$cmd#[sp]=#[st]off#[st]#[se]#[nl]#[sp]#[sp]}#[nl]if#[sp]($cmd#[sp]eq#[sp]"pct"#[sp]&&#[sp]$arg#[sp]ne#[sp]#[st]0#[st])#[nl]{#[nl]$cmd#[sp]=#[st]on#[st]#[se]#[nl]}#[sp]#[sp]#[sp]#[nl]#[sp]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]on#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st])#[nl]{#[nl]$args[0]#[sp]=#[sp]ReadingsVal(#[sp]$name#[ko]#[sp]#[st]pct#[st]#[ko]#[sp]100)#[se]#[nl]}#[nl]#[nl]if#[sp](#[sp]$cmd#[sp]eq#[sp]#[st]off#[st]#[sp]&&#[sp]$arg#[sp]eq#[sp]#[st]#[st]#[sp]#[sp]#[sp]#[sp])#[nl]{#[nl]$args[0]#[sp]=#[sp]0#[se]#[nl]}#[nl]readingsSingleUpdate(#[sp]$hash#[ko]#[sp]"pct"#[ko]#[sp]$args[0]#[ko]#[sp]1#[sp])#[se]#[nl]}#[nl]}#[nl]#[nl]#[nl]return#[sp]"end"#[se]#[nl]#[nl]
#S state -> on
#S Sys_Extension -> on
#S .sortby -> undef
#A disable -> 0
#A webCmd -> on:off:pct:steps:seconds
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Expert -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Safemode -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> MSwitch
#A MSwitch_Include_Webcmds -> 1
#A MSwitch_Delete_Delays -> 0
#A MSwitch_Help -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul



Mir ist aufgefallen das du im Help-Text folgendes aufführst --> Zeitabhängiges schalten: [19.10-23:00] - Schaltbefehl erfolgt nur in angegebenem Zeitraum

Muss es nicht 19:10 anstatt 19.10 heißen?

Grüße aus Golfsburg
Hi Esjay

Schaffe es erst spät nachmittag mir das anzuschauen und melde mich dann.

Gruss byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 November 2018, 17:22:55
Zitat von: ToKa am 28 November 2018, 20:45:59
Hallo Byte09,

das ist ja ein Service. Vielen Dank, da warte ich natürlich sehr gerne.

Beste Grüße

Torsten

Hi Torsten,

die Testversion V2.06 ( siehe erster Beitrag ) ist nun im GIT. Sie enthält von dir vorgeschlagene Optionen zur direkten 'anwahl' einer best. Aktion in den Timereinstellungen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 02 Dezember 2018, 20:22:01
N'Abend,

wie kann ich denn diese Version aus dem GIT herunterladen?

Danke und Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 Dezember 2018, 21:11:26
Zitat von: ToKa am 02 Dezember 2018, 20:22:01
N'Abend,

wie kann ich denn diese Version aus dem GIT herunterladen?

Danke und Grüße
Torsten

steht im ersten Beitrag  ;)

Zitatupdate auf die Testversion im GIT  ( Achtung dieses ist immer eine aktuelle Entwicklerversion ohne Anspruch auf Fehlerfreiheit ):
Code: [Auswählen]

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt


eine Rückkehr von der Testversion zur SVN-Version ist in der Regl problemlos möglich . Im Einzelfall ( je nach Stand der Entwicklungsversion) kann es aber zu Kompatibilitätsproblemen kommen, insbesondere dann , wenn sich die Version_Datenstruktur unterscheidet. In diesem Fall bei Bedarf bitte kurz Anfragen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 03 Dezember 2018, 22:16:47
Hallo Byte09,

habe die Version aus dem Git jetzt installiert, kann aber nicht entdecken, an welcher Stelle ich die Uhrzeit für einzelne Aktionen setzen kann. Muss ich dazu noch ein Attribut pflegen?

Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 Dezember 2018, 05:29:44
Zitat von: ToKa am 03 Dezember 2018, 22:16:47
Hallo Byte09,

habe die Version aus dem Git jetzt installiert, kann aber nicht entdecken, an welcher Stelle ich die Uhrzeit für einzelne Aktionen setzen kann. Muss ich dazu noch ein Attribut pflegen?

Grüße
Torsten

morgen,

setz in dem device das attribut 'MSwitch_Help' mal auf 1. dann hast du vor fast jedem Feld einen Hilfebutton (?).

Help: "Trigger time:"
ZitatTrigger ist das Gerät, oder die Zeit, auf die das Modul reagiert, um andere Devices anzusprechen.
Das Gerät kann aus der angebotenen Liste ausgewählt werden, sobald dieses ausgewählt ist werden weitere Optionen angeboten.
Soll auf mehrereGerät gleichzeitig getriggert werden , so ist dieses ebenfalls möglich. Hierzu muss das Attribut "MSwitch_Expert" auf 1 gesetzt sein und als Auswahl "GLOBAL" erfolgen.

Zeitangaben können ebenso als Trigger genutzt werden, das Format muss wie folgt lauten:
Hierfür stehen folgende Optionen zur Verfügung:

1. switch MSwitch on + execute 'cmd1' at
das komplette Device wird auf "on" geschaltet. Der Zweig "cmd1" wird in allen "device actions" ausgeführt.

2. switch MSwitch off + execute 'cmd2' at
das komplette Device wird auf "off" geschaltet. Der Zweig "cmd2" wird in allen "device actions" ausgeführt.

3. execute 'cmd1' only at
es werden alle "cmd1" Zweige aller "device actions" ausgeführt

4. execute 'cmd2' only at
es werden alle "cmd2" Zweige aller "device actions" ausgeführt

5. execute 'cmd1+cmd2' only at
es werden alle "cmd1" und "cmd2" Zweige aller "device actions" ausgeführt

Die Syntax muss wie folgt lauten:
[STUNDEN:MINUTEN|TAGE|IDx,y]
Tage werden von 1-7 gezählt, wobei 1 für Montag steht, 7 für Sonntag.
Die Angabe der ID ist optional. Wenn eine ID angegeben ist , werden nur 'cmds' ausgeführt, denen eine ID zugewiesen ist. Ist keine ID angegeben , werden nur alle 'cmds' ausgeführt , denen keine ID zugewiesen ist .
Diese Option ist nur in den Feldern "execute cmd1 only at :" , "execute cmd2 only at :" und "execute 'cmd1+cmd2' only at:" möglich.

Die Variable $we ist anstatt der Tagesangabe verwendbar
[STUNDEN:MINUTEN|$we] - Schaltvorgang nur an Wochenenden.
[STUNDEN:MINUTEN|!$we] - Schaltvorgang nur an Werktagen.

Mehrere Zeitvorgaben können aneinandergereiht werden.
[17:00|1][18:30|23] würde den Trigger Montags um 17 Uhr auslösen und Dienstags,Mittwochs um 18 Uhr 30.

Sunset - Zeitangaben können mit folgender Sytax eingebunden werden: z.B:
[{sunset()}] , [{sunrise(+1800)}].

Es ist eine gleichzeitige Nutzung für Trigger durch Zeitangaben und Trigger durch Deviceevents möglich.

Sonderformate:
[?20:00-21:00|5] - Zufälliger Schaltvorgang zwischen 20 Uhr und 21 Uhr am Freitag
[00:02*04:10-06:30] - Schaltvorgang alle 2 Minuten zwischen 4.10 Uhr und 6.30 Uhr

um eine ID setzen zu können muss das MSwitch im 'Expert_Mode' sein. Attribut 'MSwitch_Expert' auf 1 setzen.


Help: priority

Zitat
priority - Auswahl der Reihenfolge der Befehlsabarbeitung. Ein Befehl mit der Nr. 1 wird als erstes ausgeführt , die höchste Nummer zuletzt.
Sollte mehrere Befehle die gleiche Nummer haben , so werden diese Befehle in dargestellter Reihenfolge ausgeführt.

ID - Devices denen eine ID zugewiesen ist , werden in der normalen abarbeitung der Befehle nicht mehr berücksichtigt und somit nicht ausgeführt. Wenn eine ID-Zuweisung erfolgt ist, kann dieser Befehlszweig nur noch über das cmd set DEVICE ID NR on/off erfolgen. Diese Option wird nur in Ausnahmefällen benötigt , wenn die Pipes nicht ausrechend sind um verschiedene Aktionen unter verschiedenen Bedingungen auszuführen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 04 Dezember 2018, 19:29:38
Hallo Byte09,

danke für die zusätzlichen Informationen und Hinweise. Das mit der ID war mir nicht bewußt, aber ist eine elegante Lösung. Habe jetzt mal ein Device umgebaut und werde testen, ob es sich richtig verhält.

EDIT: Test war erfolgreich, aber im LOG sind folgende Meldungen:
2018.12.04 19:39:38 2: RESIDENTS set ZS_zs_AW_Bewohner absent
2018.12.04 19:39:38 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_MSwitch.pm line 1942.
2018.12.04 19:40:42 2: RESIDENTS set ZS_zs_AW_Bewohner home
2018.12.04 19:41:12 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_MSwitch.pm line 6394.


Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Dezember 2018, 05:22:16
Zitat von: ToKa am 04 Dezember 2018, 19:29:38
Hallo Byte09,

danke für die zusätzlichen Informationen und Hinweise. Das mit der ID war mir nicht bewußt, aber ist eine elegante Lösung. Habe jetzt mal ein Device umgebaut und werde testen, ob es sich richtig verhält.

EDIT: Test war erfolgreich, aber im LOG sind folgende Meldungen:
2018.12.04 19:39:38 2: RESIDENTS set ZS_zs_AW_Bewohner absent
2018.12.04 19:39:38 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_MSwitch.pm line 1942.
2018.12.04 19:40:42 2: RESIDENTS set ZS_zs_AW_Bewohner home
2018.12.04 19:41:12 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_MSwitch.pm line 6394.


Beste Grüße
Torsten

hi , die warnings kommen durch einen kleinen Fehler in der Testversion. Ich habe dieses bereits korrigiert und werde die neue Version heute Abend einstellen.
ist aber nicht dramatisch .. und kannst du bis dahin ignorieren.

gruss Byte09

edit: ich habe die korrigierte Version eben eingespielt ( GIT )  . Ich haffe , dass die warnings damit behoben sind, bin mir aber nicht ganz sicher. Probier es halt mal aus.
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 05 Dezember 2018, 23:19:59
Hallo Byte09,

ich werde es mit er neuen Version beobachten, wobei mir jetzt noch dieser Fehler aufgefallen ist:
2018.12.05 23:15:36 1: PERL WARNING: "my" variable $param masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 7301, <$fh> line 3703.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 06 Dezember 2018, 06:13:15
Zitat von: ToKa am 05 Dezember 2018, 23:19:59
Hallo Byte09,

ich werde es mit er neuen Version beobachten, wobei mir jetzt noch dieser Fehler aufgefallen ist:
2018.12.05 23:15:36 1: PERL WARNING: "my" variable $param masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 7301, <$fh> line 3703.

Beste Grüße
Torsten

ich habe diese Fehler in der Testversion ( hoffentlich ) behoben und entsprechende Version in das GIT geladen. Ein weiterrer Fehler dieser Version war leider, das ich die Timeraktualisierung um 00:00:01 versehentlich auskommentiert habeund die Timer somit für den Folgetag nicht aktualisiert wurden. Auch das ist behoben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 Dezember 2018, 12:45:20
Neue Testversion verfügbar , siehe 1. Post.

- Fehler in den Conditions behoben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 Dezember 2018, 06:17:27
Die Version 2.07 ist ab sofort im normalen Fhemupdate enthalten und entspricht somit der Testversion im GIT.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Dezember 2018, 09:55:38
Ab Version 2.08 wir des ein neues Attribut 'MSwitch_Read_Log' geben. Die Funktion ist analog des Notify-Attributes' , d.h es können Logeinträge als Trigger genutzt werden. Genauere Funktionsweise stelle ich in den ersten Post , sobald Ich es als Testversion einspiele.

Da bei Aktivierung erstmal jeder Logeinträge zu einem Aufruf des MSWITCH DEVICES führt ist diese Funktion  mit Bedacht einzusetzen ( wie bei Notify auch ) um die Resourcen zu schonen. D.h nach Möglichkeit nur dann , wenn gewünschtes Ergebniss nicht anders zu erreichen ist.

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Dezember 2018, 09:40:31
die Version 2.08 ist abe sofort über das GIT verfügbar.

Änderungen: siehe 1.Post https://forum.fhem.de/index.php/topic,86199.msg786438.html#msg786438 (https://forum.fhem.de/index.php/topic,86199.msg786438.html#msg786438)

ein 'Downgrade' auf V2.07 ist jederzeit Problemlos möglich.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 Dezember 2018, 07:50:15
V2.08 wird ab sofort über das Fhemupdate verteilt.

Änderungen siehe erste Post imThread.
Derzeit bin ich dabei das Wiki zu überarbeiten , so das es in absehbarer Zeit dem Versionsstand entspricht.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 24 Dezember 2018, 11:01:07
Hallo Byte09

Danke für deine Arbeit am Modul.

Wünsche allen schöne Feiertage

Gruß Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 25 Dezember 2018, 08:45:58
V2.08

ich habe heute morgen leider festgestellt, dass die Version 2.08 einen Fehler enthielt . Dieser hatte zur Folge, dass Zeitfenster die in den Conditions angegeben wurden ( [20:00-06:00] ) nicht richtig ausgewertet wurden , wenn die Datumsgrenze dabei überschritten wurde. Wahrscheinlich ist dieser Fehler schon seit längerem Vorhanden , da ich in diesem Teil des Codes schon länger keine Änderungen mehr vorgenommen habe.

Ich habe dieses geändert und die geänderte Version wird per Update verteilt.

Ich muss aber einräumen , dass ich mir nicht 100% sicher bin , ob ich jetzt alle Variationen abgedeckt habe  :-\. Sollte jemand hier nachwievor ein falsches Verhalten bemerken wäre ein kurzer Hinweis hier klasse.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 Dezember 2018, 07:58:56
Update auf 2.09 verfügbar (SVN)

neu:

- ATTR: MSwitch_Reset_EVT_CMD1_COUNT
- ATTR: MSwitch_Reset_EVT_CMD2_COUNT

- CMD: reset_cmd_count:1,2

Die neuen Attribute werden im Wiki bechrieben.
https://wiki.fhem.de/wiki/MSwitch#Attribute (https://wiki.fhem.de/wiki/MSwitch#Attribute)

gruss Byte09


edit: da war ich wohl etwas knapp. Die Verteilung über Fhemupdate ist erst ab morgen verfügbar.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 Januar 2019, 14:51:07
Änderung der Grundeinstellung bei neu definierten MSwitch-Devices.

mit nächstem Update werde ich die Grundeinstellung dahingehend ändern, das sich ein MSwitchdevice nach der Definition im Notify-Mode befindet. Bisher war dieses der Fullmode.

Diese Änderung, da ich denke, dass 90% der Devices im Fullmode betrieben weren, obwohl wahrscheinlich in ebensovielen Fällen der NotifyMode ausreichend und zielführender ist, zumal dieser auch Resourcenschonender ist.

Bei Bedarf ist der Mode nachwievor über das Attribut 'MSwitch_Mode' umschaltbar.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 05 Januar 2019, 14:40:01
Hallo zusammen und ein gesundes neues Jahr in die Runde,

ich ein kleineres, vielleicht auch nur ein Anzeige, Problem.

Ich hab mir einen Switch erstellt der grundsätzlich auf Dämmerung reagiert. Die einzelnen Aktoren haben noch zeitabhängige Bedingungen.
Irgendwie wird in der 'cmd1' condition die Formatierung geändert.
siehe Bild:

Eigentlich sollte da stehen

[06:00|12345] OR [07:30|67] OR [$EVTPART3] < 5

Sobald ich aber den Button "modify Actions" ändert sich der Eintrag.

VG pflock_y

support info:
Modulversion: 2.09
Datenstruktur: V2.00

----- Devicename -----
Daemmerungsschalter

----- Attribute -----
Attribut room: MSwitch
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Expert: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Debug: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut disable: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Help: 1

----- Trigger -----
Trigger device:  Daemmerung
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: light:.*
Trigger cmd4: light:.*

----- Device Actions -----

Device: Hausnummer-AbsCmd1
cmd1: on
cmd2: off
cmd1 condition: [$EVTPART3] < 5
cmd2 condition: [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: lsLichtkugel-AbsCmd1
cmd1: scene lsSunSetSavanne
cmd2: scene lsAUS
cmd1 condition: [06:00#[wa]12345] OR [07:30#[wa]67] OR [$EVTPART3] < 5
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: pflockys_hue_HUEDevice1-AbsCmd1
cmd1: no_action
cmd2: off
cmd1 condition:
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: test_Dummy-AbsCmd1
cmd1: on
cmd2: off
cmd1 condition: [06:00#[wa]12345] OR [07:30#[wa]67] OR [$EVTPART3] < 5
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Januar 2019, 15:06:29
Zitat von: pflock_y am 05 Januar 2019, 14:40:01
Hallo zusammen und ein gesundes neues Jahr in die Runde,

ich ein kleineres, vielleicht auch nur ein Anzeige, Problem.

Ich hab mir einen Switch erstellt der grundsätzlich auf Dämmerung reagiert. Die einzelnen Aktoren haben noch zeitabhängige Bedingungen.
Irgendwie wird in der 'cmd1' condition die Formatierung geändert.
siehe Bild:

Eigentlich sollte da stehen

[06:00|12345] OR [07:30|67] OR [$EVTPART3] < 5

Sobald ich aber den Button "modify Actions" ändert sich der Eintrag.

VG pflock_y

support info:
Modulversion: 2.09
Datenstruktur: V2.00

----- Devicename -----
Daemmerungsschalter

----- Attribute -----
Attribut room: MSwitch
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Expert: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Debug: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut disable: 0
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Help: 1

----- Trigger -----
Trigger device:  Daemmerung
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: light:.*
Trigger cmd4: light:.*

----- Device Actions -----

Device: Hausnummer-AbsCmd1
cmd1: on
cmd2: off
cmd1 condition: [$EVTPART3] < 5
cmd2 condition: [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: lsLichtkugel-AbsCmd1
cmd1: scene lsSunSetSavanne
cmd2: scene lsAUS
cmd1 condition: [06:00#[wa]12345] OR [07:30#[wa]67] OR [$EVTPART3] < 5
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: pflockys_hue_HUEDevice1-AbsCmd1
cmd1: no_action
cmd2: off
cmd1 condition:
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: test_Dummy-AbsCmd1
cmd1: on
cmd2: off
cmd1 condition: [06:00#[wa]12345] OR [07:30#[wa]67] OR [$EVTPART3] < 5
cmd2 condition: [22:30|12347] OR [23:30|56] OR [$EVTPART3] > 4
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


hie ,

hier kommen 2 dinge zueinander :
1 . definitiv ein Fehler im Modul , ich werde das im Laufe des Tages behebn, so das es im morgigen Update vorhanden ist.

2. an dieses stelle funktioniert deine Konfiguration so nicht . deine Angabe [06:00|12345]  würde nur dann Funktionieren , wenn das auslösende event um genau 06:00 eintreffen würde.  da dieses so keinen Sinn ergiebt , kann das Modul das an dieser stelle in von dir angegebener Form auch nicht verarbeiten. Hier muss immer ein Zeitraum definiert sein , in dem das event eintrifft . z.b [06:00-07:00|12345]

gruss Byte09

PS: erklär mir doch bitte mal kurz, was du erreichen möchtest
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 05 Januar 2019, 15:13:38
Zitat
2. an dieses stelle funktioniert deine Konfiguration so nicht . deine Angabe [06:00|12345]  würde nur dann Funktionieren , wenn das auslösende event um genau 06:00 eintreffen würde.  da dieses so keinen Sinn ergiebt , kann das Modul das an dieser stelle in von dir angegebener Form auch nicht verarbeiten. Hier muss immer ein Zeitraum definiert sein , in dem das event eintrifft . z.b [06:00-07:00|12345]

aber die 'cmd2' condition funktionier nach diesem Prinzip, also ohne Zeitraum.

ich revidiere, geht doch nicht. sorry

VG pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Januar 2019, 15:22:53
Zitat von: pflock_y am 05 Januar 2019, 15:13:38
aber die 'cmd2' condition funktionier nach diesem Prinzip, also ohne Zeitraum.

ich revidiere, geht doch nicht. sorry

VG pflock_y

der fix ist im svn eingespielt.

kann nicht funktionieren , da er bei deiner syntax letztendlich gar keine zeit prüft , sondern das modul versucht hieraus ein reading zu machen , welches er zu lesen versucht , aber nicht vorhanden ist . das kannst du ganz gut nachvollziehen , wenn du mal das attribut mswitch_debug auf 1 setzt und dann mit dem button entsprechende configuration anschausst.

sieht bei deiner syntax so aus :
Zitateingehender String:
[10:00|13]

If Anweisung Perl:
if (ReadingsVal('10', '00|13', '00:00:00')){$answer = 'true';} else {$answer = 'false';}

Bedingung ist Wahr und wird ausgeführt

States der geprüften Readings:
Reading: [10:00|13] - Inhalt: undef
Reading nicht vorhanden !

... wie du siehst wird hier nicht auf eine Zeit geprüft, da das Modul nicht mit so einer Syntax 'rechnet' und sie völlig falsch interpretiert . ( ich werde das ggf. demnächst abfangen. ).

wenn ordentlich auf einen zeitraum geprüft wird sieht es so aus:
Zitateingehender String:
[10:00-11:00|13]

If Anweisung Perl:
if (((1546678800 < 1546698120 && 1546698120 < 1546682400) && ((6 == 1) || (6 == 3)))){$answer = 'true';} else {$answer = 'false';}

If Anweisung Perl Klarzeiten:
if (((10:00 < 15:22 && 15:22 < 11:00) && ((6 == 1) || (6 == 3)))){$answer = 'true';} else {$answer = 'false';}

Bedingung ist nicht Wahr und wird nicht ausgeführt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 05 Januar 2019, 15:33:30
Ah, OK. ich glaub ich habs verstanden.  :o

Danke für die, wieder einmal, schnelle Hilfe!!!!

VG pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Januar 2019, 15:40:20
Zitat von: pflock_y am 05 Januar 2019, 15:33:30
Ah, OK. ich glaub ich habs verstanden.  :o

Danke für die, wieder einmal, schnelle Hilfe!!!!

VG pflock_y

anbei die gefixte version , falls du weiter 'basteln' willst und weisst wie du sie manuell einspielst ?!

ansonsten nochmal kurz bescheid geben . im update ist der fix ab morgen früh .


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 05 Januar 2019, 15:50:34
runtergeladen, eingespielt, funktioniert
;D
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 07 Januar 2019, 20:17:01
Hallo Byte,

es geht noch einmal um die Ausführung bestimmter Actions (ID) aufgrund der trigger time. Mir ist jetzt aufgefallen, dass eine Action mit ID=1 (WLAN on) ausgeführt wird, obwohl die Einträge für trigger time die ID=2 verwenden. Ich habe es nur bemerkt, weil die Action zu ID=1 mit Verzögerung ausgeführt wird und somit diese im "last_exec_cmd" als letzter Eintrag nachvollziehbar drinsteht. Die Action zur ID=2 (Heizung an) wurde aber vorher korrekt ausgeführt.

Hier die raw Definition des device:
defmod ZS_zs_AW_Bewohner_MSw_01 MSwitch ZS_zs_AW_Bewohner # E3_hk_THKV_Heizkoerper_Fenster E1_wz_NW_FritzBox7390
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Debug 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Delete_Delays 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Expert 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Extensions 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Help 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_Devicecmds 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_MSwitchcmds 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_Webcmds 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Inforoom IT-OC->MSwitch
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Lock_Quickedit 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Mode Notify
attr ZS_zs_AW_Bewohner_MSw_01 alias Anwesenheitsabhängige Gerätesteuerung
attr ZS_zs_AW_Bewohner_MSw_01 group MSwitch
attr ZS_zs_AW_Bewohner_MSw_01 icon people_sensor
attr ZS_zs_AW_Bewohner_MSw_01 room IT-OC->MSwitch,Zentrale Steuerung

setstate ZS_zs_AW_Bewohner_MSw_01 active
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-06 21:04:00 .Device_Affected E1_wz_NW_FritzBox7390-AbsCmd1,E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:02:00 .Device_Affected_Details E1_wz_NW_FritzBox7390-AbsCmd1#[NF]wlan#[NF]wlan#[NF]on#[NF]off#[NF]delay2#[NF]delay1#[NF]00#[dp]00#[dp]30#[NF]00#[dp]00#[dp]00#[NF][06#[dp]00-01#[dp]30]#[sp]AND#[sp]([ZS_zs_CAL_Urlaub#[dp]state]#[sp]eq#[sp]"none"#[sp]OR#[sp][ZS_zs_CAL_Urlaub#[dp]state]#[sp]eq#[sp]"atHome")#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1#[NF]tmHeating#[NF]tmEnergySaveHeating#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][18#[dp]30-20#[dp]45]#[sp]AND#[sp][ZS_zs_AW_Bewohner#[dp]state]#[sp]eq#[sp]"home"#[NF][ZS_zs_AW_X6200W#[dp]presence]#[sp]eq#[sp]"absent"#[NF]0#[NF]0#[NF]1#[NF]2#[NF]#[NF]0#[NF]0#[NF]1
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 19:41:56 .Device_Events no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2018-09-26 13:50:51 .First_init done
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:01:40 .Trigger_cmd_off state:absent
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:01:40 .Trigger_cmd_on state:home
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:00:59 .Trigger_condition
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:01:40 .Trigger_off no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:01:40 .Trigger_on no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:00:59 .Trigger_time on~off~ononly[06#[dp]00|!$we|1][08#[dp]00|$we|1][20#[dp]05|!$we|2][19#[dp]15|$we|2]~offonly[00#[dp]30|!$we|1][01#[dp]30|$we|1][21#[dp]00|1234567|2]~onoffonly
setstate ZS_zs_AW_Bewohner_MSw_01 2018-09-26 13:50:51 .V_Check V2.00
setstate ZS_zs_AW_Bewohner_MSw_01 2018-12-03 22:13:00 .sortby none
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:00 EVENT ZS_zs_AW_Bewohner_MSw_01:execute_timer_P3:20:05
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:00 EVTFULL ZS_zs_AW_Bewohner_MSw_01:execute_timer_P3:20:05
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:00 EVTPART1 ZS_zs_AW_Bewohner_MSw_01
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:00 EVTPART2 execute_timer_P3
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:00 EVTPART3 20:05
setstate ZS_zs_AW_Bewohner_MSw_01 2018-12-03 16:54:33 Exec_cmd set E1_wz_NW_FritzBox7390 wlan on
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:00:59 Trigger_device ZS_zs_AW_Bewohner
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:01:40 Trigger_log off
setstate ZS_zs_AW_Bewohner_MSw_01 2018-12-28 18:35:23 incomming lastActivityByDev:rr_Lutz
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 19:41:56 last_event lastActivity:anwesend
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:30 last_exec_cmd set E1_wz_NW_FritzBox7390 wlan on
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 20:05:50 state active



get_config:

#V 2.09
#VS V2.00
#S last_event -> lastActivity:anwesend
#S EVTFULL -> ZS_zs_AW_Bewohner_MSw_01:execute_timer_P3:20:05
#S .Trigger_on -> no_trigger
#S .Trigger_time -> on~off~ononly[06#[dp]00|!$we|1][08#[dp]00|$we|1][20#[dp]05|!$we|2][19#[dp]15|$we|2]~offonly[00#[dp]30|!$we|1][01#[dp]30|$we|1][21#[dp]00|1234567|2]~onoffonly
#S .Device_Events -> no_trigger
#S EVTPART3 -> 20:05
#S state -> active
#S EVENT -> ZS_zs_AW_Bewohner_MSw_01:execute_timer_P3:20:05
#S .Device_Affected_Details -> E1_wz_NW_FritzBox7390-AbsCmd1#[NF]wlan#[NF]wlan#[NF]on#[NF]off#[NF]delay2#[NF]delay1#[NF]00:00:30#[NF]00:00:00#[NF][06:00-01:30] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1#[NF]tmHeating#[NF]tmEnergySaveHeating#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][18:30-20:45] AND [ZS_zs_AW_Bewohner:state] eq "home"#[NF][ZS_zs_AW_X6200W:presence] eq "absent"#[NF]0#[NF]0#[NF]1#[NF]2#[NF]#[NF]0#[NF]0#[NF]1
#S EVTPART2 -> execute_timer_P3
#S .First_init -> done
#S .Trigger_condition ->
#S last_exec_cmd -> set E1_wz_NW_FritzBox7390 wlan on
#S EVTPART1 -> ZS_zs_AW_Bewohner_MSw_01
#S Trigger_device -> ZS_zs_AW_Bewohner
#S .sortby -> none
#S .Trigger_cmd_off -> state:absent
#S Exec_cmd -> set E1_wz_NW_FritzBox7390 wlan on
#S incomming -> lastActivityByDev:rr_Lutz
#S Trigger_log -> off
#S .Trigger_cmd_on -> state:home
#S .Trigger_off -> no_trigger
#S .Device_Affected -> E1_wz_NW_FritzBox7390-AbsCmd1,E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
#S .V_Check -> V2.00
#A MSwitch_Expert -> 1
#A MSwitch_Help -> 1
#A alias -> Anwesenheitsabhängige Gerätesteuerung
#A group -> MSwitch
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Mode -> Notify
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Extensions -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Lock_Quickedit -> 1
#A room -> IT-OC->MSwitch,Zentrale Steuerung
#A MSwitch_Inforoom -> IT-OC->MSwitch
#A icon -> people_sensor


get_support_info:

Modulversion: 2.09
Datenstruktur: V2.00

----- Devicename -----
ZS_zs_AW_Bewohner_MSw_01

----- Attribute -----
Attribut MSwitch_Expert: 1
Attribut MSwitch_Help: 1
Attribut alias: Anwesenheitsabhängige Gerätesteuerung
Attribut group: MSwitch
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Debug: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut room: IT-OC->MSwitch,Zentrale Steuerung
Attribut MSwitch_Inforoom: IT-OC->MSwitch
Attribut icon: people_sensor

----- Trigger -----
Trigger device:  ZS_zs_AW_Bewohner
Trigger time: on off ononly[06:00|!$we|1][08:00|$we|1][20:05|!$we|2][19:15|$we|2] offonly[00:30|!$we|1][01:30|$we|1][21:00|1234567|2] onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: state:home
Trigger cmd4: state:absent

----- Device Actions -----

Device: E1_wz_NW_FritzBox7390-AbsCmd1
cmd1: wlan on
cmd2: wlan off
cmd1 condition: [06:00-01:30] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")
cmd2 condition:
cmd1 delay: 00:00:30
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
cmd1: tmHeating
cmd2: tmEnergySaveHeating
cmd1 condition: [18:30-20:45] AND [ZS_zs_AW_Bewohner:state] eq "home"
cmd2 condition: [ZS_zs_AW_X6200W:presence] eq "absent"
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 2
comment:
cmd1 exit: 0
cmd2 exit: 0


Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 07 Januar 2019, 20:34:50
Hi torsten

Bin bis mitwoch abend im kurzurlaub .... Nur Handy . Schaue mir das somit erst am Donnerstag an .

Gruss aus dem tropical Island [emoji5]
Byte09




Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 07 Januar 2019, 20:54:25
Hallo Byte,

kein Stress, alles OK.

Viel Spaß und gute Erholung im Tropical Island
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 Januar 2019, 09:42:57
Zitat von: ToKa am 07 Januar 2019, 20:54:25
Hallo Byte,

kein Stress, alles OK.

Viel Spaß und gute Erholung im Tropical Island
Torsten

moin,

ich habe mir das gerade mal angeschaut.
was mir aufgefallen ist , ist das deine syntax [06:00|!$we|1] falsch ist.

diese muss so [06:00|!$we|ID1] lauten.

unabhängig davon zeigt das modul hier in der tat ein merkwürdiges verhalten , welches dann eintritt , wenn er nur eine bestimmte id ausführen soll, es aber keinen cmd mit dieser id findet ( entweder weil nicht vorhanden - oder weil dieser aus anderen gründen - conditions -  nicht ausgeführt werden soll ). Im moment ist mir dieses verhalten noch völlig unklar :-\.

ich werde das problem aber im laufe des tages suchen , korrigieren und melde mich dann nochmal.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 Januar 2019, 10:26:53
@ToKa

ich habe das problem gefunden und behoben. Fix wird mit morgigem update verteilt.

bis dahin die korrigierte version im anhang.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 10 Januar 2019, 19:55:48
Hallo Byte09,

Danke für die korrigierte Version und den Hinweis mit der IDx, da hatte ich die Doku falsch interpretiert.

Werde testen und berichten.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 14 Januar 2019, 20:38:36
Hallo Byte09,

Das mit den IDs scheint jetzt zu funktionieren, aber $we bzw !$we scheinen nicht richtig berücksichtigt zu werden. Zumindest wurde die Heizung zur Uhrzeit am Wochenende eingeschaltet.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Januar 2019, 06:39:47
Zitat von: ToKa am 14 Januar 2019, 20:38:36
Hallo Byte09,

Das mit den IDs scheint jetzt zu funktionieren, aber $we bzw !$we scheinen nicht richtig berücksichtigt zu werden. Zumindest wurde die Heizung zur Uhrzeit am Wochenende eingeschaltet.

Beste Grüße
Torsten

hi torsten,

ich habe mir das gerade angeschaut und getestet. Ich kann da keinen Fehler feststellen.
geh doch bitte im Device mal auf 'get active_timer show'. damit bekommst du alle gesetzten Schaltzeiten des Tages angezeigt. Und gib mir doch bitte nochmal die einträge dii du in "execute 'cmd1' at :" und "execute 'cmd1´2' at :" hast . Diewaren im von dir oben geposteten Config noch Fehlerhaft bzgl. der ID. ( oder die "support_info")

gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 15 Januar 2019, 20:57:54
Hallo Byte,

aktuell sehe ich den Wald vor lauter Bäumen nicht mehr. Ich habe den Eindruck, dass nur noch an den at - Zeiten etwas passiert und gar nicht mehr auf die An-/Abwesenheit der Bewohner reagiert wird.

Nachfolgend die gewünschten Daten:
Modulversion: 2.09
Datenstruktur: V2.00

----- Devicename -----
ZS_zs_AW_Bewohner_MSw_01

----- Attribute -----
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut icon: people_sensor
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Include_Webcmds: 0
Attribut group: MSwitch
Attribut MSwitch_Expert: 1
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Inforoom: IT-OC->MSwitch
Attribut MSwitch_Mode: Full
Attribut room: IT-OC->MSwitch,Zentrale Steuerung
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut alias: Anwesenheitsabhängige Gerätesteuerung
Attribut MSwitch_Debug: 1

----- Trigger -----
Trigger device:  ZS_zs_AW_Bewohner
Trigger time: on off ononly[06:00|!$we|ID1][08:00|$we|ID1][18:30|!$we|ID2][19:15|$we|ID2] offonly[00:30|!$we|ID1][01:30|$we|ID1][21:00|1234567|ID2] onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: state:home
Trigger cmd2: state:absent
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: E1_wz_NW_FritzBox7390-AbsCmd1
cmd1: wlan on
cmd2: wlan off
cmd1 condition: [05:59-01:31] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")
cmd2 condition:
cmd1 delay: 00:00:30
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
cmd1: tmHeating
cmd2: tmEnergySaveHeating
cmd1 condition: [18:15-20:45] AND [ZS_zs_AW_Bewohner:state] eq "home"
cmd2 condition: [ZS_zs_AW_X6200W:presence] eq "absent"
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 2
id: 2
comment:
cmd1 exit: 0
cmd2 exit: 0


#V 2.09
#VS V2.00
#S EVTPART3 -> 18:30
#S .Trigger_on -> state:home
#S last_cmd -> 2
#S Trigger_log -> off
#S .Trigger_time -> on~off~ononly[06#[dp]00|!$we|ID1][08#[dp]00|$we|ID1][18#[dp]30|!$we|ID2][19#[dp]15|$we|ID2]~offonly[00#[dp]30|!$we|ID1][01#[dp]30|$we|ID1][21#[dp]00|1234567|ID2]~onoffonly
#S .First_init -> done
#S last_event -> lastActivityByDev:rr_Lutz
#S Trigger_device -> ZS_zs_AW_Bewohner
#S state -> on
#S EVTFULL -> ZS_zs_AW_Bewohner_MSw_01:execute_timer_P6:18:30
#S EVENT -> ZS_zs_AW_Bewohner_MSw_01:execute_timer_P6:18:30
#S .Device_Affected -> E1_wz_NW_FritzBox7390-AbsCmd1,E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
#S .Device_Events -> state:absent state:home no_trigger
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_off -> state:absent
#S last_exec_cmd -> set E3_hk_THKV_Heizkoerper_Fenster tmHeating
#S EVTPART1 -> ZS_zs_AW_Bewohner_MSw_01
#S .sortby -> priority
#S .Device_Affected_Details -> E1_wz_NW_FritzBox7390-AbsCmd1#[NF]wlan#[NF]wlan#[NF]on#[NF]off#[NF]delay2#[NF]delay1#[NF]00:00:30#[NF]00:00:00#[NF][05:59-01:31] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1#[NF]tmHeating#[NF]tmEnergySaveHeating#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][18:15-20:45] AND [ZS_zs_AW_Bewohner:state] eq "home"#[NF][ZS_zs_AW_X6200W:presence] eq "absent"#[NF]0#[NF]0#[NF]2#[NF]2#[NF]#[NF]0#[NF]0#[NF]1
#S .V_Check -> V2.00
#S EVTPART2 -> execute_timer_P6
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A icon -> people_sensor
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Help -> 1
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_Webcmds -> 0
#A group -> MSwitch
#A MSwitch_Expert -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Inforoom -> IT-OC->MSwitch
#A MSwitch_Mode -> Full
#A room -> IT-OC->MSwitch,Zentrale Steuerung
#A MSwitch_Extensions -> 0
#A MSwitch_Lock_Quickedit -> 1
#A alias -> Anwesenheitsabhängige Gerätesteuerung
#A MSwitch_Debug -> 1



EDIT: Habe gerade noch folgende Einträge im log gefunden:

2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 5824.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestroff in substitution (s///) at ./FHEM/98_MSwitch.pm line 5825.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 5826.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5827.
2019.01.15 20:52:36 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 5827.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5828.
2019.01.15 20:52:36 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5828.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5828.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5829.
2019.01.15 20:52:36 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5829.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5829.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 5838.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestron in substitution (s///) at ./FHEM/98_MSwitch.pm line 5839.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 5841.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 5841.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value $detailarray[8] in string ne at ./FHEM/98_MSwitch.pm line 5843.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5848.
2019.01.15 20:52:36 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 5848.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5849.
2019.01.15 20:52:36 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5849.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5849.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5850.
2019.01.15 20:52:36 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5850.
2019.01.15 20:52:36 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 5850.



EDIT2: Habe mal deine debug=2 Funktion genutzt und es sieht so aus, als stimmt da etwas mit den IDs nicht, wenn das Gerät triggert:

Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01 MSwitch_Notif: Befehlsausfuehrung -> set ZS_zs_AW_Bewohner_MSw_01 on state:home 2871
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01: Befehlsausführung -> set ZS_zs_AW_Bewohner_MSw_01 on state:home
Tue Jan 15 21:34:44 2019: -> ----------------------------------------
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01: aufruf on/off -> on
Tue Jan 15 21:34:44 2019: -> ----------------------------------------
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:     device hat die ID E1_wz_NW_FritzBox7390-AbsCmd1 - 1
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:     zulaessige IDS - 0
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:  abbruch -> unzulaessige ID
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:     device hat die ID E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1 - 2
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:     zulaessige IDS - 0
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01:  abbruch -> unzulaessige ID
Tue Jan 15 21:34:44 2019: -> ZS_zs_AW_Bewohner_MSw_01: anzahl der auszufuehrenden befehle -> 0


Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Januar 2019, 21:37:15
ich werde mir das heute abend noch anschauen , wird aber sicher später.

ich muss deine ganzen devices erstmal mit dummys nachbauen , um zu sehen woher die ganzen perlwarnings kommen.

was ich aber auf den ersten blick nicht verstehe ist , warum du feste zeitschalten definierst und dann in den conditions nochmal zeiträume definierst, in denen nur geschaltet werden soll. brauchst du doch nicht , wenn du selber die zeiten fest definierst.

[05:59-01:31] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")

die angezeigten schaltzeiten sind ja erstmal ok ?!

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 15 Januar 2019, 21:53:28
Hallo Byte,

der MSwitch sollte ja einerseits auf die Events und auf at reagieren.

06:00 Uhr --> WLAN anschalten, wenn kein Urlaub oder ich im Homeoffice bin([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")
Bewohner kommen nach Hause --> WLAN anschalten, wenn innerhalb der Uhrzeit [05:59-01:31]
Wenn ich mal nach 01:30 nach Hause komme, muss das WLAN auch nicht mehr angehen

Vielleicht mache ich da was falsch oder zu kompliziert, wobei ich genau wegen der Möglichkeit Dinge zusammenzufassen so toll finde.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Januar 2019, 22:26:40
Zitat von: ToKa am 15 Januar 2019, 21:53:28
Hallo Byte,

der MSwitch sollte ja einerseits auf die Events und auf at reagieren.

06:00 Uhr --> WLAN anschalten, wenn kein Urlaub oder ich im Homeoffice bin([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")
Bewohner kommen nach Hause --> WLAN anschalten, wenn innerhalb der Uhrzeit [05:59-01:31]
Wenn ich mal nach 01:30 nach Hause komme, muss das WLAN auch nicht mehr angehen

Vielleicht mache ich da was falsch oder zu kompliziert, wobei ich genau wegen der Möglichkeit Dinge zusammenzufassen so toll finde.

Beste Grüße
Torsten

ok, ich habe das jetzt alles mal nachgebaut und sehe das grundproblem. Bei auslösung durch den trigger werden KEINE cmds ausgeführt, die ine ID enthalten. Ich meine auch , das das im Wiki steht ( bin mir aber gerade nicht sicher ).

d.H du müsstest noch ein device action anlegen , die bei eintreffen der events auf die entsprechenden IDs umleitet.

ich baue da mal was und poste es dir , kann aber ggf. erst morgen werden.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Januar 2019, 23:10:23
versuch bitte mal diese konfig, ob es geht. bin mir nicht ganz sicher, da du "100" verschiedene bedingungen und zweige drinnen hast, die ich so schnell gar nicht nachbauen kann  ;)

falls nicht sehen wir halt weiter ...

#V 2.09
#VS V2.00
#S last_cmd -> 1
#S .Device_Events -> state:absent state:home no_trigger
#S state -> on
#S EVTPART2 -> state
#S .sortby -> priority
#S Trigger_log -> off
#S EVENT -> state:home
#S EVTPART1 -> ZS_zs_AW_Bewohner
#S EVTFULL -> ZS_zs_AW_Bewohner:state:home
#S last_event -> state:home
#S .Device_Affected -> E1_wz_NW_FritzBox7390-AbsCmd1,E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1,MSwitch_Self-AbsCmd1
#S Trigger_device -> ZS_zs_AW_Bewohner
#S .Device_Affected_Details -> E1_wz_NW_FritzBox7390-AbsCmd1#[NF]wlan#[NF]wlan#[NF]on#[NF]off#[NF]delay2#[NF]delay1#[NF]00:00:30#[NF]00:00:00#[NF][05:59-01:31] AND ([ZS_zs_CAL_Urlaub:state] eq "none" OR [ZS_zs_CAL_Urlaub:state] eq "atHome")#[NF]#[NF]0#[NF]0#[NF]2#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1#[NF]tmHeating#[NF]tmEnergySaveHeating#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][18:15-20:45] AND [ZS_zs_AW_Bewohner:state] eq "home"#[NF][ZS_zs_AW_X6200W:presence] eq "absent"#[NF]0#[NF]0#[NF]3#[NF]2#[NF]#[NF]0#[NF]0#[NF]1#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd_1#[NF]exec_cmd_2#[NF]ID 1,2#[NF]ID 1,2#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S EVTPART3 -> home
#S last_exec_cmd -> set ttt exec_cmd_1 ID 1,2
#S .First_init -> done
#S .Trigger_off -> state:absent
#S .Trigger_cmd_on -> no_trigger
#S .Trigger_condition ->
#S .V_Check -> V2.00
#S .Trigger_on -> state:home
#S .Trigger_cmd_off -> no_trigger
#S .Trigger_time -> on~off~ononly[06#[dp]00|!$we|ID1][08#[dp]00|$we|ID1][18#[dp]30|!$we|ID2][19#[dp]15|$we|ID2]~offonly[00#[dp]30|!$we|ID1][01#[dp]30|$we|ID1][21#[dp]00|1234567|ID2]~onoffonly
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A alias -> Anwesenheitsabhängige Gerätesteuerung
#A group -> MSwitch
#A MSwitch_Expert -> 1
#A room -> IT-OC->MSwitch,Zentrale Steuerung
#A MSwitch_Extensions -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Debug -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Inforoom -> IT-OC->MSwitch
#A icon -> people_sensor
#A MSwitch_Help -> 1


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 16 Januar 2019, 20:08:43
Hallo Byte,

habe Deinen config ausprobiert und es funktioniert soweit ich das jetzt mit den triggern (anwesend/abwesend) testen konnte. Die Zeitsteuerung steht noch aus...

Im Log sind aber weitere Fehlermeldungen:
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 8723.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value $new{"ZS_zs_AW_Bewohner_MSw_01-AbsCmd1"} in numeric comparison (<=>) at ./FHEM/98_MSwitch.pm line 8730.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3696.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3696.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3698.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3698.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3717.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3717.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3719.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3719.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3728.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3728.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3730.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3730.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3774.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 3988.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 4047.
2019.01.16 19:55:30 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 4098.
2019.01.16 19:55:30 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 4122.
2019.01.16 19:55:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4270.


Das mit dem Exec_cmd ist eine feine Sache... man was Dein Modul alles kann, ob ich das jemals verstehe?
Beim Nachbauen Deiner config ist mir allerdings zunächst ein Fehler unterlaufen in der Schreibweise beim Exec_cmd_1 ID1 - ich habe das Leerzeichen vergessen. Nach dem trigger war dann mein fhem tot und im log waren folgende Meldungen:

2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 1855.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommandChain" at ./FHEM/98_MSwitch.pm line 6262.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::AnalyzeCommand" at fhem.pl line 1070.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::CommandSet" at fhem.pl line 1224.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::DoSet" at fhem.pl line 1887.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Set" at fhem.pl line 3652.
2019.01.16 19:35:57 1: PERL WARNING: Deep recursion on subroutine "main::MSwitch_Exec_Notif" at ./FHEM/98_MSwitch.pm line 1149.


Wäre gut, wenn dieser Fehler abgefangen bzw. der config Fehler dem Anwender angezeigt würde.

Beste Grüße und vielen Dank!
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Januar 2019, 21:02:24
schön das es soweit geht .

ZitatDas mit dem Exec_cmd ist eine feine Sache... man was Dein Modul alles kann, ob ich das jemals verstehe?
Beim Nachbauen Deiner config ist mir allerdings zunächst ein Fehler unterlaufen in der Schreibweise beim Exec_cmd_1 ID1 - ich habe das Leerzeichen vergessen. Nach dem trigger war dann mein fhem tot und im log waren folgende Meldungen:

ich muss gestehen das mir dieser Fehler gestern auch aufgefallen ist , mit selbem Ergebniss. Ich habe das in meiner Version bereits behoben und wollte Sie gestern eigentlich noch einspielen - habe dann aber noch ein/zwei andere Dinge gefunden , die ich noch ändern möchte.

Ist aber in jedem Fall mit dem nächsten Update behoben. Danke für den Hinweis!

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 17 Januar 2019, 18:41:05
Hallo  Byte,

die at-Steuerung funktioniert auch - somit sind meine Anforderung prima umsetzbar. Vielen Dank für Deine Untersützung und Mühe!

Kann man eigentlich mehrere Actions mit exec_cmd verwenden? Dann könnte ich nämlich das Triggern ID 1 und ID 2 trennen und dabei die Uhrzeiten aus den Actions mit ID1 / ID2 rausnehmen bzw. in die exec_cmd Actions einbauen, da diese ja nur für die trigger notwendig sind und nicht für die at-Ausführung. Darüber hattest Du Dich ja schon gewundert.

Im übrigen ist mir aufgefallen, dass du bei den Zeit-conditions auf < und > prüfst, so dass bei einem at 06:00 und einer condition [06:00-08:00] in der action die Bedingung falsch wird. Ich persönlich fände ein <= und >= logischer.

Eine weitere Idee / Frage habe ich noch im Kontext meiner resident / roommate Devices. Diese haben ja noch eine Reihe anderer Statuswerte, die ich ab und an auch noch zum Auslösen verwende. Wäre also genial, wenn in einem MSwitch nicht nur zwei cmd verfügbar wären, sondern eine parametrierbare Anzahl, die dann jedes durch einen anderen trigger-Wert ausgelöst werden. Damit liese sich einem MSwitch alles unterbringen...

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 17 Januar 2019, 19:14:23
Hi,

schön das es klappt !

ZitatIm übrigen ist mir aufgefallen, dass du bei den Zeit-conditions auf < und > prüfst, so dass bei einem at 06:00 und einer condition [06:00-08:00] in der action die Bedingung falsch wird. Ich persönlich fände ein <= und >= logischer.

da ist was dran , werde ich ändern.

ZitatEine weitere Idee / Frage habe ich noch im Kontext meiner resident / roommate Devices. Diese haben ja noch eine Reihe anderer Statuswerte, die ich ab und an auch noch zum Auslösen verwende. Wäre also genial, wenn in einem MSwitch nicht nur zwei cmd verfügbar wären, sondern eine parametrierbare Anzahl, die dann jedes durch einen anderen trigger-Wert ausgelöst werden. Damit liese sich einem MSwitch alles unterbringen...

das hätte ich selber gerne schon einige male gehabt. Das Modul entstand leider aus einem ursprünglich anderen Modul , mit einer komplett anderen Konzeption . Daher habe ich mich bisher noch nicht so richtig daran 'getraut' . Ich werde das ggf. die Tage mal angehen - zumindest testweise um zu schaue wie aufwendig das wird. Wird aber nicht von heuta auf morgen , da ich die kommenden 14 Tage beruflich erstmal nicht zu Hause bin.

ZitatKann man eigentlich mehrere Actions mit exec_cmd verwenden? Dann könnte ich nämlich das Triggern ID 1 und ID 2 trennen und dabei die Uhrzeiten aus den Actions mit ID1 / ID2 rausnehmen bzw. in die exec_cmd Actions einbauen, da diese ja nur für die trigger notwendig sind und nicht für die at-Ausführung. Darüber hattest Du Dich ja schon gewundert.

hier werde ich noch nicht ganz schlau draus. Derezeit kannst du ja die zweige cmd1 und cmd2 separat durch einen trrigger auslösen und eine verteilung auf ID vornehmen , wie in deiner config. letztendlich kannst du ja auch aufz.B .* triggern und die vertwilung dann erst auf eine ID vornehmen, abhängig von dem eingetroffenen Event in den conditions bei der verteilung. Actions mit ID kannst du im Grunde unbegrenst anlegen.

gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 17 Januar 2019, 20:06:07
@ToKa

ich habe mir hierzu
ZitatEine weitere Idee / Frage habe ich noch im Kontext meiner resident / roommate Devices. Diese haben ja noch eine Reihe anderer Statuswerte, die ich ab und an auch noch zum Auslösen verwende. Wäre also genial, wenn in einem MSwitch nicht nur zwei cmd verfügbar wären, sondern eine parametrierbare Anzahl, die dann jedes durch einen anderen trigger-Wert ausgelöst werden. Damit liese sich einem MSwitch alles unterbringen...
nochmal kurz gedanken gemacht.

ich werde dir morgen eine Testversion zukommen lassen , in der du per attribut eine Funktion zuschalten kannst , die als 'weiche' fungieren wird in der Form:

Event X -> cmd1 ID 1
Event Y -> cmd2 ID 2
etc.

kannst du dir dann mal anschuen und testen ob das Funktional ist.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 17 Januar 2019, 23:03:43
Hallo Byte,

danke für die schnelle Rückmeldung zu meiner Idee und der Trigger auf mehr als zwei Werte. Auf .*  und conditions hätte ich auch selber kommen können...

Die neue Version werde ich gerne testen.

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 Januar 2019, 15:42:07
neue Testversion über GIT verfügbar ( siehe 1. Post ).
die Beschreibung im 1.Post werde ich im Laufe des Tages noch aktualisieren.

Ein 'downgrade' auf V2.09 (SVN) ist problemlos möglich , in Diesem Fall muss aber in allen Devices vorher das Attribut 'MSwitch_Event_Id_Distributor' gelöscht werden, falls es gesetzt wurde.

gruss Byte09

@ToKa

Die von dir gewünschte Umsetzung ist mit dieser Version möglich . Ich habe das ganze nur als einstellbare 'cmd-Umleitung' angelegt, da damit der selbe Zweck erfüllt wird, es aber deutlich weniger Aufwand war.
Hätte ich reale weitere cmd's ausser den vorhandenen 2 angelegt, wäre das eine Riesenaufwand (und somit fast unabsehbare Fehlerquellen) - gerade in Bezug auf das Web-Frontend - gewesen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 Januar 2019, 09:31:32
ich habe die Version 2.1 eben in das SVN gestellt . Somit wird sie ab morgen früh mit dem Fhemupdate verteilt.

comandref und Wiki habe ich entsprechend aktualisiert.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 19:17:33
Guten Abend alle zusammen,

das problem sitzt bestimmt wieder 50cm vorm Bildschirm  :-[

Ich probier folgendes
     switch MSwitch on + execute 'cmd1' at : [00:30*05:00-09:00][00:30*15:00-22:00]
das das nicht geht ist wahrscheinlich logisch, da die Syntax völliger Blödsinn ist.

Ich wollte eigentlich nur eine Pumpe zwischen 5 und 9 Uhr alle 30 Minuten einschalten und zwischen 15 und 22 Uhr auch alle 30 Minuten einschalten. Im device steht lediglich on-for-timer 300


grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 19:29:56
Zitat von: pflock_y am 22 Januar 2019, 19:17:33
Guten Abend alle zusammen,

das problem sitzt bestimmt wieder 50cm vorm Bildschirm  :-[

Ich probier folgendes
     switch MSwitch on + execute 'cmd1' at : [00:30*05:00-09:00][00:30*15:00-22:00]
das das nicht geht ist wahrscheinlich logisch, da die Syntax völliger Blödsinn ist.

Ich wollte eigentlich nur eine Pumpe zwischen 5 und 9 Uhr alle 30 Minuten einschalten und zwischen 15 und 22 Uhr auch alle 30 Minuten einschalten. Im device steht lediglich on-for-timer 300


grüße
pflock_y

nein, ist ein 'problem' des moduls. Ich bin bisher nicht auf die idee gekommen , dass 2 zeitbereiche für ein cmd definiert werden könntet. somit wertet das modul das einfach nicht aus. Ich werde da ändern , geht aber frühestens am freitag , da ich erst dann wieder zuhause bin.

kurzfristige lösung: setze das ganze device in den notify-mode und teile die zeitbereiche auf in cmd1 und cmd2 - entsprechende befehle dann in den achtionen auch in beide zweige setzte. ( du hast dann halt im device nur nicht die on/off ansicht ).

ab dem wochenende wird es dann wie gewünscht gehen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 19:42:38
nachtrag :

ich habe mir das eben nochmal angeschaut - etwas schwierig , da ich nur über handy zugriff habe - ich fürchte aber , dass sich hier mit der letzten modulversion ein fehler eingeschlichen hat und die funktion gar nicht richtig funktioniert.

leider komme ich - wie gesagt - erst am freitag dazu , das zu kontrollieren und ggf. zu fixen.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 19:46:58
Super danke für die Antwort, ich hatte wieder an mir gezweifelt.  ::)

keinen Stress, Freitag reicht vollkommen.

Zitat
kurzfristige lösung: setze das ganze device in den notify-mode und teile die zeitbereiche auf in cmd1 und cmd2 - entsprechende befehle dann in den achtionen auch in beide zweige setzte. ( du hast dann halt im device nur nicht die on/off ansicht ).

das mach ich bis dahin.

Eine Frage hab ich noch.
Ich habe eine "at" welches so aussieht:

defmod mustLeaveatScool at *07:25 {if (!($we)) {fhem("set WZ_Tablet ttsMsg Ihr müsst jetzt los. Die Fahrt dauert heute circa [Traffic:duration_in_traffic_min:d] Minuten. Ihr solltet euch beeilen! Viel Spaß in der Schule und bei der Arbeit");;} }

Die Uhrzeit kann ich über mein Tablet auf dem FTUI läuft so andern:

<div class="top-space orange big"
            data-type="datetimepicker" data-device="mustLeaveatScool"
              data-get="TIMESPEC" data-set-value="*$v" data-cmd="modify"
              data-step="5"
              data-datepicker="false" data-format="H:i">
            </div>
            <div class="small"
            data-type="checkbox" data-device='mustLeaveatScool'
                data-get-on="!off" data-get-off="inactive"
                data-set-on="active" data-set-off="inactive"
                data-on-background-color="#32cd32">
            </div>


Nun zur Frage. Geht das auch mit MSwitch?
Hintergedanke ist hierbei noch mehr Geräte mit noch mehr Aktionen einzubauen.


dank
und
grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 19:49:13
Zitat von: Byte09 am 22 Januar 2019, 19:42:38
nachtrag :

ich habe mir das eben nochmal angeschaut - etwas schwierig , da ich nur über handy zugriff habe - ich fürchte aber , dass sich hier mit der letzten modulversion ein fehler eingeschlichen hat und die funktion gar nicht richtig funktioniert.

leider komme ich - wie gesagt - erst am freitag dazu , das zu kontrollieren und ggf. zu fixen.

gruss Byte09


bist heute Vormittag hat das:
   [00:30*05:00-22:00]
wunderbar funktioniert.

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 19:59:03
Zitat von: pflock_y am 22 Januar 2019, 19:49:13
bist heute Vormittag hat das:
   [00:30*05:00-22:00]
wunderbar funktioniert.

ok , hatte echt probleme das auf dem handy richtig zu sehen - dann ist ja gut , kein fehler sondern nur die unvollständige abfrage auf mehrere bereiche ;-)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 20:00:32
Zitat von: pflock_y am 22 Januar 2019, 19:46:58
Super danke für die Antwort, ich hatte wieder an mir gezweifelt.  ::)

keinen Stress, Freitag reicht vollkommen.

das mach ich bis dahin.

Eine Frage hab ich noch.
Ich habe eine "at" welches so aussieht:

defmod mustLeaveatScool at *07:25 {if (!($we)) {fhem("set WZ_Tablet ttsMsg Ihr müsst jetzt los. Die Fahrt dauert heute circa [Traffic:duration_in_traffic_min:d] Minuten. Ihr solltet euch beeilen! Viel Spaß in der Schule und bei der Arbeit");;} }

Die Uhrzeit kann ich über mein Tablet auf dem FTUI läuft so andern:

<div class="top-space orange big"
            data-type="datetimepicker" data-device="mustLeaveatScool"
              data-get="TIMESPEC" data-set-value="*$v" data-cmd="modify"
              data-step="5"
              data-datepicker="false" data-format="H:i">
            </div>
            <div class="small"
            data-type="checkbox" data-device='mustLeaveatScool'
                data-get-on="!off" data-get-off="inactive"
                data-set-on="active" data-set-off="inactive"
                data-on-background-color="#32cd32">
            </div>


Nun zur Frage. Geht das auch mit MSwitch?
Hintergedanke ist hierbei noch mehr Geräte mit noch mehr Aktionen einzubauen.


dank
und
grüße
pflock_y

ja klar geht das , müssten wir aber auch auf freitag vertagen - zumindest von meiner seite - sonst mache ich dir nur blödsinnige angabe - wegen handy. sry.

edit: muss doch nochmal nachfragen . was genau willst du mit mswitch umsetzen ? im grunde das at ersetzen ?  .. da wird doch eine feste zeit definiert ( 7.25 ) ? welche zeit änderst du denn über FTUI  ?

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 20:15:38
ja alles gut, mach entspannt, wie schon gesagt Freitag reich vollkommen!!!!

Besten Dank
pflock_y

P.S
Zitat
kurzfristige lösung: setze das ganze device in den notify-mode und teile die zeitbereiche auf in cmd1 und cmd2 - entsprechende befehle dann in den achtionen auch in beide zweige setzte. ( du hast dann halt im device nur nicht die on/off ansicht ).

funktioniert!!!!!
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 20:19:17
Zitat von: pflock_y am 22 Januar 2019, 20:15:38
ja alles gut, mach entspannt, wie schon gesagt Freitag reich vollkommen!!!!

Besten Dank
pflock_y

P.S
funktioniert!!!!!

muss doch nochmal nachfragen . was genau willst du mit mswitch umsetzen ? im grunde das at ersetzen ?  .. da wird doch eine feste zeit definiert ( 7.25 ) ? welche zeit änderst du denn über FTUI  ?

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 20:22:59
ja, nein
die Zeit kann ich über meine Tablet UI ändern


            data-get="TIMESPEC" data-set-value="*$v" data-cmd="modify"


sieht dann in der GUI aus wie im Bild

Also ist die Zeit sozusagen "dynamisch"
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Januar 2019, 20:28:17
Zitat von: pflock_y am 22 Januar 2019, 20:22:59
ja, nein
die Zeit kann ich über meine Tablet UI ändern


            data-get="TIMESPEC" data-set-value="*$v" data-cmd="modify"


sieht dann in der GUI aus wie im Bild

Also ist die Zeit sozusagen "dynamisch"

ah , ok ... jetzt verstehe ich es . Das muss ich mir anschauen . denke , dass es geht . um sicher zu sein muss ich es aber nachbauen und schauen wie das mswitch dann konfiguriert sein muss .

ich melde mich dazu am WE !


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 22 Januar 2019, 20:30:10
wär super wenns klappt!!!

Nochmals danke und nen schönen Restabend!!

pflock_y

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 Januar 2019, 17:15:44
Zitat von: Byte09 am 22 Januar 2019, 19:29:56
nein, ist ein 'problem' des moduls. Ich bin bisher nicht auf die idee gekommen , dass 2 zeitbereiche für ein cmd definiert werden könntet. somit wertet das modul das einfach nicht aus. Ich werde da ändern , geht aber frühestens am freitag , da ich erst dann wieder zuhause bin.

kurzfristige lösung: setze das ganze device in den notify-mode und teile die zeitbereiche auf in cmd1 und cmd2 - entsprechende befehle dann in den achtionen auch in beide zweige setzte. ( du hast dann halt im device nur nicht die on/off ansicht ).

ab dem wochenende wird es dann wie gewünscht gehen.

gruss Byte09

ich habe das problem behoben und soeben eine neue Version in das SVN geladen. Wird mit morgigem Update verteilt, ansonsten bis dahin im Anhang.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 24 Januar 2019, 20:43:38
 ::) ist heut schon Freitag  ::)

;D
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 Januar 2019, 21:40:57
Zitat von: pflock_y am 24 Januar 2019, 20:43:38
::) ist heut schon Freitag  ::)

;D


... einen tag früher zuhause  ;) , aber den rest schaue ich mir erst morgen an .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: ChrisW am 01 Februar 2019, 15:12:01
Wie kann ich MSwitch mit allen Optionen wieder aus einem Backup einspielen ?
Habe den code auf der fhem.cfg genommen und den Ordner in FHEM/MSwitch  Scheint aber nicht zu klappen
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 Februar 2019, 15:18:28
Zitat von: ChrisW am 01 Februar 2019, 15:12:01
Wie kann ich MSwitch mit allen Optionen wieder aus einem Backup einspielen ?
Habe den code auf der fhem.cfg genommen und den Ordner in FHEM/MSwitch  Scheint aber nicht zu klappen

hi,

auszug aus dem wiki:
ZitatDas define eines MSwitch Devices generiert lediglich eine 'leere Hülle'. Alle relevante Einstellungen werden in Readings und/oder Hashes gespeichert. Daher stehen relevanten Daten nicht in der fhem.cfg! Vielmehr finden sich diese Daten in der Datei fhem.save (die Speicherung erfolgt durch den Befehl Fhemsave).

des beste ist grundsätzlich für mswitch devices ein seperates backup zu erstelln, geht in jedem mswitch mit:

set MSwitch_backup
Erstellt eine Backup-Datei aller MSwitch Devices unter ./fhem/MSwitch_backup.cfg.
Daten dieser Datei können im Bedarfsfall für einzelne oder gleichzeitig alle MSwitch Devices wieder zurück gespielt (hergestellt) werden
.

diese kann in jedem device dann wieder 'geladen' werden:
Zitatget restore_MSwitch_data [<this_device><all_devices>]

this_device - Stellt die Daten des Devices aus der Backupdatei wieder her, sofern diese in der Backupdatei gefunden werden (gesucht wird hier nach dem Namen des Devices).
all_devices - Stellt die Daten aller MSwitch Devices wieder her, sofern diese in der Backupdatei vorhanden sind. Diese Aktion kann einige Zeit in Anspruch nehmen und wird daher im Hintergrund (nonblocking) ausgeführt. Nach Beendigung erfolgt eine Benachrichtigung.

Die Devices sind nach einem Restore funktionsfähig. Empfohlen wird ein Neustart von FHEM.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 März 2019, 20:03:49
Ich bin eben darauf aufmerksam gemacht worden , das es im Modul zu Fehlern kommt,wenn 'affected devices' einen "." im Namen haben . ( Nur unter bestimmten Voraussetzungen ).

Ich werde das Problem morgen beheben und einen entsprechenden Fix einchecken.

gruss Byte09

edit 9.8.19 06.50 : soeben eingechecked und mit dem Update ab 08.00 Uhr verfügbar.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 März 2019, 17:29:09
mit morgigem Update gibt es ein neuer Reading 'last_activation_by'.
Dieses beinhaltet den letzten Auslöser des Mswitches und kann folgende Werte annehmen:

da bei mir Mswitches schonsehr komplex sind und je nach Auslöser z.T unterschiedlich reagieren (müssen) brauchte ich diese Unterscheidungsmöglichkeit für den Eigengebrauch.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 März 2019, 18:34:59
ich habe seit heutigem Fhemupdate das problem, das der Aufruf eines MSwitch-devices im Fhemweb ungewöhnlich lange dauert.

Bisher habe ich nur geschaut, ob es mit dem MSwitch-Update von heute morgen zusammenhängt, das kann ich aber ausschliessen.

Kann das ggf. jemand bestätigen  ?


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: det. am 12 März 2019, 19:33:47
Ja, das ist so. Aber wegen befürchtetem shitstorm und meinem trotzdem hinreichend schnellem NUC habe ich mich zurückgehalten, aber wenn Du so konkret fragst.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 März 2019, 19:37:39
Wieso denn shitstorm ???  .... sicher nicht in diesem thread .

Dank dir für die Info.  Da muss ich morgen mal schauen.... habe einen Verdacht.

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 März 2019, 19:49:27
es liegt definitiv an der 'AttrTemplate.pm' vom 10.3.19.

keine Ahnung, was dort geändert wurde, zeigt aber wohl auch unschöne effekte in anderen Zusammenhängen.
ich werde erstmal abwarten , ob dort ggf. nochmal nachgebessert wird.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 März 2019, 19:55:42
rudolf hat eben eine neue Version eingescheckt :
https://forum.fhem.de/index.php/topic,98465.msg918235.html#msg918235 (https://forum.fhem.de/index.php/topic,98465.msg918235.html#msg918235)

ich habe diese eben probiert, damit scheint das Problem hier behoben mit (morgigem Update)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: DeeSPe am 28 März 2019, 11:38:39
Hier ein Minipatch um folgenden Warnungen abzustellen:
Zitat2019.03.28 11:19:21.425 1: PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/(.*)({ <-- HERE  )(.*)(\$we)( })(.*)/ at ./FHEM/98_MSwitch.pm line 7062, <$fh> line 888.
2019.03.28 11:19:21.426 1: PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/(.*)({ <-- HERE  )(sunset\([^}]*\)|sunrise\([^}]*\))( })(.*)/ at ./FHEM/98_MSwitch.pm line 7071, <$fh> line 888.


@@ -7059,7 +7059,7 @@
     }

     $x = 0;
-    while ( $condition =~ m/(.*)({ )(.*)(\$we)( })(.*)/ ) {
+    while ( $condition =~ m/(.*)(\{ )(.*)(\$we)( \})(.*)/ ) {
         last if $x > 20;        # notausstieg
         $condition = $1 . " " . $3 . $4 . " " . $6;
     }
@@ -7068,7 +7068,7 @@
     # ersetzte sunset sunrise
     $x = 0;    # notausstieg
     while (
-        $condition =~ m/(.*)({ )(sunset\([^}]*\)|sunrise\([^}]*\))( })(.*)/ )
+        $condition =~ m/(.*)(\{ )(sunset\([^\}]*\)|sunrise\([^\}]*\))( \})(.*)/ )
     {

         $x++;    # notausstieg


Gruß
Dan
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 März 2019, 12:48:48
Schaue ich mir heute abend an. Thx

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 März 2019, 18:34:25
Zitat von: DeeSPe am 28 März 2019, 11:38:39
Hier ein Minipatch um folgenden Warnungen abzustellen:

@@ -7059,7 +7059,7 @@
     }

     $x = 0;
-    while ( $condition =~ m/(.*)({ )(.*)(\$we)( })(.*)/ ) {
+    while ( $condition =~ m/(.*)(\{ )(.*)(\$we)( \})(.*)/ ) {
         last if $x > 20;        # notausstieg
         $condition = $1 . " " . $3 . $4 . " " . $6;
     }
@@ -7068,7 +7068,7 @@
     # ersetzte sunset sunrise
     $x = 0;    # notausstieg
     while (
-        $condition =~ m/(.*)({ )(sunset\([^}]*\)|sunrise\([^}]*\))( })(.*)/ )
+        $condition =~ m/(.*)(\{ )(sunset\([^\}]*\)|sunrise\([^\}]*\))( \})(.*)/ )
     {

         $x++;    # notausstieg


Gruß
Dan

Hi Dan,

danke für den Patch , ist mir wohl 'durchgerutscht'. Habe es eben geändert und ist dann mit dem nächsten Update behoben.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 März 2019, 08:28:47
in der derzeitigen Version  gibt es leider einen Fehler, der dafürsorgt, dass MSwitch-Devices die sich selber Triggern ( nur bei Triggerangabe MSwitch_Self - ist das Device mit echtem Namen angegeben gibt es dieses Problem nicht ) nach Fhemneustart solange nicht Funktioinieren , bis einmal 'modify-trigger' geklickt wird.

Der Effekt tritt daher auf, da bei Fhemstart hier das Internal 'NOTIFYDEV' des Devices falsch belegt wir.

Ich habe diesen Fehler eben behoben und der Patch ist mit morgigem Update verfügbar, wobei ich davon ausgehe, das sowieso die wenigsten User eine entsprechende Konfiguration im Einsatz haben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 April 2019, 18:54:56
Ab der kommenden Modulversion werden von MSwitch-Devices gesetzte 'Delays' und 'Ats' grundsätzlich einen Fhemneustart überstehen ( das ist derzeit nicht der Fall ), ggf. per Attribut abschaltbar ... mal sehen.

Desweiteren werden diese gesetzten Verzögerungen auch einen Hard-Reset überstehen ( Stromausfall / Absturz etc. ). Dieses wird aber in jedem Fall per Attribut 'zugeschaltet' werden müssen, da diese Funktion eine gewisse Systemgrundlast erzeugen, sowie Daten auf sd-card (oder was auch immer) schreiben wird und das daher nur im Bedarfsfall als Option zur Verfügung stehen soll.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: DeeSPe am 04 April 2019, 12:04:15
Zitat von: Byte09 am 28 März 2019, 18:34:25
Hi Dan,

danke für den Patch , ist mir wohl 'durchgerutscht'. Habe es eben geändert und ist dann mit dem nächsten Update behoben.

gruss Thomas

Gerne.
Da ist noch was "durchgerutscht":
Zitat2019.04.04 12:01:22.362 1: PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/(.*)({ <-- HERE  )(sunset\([^}]*\)|sunrise\([^}]*\))( })(.*)/ at ./FHEM/98_MSwitch.pm line 7095, <$fh> line 886.

Fix:
Code (Zeile 7095) Auswählen

    while ($condition =~ m/(.*)(\{ )(sunset\([^}]*\)|sunrise\([^}]*\))( \})(.*)/ )


Gruß
Dan
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 April 2019, 12:50:55
Ich bekomme diese warnings nicht, werde wohl heute abend mal mein perl aktualisieren müssen. 

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: DeeSPe am 04 April 2019, 12:56:05
Zitat von: Byte09 am 04 April 2019, 12:50:55
Ich bekomme diese warnings nicht, werde wohl heute abend mal mein perl aktualisieren müssen. 

Gruss Byte09

Gesendet von meinem SM-G900F mit Tapatalk

Egal ob Du die Warnungen bekommst oder nicht, wenn geschweifte Klammern im Regex matchen sollen, dann müssen Sie escaped werden, ansonsten sind die geschweiften Klammern ja für Repetitions im Regex reserviert.
Ich habe mein Testsystem übrigens auf einer Windows-Workstation.

Gruß
Dan
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 06 April 2019, 12:18:52
Update auf V2.20

ab morgen ist das Update auf Version 2.20 verfügbar.

änderungen:
- diverse Perlwarnings behoben ( danke @ deespe )
- geändertes startverhalten in Bezug auf sich selber Triggernde MSwitchdevices
- gesetzte verzögerte Befehle ( delay,at ) überstehen jetzt einen Fhemneustart

neu: (Funktion zur Erkennung von Sequenzen)
- ATTR MSwitch_Sequenz
- ATTR MSwitch_Sequenz_time
- Reading SEQUENCE <match/no_match>
- Reading SEQUENCE_NUMBER <1-x>

mehr zu den neuen Attributen und Readings werde ich heute Nachmittag im Wiki nachtragen.

die Ankündigung , das delays und ats auch einen Fhemabsturz überstehen , werde ich erst mit der folgenden Version umsetzen.


gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 07 April 2019, 10:05:53
im Anhang ein Beispiel zu der neuen Sequenze-Funktion ( enthalten im heutigen Update ).

die rawdefinitionen legt ein Mswitch und einen dummy im raum code an. Das Mswitch reagiert nur bei eingabe des richtigen codes im dummy ( innerhalb von 7 sekunden )

die beispielcodes, auf die reagiert wird lauten 7901 oder 7902

gruss Byte09

defmod code MSwitch codedummy  # MSwitch_Self
attr code MSwitch_Debug 0
attr code MSwitch_Delete_Delays 1
attr code MSwitch_Expert 0
attr code MSwitch_Extensions 0
attr code MSwitch_Help 0
attr code MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr code MSwitch_Include_Devicecmds 1
attr code MSwitch_Include_MSwitchcmds 0
attr code MSwitch_Include_Webcmds 0
attr code MSwitch_Inforoom MSwitch
attr code MSwitch_Lock_Quickedit 1
attr code MSwitch_Mode Notify
attr code MSwitch_Sequenz codedummy:state:7 codedummy:state:9 codedummy:state:0 codedummy:state:1/codedummy:state:7 codedummy:state:9 codedummy:state:0 codedummy:state:2
attr code MSwitch_Sequenz_time 7
attr code readingList foundcode
attr code room Code
attr code setList foundcode
attr code stateFormat SEQUENCE foundcode

defmod codedummy dummy
attr codedummy room Code
attr codedummy setList 1 2 3 4 5 6 7 8 9 0
attr codedummy webCmd 1:2:3:4:5:6:7:8:9:0

setstate code match CODE_Found_7902
setstate code 2019-04-07 10:01:29 .Device_Affected MSwitch_Self-AbsCmd1,MSwitch_Self-AbsCmd2,MSwitch_Self-AbsCmd3
setstate code 2019-04-07 10:03:40 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]foundcode#[NF]no_action#[NF]CODE_Found_7901#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]SEQUENCE]#[sp]eq#[sp]"match"#[sp]AND#[sp][$SELF#[dp]SEQUENCE_Number]#[sp]eq#[sp]"1"#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]MSwitch_Self-AbsCmd2#[NF]foundcode#[NF]no_action#[NF]CODE_not_found#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]SEQUENCE]#[sp]eq#[sp]"no_match"#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]MSwitch_Self-AbsCmd3#[NF]foundcode#[NF]no_action#[NF]CODE_Found_7902#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]SEQUENCE]#[sp]eq#[sp]"match"#[sp]AND#[sp][$SELF#[dp]SEQUENCE_Number]#[sp]eq#[sp]"2"#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate code 2019-04-07 10:04:12 .Device_Events state:2#[tr]state:4#[tr].*#[tr]state:5#[tr]state:8#[tr]state:9#[tr]state:3#[tr]state:6#[tr]state:7#[tr]state:1#[tr]state:0#[tr]no_trigger
setstate code 2019-04-07 09:36:01 .First_init done
setstate code 2019-04-07 09:45:54 .Trigger_cmd_off no_trigger
setstate code 2019-04-07 09:45:54 .Trigger_cmd_on .*
setstate code 2019-04-07 09:38:34 .Trigger_condition
setstate code 2019-04-07 09:45:54 .Trigger_off no_trigger
setstate code 2019-04-07 09:45:54 .Trigger_on no_trigger
setstate code 2019-04-07 09:38:34 .Trigger_time
setstate code 2019-04-07 09:36:01 .V_Check V2.00
setstate code 2019-04-07 10:04:12 EVENT state:2
setstate code 2019-04-07 10:04:12 EVTFULL codedummy:state:2
setstate code 2019-04-07 10:04:12 EVTPART1 codedummy
setstate code 2019-04-07 10:04:12 EVTPART2 state
setstate code 2019-04-07 10:04:12 EVTPART3 2
setstate code 2019-04-07 10:04:11 SEQUENCE match
setstate code 2019-04-07 10:04:11 SEQUENCE_Number 2
setstate code 2019-04-07 09:38:34 Trigger_device codedummy
setstate code 2019-04-07 09:45:54 Trigger_log on
setstate code 2019-04-07 10:04:12 foundcode CODE_Found_7902
setstate code 2019-04-07 10:04:11 last_activation_by event
setstate code 2019-04-07 10:04:12 last_event state:2
setstate code 2019-04-07 10:04:12 last_exec_cmd set code foundcode CODE_Found_7902
setstate code 2019-04-07 10:04:20 state active

setstate codedummy 2
setstate codedummy 2019-04-07 10:04:11 state 2
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 09 April 2019, 13:05:47
Hallo zusammen,

ich möchte einen Aktor schalten, wenn ich einen speziellen Code erhalte.
Ich habe das bisher über ein DOIF realisiert:
defmod di_Check_Dash_Buttton DOIF ([Dash_Button:Code] eq [xx_CompareDashButton] ) (set Sonoff_TH10_DG ON)
attr di_Check_Dash_Buttton do always
attr di_Check_Dash_Buttton room MQTT

setstate di_Check_Dash_Buttton initialized
setstate di_Check_Dash_Buttton 2019-04-09 12:48:22 Device Dash_Button
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 cmd 0
setstate di_Check_Dash_Buttton 2019-04-09 12:48:22 e_Dash_Button_Code 212
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 mode enabled
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 state initialized


defmod xx_CompareDashButton dummy
attr xx_CompareDashButton room MQTT

setstate xx_CompareDashButton 212
setstate xx_CompareDashButton 2019-04-07 11:48:18 state 212


Ich möchte nun auf MSwitch umstellen und habe den wie folgt definiert:
defmod flexDashboard MSwitch Dash_Button  # Sonoff_TH10_DG
attr flexDashboard MSwitch_Debug 0
attr flexDashboard MSwitch_Delete_Delays 1
attr flexDashboard MSwitch_Expert 0
attr flexDashboard MSwitch_Extensions 0
attr flexDashboard MSwitch_Help 1
attr flexDashboard MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexDashboard MSwitch_Include_Devicecmds 1
attr flexDashboard MSwitch_Include_MSwitchcmds 0
attr flexDashboard MSwitch_Include_Webcmds 0
attr flexDashboard MSwitch_Inforoom MSwitch
attr flexDashboard MSwitch_Lock_Quickedit 1
attr flexDashboard MSwitch_Mode Notify
attr flexDashboard icon Restart
attr flexDashboard room MSwitch

setstate flexDashboard active
setstate flexDashboard 2019-04-09 11:58:07 .Device_Affected Sonoff_TH10_DG-AbsCmd1
setstate flexDashboard 2019-04-09 12:48:12 .Device_Affected_Details Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][Dash_Button#[dp]Code]#[sp]eq#[sp][xx_CompareDashButton]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexDashboard 2019-04-09 12:48:22 .Device_Events *#[tr]transmission-state:incoming publish received#[tr]no_trigger#[tr]Code:212
setstate flexDashboard 2019-04-09 08:52:12 .First_init done
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_cmd_off no_trigger
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_cmd_on transmission-state:incoming publish received
setstate flexDashboard 2019-04-09 09:27:05 .Trigger_condition
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_off no_trigger
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_on no_trigger
setstate flexDashboard 2019-04-09 09:27:05 .Trigger_time
setstate flexDashboard 2019-04-09 08:52:12 .V_Check V2.00
setstate flexDashboard 2019-04-09 12:48:22 EVENT Code:212
setstate flexDashboard 2019-04-09 12:48:22 EVTFULL Dash_Button:Code:212
setstate flexDashboard 2019-04-09 12:48:22 EVTPART1 Dash_Button
setstate flexDashboard 2019-04-09 12:48:22 EVTPART2 Code
setstate flexDashboard 2019-04-09 12:48:22 EVTPART3 212
setstate flexDashboard 2019-04-09 09:27:05 Trigger_device Dash_Button
setstate flexDashboard 2019-04-09 12:06:38 Trigger_log on
setstate flexDashboard 2019-04-09 12:48:22 last_activation_by event
setstate flexDashboard 2019-04-09 12:48:22 last_event Code:212
setstate flexDashboard 2019-04-09 12:07:01 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexDashboard 2019-04-09 12:48:22 state active


Das ganze geht jedoch erst wenn ich beim MSwitch in der 'cmd1' condition:
[Dash_Button:Code] eq "212"
den Vergleichswert manuell eintrage

VG Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 April 2019, 13:46:40
Auf dem Handy etwas unübersichtlich [emoji848]. Schaue ich mir an, wenn ich heute Abend zuhause bin.

Gruß Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 April 2019, 18:24:35
Zitat von: wm1962 am 09 April 2019, 13:05:47
Hallo zusammen,

ich möchte einen Aktor schalten, wenn ich einen speziellen Code erhalte.
Ich habe das bisher über ein DOIF realisiert:
defmod di_Check_Dash_Buttton DOIF ([Dash_Button:Code] eq [xx_CompareDashButton] ) (set Sonoff_TH10_DG ON)
attr di_Check_Dash_Buttton do always
attr di_Check_Dash_Buttton room MQTT

setstate di_Check_Dash_Buttton initialized
setstate di_Check_Dash_Buttton 2019-04-09 12:48:22 Device Dash_Button
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 cmd 0
setstate di_Check_Dash_Buttton 2019-04-09 12:48:22 e_Dash_Button_Code 212
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 mode enabled
setstate di_Check_Dash_Buttton 2019-04-09 12:35:39 state initialized


defmod xx_CompareDashButton dummy
attr xx_CompareDashButton room MQTT

setstate xx_CompareDashButton 212
setstate xx_CompareDashButton 2019-04-07 11:48:18 state 212


Ich möchte nun auf MSwitch umstellen und habe den wie folgt definiert:
defmod flexDashboard MSwitch Dash_Button  # Sonoff_TH10_DG
attr flexDashboard MSwitch_Debug 0
attr flexDashboard MSwitch_Delete_Delays 1
attr flexDashboard MSwitch_Expert 0
attr flexDashboard MSwitch_Extensions 0
attr flexDashboard MSwitch_Help 1
attr flexDashboard MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexDashboard MSwitch_Include_Devicecmds 1
attr flexDashboard MSwitch_Include_MSwitchcmds 0
attr flexDashboard MSwitch_Include_Webcmds 0
attr flexDashboard MSwitch_Inforoom MSwitch
attr flexDashboard MSwitch_Lock_Quickedit 1
attr flexDashboard MSwitch_Mode Notify
attr flexDashboard icon Restart
attr flexDashboard room MSwitch

setstate flexDashboard active
setstate flexDashboard 2019-04-09 11:58:07 .Device_Affected Sonoff_TH10_DG-AbsCmd1
setstate flexDashboard 2019-04-09 12:48:12 .Device_Affected_Details Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][Dash_Button#[dp]Code]#[sp]eq#[sp][xx_CompareDashButton]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexDashboard 2019-04-09 12:48:22 .Device_Events *#[tr]transmission-state:incoming publish received#[tr]no_trigger#[tr]Code:212
setstate flexDashboard 2019-04-09 08:52:12 .First_init done
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_cmd_off no_trigger
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_cmd_on transmission-state:incoming publish received
setstate flexDashboard 2019-04-09 09:27:05 .Trigger_condition
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_off no_trigger
setstate flexDashboard 2019-04-09 12:06:38 .Trigger_on no_trigger
setstate flexDashboard 2019-04-09 09:27:05 .Trigger_time
setstate flexDashboard 2019-04-09 08:52:12 .V_Check V2.00
setstate flexDashboard 2019-04-09 12:48:22 EVENT Code:212
setstate flexDashboard 2019-04-09 12:48:22 EVTFULL Dash_Button:Code:212
setstate flexDashboard 2019-04-09 12:48:22 EVTPART1 Dash_Button
setstate flexDashboard 2019-04-09 12:48:22 EVTPART2 Code
setstate flexDashboard 2019-04-09 12:48:22 EVTPART3 212
setstate flexDashboard 2019-04-09 09:27:05 Trigger_device Dash_Button
setstate flexDashboard 2019-04-09 12:06:38 Trigger_log on
setstate flexDashboard 2019-04-09 12:48:22 last_activation_by event
setstate flexDashboard 2019-04-09 12:48:22 last_event Code:212
setstate flexDashboard 2019-04-09 12:07:01 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexDashboard 2019-04-09 12:48:22 state active


Das ganze geht jedoch erst wenn ich beim MSwitch in der 'cmd1' condition:
[Dash_Button:Code] eq "212"
den Vergleichswert manuell eintrage

Hi,

da liegt daran , das MSwitch mit [xx_CompareDashButton] nichts anfangen kann. es muss ein konkreter verweis auf ein device und ein reading sein.

versuch bitte mal [xx_CompareDashButton:state]

das problem kannst du ganz gut sehen , wenn du das attribut MSwitch_Debug mal auf 1 setzt . dann hast du neben dem Conditionfeld einen Button 'check condition'. wenn du dieses klickst bekommst du eine Fehlermeldung - das dort was nicht passt - so wie du es angegeben hast .

gruss Byte09

PS: der dummy xx_CompareDashButton ist dann im grunde auch nicht nötig. das könntest du direkt in das MSwitch integrieren.

Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 09 April 2019, 19:39:27
Hi Byte09,

mit [xx_CompareDashButton:state]
hats funktioniert, vielen Dank.

Zitat von: Byte09 am 09 April 2019, 18:24:35
PS: der dummy xx_CompareDashButton ist dann im grunde auch nicht nötig. das könntest du direkt in das MSwitch integrieren.
Wie würde da deine Lösung aussehen?

VG Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 April 2019, 20:40:00
Zitat von: wm1962 am 09 April 2019, 19:39:27
Hi Byte09,

mit [xx_CompareDashButton:state]
hats funktioniert, vielen Dank.
Wie würde da deine Lösung aussehen?

VG Wilfried

ich würde direkt im MSwitch-Device das Reading z.B. 'Code' definieren, mit attribut setlist und readingList - jeweils 'Code'.

dann kannst du den sollcode direkt im MSwitch mit set DEVICE Code CODE eingeben.

der Vergleich muss dan halt [$SELF:Code] sein.

( Ich mag es halt sowenig wie möglich devices zu haben )

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 09 April 2019, 21:11:46
Hi Byte09,

danke das mit Code hat super funktioniert.

Jetzt habe ich noch eine weitere Frage: Ich experimentiere noch mit dem Sunset/Sunrise aus https://forum.fhem.de/index.php/topic,99409.0.html (https://forum.fhem.de/index.php/topic,99409.0.html)
und komme da noch nicht richtig voran. Kannst du die Konfiguration mal anschauen, und kann ich den auslösenden Event irgendwie simulieren?

VG Wilfried

defmod flexAtSunset MSwitch flexAtSunset # Sonoff_TH10_DG
attr flexAtSunset MSwitch_Debug 0
attr flexAtSunset MSwitch_Delete_Delays 1
attr flexAtSunset MSwitch_Event_Id_Distributor delay:.*=>cmd1 ID 1\

attr flexAtSunset MSwitch_Expert 1
attr flexAtSunset MSwitch_Extensions 0
attr flexAtSunset MSwitch_Help 1
attr flexAtSunset MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexAtSunset MSwitch_Include_Devicecmds 1
attr flexAtSunset MSwitch_Include_MSwitchcmds 0
attr flexAtSunset MSwitch_Include_Webcmds 0
attr flexAtSunset MSwitch_Inforoom MSwitch
attr flexAtSunset MSwitch_Lock_Quickedit 1
attr flexAtSunset MSwitch_Mode Notify
attr flexAtSunset icon weather_sunrise@yellow
attr flexAtSunset readingList delay
attr flexAtSunset room MSwitch,Rolladen
attr flexAtSunset setList delay:slider,-3600,60,8000
attr flexAtSunset webCmd delay
attr flexAtSunset webCmdLabel sunrise_offset

setstate flexAtSunset active
setstate flexAtSunset 2019-04-08 19:07:21 .Device_Affected Sonoff_TH10_DG-AbsCmd1
setstate flexAtSunset 2019-04-08 19:07:21 .Device_Affected_Details Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexAtSunset 2019-04-09 12:08:28 .Device_Events no_trigger#[tr]*
setstate flexAtSunset 2019-04-08 19:07:21 .First_init done
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_Whitelist undef
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_cmd_off no_trigger
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_cmd_on *
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_condition
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_off no_trigger
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_on no_trigger
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_time on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
setstate flexAtSunset 2019-04-08 19:07:21 .V_Check V2.00
setstate flexAtSunset 2019-04-08 19:07:21 .sysconf undef
setstate flexAtSunset 2019-04-08 19:07:21 Sys_Extension undef
setstate flexAtSunset 2019-04-08 19:10:08 Trigger_device MSwitch_Self
setstate flexAtSunset 2019-04-09 12:08:41 Trigger_log off
setstate flexAtSunset 2019-04-09 20:40:11 delay 2580
setstate flexAtSunset 2019-04-09 20:35:22 last_activation_by event
setstate flexAtSunset 2019-04-09 20:35:22 last_cmd 1
setstate flexAtSunset 2019-04-08 19:07:21 last_event state:active
setstate flexAtSunset 2019-04-09 20:35:22 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexAtSunset 2019-04-09 21:04:50 state active
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 April 2019, 21:21:15
Kann ich leider erst morgen drüber schauen, sonst reißt mir meine Frau mir den Kopf ab [emoji12], sorry.

Ich melde mich morgen dazu.

Gruß Byte09

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 05:27:39
Zitat von: wm1962 am 09 April 2019, 21:11:46
Hi Byte09,

danke das mit Code hat super funktioniert.

Jetzt habe ich noch eine weitere Frage: Ich experimentiere noch mit dem Sunset/Sunrise aus https://forum.fhem.de/index.php/topic,99409.0.html (https://forum.fhem.de/index.php/topic,99409.0.html)
und komme da noch nicht richtig voran. Kannst du die Konfiguration mal anschauen, und kann ich den auslösenden Event irgendwie simulieren?

VG Wilfried

defmod flexAtSunset MSwitch flexAtSunset # Sonoff_TH10_DG
attr flexAtSunset MSwitch_Debug 0
attr flexAtSunset MSwitch_Delete_Delays 1
attr flexAtSunset MSwitch_Event_Id_Distributor delay:.*=>cmd1 ID 1\

attr flexAtSunset MSwitch_Expert 1
attr flexAtSunset MSwitch_Extensions 0
attr flexAtSunset MSwitch_Help 1
attr flexAtSunset MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexAtSunset MSwitch_Include_Devicecmds 1
attr flexAtSunset MSwitch_Include_MSwitchcmds 0
attr flexAtSunset MSwitch_Include_Webcmds 0
attr flexAtSunset MSwitch_Inforoom MSwitch
attr flexAtSunset MSwitch_Lock_Quickedit 1
attr flexAtSunset MSwitch_Mode Notify
attr flexAtSunset icon weather_sunrise@yellow
attr flexAtSunset readingList delay
attr flexAtSunset room MSwitch,Rolladen
attr flexAtSunset setList delay:slider,-3600,60,8000
attr flexAtSunset webCmd delay
attr flexAtSunset webCmdLabel sunrise_offset

setstate flexAtSunset active
setstate flexAtSunset 2019-04-08 19:07:21 .Device_Affected Sonoff_TH10_DG-AbsCmd1
setstate flexAtSunset 2019-04-08 19:07:21 .Device_Affected_Details Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexAtSunset 2019-04-09 12:08:28 .Device_Events no_trigger#[tr]*
setstate flexAtSunset 2019-04-08 19:07:21 .First_init done
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_Whitelist undef
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_cmd_off no_trigger
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_cmd_on *
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_condition
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_off no_trigger
setstate flexAtSunset 2019-04-09 12:08:41 .Trigger_on no_trigger
setstate flexAtSunset 2019-04-08 19:10:08 .Trigger_time on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
setstate flexAtSunset 2019-04-08 19:07:21 .V_Check V2.00
setstate flexAtSunset 2019-04-08 19:07:21 .sysconf undef
setstate flexAtSunset 2019-04-08 19:07:21 Sys_Extension undef
setstate flexAtSunset 2019-04-08 19:10:08 Trigger_device MSwitch_Self
setstate flexAtSunset 2019-04-09 12:08:41 Trigger_log off
setstate flexAtSunset 2019-04-09 20:40:11 delay 2580
setstate flexAtSunset 2019-04-09 20:35:22 last_activation_by event
setstate flexAtSunset 2019-04-09 20:35:22 last_cmd 1
setstate flexAtSunset 2019-04-08 19:07:21 last_event state:active
setstate flexAtSunset 2019-04-09 20:35:22 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexAtSunset 2019-04-09 21:04:50 state active


nein , den Auslöser kannst du nicht simulieren , da es sich ja nicht um ein Event handelt sondern um eine reine Zeitsteuerung ( sonst ginge es mit set DEVICE fakeevent EVENT ) .

Aber du kannst die Schltzeit ja sehen ( nach jeder Änderung des Sliders ) mit 'get flexAtSunset active_timer show' ( das kannst du direkt in der Dropdownliste von 'get' anwählen).
Allerdings geht das nur für zukünftige Zeiten des gleichen Tages, da bereits vergangene Zeiten nicht mehr angelegt werden und dann eine Neuberechnung ( und setzen des Timers ) erst um 00:00:10 erfolgt.

mit dem Slider die Skunden einzustellen war wohl eher Suboptimal , das kannst du ja ggf. auf Minuten Ändern imdem du

[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06:00","08:30")}] gegen
[{sunrise("REAL",(ReadingsVal("flexAtSunset","delay",0)*60),"06:00","08:30")}] ersetzt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 10 April 2019, 09:13:01
Hallo Byte09,

ich komm noch nicht ganz klar.
Sobald ich den Slider bewege wird mein Aktor geschaltet.
2019-04-10 09:11:19 MSwitch flexAtSunset delay: 35
2019-04-10 09:11:19 MSwitch flexAtSunset last_activation_by: event
2019-04-10 09:11:19 MSwitch flexAtSunset EVENT: delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVTFULL: flexAtSunset:delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART1: flexAtSunset
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART2: delay
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART3: 35
2019-04-10 09:11:19 MSwitch flexAtSunset last_event: delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVENT: last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset EVTFULL: flexAtSunset:last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART1: flexAtSunset
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART2: last_activation_by
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART3: event
2019-04-10 09:11:19 MSwitch flexAtSunset last_event: last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset active
2019-04-10 09:11:19 MSwitch flexAtSunset last_exec_cmd: set Sonoff_TH10_DG ON
2019-04-10 09:11:19 MSwitch flexAtSunset last_cmd: 1


Und mit 'get flexAtSunset active_timer show' kommt:
Systemzeit: Wed Apr 10 09:06:57 2019
Schaltzeiten (at - kommandos).


aktive Delays:




und muß ich
setstate flexAtSunset 2019-04-10 09:05:28 Trigger_device MSwitch_Self
oder
setstate flexAtSunset 2019-04-10 09:04:00 Trigger_device no_trigger
einstellen.

VG Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 16:39:21
Zitat von: wm1962 am 10 April 2019, 09:13:01
Hallo Byte09,

ich komm noch nicht ganz klar.
Sobald ich den Slider bewege wird mein Aktor geschaltet.
2019-04-10 09:11:19 MSwitch flexAtSunset delay: 35
2019-04-10 09:11:19 MSwitch flexAtSunset last_activation_by: event
2019-04-10 09:11:19 MSwitch flexAtSunset EVENT: delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVTFULL: flexAtSunset:delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART1: flexAtSunset
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART2: delay
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART3: 35
2019-04-10 09:11:19 MSwitch flexAtSunset last_event: delay:35
2019-04-10 09:11:19 MSwitch flexAtSunset EVENT: last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset EVTFULL: flexAtSunset:last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART1: flexAtSunset
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART2: last_activation_by
2019-04-10 09:11:19 MSwitch flexAtSunset EVTPART3: event
2019-04-10 09:11:19 MSwitch flexAtSunset last_event: last_activation_by:event
2019-04-10 09:11:19 MSwitch flexAtSunset active
2019-04-10 09:11:19 MSwitch flexAtSunset last_exec_cmd: set Sonoff_TH10_DG ON
2019-04-10 09:11:19 MSwitch flexAtSunset last_cmd: 1


Und mit 'get flexAtSunset active_timer show' kommt:
Systemzeit: Wed Apr 10 09:06:57 2019
Schaltzeiten (at - kommandos).


aktive Delays:




und muß ich
setstate flexAtSunset 2019-04-10 09:05:28 Trigger_device MSwitch_Self
oder
setstate flexAtSunset 2019-04-10 09:04:00 Trigger_device no_trigger
einstellen.

VG Wilfried

ich hab mir das gerade angeschaut. es kann nicht gehen , da du im zuge des kopierens/einrichtens/whatever einen teil des MSwitches gelöscht oder verloren hast ( Siehe Bild - fehlender Befehl ). Ich nehme an , als du den 'Sonoff_TH10_DG   ' ausgewählt hast , hast du nicht darauf geachtet , das in diesem Feld mehrere geräte gewählt werden können ( mit strg-maustaste ) und hast nur mit normalem klick dein device gewählt. dabei hast du wohl den anderen Befehl (device) gelöscht  ;)

Du kannst das Manuell einsetzen , oder du übernimmst die folgende config :

#V 2.20
#VS V2.00
#S Trigger_log -> off
#S .sysconf -> undef
#S EVTPART3 -> active
#S .Trigger_time -> on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
#S EVTPART2 -> state
#S .Device_Affected_Details -> MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Device_Events -> no_trigger *
#S .Trigger_Whitelist -> undef
#S .First_init -> done
#S EVTFULL -> flexAtSunset:state:active
#S state -> active
#S .Trigger_on -> no_trigger
#S delay -> 5580
#S .Device_Affected -> MSwitch_Self-AbsCmd1,Sonoff_TH10_DG-AbsCmd1
#S Trigger_device -> MSwitch_Self
#S .Trigger_cmd_on -> *
#S last_activation_by -> event
#S EVENT -> state:active
#S last_event -> state:active
#S .Trigger_off -> no_trigger
#S .V_Check -> V2.00
#S Sys_Extension -> undef
#S .Trigger_condition ->
#S .Trigger_cmd_off -> no_trigger
#S last_cmd -> 1
#S EVTPART1 -> flexAtSunset
#A webCmd -> delay
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A setList -> delay:slider,-3600,60,8000
#A readingList -> delay
#A MSwitch_Mode -> Notify
#A MSwitch_Lock_Quickedit -> 1
#A icon -> weather_sunrise@yellow
#A webCmdLabel -> sunrise_offset
#A MSwitch_Expert -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Extensions -> 0
#A MSwitch_Event_Id_Distributor -> delay:.*=>cmd1 ID 1#[nl]
#A MSwitch_Include_Devicecmds -> 1
#A room -> MSwitch,Rolladen
#A MSwitch_Debug -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Help -> 1


dazu gehst du im device auf get get_config . die dort angezeigte datei ersetzt du gegen die neue ( oben ) unsd save_changes drücken.

danach im modul unbedinbgt einmal 'modify_trigger_device' klicken.

damit sollte der fehlende teil dann vorhanden sein.

alternativ ist es ggf. einfacher das ganze device neu anzulegen , mit der geposteten raw-definition.

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 10 April 2019, 18:02:02
Hallo,
ich hab das Device nun mit deinen RAW-Daten neu angelegt:
defmod flexat MSwitch flexat # MSwitch_Self Sonoff_TH10_DG
attr flexat MSwitch_Debug 0
attr flexat MSwitch_Delete_Delays 1
attr flexat MSwitch_Event_Id_Distributor delay:.*=>cmd1 ID 1\

attr flexat MSwitch_Expert 1
attr flexat MSwitch_Extensions 0
attr flexat MSwitch_Help 1
attr flexat MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexat MSwitch_Include_Devicecmds 1
attr flexat MSwitch_Include_MSwitchcmds 0
attr flexat MSwitch_Include_Webcmds 0
attr flexat MSwitch_Inforoom MSwitch
attr flexat MSwitch_Lock_Quickedit 1
attr flexat MSwitch_Mode Notify
attr flexat icon weather_sunrise@yellow
attr flexat readingList delay
attr flexat room MSwitch,Rolladen
attr flexat setList delay:slider,-3600,60,8000
attr flexat webCmd delay
attr flexat webCmdLabel sunrise_offset

setstate flexat active
setstate flexat 2019-04-10 17:55:12 .Device_Affected MSwitch_Self-AbsCmd1,Sonoff_TH10_DG-AbsCmd1
setstate flexat 2019-04-10 17:55:02 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexat 2019-04-10 17:56:07 .Device_Events no_trigger
setstate flexat 2019-04-10 17:55:02 .First_init done
setstate flexat 2019-04-10 17:55:02 .Trigger_cmd_off no_trigger
setstate flexat 2019-04-10 17:55:02 .Trigger_cmd_on *
setstate flexat 2019-04-10 17:55:18 .Trigger_condition
setstate flexat 2019-04-10 17:55:02 .Trigger_off no_trigger
setstate flexat 2019-04-10 17:55:02 .Trigger_on no_trigger
setstate flexat 2019-04-10 17:55:18 .Trigger_time on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
setstate flexat 2019-04-10 17:55:02 .V_Check V2.00
setstate flexat 2019-04-10 17:56:04 EVENT state:active
setstate flexat 2019-04-10 17:56:04 EVTFULL flexat:state:active
setstate flexat 2019-04-10 17:56:04 EVTPART1 flexat
setstate flexat 2019-04-10 17:56:04 EVTPART2 state
setstate flexat 2019-04-10 17:56:04 EVTPART3 active
setstate flexat 2019-04-10 17:55:18 Trigger_device MSwitch_Self
setstate flexat 2019-04-10 17:55:02 Trigger_log off
setstate flexat 2019-04-10 17:55:29 delay 3120
setstate flexat 2019-04-10 17:56:07 last_activation_by event
setstate flexat 2019-04-10 17:56:07 last_cmd 1
setstate flexat 2019-04-10 17:56:04 last_event state:active
setstate flexat 2019-04-10 17:56:07 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexat 2019-04-10 17:56:07 state active



und mit get get_config
#V 2.20
#VS V2.00
#S last_event -> state:active
#S EVTPART1 -> flexat
#S state -> active
#S last_cmd -> 1
#S .Device_Affected -> MSwitch_Self-AbsCmd1,Sonoff_TH10_DG-AbsCmd1
#S last_activation_by -> event
#S EVTPART2 -> state
#S .Trigger_condition ->
#S .Trigger_time -> on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
#S Trigger_device -> MSwitch_Self
#S .Trigger_off -> no_trigger
#S EVTPART3 -> active
#S .Device_Affected_Details -> MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Trigger_on -> no_trigger
#S Trigger_log -> off
#S .Device_Events -> no_trigger
#S .Trigger_cmd_off -> no_trigger
#S EVENT -> state:active
#S delay -> 3120
#S .First_init -> done
#S .Trigger_cmd_on -> *
#S EVTFULL -> flexat:state:active
#S .V_Check -> V2.00
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A webCmdLabel -> sunrise_offset
#A webCmd -> delay
#A MSwitch_Debug -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 1
#A MSwitch_Inforoom -> MSwitch
#A setList -> delay:slider,-3600,60,8000
#A MSwitch_Event_Id_Distributor -> delay:.*=>cmd1 ID 1#[nl]
#A icon -> weather_sunrise@yellow
#A MSwitch_Extensions -> 0
#A room -> MSwitch,Rolladen
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Include_Devicecmds -> 1
#A readingList -> delay


Sobald ich den Slider bewege oder auf nur auf das Device klicke wird Der Aktor geschalten.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 18:06:49
Zitat von: wm1962 am 10 April 2019, 18:02:02
Hallo,
ich hab das Device nun mit deinen RAW-Daten neu angelegt:
defmod flexat MSwitch flexat # MSwitch_Self Sonoff_TH10_DG
attr flexat MSwitch_Debug 0
attr flexat MSwitch_Delete_Delays 1
attr flexat MSwitch_Event_Id_Distributor delay:.*=>cmd1 ID 1\

attr flexat MSwitch_Expert 1
attr flexat MSwitch_Extensions 0
attr flexat MSwitch_Help 1
attr flexat MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flexat MSwitch_Include_Devicecmds 1
attr flexat MSwitch_Include_MSwitchcmds 0
attr flexat MSwitch_Include_Webcmds 0
attr flexat MSwitch_Inforoom MSwitch
attr flexat MSwitch_Lock_Quickedit 1
attr flexat MSwitch_Mode Notify
attr flexat icon weather_sunrise@yellow
attr flexat readingList delay
attr flexat room MSwitch,Rolladen
attr flexat setList delay:slider,-3600,60,8000
attr flexat webCmd delay
attr flexat webCmdLabel sunrise_offset

setstate flexat active
setstate flexat 2019-04-10 17:55:12 .Device_Affected MSwitch_Self-AbsCmd1,Sonoff_TH10_DG-AbsCmd1
setstate flexat 2019-04-10 17:55:02 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate flexat 2019-04-10 17:56:07 .Device_Events no_trigger
setstate flexat 2019-04-10 17:55:02 .First_init done
setstate flexat 2019-04-10 17:55:02 .Trigger_cmd_off no_trigger
setstate flexat 2019-04-10 17:55:02 .Trigger_cmd_on *
setstate flexat 2019-04-10 17:55:18 .Trigger_condition
setstate flexat 2019-04-10 17:55:02 .Trigger_off no_trigger
setstate flexat 2019-04-10 17:55:02 .Trigger_on no_trigger
setstate flexat 2019-04-10 17:55:18 .Trigger_time on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
setstate flexat 2019-04-10 17:55:02 .V_Check V2.00
setstate flexat 2019-04-10 17:56:04 EVENT state:active
setstate flexat 2019-04-10 17:56:04 EVTFULL flexat:state:active
setstate flexat 2019-04-10 17:56:04 EVTPART1 flexat
setstate flexat 2019-04-10 17:56:04 EVTPART2 state
setstate flexat 2019-04-10 17:56:04 EVTPART3 active
setstate flexat 2019-04-10 17:55:18 Trigger_device MSwitch_Self
setstate flexat 2019-04-10 17:55:02 Trigger_log off
setstate flexat 2019-04-10 17:55:29 delay 3120
setstate flexat 2019-04-10 17:56:07 last_activation_by event
setstate flexat 2019-04-10 17:56:07 last_cmd 1
setstate flexat 2019-04-10 17:56:04 last_event state:active
setstate flexat 2019-04-10 17:56:07 last_exec_cmd set Sonoff_TH10_DG ON
setstate flexat 2019-04-10 17:56:07 state active



und mit get get_config
#V 2.20
#VS V2.00
#S last_event -> state:active
#S EVTPART1 -> flexat
#S state -> active
#S last_cmd -> 1
#S .Device_Affected -> MSwitch_Self-AbsCmd1,Sonoff_TH10_DG-AbsCmd1
#S last_activation_by -> event
#S EVTPART2 -> state
#S .Trigger_condition ->
#S .Trigger_time -> on~off~ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06#[dp]00","08#[dp]30")}]~offonly~onoffonly
#S Trigger_device -> MSwitch_Self
#S .Trigger_off -> no_trigger
#S EVTPART3 -> active
#S .Device_Affected_Details -> MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[ND]Sonoff_TH10_DG-AbsCmd1#[NF]ON#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
#S .Trigger_on -> no_trigger
#S Trigger_log -> off
#S .Device_Events -> no_trigger
#S .Trigger_cmd_off -> no_trigger
#S EVENT -> state:active
#S delay -> 3120
#S .First_init -> done
#S .Trigger_cmd_on -> *
#S EVTFULL -> flexat:state:active
#S .V_Check -> V2.00
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A webCmdLabel -> sunrise_offset
#A webCmd -> delay
#A MSwitch_Debug -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Help -> 1
#A MSwitch_Inforoom -> MSwitch
#A setList -> delay:slider,-3600,60,8000
#A MSwitch_Event_Id_Distributor -> delay:.*=>cmd1 ID 1#[nl]
#A icon -> weather_sunrise@yellow
#A MSwitch_Extensions -> 0
#A room -> MSwitch,Rolladen
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Mode -> Notify
#A MSwitch_Include_Devicecmds -> 1
#A readingList -> delay


Sobald ich den Slider bewege oder auf nur auf das Device klicke wird Der Aktor geschalten.

gib mir bitte mal die daten aus get get_support_info

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 10 April 2019, 19:00:19
Hallo Byte09,

Modulversion: 2.20
Datenstruktur: V2.00

----- Devicename -----
flexat

----- Attribute -----
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut webCmdLabel: sunrise_offset
Attribut webCmd: delay
Attribut MSwitch_Debug: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Help: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut setList: delay:slider,-3600,60,8000
Attribut MSwitch_Event_Id_Distributor: delay:.*=>cmd1 ID 1

Attribut icon: weather_sunrise@yellow
Attribut MSwitch_Extensions: 0
Attribut room: MSwitch,Rolladen
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_Devicecmds: 1
Attribut readingList: delay

----- Trigger -----
Trigger device:  MSwitch_Self
Trigger time: on off ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06:00","08:30")}] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: *
Trigger cmd4: no_trigger

----- Device Actions -----

Device: MSwitch_Self-AbsCmd1
cmd1: reload_timer
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Sonoff_TH10_DG-AbsCmd1
cmd1: ON
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 19:30:40
Zitat von: wm1962 am 10 April 2019, 19:00:19
Hallo Byte09,

Modulversion: 2.20
Datenstruktur: V2.00

----- Devicename -----
flexat

----- Attribute -----
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut webCmdLabel: sunrise_offset
Attribut webCmd: delay
Attribut MSwitch_Debug: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Help: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut setList: delay:slider,-3600,60,8000
Attribut MSwitch_Event_Id_Distributor: delay:.*=>cmd1 ID 1

Attribut icon: weather_sunrise@yellow
Attribut MSwitch_Extensions: 0
Attribut room: MSwitch,Rolladen
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_Devicecmds: 1
Attribut readingList: delay

----- Trigger -----
Trigger device:  MSwitch_Self
Trigger time: on off ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06:00","08:30")}] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: *
Trigger cmd4: no_trigger

----- Device Actions -----

Device: MSwitch_Self-AbsCmd1
cmd1: reload_timer
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Sonoff_TH10_DG-AbsCmd1
cmd1: ON
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


Gruß Wilfried

asche auf mein haupt,sorry mein fehler.

setz bitte das attribut 'MSwitch_generate_Events' auf 0 und schau mal ob es dann geht.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 10 April 2019, 19:47:27
das Attribut war noch nicht angelegt, habs angelegt, aber der Aktor schaltet immer noch,
sogar wenn ich irgendein Attribut verändere

Modulversion: 2.20
Datenstruktur: V2.00

----- Devicename -----
flexat

----- Attribute -----
Attribut MSwitch_Inforoom: MSwitch
Attribut setList: delay:slider,-3600,60,8000
Attribut MSwitch_Event_Id_Distributor: delay:.*=>cmd1 ID 1

Attribut icon: weather_sunrise@yellow
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut room: MSwitch
Attribut MSwitch_Include_Devicecmds: 1
Attribut readingList: delay
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut webCmdLabel: sunrise_offset
Attribut MSwitch_Expert: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut webCmd: delay
Attribut MSwitch_generate_Events: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 0

----- Trigger -----
Trigger device:  MSwitch_Self
Trigger time: on off ononly[{sunrise("REAL",ReadingsVal("flexAtSunset","delay",0),"06:00","08:30")}] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: *
Trigger cmd4: no_trigger

----- Device Actions -----

Device: MSwitch_Self-AbsCmd1
cmd1: reload_timer
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Sonoff_TH10_DG-AbsCmd1
cmd1: ON
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 19:52:00
dann gib bitte nochmal bei 'Add event manually : '    delay:* ein und drücke 'add event'.
dieses event dann bei 'execute 'cmd1'    Trigger MSwitch_Self :' auswählen und 'modify_trigger' drücken.

wenn es dann immer noch nicht geht musst du mir bitte bis morgen zeit geben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 10 April 2019, 20:13:39
wenn ich auf 'modify_trigger' drücke, kommt:
trigger for 'switch Test on + execute on commands' and 'switch Test off + execute off commands' must not both be '*'

Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 April 2019, 20:41:09
Zitat von: wm1962 am 10 April 2019, 20:13:39
wenn ich auf 'modify_trigger' drücke, kommt:
trigger for 'switch Test on + execute on commands' and 'switch Test off + execute off commands' must not both be '*'

Gruß Wilfried

du hast eine private nachricht.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 12 April 2019, 16:12:56
Hallo Byte09,

ich hatte heute etwas zeit und konnte meinem log Meldungen mal auf den Grund gehen.
Häufig kam bei mir:

PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.

Deshalb hab ich stacktrace auf 1 gesetzt

nun kommt das:
2019.04.12 15:58:24 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 15:58:24 1: stacktrace:
2019.04.12 15:58:24 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 15:58:24 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2858)
2019.04.12 15:58:24 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 15:58:24 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 15:58:24 1:     main::DoTrigger                     called by fhem.pl (3984)
2019.04.12 15:58:24 1:     main::Dispatch                      called by ./FHEM/36_JeeLink.pm (865)
2019.04.12 15:58:24 1:     main::JeeLink_Parse                 called by ./FHEM/36_JeeLink.pm (678)
2019.04.12 15:58:24 1:     main::JeeLink_Read                  called by fhem.pl (3698)
2019.04.12 15:58:24 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 15:58:24 3: Entfeuchter_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Entfeuchter_433 off  6416
2019.04.12 16:00:00 3: Umwaelzpumpe_DG_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Umwaelzpumpe_DG on-for-timer 300 6416
2019.04.12 16:00:00 3: Umwaelzpumpe_DG_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Umwaelzpumpe_DG on-for-timer 300 6416
2019.04.12 16:01:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 16:01:45 1: stacktrace:
2019.04.12 16:01:45 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 16:01:45 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2837)
2019.04.12 16:01:45 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 16:01:45 1:     main::DoTrigger                     called by fhem.pl (4686)
2019.04.12 16:01:45 1:     main::readingsEndUpdate             called by fhem.pl (4868)
2019.04.12 16:01:45 1:     main::readingsSingleUpdate          called by ./FHEM/93_FHEM2FHEM.pm (178)
2019.04.12 16:01:45 1:     main::FHEM2FHEM_Read                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 16:01:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 16:01:45 1: stacktrace:
2019.04.12 16:01:45 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 16:01:45 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2858)
2019.04.12 16:01:45 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 16:01:45 1:     main::DoTrigger                     called by fhem.pl (4686)
2019.04.12 16:01:45 1:     main::readingsEndUpdate             called by fhem.pl (4868)
2019.04.12 16:01:45 1:     main::readingsSingleUpdate          called by ./FHEM/93_FHEM2FHEM.pm (178)
2019.04.12 16:01:45 1:     main::FHEM2FHEM_Read                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 16:01:45 3: Heizung_Pumpe_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Heizung_Pumpe off  6416


das würde noch weiter gehen, denke aber es reicht als Auszug.

Hast du eine Idee.

VG
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 April 2019, 16:18:14
Zitat von: pflock_y am 12 April 2019, 16:12:56
Hallo Byte09,

ich hatte heute etwas zeit und konnte meinem log Meldungen mal auf den Grund gehen.
Häufig kam bei mir:

PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.

Deshalb hab ich stacktrace auf 1 gesetzt

nun kommt das:
2019.04.12 15:58:24 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 15:58:24 1: stacktrace:
2019.04.12 15:58:24 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 15:58:24 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2858)
2019.04.12 15:58:24 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 15:58:24 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 15:58:24 1:     main::DoTrigger                     called by fhem.pl (3984)
2019.04.12 15:58:24 1:     main::Dispatch                      called by ./FHEM/36_JeeLink.pm (865)
2019.04.12 15:58:24 1:     main::JeeLink_Parse                 called by ./FHEM/36_JeeLink.pm (678)
2019.04.12 15:58:24 1:     main::JeeLink_Read                  called by fhem.pl (3698)
2019.04.12 15:58:24 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 15:58:24 3: Entfeuchter_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Entfeuchter_433 off  6416
2019.04.12 16:00:00 3: Umwaelzpumpe_DG_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Umwaelzpumpe_DG on-for-timer 300 6416
2019.04.12 16:00:00 3: Umwaelzpumpe_DG_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Umwaelzpumpe_DG on-for-timer 300 6416
2019.04.12 16:01:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 16:01:45 1: stacktrace:
2019.04.12 16:01:45 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 16:01:45 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2837)
2019.04.12 16:01:45 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 16:01:45 1:     main::DoTrigger                     called by fhem.pl (4686)
2019.04.12 16:01:45 1:     main::readingsEndUpdate             called by fhem.pl (4868)
2019.04.12 16:01:45 1:     main::readingsSingleUpdate          called by ./FHEM/93_FHEM2FHEM.pm (178)
2019.04.12 16:01:45 1:     main::FHEM2FHEM_Read                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 16:01:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 3105.
2019.04.12 16:01:45 1: stacktrace:
2019.04.12 16:01:45 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (3105)
2019.04.12 16:01:45 1:     main::MSwitch_checkbridge           called by ./FHEM/98_MSwitch.pm (2858)
2019.04.12 16:01:45 1:     main::MSwitch_Notify                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (3618)
2019.04.12 16:01:45 1:     main::DoTrigger                     called by fhem.pl (4686)
2019.04.12 16:01:45 1:     main::readingsEndUpdate             called by fhem.pl (4868)
2019.04.12 16:01:45 1:     main::readingsSingleUpdate          called by ./FHEM/93_FHEM2FHEM.pm (178)
2019.04.12 16:01:45 1:     main::FHEM2FHEM_Read                called by fhem.pl (3698)
2019.04.12 16:01:45 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 16:01:45 3: Heizung_Pumpe_MSwitch MSwitch_Restartcm: Befehlsausfuehrung -> set Heizung_Pumpe off  6416


das würde noch weiter gehen, denke aber es reicht als Auszug.

Hast du eine Idee.

VG
pflock_y

Hi pflock_y

ich schaue mir das im Laufe des Tages noch an und melde mich dann.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 April 2019, 16:25:08
@pflock_y

wenn du magst kannst du mal versuchen , ob es mit der Version aus dem GIT weg ist und mir Bescheid geben.

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt im Fhemweb

den reload nicht vergessen
reload 98_MSwitch.pm

gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 12 April 2019, 17:54:58
Hallo Byte09,
läuft jetzt nach dem Update ne knappe halbe Stunde sauber. Kaum noch eintrage im log.

besten Danke und Grüße
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 12 April 2019, 18:41:02
Hallo Thomas,
ich habe bei einem MSwitch das device "RolloTerrasse" eingefügt.
Bei der Auswahl der Kommandos stehen mir dort nicht alle Kommandos zur Verfügung, insbesondere fehlen dort "close" und "open".

1. Bild Auswahl beim Device
2. Bild Auswahl beim MSwitch

Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 April 2019, 18:55:26
Zitat von: wm1962 am 12 April 2019, 18:41:02
Hallo Thomas,
ich habe bei einem MSwitch das device "RolloTerrasse" eingefügt.
Bei der Auswahl der Kommandos stehen mir dort nicht alle Kommandos zur Verfügung, insbesondere fehlen dort "close" und "open".

1. Bild Auswahl beim Device
2. Bild Auswahl beim MSwitch

Gruß Wilfried

gib mir bitte mal die Daten von :

list RolloTerrasse

und

set RolloTerrasse ?

und ein 'get get_support_info' des devices

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 12 April 2019, 19:06:47
"list RolloTerrasse"
Internals:
   DEF        5B9C1C
   FUUID      5ca7519b-f33f-9ee4-f0a5-c7097d7329127f8f
   IODev      CUL_868_HM
   NAME       RolloTerrasse
   NOTIFYDEV  global
   NR         221
   NTFY_ORDER 50-RolloTerrasse
   STATE      20
   TYPE       CUL_HM
   chanNo     01
   READINGS:
     2019-04-11 06:56:00   CommandAccepted yes
     from archivexx        D-firmware      2.11
     from archivexx        D-serialNr      OEQ0563814
     2018-08-23 16:35:22   PairedTo        0xAABBCC
     2018-06-08 22:23:31   R-driveDown     90 s
     2018-06-05 10:11:52   R-driveTurn     0.5 s
     2018-06-08 22:23:31   R-driveUp       90 s
     2018-06-08 22:23:30   R-pairCentral   0xAABBCC
     2018-07-01 23:35:26   R-self01-lgActionType set_jmpToTarget
     2018-06-08 22:35:32   R-self01-lgOnLevel set_100 %
     2018-06-08 22:35:32   R-self01-shActionType set_jmpToTarget
     2018-06-08 22:35:32   R-self01-shOnLevel set_100 %
     2018-06-04 22:11:12   R-self02-lgActionType jmpToTarget
     2018-06-04 22:11:12   R-self02-lgOnLevel 100 %
     2018-06-04 22:11:12   R-self02-shActionType jmpToTarget
     2018-06-04 22:11:12   R-self02-shOnLevel 100 %
     2017-10-31 17:37:30   R-sign          off
     2018-08-23 16:35:22   RegL_00.        02:01 0A:AA 0B:BB 0C:CC 15:FF 18:00 00:00
     2018-08-23 16:35:23   RegL_01.        08:00 09:00 0A:00 0B:03 0C:84 0D:03 0E:84 0F:05 10:00  30:06 57:24 56:00 B3:00 B4:64 B5:14 00:00
     2017-10-31 17:29:07   command         open
     2017-10-31 17:29:07   desired_position 0
     2019-04-11 06:56:11   deviceMsg       20 (to VCCU)
     2017-10-31 17:29:07   drive-type      modul
     2017-10-31 17:29:07   last_drive      drive-up
     2019-04-11 06:56:11   level           20
     2019-02-16 22:08:23   levelMissed     desired:100
     2018-06-07 08:52:26   levelSlat       set_100
     2019-04-11 06:56:11   motor           stop:20
     2019-04-11 06:56:11   pct             20
     2019-04-11 06:56:11   pctSlat         100
     2017-10-31 17:29:10   position        0
     2018-08-23 16:35:21   powerOn         2018-08-23 16:35:21
     2019-04-11 06:56:11   recentStateType info
     2019-04-11 06:56:11   slatDir         stop
     2019-04-11 06:56:11   state           20
     2019-04-11 06:56:11   timedOn         off
   helper:
     HM_CMDNR   57
     mId        0107
     peerFriend peerSens,peerVirt
     peerOpt    3:blindActuator
     regLst     0,1,3p
     rxType     1
     tmplChg    0
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +5B9C1C,00,00,00
       rxt        0
       vccu       VCCU
       p:
         5B9C1C
         00
         00
         00
       prefIO:
         CUL_868_HM
     mRssi:
       mNo       
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   00
     role:
       chn        1
       dev        1
       prs        1
     tmpl:
Attributes:
   IODev      CUL_868_HM
   IOgrp      VCCU:CUL_868_HM
   autoReadReg 4_reqStatus
   devStateIcon open:fts_shutter_10 close:fts_shutter_100 half:fts_shutter_50 9.*:fts_shutter_10 8.*:fts_shutter_20 7.*:fts_shutter_30 6.*:fts_shutter_40 5.*:fts_shutter_50 4.*:fts_shutter_60 3.*:fts_shutter_70 2.*:fts_shutter_80 1.*:fts_shutter_90 0.*:fts_shutter_90
   eventMap   on:open off:close 60:half
   expert     2_raw
   firmware   2.11
   group      Rollos
   model      HM-LC-Ja1PBU-FM
   peerIDs    00000000,
   room       Rolladen
   serialNr   OEQ0563814
   subType    blindActuator
   webCmd     open:close:half:stop:pct


"set RolloTerrasse ?"
Unknown argument ?, choose one of assignHmKey clear deviceRename down fwUpdate getConfig getDevInfo getRegRaw getSerial getVersion inhibit off on pair pct pctLvlSlat pctSlat peerBulk peerIODev press raw regBulk regSet reset sign statusRequest stop toggle toggleDir unpair up peerSmart href='/fhem?detail=VCCU_Btn1'>VCCU_Btn1

'get get_support_info' gibt es nicht, habe dafür 'get cmdList' beigefügt
Gets ------
cmdList
deviceInfo [short|long]
param -param-
reg -addr- ... -list- -peer-
regList
regVal -addr- ... -list- -peer-
saveConfig -filename- ...

Sets ------
assignHmKey:
clear:[readings|trigger|register|oldRegs|rssi|msgEvents|msgErrors|attack|all]
deviceRename:newName
down [-changeValue-] [-ontime-] [-ramptime-] ...
eventL:-peer- -cond-
eventS:-peer- -cond-
fwUpdate:-filename- -bootTime- ...
getConfig:
getDevInfo:
getRegRaw:[List0|List1|List2|List3|List4|List5|List6] ... [-PeerChannel-]
getSerial
getVersion
inhibit [on|off]
off
on
pair
pct [-value-] ... [-ontime-]
pctLvlSlat -value-|old|noChng -slatValue-|old|noChng
pctSlat [0-100]|old|noChng
peerBulk -peer1,peer2,...- [set|unset]
peerIODev [IO] -btn- [set|unset]... not for future use
press:[long|short] -peer- [-repCount(long only)-] [-repDelay-] ...
raw:data ...
regBulk:-list-.-peer- -addr1:data1- -addr2:data2- ...
regSet:[prep|exec] -regName- -value- ... [-peerChannel-]
reset:
sign:[on|off]
statusRequest
stop
toggle
toggleDir
tplDel:tmplt
unpair:
up [-changeValue-] [-ontime-] [-ramptime-] ...


Bin  jetzt allerdings außer Haus, daher keine Eile ;)
Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 April 2019, 19:10:49
die befehle close und open sind keine standartbefehle des aktors, daher kann mswitch sie so nicht finden. aktiviere im MSwitch_device bitte mal das attribut :

'MSwitch_include_webcmds' =1
und
'MSwitch_Include_Devicecmds' = 0

dann sollte er die befehle eigentlich finden, allerdings nur noch diese Befehle . Solltest du in diesem Device noch andere Geräte schalten , wo du die 'normalen' vom device angebotenen Befehle benötigst wird es schwieriger, in diesem Fall gib mir nochmal bescheid, dann telefonieren wir kurz.

gib mir doch bitte kurz bescheid, ob er sie findet.

gruss Thomas

edit:

Auszug MSwitch-Wiki: https://wiki.fhem.de/wiki/MSwitch#MSwitch_Include_Webcmds_.280:1.29 (https://wiki.fhem.de/wiki/MSwitch#MSwitch_Include_Webcmds_.280:1.29)

ZitatMSwitch_Include_Webcmds (0:1)

Bewirkt die Aufnahme aller Devices in die Auswahlliste 'Affected Devices', die einen eigenen Befehlssatz in dem Attribut Webcmd hinterlegt haben. Die in Webcmd hinterlegten 'Befehle' werden in den Auswahlfeldern angeboten.

Bei gesetzter Option (0) werden diese Devices nicht mehr berücksichtigt und somit nicht mehr angeboten, wenn sie nicht zusätzlich einen eigenen Befehlssatz (set DEVICE ?) liefern.
Empfohlene Einstellung (0), Einsatz nach Bedarf.
Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 13 April 2019, 10:36:38
Hallo Thomas,
ich sollte leider auf beides zugreifen können, da ich auch das Konstrukt mit dem MSwitch 'cmd1': Set reload timer benötige.

Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 April 2019, 10:46:24
Zitat von: wm1962 am 13 April 2019, 10:36:38
Hallo Thomas,
ich sollte leider auf beides zugreifen können, da ich auch das Konstrukt mit dem MSwitch 'cmd1': Set reload timer benötige.

Gruß Wilfried

ich habe heute morgen ein entsprechendes update in das svn geladen. dieses ist aber erst ab morgen früh verfügbar.

du kannst es aber manuell aus dem git laden mit:
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt in der fhem befehlszeile.

danach ein
reload 98_MSwitch.pm in der Befehlszeile.

damit hast du die aktuelle version. in dieser solltest du auf alle kommandos zugriff haben , wenn du beide attribute aktivierst.

gruss Thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: wm1962 am 13 April 2019, 10:52:51
Danke, super - hat geklappt.
Wünsch Dir ein schönes WE :)

Gruß Wilfried
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 14:48:38
@Byte09

Hallo Thomas,

ein kleines Problemchen habe ich mit dem "Einrichten" von MSwitch (Bug oder Feature?).

Was ich habe,

- SONOFF 4ch mit ESPEasy
- CUL mit einer Fernbedienung welche 2x5 Tasten (ON/OFF) hat.

Alles ist eingerichtet und funktioniert für sich.

Was ich habe:

Vier MSwitch-Devices welche auf die Tasten 1-4 für jeden Kanal der SONOF 4ch getrennt wie gewünscht reagieren.
Ein fünften MSwitch habe ich angelegt welcher beim Betätigen der fünften Taste alle Vier Kanäle der SONOF 4ch jeweils EIN oder AUS schaltet.
Das Funktioniert auch wie gewünscht.

Jetzt hatte ich mir nur überlegt, das es einfacher wäre, den schon existierenden vier MSwitch zu sagen das sie ebenfalls auf die fünfte Taste reagieren sollen
(ODER) und dadurch alles EIN oder AUS zu schalten.

Das funktioniert ebenfalls.
Allerdings wird nur für die Einzelnen Kanäle/Tasten im MSwitch-Device das Lampen-Symbol (Obere Zeile DeviceOverview)entsprechend umgeschaltet.
Auf die fünfte Taste für alles reagiert das Symbol nicht.

Was mache ich falsch  ;) ?
Als Beispiel Kanal 1 & 2 der SONOFF:

-Kanal1-
Modulversion: 2.20
Datenstruktur: V2.00

----- Devicename -----
ESPE.EG.tr.SD.4CH1.1.MSW

----- Attribute -----
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut room: ESPEasy,MSwitch
Attribut MSwitch_Extensions: 0
Attribut disable: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut comment: SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K1 gpio 12. Winter anderes MSwitch als Schaltuhr, Sommer schaltbar per Funk
Attribut MSwitch_Help: 1
Attribut MSwitch_Debug: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 1
Attribut verbose: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Mode: Full

----- Trigger -----
Trigger device:  all_events
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: IT_HE800_18246_0,IT_HE800_18246_1

----- Trigger Details -----
Trigger cmd1: IT_HE800_18246_1:state:on
Trigger cmd2: IT_HE800_18246_1:state:off
Trigger cmd3: IT_HE800_18246_0:state:on
Trigger cmd4: IT_HE800_18246_0:state:off

----- Device Actions -----

Device: ESPEasy_4_K1-AbsCmd1
cmd1: gpio 12 1
cmd2: gpio 12 0
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit:
cmd2 exit:


-Kanal2-
Modulversion: 2.20
Datenstruktur: V2.00

----- Devicename -----
ESPE.EG.tr.SD.4CH1.2.MSW

----- Attribute -----
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Extensions: 0
Attribut disable: 0
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut room: ESPEasy,MSwitch
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Mode: Full
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Expert: 1
Attribut verbose: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Debug: 0
Attribut comment: SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K2 gpio 5. Winter anderes MSwitch als Schaltuhr, Sommer schaltbar per Funk
Attribut MSwitch_Help: 1

----- Trigger -----
Trigger device:  all_events
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: IT_HE800_18246_0,IT_HE800_18246_2

----- Trigger Details -----
Trigger cmd1: IT_HE800_18246_2:state:on
Trigger cmd2: IT_HE800_18246_2:state:off
Trigger cmd3: IT_HE800_18246_0:state:on
Trigger cmd4: IT_HE800_18246_0:state:off

----- Device Actions -----

Device: ESPEasy_4_K2-AbsCmd1
cmd1: gpio 5 1
cmd2: gpio 5 0
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats:
repeats delay:
priority: 1
id: 0
comment:
cmd1 exit:
cmd2 exit:


Habe ich dein Konzept soweit verstanden? :)

Danke schon mal für die Antwort.

Schönen Tag

Gruß Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 14:53:45
Hi Gerd,

ich muss mir das anschauen indem ich es bei mir einrichte. Kannst du mir dazu bitte mal die Rawdefinition bzw. die configdatei des Devices geben damit ich es bei mir einfach einspielen kann ?!

get DEVICE get_config

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 14:59:12
Hay Thomas,

nix zu tun ;) ?

Klar gerne!

#V 2.20
#VS V2.00
#S .V_Check -> V2.00
#S EVTPART3 -> off
#S .Trigger_cmd_off -> IT_HE800_18246_0:state:off
#S .Trigger_time ->
#S .Device_Affected -> ESPEasy_4_K1-AbsCmd1
#S Trigger_log -> off
#S state -> off
#S EVTPART2 -> state
#S last_cmd -> 1
#S EVENT -> IT_HE800_18246_0:state:off
#S .Trigger_Whitelist -> IT_HE800_18246_0,IT_HE800_18246_1
#S Trigger_device -> all_events
#S EVTPART1 -> IT_HE800_18246_0
#S .Trigger_cmd_on -> IT_HE800_18246_0:state:on
#S .Trigger_on -> IT_HE800_18246_1:state:on
#S .Device_Affected_Details -> ESPEasy_4_K1-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12 1#[NF]12 0#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0
#S .Trigger_condition ->
#S EVTFULL -> IT_HE800_18246_0:state:off
#S Sys_Extension -> undef
#S .sysconf -> undef
#S .First_init -> done
#S last_activation_by -> event
#S .Trigger_off -> IT_HE800_18246_1:state:off
#S last_event -> IT_HE800_18246_0:state:off
#S .Device_Events -> IT_HE800_18246_1:state:on IT_HE800_18246_0:state:on no_trigger IT_HE800_18246_0:state:(on/off) IT_HE800_18246_0:state:off IT_HE800_18246_1:state:off
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> ESPEasy,MSwitch
#A MSwitch_Extensions -> 0
#A disable -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A comment -> SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K1 gpio 12. Winter anderes MSwitch als Schaltuhr, Sommer schaltbar per Funk
#A MSwitch_Help -> 1
#A MSwitch_Debug -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Expert -> 1
#A verbose -> 0
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Mode -> Full


#V 2.20
#VS V2.00
#S .Trigger_condition ->
#S EVTFULL -> IT_HE800_18246_0:state:off
#S Sys_Extension -> undef
#S .sysconf -> undef
#S .First_init -> done
#S last_activation_by -> event
#S last_event -> IT_HE800_18246_0:state:off
#S .Device_Events -> IT_HE800_18246_0:state:on no_trigger IT_HE800_18246_0:state:off IT_HE800_18246_2:state:off IT_HE800_18246_2:state:on state:on state:off
#S .Trigger_off -> IT_HE800_18246_2:state:off
#S EVENT -> IT_HE800_18246_0:state:off
#S .Trigger_Whitelist -> IT_HE800_18246_0,IT_HE800_18246_2
#S Trigger_device -> all_events
#S EVTPART1 -> IT_HE800_18246_0
#S .Trigger_on -> IT_HE800_18246_2:state:on
#S .Trigger_cmd_on -> IT_HE800_18246_0:state:on
#S .Device_Affected_Details -> ESPEasy_4_K2-AbsCmd1#[NF]gpio#[NF]gpio#[NF]5 1#[NF]5 0#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0
#S EVTPART2 -> state
#S last_cmd -> 1
#S .V_Check -> V2.00
#S .Trigger_cmd_off -> IT_HE800_18246_0:state:off
#S EVTPART3 -> off
#S .Trigger_time ->
#S .Device_Affected -> ESPEasy_4_K2-AbsCmd1
#S Trigger_log -> off
#S state -> off
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Ignore_Types -> notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
#A MSwitch_Extensions -> 0
#A disable -> 0
#A MSwitch_Include_MSwitchcmds -> 0
#A room -> ESPEasy,MSwitch
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Inforoom -> MSwitch
#A MSwitch_Expert -> 1
#A verbose -> 0
#A MSwitch_Delete_Delays -> 1
#A MSwitch_Debug -> 0
#A comment -> SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K2 gpio 5. Winter anderes MSwitch als Schaltuhr, Sommer schaltbar per Funk
#A MSwitch_Help -> 1


Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 15:02:19
doch , im Fhem-Forum rumklickern ;-)

nur für mein verständniss vorab , du hast 2 Ferbedienungen (IT_HE800_18246_0,IT_HE800_18246_2) , schaltest aber das gleiche damit ?
edit: hat sich erledigt, hab es nach dem einspielen gesehen - jeweils 2 kanäle der fernbedienun (?)

ich schaue mir das an , wird aber einen Moment dauern.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 15:07:53
Ah, hier schneits sporadisch. da geht man eh nicht raus :)

Nein! Eine Funktfernbedienung (433MHz)  mit 10 Tasten (also 5 Kanäle) mit der man vier Steckdosen schalten konnte.

Master  = IT_HE800_18246_0
Kanal 1 = IT_HE800_18246_1
Kanal 2 = IT_HE800_18246_2
Kanal 3 = IT_HE800_18246_3
Kanal 4 = IT_HE800_18246_4

Keine Hektik. Ausser das beim betätigen vom Master (IT_HE800_18246_0) das Symbol nicht umschaltet tut ja alles ;=)
Nur zum Verständnis für mich, ob ich das korrekt umgesetzt/verstanden habe.
Oder obs ein Fehlverhalten ist.

Edit: Manchmal wünsche ich mir mehr Grafische Erklärungen z.B. mit UML o.ä. ;D

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 15:07:58
ich kenne diese fernbedienung nicht ? da musst du mir nochmal helfen. was kommt denn von der fernbedienung wenn du einen kanal an/aus-schaltest ?

gruss Thomas


beantwortet  ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 15:11:26
ok , kurz drübergeschaut.

im grunde benötigst du dafür keine 4 MSwitches , sondern das kann alle in eines. ich baue dir das mal entsprechend um und poste es dir dann . dann kannst du es dir mal anschauen , ob du es nachvollziehen kannst.

das kann aber ggf. erst morgen werden , ich muss die ganze fernbedienung erstmal 'nachbauen' mit dummys

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 15:14:34
Schön :=)

Ich hatte zwar schon immer überlegt ob das in einem geht (quasi die FB nachgebaut) aber ob das vom Schöpfer so vorgesehen wurde, das weis man ja nicht immer :=)

Wie gesagt keine Hektig. Noch ist kein Sommer im Schwarzwald.

Danke und schönen Sonntag!

Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 15:15:26
deinen grundsätzlichen Fehler kann ich dir aber schon sagen .

du reagierst ja hiermit auf den Masterchannel:

Trigger cmd3: IT_HE800_18246_0:state:on
Trigger cmd4: IT_HE800_18246_0:state:off


beim ausführen von cmd3 und cmd4 werden aber nur entsprechende Befehle des MSwitchmodules ausgeführt, nicht der state des Moduls ( und der wird im symbol abgebildet ) von off auf on geändert. dieses passiert nur , wenn die zweige cmd1 und cmd2 ausgeführt werden .

auszug help:
Zitat1. switch MSwitch on + execute 'cmd1' at
das komplette Device wird auf "on" geschaltet. Der Zweig "cmd1" wird in allen "device actions" ausgeführt.

2. switch MSwitch off + execute 'cmd2' at
das komplette Device wird auf "off" geschaltet. Der Zweig "cmd2" wird in allen "device actions" ausgeführt.

3. execute 'cmd1' only at
es werden alle "cmd1" Zweige aller "device actions" ausgeführt

4. execute 'cmd2' only at
es werden alle "cmd2" Zweige aller "device actions" ausgeführt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 15:52:19
Ja, aber es funktioniert ;)
Ob und wie man das Korrekt macht werde ich mir dann anschauen.

Du hast halt die Eierlegendewollmilchsau programmiert.
Bin auf jeden Fall gespannt wie deine Lösung aussehen wird.

Hab zwar immer mit gelesen, aber nie das passende gleiche Problem gehabt.

Schau mehr also mal.

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 17:14:16
Zitat von: Maista am 14 April 2019, 15:52:19
Ja, aber es funktioniert ;)
Ob und wie man das Korrekt macht werde ich mir dann anschauen.

Du hast halt die Eierlegendewollmilchsau programmiert.
Bin auf jeden Fall gespannt wie deine Lösung aussehen wird.

Hab zwar immer mit gelesen, aber nie das passende gleiche Problem gehabt.

Schau mehr also mal.

Gruss Gerd

anbei mal eine entsprechende rawdefinition .
diese legt das device 'ESPE.EG.tr.SD.4CH1.1.Multi' im Raum 'Maista' an. Sollte eigentlich wie gewünscht funktionieren ( hoffe ich  ;) )

ps: ich musste etwas umherbasteln, um die states der einzelnen kanäle darstellen zu können - schau es dir einfach mal an

gruss Thomas

defmod ESPE.EG.tr.SD.4CH1.1.Multi MSwitch     # FreeCmd ESPEasy_4_K1 ESPEasy_4_K3 ESPEasy_4_K4 ESPEasy_4_K2
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Debug 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Delete_Delays 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Expert 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Extensions 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Help 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Devicecmds 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_MSwitchcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Webcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Inforoom MSwitch
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Lock_Quickedit 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Mode Notify
attr ESPE.EG.tr.SD.4CH1.1.Multi comment SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K1 gpio 12. Winter anderes MSwitch als Schaltuhr, Sommer schaltbar per Funk
attr ESPE.EG.tr.SD.4CH1.1.Multi devStateIcon on:FS20.on off:FS20.off
attr ESPE.EG.tr.SD.4CH1.1.Multi disable 0
attr ESPE.EG.tr.SD.4CH1.1.Multi readingList IT_HE800_18246_1 IT_HE800_18246_2 IT_HE800_18246_3 IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi room Maista
attr ESPE.EG.tr.SD.4CH1.1.Multi stateFormat IT_HE800_18246_1\
IT_HE800_18246_2\
IT_HE800_18246_3\
IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi verbose 0

setstate ESPE.EG.tr.SD.4CH1.1.Multi off\
off\
off\
off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:05:12 .Device_Affected ESPEasy_4_K1-AbsCmd1,ESPEasy_4_K2-AbsCmd1,ESPEasy_4_K3-AbsCmd1,ESPEasy_4_K4-AbsCmd1,FreeCmd-AbsCmd1,FreeCmd-AbsCmd2
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:48 .Device_Affected_Details ESPEasy_4_K1-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K2-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K3-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K4-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]3#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 .Device_Events .*:state:off#[tr]no_trigger#[tr].*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .First_init done
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_Whitelist IT_HE800_18246_0,IT_HE800_18246_1,IT_HE800_18246_2,IT_HE800_18246_3,IT_HE800_18246_4
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_off .*:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_on .*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_condition
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_off no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_on no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_time
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .V_Check V2.00
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 EVENT IT_HE800_18246_4:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 EVTFULL IT_HE800_18246_4:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 EVTPART1 IT_HE800_18246_4
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 EVTPART2 state
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 EVTPART3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 16:56:38 IT_HE800_18246_. off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:15 IT_HE800_18246_1 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:11 IT_HE800_18246_2 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:16 IT_HE800_18246_3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 IT_HE800_18246_4 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 Trigger_device all_events
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 Trigger_log off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:29 last_activation_by event
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 last_cmd 2
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:17 last_event IT_HE800_18246_4:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 last_exec_cmd   setreading ESPE.EG.tr.SD.4CH1.1.Multi IT_HE800_18246_4 off;;
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:48 state active
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 17:40:04
Hay Thomas,

Super! Klappt sogar ;)
Musste die fehlenden drei GPIOs der SONOFF noch anpassen da du GPIO12 für alle vier benutzt hast,
aber danach funktioniert es.

Sieht erst mal etwas verwirrend aus.

Mal schauen ob ich das verstehe.

Danke!

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 17:45:01
Zitat von: Maista am 14 April 2019, 17:40:04
Hay Thomas,

Super! Klappt sogar ;)
Musste die fehlenden drei GPIOs der SONOFF noch anpassen da du GPIO12 für alle vier benutzt hast,
aber danach funktioniert es.

Sieht erst mal etwas verwirrend aus.

Mal schauen ob ich das verstehe.

Danke!

Gruss Gerd

freut mich  :),
falls es nicht klar wird gib mir einfach bescheid. Dann gebe ich dir mal meine Nummer und wir können kurz telefonieren - ist bestimmt einfacher .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 17:49:23
Iss doch schön wenn nicht immer schönes Wetter ist.
Dann hat man auch mal Zeit für FHEM ;)

Hier noch mein RAW wie es nun eingestellt ist:
defmod ESPE.EG.tr.SD.4CH1.1.Multi MSwitch # FreeCmd ESPEasy_4_K1 ESPEasy_4_K3 ESPEasy_4_K4 ESPEasy_4_K2
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Debug 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Delete_Delays 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Expert 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Extensions 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Help 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Devicecmds 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_MSwitchcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Webcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Inforoom MSwitch
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Lock_Quickedit 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Mode Notify
attr ESPE.EG.tr.SD.4CH1.1.Multi comment SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K1-4 gpio 12,5,4,15. Sommer schaltbar per Funk
attr ESPE.EG.tr.SD.4CH1.1.Multi devStateIcon on:FS20.on off:FS20.off
attr ESPE.EG.tr.SD.4CH1.1.Multi disable 0
attr ESPE.EG.tr.SD.4CH1.1.Multi readingList IT_HE800_18246_1 IT_HE800_18246_2 IT_HE800_18246_3 IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi room MSwitch
attr ESPE.EG.tr.SD.4CH1.1.Multi stateFormat IT_HE800_18246_1\
IT_HE800_18246_2\
IT_HE800_18246_3\
IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi verbose 0

setstate ESPE.EG.tr.SD.4CH1.1.Multi off\
off\
off\
off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:05:12 .Device_Affected ESPEasy_4_K1-AbsCmd1,ESPEasy_4_K2-AbsCmd1,ESPEasy_4_K3-AbsCmd1,ESPEasy_4_K4-AbsCmd1,FreeCmd-AbsCmd1,FreeCmd-AbsCmd2
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:44:19 .Device_Affected_Details ESPEasy_4_K1-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K2-AbsCmd1#[NF]gpio#[NF]gpio#[NF]5#[sp]1#[NF]5#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K3-AbsCmd1#[NF]gpio#[NF]gpio#[NF]4#[sp]1#[NF]4#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]3#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K4-AbsCmd1#[NF]gpio#[NF]gpio#[NF]15#[sp]1#[NF]15#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]5#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]6#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 .Device_Events .*:state:off#[tr]no_trigger#[tr].*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .First_init done
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_Whitelist IT_HE800_18246_0,IT_HE800_18246_1,IT_HE800_18246_2,IT_HE800_18246_3,IT_HE800_18246_4
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_off .*:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_on .*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_condition
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_off no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_on no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_time
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .V_Check V2.00
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVENT IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTFULL IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART1 IT_HE800_18246_0
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART2 state
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 16:56:38 IT_HE800_18246_. off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_1 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_2 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_4 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:41:46 Trigger_device all_events
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 Trigger_log off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_activation_by event
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_cmd 6
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_event IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_exec_cmd   setreading ESPE.EG.tr.SD.4CH1.1.Multi IT_HE800_18246_1 off;;setreading ESPE.EG.tr.SD.4CH1.1.Multi I....
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 state active


Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 April 2019, 17:56:31
Zitat von: Maista am 14 April 2019, 17:49:23
Iss doch schön wenn nicht immer schönes Wetter ist.
Dann hat man auch mal Zeit für FHEM ;)

Hier noch mein RAW wie es nun eingestellt ist:
defmod ESPE.EG.tr.SD.4CH1.1.Multi MSwitch # FreeCmd ESPEasy_4_K1 ESPEasy_4_K3 ESPEasy_4_K4 ESPEasy_4_K2
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Debug 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Delete_Delays 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Expert 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Extensions 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Help 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Devicecmds 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_MSwitchcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Include_Webcmds 0
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Inforoom MSwitch
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Lock_Quickedit 1
attr ESPE.EG.tr.SD.4CH1.1.Multi MSwitch_Mode Notify
attr ESPE.EG.tr.SD.4CH1.1.Multi comment SOMMER!! SONOFF 4Kanal Aussen-Steckdosen.K1-4 gpio 12,5,4,15. Sommer schaltbar per Funk
attr ESPE.EG.tr.SD.4CH1.1.Multi devStateIcon on:FS20.on off:FS20.off
attr ESPE.EG.tr.SD.4CH1.1.Multi disable 0
attr ESPE.EG.tr.SD.4CH1.1.Multi readingList IT_HE800_18246_1 IT_HE800_18246_2 IT_HE800_18246_3 IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi room MSwitch
attr ESPE.EG.tr.SD.4CH1.1.Multi stateFormat IT_HE800_18246_1\
IT_HE800_18246_2\
IT_HE800_18246_3\
IT_HE800_18246_4
attr ESPE.EG.tr.SD.4CH1.1.Multi verbose 0

setstate ESPE.EG.tr.SD.4CH1.1.Multi off\
off\
off\
off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:05:12 .Device_Affected ESPEasy_4_K1-AbsCmd1,ESPEasy_4_K2-AbsCmd1,ESPEasy_4_K3-AbsCmd1,ESPEasy_4_K4-AbsCmd1,FreeCmd-AbsCmd1,FreeCmd-AbsCmd2
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:44:19 .Device_Affected_Details ESPEasy_4_K1-AbsCmd1#[NF]gpio#[NF]gpio#[NF]12#[sp]1#[NF]12#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_1"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K2-AbsCmd1#[NF]gpio#[NF]gpio#[NF]5#[sp]1#[NF]5#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_2"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K3-AbsCmd1#[NF]gpio#[NF]gpio#[NF]4#[sp]1#[NF]4#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_3"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]3#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ESPEasy_4_K4-AbsCmd1#[NF]gpio#[NF]gpio#[NF]15#[sp]1#[NF]15#[sp]0#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_4"#[sp]OR#[sp][$EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp][$SELF#[dp]EVTPART1]#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]ne#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]5#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd2#[NF]cmd#[NF]cmd#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]on#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]on#[se]#[NF]setreading#[sp]$SELF#[sp]IT_HE800_18246_1#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_2#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_3#[sp]off#[se]#[nl]setreading#[sp]$SELF#[sp]IT_HE800_18246_4#[sp]off#[se]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF][$SELF#[dp]EVTPART1]#[sp]eq#[sp]"IT_HE800_18246_0"#[NF]0#[NF]0#[NF]6#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:19:30 .Device_Events .*:state:off#[tr]no_trigger#[tr].*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .First_init done
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_Whitelist IT_HE800_18246_0,IT_HE800_18246_1,IT_HE800_18246_2,IT_HE800_18246_3,IT_HE800_18246_4
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_off .*:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_cmd_on .*:state:on
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_condition
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_off no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 .Trigger_on no_trigger
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:27:55 .Trigger_time
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:04:07 .V_Check V2.00
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVENT IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTFULL IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART1 IT_HE800_18246_0
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART2 state
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 EVTPART3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 16:56:38 IT_HE800_18246_. off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_1 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_2 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_3 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 IT_HE800_18246_4 off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:41:46 Trigger_device all_events
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 15:29:55 Trigger_log off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_activation_by event
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_cmd 6
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_event IT_HE800_18246_0:state:off
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 last_exec_cmd   setreading ESPE.EG.tr.SD.4CH1.1.Multi IT_HE800_18246_1 off;;setreading ESPE.EG.tr.SD.4CH1.1.Multi I....
setstate ESPE.EG.tr.SD.4CH1.1.Multi 2019-04-14 17:45:27 state active


Gruss Gerd


wobei auf der terasse sitzen ja auch cool wäre - aber bei 10 Grad ist das ja eher nicht  :-X

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 14 April 2019, 18:29:10
Bei 4.6°C nun gar nicht. Selbst die Katzen kuscheln ;D

Hier noch für alle die es so vielleicht eher verstehen das ganze grob als Grafik.

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 28 April 2019, 18:31:39
Moin Thomas, jetzt nochmal hier. (siehe https://forum.fhem.de/index.php?topic=99156.new;topicseen#new (https://forum.fhem.de/index.php?topic=99156.new;topicseen#new))
Also der Patch funktioniert. Seit paar Minuten trudeln keine warnings und Errors mehr ein.
Allerdings kommt noch jede Minute im Log

2019.04.28 18:27:19.776 1: Autooff:     event1 -> sensor[dp] {[dst]Time[dst][dp][dst]2019-04-28T17[dp]27[dp]19[dst],[dst]ENERGY[dst][dp]{[dst]TotalStartTime[dst][dp][dst]2019-01-08T17[dp]21[dp]42[dst],[dst]Total[dst][dp]4.976,[dst]Yesterday[dst][dp]0.000,[dst]Today[dst][dp]0.011,[dst]Period[dst][dp]0,[dst]Power[dst][dp]0,[dst]ApparentPower[dst][dp]0,[dst]ReactivePower[dst][dp]0,[dst]Factor[dst][dp]0.00,[dst]Voltage[dst][dp]0,[dst]Current[dst][dp]0.000}} 
2019.04.28 18:27:19.865 1: Autooff:     event1 -> Time: 2019-04-28T17:27:19 


Kurz und knackig: Wie krieg ich das weg? verbose 0?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 April 2019, 18:46:20
Zitat von: Maui am 28 April 2019, 18:31:39
Moin Thomas, jetzt nochmal hier.
Also der Patch funktioniert. Seit paar Minuten trudeln keine warnings und Errors mehr ein.
Allerdings kommt noch jede Minute im Log

2019.04.28 18:27:19.776 1: Autooff:     event1 -> sensor[dp] {[dst]Time[dst][dp][dst]2019-04-28T17[dp]27[dp]19[dst],[dst]ENERGY[dst][dp]{[dst]TotalStartTime[dst][dp][dst]2019-01-08T17[dp]21[dp]42[dst],[dst]Total[dst][dp]4.976,[dst]Yesterday[dst][dp]0.000,[dst]Today[dst][dp]0.011,[dst]Period[dst][dp]0,[dst]Power[dst][dp]0,[dst]ApparentPower[dst][dp]0,[dst]ReactivePower[dst][dp]0,[dst]Factor[dst][dp]0.00,[dst]Voltage[dst][dp]0,[dst]Current[dst][dp]0.000}} 
2019.04.28 18:27:19.865 1: Autooff:     event1 -> Time: 2019-04-28T17:27:19 


Kurz und knackig: Wie krieg ich das weg? verbose 0?
ups loglevel vergessen zu korrigieren , ändere ich nach dem essen und gebe dir dann bescheid. dann einfach nochmal ein update. sorry

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 28 April 2019, 19:04:01
Alles gut. Danke für den Mega schnellen Support. Guten hunger.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 April 2019, 19:20:24
Zitat von: Maui am 28 April 2019, 19:04:01
Alles gut. Danke für den Mega schnellen Support. Guten hunger.

habe es geändert, einfach nochmal updaten und den reload nicht vergessen.

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 28 April 2019, 19:38:29
Super. Jetzt ist der Log wieder schön frei. Schönen Abend noch

Gruß
Maui
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 April 2019, 19:41:02
Zitat von: Maui am 28 April 2019, 19:38:29
Super. Jetzt ist der Log wieder schön frei. Schönen Abend noch

Gruß
Maui
ich werde das erst morgen in das svn einchecken, d. h wenn du morgen ein fhemupdate machst wird diese version wieder ersetzt. musst du dann manuell wieder ändern. ab übermorgen wir es im normalen update sein.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 28 April 2019, 20:22:15
Gut zu wissen aber ich mache eh nur grob monatlich Updates.

Edit: was mir grad noch auffällt: wenn ich während des Wartens selbst ausschalte, kommt ein Log Eintrag.

set she_kueche off;#[tr]Autooff#[tr]nocheck#[tr]she_kueche:state:on#[tr]1556483012.83611#[tr]FreeCmd-AbsCmd2


Kann man den irgendwie abstellen?  ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 April 2019, 05:15:12
Zitat von: Maui am 28 April 2019, 20:22:15
Gut zu wissen aber ich mache eh nur grob monatlich Updates.

Edit: was mir grad noch auffällt: wenn ich während des Wartens selbst ausschalte, kommt ein Log Eintrag.

set she_kueche off;#[tr]Autooff#[tr]nocheck#[tr]she_kueche:state:on#[tr]1556483012.83611#[tr]FreeCmd-AbsCmd2


Kann man den irgendwie abstellen?  ;)

schaue ich mir heute abend an , das kann ich jetzt auf die schnelle gar nicht einordnen, wo das herkommt.

gruss Byte09
Titel: 98_MSwitch - Support
Beitrag von: Byte09 am 11 Mai 2019, 17:50:06
Änderung im Webinterface von MSwitch / lange Ladezeiten.
nur in der Testversion im Git


da ich im Webinterface von MSwitch die Befehlssätze von allen vorhandenen Devices benötige ( Ausnahme: Sie sind durch Attribut eingegrenzt ) kommt es doch  - in meinen Augen - zu extremen Ladezeiten des Webinterfaces , abhängig von der Anzahl der vorhandenen Devices. Bei mir hat der Seitenaufbau mittlerweile 4 Sekunden benötigt ( bei ca. 150 definierten Geräten), sehr nervig , insbesondere beim Einrichten eines Mswitches.

In der aktuellen Testversion habe ich mich diesem Problem angenommen.

Hierfür steht das neue Attribut 'MSwitch_DeleteCMDs' zur Verfügung . Dieses kann die die Einstellungen manually,automatic oder nosave annehmen , wobei 'nosave' dem bisherigen Verhalten entspricht.

Ist dieses Attribut nicht gesetzt , so entspricht das der Einstellung 'automatic'.

automatic:
beim Aufruf eines MSwitchdevices (Fhemweb) werden die verfügbaren Kommandos aller vorhandenen Geräte einmalig intern gespeichert. Hier ist ein längerer Ladevorgang nachwievor unumgänglich.  Diese gespeicherten Daten werden bei jedem weiteren Aufruf des Devices genutzt, d.H jeder neue Aufruf des Devices geht erheblich schneller . Allerdings sind die Daten dann nicht mehr akruell. Das bedeutet, das MSewitch es nicht mitbekommt, wenn sich ein Kommandosatz eines Gerätes ändert ( dieses ist aber eher nicht der Regelfall ) . Es steht ein Button zur Verfügung , um entsprechende Daten neu einzulesen. Diese Daten werden 15 Minuten nach dem anlegen automatisch gelöscht um Resourcen zu schonen und werden erst bei Bedarf ( Aufruf Fhemweb ) erneut eingelesen.

manually:

entspricht obigem Verhalten , mit dem Unterschied, das einmal eingelesene Daten nicht nach 15 Minuten gelöscht werden . Ein Reload ist durch entsprechenden Button manuell auszuführen.

Ein Fhem-Shutdown löscht diese Daten in beiden Optionen , so dass diese bei Aufruf des Mswitches im Fhemweb neu Eingelesen werden

Dieses sollte das Bearbeiten eines Devices spürbar 'angenehme' machen.


die Testversion ist nur über Git verfügbar und kann mit folgendem Befel in der Befehlszeile geladen werden:
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
danach ist ein Fhemneustart erforderlich.

durch 'normales' Fhemupdate wird die derzeit aktuelle Version wieder installiert.

gruss Byte09




Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 14:09:10
Zitat von: Byte09 am 28 April 2019, 19:41:02
ich werde das erst morgen in das svn einchecken, d. h wenn du morgen ein fhemupdate machst wird diese version wieder ersetzt. musst du dann manuell wieder ändern. ab übermorgen wir es im normalen update sein.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Blöd gefragt: Hattest du es eingecheckt? Wirkt bei mir grad nicht so.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 15:26:10
Zitat von: Maui am 16 Mai 2019, 14:09:10
Blöd gefragt: Hattest du es eingecheckt? Wirkt bei mir grad nicht so.
sorry nein. aktualisiere bitte nochmal mit der GIT-VERSION. Ich habe noch einige andere Änderungen gemacht,  daher noch nicht im svn. Und leider im Moment lange Arbeitstage

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 17:12:26
Ah okay. Kann es sogar sein, dass es auch im git rausgeflogen ist? Kopfkratz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 17:48:01
Zitat von: Maui am 16 Mai 2019, 17:12:26
Ah okay. Kann es sogar sein, dass es auch im git rausgeflogen ist? Kopfkratz

nein , ich habe zur sicherheit gerade nochmal geschaut, die änderungen der version vom 18. 28. april sind in der aktuellen version enthalten. Hast du nach dem Update Fhem neu gestarten , oder zumindest ein reload 98_MSwitch.pm gemacht ?

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 18:55:57
Hmm also ich will nicht nerven und hoffe ich übersehe nix aber ich hab grad nochmal zur Kontrolle folgendes gemacht.
Update 98_mswitch.pm
Shutdown restart

Jetzt sind logischerweise die Meldungen wieder da

Nun ein Update all (git)
Shutdown restart

Meldungen trotzdem noch da

Zuvor war es mir bei einer anderen fhem Instanz aufgefallen und ich habe die Schritte dann bei meiner (noch) produktiv Instanz getestet.
Sieht für mich aus wie war da, ist wieder weg ;)

Gruß und danke für deine Geduld
Maui
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 19:10:30
Zitat von: Maui am 16 Mai 2019, 18:55:57
Hmm also ich will nicht nerven und hoffe ich übersehe nix aber ich hab grad nochmal zur Kontrolle folgendes gemacht.
Update 98_mswitch.pm
Shutdown restart

Jetzt sind logischerweise die Meldungen wieder da

Nun ein Update all (git)
Shutdown restart

Meldungen trotzdem noch da

Zuvor war es mir bei einer anderen fhem Instanz aufgefallen und ich habe die Schritte dann bei meiner (noch) produktiv Instanz getestet.
Sieht für mich aus wie war da, ist wieder weg ;)

Gruß und danke für deine Geduld
Maui

gibst du mir bitte mal ein list des devices , ich verstehe es gerade nicht wirklich ;-) und ggf ein kurzen auszug aus dem log mit dem fehler . ich will nur sicher gehen , dass es sich wirklich um das gleiche problem handelt.
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 19:31:58
Klar hatte auch schon überlegt ob es nur gleich aussieht.

Ich hoffe ich hab das richtige Device.

2019.05.16 19:26:33.904 1: PERL WARNING: Bareword found where operator expected at (eval 2194) line 1, near ""Energy:{"Time"
2019.05.16 19:26:33.905 1: PERL WARNING: String found where operator expected at (eval 2194) line 1, near "Time":""
2019.05.16 19:26:33.906 1: PERL WARNING: Number found where operator expected at (eval 2194) line 1, near "":"2019"
2019.05.16 19:26:33.907 1: PERL WARNING: Bareword found where operator expected at (eval 2194) line 1, near "16T18"
2019.05.16 19:26:33.908 1: PERL WARNING: String found where operator expected at (eval 2194) line 1, near "33",""
2019.05.16 19:26:33.908 1: PERL WARNING: Bareword found where operator expected at (eval 2194) line 1, near "","ENERGY"
2019.05.16 19:26:33.909 1: PERL WARNING: String found where operator expected at (eval 2194) line 1, at end of line
2019.05.16 19:26:33.910 1: Autooff ERROR: syntax error at (eval 2194) line 1, near ""Energy:{"Time"
7362
2019.05.16 19:26:33.911 1: Autooff if ("Energy:{"Time":"2019-05-16T18:26:33","ENERGY":{[dst]TotalStartTime[dst][dp][dst]2018-10-30T22[dp]04[dp]38[dst],[dst]Total[dst][dp]15.831,[dst]0Yesterday[dst][dp]0.000,[dst]Today[dst][dp]0.222,[dst]Period[dst][dp]0,[dst]Power[dst][dp]0,[dst]ApparentPower[dst][dp]0,[dst]ReactivePower[dst][dp]0,[dst]Factor[dst][dp]0.00,[dst]Voltage[dst][dp]0,[dst]Current[dst][dp]0.000}}" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}  7363



Internals:
   FUUID      5c50c636-f33f-414e-7244-9e3cd3dff5fd947c
   NAME       Swi_Gosund2
   NR         157
   STATE      OFF
   TYPE       dummy
   Helper:
     DBLOG:
       PowerLastHour:
         logdb:
           TIME       1558026000.26914
           VALUE      0.222
   READINGS:
     2019-05-16 19:31:03   CostLastMonth   2.447133094
     2019-05-16 19:31:03   ENERGY_ApparentPower 0
     2019-05-16 19:31:03   ENERGY_Current  0
     2019-05-16 19:31:03   ENERGY_Factor   0
     2019-01-18 13:00:00   ENERGY_Hour     7.983
     2019-03-31 23:59:00   ENERGY_Month    13.024
     2019-05-16 19:31:03   ENERGY_Period   0
     2019-05-16 19:31:03   ENERGY_Power    0
     2019-05-16 19:31:03   ENERGY_ReactivePower 0
     2019-05-16 19:31:03   ENERGY_Today    0.222
     2019-05-16 19:31:03   ENERGY_Total    15.831
     2019-05-16 19:31:03   ENERGY_TotalStartTime 2018-10-30T22:04:38
     2019-05-16 19:31:03   ENERGY_Voltage  0
     2019-05-16 19:31:03   ENERGY_Yesterday 0
     2019-05-16 19:31:03   Energy          {"Time":"2019-05-16T18:31:03","ENERGY":{"TotalStartTime":"2018-10-30T22:04:38","Total":15.831,"Yesterday":0.000,"Today":0.222,"Period":0,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":0,"Current":0.000}}
     2019-04-08 20:59:21   POWER           OFF
     2018-12-15 20:12:21   Power           {"Time":"2018-12-15T20:12:18","Uptime":"0T20:24:22","Vcc":3.237,"POWER":"OFF","Wifi":{"AP":1,"SSId":"Weit","BSSId":"FC:EC:DA:3E:5B:D0","Channel":11,"RSSI":54}}
     2019-05-16 00:05:06   PowerActualMonth 15.836
     2019-05-16 19:00:00   PowerLastHour   0.222
     2019-04-30 23:58:00   PowerLastMonth  2.585
     2019-05-16 19:31:03   Time            2019-05-16T18:31:03
     2018-12-15 20:12:21   Uptime          0T20:24:22
     2018-12-15 20:12:21   Vcc             3.237
     2018-12-15 20:12:21   Wifi_AP         1
     2018-12-15 20:12:21   Wifi_BSSId      FC:EC:DA:3E:5B:D0
     2018-12-15 20:12:21   Wifi_Channel    11
     2018-12-15 20:12:21   Wifi_RSSI       54
     2018-12-15 20:12:21   Wifi_SSId       Weit
     2019-04-08 20:59:21   state           OFF
     2019-05-16 19:01:00   temp_counts     15.831
Attributes:
   DbLogInclude PowerActualMonth,PowerLastHour,PowerLastMonth,ENERGY_Yesterday
   autooff    10
   event-on-change-reading .*
   event-on-update-reading state
   mqttPublish state:topic=cmnd/Gosund2/POWER1
   mqttSubscribe Energy:topic=tele/Drucker3d/SENSOR POWER:topic=stat/Drucker3d/POWER
   room       1_Buero_maui,9_Tech
   setList    ON OFF
   stateFormat POWER
   userReadings CostLastMonth { ReadingsVal("Swi_Trockner","PowerLastMonth",0)*0.2422 ;; }
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 19:44:15
ok, danke. ich kann es jetzt nachvollziehen . warum es wieder auftaucht : keine ahnung im moment. an entsprechenden codeteilen habe ich nichts geändert .

kurzfristige Lösung ( hoffe ich ):

gib bitte mal im Feld "Trigger condition (events only): " und speichere es mit 'modify trigger device'

"$EVENT" =~ m/^state:(on|ON)$/

löst nicht das eigentliche problem , sondern umgeht es nur.  Nach dem verursachenden Problem schaue ich in Ruhe heute abend.

gib mir doch bitte kurz bescheid, ob es als schnelle Lösung funktioniert.

gruss Byte09

edit: "$EVENT" =~ m/^state:(on|ON)$/
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 20:14:55
ich glaube ich habe das problem gefunden und eben eine aktualisierte Version in das GIT geladen. Kannst du es bitte probieren ?

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 20:27:22
Danke Thomas.
Das mit dem trigger brachte nix aber das Update schon auf beiden Systemen.

OT: kann's sein dass Github in letzten Tagen Server Probleme hat?
Hatte teils ewige Ladezeiten und grad beim Update erst ein timeout

Edit: Ist noch was im Loglevel zu niedrig?
Hab jetzt jede Minute

2019.05.16 20:25:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:25:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}
2019.05.16 20:26:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:26:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 20:29:58
Zitat von: Maui am 16 Mai 2019, 20:27:22
Danke Thomas.
Das mit dem trigger brachte nix aber das Update schon auf beiden Systemen.

OT: kann's sein dass Github in letzten Tagen Server Probleme hat?
Hatte teils ewige Ladezeiten und grad beim Update erst ein timeout

Edit: Ist noch was im Loglevel zu niedrig?
Hab jetzt jede Minute

2019.05.16 20:25:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:25:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}
2019.05.16 20:26:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:26:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}

sah bei mir eben auch so aus. Ich hatte arge Probleme mit dem upload

gruss Thomas


Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 16 Mai 2019, 20:31:46
Tja manchmal hilft es auch nix wenn man von einer riesigen Firma geschluckt wird.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 Mai 2019, 20:42:48
Zitat von: Maui am 16 Mai 2019, 20:27:22
Danke Thomas.
Das mit dem trigger brachte nix aber das Update schon auf beiden Systemen.

OT: kann's sein dass Github in letzten Tagen Server Probleme hat?
Hatte teils ewige Ladezeiten und grad beim Update erst ein timeout

Edit: Ist noch was im Loglevel zu niedrig?
Hab jetzt jede Minute

2019.05.16 20:25:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:25:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}
2019.05.16 20:26:59 3: Autooff:     Checkcondition - finalstring -> if ("Time:2019-05-16T19:26:59" =~ m/(.*:?)state:on$/){$answer = 'true';} else {$answer = 'false';}


ich habe den entsprechenden logeintrag jetzt nochmal auf 5 geändert ( GIT )

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 17 Mai 2019, 16:54:14
Hast du denn schon eine grobe Zeitschiene bzgl Fhem svn?
Nur für mich zur Planung. Hab gesehen du hast größere Umstellungen am Modul grad in der Mache.

Gruß
Marius
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 17 Mai 2019, 18:25:47
Zitat von: Maui am 17 Mai 2019, 16:54:14
Hast du denn schon eine grobe Zeitschiene bzgl Fhem svn?
Nur für mich zur Planung. Hab gesehen du hast größere Umstellungen am Modul grad in der Mache.

Gruß
Marius

spätestens am Sonntag.
Ist der Fehler denn jetzt behoben ( mit der GIT-Version ) ?

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 17 Mai 2019, 19:51:29
Jap, sieht ansonsten gut aus. Danke dir.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Juni 2019, 20:18:53
Hi zusammen,

ich muss einfach mal in die Runde fagen:

leider habe ich solche oder ähnliche Dinge bereits öfters gelesen:

Zitat.....Ich habe mir mal MSwitch im Wiki angelesen....sieht für einen Anfänger wie mich kompliziert aus.......

mein anspruch war im grunde ein modul zu bauen was es ermöglicht, ein modul für alle anwendungen zu haben und zugleich ein modul zu bauen , welches ... auch für einen anfänger .... einfach zu konfigurieren ist ( zumindest in den grundfunktionen ) scheine ich zumindest den punkt 2 betreffend irgendwie 'versagt' zu haben  ;)

da ich bei mir wirklich alles automatisiert habe was irgendwie einen sinn ergiebt und ausschliesslich MSwitch in meinem System nutze ist das 'problem' sicher nicht punkt 1.

Jetzt Frage ich mich , was das Problem ist , das sich gerade Anfänger nicht an das Modul 'trauen' , aber durchaus bereit sind , sich in z.B Doif einzuarbeiten ( was in meinen Augen deutlich anspruchsvoller in der Konfiguration ist ... kann natürlich auch betriebsblindheit meinerseits sein ).

Konkret , habt ihr Tipps oder anregungen  was besser/anders zu machen wäre , um diese 'Einstiegshürde' etwas herabzusetzen . Ist hier ggf. eine komplette überarbeitung des Wikis sinnvoll ? ... ein 'Easymode' im Modul ? etc.pp

freue mich auf statements oder tipps etc.

gruss Thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 22 Juni 2019, 21:05:45
Ich bin zwar kaumNutzer von MSwitch, habe genau ein Device und das hast du geschrieben.
Ich bin von notify zu DOIF. Komme da zwar auch ständig ins straucheln aber min Prinzip kann man mit DOIF wohl quasi (fast) alles bauen. Was ich so gesehen habe, sieht das in MSwitch eher komplexer aus.
So wie ich dich im Wiki versteh, ist dein Ansatz eine steilere Lernkurve als DOIF zu haben und das kommt mir zumindest nicht so vor.
Aber ich versuche es mal konkret.
Meine Temp Sensoren haben einen avg Wert am Tag.
Der vom Vortag wäre eigentlich weg am Folgetag.

Mit DOIF und Aggregation klappt das ganz gut. Ein DOIF für alle Sensoren.
Kriegt man das mit MSwitch ohne "Code" schreiben zu müssen nur durch zurechtklicken hin?


defmod di_bme_day_avg DOIF ([23:59]) ( {foreach (AggrDoIf('@','^ts','BME280_Temperature_avg_day')) {fhem("setreading $_ AvgLastDay ".(ReadingsVal($_,"BME280_Temperature_avg_day",0)))  } })
attr di_bme_day_avg do always
Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 22 Juni 2019, 22:19:23
Hmm ich scheitere sogar schon an der Portierung eines trivialen Beispiels.

defmod di_Klingel DOIF ([Klingel] eq "on") (set telebot message Ding Dong)
attr di_Klingel do always


Was MSwitch in meinen Augen definitiv komplizierter macht, ist das Teilen oder Kopieren von devices.
Im DOIF steht quasi alles im define. Beim MSwitch nur der Name

Gruß
Maui
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Juni 2019, 22:25:30
Zitat von: Maui am 22 Juni 2019, 22:19:23
Hmm ich scheitere sogar schon an der Portierung eines trivialen Beispiels.

defmod di_Klingel DOIF ([Klingel] eq "on") (set telebot message Ding Dong)
attr di_Klingel do always


Was MSwitch in meinen Augen definitiv komplizierter macht, ist das Teilen oder Kopieren von devices.
Im DOIF steht quasi alles im define. Beim MSwitch nur der Name

Gruß
Maui
Dank dir für das Feedback. Ich schreibe dir morgen etwas dazu....  sitze gerade schön in der cocktailbar und genieße einen Daiquiri [emoji4]

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 23 Juni 2019, 00:18:15
Proost Thomas ;)

Ich hab mich zwar kurzzeitig mit MSwitch auseinander gesetzt, aber nach dem ich alles erst mal am laufen hatte war es das wieder.
Es ist wie mit allem, die Zeit um sich damit auseinander zu setzen ist nicht immer da und schnell vorbei.

Schön finde ich das man viel Infos bekommt wenn man diese will. Auch das Sichern der Config ist Klasse.

Ich bin eher ein Grafischer Mensch, deswegen hatte ich auch neulich in dem einen Threat das ganze in der UML-Grafik dargestellt.
Vielleicht würde es für einige einfacher sein die Abhängigkeiten zu verstehen wenn man das mit Graphviz wie bei MQTT2 visualisieren kann?!

Als Schöpfer des Moduls ist vieles für dich klar, wie sollte es auch anders sein  ;D

Die frage ist, kann das Wunsch-Modul genau das Problem lösen was man hat?

DOIF kann auch alles, vieles sieht gegenüber dem Define von MSwitch etwas "kürzer" aus.

Die Vielfalt machts  :)

Gruss Gerd


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Juni 2019, 09:15:08
Zitat von: Maui am 22 Juni 2019, 21:05:45

...
Kriegt man das mit MSwitch ohne "Code" schreiben zu müssen nur durch zurechtklicken hin?


defmod di_bme_day_avg DOIF ([23:59]) ( {foreach (AggrDoIf('@','^ts','BME280_Temperature_avg_day')) {fhem("setreading $_ AvgLastDay ".(ReadingsVal($_,"BME280_Temperature_avg_day",0)))  } })
attr di_bme_day_avg do always


Nein, ohne code geht es nicht , so wie bei doif oder notify oder sonstwas nicht . dafür ist die Funktion einfach schon zu komplex.
Der unterschied wird sein , das bei Doif ein perl/doif syntaxmix eingesetzt wird ( in meinen augen letztendlich nur verwirrend ... ist aber wohl geschmackssache ) . die AggrDoIf  Funktion ist eine Funktion die vermutlich auf bestehende fhemfunktion 'devspec2array' aufsetzt , zumindest das selbe bezweckt. dahe besteht mA keine notwendigkeit , hier einen Syntaxmix zu nutzen , wenn ich mit gleichem aufwand direkt im perl bleiben kann.

das ganze sähe dann wie im anhang aus.

daraus folgt natürlich , und damit bin ich ganz bei dir , dass es nicht so einfach möglich ist , eine MSwitch definition in eine Zeile zu packen , die dann einen cryptischen Syntaxmix enthält, um es eben in eine Zeile packen zu können .  Als option bietet MSwitch hierfür aber eine eigene Funktion 'get_config' mit dieser sich Definitionen 'kopieren' lassen.

gruss thomas



Support-InfodateiModulversion: 2.50 Test
Datenstruktur: V2.10

----- Devicename -----
devspec

----- Attribute -----
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Help: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Expert: 0
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Debug: 0

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on off ononly[20:59] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: cmd {
foreach ( (devspec2array('NAME=(^ts.*):FILTER=BME280_Temperature_avg_day=(.+)')) )
  {
   fhem("setreading $_ AvgLastDay ".(ReadingsVal($_,"BME280_Temperature_avg_day",0)));
  }
}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Titel: Antw:98_MSwitch - Support
Beitrag von: Maui am 23 Juni 2019, 10:27:42
Moin Thomas,

Ich hoffe der Cocktail hat geschmeckt.
Viele hier werden allerdings kein perl können und daher einen mix im Hintergrund bevorzugen, wenn dafür auf dem Frontend eine einfache Definition herauskommt.
Bei reinem perl könnte man sich ja im Prinzip auch die myUtils vollschreiben...?!

Gruß
Maui
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Juni 2019, 10:39:47
Ich gebe dir im Grunde recht.... nur werde ich wohl niemals verstehen, warum man bereit ist die doifsyntax zu lernen,  perl aber nicht. Zumal ich bei nahezu gleichem Aufwand mit perl... me sogar einfacher... alle Möglichkeiten offen habe. Aber ich muss ja nicht alles verstehen [emoji6]

gruss thomas

ps: er hat geschmeckt [emoji12]

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 25 Juni 2019, 16:46:28
Zitat von: Maui am 22 Juni 2019, 22:19:23
Hmm ich scheitere sogar schon an der Portierung eines trivialen Beispiels.

defmod di_Klingel DOIF ([Klingel] eq "on") (set telebot message Ding Dong)
attr di_Klingel do always


Was MSwitch in meinen Augen definitiv komplizierter macht, ist das Teilen oder Kopieren von devices.
Im DOIF steht quasi alles im define. Beim MSwitch nur der Name

Gruß
Maui

Ich arbeite nun daran , das eine Konfiguration , wie in deinem Beispiel demnächst möglich ist . Dieses wird aber sicherlich einige Zeit in anspruch nehmen . Gegenwärtiger stand ist der, das obiges z.B bereits geht.

Das Modul wird dann automatisch erkennen , ob eine definition bei fhemstart oder neuanlage eines devices bereits über die definition erfolgt und wird sich aut. anpassen , es werden aber sicher nicht alle funktionen so umsetzbar sein , sondern eher nur 'grundfunktionen' ( wie diese definiert sind weiss ich selber noch nicht wirklich genau  ???  )

gruss Byte09

edit: die GIT-Version werde ich dem aktuellen Stand jeweils anpassen.

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 Juli 2019, 18:22:21
Info: kommendes Update auf V 2.4

in den Tgaen werde ich ein Update auf die Version 2.4 einspielen. Diese Version wird folgende Funktionserweiterungen bereitstellen.

In den Conditions ist es nun möglich , Funktionsaufrufe zu nutzen ( ähnlich DOIF ).
Hierzu werden bei Bedarf ankommendeEvents gespeichert und sind auswertbar.
Gespeichert werden die Daten in einem Array "einghender wert  , vorheriger wert vorletzter wert ... )  .

Verfügbare Funktionen :

Differenz
Syntax:
[DIFF<wert>:<reading>] > <differenz>
Beispiel:
[DIFF2:countdown] > 0

wert:
gespeicherter wert (in diesem fall der vorletzte)

differenz:
geforderter differenz zwische aktuellem und vorletztem wert

Schaltung erfolg wenn diese Bedingung 'wahr' ist.

Tendenz
Syntax:
[TEND<wert>:<reading>] > <Mindestwert>
Beispiel:
[TEND2:countdown] > 2

wert:
Es wird jeweils der Durchschnitt von 2 Wertepaaren gebildet. In diesem Fall werden die letzten 4 Werte herangezogen. Paar 1 = aktueller und letzter Wert , Paar 2 = die 2 vorherigen Werte. Bei TEND3 würden diel letzten 6 Wertezur Paarbildung genutzt werden.

Mindestwert:
Der Werteunterschied zwischen den Wertepaaren , der minimal erreicht sein muss, um eine Tendenz zu erkennen.

Rechenzeichen (><):
Dieses ist hier nicht als Rechenzeichen zu werten , sonder als Tendenzanzeige . ( < es wird nach fallender Tendenz gesucht / > sucht nach steigender Tendenz)

Achaltung erfolgt einmalig bei Erkennung der gesuchten Tendenz.
Danach erfolgt keine Schaltung mehr, solange bis eine Tendenzumkehr erfolgt ist.
Erst dann erfolgt wieder eine Schaltung bei erneuter Tendenzumkehr in gesuchte Richtung

AVG
analog DOIF
erklärung folgt im Wiki

INC
analog DOIF
erklärung folgt im Wiki


Weiterhin ist der Code weitestgehend soweit ergänzt, dass Definitionen dieser Art : defmod di_Klingel MSwitch ([Klingel] eq "on") (set telebot message Ding Dong) möglich sind .
Ein Patch der 'console.js' macht es damit auch möglich , MSwitch-Devices direkt über den Eventmonitor anzulegen. Hier hoffe ich , das dieser Patch den Weg in die offizielle Version findet.
Bis klar ist , ob dieser Patch es in die offizielle Version schafft oder nicht , werde ich diese Funktion noch deaktiviert lassen, falls hier noch Änderungen / Anpassungen erforderlich wären und bereits angelegte Definitionen daher nicht mehr funktionieren würden.

Gruss Thomas




Titel: Antw:98_MSwitch - Support
Beitrag von: MarkusHiba am 12 Juli 2019, 04:25:45
Hallo,

ich wollte mal MSwitch probieren.

ich habe mal eine doofe Frage:

Ich möchte einen 1 Wire Bewegungsmelder Licht einschalten (das habe ich mit den Modul hinbekommen).
Nun möchte ich das Licht zeitverzögert ausschalten (das bekomme ich nicht hin).
sitze schon die ganze Nacht dran und lese und probiere.

bzw. eine andere Idee.

Wie bekommt man es hin das dass Licht langsam hochdimmt und beim zeitverzögerten Auschalten langsam abdimmt. Geht das mit dem Modul auch.

Grüße

MarkusHiba
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Juli 2019, 05:06:10
guten morgen ,

grundsätzlich giebst du eine zeitverzögerung in dem feld 'cmd delay ...' ein ( siehe bild ) .

ein langsames ein oder ausdimmen sollte - wenn möglich - immer über die hardware erfolgen. es ist auch über das modul machbar, falls die hardware es nicht unterstützt , dieses ist aber sehr systembelastend ( egal mit welchem hilfsmodul ) .

sollte wirklich ein modulseitiges dimmen benötigt werden , melde dich einfach nochmal, dann schauen wir.
für diesen fall gib mir doch bitte einfach schon einmal was du bereits hast ( get DEVICE get-config )

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: MarkusHiba am 21 Juli 2019, 21:49:15
Danke,

so hatte ich es auch eingestellt, ging nicht, habe es dann nochmal probiert und siehe da es ging.
Danke sehr.

Nun folgendes MSwitch ist her sehr vielseitig.
Ich habe 2x MSwicht angelegt aber man könnte diese auch in einen fassen. Oder?

zum 1:
Dieser soll auslösen wenn der Melder einen richtigen Alarm gibt, wenn ich den Melder als Test auslöse erfüllt er die selbe Bedingung deswegen ist die Verzögerung drin.

Modulversion: 2.30
Datenstruktur: V2.00

----- Devicename -----
Brandmelder_MSwitch

----- Attribute -----
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Expert: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Help: 0
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Debug: 0
Attribut room: Test
Attribut MSwitch_Include_MSwitchcmds: 0

----- Trigger -----
Trigger device:  Brandmelder
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: reading:on
Trigger cmd4: reading:off

----- Device Actions -----

Device: Brandmelder-AbsCmd1
cmd1: alarm on
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:03
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


zum 2:
Dort habe ich einen Taster wenn ich diesen 10 s drücke soll der Alarm auf off geschalten werden, natürlich wenn ich nach den Melder geschaut habe.

Modulversion: 2.30
Datenstruktur: V2.00

----- Devicename -----
Brandmeldeanlage_zurueck_stellen_MSwitch

----- Attribute -----
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Debug: 0
Attribut room: Test
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Expert: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Include_Devicecmds: 1

----- Trigger -----
Trigger device:  Brandmeldeanlage_zurueck_stellen
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: reading:on
Trigger cmd4: reading:off

----- Device Actions -----

Device: Brandmeldeanlage_zurueck_stellen-AbsCmd1
cmd1: alarm off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Brandmelder-AbsCmd1
cmd1: alarm off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


Könnte mir jemand helfen komme da nicht weiter.

Grüße

Markus Hiba
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 22 Juli 2019, 05:26:27
Zitat von: MarkusHiba am 21 Juli 2019, 21:49:15
Danke,

so hatte ich es auch eingestellt, ging nicht, habe es dann nochmal probiert und siehe da es ging.
Danke sehr.

Nun folgendes MSwitch ist her sehr vielseitig.
Ich habe 2x MSwicht angelegt aber man könnte diese auch in einen fassen. Oder?

zum 1:
Dieser soll auslösen wenn der Melder einen richtigen Alarm gibt, wenn ich den Melder als Test auslöse erfüllt er die selbe Bedingung deswegen ist die Verzögerung drin.

Modulversion: 2.30
Datenstruktur: V2.00

----- Devicename -----
Brandmelder_MSwitch

----- Attribute -----
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Expert: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Help: 0
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Debug: 0
Attribut room: Test
Attribut MSwitch_Include_MSwitchcmds: 0

----- Trigger -----
Trigger device:  Brandmelder
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: reading:on
Trigger cmd4: reading:off

----- Device Actions -----

Device: Brandmelder-AbsCmd1
cmd1: alarm on
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:03
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


zum 2:
Dort habe ich einen Taster wenn ich diesen 10 s drücke soll der Alarm auf off geschalten werden, natürlich wenn ich nach den Melder geschaut habe.

Modulversion: 2.30
Datenstruktur: V2.00

----- Devicename -----
Brandmeldeanlage_zurueck_stellen_MSwitch

----- Attribute -----
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Debug: 0
Attribut room: Test
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Expert: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Include_Devicecmds: 1

----- Trigger -----
Trigger device:  Brandmeldeanlage_zurueck_stellen
Trigger time:
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: reading:on
Trigger cmd4: reading:off

----- Device Actions -----

Device: Brandmeldeanlage_zurueck_stellen-AbsCmd1
cmd1: alarm off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Brandmelder-AbsCmd1
cmd1: alarm off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0


Könnte mir jemand helfen komme da nicht weiter.

Grüße

Markus Hiba

Hi Markus,

ich komme auf die schnelle nicht ganz klar.

im ersten hast du als triggerndes event folgendes eingetragen:
Trigger cmd3: reading:on
Trigger cmd4: reading:off

ich hab da so meine zweifel. das deas ankommende event wirklich 'reading:xxxx' ist . schau doch bitte mal , was der eventmonitor ausgiebt, wenn der melder auslöst.

den zweiten kann ich auch noch nicht ganz nachvollziehen , der scheint sich ja irgendwie selber zu triggern. von diesem gib mir doch bitte mal die rawdefinition incl. aller beteiligten devices. Ich schaue mir das dann heute abend mal in ruhe an.

gruss Byte09

PS: ich glaube das wird etwas kompliziert über das Forum. Wenn du magst können wir heute abend mal dazu telefonieren, ich schicke dir mal meine nummer per PM , wenn ich zuhause bin.
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 18 August 2019, 10:25:31
Hallo Byte09,

seit längerer Zeit spuckt mein Log immer etliche dieser Zeile(n) aus:

PERL WARNING: Use of uninitialized value $reading[2] in string eq at ./FHEM/98_MSwitch.pm line 8544, <GEN22> line 17.


Wobei die Zeilennummer hochgezählt wird.
Was hat das zu bedeuten?

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 August 2019, 10:29:21
Zitat von: Panik am 18 August 2019, 10:25:31
Hallo Byte09,

seit längerer Zeit spuckt mein Log immer etliche dieser Zeile(n) aus:

PERL WARNING: Use of uninitialized value $reading[2] in string eq at ./FHEM/98_MSwitch.pm line 8544, <GEN22> line 17.


Wobei die Zeilennummer hochgezählt wird.
Was hat das zu bedeuten?
schaue ich mir im laufe des Tages an und fixe es

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 August 2019, 14:03:43
Hi Panik,

ich habe mir das mal angeschaut und kann das Problem im Grunde auch beheben - trotzdem bin ich mir nicht ganz sicher, was es eigentlich auslöst.

kannst du mir bitte mal eine Rawdefinition des auslösenden MSwitch geben ( falls du weisst welches es auslöst )

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 19 August 2019, 05:46:12
Hallo Byte09,

ich hab dir die Definitionen mal in einer PM gesendet.

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 August 2019, 06:36:09
Zitat von: Panik am 19 August 2019, 05:46:12
Hallo Byte09,

ich hab dir die Definitionen mal in einer PM gesendet.

Panik

Ich habe eben ein Update in das SVN geladen und hoffe das es damit behoben ist.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 20 August 2019, 05:31:28
Hallo Byte09,

dein Fix hat es nun behoben. Danke!

Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 13 September 2019, 07:55:38
Guten morgen zusammen,

ich nutze eine relativ einfache Konfiguration für einen MSwitch. Er soll nur die Zirkulationspumpe zu bestimmten Zeiten schalten.
Die trigger Time execute 'cmd1' at : sieht so aus:

[00:30*05:00-08:00|!$we][00:30*06:00-09:00|$we][00:30*15:00-19:30|!$we][00:30*15:00-21:00|$we]

Lasse ich mir nun alle Timer anzeigen, kommt:

Systemzeit: Fri Sep 13 07:51:11 2019
Schaltzeiten (at - kommandos).
2019-09-13 08:00:00 execute 'cmd1' commands only
2019-09-13 08:30:00 execute 'cmd1' commands only
2019-09-13 15:00:00 execute 'cmd1' commands only
2019-09-13 15:30:00 execute 'cmd1' commands only
2019-09-13 16:00:00 execute 'cmd1' commands only
2019-09-13 16:30:00 execute 'cmd1' commands only
2019-09-13 17:00:00 execute 'cmd1' commands only
2019-09-13 17:30:00 execute 'cmd1' commands only
2019-09-13 18:00:00 execute 'cmd1' commands only
2019-09-13 18:30:00 execute 'cmd1' commands only
2019-09-13 19:00:00 execute 'cmd1' commands only
2019-09-13 19:30:00 execute 'cmd1' commands only
2019-09-13 20:00:00 execute 'cmd1' commands only
2019-09-13 20:30:00 execute 'cmd1' commands only
2019-09-14 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Warum schaltet der Switch noch einmal um 08:30 unter der Woche, ist doch anders eingegeben.?

Support Info:

Modulversion: 2.40
Datenstruktur: V2.00

----- Devicename -----
Umwaelzpumpe_DG_MSwitch

----- Attribute -----
Attribut MSwitch_Condition_Time: 1
Attribut disable: 0
Attribut MSwitch_Expert: 0
Attribut verbose: 0
Attribut room: Dachgeschoss,MSwitch
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut icon: sani_pump
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Activate_MSwitchcmds: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Debug: 0

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on[00:30*05:00-09:00] off[00:30*15:00-22:00] ononly[00:30*05:00-08:00|!$we][00:30*06:00-09:00|$we][00:30*15:00-19:30|!$we][00:30*15:00-21:00|$we] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1
cmd1: on-for-timer 300
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0




vg
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2019, 08:03:20
Zitat von: pflock_y am 13 September 2019, 07:55:38
Guten morgen zusammen,

ich nutze eine relativ einfache Konfiguration für einen MSwitch. Er soll nur die Zirkulationspumpe zu bestimmten Zeiten schalten.
Die trigger Time execute 'cmd1' at : sieht so aus:

[00:30*05:00-08:00|!$we][00:30*06:00-09:00|$we][00:30*15:00-19:30|!$we][00:30*15:00-21:00|$we]

Lasse ich mir nun alle Timer anzeigen, kommt:

Systemzeit: Fri Sep 13 07:51:11 2019
Schaltzeiten (at - kommandos).
2019-09-13 08:00:00 execute 'cmd1' commands only
2019-09-13 08:30:00 execute 'cmd1' commands only
2019-09-13 15:00:00 execute 'cmd1' commands only
2019-09-13 15:30:00 execute 'cmd1' commands only
2019-09-13 16:00:00 execute 'cmd1' commands only
2019-09-13 16:30:00 execute 'cmd1' commands only
2019-09-13 17:00:00 execute 'cmd1' commands only
2019-09-13 17:30:00 execute 'cmd1' commands only
2019-09-13 18:00:00 execute 'cmd1' commands only
2019-09-13 18:30:00 execute 'cmd1' commands only
2019-09-13 19:00:00 execute 'cmd1' commands only
2019-09-13 19:30:00 execute 'cmd1' commands only
2019-09-13 20:00:00 execute 'cmd1' commands only
2019-09-13 20:30:00 execute 'cmd1' commands only
2019-09-14 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Warum schaltet der Switch noch einmal um 08:30 unter der Woche, ist doch anders eingegeben.?

Support Info:

Modulversion: 2.40
Datenstruktur: V2.00

----- Devicename -----
Umwaelzpumpe_DG_MSwitch

----- Attribute -----
Attribut MSwitch_Condition_Time: 1
Attribut disable: 0
Attribut MSwitch_Expert: 0
Attribut verbose: 0
Attribut room: Dachgeschoss,MSwitch
Attribut MSwitch_Include_MSwitchcmds: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut icon: sani_pump
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Activate_MSwitchcmds: 0
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Extensions: 0
Attribut MSwitch_Debug: 0

----- Trigger -----
Trigger device:  no_trigger
Trigger time: on[00:30*05:00-09:00] off[00:30*15:00-22:00] ononly[00:30*05:00-08:00|!$we][00:30*06:00-09:00|$we][00:30*15:00-19:30|!$we][00:30*15:00-21:00|$we] offonly onoffonly
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1
cmd1: on-for-timer 300
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0




vg
pflock_y

moin,

kannst du mir bitte noch die rawdefinition des devices geben .

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 13 September 2019, 08:07:09
Guten morgen Thomas,

klar:

defmod Umwaelzpumpe_DG_MSwitch MSwitch
attr Umwaelzpumpe_DG_MSwitch MSwitch_Activate_MSwitchcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Condition_Time 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Debug 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Delete_Delays 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Expert 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Extensions 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Help 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_Devicecmds 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_MSwitchcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_Webcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Inforoom MSwitch
attr Umwaelzpumpe_DG_MSwitch MSwitch_Lock_Quickedit 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Mode Notify
attr Umwaelzpumpe_DG_MSwitch disable 0
attr Umwaelzpumpe_DG_MSwitch icon sani_pump
attr Umwaelzpumpe_DG_MSwitch room Dachgeschoss,MSwitch
attr Umwaelzpumpe_DG_MSwitch verbose 0

setstate Umwaelzpumpe_DG_MSwitch active
setstate Umwaelzpumpe_DG_MSwitch 2019-08-23 19:33:43 .Device_Affected HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1
setstate Umwaelzpumpe_DG_MSwitch 2019-08-23 19:33:48 .Device_Affected_Details HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]300#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Device_Events no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .First_init done
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_cmd_off no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_cmd_on no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 .Trigger_condition
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_off no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_on no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 .Trigger_time on[00#[dp]30*05#[dp]00-09#[dp]00]~off[00#[dp]30*15#[dp]00-22#[dp]00]~ononly[00#[dp]30*05#[dp]00-08#[dp]00|!$we][00#[dp]30*06#[dp]00-09#[dp]00|$we][00#[dp]30*15#[dp]00-19#[dp]30|!$we][00#[dp]30*15#[dp]00-21#[dp]00|$we]~offonly~onoffonly
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .V_Check V2.00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVENT Umwaelzpumpe_DG_MSwitch:execute_timer_P3:08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTFULL Umwaelzpumpe_DG_MSwitch:execute_timer_P3:08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART1 Umwaelzpumpe_DG_MSwitch
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART2 execute_timer_P3
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART3 08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 Trigger_device no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 Trigger_log off
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 last_activation_by timer
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 last_exec_cmd set HM_HMIP_PSM_Umwaelzpumpe on-for-timer 300
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:05:18 state active



vg
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2019, 08:12:57
Zitat von: pflock_y am 13 September 2019, 08:07:09
Guten morgen Thomas,

klar:

defmod Umwaelzpumpe_DG_MSwitch MSwitch
attr Umwaelzpumpe_DG_MSwitch MSwitch_Activate_MSwitchcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Condition_Time 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Debug 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Delete_Delays 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Expert 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Extensions 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Help 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_Devicecmds 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_MSwitchcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Include_Webcmds 0
attr Umwaelzpumpe_DG_MSwitch MSwitch_Inforoom MSwitch
attr Umwaelzpumpe_DG_MSwitch MSwitch_Lock_Quickedit 1
attr Umwaelzpumpe_DG_MSwitch MSwitch_Mode Notify
attr Umwaelzpumpe_DG_MSwitch disable 0
attr Umwaelzpumpe_DG_MSwitch icon sani_pump
attr Umwaelzpumpe_DG_MSwitch room Dachgeschoss,MSwitch
attr Umwaelzpumpe_DG_MSwitch verbose 0

setstate Umwaelzpumpe_DG_MSwitch active
setstate Umwaelzpumpe_DG_MSwitch 2019-08-23 19:33:43 .Device_Affected HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1
setstate Umwaelzpumpe_DG_MSwitch 2019-08-23 19:33:48 .Device_Affected_Details HM_HMIP_PSM_Umwaelzpumpe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]300#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Device_Events no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .First_init done
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_cmd_off no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_cmd_on no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 .Trigger_condition
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_off no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .Trigger_on no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 .Trigger_time on[00#[dp]30*05#[dp]00-09#[dp]00]~off[00#[dp]30*15#[dp]00-22#[dp]00]~ononly[00#[dp]30*05#[dp]00-08#[dp]00|!$we][00#[dp]30*06#[dp]00-09#[dp]00|$we][00#[dp]30*15#[dp]00-19#[dp]30|!$we][00#[dp]30*15#[dp]00-21#[dp]00|$we]~offonly~onoffonly
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 .V_Check V2.00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVENT Umwaelzpumpe_DG_MSwitch:execute_timer_P3:08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTFULL Umwaelzpumpe_DG_MSwitch:execute_timer_P3:08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART1 Umwaelzpumpe_DG_MSwitch
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART2 execute_timer_P3
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 EVTPART3 08:00
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 07:45:45 Trigger_device no_trigger
setstate Umwaelzpumpe_DG_MSwitch 2019-07-26 18:42:42 Trigger_log off
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 last_activation_by timer
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:00:00 last_exec_cmd set HM_HMIP_PSM_Umwaelzpumpe on-for-timer 300
setstate Umwaelzpumpe_DG_MSwitch 2019-09-13 08:05:18 state active



vg
pflock_y

danke,

hab es mir gerade angeschaut, da stimmt etwas mit der variable $we nicht und diesen Teil [00:30*06:00-19:00|$we] setzt er als schaltzeiten obwohl $we unwahr sein sollte.

bin mir im moment nichtmal sicher, ob es überhaupt aus dem MSwitchmodul kommt. Gib mir bitte 1-2 Stunden, dann sollte ich es in Ordnung gebracht haben, egal woher es kommt.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 13 September 2019, 08:18:18
Super!!
Aber mach entspannt.

vg
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2019, 09:25:50
Zitat von: pflock_y am 13 September 2019, 08:18:18
Super!!
Aber mach entspannt.

vg
pflock_y

Ich habe den Fehler gefunden , es war ein regex - Problem.
Ich stelle die kommende Stunde eine gefixte Version in das GIT und in das SVN.
Den GIT-Link poste ich dann hier für ein heutiges Update, ansonsten ab morgen früh über das normale Fhemupdate.

gruss Thomas

edit:
Update für Heute:update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
gib mir doch bitte kurz bescheid ob es passt.
Titel: Antw:98_MSwitch - Support
Beitrag von: pflock_y am 13 September 2019, 09:59:57
schaut gut aus.  ;D

mit get aktiv_timer show bekomme ich jetzt die richtigen Zeiten angezeigt.

bestens, Danke!!

vg
pflock_y
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 September 2019, 10:04:30
Zitat von: pflock_y am 13 September 2019, 09:59:57
schaut gut aus.  ;D

mit get aktiv_timer show bekomme ich jetzt die richtigen Zeiten angezeigt.

bestens, Danke!!

vg
pflock_y

ok , ich beobachte es den tag noch bei mir und stelle es dann heute abend für das normale fhemupdate bereit.

Danke für den Fehlerhinweis.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: MarkusHiba am 15 September 2019, 07:33:28
Hallo,

ich habe einen Rauchmelder / Wärmemelder  https://www.etoh24.de/indexa-rauch-und-hitzemelder-sd283st.html (https://www.etoh24.de/indexa-rauch-und-hitzemelder-sd283st.html). Voraussetzung war kein Funksystem sondern es sollte ein kabelgebundenes System und mit FHEM Steuerbar sein.
Dieser Melder funktioniert mit 12V Spannung https://www.indexa.de/w2/download/anleitungen/31_rauchmelder_hitzemelder/SD283ST_2019_01_21_internet_35750_anl.pdf (https://www.indexa.de/w2/download/anleitungen/31_rauchmelder_hitzemelder/SD283ST_2019_01_21_internet_35750_anl.pdf) und die Alarmausgänge werden mit einem Arduino ausgelesen. Dies wird dann mit dem Modul MSwitch ausgewertet und gesteuert.

Danke an Byte09 für die Hilfe bei der Code Erstellung.

Ursprungsfrage von mir:
Zitat von: MarkusHiba am 21 Juli 2019, 21:49:15


defmod Brandmeldeanlagezurueckstellen.sequence MSwitch # Brandmelder Brandmeldeanlage_zurueck_stellen
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Debug 0
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Delete_Delays 1
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Expert 1
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Extensions 0
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Help 0
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Ignore_Types "NAME=Brandmelder,Brandmeldeanlage_zurueck_stellen"
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Include_Devicecmds 1
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Include_MSwitchcmds 0
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Include_Webcmds 0
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Inforoom MSwitch
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Lock_Quickedit 1
attr Brandmeldeanlagezurueckstellen.sequence MSwitch_Mode Notify
attr Brandmeldeanlagezurueckstellen.sequence room 01_brand

setstate Brandmeldeanlagezurueckstellen.sequence active
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:18:13 .Device_Affected Brandmeldeanlage_zurueck_stellen-AbsCmd1,Brandmelder-AbsCmd1
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:35:34 .Device_Affected_Details Brandmeldeanlage_zurueck_stellen-AbsCmd1#[NF]alarm#[NF]no_action#[NF]off#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]00#[NF][Brandmelder#[dp]reading]#[sp]eq#[sp]"off"#[sp]AND#[sp][Brandmeldeanlage_zurueck_stellen#[dp]reading]#[sp]eq#[sp]"on"#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]Brandmelder-AbsCmd1#[NF]alarm#[NF]alarm#[NF]off#[NF]on#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]03#[NF][Brandmelder#[dp]reading]#[sp]eq#[sp]"off"#[sp]AND#[sp][Brandmeldeanlage_zurueck_stellen#[dp]reading]#[sp]eq#[sp]"on"#[NF][Brandmelder#[dp]reading]#[sp]eq#[sp]"on"#[sp]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 .Device_Events Brandmeldeanlagezurueckstellen.sequence:EVTPART3:connected#[tr]Brandmeldeanlagezurueckstellen.sequence:last_activation_by:event#[tr]Brandmelder:alarm:off#[tr]Brandmeldeanlagezurueckstellen.sequence:state:active#[tr]Brandmelder:reading:on#[tr]Brandmeldeanlage_zurueck_stellen:alarm:off#[tr]Brandmeldeanlagezurueckstellen.sequence:EVTPART2:state#[tr]Brandmeldeanlagezurueckstellen.sequence:EVTPART1:Echogate#[tr]Brandmeldeanlagezurueckstellen.sequence:last_event:Echogate:state:connected#[tr]Brandmeldeanlagezurueckstellen.sequence:EVENT:Echogate:state:connected#[tr]Brandmelder:reading:off#[tr]Brandmeldeanlagezurueckstellen.sequence:EVTFULL:Echogate:state:connected#[tr]Brandmelder:alarm:on#[tr]Brandmeldeanlage_zurueck_stellen:reading:on#[tr]Brandmeldeanlage_zurueck_stellen:reading:off#[tr]Echogate:state:connected
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:05:45 .First_init done
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:11:58 .Trigger_Whitelist NAME=Brandmelder,Brandmeldeanlage_zurueck_stellen
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:46:38 .Trigger_cmd_off Brandmelder:reading:on
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:46:38 .Trigger_cmd_on Brandmeldeanlage_zurueck_stellen:reading:on
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:11:58 .Trigger_condition
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:46:38 .Trigger_off no_trigger
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:46:38 .Trigger_on no_trigger
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:11:58 .Trigger_time
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:05:45 .V_Check V2.00
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 EVENT Brandmeldeanlage_zurueck_stellen:reading:off
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 EVTFULL Brandmeldeanlage_zurueck_stellen:reading:off
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 EVTPART1 Brandmeldeanlage_zurueck_stellen
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 EVTPART2 reading
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 EVTPART3 off
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:20:19 Trigger_device all_events
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-23 19:46:38 Trigger_log on
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 last_activation_by event
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:39 last_cmd 1
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 last_event Brandmeldeanlage_zurueck_stellen:reading:off
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:49 last_exec_cmd set Brandmeldeanlage_zurueck_stellen alarm off
setstate Brandmeldeanlagezurueckstellen.sequence 2019-07-24 05:36:52 state active


Grüße

MarkusHiba
Titel: Antw:98_MSwitch - Support
Beitrag von: uwirt am 16 September 2019, 20:17:53
Ist es möglich mit MSwitch eine MySQL Datenbankabfrage mittels eines Perl-Scripts zu machen?

Ich habe einige Sensoren (Libelium) die kontinuierlich eine MySQL Datenbank befüllen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 17 September 2019, 05:18:26
Zitat von: uwirt am 16 September 2019, 20:17:53
Ist es möglich mit MSwitch eine MySQL Datenbankabfrage mittels eines Perl-Scripts zu machen?

Ich habe einige Sensoren (Libelium) die kontinuierlich eine MySQL Datenbank befüllen.

moin,

ich kann die frage jetzt nicht wirklich einordnen , da ich mit mysql nichts am hut habe. Grundsätzlich ist es möglich direkt im mswitch perlcode auszuführen , somit würde ich das jetz mal sagen das es geht .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Oktober 2019, 09:55:53
Da ich die Tage leider eine Fehlermeldung übersehen habe ( Meldung in gesondertem Thread ) möchte ich euch bitten Fehlermeldungen und Fragen zu MSwitch nur in diesem Thread zu posten.

Nur hier ist gewähleistet , das ich es auch zeitnahe sehe.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Mickey Mouse am 07 Oktober 2019, 12:41:33
ich bin zu blöd: wie kann ich die Einträge für cmd1/2 der einzelnen Devices abspeichern?
ich kann da aus der drop-down Liste etwas auswählen, aber beim nächsten refresh der Seite ist das wieder weg und einen "save Knopf" oder etwas ähnliches finde ich nicht
und gehen wirklich nur 2 cmd pro device? ich könnte da mehr gebrauchen...
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 07 Oktober 2019, 13:34:22
Zitat von: Mickey Mouse am 07 Oktober 2019, 12:41:33
ich bin zu blöd: wie kann ich die Einträge für cmd1/2 der einzelnen Devices abspeichern?
ich kann da aus der drop-down Liste etwas auswählen, aber beim nächsten refresh der Seite ist das wieder weg und einen "save Knopf" oder etwas ähnliches finde ich nicht
und gehen wirklich nur 2 cmd pro device? ich könnte da mehr gebrauchen...

in der jeweiligen 'sparte' befindet sich immer ganz unten ein Button 'Modify ...' , mit diesem speicherst du änderungen jeweils ab ( siehe Bild ).

Grundsätzlich gehen hier auch mehrere cmds , aber dann über etxtra einstellungen. da es auch hier mehrere möglichkeiten gibt hängt es etwas davon ab , was genau du bezwecken willst ?

gruss Byte09

edit: wenn du Hilfe benötigst , kannst du mich auch gerne anrufen , würde dir bei bedarf die nummer per PM schicken. Ist manchmal einfacher als über das Forum

Titel: Antw:98_MSwitch - Support
Beitrag von: Mickey Mouse am 08 Oktober 2019, 10:43:01
danke!
blöd und blind ;)

ich wollte nur mal mit dem Modul etwas "spielen" um zu sehen, ob ich das als "intelligentes Makro" einsetzen kann.
mehrere Geräte zusammen schalten und vielleicht auch die ganzen Sequenzen für Fake-Roku etwas vereinfachen und aus dem Perl Code in 99_myUtils ziehen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 08 Oktober 2019, 10:48:17
Zitat von: Mickey Mouse am 08 Oktober 2019, 10:43:01
danke!
blöd und blind ;)

ich wollte nur mal mit dem Modul etwas "spielen" um zu sehen, ob ich das als "intelligentes Makro" einsetzen kann.
mehrere Geräte zusammen schalten und vielleicht auch die ganzen Sequenzen für Fake-Roku etwas vereinfachen und aus dem Perl Code in 99_myUtils ziehen.

ist beides machbar.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 15 Oktober 2019, 17:29:37
kommende Änderungen mit V2.60/V2.61

- Sequenzoption überarbeitet. Es ist nun möglich , alle Einstellungen für eine Sequenz automatisch zu generieren (V2.61)

- überarbeitet Debug-Ansicht für Funktionen 'average,tendence,difference,increase" (V2.61)

- Eventlog überarbeitet ( Bei Bedarf können alle eingehenden Events chronologisch gespeichert werden und in den Conditions besteht Zugriff auf diese ) (V2.61)

- unkomplizierte zusätzliche option zur selbstriggerung (V2.61) : https://wiki.fhem.de/wiki/MSwitch#MSwitch_Selftrigger_always_.280.2C1.29 (https://wiki.fhem.de/wiki/MSwitch#MSwitch_Selftrigger_always_.280.2C1.29)

- alle Get Befehle umbenannt (V2.61)

- Der Mode "Dummy" ( wird laut statistik nicht genutzt ) wird zum Mode "activeDummy" und vereint Funktionen eines Dummys und eines Notifys in einem leicht zu konfigurierendem Device. Damit kann die oft genutzte Variante Dummy/Notify gegen ein Device ersetzt werden. (kommt mit V2.62)

... diverse Kleinigkeiten (V2.61)

unter Umständen werde ich diese Änderungen auf 2 Updates verteilen.

Gruss Byte09

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 November 2019, 06:03:09
mit kommendem Update ( morgen früh ) wird der Modus 'activeDummy' vollständig integriert und kann dann die Kombination Dummy Notify bei Bedarf ersetzen .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 01 November 2019, 06:16:50
Da bin ich mal gespannt - hab immer nen Bogen um mswitch gemacht. Aber die Ablösung von dummy+notify Paaren
klingt spannend!  :)

VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 November 2019, 06:21:24
Zitat von: binford6000 am 01 November 2019, 06:16:50
Da bin ich mal gespannt - hab immer nen Bogen um mswitch gemacht. Aber die Ablösung von dummy+notify Paaren
klingt spannend!  :)

VG Sebastian

Hi Sebastian,

darf ich nach dem Grund fragen , warum du imme nen Bogen um MSwitch gemacht hast ?

Wenn dieses besondere Gründe hat würde ich diese gerne ändern .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 01 November 2019, 06:35:11
Zitatdarf ich nach dem Grund fragen , warum du imme nen Bogen um MSwitch gemacht hast ?

Klaro  ;)
Als du mswitch gestartet hast, habe ich es gleich ausprobiert - und es war mir zu kompliziert - für mein damaliges fhem-KungFu  ;)
Ich wusste gar nicht was ich wo wie einzustellen habe und deswegen wurde mswitch wieder aussortiert.

Ich hab auch mit zig DOIFs gestartet und bin aber auch schnell an Grenzen gestoßen. Mit der Zeit wurde alles komplexer und ich
habe die DOIFs Stück für Stück in notifys gewandelt. Mittlerweile nutze ich kaum noch DOIFs, stattdessen viele dummy+notify Konstrukte.
Das meiste hat was mit Alexa & Co. bzw. Schalter im Webfrontend zu tun  ;)

Vorhin habe ich mal kurz mswitch ausprobiert - diesmal ohne Doku und mit sofortigem Erfolg  ;D
Ich sehe es hat sich einiges verändert. Sehr gut! Von daher bin ich gespannt, ob ich nicht einige dieser "Schlater" demnächst mit
mswitchen betreibe  ;)

VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 November 2019, 06:56:18
Zitat von: binford6000 am 01 November 2019, 06:35:11
Klaro  ;)
Als du mswitch gestartet hast, habe ich es gleich ausprobiert - und es war mir zu kompliziert - für mein damaliges fhem-KungFu  ;)
Ich wusste gar nicht was ich wo wie einzustellen habe und deswegen wurde mswitch wieder aussortiert.

Ich hab auch mit zig DOIFs gestartet und bin aber auch schnell an Grenzen gestoßen. Mit der Zeit wurde alles komplexer und ich
habe die DOIFs Stück für Stück in notifys gewandelt. Mittlerweile nutze ich kaum noch DOIFs, stattdessen viele dummy+notify Konstrukte.
Das meiste hat was mit Alexa & Co. bzw. Schalter im Webfrontend zu tun  ;)

Vorhin habe ich mal kurz mswitch ausprobiert - diesmal ohne Doku und mit sofortigem Erfolg  ;D
Ich sehe es hat sich einiges verändert. Sehr gut! Von daher bin ich gespannt, ob ich nicht einige dieser "Schlater" demnächst mit
mswitchen betreibe  ;)

VG Sebastian
Ich werde den Modus dann in den "Schlater-modus" umbenennen [emoji6]

gruss Thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 01 November 2019, 07:33:51
Zitat von: Byte09 am 01 November 2019, 06:56:18
Ich werde den Modus dann in den "Schlater-modus" umbenennen [emoji6]

gruss Thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Oh danke für die Ehre der Namensgebung [emoji4]
VG Sebastian


Gesendet von iPad mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 07:50:38
Webinterface - lange Ladezeiten:

Bei Installationen mit sehr vielen Devices kann es im Webinterface zu relativ langen Ladezeiten bis zum Seitenaufbau kommen.

Dieses kommt daher, das bei Aufruf des Interfaces alle Devices angefragt werden , um Ihren Befehlssatz zur Verfügung zu haben.

Um diese Ladezeit zu verkürzen , ist es sinnvoll  das Attribut 'MSwitch_DeleteCMDs' auf 'automatic' zu setzen.

Dadurch werden bei Aufruf des Interfaces alle Devices nur einmalig abgefragt und entsprechende Daten zwischengespeichert. Diese stehen dann bei jedenm erneuten Aufruf zur Verfügung und werden nach 30 Minuten automatisch gelöscht.

Achtung: Dieses hat allerdings zur Folge, das Daten innerhalb dieser 30 Minuten nicht automatisch aktualisiert werden , wenn andere Devices geändert werden ( im Normalfall ist dieses kaum relevant ). Sollte es doch mal vorkommen , das aufgrund dessen angebotene Befehlssätze eines Devices unvollständig sind , müssen die Befehlssätze im Interface manuell Nachgeladen werden . Nach den besagten 30 Minuten werden Sie bei Bedarf automatisch nachgeladen.

Hierzu gibt es den im Anhang markierten Button. Dieser ist nur dann vorhanden , wenn beim Aufbau des Webinterfaces auf gespeicherte Daten zugegriffen wurde.

Befindet sich das MSwitch im passiven Dummymode ist diese Einstellung nicht relevant, da hier grundsätzlich diese Daten nicht benötigt werden und somit auch nicht abgefragt werden.

Hierbei geht es lediglich um das Bearbeiten vom MSwitch-Devices über das Webinterace. Diese Verzögerung tritt im 'laufenden Betrieb' nicht auf, da diese Daten nur für das Webinterface benötigt werden.

Gruss Byte09



Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 02 November 2019, 09:15:10
Moin Thomas,
ich hab mir natürlich sofort einen Schlater ;) gebaut um den activeDummy Modus zu testen.
Das Ergebnis ist nüchtern: einfach und schnell einzurichten, tut was es soll.  :)

Hier das Ergebnis:
Internals:
   CFGFN     
   DEF        schlater   # aquarium_sz
   FUUID      5dbd369f-f33f-fe74-45ef-5622d4e76c526a0b
   INIT       fhem.save
   MODEL      Dummy
   NAME       schlater
   NR         45
   STATE      off
   Support_Fhemforum https://forum.fhem.de/index.php/topic,86199.0.html
   TYPE       MSwitch
   Version_Datenstruktur V2.00
   Version_Modul 2.62
   Version_autoupdate off
   eventsave  unsaved
   OLDREADINGS:
   READINGS:
     2019-11-02 08:58:57   Trigger_log     off
     2019-11-02 09:09:26   last_activation_by manual
     2019-11-02 09:09:26   last_exec_cmd   set aquarium_sz off
     2019-11-02 09:09:26   state           off
   helper:
     eventfrom  schlater
     devicecmds1:
     events:
       :
         no_trigger on
         off        on
         on         on
     savemode:
       157268155129897 157268155129897
       157268155130343 157268155130343
       157268155393703 157268155393703
       157268155394069 157268155394069
     savemodeblock:
     tmp:
Attributes:
   MSwitch_Debug 0
   MSwitch_Eventhistory 0
   MSwitch_Help 0
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Mode Dummy
   MSwitch_Selftrigger_always 1
   cmdIcon    on:rc_dot@blue off:rc_dot@grey
   devStateIcon on:ios-on-blue:off off:ios-off:on
   icon       control_standby
   webCmd     on:off
   webCmdLabel on:cmd1 off:cmd2


Ersetzt eine Kombination aus dummy und notify in einem Device.

VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 11:26:23
info:

Ich habe leider vergessen den 'MSwitch_Inforoom' an die neue Dummyfunktion anzupassen und werde das mit morgigem Update beheben.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 02 November 2019, 12:05:53
Was mir auch noch gut gefällt: Ganz intuitiv mit $SELF andere cmds im mswitch triggern:
set TYPE=SONOSPLAYER PlayURITemp //10.3.3.6/SonosSpeak/tagesschau100sek.mp3 30; sleep 2; set $SELF off

Mit "on/cmd1" wird die tagesschau abgespielt und nach 2 Sekunden wieder auf cmd2/off gesetzt.
Die "einfacheren" dummy+notifys sind bereits Geschichte - jetzt kommen die mit komplexeren PERL-Zeugs dran... Bin weiter gespannt  :)

VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 02 November 2019, 12:18:00
Mir sei die Anfänger-MSwitch-Frage gestattet: Kann ich auch set-Extensions wie on-for-timer nutzen?
VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 12:21:32
Zitat von: binford6000 am 02 November 2019, 12:05:53
Was mir auch noch gut gefällt: Ganz intuitiv mit $SELF andere cmds im mswitch triggern:
set TYPE=SONOSPLAYER PlayURITemp //10.3.3.6/SonosSpeak/tagesschau100sek.mp3 30; sleep 2; set $SELF off

Mit "on/cmd1" wird die tagesschau abgespielt und nach 2 Sekunden wieder auf cmd2/off gesetzt.
Die "einfacheren" dummy+notifys sind bereits Geschichte - jetzt kommen die mit komplexeren PERL-Zeugs dran... Bin witer gespannt  :)

VG Sebastian

wen du hier experimentierst, insbesonder mit selbstriggern etc., achte bitte darauf, dass das Attribut 'MSwitch_Safemode' immer auf '1' steht. Dieses verhindert, das du versehentlich in einer Endlosschleife landest , die nur noch auf die harte Tour beendet werden kann und schaltet das verdächtige MSwitch im Zweifel ab ( disable = 1 ).

Dieses Attribut steht bei im Dummymode derzeit nicht zur Verfügung .

gruss Thomas



Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 12:29:02
Zitat von: binford6000 am 02 November 2019, 12:18:00
Mir sei die Anfänger-MSwitch-Frage gestattet: Kann ich auch set-Extensions wie on-for-timer nutzen?
VG Sebastian
Was genau meinst du?

edit: ahh ... ok . ja , das geht in allen Modi , ausser im Dummymode, kann ich aber kurzfristig einbauen.
edit1: irrtum , ich habe das irgendwann mal rausgenommen , weiss gar nicht mehr warum , ich aktiviere das morgen wieder .


Du kannst mich gerne bei Fragen anrufen, ist oft einfacher und schneller. Ich schicke dir die Nummer per pm.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 02 November 2019, 13:42:26
Zitatich aktiviere das morgen wieder .
Danke, das reicht mir vollkommen.

Auf den Telefon-Support komme ich bei Gelegenheit gerne mal zurück. Danke dir dafür  :)
VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 15:39:08
ich habe jetzt für den Dummymode das attribut 'useSetExtensions' analog dem 'Dummy' eingebaut. das ganze ist doch etwas aufwendiger als gedacht, daher vorerst nur im Dummymode, dort macht es am meisten sinn.

Vorstellbar wäre es noch im 'Fullmode' , das baue ich aber nur dann ein, wenn hier entsprechender Bedarf angemeldet wird ( im Fullmode ist das auch mit deviceeigenen mitteln theoretisch leicht zu realisieren ).

ist mit morgigem Update verfügbar

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 02 November 2019, 16:21:19
Zitat von: Byte09 am 02 November 2019, 15:39:08
ich habe jetzt für den Dummymode das attribut 'useSetExtensions' analog dem 'Dummy' eingebaut. das ganze ist doch etwas aufwendiger als gedacht, daher vorerst nur im Dummymode, dort macht es am meisten sinn.

Vorstellbar wäre es noch im 'Fullmode' , das baue ich aber nur dann ein, wenn hier entsprechender Bedarf angemeldet wird ( im Fullmode ist das auch mit deviceeigenen mitteln theoretisch leicht zu realisieren ).

ist mit morgigem Update verfügbar

gruss Byte09

Super, danke dir!  :)
VG Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 02 November 2019, 16:32:31
Zitat von: binford6000 am 02 November 2019, 16:21:19
Super, danke dir!  :)
VG Sebastian

testversion im git verfügbar

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

reload 98_MSwitch.pm

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 03 November 2019, 10:13:29
Hallo Byte09,

danke für dein sehr gelungenes Modul. Beim Einstieg in FHEM vor fünf Jahren hätte ich genau so ein Modul erwartet :-) Mein Thema ist eventuell etwas off-topic, kann ja eventuell in einen eigenen Thread verschoben werden, weil hier schon sehr lang.

Ich habe mich gestern bemüht die Funktionalität zu ergründen, hab auch Teilerfolge, aber insgesamt habe ich öfter das Gefühl von Knete im Hirn. Ich vermute, es liegt neben der umfangreichen Funktionalität auch daran, dass es natürlich für dich beim Schreiben der  Dokumentation viel Arbeit macht, sich trotz der vielen Erfahrungen wieder in die Einsteigerperspektive zu versetzen. Wenn du nichts dagegen hast, würde ich gerne versuchen das Verstandene ins Wiki einzuarbeiten*. Ich hänge mal ein Struktogramm mit meinen bisher entwickelten Vorstellungen von der Funktion an. Außerdem habe ich Fragen zur konkreten Anwendung die ich plane:
Gruß krueuw

* Das S7-Wiki https://wiki.fhem.de/wiki/S7 (https://wiki.fhem.de/wiki/S7) wäre ein Beispiel wie ich mir den Endzustand prinzipiell vorstellen könnte.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 November 2019, 11:36:32
Zitat von: krueuw am 03 November 2019, 10:13:29
Hallo Byte09,

danke für dein sehr gelungenes Modul. Beim Einstieg in FHEM vor fünf Jahren hätte ich genau so ein Modul erwartet :-) Mein Thema ist eventuell etwas off-topic, kann ja eventuell in einen eigenen Thread verschoben werden, weil hier schon sehr lang.

Ich habe mich gestern bemüht die Funktionalität zu ergründen, hab auch Teilerfolge, aber insgesamt habe ich öfter das Gefühl von Knete im Hirn. Ich vermute, es liegt neben der umfangreichen Funktionalität auch daran, dass es natürlich für dich beim Schreiben der  Dokumentation viel Arbeit macht, sich trotz der vielen Erfahrungen wieder in die Einsteigerperspektive zu versetzen. Wenn du nichts dagegen hast, würde ich gerne versuchen das Verstandene ins Wiki einzuarbeiten*. Ich hänge mal ein Struktogramm mit meinen bisher entwickelten Vorstellungen von der Funktion an. Außerdem habe ich Fragen zur konkreten Anwendung die ich plane:

  • Wie hängt das Repeat-Delay mit dem separaten Delay konkret zusammen?
  • Kann beim Blinken auch ein unsymmetrisches Signal-Pausen-Verhältnis erzeugt werden?
Gruß krueuw

* Das S7-Wiki https://wiki.fhem.de/wiki/S7 (https://wiki.fhem.de/wiki/S7) wäre ein Beispiel wie ich mir den Endzustand prinzipiell vorstellen könnte.

Hi krueuw,

dank dir erstmal.

sehr gerne kannst du dich an der Dokumentation beteiligen , ich bin für jede Hilfe dankbar, da ich
1. schreibfaul bin
2. meine Zeit es oft nicht zulässt

Deine Ideen und kannst du gerne im Wiki umsetzen , es wäre ggf. nur nett, wenn du dich mit dem User Maista etwas abstimmst, da er bisher viel Zeil in das Wiki inverstiert hat und sich sehr bemüht dieses halbwegs auf dem laufenden zu halten ( danke @Maisa hierfür ) .

Deine angehängten Ansätze gefallen mir sehr gut !

ZitatWie hängt das Repeat-Delay mit dem separaten Delay konkret zusammen?

es gibt 4 arten von delays:

1. das Attribut 'MSwitch_Startdelay'

dieses bestimmt die Zeit nach einem Fhemstart, während der ein MSwitch überhaupt nicht auf Events reagiert . Standart ist hier 10 Sekunden. ( Ist nur dazu bestimmt , unerwünschte Effekte bei Fhemstart zu verhindern , da es immer mal wieder Devices gibt, die bei Start Events verschiessen )

2. der SET Befehl wait

set MSwitch wait 10

bewirkt , das das Device für 10 Sekunden nicht mehr auf events reagiert und kann mit set Device wait 0 wieder gelöscht / überschrieben werden.

3. im Expertmodus die Felder 'Repeats' und 'Repeatdelay in sec'

bewirken eine x-fache Befehlswiederholung im Abstand von x Sekunden

4 in den Befehlszweigen:

delay with Cond-check immediately and delayed:

Der Befehl wird Zeitzerzögert ausgeführt um angegebene Zeit . Die angegebene Bedingung für die Befehlsausführung wird beim eintreffen des Events und unmittelbar vor Befehlsausführung geprüft , die Bedingungen müssen zu beiden Zeitpunkten wahr sein.


delay with Cond-check immediately only:
siehe oben ... die Bedingung muss nur bei Eintreffen des Events wahr sein.

delay with Cond-check delayed only:

siehe oben ... die Bedingung muss nur unmittelbar vor Befehlsausführung wahr sein.



at with Cond-check immediately and delayed:
at with Cond-check immediately only:
at with Cond-check delayed only:

entspricht den Delays , nur wird hier nicht eine Verzögerung für Befehlsausführung angegenen , sondern ein konkreter Zeitpunkt wann der Befehl ausgeführt werden soll. Die abarbeitung erfolgt beim nächsten eintreffen dieses Zeitpunktes, ggf. am folgetag.


gruss Byte09

Ps: auch dir biete ich gerne an das du mich bei Fragen anrufen kannst , die nummer poste ich dir nachher per PM



Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 November 2019, 12:01:32
ZitatKann beim Blinken auch ein unsymmetrisches Signal-Pausen-Verhältnis erzeugt werden?

ja, wird hier aber zu umfangreich .

ich baue dir was entsprechendes, gib mir ein paar minuten

was genau soll blinken , und wie lange ( abhängigkeit ?)  . soll ein weiteres device blinken oder soll das MSwitch den Zustand wechseln ?

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 03 November 2019, 14:31:17
Zitat von: krueuw am 03 November 2019, 10:13:29
....... Wenn du nichts dagegen hast, würde ich gerne versuchen das Verstandene ins Wiki einzuarbeiten*. Ich hänge mal ein Struktogramm mit meinen bisher entwickelten Vorstellungen von der Funktion an. Außerdem .......

Gruß krueuw

* Das S7-Wiki https://wiki.fhem.de/wiki/S7 (https://wiki.fhem.de/wiki/S7) wäre ein Beispiel wie ich mir den Endzustand prinzipiell vorstellen könnte.


die wikiänderunge sehen super aus, habe sie bisher aber nur kurz überflogen

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 03 November 2019, 16:26:21
Hallo zusammen,

Zitat von: Byte09 am 03 November 2019, 11:36:32

Deine Ideen und kannst du gerne im Wiki umsetzen , es wäre ggf. nur nett, wenn du dich mit dem User Maista etwas abstimmst, da er bisher viel Zeil in das Wiki inverstiert hat und sich sehr bemüht dieses halbwegs auf dem laufenden zu halten ( danke @Maisa hierfür ) .


Thomas, zuviel der Ehre  ;)
Ich habe lediglich versucht, ein paar Dinge die mir aufgefallen, sind anzupassen.
Wie das so ist beim schreiben, irgendwann sieht man die Fehler nicht mehr.

Was Beispiele angeht kann ich (bisher) nichts dazu beitragen.

Wenn krueuw sich hier einbringen kann, schadet das der Doku sicher nicht.

Der Funktionsumfang von MSwitch wird ja von Version zu Version größer.


Zitatdie wikiänderunge sehen super aus, habe sie bisher aber nur kurz überflogen
Dem kann ich mich nur anschließen!

Danke Euch dafür zurück.

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 03 November 2019, 21:11:29
Zitat von: Byte09 am 02 November 2019, 16:32:31
testversion im git verfügbar

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

reload 98_MSwitch.pm

gruss Byte09

Hi Thomas,
habe mir die neuste Version gezogen und useSetExtensoins ausprobiert. Klappt einwandfrei!

Vielen Dank und VG,
Sebastian
Titel: Antw:98_MSwitch - Support
Beitrag von: binford6000 am 03 November 2019, 21:13:23
ZitatWas Beispiele angeht kann ich (bisher) nichts dazu beitragen.

Ein mögliches Beispiel wäre der dummy/notify-Ersatz. Ich denke der Anwendungsfall kommt häufig vor.
Am besten noch ergänzt durch useSetExtensions.

VG Sebastian 
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 07:36:48
info:

in der letzten version habe ich das Verhalten beim anlegen neuer MSwitch Devices geändert.

diese kann nun leider dazu führen, daß beim einspielen kompletter raw Definitionen die daten nicht komplett übernommen werden.

dieser fehler taucht nur in diesem Zusammenhang auf und stört den laufenden Betrieb ansonsten nicht.

mit morgigem Update ist das behoben

@krueuw
das kann auch die Definitionen betreffen, die ich dir gestern geschickt habe. Wenn dem so ist melde dich einfach. Das Verhalten ist daran erkennbar, daß keine affected devices angelegt werden


gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 04 November 2019, 14:43:54
Hi,

ich nutze seit längeren schon DOIF und  bin damit soweit ganz zufrieden.
Aber ich möchte mich auch mal mit dem MSwitch Modul beschäftigen - tue ich aber etwas schwer im Moment.
Wie mache ich denn mit MSwitch folgendes:

Wenn Bewegungsmelder auf Motion schaltet, soll eine Lampe angehen. Soweit bekomme ich es noch hin. Die Lampe soll 5 Minuten an sein. Wenn in dieser Zeit der Bewegungsmelder wieder "motion" sendet, dann soll die Zeit wieder um weitere 5 Minuten verlängert werden.
Passiert in den 5 Minuten nichts soll die Lampe ausgehen.

Da stehe ich mit dem MSwitch Modul zur Zeit aufm Schlauch.

Hast Du da eine Idee?

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 15:04:12
Zitat von: hermann1514 am 04 November 2019, 14:43:54
Hi,

ich nutze seit längeren schon DOIF und  bin damit soweit ganz zufrieden.
Aber ich möchte mich auch mal mit dem MSwitch Modul beschäftigen - tue ich aber etwas schwer im Moment.
Wie mache ich denn mit MSwitch folgendes:

Wenn Bewegungsmelder auf Motion schaltet, soll eine Lampe angehen. Soweit bekomme ich es noch hin. Die Lampe soll 5 Minuten an sein. Wenn in dieser Zeit der Bewegungsmelder wieder "motion" sendet, dann soll die Zeit wieder um weitere 5 Minuten verlängert werden.
Passiert in den 5 Minuten nichts soll die Lampe ausgehen.

Da stehe ich mit dem MSwitch Modul zur Zeit aufm Schlauch.

Hast Du da eine Idee?

Gruß
Hermann
hi,

schaltest du die Lampe nur an, oder versteht sie on-for-timer?

ist im Grunde beides einfach umzusetzen, aber on-for-timer ist immer etwas schöner.

davon abhängig ist aber das Vorgehen.

gruss Byte09

edit: ich bin erst ab 17 Uhr zuhause und kann erst dann wieder antworten

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 19:26:57
Ein Riesen-Dankeschön einfach mal an
@krueuw
für das neue Erscheinungsbild des MSwitch-Wikis in dem eine Riesenarbeit steckt.

Gruss Byte09.



Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 04 November 2019, 20:11:35
Zitat von: Byte09 am 04 November 2019, 15:04:12
hi,

schaltest du die Lampe nur an, oder versteht sie on-for-timer?

ist im Grunde beides einfach umzusetzen, aber on-for-timer ist immer etwas schöner.

davon abhängig ist aber das Vorgehen.

gruss Byte09

edit: ich bin erst ab 17 Uhr zuhause und kann erst dann wieder antworten

Gesendet von meinem ELE-L29 mit Tapatalk

Hi,
da ich viele MQTT Geräte damit schalten will, ist on-for-timer....(soweit ich weiß) nicht nutzbar - oder? Wird mir bei dem Device jedenfalls nicht angezeigt.

Im Moment schalte ich es per on - off ;-)

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 04 November 2019, 20:18:18
Hallo Byte09,

danke für die Blumen :-)) Ich bin dann durch mit der Wiki-Überarbeitung und habe dabei (hoffentlich) mein Verständnis der Funktion verbessert ;-)
Wenn das Ding die Massen ergreifen soll, was es verdient, müssten IMHO ein paar Dinge sein:
Konkrete Vorschläge:
Am meisten würde wohl device actions von einer Zweiteilung profitieren. Ist mir schon klar, dass ich das nicht voll überblicke - hab im FHEM-Webinterface noch keinen Blick in den Code riskiert. Ist nur der Gedanke des Einsteigers - der dann gewöhnlich der Gewöhnung weicht und schließlich in die Verteidigungshaltung mündet, weil in Fleisch und Blut übergegangen ;-)

Aber selbst wenn es so bleibt, ein Spitzending.



Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 20:33:33
Zitat von: hermann1514 am 04 November 2019, 20:11:35
Hi,
da ich viele MQTT Geräte damit schalten will, ist on-for-timer....(soweit ich weiß) nicht nutzbar - oder? Wird mir bei dem Device jedenfalls nicht angezeigt.

Im Moment schalte ich es per on - off ;-)

Gruß
Hermann
anbei die rawdefinition von 3 devices, wobei 2 nur als dummy für den bewegungsmelder und die lampe fungieren.

'Bewegungsschaltung' ist das relevante MSwitch , dort kannst du schauen wie es gelöst ist.

wichtig ist das du in diesem device nach dem einspielen einmal 'modify trigger device' drückst, damit es initialisiert wird.

auch musst du vorher ein update auf folgende version machen , da die gegenwärtig offizielle version das einspielen von devices nicht 'mag' ( siehe 2 beiträge oben )

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

nach dem update einmal reload 98_MSwitch.pm

bei fragen dann einfach melden.

PS: die devices werden im Raum 'MSwitch_Devikes' angelegt.


defmod Bewegungsschaltung MSwitch Bewegungsmelder  # gechaltete_lampe
attr Bewegungsschaltung MSwitch_Debug 0
attr Bewegungsschaltung MSwitch_Delete_Delays 1
attr Bewegungsschaltung MSwitch_Eventhistory 0
attr Bewegungsschaltung MSwitch_Expert 0
attr Bewegungsschaltung MSwitch_Extensions 0
attr Bewegungsschaltung MSwitch_Help 0
attr Bewegungsschaltung MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsschaltung MSwitch_Include_Devicecmds 1
attr Bewegungsschaltung MSwitch_Include_MSwitchcmds 0
attr Bewegungsschaltung MSwitch_Include_Webcmds 0
attr Bewegungsschaltung MSwitch_Inforoom MSwitch
attr Bewegungsschaltung MSwitch_Lock_Quickedit 1
attr Bewegungsschaltung MSwitch_Mode Notify
attr Bewegungsschaltung MSwitch_Safemode 1
attr Bewegungsschaltung room MSwitch_Devices

defmod Bewegungsmelder MSwitch  # nodevices
attr Bewegungsmelder MSwitch_Debug 0
attr Bewegungsmelder MSwitch_Eventhistory 0
attr Bewegungsmelder MSwitch_Help 0
attr Bewegungsmelder MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsmelder MSwitch_Inforoom MSwitch
attr Bewegungsmelder MSwitch_Mode Dummy
attr Bewegungsmelder room MSwitch_Devices
attr Bewegungsmelder setList motion
attr Bewegungsmelder webCmd motion

defmod gechaltete_lampe MSwitch  # nodevices
attr gechaltete_lampe MSwitch_Debug 0
attr gechaltete_lampe MSwitch_Eventhistory 0
attr gechaltete_lampe MSwitch_Help 0
attr gechaltete_lampe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr gechaltete_lampe MSwitch_Inforoom MSwitch
attr gechaltete_lampe MSwitch_Mode Dummy
attr gechaltete_lampe room MSwitch_Devices
attr gechaltete_lampe setList on off

setstate Bewegungsmelder motion
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Affected no_device
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Events no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .First_init done
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .V_Check V2.00
setstate Bewegungsmelder 2019-11-04 20:16:41 Trigger_log off
setstate Bewegungsmelder 2019-11-04 20:22:29 state motion

setstate Bewegungsschaltung active
setstate Bewegungsschaltung 2019-11-04 20:21:36 .Device_Affected gechaltete_lampe-AbsCmd1,gechaltete_lampe-AbsCmd2
setstate Bewegungsschaltung 2019-11-04 20:21:52 .Device_Affected_Details gechaltete_lampe-AbsCmd1#[NF]on#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]gechaltete_lampe-AbsCmd2#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]05#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Bewegungsschaltung 2019-11-04 20:22:29 .Device_Events state:motion #[tr]no_trigger
setstate Bewegungsschaltung 2019-11-04 20:17:15 .First_init done
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_on state:motion
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_condition
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_on no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_time
setstate Bewegungsschaltung 2019-11-04 20:17:15 .V_Check V2.00
setstate Bewegungsschaltung 2019-11-04 20:20:48 EVENT state:motion
setstate Bewegungsschaltung 2019-11-04 20:20:48 EVTFULL Bewegungsmelder:state:motion
setstate Bewegungsschaltung 2019-11-04 20:20:48 EVTPART1 Bewegungsmelder
setstate Bewegungsschaltung 2019-11-04 20:20:48 EVTPART2 state
setstate Bewegungsschaltung 2019-11-04 20:20:48 EVTPART3 motion
setstate Bewegungsschaltung 2019-11-04 20:20:41 Trigger_device Bewegungsmelder
setstate Bewegungsschaltung 2019-11-04 20:20:56 Trigger_log on
setstate Bewegungsschaltung 2019-11-04 20:22:29 last_activation_by event
setstate Bewegungsschaltung 2019-11-04 20:20:48 last_event state:motion
setstate Bewegungsschaltung 2019-11-04 20:22:34 last_exec_cmd set gechaltete_lampe off
setstate Bewegungsschaltung 2019-11-04 20:22:29 state active

setstate gechaltete_lampe off
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Affected no_device
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Events no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .First_init done
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .V_Check V2.00
setstate gechaltete_lampe 2019-11-04 20:17:03 Trigger_log off
setstate gechaltete_lampe 2019-11-04 20:22:34 state off


   
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 20:38:47
Zitat von: krueuw am 04 November 2019, 20:18:18
....

  • einfacheres aufgeräumteres Erscheinungsbild nach dem Define
  • Konfigurationsmöglichkeiten in der Weboberfläche (per Ajax?) um probeweise weitere Möglichkeiten einzublenden und beim Erschrecken gleich wieder auszublenden ;-)
Konkrete Vorschläge:

  • pro Funktionseinheit einen eigenen Rahmen verwenden. Dies auch um den Preis, dass es dadurch mehr werden.
  • Vorbild wäre eine Roadmap, nur dass hier alle Schritte als Liste sichtbar bleiben.
  • Die Zweige 1 bzw. 2 würde ich innerhalb der Rahmen nebeneinander darstellen, weil es ja, wenn ich es richtig verstanden habe, eine parallele Vorstellung ist (je nach Bildschirm-Auflösung). 
Am meisten würde wohl device actions von einer Zweiteilung profitieren. Ist mir schon klar, dass ich das nicht voll überblicke - hab im FHEM-Webinterface noch keinen Blick in den Code riskiert. Ist nur der Gedanke des Einsteigers - der dann gewöhnlich der Gewöhnung weicht und schließlich in die Verteidigungshaltung mündet, weil in Fleisch und Blut übergegangen ;-)

....

Hi Uwe

ich hatte heute einen hefigen arbeitstag und bin nicht mehr wirklich aufnahmefähig. Können wir dazu ggf. morgen mal telefonieren ( so gegen 19 Uhr ) ? Ich würde mich dann bei dir melden.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 04 November 2019, 20:50:58
Hi Thomas, mach dir keinen Stress :-) Bin morgen erst gegen 21:05 Uhr wieder da. Gerne würde ich dann dazu mit dir telefonieren.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 November 2019, 20:52:42
Zitat von: krueuw am 04 November 2019, 20:50:58
Hi Thomas, mach dir keinen Stress :-) Bin morgen erst gegen 21:05 Uhr wieder da. Gerne würde ich dann dazu mit dir telefonieren.
ok, wenn du dann noch Lust hast ruf mich einfach an, ansonsten ist übermorgen ja auch noch ein Tag [emoji6]

gruss Thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 05 November 2019, 18:17:11
Hallo Byte09

irgendwie klappen gerade die Time-Events nicht mehr
z.B. [18:15|!$we] oder [18:15|1-5]
dafür aber
[18:15]

Was ist da los?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 November 2019, 19:10:46
Zitat von: Panik am 05 November 2019, 18:17:11
Hallo Byte09

irgendwie klappen gerade die Time-Events nicht mehr
z.B. [18:15|!$we] oder [18:15|1-5]
dafür aber
[18:15]

Was ist da los?

schaue ich mir an , dauert aber noch ein stündchen.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 05 November 2019, 20:04:34
Zitat von: Byte09 am 04 November 2019, 15:04:12
hi,

schaltest du die Lampe nur an, oder versteht sie on-for-timer?

ist im Grunde beides einfach umzusetzen, aber on-for-timer ist immer etwas schöner.

davon abhängig ist aber das Vorgehen.

gruss Byte09

edit: ich bin erst ab 17 Uhr zuhause und kann erst dann wieder antworten

Gesendet von meinem ELE-L29 mit Tapatalk

Hi,

habe gestern Abend gelernt dass man bei den MQTT Devices auch on-for-timer aktivieren kann.
Wie sieht das ganze denn dann mit dem Bewegungsmelder aus?

Je öfter man mit dem Webinterface rumspielt umso besser versteht man die Konfiguration :-)
Danke für das Modul.

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 November 2019, 20:06:00
Zitat von: Panik am 05 November 2019, 18:17:11
Hallo Byte09

irgendwie klappen gerade die Time-Events nicht mehr
z.B. [18:15|!$we] oder [18:15|1-5]
dafür aber
[18:15]

Was ist da los?

jetzt hast du mich echt gekriegt und ich habe einen Fehler gesucht der ( zumindest bei mir ) nicht da ist .

die Syntax stimmt nicht und sollte so noch nie funktioniert haben ( ich muss geich maldas wiki kontrollieren, wie es dort beschrieben ist )

Die Variable $we ist anstatt der Tagesangabe verwendbar
[STUNDEN:MINUTEN|$we] - Schaltvorgang nur an Wochenenden.
[STUNDEN:MINUTEN|!$we] - Schaltvorgang nur an Werktagen.


[17:00|1][18:30|23] würde den Trigger Montags um 17 Uhr auslösen und Dienstags,Mittwochs um 18 Uhr 30.

das heisst du musst die Tage einfach aneinanderreihen , von-bis geht nicht.

diese Optionen habe ich gerade alle getestet und sie funktionieren.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 November 2019, 20:12:37
Zitat von: hermann1514 am 05 November 2019, 20:04:34
Hi,

habe gestern Abend gelernt dass man bei den MQTT Devices auch on-for-timer aktivieren kann.
Wie sieht das ganze denn dann mit dem Bewegungsmelder aus?

Je öfter man mit dem Webinterface rumspielt umso besser versteht man die Konfiguration :-)
Danke für das Modul.

Gruß
Hermann


anbei die 3 devices mit entsprechendem Umbau , macht es ganz einfach mit on-for-timer.


du brauchst im Grunde im MSwitch nur den simulierenden Bewegungsmelder gegen deinen Bewegungsmelder zu tauschen und das Event anpassen , falls erforderlich .

gruss thomas

defmod Bewegungsschaltung MSwitch Bewegungsmelder   # gechaltete_lampe
attr Bewegungsschaltung MSwitch_Debug 0
attr Bewegungsschaltung MSwitch_Delete_Delays 1
attr Bewegungsschaltung MSwitch_Eventhistory 0
attr Bewegungsschaltung MSwitch_Expert 0
attr Bewegungsschaltung MSwitch_Extensions 0
attr Bewegungsschaltung MSwitch_Help 0
attr Bewegungsschaltung MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsschaltung MSwitch_Include_Devicecmds 1
attr Bewegungsschaltung MSwitch_Include_MSwitchcmds 0
attr Bewegungsschaltung MSwitch_Include_Webcmds 0
attr Bewegungsschaltung MSwitch_Inforoom MSwitch
attr Bewegungsschaltung MSwitch_Lock_Quickedit 1
attr Bewegungsschaltung MSwitch_Mode Notify
attr Bewegungsschaltung MSwitch_Safemode 1
attr Bewegungsschaltung room MSwitch_Devices

defmod Bewegungsmelder MSwitch # nodevices
attr Bewegungsmelder MSwitch_Debug 0
attr Bewegungsmelder MSwitch_Eventhistory 0
attr Bewegungsmelder MSwitch_Help 0
attr Bewegungsmelder MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsmelder MSwitch_Inforoom MSwitch
attr Bewegungsmelder MSwitch_Mode Dummy
attr Bewegungsmelder room MSwitch_Devices
attr Bewegungsmelder setList motion
attr Bewegungsmelder webCmd motion

defmod gechaltete_lampe MSwitch # nodevices
attr gechaltete_lampe MSwitch_Debug 0
attr gechaltete_lampe MSwitch_Eventhistory 0
attr gechaltete_lampe MSwitch_Help 0
attr gechaltete_lampe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr gechaltete_lampe MSwitch_Inforoom MSwitch
attr gechaltete_lampe MSwitch_Mode Dummy
attr gechaltete_lampe room MSwitch_Devices
attr gechaltete_lampe setList on off
attr gechaltete_lampe useSetExtensions 1

setstate Bewegungsmelder motion
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Affected no_device
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Events no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .First_init done
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .V_Check V2.00
setstate Bewegungsmelder 2019-11-04 20:16:41 Trigger_log off
setstate Bewegungsmelder 2019-11-05 20:11:27 state motion

setstate Bewegungsschaltung active
setstate Bewegungsschaltung 2019-11-05 20:10:22 .Device_Affected gechaltete_lampe-AbsCmd1
setstate Bewegungsschaltung 2019-11-05 20:10:52 .Device_Affected_Details gechaltete_lampe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]5#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Bewegungsschaltung 2019-11-05 20:11:27 .Device_Events state:motion #[tr]no_trigger#[tr]state:motion
setstate Bewegungsschaltung 2019-11-04 20:17:15 .First_init done
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_on state:motion
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_condition
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_on no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_time
setstate Bewegungsschaltung 2019-11-04 20:17:15 .V_Check V2.00
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVENT state:motion
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTFULL Bewegungsmelder:state:motion
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART1 Bewegungsmelder
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART2 state
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART3 motion
setstate Bewegungsschaltung 2019-11-05 06:27:21 Trigger_device Bewegungsmelder
setstate Bewegungsschaltung 2019-11-04 20:20:56 Trigger_log on
setstate Bewegungsschaltung 2019-11-05 20:11:27 last_activation_by event
setstate Bewegungsschaltung 2019-11-05 06:27:50 last_event state:motion
setstate Bewegungsschaltung 2019-11-05 20:11:27 last_exec_cmd set gechaltete_lampe on-for-timer 5
setstate Bewegungsschaltung 2019-11-05 20:11:27 state active

setstate gechaltete_lampe off
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Affected no_device
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Events no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .First_init done
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .V_Check V2.00
setstate gechaltete_lampe 2019-11-04 20:17:03 Trigger_log off
setstate gechaltete_lampe 2019-11-05 20:11:34 state off

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 November 2019, 20:27:30
INFO:

ich habe eben eine nochmals geänderte Verrsion in das GIT geladen und empfehle ein Update.

es wurden nochmals anpassungen an der 'MSwitch_Define($$)' und verbundener Routinen vorgenommen.


update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Diese Version werde ich morgen auch in das SVN stellen , falls heute Nacht keine Fehler auftreten.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 05 November 2019, 21:07:05
Hallo Byte09,

danke fürs Checken, aber [21:10|!$we] klappt bei mir nicht (mehr)

get active_timer bringt bei mir nur "2019-11-06 00:00:10 neuberechnung aller Schaltzeiten"

Sollte doch jetzt 21:06 nicht so sein ...



Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 05 November 2019, 21:18:45
Kommando zurück und Sorry!

Ich bin einem dummen Falscheintrag in der Feriendatei auf den Leim gegangen  ::)

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 November 2019, 21:19:12
 :D
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 05 November 2019, 22:47:38
Zitat von: Byte09 am 05 November 2019, 20:12:37
defmod Bewegungsschaltung MSwitch Bewegungsmelder   # gechaltete_lampe
attr Bewegungsschaltung MSwitch_Debug 0
attr Bewegungsschaltung MSwitch_Delete_Delays 1
attr Bewegungsschaltung MSwitch_Eventhistory 0
attr Bewegungsschaltung MSwitch_Expert 0
attr Bewegungsschaltung MSwitch_Extensions 0
attr Bewegungsschaltung MSwitch_Help 0
attr Bewegungsschaltung MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsschaltung MSwitch_Include_Devicecmds 1
attr Bewegungsschaltung MSwitch_Include_MSwitchcmds 0
attr Bewegungsschaltung MSwitch_Include_Webcmds 0
attr Bewegungsschaltung MSwitch_Inforoom MSwitch
attr Bewegungsschaltung MSwitch_Lock_Quickedit 1
attr Bewegungsschaltung MSwitch_Mode Notify
attr Bewegungsschaltung MSwitch_Safemode 1
attr Bewegungsschaltung room MSwitch_Devices

defmod Bewegungsmelder MSwitch # nodevices
attr Bewegungsmelder MSwitch_Debug 0
attr Bewegungsmelder MSwitch_Eventhistory 0
attr Bewegungsmelder MSwitch_Help 0
attr Bewegungsmelder MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Bewegungsmelder MSwitch_Inforoom MSwitch
attr Bewegungsmelder MSwitch_Mode Dummy
attr Bewegungsmelder room MSwitch_Devices
attr Bewegungsmelder setList motion
attr Bewegungsmelder webCmd motion

defmod gechaltete_lampe MSwitch # nodevices
attr gechaltete_lampe MSwitch_Debug 0
attr gechaltete_lampe MSwitch_Eventhistory 0
attr gechaltete_lampe MSwitch_Help 0
attr gechaltete_lampe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr gechaltete_lampe MSwitch_Inforoom MSwitch
attr gechaltete_lampe MSwitch_Mode Dummy
attr gechaltete_lampe room MSwitch_Devices
attr gechaltete_lampe setList on off
attr gechaltete_lampe useSetExtensions 1

setstate Bewegungsmelder motion
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Affected no_device
setstate Bewegungsmelder 2019-11-04 20:16:41 .Device_Events no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .First_init done
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_cmd_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_off no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .Trigger_on no_trigger
setstate Bewegungsmelder 2019-11-04 20:16:41 .V_Check V2.00
setstate Bewegungsmelder 2019-11-04 20:16:41 Trigger_log off
setstate Bewegungsmelder 2019-11-05 20:11:27 state motion

setstate Bewegungsschaltung active
setstate Bewegungsschaltung 2019-11-05 20:10:22 .Device_Affected gechaltete_lampe-AbsCmd1
setstate Bewegungsschaltung 2019-11-05 20:10:52 .Device_Affected_Details gechaltete_lampe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]5#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Bewegungsschaltung 2019-11-05 20:11:27 .Device_Events state:motion #[tr]no_trigger#[tr]state:motion
setstate Bewegungsschaltung 2019-11-04 20:17:15 .First_init done
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_cmd_on state:motion
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_condition
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_off no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:56 .Trigger_on no_trigger
setstate Bewegungsschaltung 2019-11-04 20:20:41 .Trigger_time
setstate Bewegungsschaltung 2019-11-04 20:17:15 .V_Check V2.00
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVENT state:motion
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTFULL Bewegungsmelder:state:motion
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART1 Bewegungsmelder
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART2 state
setstate Bewegungsschaltung 2019-11-05 06:27:50 EVTPART3 motion
setstate Bewegungsschaltung 2019-11-05 06:27:21 Trigger_device Bewegungsmelder
setstate Bewegungsschaltung 2019-11-04 20:20:56 Trigger_log on
setstate Bewegungsschaltung 2019-11-05 20:11:27 last_activation_by event
setstate Bewegungsschaltung 2019-11-05 06:27:50 last_event state:motion
setstate Bewegungsschaltung 2019-11-05 20:11:27 last_exec_cmd set gechaltete_lampe on-for-timer 5
setstate Bewegungsschaltung 2019-11-05 20:11:27 state active

setstate gechaltete_lampe off
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Affected no_device
setstate gechaltete_lampe 2019-11-04 20:17:03 .Device_Events no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .First_init done
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_cmd_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_off no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .Trigger_on no_trigger
setstate gechaltete_lampe 2019-11-04 20:17:03 .V_Check V2.00
setstate gechaltete_lampe 2019-11-04 20:17:03 Trigger_log off
setstate gechaltete_lampe 2019-11-05 20:11:34 state off



Danke. Funktioniert.
Dann will ich mal weitere MSwitch(e) anlegen  ;)

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 07:52:36
Zitat von: krueuw am 04 November 2019, 20:18:18
Hallo Byte09,

danke für die Blumen :-)) Ich bin dann durch mit der Wiki-Überarbeitung und habe dabei (hoffentlich) mein Verständnis der Funktion verbessert ;-)
Wenn das Ding die Massen ergreifen soll, was es verdient, müssten IMHO ein paar Dinge sein:

  • einfacheres aufgeräumteres Erscheinungsbild nach dem Define
  • Konfigurationsmöglichkeiten in der Weboberfläche (per Ajax?) um probeweise weitere Möglichkeiten einzublenden und beim Erschrecken gleich wieder auszublenden ;-)
Konkrete Vorschläge:

  • pro Funktionseinheit einen eigenen Rahmen verwenden. Dies auch um den Preis, dass es dadurch mehr werden.
  • Vorbild wäre eine Roadmap, nur dass hier alle Schritte als Liste sichtbar bleiben.
  • Die Zweige 1 bzw. 2 würde ich innerhalb der Rahmen nebeneinander darstellen, weil es ja, wenn ich es richtig verstanden habe, eine parallele Vorstellung ist (je nach Bildschirm-Auflösung). 
Am meisten würde wohl device actions von einer Zweiteilung profitieren. Ist mir schon klar, dass ich das nicht voll überblicke - hab im FHEM-Webinterface noch keinen Blick in den Code riskiert. Ist nur der Gedanke des Einsteigers - der dann gewöhnlich der Gewöhnung weicht und schließlich in die Verteidigungshaltung mündet, weil in Fleisch und Blut übergegangen ;-)

Aber selbst wenn es so bleibt, ein Spitzending.

Hi Uwe,

anbei eine Vesion, in der du das Design ändern kannst . Hierfür gibt es das Attribut 'MSwitch_Develop_Affected' . In dieses kannst du den gesamte HTML-Code für die Befehlszweige einfügen. wenn das Attribut belegt ist wird der dort eingetragene code genutzt, ansonsten der im Modul vorhandene.

In den kommenden Tagen werde ich das noch für die restlichen Teile einbauen.
Grundlage ist derzeit diese Html-Datei:



<!--


MS-IDSATZ
MS-NAMESATZ
MS-ACTIONSATZ
MS-SET1
MS-SET2

MS-COND1
MS-COND2

MS-EXEC1
MS-EXEC2
MS-DELAYset1
MS-DELAYset2
MS-REPEATset

MS-COMMENTset

MS-HELPpriority
MS-HELPonoff
MS-HELPcondition
MS-HELPexit
MS-HELPtimer
MS-HELPrepeats
MS-HELPexeccmd
MS-HELPdelay
-->


ATTR<table width = '100%' border='0' class='block wide' cellpadding='2' style='border-spacing:0px;'">
        <tr>
<td colspan='4'><center>MS-COMMENTset</td>
</tr>
<tr>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000;width: 50%'>MS-NAMESATZ</td>
<td style='border-bottom:1px solid #000;'>&nbsp;</td>
<td align=right style='border-bottom:1px solid #000; width: 50%'>MS-HELPpriority MS-IDSATZ</td>
</tr>
<tr>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000;'><center>CMD 1</td>
<td style='border-left:1px solid #000;border-bottom:1px solid #000;'>&nbsp;</td>
<td style='border-bottom:1px solid #000;'><center>CMD 2</td>
</tr>
        <tr>
<td></td>
                <td></td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td></td>
</tr>
<tr>
                <td>MS-HELPonoff</td>
<td><nobr><center>MS-SET1</nobr></td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td><nobr><center>MS-SET2</nobr></td>
</tr>
<tr>
                <td>MS-HELPcondition</td>
<td><center>MS-COND1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td><center>MS-COND2</td>
</tr>
<tr>
                <td>MS-HELPexit</td>
<td><center>MS-EXEC1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td><center>MS-EXEC2</td>
</tr>
<tr>
                <td>MS-HELPtimer</td>
<td><center>MS-DELAYset1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td><center>MS-DELAYset2</td>
</tr>
<tr>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000; width: 50%'></td>
<td style='border-left:1px solid #000;border-bottom:1px solid #000;'>&nbsp;</td>
<td style='border-bottom:1px solid #000; width: 50%'></td>
</tr>

<tr>
<td colspan='4'><center>MS-HELPrepeats MS-REPEATset</td>
</tr>
<tr>
<td colspan='4'></td>
</tr>
<tr>
<td colspan='4'><center>MS-ACTIONSATZ</td>
</tr>
</table><br>



gruss Thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 09 November 2019, 11:50:04
Hab gerade das Modul ausprobiert. Nach shutdown restart waren alle MSwitche weg. Gleiches Bild nach der Wiederherstellung des Originalmoduls. Eine Sicherung habe ich vorher nicht gemacht :-( Ist nochwas zu retten?

Uwe
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 11:56:46
Zitat von: krueuw am 09 November 2019, 11:50:04
Hab gerade das Modul ausprobiert. Nach shutdown restart waren alle MSwitche weg. Gleiches Bild nach der Wiederherstellung des Originalmoduls. Eine Sicherung habe ich vorher nicht gemacht :-( Ist nochwas zu retten?

Uwe
Ruf mich bitte mal an

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 09 November 2019, 13:11:38
Rettung:
1. FHEM anhalten mit 'shutdown' in der Web-Kommandozeile,
2. Shell des FHEM-Hosts öffnen (ssh),
2. Sicherungsdatei: ../fhem/restoreDir/save/<datum>/log/fhem.save von vor dem Desaster,
3. kopieren (überschreiben) nach ../fhem/log/fhem.save,
4. FHEM-Host neu starten mit 'sudo reboot'
5. Läuft! :-)

Danke Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 13:39:57
Zitat von: krueuw am 09 November 2019, 13:11:38
Rettung:
1. FHEM anhalten mit 'shutdown' in der Web-Kommandozeile,
2. Shell des FHEM-Hosts öffnen (ssh),
2. Sicherungsdatei: ../fhem/restoreDir/save/<datum>/log/fhem.save von vor dem Desaster,
3. kopieren (überschreiben) nach ../fhem/log/fhem.save,
4. FHEM-Host neu starten mit 'sudo reboot'
5. Läuft! :-)

Danke Thomas

sichere Variante:
regelmässig die Funktion 'MSwitch_Backup_devices" nutzen.

wenn doch worst_case_szenario bitte nicht nur die fhem.save kopieren (wieder herstellen)  , sondern nur zusammen mit der fhem.cfg.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 09 November 2019, 15:36:06
Hallo, ich spiele gerade mit dem MSwitch herum, um damit etwas warm zu werden. Insbesondere die Dummy+Notify Kombination finde ich recht interessant. Deshalb habe ich auch gleich mal versucht etwas umzusetzen, aber ich scheitere.

Folgende Ausgangssituation:

Ich habe bislang einen normalen Dummy, der mit dem aktuellen Luftdruckwert befüllt wird. Hierzu triggert ein Notify auf den Luftdruck im Wetterdevice und schreibt den Wert in den Dummy.


Wie kann ich sowas mit einem MSwitch machen? Im Dummy Modus des MSwitch stelle ich das Expert Attribut auf 1, aber ich finde trotzdem nirgends eine Möglichkeit den "Globalmodus" einzustellen, den ich aber scheinbar brauche, weil der Trigger ja auf ein anderes Device lauschen soll und nicht auf den MSwitchdummy. Also muss ich laut Hilfefenster das 3-teilige Event bestehend aus Devicename:Reading:Wert manuell dem Trigger hinzufügen.
Wie kann ich also den Globalmodus einstellen?

Oder geht das alles überhaupt nicht, weil der MSwitchdummy nur auf sich selber triggern kann und nicht auf andere Devices?

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 15:41:45
Zitat von: Wolle02 am 09 November 2019, 15:36:06
Hallo, ich spiele gerade mit dem MSwitch herum, um damit etwas warm zu werden. Insbesondere die Dummy+Notify Kombination finde ich recht interessant. Deshalb habe ich auch gleich mal versucht etwas umzusetzen, aber ich scheitere.

Folgende Ausgangssituation:

Ich habe bislang einen normalen Dummy, der mit dem aktuellen Luftdruckwert befüllt wird. Hierzu triggert ein Notify auf den Luftdruck im Wetterdevice und schreibt den Wert in den Dummy.


Wie kann ich sowas mit einem MSwitch machen? Im Dummy Modus des MSwitch stelle ich das Expert Attribut auf 1, aber ich finde trotzdem nirgends eine Möglichkeit den "Globalmodus" einzustellen, den ich aber scheinbar brauche, weil der Trigger ja auf ein anderes Device lauschen soll und nicht auf den MSwitchdummy. Also muss ich laut Hilfefenster das 3-teilige Event bestehend aus Devicename:Reading:Wert manuell dem Trigger hinzufügen.
Wie kann ich also den Globalmodus einstellen?

Oder geht das alles überhaupt nicht, weil der MSwitchdummy nur auf sich selber triggern kann und nicht auf andere Devices?

Gruß
Wolle

Hi Wolle,

das ist eigentlich nicht das angedachte Dummy/Notify Verhalten - bei diesem geht es um die genau rumgedrehte Situation ( du hast einen Dummy und willst etwas auslösen, wenn der Dummy geschaltet wird )

Für dein Vorhaben solltest du ein MSwitch im Notifymode verwenden , dort hast du alle Optionen und kannst auch entsprechende Readdings direkt im MSwitch anlegen ( Setlist,readingslist )

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 09 November 2019, 17:00:55
Aber im Modus "Notify" kann der MSwitch selber keine Werte annehmen, aber genau das soll er ja. Er soll der Dummy sein, der dann mit dem Wert befüllt wird.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 17:12:29
Zitat von: Wolle02 am 09 November 2019, 17:00:55
Aber im Modus "Notify" kann der MSwitch selber keine Werte annehmen, aber genau das soll er ja. Er soll der Dummy sein, der dann mit dem Wert befüllt wird.

ich mache dir ein beispiel , gib mir 10 minuten.

wie sehen denn die events aus, die getriggert werden ( Luftdruck ) ?

und gib mir bitte mal ein list des bisherigen dummys

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 17:33:15
Zitat von: Wolle02 am 09 November 2019, 17:00:55
Aber im Modus "Notify" kann der MSwitch selber keine Werte annehmen, aber genau das soll er ja. Er soll der Dummy sein, der dann mit dem Wert befüllt wird.

ein schuss ins blaue ohne diese daten:

defmod Drucksensor_MSwitch_Dummy MSwitch Drucksensor_Hardware # MSwitch_Self
attr Drucksensor_MSwitch_Dummy MSwitch_Debug 0
attr Drucksensor_MSwitch_Dummy MSwitch_Delete_Delays 1
attr Drucksensor_MSwitch_Dummy MSwitch_Eventhistory 0
attr Drucksensor_MSwitch_Dummy MSwitch_Expert 0
attr Drucksensor_MSwitch_Dummy MSwitch_Extensions 0
attr Drucksensor_MSwitch_Dummy MSwitch_Help 0
attr Drucksensor_MSwitch_Dummy MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Drucksensor_MSwitch_Dummy MSwitch_Include_Devicecmds 1
attr Drucksensor_MSwitch_Dummy MSwitch_Include_MSwitchcmds 0
attr Drucksensor_MSwitch_Dummy MSwitch_Include_Webcmds 0
attr Drucksensor_MSwitch_Dummy MSwitch_Inforoom MSwitch
attr Drucksensor_MSwitch_Dummy MSwitch_Lock_Quickedit 1
attr Drucksensor_MSwitch_Dummy MSwitch_Mode Notify
attr Drucksensor_MSwitch_Dummy MSwitch_Safemode 1
attr Drucksensor_MSwitch_Dummy readingList Luftdruck
attr Drucksensor_MSwitch_Dummy room MSwitch_Devices
attr Drucksensor_MSwitch_Dummy setList Luftdruck
attr Drucksensor_MSwitch_Dummy stateFormat Luftdruck

defmod Drucksensor_Hardware MSwitch  # nodevices
attr Drucksensor_Hardware MSwitch_Debug 0
attr Drucksensor_Hardware MSwitch_Eventhistory 0
attr Drucksensor_Hardware MSwitch_Help 0
attr Drucksensor_Hardware MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Drucksensor_Hardware MSwitch_Inforoom MSwitch
attr Drucksensor_Hardware MSwitch_Mode Dummy
attr Drucksensor_Hardware readingList Druck
attr Drucksensor_Hardware room MSwitch_Devices
attr Drucksensor_Hardware setList Druck:slider,1,1,100
attr Drucksensor_Hardware webCmd Druck

setstate Drucksensor_Hardware active
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Device_Affected no_device
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Device_Events no_trigger
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .First_init done
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Trigger_cmd_off no_trigger
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Trigger_cmd_on no_trigger
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Trigger_off no_trigger
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .Trigger_on no_trigger
setstate Drucksensor_Hardware 2019-11-09 17:15:22 .V_Check V2.00
setstate Drucksensor_Hardware 2019-11-09 17:30:48 Druck 19
setstate Drucksensor_Hardware 2019-11-09 17:15:22 Trigger_log off
setstate Drucksensor_Hardware 2019-11-09 17:15:22 state active

setstate Drucksensor_MSwitch_Dummy 19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:35 .Device_Affected MSwitch_Self-AbsCmd1
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:25:19 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]Luftdruck#[NF]no_action#[NF][$SELF#[dp]EVTPART3]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 .Device_Events no_trigger#[tr]Druck:.*
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:13 .First_init done
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:24:34 .Trigger_cmd_off no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:24:34 .Trigger_cmd_on Druck:.*
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:35 .Trigger_condition
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:24:34 .Trigger_off no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:24:34 .Trigger_on no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:35 .Trigger_time
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:13 .V_Check V2.00
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 EVENT Druck:19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 EVTFULL Drucksensor_Hardware:Druck:19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 EVTPART1 Drucksensor_Hardware
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 EVTPART2 Druck
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 EVTPART3 19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 Luftdruck 19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:35 Trigger_device Drucksensor_Hardware
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:24:34 Trigger_log off
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 last_activation_by event
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 last_event Druck:19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 last_exec_cmd set Drucksensor_MSwitch_Dummy Luftdruck 19
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:30:48 state active



2 beispieldevices ,
- ein dummy(MSwitch) der den sensor imitiert
- ein MSwitch, das als Dummy in deinem Sinn fungiert.

bitte die RAWdefinition so einspielen wie sie ist !

schau es dir einfach mal an.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 09 November 2019, 18:16:41
Hi, danke für deine Beispiele. Ich schaue sie mir nachher mal an.

Der Trigger sollte hierauf gehen Stuttgart_Wetter:pressure:*

Hier noch das List des MSwitchdummys:


Internals:
   CFGFN     
   DEF        Stuttgart_Wetter  # FreeCmd
   FUUID      5dc6e12f-f33f-bc4b-4fba-bdb61ce1fbab4f34
   INIT       fhem.save
   MODEL      Dummy
   NAME       Testschalter
   NR         210248
   STATE      active
   Support_Fhemforum https://forum.fhem.de/index.php/topic,86199.0.html
   TYPE       MSwitch
   Version_Datenstruktur V2.00
   Version_Modul 2.62
   Version_autoupdate off
   eventsave  unsaved
   OLDREADINGS:
   READINGS:
     2019-11-09 18:12:15   Trigger_log     off
     2019-11-09 17:46:11   last_cmd        1
     2019-11-09 17:59:55   state           active
   helper:
     eventfrom  Stuttgart_Wetter
     devicecmds1:
     eventhistory:
       pressure   
     events:
       :
         Stuttgart_Wetter:pressure:* on
       Stuttgart_Wetter:
         no_trigger on
         pressure:* on
     eventtoid:
     priorityids:
       FreeCmd-AbsCmd1 1
     savemode:
       157331879504947 157331879504947
     savemodeblock:
     tmp:
   powerMap:
   readingsDesc:
     pM_consumption:
       rtype      w
     pM_energy:
       rtype      whr
Attributes:
   MSwitch_Debug 0
   MSwitch_Eventhistory 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Inforoom MSwitch_Info
   MSwitch_Mode Dummy
   MSwitch_Selftrigger_always 1


Hier noch die RAW-Definition von meinem Testdummy:

defmod Testschalter MSwitch Stuttgart_Wetter  # FreeCmd
attr Testschalter MSwitch_Debug 0
attr Testschalter MSwitch_Eventhistory 0
attr Testschalter MSwitch_Help 1
attr Testschalter MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Testschalter MSwitch_Inforoom MSwitch
attr Testschalter MSwitch_Mode Dummy
attr Testschalter MSwitch_Selftrigger_always 1

setstate Testschalter active
setstate Testschalter 2019-11-09 16:55:10 .Device_Affected FreeCmd-AbsCmd1
setstate Testschalter 2019-11-09 16:55:20 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{#[sp]my#[sp]$wert=ReadingsVal("Stuttgart_Wetter"#[ko]"pressure"#[ko]"")#[se]#[nl]fhem("set#[sp]Testschalter#[sp]".$wert)#[sp]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Testschalter 2019-11-09 18:12:07 .Device_Events Stuttgart_Wetter:pressure:*
setstate Testschalter 2019-11-09 16:54:28 .First_init done
setstate Testschalter 2019-11-09 18:12:15 .Trigger_cmd_off no_trigger
setstate Testschalter 2019-11-09 18:12:15 .Trigger_cmd_on Stuttgart_Wetter:pressure:*
setstate Testschalter 2019-11-09 16:54:58 .Trigger_condition
setstate Testschalter 2019-11-09 18:12:15 .Trigger_off no_trigger
setstate Testschalter 2019-11-09 18:12:15 .Trigger_on no_trigger
setstate Testschalter 2019-11-09 16:54:58 .Trigger_time
setstate Testschalter 2019-11-09 16:54:28 .V_Check V2.00
setstate Testschalter 2019-11-09 18:12:15 Trigger_log off
setstate Testschalter 2019-11-09 17:46:11 last_cmd 1
setstate Testschalter 2019-11-09 17:59:55 state active
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 November 2019, 18:39:36
Zitat von: Wolle02 am 09 November 2019, 18:16:41
Hi, danke für deine Beispiele. Ich schaue sie mir nachher mal an.

Der Trigger sollte hierauf gehen Stuttgart_Wetter:pressure:*

Hier noch das List des MSwitchdummys:


Internals:
   CFGFN     
   DEF        Stuttgart_Wetter  # FreeCmd
   FUUID      5dc6e12f-f33f-bc4b-4fba-bdb61ce1fbab4f34
   INIT       fhem.save
   MODEL      Dummy
   NAME       Testschalter
   NR         210248
   STATE      active
   Support_Fhemforum https://forum.fhem.de/index.php/topic,86199.0.html
   TYPE       MSwitch
   Version_Datenstruktur V2.00
   Version_Modul 2.62
   Version_autoupdate off
   eventsave  unsaved
   OLDREADINGS:
   READINGS:
     2019-11-09 18:12:15   Trigger_log     off
     2019-11-09 17:46:11   last_cmd        1
     2019-11-09 17:59:55   state           active
   helper:
     eventfrom  Stuttgart_Wetter
     devicecmds1:
     eventhistory:
       pressure   
     events:
       :
         Stuttgart_Wetter:pressure:* on
       Stuttgart_Wetter:
         no_trigger on
         pressure:* on
     eventtoid:
     priorityids:
       FreeCmd-AbsCmd1 1
     savemode:
       157331879504947 157331879504947
     savemodeblock:
     tmp:
   powerMap:
   readingsDesc:
     pM_consumption:
       rtype      w
     pM_energy:
       rtype      whr
Attributes:
   MSwitch_Debug 0
   MSwitch_Eventhistory 0
   MSwitch_Help 1
   MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
   MSwitch_Inforoom MSwitch_Info
   MSwitch_Mode Dummy
   MSwitch_Selftrigger_always 1


Hier noch die RAW-Definition von meinem Testdummy:

defmod Testschalter MSwitch Stuttgart_Wetter  # FreeCmd
attr Testschalter MSwitch_Debug 0
attr Testschalter MSwitch_Eventhistory 0
attr Testschalter MSwitch_Help 1
attr Testschalter MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Testschalter MSwitch_Inforoom MSwitch
attr Testschalter MSwitch_Mode Dummy
attr Testschalter MSwitch_Selftrigger_always 1

setstate Testschalter active
setstate Testschalter 2019-11-09 16:55:10 .Device_Affected FreeCmd-AbsCmd1
setstate Testschalter 2019-11-09 16:55:20 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{#[sp]my#[sp]$wert=ReadingsVal("Stuttgart_Wetter"#[ko]"pressure"#[ko]"")#[se]#[nl]fhem("set#[sp]Testschalter#[sp]".$wert)#[sp]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Testschalter 2019-11-09 18:12:07 .Device_Events Stuttgart_Wetter:pressure:*
setstate Testschalter 2019-11-09 16:54:28 .First_init done
setstate Testschalter 2019-11-09 18:12:15 .Trigger_cmd_off no_trigger
setstate Testschalter 2019-11-09 18:12:15 .Trigger_cmd_on Stuttgart_Wetter:pressure:*
setstate Testschalter 2019-11-09 16:54:58 .Trigger_condition
setstate Testschalter 2019-11-09 18:12:15 .Trigger_off no_trigger
setstate Testschalter 2019-11-09 18:12:15 .Trigger_on no_trigger
setstate Testschalter 2019-11-09 16:54:58 .Trigger_time
setstate Testschalter 2019-11-09 16:54:28 .V_Check V2.00
setstate Testschalter 2019-11-09 18:12:15 Trigger_log off
setstate Testschalter 2019-11-09 17:46:11 last_cmd 1
setstate Testschalter 2019-11-09 17:59:55 state active


angepasste version des "MSwitch" . dieses sollte die daten von Stuttgart_Wetter - so wie es bei dir ist - übernehmen

defmod Drucksensor_MSwitch_Dummy MSwitch Stuttgart_Wetter # MSwitch_Self
attr Drucksensor_MSwitch_Dummy MSwitch_Debug 0
attr Drucksensor_MSwitch_Dummy MSwitch_Delete_Delays 1
attr Drucksensor_MSwitch_Dummy MSwitch_Eventhistory 0
attr Drucksensor_MSwitch_Dummy MSwitch_Expert 0
attr Drucksensor_MSwitch_Dummy MSwitch_Extensions 0
attr Drucksensor_MSwitch_Dummy MSwitch_Help 0
attr Drucksensor_MSwitch_Dummy MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Drucksensor_MSwitch_Dummy MSwitch_Include_Devicecmds 1
attr Drucksensor_MSwitch_Dummy MSwitch_Include_MSwitchcmds 0
attr Drucksensor_MSwitch_Dummy MSwitch_Include_Webcmds 0
attr Drucksensor_MSwitch_Dummy MSwitch_Inforoom MSwitch
attr Drucksensor_MSwitch_Dummy MSwitch_Lock_Quickedit 1
attr Drucksensor_MSwitch_Dummy MSwitch_Mode Notify
attr Drucksensor_MSwitch_Dummy MSwitch_Safemode 1
attr Drucksensor_MSwitch_Dummy readingList Luftdruck
attr Drucksensor_MSwitch_Dummy room MSwitch_Devices
attr Drucksensor_MSwitch_Dummy setList Luftdruck
attr Drucksensor_MSwitch_Dummy stateFormat Luftdruck

setstate Drucksensor_MSwitch_Dummy 69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:35 .Device_Affected MSwitch_Self-AbsCmd1
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:25:19 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]Luftdruck#[NF]no_action#[NF][$SELF#[dp]EVTPART3]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 .Device_Events Druck:.*#[tr]pressure:.*#[tr]no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:13 .First_init done
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:55 .Trigger_cmd_off no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:55 .Trigger_cmd_on pressure:.*
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:42 .Trigger_condition
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:55 .Trigger_off no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:55 .Trigger_on no_trigger
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:42 .Trigger_time
setstate Drucksensor_MSwitch_Dummy 2019-11-09 17:16:13 .V_Check V2.00
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 EVENT pressure:69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 EVTFULL Stuttgart_Wetter:pressure:69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 EVTPART1 Stuttgart_Wetter
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 EVTPART2 pressure
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 EVTPART3 69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 Luftdruck 69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:42 Trigger_device Stuttgart_Wetter
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:37:55 Trigger_log off
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 last_activation_by event
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 last_event pressure:69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 last_exec_cmd set Drucksensor_MSwitch_Dummy Luftdruck 69
setstate Drucksensor_MSwitch_Dummy 2019-11-09 18:38:04 state active



gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 10 November 2019, 03:26:26
Vielen Dank für das Beispiel. Das scheint so gut zu funktionieren. Jetzt ist mir auch klar wo mein Fehler lag. Ich habe sowohl in der CommandRef als auch im Wiki nicht gesehen, dass die Attribute ReadingList und SetList vom normalen Dummy auch für MSwitch verwendet werden können und dann im "Notify"-Modus die gewünschte Funktionalität zur Verfügung stellen.

Jetzt hab ich nur noch ein kosmetisches Problem: Ich hab den Inforoom auf meinen Inforoom angepasst, aber trotzdem wird mir der MSwitch dort nicht angezeigt!?

Nochmal ein großes Dankeschön an dich, dass du hier so toll und wahnsinnig schnell Support leistest.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 November 2019, 06:44:21
Zitat von: Wolle02 am 10 November 2019, 03:26:26

Jetzt hab ich nur noch ein kosmetisches Problem: Ich hab den Inforoom auf meinen Inforoom angepasst, aber trotzdem wird mir der MSwitch dort nicht angezeigt!?

Gruß
Wolle

ich bin mir nicht ganz sicher , was du meinst ? den MSwitch Inforoom ?
dazu muss in einem MSwitch das entsprechende Attribut gesetzt weden und das MSwitch muss dann ( zusätzlich in diesen Raum 'gesetzt' werden.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 10 November 2019, 07:18:12
Ahhh, klar *Kopfklatsch*
Irgendwie dachte ich, dass die MSwitche dann automatisch im Inforoom auftauchen.

Jetzt ist natürlich alles da wo es hin soll.

Nochmal danke für das Modul. Nach einer gewissen Einarbeitung funktioniert alles sehr gut.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 November 2019, 08:49:36
@krueuw

ich habe in diesem post die version nochmal geändert:

https://forum.fhem.de/index.php/topic,86199.msg991271.html#msg991271 (https://forum.fhem.de/index.php/topic,86199.msg991271.html#msg991271)

anbei zwei 'steuerdateien' wobei die erste annähernd dem bisherigen design entspricht.

<table border='0' class='block wide' id='MSwitchWebTR' nm='test1' cellpadding='4' style='border-spacing:0px;'>
<tr>
<td colspan='3'>
<table style='width: 100%'>
<tr>
<td>MS-NAMESATZ</td>
<td align=right>MS-HELPpriority&nbsp;MS-IDSATZ</td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan='3'>MS-COMMENTset</td>
</tr>
<tr>
<td rowspan='6'>CMD&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td style='border-bottom:1px solid #000;' colspan='2'></td>
</tr>
<tr>
<td>MS-HELPonoff</td>
<td style='height: MS-cellhighstandart;width: 100%;'>MS-SET1</td>
</tr>
<tr>
<td>MS-HELPcondition</td>
<td style='height: MS-cellhighstandart;width: 100%'>&nbsp;MS-COND1</td>
</tr>
<tr>
<td></td>
<td style='height: MS-cellhighdebug;width: 100%'>MS-CONDCHECK1</td>
</tr>
<tr>
<td>MS-HELPexeccmd</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-EXEC1</td>
</tr>
<tr>
<td>MS-HELPdelay</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-DELAYset1</td>
</tr>
<tr>
<td rowspan='7'>CMD&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td style='border-top:1px solid #000;' colspan='2'>&nbsp;<br></td>
</tr>
<tr>
<td>MS-HELPonoff</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-SET2</td>
</tr>
<tr>
<td>MS-HELPcondition</td>
<td style='height: MS-cellhighstandart;width: 100%'>&nbsp;MS-COND2</td>
</tr>
<tr>
<td></td>
<td style='height: MS-cellhighdebug;width: 100%'>MS-CONDCHECK2</td>
</tr>
<tr>
<td>MS-HELPexeccmd</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-EXEC2</td>
</tr>
<tr>
<td>MS-HELPdelay</td>
<td style='height: MS-cellhighexpert;width: 100%;'>MS-DELAYset2</td>
</tr>
<tr>
<td style='border-bottom:1px solid #000;' colspan='2'></td>
</tr>
<tr>
<td style='height: MS-cellhighexpert;'colspan='3'>MS-HELPrepeats&nbsp;MS-REPEATset</td>
</tr>
<tr>
<td style='height: MS-cellhighstandart;'colspan='3'>&nbsp;MS-ACTIONSATZ</td>
</tr>
</table>
<br>

<!-- folgende HTML-Kommentare dürfen nicht gelöscht werden -->

<!--
MS-cellhigh=30;
-->

<!--
MS-cellhighstandart
MS-cellhighexpert
MS-cellhighdebug

MS-IDSATZ
MS-NAMESATZMS-ACTIONSATZ
MS-SET1
MS-SET2

MS-COND1
MS-COND2

MS-EXEC1
MS-EXEC2
MS-DELAYset1
MS-DELAYset2
MS-REPEATset

MS-COMMENTset

MS-HELPpriority
MS-HELPonoff
MS-HELPcondition
MS-HELPexit
MS-HELPtimer
MS-HELPrepeats
MS-HELPexeccmd
MS-HELPdelay
-->



<table border='0' class='block wide' id='MSwitchWebTR' nm='test1' cellpadding='4' style='border-spacing:0px;'>
    <tr class='even'>
<td colspan='4'><center>MS-COMMENTset</td>
</tr>
<tr class='even'>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000;width: 50%'>MS-NAMESATZ</td>
<td style='border-bottom:1px solid #000;'>&nbsp;</td>
<td align=right style='border-bottom:1px solid #000; width: 50%'>MS-HELPpriority MS-IDSATZ</td>
</tr>
<tr class='even'>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000;'>CMD 1</td>
<td style='border-left:1px solid #000;border-bottom:1px solid #000;'>&nbsp;</td>
<td style='border-bottom:1px solid #000;'>CMD 2</td>
</tr>
        <tr class='even'>
<td></td>
                <td></td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td></td>
</tr>
<tr class='even'>
                <td>MS-HELPonoff</td>
<td>MS-SET1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td>MS-SET2</td>
</tr>
<tr class='even'>
                <td>MS-HELPcondition</td>
<td>&nbsp;MS-COND1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td>&nbsp;MS-COND2</td>
</tr>
        <tr class='even'>
                <td></td>
<td>MS-CONDCHECK1</td>
<td style='border-left:1px solid #000;'></td>
<td>MS-CONDCHECK1</td>
</tr>
<tr class='even'>
                <td>MS-HELPexit</td>
<td>MS-EXEC1</td>
<td style='border-left:1px solid #000;'></td>
<td>MS-EXEC2</td>
</tr>
<tr class='even'>
                <td>MS-HELPtimer</td>
<td>MS-DELAYset1</td>
<td style='border-left:1px solid #000;'>&nbsp;</td>
<td>MS-DELAYset2</td>
</tr>
<tr class='even'>
                <td style='border-bottom:1px solid #000;'></td>
<td style='border-bottom:1px solid #000; width: 50%'></td>
<td style='border-left:1px solid #000;border-bottom:1px solid #000;'>&nbsp;</td>
<td style='border-bottom:1px solid #000; width: 50%'></td>
</tr>

<tr class='even'>
<td colspan='4'><center>MS-HELPrepeats MS-REPEATset</td>
</tr>
<tr class='even'>
<td colspan='4'></td>
</tr>
<tr class='even'>
<td colspan='4'><center>MS-ACTIONSATZ</td>
</tr>
</table><br>



folgende Ausdrücke MÜSSEN in der datei vorkommen , sonst gibt es Fehler :

MS-IDSATZ
MS-NAMESATZ
MS-ACTIONSATZ
MS-SET1
MS-SET2

MS-COND1
MS-COND2
MS-CONDCHECK1
MS-CONDCHECK2

MS-EXEC1
MS-EXEC2
MS-DELAYset1
MS-DELAYset2
MS-REPEATset

MS-COMMENTset

MS-HELPriority
MS-HELPonoff
MS-HELPcondition
MS-HELPexit
MS-HELPtimer
MS-HELPrepeats
MS-HELPexeccmd
MS-HELPdelay



gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: krueuw am 10 November 2019, 12:18:44
ok, der Import klappt :-) Schöne Idee Programmlogik und Darstellung zu trennen.

Ich fange an meine Vorstellungen damit auf Brauchbarkeit zu testen :-)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 November 2019, 17:42:55
Zitat von: krueuw am 10 November 2019, 12:18:44
ok, der Import klappt :-) Schöne Idee Programmlogik und Darstellung zu trennen.

Ich fange an meine Vorstellungen damit auf Brauchbarkeit zu testen :-)

ich habe die steuerdatei nochmals geändert und somit mehr anpassungsmöglichkeiten eingeräumt (z.b textersetzungen - siehe anhang)- sollte selbsterklärend sein.

<!-- folgende HTML-Kommentare dürfen nicht gelöscht werden -->

<!--
info: festlegung einer zelleknöhe
MS-cellhigh=30;
-->

<!--
start:textersetzung
Set->Schaltbefehl
condition:->Schaltbedingung
end:textersetzung
-->

<!--
MS-cellhighstandart
MS-cellhighexpert
MS-cellhighdebug
MS-IDSATZ
MS-NAMESATZMS-ACTIONSATZ
MS-SET1
MS-SET2
MS-COND1
MS-COND2
MS-EXEC1
MS-EXEC2
MS-DELAYset1
MS-DELAYset2
MS-REPEATset
MS-COMMENTset
MS-HELPpriority
MS-HELPonoff
MS-HELPcondition
MS-HELPexit
MS-HELPtimer
MS-HELPrepeats
MS-HELPexeccmd
MS-HELPdelay
-->

<!-- start htmlcode -->
<table border='0' class='block wide' id='MSwitchWebTR' nm='test1' cellpadding='4' style='border-spacing:0px;'>
<tr>
<td style='height: MS-cellhighstandart;width: 100%;' colspan='3'>
<table style='width: 100%'>
<tr>
<td>MS-NAMESATZ</td>
<td align=right>MS-HELPpriority&nbsp;MS-IDSATZ</td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan='3'>MS-COMMENTset</td>
</tr>
<tr>
<td rowspan='6'>CMD&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td style='border-bottom:1px solid #000;' colspan='2'></td>
</tr>
<tr>
<td>MS-HELPonoff</td>
<td style='height: MS-cellhighstandart;width: 100%;'>MS-SET1</td>
</tr>
<tr>
<td>MS-HELPcondition</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-COND1</td>
</tr>
<tr>
<td></td>
<td style='height: MS-cellhighdebug;width: 100%'>MS-CONDCHECK1</td>
</tr>
<tr>
<td>MS-HELPexeccmd</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-EXEC1</td>
</tr>
<tr>
<td>MS-HELPdelay</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-DELAYset1</td>
</tr>
<tr>
<td rowspan='7'>CMD&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td style='border-top:1px solid #000;' colspan='2'>&nbsp;<br></td>
</tr>
<tr>
<td>MS-HELPonoff</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-SET2</td>
</tr>
<tr>
<td>MS-HELPcondition</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-COND2</td>
</tr>
<tr>
<td></td>
<td style='height: MS-cellhighdebug;width: 100%'>MS-CONDCHECK2</td>
</tr>
<tr>
<td>MS-HELPexeccmd</td>
<td style='height: MS-cellhighstandart;width: 100%'>MS-EXEC2</td>
</tr>
<tr>
<td>MS-HELPdelay</td>
<td style='height: MS-cellhighexpert;width: 100%;'>MS-DELAYset2</td>
</tr>
<tr>
<td style='border-bottom:1px solid #000;' colspan='2'></td>
</tr>
<tr>
<td style='height: MS-cellhighexpert;'colspan='3'>MS-HELPrepeats&nbsp;MS-REPEATset</td>
</tr>
<tr>
<td style='height: MS-cellhighstandart;'colspan='3'>&nbsp;MS-ACTIONSATZ</td>
</tr>
</table>
<br>


dazu benötigte version im anhang .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 10 November 2019, 20:13:02
Hallo Byte09,

ich habe einen Schalter definiert, der zeitgesteuert alle 10 min unter diversen Bedingungen etwas scharf schaltet.
deaktiviert werden soll die Scharfschaltung über einen Türkontakt. (cmd2)
Allerdings klappt dieser Kanal nicht.
Hab ich bei der Mischung von Zeit- und Eventsteuerung etwas falsch definiert?


Modulversion: 2.63
Datenstruktur: V2.00

----- Devicename -----
myCamSW

----- Attribute -----
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut disable: 0
Attribut MSwitch_Expert: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Mode: Full
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Debug: 1
Attribut MSwitch_Extensions: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut room: MSwitch
Attribut verbose: 0
Attribut MSwitch_Include_MSwitchcmds: 1

----- Trigger -----
Trigger device:  all_events
Trigger time: on[00:20*00:01-23:59] off ononly offonly onoffonly
Trigger condition: ([TWL:light]>5) OR (([anwesend:state] ne "eins") OR ([anwesend:state] ne "drei"))
Trigger Device Global Whitelist: HM_WZ_FK_BK

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: *:state:open

----- Device Actions -----

Device: Taster_Hasencam-AbsCmd1
cmd1: enabled
cmd2: disabled
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:06
cmd2 delay: 00:00:06
repeats: 0
repeats delay: 0
priority: 3
id: 2
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Hasencam-AbsCmd2
cmd1: armed
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:03
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 2
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Wohnungscam-AbsCmd1
cmd1: enabled
cmd2: disabled
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:12
cmd2 delay: 00:00:12
repeats: 0
repeats delay: 0
priority: 5
id: 3
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Wohnungscam-AbsCmd2
cmd1: armed
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:09
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 4
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: blink-AbsCmd1
cmd1: arm
cmd2: camDisable all
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 November 2019, 20:19:22
Zitat von: Panik am 10 November 2019, 20:13:02
Hallo Byte09,

ich habe einen Schalter definiert, der zeitgesteuert alle 10 min unter diversen Bedingungen etwas scharf schaltet.
deaktiviert werden soll die Scharfschaltung über einen Türkontakt. (cmd2)
Allerdings klappt dieser Kanal nicht.
Hab ich bei der Mischung von Zeit- und Eventsteuerung etwas falsch definiert?


Modulversion: 2.63
Datenstruktur: V2.00

----- Devicename -----
myCamSW

----- Attribute -----
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut disable: 0
Attribut MSwitch_Expert: 1
Attribut MSwitch_Help: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Lock_Quickedit: 1
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Mode: Full
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Debug: 1
Attribut MSwitch_Extensions: 1
Attribut MSwitch_Inforoom: MSwitch
Attribut room: MSwitch
Attribut verbose: 0
Attribut MSwitch_Include_MSwitchcmds: 1

----- Trigger -----
Trigger device:  all_events
Trigger time: on[00:20*00:01-23:59] off ononly offonly onoffonly
Trigger condition: ([TWL:light]>5) OR (([anwesend:state] ne "eins") OR ([anwesend:state] ne "drei"))
Trigger Device Global Whitelist: HM_WZ_FK_BK

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: *:state:open

----- Device Actions -----

Device: Taster_Hasencam-AbsCmd1
cmd1: enabled
cmd2: disabled
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:06
cmd2 delay: 00:00:06
repeats: 0
repeats delay: 0
priority: 3
id: 2
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Hasencam-AbsCmd2
cmd1: armed
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:03
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 2
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Wohnungscam-AbsCmd1
cmd1: enabled
cmd2: disabled
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:12
cmd2 delay: 00:00:12
repeats: 0
repeats delay: 0
priority: 5
id: 3
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: Taster_Wohnungscam-AbsCmd2
cmd1: armed
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:09
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 4
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: blink-AbsCmd1
cmd1: arm
cmd2: camDisable all
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0


hi, würdest du mir bitte noch die raw Definition geben.

ich werde es aber leider erst morgen früh schaffen mir das anzuschsuen

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk


edit : ich hab dich nicht vergessen , wäre aber cool wenn ich die RAW bekommen könnte
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 11 November 2019, 15:55:18
Hi,

ich habe einen mswitch angelegt, bei dem ein Geräte mit on-for-timer angeschaltet wird. Nun ist es so, dass wenn der Trigger innerhalb dieser Zeit wieder aktiviert wird, der on-for-timer neu gesetzt wird.

Ist es möglich dass der on-for-timer nur einmal gesetzt wird auch wenn der Trigger ein weiteres mal greift?

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 15:59:38
Zitat von: hermann1514 am 11 November 2019, 15:55:18
Hi,

ich habe einen mswitch angelegt, bei dem ein Geräte mit on-for-timer angeschaltet wird. Nun ist es so, dass wenn der Trigger innerhalb dieser Zeit wieder aktiviert wird, der on-for-timer neu gesetzt wird.

Ist es möglich dass der on-for-timer nur einmal gesetzt wird auch wenn der Trigger ein weiteres mal greift?

Gruß
Hermann
kurz da handy.
ja ist möglich... mehr wenn ich zu hause bin.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 11 November 2019, 16:35:14
Danke, und einen habe ich auch noch.

Der Dummy Mode. Gibt es dazu noch eine Anleitung?
Ich kann unter Trigger Details ja kein Gerät auswählen. Muss ich dann unter "Add event manually" ein Gerät eintragen auf welches dann reagiert werden soll?

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 16:45:22
Zitat von: hermann1514 am 11 November 2019, 16:35:14
Danke, und einen habe ich auch noch.

Der Dummy Mode. Gibt es dazu noch eine Anleitung?
Ich kann unter Trigger Details ja kein Gerät auswählen. Muss ich dann unter "Add event manually" ein Gerät eintragen auf welches dann reagiert werden soll?

Gruß
Hermann
Der  dummy mode ist nur in der Kombination sinnvoll  "ich habe einen Dummy und reagiere durch ein notify auf diesen Dummy"

dann kann ich es in einem MSwitch im dummy mode zusammenfassen, da dieser nur auf sich selber reagiert. Für alle anderen Anwendungen ist den full oder notify mode die richtige Option da nur diese Modi auf Events anderer Devices reagieren können.

..... immer noch vom Handy [emoji6]

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 11 November 2019, 19:24:24
Ist es im Dummy-Modus irgendwie möglich auch Wiederholungen einzubauen? In den anderen Modi gibt es Wiederholungen nur bei gesetztem Attribut Expert. Aber im Dummy-Modus scheint es dieses Attribut nicht zu geben.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 19:30:06
Zitat von: hermann1514 am 11 November 2019, 15:55:18
Hi,

ich habe einen mswitch angelegt, bei dem ein Geräte mit on-for-timer angeschaltet wird. Nun ist es so, dass wenn der Trigger innerhalb dieser Zeit wieder aktiviert wird, der on-for-timer neu gesetzt wird.

Ist es möglich dass der on-for-timer nur einmal gesetzt wird auch wenn der Trigger ein weiteres mal greift?

Gruß
Hermann


Hi Hermann,

ich habe dir ein Screenshot angehängt und darin 3 Optionen markiert . Jede dieser Optionen für sich bezweckt das keine neuer set on-for-timer befehl ausgelöst wird.

oberste option:
Events werden generell nur dann bearbeitet, wenn das zu schaltende gerät auf off steht

mittlere option:

events werden zwar verarbeitet, aber der spezielle befehl wird nur ausgeführt , wenn das zu schaltende gerät auf off steht

unterste option :
des MSwitch wird in einem zusätzlichen Befehlszweig selber angewiesen für den gleichen zeitraum wie das on for timer keine events anzunehmen.

auswahl der optionen muss/kann je nach weiterer konfiguration des devices gewählt werden.
sieht bei mir etwas anders aus als bei dir , nicht daran stören - die funktionen sind die gleichen.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 19:33:41
Zitat von: Wolle02 am 11 November 2019, 19:24:24
Ist es im Dummy-Modus irgendwie möglich auch Wiederholungen einzubauen? In den anderen Modi gibt es Wiederholungen nur bei gesetztem Attribut Expert. Aber im Dummy-Modus scheint es dieses Attribut nicht zu geben.

hmm,  :-\ derzeit nein , da ich schlicht und ergreifend das entsprechende Attribut im Dummymode nicht aktiviert habe ( hat nichtmal einen Grund ) . Ich werde es mit dem nächsten update aktivieren , kann aber 1-2 tage dauern , da ich gerade an grösseren Änderungen arbeite und da keine zwischenversion einschieben möchte - da kommt meisst nichts bei raus .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 11 November 2019, 19:35:58
Überhaupt kein Problem. War nur ne Frage. Bei deiner sensationellen Reaktionszeit warte ich gerne ein paar Tage.  :D
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 19:59:18
Zitat von: Wolle02 am 11 November 2019, 19:35:58
Überhaupt kein Problem. War nur ne Frage. Bei deiner sensationellen Reaktionszeit warte ich gerne ein paar Tage.  :D

ich habe es jetzt doch ein update mit entsprechender änderung in das SVN gespielt. Sollte ab morgen früh verfügbar sein , aöternativ kannst du es manuell jetzt schon aus dem SVN laden.


gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 11 November 2019, 20:35:42
Hallo Byte09,

hier die gewünschte RAW-Definition:

defmod myCamSW MSwitch HM_WZ_FK_BK # Taster_Hasencam blink Taster_Wohnungscam
attr myCamSW MSwitch_Condition_Time 1
attr myCamSW MSwitch_Debug 1
attr myCamSW MSwitch_Delete_Delays 1
attr myCamSW MSwitch_Expert 1
attr myCamSW MSwitch_Extensions 1
attr myCamSW MSwitch_Help 1
attr myCamSW MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr myCamSW MSwitch_Include_Devicecmds 1
attr myCamSW MSwitch_Include_MSwitchcmds 1
attr myCamSW MSwitch_Include_Webcmds 1
attr myCamSW MSwitch_Inforoom MSwitch
attr myCamSW MSwitch_Lock_Quickedit 1
attr myCamSW MSwitch_Mode Full
attr myCamSW disable 0
attr myCamSW room MSwitch
attr myCamSW verbose 0

setstate myCamSW on
setstate myCamSW 2019-11-10 08:38:40 .Device_Affected Taster_Hasencam-AbsCmd1,Taster_Hasencam-AbsCmd2,Taster_Wohnungscam-AbsCmd1,Taster_Wohnungscam-AbsCmd2,blink-AbsCmd1
setstate myCamSW 2019-11-10 09:30:39 .Device_Affected_Details Taster_Hasencam-AbsCmd1#[NF]enabled#[NF]disabled#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]06#[NF]00#[dp]00#[dp]06#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]2#[NF]#[NF]0#[NF]0#[NF]2#[ND]Taster_Hasencam-AbsCmd2#[NF]armed#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]03#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]Taster_Wohnungscam-AbsCmd1#[NF]enabled#[NF]disabled#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]12#[NF]00#[dp]00#[dp]12#[NF]#[NF]#[NF]0#[NF]0#[NF]5#[NF]3#[NF]#[NF]0#[NF]0#[NF]3#[ND]Taster_Wohnungscam-AbsCmd2#[NF]armed#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]09#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]blink-AbsCmd1#[NF]arm#[NF]camDisable#[NF]#[NF]all#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1
setstate myCamSW 2019-11-11 17:20:00 .Device_Events *:state:open#[tr]no_trigger
setstate myCamSW 2019-11-03 07:56:14 .First_init done
setstate myCamSW 2019-11-10 20:13:25 .Trigger_Whitelist HM_WZ_FK_BK
setstate myCamSW 2019-11-10 09:42:10 .Trigger_cmd_off *:state:open
setstate myCamSW 2019-11-10 09:42:10 .Trigger_cmd_on no_trigger
setstate myCamSW 2019-11-10 20:13:25 .Trigger_condition ([TWL#[dp]light]>5)#[sp]OR#[sp](([anwesend#[dp]state]#[sp]ne#[sp]"eins")#[sp]OR#[sp]([anwesend#[dp]state]#[sp]ne#[sp]"drei"))
setstate myCamSW 2019-11-10 09:42:10 .Trigger_off no_trigger
setstate myCamSW 2019-11-10 09:42:10 .Trigger_on no_trigger
setstate myCamSW 2019-11-10 20:13:25 .Trigger_time on[00#[dp]30*00#[dp]01-23#[dp]59]~off~ononly~offonly~onoffonly
setstate myCamSW 2019-11-03 07:56:14 .V_Check V2.00
setstate myCamSW 2019-11-10 08:34:30 .sortby priority
setstate myCamSW 2019-11-03 07:56:14 .sysconf undef
setstate myCamSW 2019-11-11 20:31:00 EVENT myCamSW:execute_timer_P1:20:31
setstate myCamSW 2019-11-11 20:31:00 EVTFULL myCamSW:execute_timer_P1:20:31
setstate myCamSW 2019-11-11 20:31:00 EVTPART1 myCamSW
setstate myCamSW 2019-11-11 20:31:00 EVTPART2 execute_timer_P1
setstate myCamSW 2019-11-11 20:31:00 EVTPART3 20:31
setstate myCamSW 2019-11-03 07:56:14 Sys_Extension undef
setstate myCamSW 2019-11-10 20:13:25 Trigger_device all_events
setstate myCamSW 2019-11-10 09:42:10 Trigger_log off
setstate myCamSW 2019-11-11 20:31:00 last_activation_by timer
setstate myCamSW 2019-11-08 18:44:38 last_cmd 1
setstate myCamSW 2019-11-11 17:20:00 last_event HM_WZ_FK_BK:Activity:dead
setstate myCamSW 2019-11-11 20:31:11 last_exec_cmd set Taster_Wohnungscam armed
setstate myCamSW 2019-11-11 20:31:00 state on

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 November 2019, 21:03:09
Zitat von: Panik am 11 November 2019, 20:35:42
Hallo Byte09,

hier die gewünschte RAW-Definition:

defmod myCamSW MSwitch HM_WZ_FK_BK # Taster_Hasencam blink Taster_Wohnungscam
attr myCamSW MSwitch_Condition_Time 1
attr myCamSW MSwitch_Debug 1
attr myCamSW MSwitch_Delete_Delays 1
attr myCamSW MSwitch_Expert 1
attr myCamSW MSwitch_Extensions 1
attr myCamSW MSwitch_Help 1
attr myCamSW MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr myCamSW MSwitch_Include_Devicecmds 1
attr myCamSW MSwitch_Include_MSwitchcmds 1
attr myCamSW MSwitch_Include_Webcmds 1
attr myCamSW MSwitch_Inforoom MSwitch
attr myCamSW MSwitch_Lock_Quickedit 1
attr myCamSW MSwitch_Mode Full
attr myCamSW disable 0
attr myCamSW room MSwitch
attr myCamSW verbose 0

setstate myCamSW on
setstate myCamSW 2019-11-10 08:38:40 .Device_Affected Taster_Hasencam-AbsCmd1,Taster_Hasencam-AbsCmd2,Taster_Wohnungscam-AbsCmd1,Taster_Wohnungscam-AbsCmd2,blink-AbsCmd1
setstate myCamSW 2019-11-10 09:30:39 .Device_Affected_Details Taster_Hasencam-AbsCmd1#[NF]enabled#[NF]disabled#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]06#[NF]00#[dp]00#[dp]06#[NF]#[NF]#[NF]0#[NF]0#[NF]3#[NF]2#[NF]#[NF]0#[NF]0#[NF]2#[ND]Taster_Hasencam-AbsCmd2#[NF]armed#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]03#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]Taster_Wohnungscam-AbsCmd1#[NF]enabled#[NF]disabled#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]12#[NF]00#[dp]00#[dp]12#[NF]#[NF]#[NF]0#[NF]0#[NF]5#[NF]3#[NF]#[NF]0#[NF]0#[NF]3#[ND]Taster_Wohnungscam-AbsCmd2#[NF]armed#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]09#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]4#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]blink-AbsCmd1#[NF]arm#[NF]camDisable#[NF]#[NF]all#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1
setstate myCamSW 2019-11-11 17:20:00 .Device_Events *:state:open#[tr]no_trigger
setstate myCamSW 2019-11-03 07:56:14 .First_init done
setstate myCamSW 2019-11-10 20:13:25 .Trigger_Whitelist HM_WZ_FK_BK
setstate myCamSW 2019-11-10 09:42:10 .Trigger_cmd_off *:state:open
setstate myCamSW 2019-11-10 09:42:10 .Trigger_cmd_on no_trigger
setstate myCamSW 2019-11-10 20:13:25 .Trigger_condition ([TWL#[dp]light]>5)#[sp]OR#[sp](([anwesend#[dp]state]#[sp]ne#[sp]"eins")#[sp]OR#[sp]([anwesend#[dp]state]#[sp]ne#[sp]"drei"))
setstate myCamSW 2019-11-10 09:42:10 .Trigger_off no_trigger
setstate myCamSW 2019-11-10 09:42:10 .Trigger_on no_trigger
setstate myCamSW 2019-11-10 20:13:25 .Trigger_time on[00#[dp]30*00#[dp]01-23#[dp]59]~off~ononly~offonly~onoffonly
setstate myCamSW 2019-11-03 07:56:14 .V_Check V2.00
setstate myCamSW 2019-11-10 08:34:30 .sortby priority
setstate myCamSW 2019-11-03 07:56:14 .sysconf undef
setstate myCamSW 2019-11-11 20:31:00 EVENT myCamSW:execute_timer_P1:20:31
setstate myCamSW 2019-11-11 20:31:00 EVTFULL myCamSW:execute_timer_P1:20:31
setstate myCamSW 2019-11-11 20:31:00 EVTPART1 myCamSW
setstate myCamSW 2019-11-11 20:31:00 EVTPART2 execute_timer_P1
setstate myCamSW 2019-11-11 20:31:00 EVTPART3 20:31
setstate myCamSW 2019-11-03 07:56:14 Sys_Extension undef
setstate myCamSW 2019-11-10 20:13:25 Trigger_device all_events
setstate myCamSW 2019-11-10 09:42:10 Trigger_log off
setstate myCamSW 2019-11-11 20:31:00 last_activation_by timer
setstate myCamSW 2019-11-08 18:44:38 last_cmd 1
setstate myCamSW 2019-11-11 17:20:00 last_event HM_WZ_FK_BK:Activity:dead
setstate myCamSW 2019-11-11 20:31:11 last_exec_cmd set Taster_Wohnungscam armed
setstate myCamSW 2019-11-11 20:31:00 state on



hi ,

du triggerst GLOBAL. das heisst alle events werden erstmal registriert.
dann filterst du mit 'Trigger Device Global Whitelist: ' auf  'HM_WZ_FK_BK'  ..... gibt es wirklich ein gerät mit diesem namen ?

schalte doch mal das speichern von events (Save incomming events : ) an und schau was wirklich ankommt ( vorausgesetzt der name 'HM_WZ_FK_BK' stimmt ).

... dazu den event auslösen und die seite des MSwitches aktualisieren , dann sollten eingegangene events in den dropdownlisten sein.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 12 November 2019, 16:45:29
Zitat von: Byte09 am 11 November 2019, 19:59:18
ich habe es jetzt doch ein update mit entsprechender änderung in das SVN gespielt. Sollte ab morgen früh verfügbar sein , aöternativ kannst du es manuell jetzt schon aus dem SVN laden.

Wow, schnell wie immer   :D. Ich bin leider nicht so schnell.  ;)

Es funktioniert sehr gut. Vielen Dank.
Aber natürlich kommt jetzt noch ein Spezialwunsch. Wäre es möglich die Repeats so konfigurieren zu können, dass die Wiederholungen nur für CMD1 oder nur für CMD2 oder für CMD1 und CMD2 funkrionieren?

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 November 2019, 17:11:44
Zitat von: Wolle02 am 12 November 2019, 16:45:29
Wow, schnell wie immer   :D. Ich bin leider nicht so schnell.  ;)

Es funktioniert sehr gut. Vielen Dank.
Aber natürlich kommt jetzt noch ein Spezialwunsch. Wäre es möglich die Repeats so konfigurieren zu können, dass die Wiederholungen nur für CMD1 oder nur für CMD2 oder für CMD1 und CMD2 funkrionieren?

Gruß
Wolle

hi wolle

grundsätzlich ist das schon möglich , aber schon ein erheblicher aufwand . d.H leider ich setze es mal unten auf die ToDo-Liste , und es ist eine lange Liste ;-)

du kannst das 'problem' aber umgehen , indem du den befehl auf 2 getrennte befehle ( mit gleichem device ) legst und in dem einen nur cmd1 , in dem anderen nur cmd2 ausführen lässt.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 12 November 2019, 21:08:11
Zitat von: Byte09 am 12 November 2019, 17:11:44

du kannst das 'problem' aber umgehen , indem du den befehl auf 2 getrennte befehle ( mit gleichem device ) legst und in dem einen nur cmd1 , in dem anderen nur cmd2 ausführen lässt.


Ok, danke für den Tipp; hat geklappt.

Eins hab ich bei den Repeats gerade festgestellt. Scheinbar funktioniert die Zählung nicht richtig. Wenn ich zwei Repeats eingebe werden drei ausgeführt. Wenn ich drei Repeats eingebe werden vier ausgeführt, usw.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 November 2019, 21:46:18
Zitat von: Wolle02 am 12 November 2019, 21:08:11
Ok, danke für den Tipp; hat geklappt.

Eins hab ich bei den Repeats gerade festgestellt. Scheinbar funktioniert die Zählung nicht richtig. Wenn ich zwei Repeats eingebe werden drei ausgeführt. Wenn ich drei Repeats eingebe werden vier ausgeführt, usw.

Gruß
Wolle
Ich checke das morgen, danke für den Hinweis.

gruss Byte09

edit: sollte mit heutigem Update behoben sein

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 13 November 2019, 14:55:49
Zitat von: Byte09 am 11 November 2019, 16:45:22
Der  dummy mode ist nur in der Kombination sinnvoll  "ich habe einen Dummy und reagiere durch ein notify auf diesen Dummy"

dann kann ich es in einem MSwitch im dummy mode zusammenfassen, da dieser nur auf sich selber reagiert. Für alle anderen Anwendungen ist den full oder notify mode die richtige Option da nur diese Modi auf Events anderer Devices reagieren können.

..... immer noch vom Handy [emoji6]

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Hi Byte09,

vielen Dank für Deine Unterstützung.
Ich dachte nun ich habe den Dummy Mode verstanden und wollte folgendes realisieren:

Ich habe einen LED Controller, der als Kommandos nur on|off|dimup|dimdown ausführen kann. Nun möchte ich aber die Option "on-for-timer" nutzen. Dieses habe ich sonst über einen Dummy Schalter und ein Notify erledigt.
Kann ich dieses auch mit dem DummyMode vom mSwitch erledigen?

Wenn ja wie? Ich bekomme es so nicht hin :-(

Danke.
Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 November 2019, 15:10:20
Zitat von: hermann1514 am 13 November 2019, 14:55:49
Hi Byte09,

vielen Dank für Deine Unterstützung.
Ich dachte nun ich habe den Dummy Mode verstanden und wollte folgendes realisieren:

Ich habe einen LED Controller, der als Kommandos nur on|off|dimup|dimdown ausführen kann. Nun möchte ich aber die Option "on-for-timer" nutzen. Dieses habe ich sonst über einen Dummy Schalter und ein Notify erledigt.
Kann ich dieses auch mit dem DummyMode vom mSwitch erledigen?

Wenn ja wie? Ich bekomme es so nicht hin :-(

Danke.
Gruß
Hermann
hi,

kurz da handy. ja das geht im dummy mode. ich schicke dir ein beispiel wenn ich zu hause bin.


gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 November 2019, 17:19:46
Zitat von: hermann1514 am 13 November 2019, 14:55:49
Hi Byte09,

vielen Dank für Deine Unterstützung.
Ich dachte nun ich habe den Dummy Mode verstanden und wollte folgendes realisieren:

Ich habe einen LED Controller, der als Kommandos nur on|off|dimup|dimdown ausführen kann. Nun möchte ich aber die Option "on-for-timer" nutzen. Dieses habe ich sonst über einen Dummy Schalter und ein Notify erledigt.
Kann ich dieses auch mit dem DummyMode vom mSwitch erledigen?

Wenn ja wie? Ich bekomme es so nicht hin :-(

Danke.
Gruß
Hermann

anbei zwei MSwitch devices , wobei eines nur ein ersatzdummy statt der LED ist. sschau es dir einfach mal an , ggf. wird es dann klar - ansonsten melde dich einfach.

gruss Byte09

defmod MSwitch_fuer_LED MSwitch   # dummy_fuer_LED
attr MSwitch_fuer_LED MSwitch_Debug 0
attr MSwitch_fuer_LED MSwitch_Eventhistory 0
attr MSwitch_fuer_LED MSwitch_Expert 0
attr MSwitch_fuer_LED MSwitch_Help 0
attr MSwitch_fuer_LED MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr MSwitch_fuer_LED MSwitch_Inforoom MSwitch
attr MSwitch_fuer_LED MSwitch_Mode Dummy
attr MSwitch_fuer_LED MSwitch_Selftrigger_always 1
attr MSwitch_fuer_LED room MSwitch_Devices
attr MSwitch_fuer_LED setList on off
attr MSwitch_fuer_LED useSetExtensions 1
attr MSwitch_fuer_LED webCmd on:off:on-for-timer 10

defmod dummy_fuer_LED MSwitch  # nodevices
attr dummy_fuer_LED MSwitch_Debug 0
attr dummy_fuer_LED MSwitch_Eventhistory 0
attr dummy_fuer_LED MSwitch_Expert 0
attr dummy_fuer_LED MSwitch_Help 0
attr dummy_fuer_LED MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr dummy_fuer_LED MSwitch_Inforoom MSwitch
attr dummy_fuer_LED MSwitch_Mode Dummy
attr dummy_fuer_LED room MSwitch_Devices
attr dummy_fuer_LED setList on off dimmup dimmdown

setstate MSwitch_fuer_LED off
setstate MSwitch_fuer_LED 2019-11-13 17:09:13 .Device_Affected dummy_fuer_LED-AbsCmd1
setstate MSwitch_fuer_LED 2019-11-13 17:09:28 .Device_Affected_Details dummy_fuer_LED-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate MSwitch_fuer_LED 2019-11-13 17:13:38 .Device_Events .*:off.*:.*#[tr].*:on.*:.*#[tr]no_trigger
setstate MSwitch_fuer_LED 2019-11-13 16:53:07 .First_init done
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_cmd_off .*:off.*:.*
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_cmd_on .*:on.*:.*
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_off no_trigger
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_on no_trigger
setstate MSwitch_fuer_LED 2019-11-13 16:53:07 .V_Check V2.00
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVENT MSwitch_Self:off:
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTFULL MSwitch_fuer_LED:MSwitch_Self:off
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART1 MSwitch_fuer_LED
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART2 MSwitch_Self
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART3 off
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 Trigger_log off
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 last_activation_by manual
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 last_event MSwitch_Self:off:
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 last_exec_cmd set dummy_fuer_LED off
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 state off

setstate dummy_fuer_LED off
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Device_Affected no_device
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Device_Events no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .First_init done
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_cmd_off no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_cmd_on no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_off no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_on no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .V_Check V2.00
setstate dummy_fuer_LED 2019-11-13 16:50:40 Trigger_log off
setstate dummy_fuer_LED 2019-11-13 17:17:28 state off

Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 13 November 2019, 18:00:48
Hallo Byte09,

ja, das komisch benannte Teil ist ein reales Gerät (Homematic_Wohnzimmer_Fensterkontakt_Balkonseite)

Events kommen, nur kann ich mit den Readings nicht viel anfangen.

Anbei ein Bild.


Eventlog - Timeline
---------------------------------------------------------------------------------------------------
2019-11-13 18:02:59 HM_WZ_FK_BK:trigger_cnt:156 [EVENT/EVTPART1,2,3/EVTFULL:h1]
2019-11-13 18:03:01 HM_WZ_FK_BK:trigger_cnt:156 [EVENT/EVTPART1,2,3/EVTFULL:h0]



Eventlog - sequenzeformated
---------------------------------------------------------------------------------------------------
HM_WZ_FK_BK:trigger_cnt:156 HM_WZ_FK_BK:trigger_cnt:156
---------------------------------------------------------------------------------------------------
Time needed for Sequenz = 3 Sekunden



Folgende Attribute werden gesetzt und evtl. vorhandene Inhalte überschrieben:
MSwitch_Sequenz
MSwitch_Sequenz_time
Die Condition-Abfrage auf Match lautet:
[$SELF:SEQUENCE_Number] eq "1"


Es klappen auch keine Tests von Events - siehe 2.Bild
Da sollte doch er CMD2-Zweig abgearbeitet werden - richtig?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 13 November 2019, 18:13:26
Zitat von: Panik am 13 November 2019, 18:00:48
Hallo Byte09,

ja, das komisch benannte Teil ist ein reales Gerät (Homematic_Wohnzimmer_Fensterkontakt_Balkonseite)

Events kommen, nur kann ich mit den Readings nicht viel anfangen.

Anbei ein Bild.


Eventlog - Timeline
---------------------------------------------------------------------------------------------------
2019-11-13 18:02:59 HM_WZ_FK_BK:trigger_cnt:156 [EVENT/EVTPART1,2,3/EVTFULL:h1]
2019-11-13 18:03:01 HM_WZ_FK_BK:trigger_cnt:156 [EVENT/EVTPART1,2,3/EVTFULL:h0]



Eventlog - sequenzeformated
---------------------------------------------------------------------------------------------------
HM_WZ_FK_BK:trigger_cnt:156 HM_WZ_FK_BK:trigger_cnt:156
---------------------------------------------------------------------------------------------------
Time needed for Sequenz = 3 Sekunden



Folgende Attribute werden gesetzt und evtl. vorhandene Inhalte überschrieben:
MSwitch_Sequenz
MSwitch_Sequenz_time
Die Condition-Abfrage auf Match lautet:
[$SELF:SEQUENCE_Number] eq "1"


Es klappen auch keine Tests von Events - siehe 2.Bild
Da sollte doch er CMD2-Zweig abgearbeitet werden - richtig?


hast du lust und zeit mich mal anzurufen , ist bestimmt einfacher !

gruss Byte09

edit: telefonisch gelöst
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 13 November 2019, 22:02:00
Zitat von: Byte09 am 13 November 2019, 17:19:46
anbei zwei MSwitch devices , wobei eines nur ein ersatzdummy statt der LED ist. sschau es dir einfach mal an , ggf. wird es dann klar - ansonsten melde dich einfach.

gruss Byte09

defmod MSwitch_fuer_LED MSwitch   # dummy_fuer_LED
attr MSwitch_fuer_LED MSwitch_Debug 0
attr MSwitch_fuer_LED MSwitch_Eventhistory 0
attr MSwitch_fuer_LED MSwitch_Expert 0
attr MSwitch_fuer_LED MSwitch_Help 0
attr MSwitch_fuer_LED MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr MSwitch_fuer_LED MSwitch_Inforoom MSwitch
attr MSwitch_fuer_LED MSwitch_Mode Dummy
attr MSwitch_fuer_LED MSwitch_Selftrigger_always 1
attr MSwitch_fuer_LED room MSwitch_Devices
attr MSwitch_fuer_LED setList on off
attr MSwitch_fuer_LED useSetExtensions 1
attr MSwitch_fuer_LED webCmd on:off:on-for-timer 10

defmod dummy_fuer_LED MSwitch  # nodevices
attr dummy_fuer_LED MSwitch_Debug 0
attr dummy_fuer_LED MSwitch_Eventhistory 0
attr dummy_fuer_LED MSwitch_Expert 0
attr dummy_fuer_LED MSwitch_Help 0
attr dummy_fuer_LED MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr dummy_fuer_LED MSwitch_Inforoom MSwitch
attr dummy_fuer_LED MSwitch_Mode Dummy
attr dummy_fuer_LED room MSwitch_Devices
attr dummy_fuer_LED setList on off dimmup dimmdown

setstate MSwitch_fuer_LED off
setstate MSwitch_fuer_LED 2019-11-13 17:09:13 .Device_Affected dummy_fuer_LED-AbsCmd1
setstate MSwitch_fuer_LED 2019-11-13 17:09:28 .Device_Affected_Details dummy_fuer_LED-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate MSwitch_fuer_LED 2019-11-13 17:13:38 .Device_Events .*:off.*:.*#[tr].*:on.*:.*#[tr]no_trigger
setstate MSwitch_fuer_LED 2019-11-13 16:53:07 .First_init done
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_cmd_off .*:off.*:.*
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_cmd_on .*:on.*:.*
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_off no_trigger
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 .Trigger_on no_trigger
setstate MSwitch_fuer_LED 2019-11-13 16:53:07 .V_Check V2.00
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVENT MSwitch_Self:off:
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTFULL MSwitch_fuer_LED:MSwitch_Self:off
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART1 MSwitch_fuer_LED
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART2 MSwitch_Self
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 EVTPART3 off
setstate MSwitch_fuer_LED 2019-11-13 17:13:33 Trigger_log off
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 last_activation_by manual
setstate MSwitch_fuer_LED 2019-11-13 17:17:27 last_event MSwitch_Self:off:
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 last_exec_cmd set dummy_fuer_LED off
setstate MSwitch_fuer_LED 2019-11-13 17:17:28 state off

setstate dummy_fuer_LED off
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Device_Affected no_device
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Device_Events no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .First_init done
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_cmd_off no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_cmd_on no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_off no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .Trigger_on no_trigger
setstate dummy_fuer_LED 2019-11-13 16:50:40 .V_Check V2.00
setstate dummy_fuer_LED 2019-11-13 16:50:40 Trigger_log off
setstate dummy_fuer_LED 2019-11-13 17:17:28 state off



Danke. Nun habe ich es wohl verstanden. Hatte das mit dem WEBCMD bei dem Device nicht gesetzt.

Tolle Arbeit. Daumen hoch ;-)

Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 16 November 2019, 07:04:12
Hallo Thomas,

ich habe grade wieder etwas Probleme mit dem Dummy-Modus  ::)
Ich versuche einen MSwitch zu erstellen, der, wenn ich ihn anschalte, einen Alexa-Wecker generiert. Hierzu soll zunächst die Lautstärke auf 5 gestellt werden; nach 10 Sekunden soll eine Playlist gestartet werden; nach weiteren 10 Sekunden soll der Shuffle Modus aktiviert werden. Danach soll mit einem FreeCMD alle 30 Sekunden (zu Testzwecken) der Echo eingeschaltet und die Lautstärke um 10 erhöht werden.
Leider klappt das in der Praxis nicht so recht, weil nur die erste Aktion ausgeführt wird, die den Echo auf Volume 5 schaltet; danach passiert leider gar nichts mehr.

Hier ist die Raw-Definition von dem MSwitsch:

defmod Wecker_Niklas MSwitch       # FreeCmd ECHO_G090LF0965041A78
attr Wecker_Niklas MSwitch_Debug 0
attr Wecker_Niklas MSwitch_Eventhistory 0
attr Wecker_Niklas MSwitch_Expert 1
attr Wecker_Niklas MSwitch_Help 1
attr Wecker_Niklas MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Wecker_Niklas MSwitch_Inforoom MSwitch_Info
attr Wecker_Niklas MSwitch_Mode Dummy
attr Wecker_Niklas MSwitch_Selftrigger_always 1
attr Wecker_Niklas room MSwitch_Info,Steuerungen
attr Wecker_Niklas setList on off

setstate Wecker_Niklas off
setstate Wecker_Niklas 2019-11-14 14:13:12 .Device_Affected ECHO_G090LF0965041A78-AbsCmd1,ECHO_G090LF0965041A78-AbsCmd2,ECHO_G090LF0965041A78-AbsCmd3,FreeCmd-AbsCmd1
setstate Wecker_Niklas 2019-11-16 06:25:06 .Device_Affected_Details ECHO_G090LF0965041A78-AbsCmd1#[NF]volume#[NF]no_action#[NF]5#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ECHO_G090LF0965041A78-AbsCmd2#[NF]primeplayeigeneplaylist#[NF]no_action#[NF]f9fc6a1b-f9fe-4e78-93bb-73485239c93c#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ECHO_G090LF0965041A78-AbsCmd3#[NF]shuffle#[NF]no_action#[NF]on#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]20#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{#[sp]my#[sp]$laut=ReadingsVal("ECHO_G090LF0965041A78"#[ko]"volume"#[ko]"5")#[se]#[nl]$laut=$laut+5#[se]#[sp]#[nl]fhem("set#[sp]ECHO_G090LF0965041A78#[sp]play#[se]#[nl]#[sp]#[sp]#[sp]#[sp]#[sp]#[sp]set#[sp]ECHO_G090LF0965041A78#[sp]volume#[sp]".$laut)#[sp]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]30#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]5#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Wecker_Niklas 2019-11-16 06:26:05 .Device_Events MSwitch_Self:off:#[tr]MSwitch_Self:on:
setstate Wecker_Niklas 2019-11-13 19:18:09 .First_init done
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_cmd_off state:off
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_cmd_on state:on
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_off no_trigger
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_on no_trigger
setstate Wecker_Niklas 2019-11-13 19:18:09 .V_Check V2.00
setstate Wecker_Niklas 2019-11-16 06:15:11 .sortby none
setstate Wecker_Niklas 2019-11-16 06:26:05 EVENT MSwitch_Self:off:
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTFULL Wecker_Niklas:MSwitch_Self:off
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART1 Wecker_Niklas
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART2 MSwitch_Self
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART3 off
setstate Wecker_Niklas 2019-11-13 19:23:25 Trigger_log off
setstate Wecker_Niklas 2019-11-16 06:26:05 last_activation_by manual
setstate Wecker_Niklas 2019-11-16 06:26:05 last_cmd 2
setstate Wecker_Niklas 2019-11-16 06:26:05 last_event MSwitch_Self:off:
setstate Wecker_Niklas 2019-11-16 06:25:21 last_exec_cmd set ECHO_G090LF0965041A78 volume 5
setstate Wecker_Niklas 2019-11-16 06:26:05 state off


Kannst du mal schauen, wo ich hier einen Fehler reingebaut habe?

Danke und Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 November 2019, 10:14:55
Zitat von: Wolle02 am 16 November 2019, 07:04:12
Hallo Thomas,

ich habe grade wieder etwas Probleme mit dem Dummy-Modus  ::)
Ich versuche einen MSwitch zu erstellen, der, wenn ich ihn anschalte, einen Alexa-Wecker generiert. Hierzu soll zunächst die Lautstärke auf 5 gestellt werden; nach 10 Sekunden soll eine Playlist gestartet werden; nach weiteren 10 Sekunden soll der Shuffle Modus aktiviert werden. Danach soll mit einem FreeCMD alle 30 Sekunden (zu Testzwecken) der Echo eingeschaltet und die Lautstärke um 10 erhöht werden.
Leider klappt das in der Praxis nicht so recht, weil nur die erste Aktion ausgeführt wird, die den Echo auf Volume 5 schaltet; danach passiert leider gar nichts mehr.

Hier ist die Raw-Definition von dem MSwitsch:

defmod Wecker_Niklas MSwitch       # FreeCmd ECHO_G090LF0965041A78
attr Wecker_Niklas MSwitch_Debug 0
attr Wecker_Niklas MSwitch_Eventhistory 0
attr Wecker_Niklas MSwitch_Expert 1
attr Wecker_Niklas MSwitch_Help 1
attr Wecker_Niklas MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Wecker_Niklas MSwitch_Inforoom MSwitch_Info
attr Wecker_Niklas MSwitch_Mode Dummy
attr Wecker_Niklas MSwitch_Selftrigger_always 1
attr Wecker_Niklas room MSwitch_Info,Steuerungen
attr Wecker_Niklas setList on off

setstate Wecker_Niklas off
setstate Wecker_Niklas 2019-11-14 14:13:12 .Device_Affected ECHO_G090LF0965041A78-AbsCmd1,ECHO_G090LF0965041A78-AbsCmd2,ECHO_G090LF0965041A78-AbsCmd3,FreeCmd-AbsCmd1
setstate Wecker_Niklas 2019-11-16 06:25:06 .Device_Affected_Details ECHO_G090LF0965041A78-AbsCmd1#[NF]volume#[NF]no_action#[NF]5#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ECHO_G090LF0965041A78-AbsCmd2#[NF]primeplayeigeneplaylist#[NF]no_action#[NF]f9fc6a1b-f9fe-4e78-93bb-73485239c93c#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]ECHO_G090LF0965041A78-AbsCmd3#[NF]shuffle#[NF]no_action#[NF]on#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]20#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]FreeCmd-AbsCmd1#[NF]cmd#[NF]cmd#[NF]{#[sp]my#[sp]$laut=ReadingsVal("ECHO_G090LF0965041A78"#[ko]"volume"#[ko]"5")#[se]#[nl]$laut=$laut+5#[se]#[sp]#[nl]fhem("set#[sp]ECHO_G090LF0965041A78#[sp]play#[se]#[nl]#[sp]#[sp]#[sp]#[sp]#[sp]#[sp]set#[sp]ECHO_G090LF0965041A78#[sp]volume#[sp]".$laut)#[sp]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]30#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]5#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate Wecker_Niklas 2019-11-16 06:26:05 .Device_Events MSwitch_Self:off:#[tr]MSwitch_Self:on:
setstate Wecker_Niklas 2019-11-13 19:18:09 .First_init done
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_cmd_off state:off
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_cmd_on state:on
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_off no_trigger
setstate Wecker_Niklas 2019-11-13 19:23:25 .Trigger_on no_trigger
setstate Wecker_Niklas 2019-11-13 19:18:09 .V_Check V2.00
setstate Wecker_Niklas 2019-11-16 06:15:11 .sortby none
setstate Wecker_Niklas 2019-11-16 06:26:05 EVENT MSwitch_Self:off:
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTFULL Wecker_Niklas:MSwitch_Self:off
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART1 Wecker_Niklas
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART2 MSwitch_Self
setstate Wecker_Niklas 2019-11-16 06:26:05 EVTPART3 off
setstate Wecker_Niklas 2019-11-13 19:23:25 Trigger_log off
setstate Wecker_Niklas 2019-11-16 06:26:05 last_activation_by manual
setstate Wecker_Niklas 2019-11-16 06:26:05 last_cmd 2
setstate Wecker_Niklas 2019-11-16 06:26:05 last_event MSwitch_Self:off:
setstate Wecker_Niklas 2019-11-16 06:25:21 last_exec_cmd set ECHO_G090LF0965041A78 volume 5
setstate Wecker_Niklas 2019-11-16 06:26:05 state off


Kannst du mal schauen, wo ich hier einen Fehler reingebaut habe?

Danke und Gruß
Wolle

Hi Wolle,

mein Fehler, nicht deiner. Da dieser Mode noch recht neu ist ( hat früher anders funktioniert ) wurde ein restart ( delay ) bei dummys schlicht noch geblockt ( ein überbleibsel aus einer früheren Version ) .
Sorry hierfür.

Ich spiele in einer halbe Stunde ein Update ein , kannst du dann sofort über GIT aktualisieren.

Ich gebe dir bescheid, wenn ich es habe.

edit: update ist im GIT
update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

und morgen früh auch im SVN
zudem ist im dummymode jetzt auch expert zuschaltbar und gesetzte timer und delays sind über das GET-Dropdown abrufbar.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 16 November 2019, 11:21:38
Super, jetzt funktioniert's. Vielen Dank.

Eine Frage noch zu den Repeats. Kann man eine laufende Repeatfolge auch irgendwie abbrechen?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 16 November 2019, 12:55:56
Zitat von: Wolle02 am 16 November 2019, 11:21:38
Super, jetzt funktioniert's. Vielen Dank.

Eine Frage noch zu den Repeats. Kann man eine laufende Repeatfolge auch irgendwie abbrechen?

im Dummymode derzeit nicht ( bis vor 1 Stunde konn man sie in diesem mode nichtmal einrichten  ;) ) .
Ich werde diese Option aber aktivieren. Mach in 10 Minuten nochmal ein Update über GIT.

geht dann wie in den anderen modi auch mit set DEVICE del_repeats bzw. set DEVICE del_delays

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 16 November 2019, 13:17:32
Ich sag ganz artig Danke schön. Und jetzt lass ich dich mal ne Weile in Ruhe.  ;D
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 18 November 2019, 13:20:38
Huhu zusammen,

ich habe da mal wieder eine Frage:

Ich möchte eine Lampe - die per Bewegungsmelder geschaltet wird mit on-for-timer - aber dann abhängig von der Uhrzeit.
Das Device habe ich normal hinzugefügt und dann über "add action for device..." eine weitere Aktion hinzugefügt.
In dieser habe ich dann eine Zeit eingetragen [20:00-21:00] und dort eine andere Zeit für on-for-timer.

Wenn in dieser Zeit nun der Bewegungsmelder "triggert", werden beide Actions ausgeführt. Es sollte doch nur der eine ausgeführt werden bei dem die Uhrzeit passt - oder?

Gruß
Hermann


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 13:34:38
Zitat von: hermann1514 am 18 November 2019, 13:20:38
Huhu zusammen,

ich habe da mal wieder eine Frage:

Ich möchte eine Lampe - die per Bewegungsmelder geschaltet wird mit on-for-timer - aber dann abhängig von der Uhrzeit.
Das Device habe ich normal hinzugefügt und dann über "add action for device..." eine weitere Aktion hinzugefügt.
In dieser habe ich dann eine Zeit eingetragen [20:00-21:00] und dort eine andere Zeit für on-for-timer.

Wenn in dieser Zeit nun der Bewegungsmelder "triggert", werden beide Actions ausgeführt. Es sollte doch nur der eine ausgeführt werden bei dem die Uhrzeit passt - oder?

Gruß
Hermann
hi,

postest du mir bitte die raw Definition... ich schaue es mir an, wenn ich zuhause bin.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 18 November 2019, 13:41:42
Hi,
oki - hier die RAW Daten:


defmod mSwitch_dummy_test MSwitch mswitch_dummy_schalter_1  # mswitch_dummy_licht_1
attr mSwitch_dummy_test MSwitch_Debug 0
attr mSwitch_dummy_test MSwitch_Delete_Delays 1
attr mSwitch_dummy_test MSwitch_Eventhistory 0
attr mSwitch_dummy_test MSwitch_Expert 0
attr mSwitch_dummy_test MSwitch_Extensions 0
attr mSwitch_dummy_test MSwitch_Help 0
attr mSwitch_dummy_test MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr mSwitch_dummy_test MSwitch_Include_Devicecmds 1
attr mSwitch_dummy_test MSwitch_Include_MSwitchcmds 0
attr mSwitch_dummy_test MSwitch_Include_Webcmds 0
attr mSwitch_dummy_test MSwitch_Inforoom MSwitch_Devices
attr mSwitch_dummy_test MSwitch_Lock_Quickedit 1
attr mSwitch_dummy_test MSwitch_Mode Notify
attr mSwitch_dummy_test MSwitch_Safemode 1
attr mSwitch_dummy_test room MSwitch_Devices,mSwitches
attr mSwitch_dummy_test setList on off
attr mSwitch_dummy_test webCmd on:off

setstate mSwitch_dummy_test active
setstate mSwitch_dummy_test 2019-11-18 13:37:52 .Device_Affected mswitch_dummy_licht_1-AbsCmd1,mswitch_dummy_licht_1-AbsCmd2
setstate mSwitch_dummy_test 2019-11-18 13:37:52 .Device_Affected_Details mswitch_dummy_licht_1-AbsCmd1#[NF]on-for-timer#[NF]off#[NF]10#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][12#[dp]55-12#[dp]58]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]mswitch_dummy_licht_1-AbsCmd2#[NF]on-for-timer#[NF]no_action#[NF]20#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate mSwitch_dummy_test 2019-11-18 12:56:56 .Device_Events no_trigger#[tr]state:on#[tr]state:off
setstate mSwitch_dummy_test 2019-11-18 12:39:31 .First_init done
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_cmd_off no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_cmd_on state:on
setstate mSwitch_dummy_test 2019-11-18 12:42:33 .Trigger_condition
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_off no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_on no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:42:33 .Trigger_time
setstate mSwitch_dummy_test 2019-11-18 12:39:31 .V_Check V2.00
setstate mSwitch_dummy_test 2019-11-18 12:56:56 EVENT state:on
setstate mSwitch_dummy_test 2019-11-18 12:56:56 EVTFULL mswitch_dummy_schalter_1:state:on
setstate mSwitch_dummy_test 2019-11-18 12:56:56 EVTPART1 mswitch_dummy_schalter_1
setstate mSwitch_dummy_test 2019-11-18 12:56:56 EVTPART2 state
setstate mSwitch_dummy_test 2019-11-18 12:56:56 EVTPART3 on
setstate mSwitch_dummy_test 2019-11-18 12:42:33 Trigger_device mswitch_dummy_schalter_1
setstate mSwitch_dummy_test 2019-11-18 12:43:24 Trigger_log off
setstate mSwitch_dummy_test 2019-11-18 12:56:56 last_activation_by event
setstate mSwitch_dummy_test 2019-11-18 12:56:56 last_event state:on
setstate mSwitch_dummy_test 2019-11-18 12:56:56 last_exec_cmd set mswitch_dummy_licht_1 on-for-timer 20
setstate mSwitch_dummy_test 2019-11-18 12:56:56 state active


Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 17:27:22
Zitat von: hermann1514 am 18 November 2019, 13:20:38
Huhu zusammen,

ich habe da mal wieder eine Frage:

Ich möchte eine Lampe - die per Bewegungsmelder geschaltet wird mit on-for-timer - aber dann abhängig von der Uhrzeit.
Das Device habe ich normal hinzugefügt und dann über "add action for device..." eine weitere Aktion hinzugefügt.
In dieser habe ich dann eine Zeit eingetragen [20:00-21:00] und dort eine andere Zeit für on-for-timer.

Wenn in dieser Zeit nun der Bewegungsmelder "triggert", werden beide Actions ausgeführt. Es sollte doch nur der eine ausgeführt werden bei dem die Uhrzeit passt - oder?

Gruß
Hermann

ich habe mir das gerade mal angeschaut. Die verschiedenen auzuführenden Befehle unterliegen keiner if/else bedingung. d.H es werden immer alle zweige immer ausgeführt, solange die bedingung passt. Keine bedingung passt immer.

du musst in den expertmode wechseln , dafür sorgen , das der befehl, der einer zeitlichen bedingung unterliegt immer zuerst ausgeführt wird und die befehlsausführung in diesem fall , das diese bedingung passt, danach abgebrochen wird.

ich habe das device mal entsprechend geändert.

gruss Byte09

defmod mSwitch_dummy_test MSwitch mswitch_dummy_schalter_1  # mswitch_dummy_licht_1
attr mSwitch_dummy_test MSwitch_Debug 1
attr mSwitch_dummy_test MSwitch_Delete_Delays 1
attr mSwitch_dummy_test MSwitch_Eventhistory 0
attr mSwitch_dummy_test MSwitch_Expert 1
attr mSwitch_dummy_test MSwitch_Extensions 0
attr mSwitch_dummy_test MSwitch_Help 0
attr mSwitch_dummy_test MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr mSwitch_dummy_test MSwitch_Include_Devicecmds 1
attr mSwitch_dummy_test MSwitch_Include_MSwitchcmds 0
attr mSwitch_dummy_test MSwitch_Include_Webcmds 0
attr mSwitch_dummy_test MSwitch_Inforoom MSwitch
attr mSwitch_dummy_test MSwitch_Lock_Quickedit 1
attr mSwitch_dummy_test MSwitch_Mode Notify
attr mSwitch_dummy_test MSwitch_Safemode 1
attr mSwitch_dummy_test room MSwitch_Devices
attr mSwitch_dummy_test setList on off
attr mSwitch_dummy_test webCmd on:off

setstate mSwitch_dummy_test active
setstate mSwitch_dummy_test 2019-11-18 13:37:52 .Device_Affected mswitch_dummy_licht_1-AbsCmd1,mswitch_dummy_licht_1-AbsCmd2
setstate mSwitch_dummy_test 2019-11-18 17:23:47 .Device_Affected_Details mswitch_dummy_licht_1-AbsCmd1#[NF]on-for-timer#[NF]off#[NF]10#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][12#[dp]55-12#[dp]58]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]1#[NF]0#[NF]1#[ND]mswitch_dummy_licht_1-AbsCmd2#[NF]on-for-timer#[NF]no_action#[NF]20#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate mSwitch_dummy_test 2019-11-18 12:56:56 .Device_Events no_trigger#[tr]state:on#[tr]state:off
setstate mSwitch_dummy_test 2019-11-18 12:39:31 .First_init done
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_cmd_off no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_cmd_on state:on
setstate mSwitch_dummy_test 2019-11-18 12:42:33 .Trigger_condition
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_off no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:43:24 .Trigger_on no_trigger
setstate mSwitch_dummy_test 2019-11-18 12:42:33 .Trigger_time
setstate mSwitch_dummy_test 2019-11-18 12:39:31 .V_Check V2.00
setstate mSwitch_dummy_test 2019-11-18 17:21:17 EVENT Sys_Extension:undef
setstate mSwitch_dummy_test 2019-11-18 17:21:17 EVTFULL mswitch_dummy_schalter_1:Sys_Extension:undef
setstate mSwitch_dummy_test 2019-11-18 17:21:17 EVTPART1 mswitch_dummy_schalter_1
setstate mSwitch_dummy_test 2019-11-18 17:21:17 EVTPART2 Sys_Extension
setstate mSwitch_dummy_test 2019-11-18 17:21:17 EVTPART3 undef
setstate mSwitch_dummy_test 2019-11-18 16:22:04 Trigger_device mswitch_dummy_schalter_1
setstate mSwitch_dummy_test 2019-11-18 12:43:24 Trigger_log off
setstate mSwitch_dummy_test 2019-11-18 17:21:17 last_activation_by event
setstate mSwitch_dummy_test 2019-11-18 17:21:17 last_event Sys_Extension:undef
setstate mSwitch_dummy_test 2019-11-18 12:56:56 last_exec_cmd set mswitch_dummy_licht_1 on-for-timer 20
setstate mSwitch_dummy_test 2019-11-18 17:21:17 state active

Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 17:27:58
Hallo Thomas,

es weihnachtet so langsam und meine Frau möchte beleuchtete Sterne im Fenster haben. Alles klar, da mach ich mal eben nen MSwitch. Also habe ich einen MSwitch im Modus notify erstellt, keinen Trigger eingegeben, sondern im Feld "execute 'cmd1' at :" gemäß Hilfe und Wiki folgendes eingegeben: [{sunset()}], damit der Stern bei Sonnenuntergang angeschaltet wird.

Leider hat sich als Ergebnis nichts getan!

Den Code habe ich per Copy & Pate aus der Hilfe übernommen. Im Wiki habe ich gelesen, dass auf korrekte Eingabe der Leerzeichen zu achten ist (allerdings habe ich nirgends gelesen, was denn die korrekte Eingabe der Leerzeichen ist). Die Leerzeichen werden laut Wiki jeweils nach und vor der geschweiften Klammer gesetzt. Wenn ich das allerdings in das Feld eintrage und auf "modify Trigger Device" klicke, werden die Leerzeichen automatisch wieder entfernt und es steht dann wieder [{sunset()}] im Feld. Somit schaltet der Stern leider wieder nicht.

Zur besseren Nachvollziehbarkeit habe ich hier das Raw_Define angegeben.

defmod WZ_Stern_at MSwitch
attr WZ_Stern_at MSwitch_Debug 0
attr WZ_Stern_at MSwitch_Delete_Delays 1
attr WZ_Stern_at MSwitch_Eventhistory 0
attr WZ_Stern_at MSwitch_Expert 0
attr WZ_Stern_at MSwitch_Extensions 0
attr WZ_Stern_at MSwitch_Help 1
attr WZ_Stern_at MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr WZ_Stern_at MSwitch_Include_Devicecmds 1
attr WZ_Stern_at MSwitch_Include_MSwitchcmds 0
attr WZ_Stern_at MSwitch_Include_Webcmds 0
attr WZ_Stern_at MSwitch_Lock_Quickedit 1
attr WZ_Stern_at MSwitch_Mode Notify
attr WZ_Stern_at MSwitch_Safemode 1
attr WZ_Stern_at room MSwitch_Info,Steuerungen

setstate WZ_Stern_at active
setstate WZ_Stern_at 2019-11-17 18:49:10 .Device_Affected WZ_Stern-AbsCmd1
setstate WZ_Stern_at 2019-11-17 18:49:26 .Device_Affected_Details WZ_Stern-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate WZ_Stern_at 2019-11-17 18:46:49 .Device_Events no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .First_init done
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_cmd_off no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_cmd_on no_trigger
setstate WZ_Stern_at 2019-11-18 17:12:30 .Trigger_condition
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_off no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_on no_trigger
setstate WZ_Stern_at 2019-11-18 17:12:30 .Trigger_time on~off~ononly[{sunset()}]~offonly[23#[dp]30]~onoffonly
setstate WZ_Stern_at 2019-11-17 18:45:56 .V_Check V2.00
setstate WZ_Stern_at 2019-11-18 17:16:00 EVENT WZ_Stern_at:execute_timer_P3:17:16
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTFULL WZ_Stern_at:execute_timer_P3:17:16
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART1 WZ_Stern_at
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART2 execute_timer_P3
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART3 17:16
setstate WZ_Stern_at 2019-11-18 17:12:29 Trigger_device no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 Trigger_log off
setstate WZ_Stern_at 2019-11-18 17:16:00 last_activation_by timer
setstate WZ_Stern_at 2019-11-17 18:46:21 last_event state:active
setstate WZ_Stern_at 2019-11-18 17:16:00 last_exec_cmd set WZ_Stern on
setstate WZ_Stern_at 2019-11-17 18:46:21 state active


Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 17:39:47
Zitat von: Wolle02 am 18 November 2019, 17:27:58
Hallo Thomas,

es weihnachtet so langsam und meine Frau möchte beleuchtete Sterne im Fenster haben. Alles klar, da mach ich mal eben nen MSwitch. Also habe ich einen MSwitch im Modus notify erstellt, keinen Trigger eingegeben, sondern im Feld "execute 'cmd1' at :" gemäß Hilfe und Wiki folgendes eingegeben: [{sunset()}], damit der Stern bei Sonnenuntergang angeschaltet wird.

Leider hat sich als Ergebnis nichts getan!

Den Code habe ich per Copy & Pate aus der Hilfe übernommen. Im Wiki habe ich gelesen, dass auf korrekte Eingabe der Leerzeichen zu achten ist (allerdings habe ich nirgends gelesen, was denn die korrekte Eingabe der Leerzeichen ist). Die Leerzeichen werden laut Wiki jeweils nach und vor der geschweiften Klammer gesetzt. Wenn ich das allerdings in das Feld eintrage und auf "modify Trigger Device" klicke, werden die Leerzeichen automatisch wieder entfernt und es steht dann wieder [{sunset()}] im Feld. Somit schaltet der Stern leider wieder nicht.

Zur besseren Nachvollziehbarkeit habe ich hier das Raw_Define angegeben.

defmod WZ_Stern_at MSwitch
attr WZ_Stern_at MSwitch_Debug 0
attr WZ_Stern_at MSwitch_Delete_Delays 1
attr WZ_Stern_at MSwitch_Eventhistory 0
attr WZ_Stern_at MSwitch_Expert 0
attr WZ_Stern_at MSwitch_Extensions 0
attr WZ_Stern_at MSwitch_Help 1
attr WZ_Stern_at MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr WZ_Stern_at MSwitch_Include_Devicecmds 1
attr WZ_Stern_at MSwitch_Include_MSwitchcmds 0
attr WZ_Stern_at MSwitch_Include_Webcmds 0
attr WZ_Stern_at MSwitch_Lock_Quickedit 1
attr WZ_Stern_at MSwitch_Mode Notify
attr WZ_Stern_at MSwitch_Safemode 1
attr WZ_Stern_at room MSwitch_Info,Steuerungen

setstate WZ_Stern_at active
setstate WZ_Stern_at 2019-11-17 18:49:10 .Device_Affected WZ_Stern-AbsCmd1
setstate WZ_Stern_at 2019-11-17 18:49:26 .Device_Affected_Details WZ_Stern-AbsCmd1#[NF]on#[NF]off#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]#[NF]#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate WZ_Stern_at 2019-11-17 18:46:49 .Device_Events no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .First_init done
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_cmd_off no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_cmd_on no_trigger
setstate WZ_Stern_at 2019-11-18 17:12:30 .Trigger_condition
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_off no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 .Trigger_on no_trigger
setstate WZ_Stern_at 2019-11-18 17:12:30 .Trigger_time on~off~ononly[{sunset()}]~offonly[23#[dp]30]~onoffonly
setstate WZ_Stern_at 2019-11-17 18:45:56 .V_Check V2.00
setstate WZ_Stern_at 2019-11-18 17:16:00 EVENT WZ_Stern_at:execute_timer_P3:17:16
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTFULL WZ_Stern_at:execute_timer_P3:17:16
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART1 WZ_Stern_at
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART2 execute_timer_P3
setstate WZ_Stern_at 2019-11-18 17:16:00 EVTPART3 17:16
setstate WZ_Stern_at 2019-11-18 17:12:29 Trigger_device no_trigger
setstate WZ_Stern_at 2019-11-17 18:45:56 Trigger_log off
setstate WZ_Stern_at 2019-11-18 17:16:00 last_activation_by timer
setstate WZ_Stern_at 2019-11-17 18:46:21 last_event state:active
setstate WZ_Stern_at 2019-11-18 17:16:00 last_exec_cmd set WZ_Stern on
setstate WZ_Stern_at 2019-11-17 18:46:21 state active


Gruß
Wolle

hi,

bist du sicher , das beim anlegen des devices bzw. beim eintag sunset - dieser nicht schon überschritten war ?

wenn ich 1 stunde draufgebe wird es bei mir korrekt angezeigt .

[{sunset(+3600)}]

gruss Thomas

edit: das 'leerzeichenproblem' ist überholt und sollte eigentlich egal sein
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:01:19
Zitatbist du sicher , das beim anlegen des devices bzw. beim eintag sunset - dieser nicht schon überschritten war ?

hmmm, ich habe den MSwitch mit dem [{sunset()}] gestern abend angelegt. Dann hätte er doch heute um 16:40 Uhr schalten müssen. Leider war der Stern dunkel.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:01:44
nachtrga:

ich habe gerade einen test durchlaufen lassen , hat pünktlich angeschaltet .

ZitatMon Nov 18 17:56:58 2019 Starte Log
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     zu schaltende devices -> 1 WZ_Stern-AbsCmd1
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     timer des devices -> 0
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     auszufuehrender Befehl -> set WZ_Stern on
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     teste auf repeasts
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     anzahl repeats -> 0
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     delay repeats -> 0
Mon Nov 18 17:59:00 2019: -> WZ_Stern_at:     return aus execnotif -> set WZ_Stern on ,

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:03:54
Zitat von: Byte09 am 18 November 2019, 18:01:44
nachtrga:

ich habe gerade einen test durchlaufen lassen , hat pünktlich angeschaltet .

gruss thomas

ok , das ist jetzt etwas schwierig zu sagen - ich lasse mein device jetzt erstmal stehen . die zeiten werden aber leider erst um 00:00:10 neu berechnet , d.H - ohne an meinen systemzeiten zu drehen - kann ich es jetzt ganz schlecht testen , ob die neuberechnung korrekt durchgeführt wird. sehe ich aber morgen früh und würde dann bescheid geben.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:04:55
schalte dein device doch bitte mal in den debugmode 3 , dann solltest du nach 24 uhr sehen , ob und was passiert ist .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:05:37
Ich habe jetzt mal Eventhistory auf 10 gesetzt. Dann sollte ich doch morgen sehen können, was wann auf was reagiert hat oder auch nicht.
Schaun mer mal.
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:06:13
Zitat von: Byte09 am 18 November 2019, 18:04:55
schalte dein device doch bitte mal in den debugmode 3 , dann solltest du nach 24 uhr sehen , ob und was passiert ist .

gruss thomas

Alles klar. Hab ich.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:06:26
Zitat von: Wolle02 am 18 November 2019, 18:05:37
Ich habe jetzt mal Eventhistory auf 10 gesetzt. Dann sollte ich doch morgen sehen können, was wann auf was reagiert hat oder auch nicht.
Schaun mer mal.

mache es bitte über den debugmode .

gruss thomas

PS: über GET active_timer show  kannst du dir bevorstehende timer anzeigen lassen

Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:08:55
Zitatmache es bitte über den debugmode .

Jup. Hab ich gesetzt. Debug 3
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:12:10
ZitatPS: über
Code: [Auswählen]

GET active_timer show

  kannst du dir bevorstehende timer anzeigen lassen

Ahh, danke für den Tip. Da muss ich aber noch bis morgen waren, weil da jetzt der Zeitpunkt drinsteht, den ich manuell zum anschalten eingetragen habe.  ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:15:43
Zitat von: Wolle02 am 18 November 2019, 18:12:10
Ahh, danke für den Tip. Da muss ich aber noch bis morgen waren, weil da jetzt der Zeitpunkt drinsteht, den ich manuell zum anschalten eingetragen habe.  ;)

ja, genau das macht es gerade schwierig , der neue zeitpunkt wird erst nach neuberechnung eingetragen --- ggf. muss ich mal schauen ob ich das ändern kann.

gruss thomas

edit:

das steht aber drinnen ?
2019-11-19 00:00:10 neuberechnung aller Schaltzeiten
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:20:53
Jep, das steht drin.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:24:43
Zitat von: Wolle02 am 18 November 2019, 18:20:53
Jep, das steht drin.

hmm ... der eigentliche befehl um 17:16 steht aber auch noch drinnen , dann wundert mich das etwas - er hatte ihn ja scheinbar korrekt berechnet.

was schaltest du damit ? 433Mhz gedönse ? ... nicht das der befehl einfach nur nicht angekommen ist ?!?
aber letztendlich hift hier nur das log ... im zweifel bis morgen nach schaltzeit )
gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 18 November 2019, 18:27:11
Zitathmm ... der eigentliche befehl um 17:16 steht aber auch noch drinnen , dann wundert mich das etwas - er hatte ihn ja scheinbar korrekt berechnet.

Nein, wie gesagt, das ist die Zeit, die ich manuell mittels [17:16] eigeben hatte, um zu sehen, ob das schalten grundsätzlich funktioniert. Das tat es auch..... nur mit sunset halt nicht.
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 18 November 2019, 18:29:45
Zitat von: Wolle02 am 18 November 2019, 18:27:11
Nein, wie gesagt, das ist die Zeit, die ich manuell mittels [17:16] eigeben hatte, um zu sehen, ob das schalten grundsätzlich funktioniert. Das tat es auch..... nur mit sunset halt nicht.
ok... warten wir es ab, maß morgen früh drinnen steht. [emoji6]..

ichbhabe die letzte Zeit viel umgebaut, hoffe aber nicht das es mit dem blanken sunset einen Fehler gibt.  Aber an meiner system zeit möchte ich gerade nicht wirklichvrumschrsuben [emoji848]

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 November 2019, 06:02:33
hi wolle,

ich habe gerade gesehen , das bei der neuberechnung der schaltzeiten keine debugeinträge erzeugt werden , aber erstmal egal, die zeit wurde neu berechnet und der timer gesetzt:
ZitatSystemzeit: Tue Nov 19 06:00:27 2019
Schaltzeiten (at - kommandos).
2019-11-19 17:10:00 execute 'cmd1' commands only
2019-11-19 23:30:00 execute 'cmd2' commands only
2019-11-20 00:00:10 neuberechnung aller Schaltzeiten

die abschaltung um 23.30 Uhr ist auch durchgelaufen:
ZitatMon Nov 18 18:09:32 2019 Starte Log
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     zu schaltende devices -> 1 WZ_Stern-AbsCmd1
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     timer des devices -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     auszufuehrender Befehl -> set WZ_Stern off
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     teste auf repeasts
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     anzahl repeats -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     delay repeats -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     return aus execnotif -> set WZ_Stern off ,

.. ich lasse es jetzt erstmal durchlaufen um zu schauen ob auch ( on ) geschaltet wird, gehe aber davon aus.

gruss thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 19 November 2019, 06:34:12
Guten Morgen Thomas,

bei mir steht jetzt folgendes nach der Neuberechnung drin:

Systemzeit: Tue Nov 19 06:26:23 2019
Schaltzeiten (at - kommandos).
2019-11-19 17:15:00 execute 'cmd1' commands only
2019-11-19 23:30:00 execute 'cmd2' commands only
2019-11-20 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Ich habe die Befürchtung, dass ich einem Irrtum/Missverständnis aufgesessen bin. Ich glaube nämlich, dass ich gestern schlicht zu früh das Einschaltereignis erwartet habe, was daran liegen könnte, dass hier zwei verschiedene Sonnenuntergangszeiten bei mir verwendet werden. Bei MSwitch habe ich aus dem Wiki abgeschrieben und sunset() verwendet, während ich im übrigens System das Astro-Modul verwende. Astro hat mir den Sonnenuntergang gestern um 16:40 Uhr angezeigt. Sunset hätte wohl erst um 17:15 Uhr geschaltet. Ich lag wohl irgendwo dazwischen.
Ich warte jetzt mal heute abend 17:15 Uhr ab und entschuldige mich dann wahrscheinlich bei dir.  ;) :D

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 November 2019, 06:39:36
Zitat von: Wolle02 am 19 November 2019, 06:34:12
Guten Morgen Thomas,

bei mir steht jetzt folgendes nach der Neuberechnung drin:

Systemzeit: Tue Nov 19 06:26:23 2019
Schaltzeiten (at - kommandos).
2019-11-19 17:15:00 execute 'cmd1' commands only
2019-11-19 23:30:00 execute 'cmd2' commands only
2019-11-20 00:00:10 neuberechnung aller Schaltzeiten


aktive Delays:


Ich habe die Befürchtung, dass ich einem Irrtum/Missverständnis aufgesessen bin. Ich glaube nämlich, dass ich gestern schlicht zu früh das Einschaltereignis erwartet habe, was daran liegen könnte, dass hier zwei verschiedene Sonnenuntergangszeiten bei mir verwendet werden. Bei MSwitch habe ich aus dem Wiki abgeschrieben und sunset() verwendet, während ich im übrigens System das Astro-Modul verwende. Astro hat mir den Sonnenuntergang gestern um 16:40 Uhr angezeigt. Sunset hätte wohl erst um 17:15 Uhr geschaltet. Ich lag wohl irgendwo dazwischen.
Ich warte jetzt mal heute abend 17:15 Uhr ab und entschuldige mich dann wahrscheinlich bei dir.  ;) :D

Gruß
Wolle

kein thema, gib mir doch bitte nur kurz bescheid, ob alle geht heute abend .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 November 2019, 17:18:38
soweit alles durchgelaufen bei mir, die Zeitschalten passen und wurden ausgeführt:

ZitatMon Nov 18 18:09:32 2019 Starte Log
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     zu schaltende devices -> 1 WZ_Stern-AbsCmd1
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     timer des devices -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     auszufuehrender Befehl -> set WZ_Stern off
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     teste auf repeasts
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     anzahl repeats -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     delay repeats -> 0
Mon Nov 18 23:30:00 2019: -> WZ_Stern_at:     return aus execnotif -> set WZ_Stern off ,
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     zu schaltende devices -> 1 WZ_Stern-AbsCmd1
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     timer des devices -> 0
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     auszufuehrender Befehl -> set WZ_Stern on
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     teste auf repeasts
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     anzahl repeats -> 0
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     delay repeats -> 0
Tue Nov 19 17:10:00 2019: -> WZ_Stern_at:     return aus execnotif -> set WZ_Stern on ,

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 19 November 2019, 19:13:36
Hallo byte09,

wie ist denn die Syntax bei einem FreeCMD:

({system("sudo shutdown -r now")});

Ich hab schon etliches probiert mit den Klammern - doch es will net ...

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 19 November 2019, 19:17:25
Hallo Thomas,

soweit alles durchgelaufen bei mir, die Zeitschalten passen und wurden ausgeführt:

ja, bei mir ist heute auch alles gut durchgelaufen. Der Stern leuchtet  :D Ich war gestern wohl einfach etwas zu voreilig. Bitte entschuldige, dass ich so viel Wallung reingebracht habe.

Ich möchte an dieser Stelle auch gerne mal herzlichen Dank für dein tolles Modul sagen. Man braucht zwar etwas Einarbeitung, aber nur deshalb, weil das Modul wirklich sehr mächtig ist. Es ist eigentlich genau das was ich mir schon immer gewünscht habe, weil ich doch immer sehr mit der Syntax auf Kriegsfuß stehe.  ???

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 19 November 2019, 19:18:47
Zitat von: Panik am 19 November 2019, 19:13:36

({system("sudo shutdown -r now")});


Also gefühlt würde ich die äußeren runden Klammern weglassen.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 November 2019, 19:21:35
Zitat von: Panik am 19 November 2019, 19:13:36
Hallo byte09,

wie ist denn die Syntax bei einem FreeCMD:

({system("sudo shutdown -r now")});

Ich hab schon etliches probiert mit den Klammern - doch es will net ...

Panik

Hi Panik

wenn perlcode ausgeführt werden soll immer mit '{' einleiten und mit '}' beenden.

Es darf nichts vor der einleitenden Klammer und nach der beendenden Klammer stehen.

Es geht nur entweder perlcode  oder Fhembefehle . ein Mix ist ( derzeit ) noch nicht möglich.

{
system("sudo shutdown -r now");
}


gerade getestet.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 20 November 2019, 20:09:35
Zitat von: Byte09 am 18 November 2019, 17:27:22
ich habe mir das gerade mal angeschaut. Die verschiedenen auzuführenden Befehle unterliegen keiner if/else bedingung. d.H es werden immer alle zweige immer ausgeführt, solange die bedingung passt. Keine bedingung passt immer.

du musst in den expertmode wechseln , dafür sorgen , das der befehl, der einer zeitlichen bedingung unterliegt immer zuerst ausgeführt wird und die befehlsausführung in diesem fall , das diese bedingung passt, danach abgebrochen wird.

ich habe das device mal entsprechend geändert.

gruss Byte09



Danke. Hat alles geklappt.
Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 20 November 2019, 20:53:26
Hallo Thomas,

bei mir steht das nach dem letzten Update im Log:
Zitat
Zitat2019.11.20 19:56:52 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/98_MSwitch.pm line 3414.
2019.11.20 20:11:41 1: PERL WARNING: Use of /c modifier is meaningless without /g at (eval 1121) line 1.
2019.11.20 20:31:41 1: PERL WARNING: Use of /c modifier is meaningless without /g at (eval 1756) line 1.

Ist das Relevant? Hab nichts an den bestehenden MSWitch gemacht.

Gruss Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 November 2019, 20:54:37
Zitat von: Maista am 20 November 2019, 20:53:26
Hallo Thomas,

bei mir steht das nach dem letzten Update im Log:

Ist das Relevant? Hab nichts an den bestehenden MSWitch gemacht.

Gruss Gerd
nicht relevant... nur unschön... ist mit kommendem update weg. thx.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 November 2019, 05:50:35
Zitat von: Maista am 20 November 2019, 20:53:26
Hallo Thomas,

bei mir steht das nach dem letzten Update im Log:

Ist das Relevant? Hab nichts an den bestehenden MSWitch gemacht.

Gruss Gerd

Hi Gerd,

ich habe mir das gerade mal angeschaut , das erste warning kommt zweifellos von einem MSwitch und ich korrigiere das. Bei den beiden anderen warnings gehe ich eigentlich davon aus, das diese nicht von MSwitch produziert werden, da ich diesen modifier nirgends nutze.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Maista am 21 November 2019, 07:35:03
Moin Thomas.

Ok. Dann zwei Probleme  ???

Danke.

Gruß Gerd
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 21 November 2019, 17:42:03
@Wolle02 und Byte09,

so hat es jetzt geklappt - DANKE!
(Stellung vom Semikolon spielt da auch mit rein- das hatte ich wohl auch falsch)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 November 2019, 17:51:34

mit dem nächsten Update habe ich u.A. das Webinterface geändert . Das betrifft leichte optische Veränderungen aber vorrangig ist die Sprache des Interfaces jetzt abhängig vom globalen Attribut 'Language' und kann somit auf Deutsch gestellt werden.

alternativ gibt es ein eigenes Attribut MSwitch_Language, mit welchem die globale Einsellung 'überschrieben' werden kann.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: det. am 21 November 2019, 18:54:13
Hallo Thomas,


Ist das 0: start checkinitdone 0, welches sich genau in der Anzahl der definierten MSwitch bei jedem Neustart in Log befindet, aus Deinem Modul generiert?

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 November 2019, 18:56:25
Zitat von: det. am 21 November 2019, 18:54:13
Hallo Thomas,


Ist das 0: start checkinitdone 0, welches sich genau in der Anzahl der definierten MSwitch bei jedem Neustart in Log befindet, aus Deinem Modul generiert?
ups..... Asche über mein Haupt.... ja ist es. sorry . ist mit morgigem Update verschwunden.

ich habe die startroutinen umgebaut und vergessen diese wieder zu löschen.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 23 November 2019, 07:26:00
Hallo Byte09,

wie ließe sich dieser Code in ein FreeCMD umsetzen? das ist doch gemischter Code?


{
my $T=(ReadingsVal("THGR122NX_2_WZ","temperature",18.0));
fhem "set virtualCCU_WZ_Sensor1 virtTemp $T";
fhem "set virtualCCU_WZ_Sensor2 virtTemp $T";
}
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 November 2019, 08:19:49
Zitat von: Panik am 23 November 2019, 07:26:00
Hallo Byte09,

wie ließe sich dieser Code in ein FreeCMD umsetzen? das ist doch gemischter Code?


{
my $T=(ReadingsVal("THGR122NX_2_WZ","temperature",18.0));
fhem "set virtualCCU_WZ_Sensor1 virtTemp $T";
fhem "set virtualCCU_WZ_Sensor2 virtTemp $T";
}


hi panik


{
my $T=ReadingsVal("THGR122NX_2_WZ","temperature",18.0);
fhem("set virtualCCU_WZ_Sensor1 virtTemp $T");
fhem("set virtualCCU_WZ_Sensor2 virtTemp $T");
}


sollte gehen . wenn nicht sag mir kurz bescheid, dann muss ich es selber testen.

alternativ geht auch folgendes - nicht im perlmode:

set virtualCCU_WZ_Sensor1 virtTemp [THGR122NX_2_WZ:temperature];
set virtualCCU_WZ_Sensor2 virtTemp [THGR122NX_2_WZ:temperature];


hierbei setzt er 'virtTemp' allerdings immer auf 'undef' wenn 'THGR122NX_2_WZ:temperature' nicht definiert ist .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 23 November 2019, 08:45:52
Moin zusammen,

Zitat von: Byte09 am 23 November 2019, 08:19:49


{
my $T=ReadingsVal("THGR122NX_2_WZ","temperature",18.0);
fhem("set virtualCCU_WZ_Sensor1 virtTemp $T");
fhem("set virtualCCU_WZ_Sensor2 virtTemp $T");
}


sollte gehen . wenn nicht sag mir kurz bescheid, dann muss ich es selber testen.


Kann ich bestätigen, dass das geht. So ein Konstrukt habe ich bei mir auch am Laufen und es funktioniert einwandfrei.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 23 November 2019, 18:26:51
Hallo Byte09 und Wolle02,

es geht jetzt beides  :)

@Byte09: Ist es möglich, hinter dem CMD1/2 einen Testbutton zu setzen, der nur diese eine Aktion testweise auslöst?
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 23 November 2019, 18:47:51
Noch ne Frage:

Ich habe ein Schalter, der halbstündig eine Auslösekette [00:30*00:00-23:59]anregt.

Einer der vielen Auslöser soll dann allerdings nur in einem eigenen Zeitraum - stündlich erfolgen.
Den Zeitraum konnte ich eingrenzen: [08:00-22:00] , aber in der Schaltbedingung kriege ich es
dieses stündlich nicht hin:  [01:00*08:00-22:00].
Gibts da nen Trick bzw. Workaround?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 November 2019, 19:14:10
Zitat von: Panik am 23 November 2019, 18:47:51
Noch ne Frage:

Ich habe ein Schalter, der halbstündig eine Auslösekette [00:30*00:00-23:59]anregt.

Einer der vielen Auslöser soll dann allerdings nur in einem eigenen Zeitraum - stündlich erfolgen.
Den Zeitraum konnte ich eingrenzen: [08:00-22:00] , aber in der Schaltbedingung kriege ich es
dieses stündlich nicht hin:  [01:00*08:00-22:00].
Gibts da nen Trick bzw. Workaround?
hi Panik,

bin heute abend unterwegs und komme erst morgen dazu, mir dein problem anzuschauen. ich fürchte aber wir werden dazu kurz telefonieren müssen... auf die schnelle jedenfalls kann ich es nicht ganz nachvollziehen. kannst du vorab mal eine raw schicken, von dem was du hast?

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 November 2019, 08:54:41
Zitat von: Panik am 23 November 2019, 18:47:51
Noch ne Frage:

Ich habe ein Schalter, der halbstündig eine Auslösekette [00:30*00:00-23:59]anregt.

Einer der vielen Auslöser soll dann allerdings nur in einem eigenen Zeitraum - stündlich erfolgen.
Den Zeitraum konnte ich eingrenzen: [08:00-22:00] , aber in der Schaltbedingung kriege ich es
dieses stündlich nicht hin:  [01:00*08:00-22:00].
Gibts da nen Trick bzw. Workaround?

moin,

ich habe mir deine raw ( aus der PM ) mal angesehen und glaube zu wissen was du möchtest. das ist ein weinig twiggy und ich sehe nur eine möglichkeit.

du lässt alle 30 minuten den timer ausführen , beginnend um 00:01 .
Zitat[00:30*00:01-23:59]
das heisst die timer werden IMMER in der minute 01 und 31 ausgeführt. nur darauf kannst du testen , wenn du einen befehl nur jeden zweiten timer ausführen willst.

bei jedem auslösen eines timers erzeugt des device ein eigenes event in folgender form:

MSW_Kamera_Watchdog:execute_timer_P1:08:01
MSW_Kamera_Watchdog:execute_timer_P1:08:31
.
.
usw


jetzt würde ich in den schaltbedingungen auf die vorletze zahl testen , und ein schalten nur dann zulassen , wenn diese eine 3 ist. testen lässt sich das mit entsprechender regex:3[\d]$

damit diese regex 'wahr' wird müssen am ende des events ('$' steht hier für zeilenende) 2 zahlen stehen . Die erste muss eine 3 sein , die zweite kann beliebig sein aber einstellig ([\d]).

da diese Bedingung nur in jedem zweiten auslösen auftritt, wird die bedingung in jeder ersten auslösung nicht wahr sein.

Ergänze dazu bitte die Schaltbedingung , die du nur jedes zweit mal ausführen willst wie folgt:

Zitat(([TWL:light]>5) OR (([anwesend:state] ne "eins") OR ([anwesend:state] ne "drei")) AND "$EVENT" =~ m/3[\d]$/)

durch die Bedingung AND [08:00-22:00] kannst du das natürlich noch weiter einschränken .

ich habe das jetzt nicht getestet , sollte aber funktionieren . Bitte daran denken , das das vorkommen entsprechender zahl in direkter abhängigkeit zu den auslösezeiten der timer steht.

durch anpassung der regex kannst du im grunde steuern bei jeder wievielten auslösung geschaltet werden soll - die regex wird dann halt etwas komplizierter.

sei so gut und gib mir bescheid ob es klappt .

Zitat@Byte09: Ist es möglich, hinter dem CMD1/2 einen Testbutton zu setzen, der nur diese eine Aktion testweise auslöst?
.... das schaue ich mir die tage mal an .

zu der frage bezüglich
defmod di_midnight DOIF ([+[1]:00] or [00:01] or [23:59]) ({addLog_script()})
muss ich passen , bis du mir hier auf die sprünge hilfst. ich habe keine ahnung was dieses DOIF tut, bzw wann es das tut - und mag mich damit (DOIF) auch nicht beschäftigen  ;)

gruss thomas

edit: bei devices die  bereits so umfangreich sind würde ich dir empfehlen die kommentarfunktion anzuschalten und die auszuführenden befehle zu kommentieren , sonst weisst du ( geht mir zumindest so ) in einigen wochen nicht mehr , was eigentlich passiert  ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 24 November 2019, 11:33:41
Hi Byte09,

ich will einen Befehl alle 30 Minuten absetzen. Die Syntax von at +*00:30 geht nicht. Etwas umständlicher mit [00:30*00:00-23:49] funktioniert es. Ist aber nicht das Gleiche, da at auf die aktuelle Zeit die 30 Minuten rechnet und MSwitch ab 00:00 das 30 Minuten-Intervall rechnet. Oder hab ich etwas übersehen?

Viele Grüße
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 November 2019, 11:39:29
Zitat von: khk123 am 24 November 2019, 11:33:41
Hi Byte09,

ich will einen Befehl alle 30 Minuten absetzen. Die Syntax von at +*00:30 geht nicht. Etwas umständlicher mit [00:30*00:00-23:49] funktioniert es. Oder hab ich etwas übersehen?

Viele Grüße
Karlheinz

ja, das ist richtig . die korrekte MSwitch-Syntax lautet :
ZitatSonderformate:
[?20:00-21:00|5] - Zufälliger Schaltvorgang zwischen 20 Uhr und 21 Uhr am Freitag
[00:02*04:10-06:30] - Schaltvorgang alle 2 Minuten zwischen 4.10 Uhr und 6.30 Uhr

Hintergund dessen, dass immer der Zeitraum mit definiert werden muss ist der, dass ich nicht wollte , das wilkürlich alle 30 minuten geschaltet wird, sondern alle 30 minuten ab einem definierten startzeitpunkt. Das bietet aus meiner perspektive einige Vorteile ( siehe die letzten 2-3 posts ) auch wenn die Syntax etwas länger wird.

die andere Version ist ... glaube ich ... DOIFSyntax ?!

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 24 November 2019, 12:04:46
nein, ist die Syntax von AT.

Viele Grüße
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 November 2019, 12:24:40
Zitat von: khk123 am 24 November 2019, 12:04:46
nein, ist die Syntax von AT.

Viele Grüße
Karlheinz

nutze ich beides nicht  ;)

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 24 November 2019, 14:07:45
Kann es sein, dass wenn ich ein MSwitch-Device mit rename umbenenne (z.B. FHEM_psize in FHEM_pSize), die alten Timer übrigbleiben und ins Leere laufen. Erst ein set inactive/set active korrigiert das.

2019.11.24 13:30:00 1: ERROR: empty name in readingsBeginUpdate
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBeginUpdate           called by fhem.pl (4917)
2019.11.24 13:30:00 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (9866)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,last_activation_by,timer) missed to call readingsBeginUpdate first.
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBulkUpdate            called by fhem.pl (4918)
2019.11.24 13:30:00 1:     main::readingsSingleUpdate          called by ./FHEM/98_MSwitch.pm (9866)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: ERROR: empty name in readingsBeginUpdate
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBeginUpdate           called by ./FHEM/98_MSwitch.pm (9895)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,EVENT,FHEM_psize:execute_timer_P3:13:30) missed to call readingsBeginUpdate first.
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (9896)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,EVTFULL,FHEM_psize:execute_timer_P3:13:30) missed to call readingsBeginUpdate first.
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (9898)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,EVTPART1,FHEM_psize) missed to call readingsBeginUpdate first.
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (9900)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,EVTPART2,execute_timer_P3) missed to call readingsBeginUpdate first.
2019.11.24 13:30:00 1: stacktrace:
2019.11.24 13:30:00 1:     main::readingsBulkUpdate            called by ./FHEM/98_MSwitch.pm (9901)
2019.11.24 13:30:00 1:     main::MSwitch_Execute_Timer         called by fhem.pl (3297)
2019.11.24 13:30:00 1:     main::HandleTimeout                 called by fhem.pl (677)
2019.11.24 13:30:00 1: readingsUpdate(,EVTPART3,13:30) missed to call readingsBeginUpdate first.
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 24 November 2019, 14:31:07
Ich glaube nicht das set inactive/set active hat den Fehler korrigiert, sondern das Verändern der Triggerzeit.

Edit 15:09: Scheint doch nicht so zu sein. Der Fehler taucht immer noch auf.
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 24 November 2019, 15:11:16
Hallo Byte09,

ich probier das mit
AND "$EVENT" =~ m/3[\d]$/)
und gebe Bescheid.


Zum DOIF:


defmod di_midnight DOIF ([+[1]:00] or [00:01] or [23:59]) ({addLog_script()})


Das ist ein DOIF-Device Namens "di_midnight", welches jeder volle Stunde oder um 00:01Uhr oder
um 23:59Uhr zu der Subroutine "addLog_script()" springt und dortige Anweisungen ausführt.

Wie ließe sich sowas mit MSwitch umsetzen?
Also Ausführungen zu jeder volle Stunde oder um 00:01Uhr oder um 23:59Uhr ?


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 November 2019, 16:50:27
Zitat von: khk123 am 24 November 2019, 14:31:07
Ich glaube nicht das set inactive/set active hat den Fehler korrigiert, sondern das Verändern der Triggerzeit.

Edit 15:09: Scheint doch nicht so zu sein. Der Fehler taucht immer noch auf.

ich habe mir das gerade angeschaut und du hast recht. den fehler kannst du auch nicht beheben , er wird weiter versuchen die gesetzten timer abzuarbeiten , bis heute nacht 00:00.

nur neustart wird es beheben.

ich behebe das problem und stekle ein update ein.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 November 2019, 16:57:13
Zitat von: Panik am 24 November 2019, 15:11:16
Hallo Byte09,

ich probier das mit
AND "$EVENT" =~ m/3[\d]$/)
und gebe Bescheid.


Zum DOIF:


defmod di_midnight DOIF ([+[1]:00] or [00:01] or [23:59]) ({addLog_script()})


Das ist ein DOIF-Device Namens "di_midnight", welches jeder volle Stunde oder um 00:01Uhr oder
um 23:59Uhr zu der Subroutine "addLog_script()" springt und dortige Anweisungen ausführt.

Wie ließe sich sowas mit MSwitch umsetzen?
Also Ausführungen zu jeder volle Stunde oder um 00:01Uhr oder um 23:59Uhr ?

sollte so gehen :
[01:00*00:00-23:59][00:01][23:59]

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 26 November 2019, 17:44:28
Hi Byte09,

kann ich mit MSwitch nur an einem bestimmten Datum schalten?

Beispiel mit at:

define ZaehlerReset at *23:59:00 {if($year==2019 && $month==12 && $mday==31) {fhem("set Zaehler reset")} }


oder

define ZaehlerReset at 2019-12-31T23:59:00 set Zaehler reset
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 November 2019, 17:51:35


Zitat von: khk123 am 26 November 2019, 17:44:28
Hi Byte09,

kann ich mit MSwitch nur an einem bestimmten Datum schalten?

Beispiel mit at:

define ZaehlerReset at *07:15:00 {if($year==2019 && $month==1 && $mday==1) {fhem("set Zaehler reset")} }


Nein, das geht derzeit nicht... bzw. nur über Umwege..  nicht wirklich sinnig .. wäre eine ähnliche lösung wie beim AT. es löst im Grunde jeden tag aus und überprüft erst dann auf das Datum im ausführenden teil. Ich kann aber die Tage schauen ob ich es sinnvoll einbauen kann.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 November 2019, 19:11:47
@khk123


ich werde mit dem nächsten Update die Variablen $year etc. in den Schaltbedingungen verfügbar machen , dann sollte es problemlos gehen.


wird aber wohl übermorgen werden.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 26 November 2019, 23:29:58
Das ist ja ein blitzschneller Service. Herzlichen Dank dafür! :)
Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 27 November 2019, 14:34:11
Hi Byte09,

Schaltbedingung => [Daemmerung:twilight] > 79 and [WZ_Beleuchtung_Manuell] eq "off" läuft auf folgenden Fehler:
2019.11.27 14:21:39 1: Weihnachtsbeleuchtung_aus ERROR: Bareword "WZ_Beleuchtung_Manuell" not allowed while "strict subs" in use at (eval 129745) line 1.
9267

So funktioniert es: [Daemmerung:twilight] > 79 and [WZ_Beleuchtung_Manuell:state] eq "off"

Ist das gewollt?

Gruß
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 November 2019, 16:55:20
Zitat von: khk123 am 27 November 2019, 14:34:11
Hi Byte09,

Schaltbedingung => [Daemmerung:twilight] > 79 and [WZ_Beleuchtung_Manuell] eq "off" läuft auf folgenden Fehler:
2019.11.27 14:21:39 1: Weihnachtsbeleuchtung_aus ERROR: Bareword "WZ_Beleuchtung_Manuell" not allowed while "strict subs" in use at (eval 129745) line 1.
9267

So funktioniert es: [Daemmerung:twilight] > 79 and [WZ_Beleuchtung_Manuell:state] eq "off"

Ist das gewollt?

Gruß
Karlheinz

gewollt ist zuviel gesagt , aber nicht anders vorgesehen , zumal ich Ausdrücke dieser Art [.*] ohne Vorkommen eines Doppelpuntes für Andere Funktionen (z.b: [Tendenz][Differenz][Average] [Increase])
nutze und die Unterscheidung dann erheblich komplizierter werden würde ( im modulcode ). Eine Bedingungsabfrage muss hier immer das abgefragte Reading enthalten . Bei 'nichtvorhandensein' eines Readings wird dieses nicht automatisch durch eine Anfrage auf 'state' ersetzt.

Die Fehlermeldung werde ich ggf. anderweitig abfangen.

gruss Thomas

PS: die Änderungen bezüglich oben angesprochener Variablen habe ich soweit fertig,wenn mir heute nicht noch etwas garavierendes auffällt ist es im morgigen Update. ( Es wird hier mehrere Mögliche Syntaxformen geben: $day [DAY] [$DAY] etc. - führt alles zum gleichen Ergebniss )

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 November 2019, 06:22:56
da ich mir nicht 100% sicher bin , das die Änderungen nicht unerwünschte Nebeneffekte habe , habe ich die V2.8 erstmal nur in das GIT geladen.

Update mit :update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

sollten doch Probleme auftreten ist ein Backup auf 2.7 über das 'normale' Fhemupdate möglich.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 28 November 2019, 18:07:12
Hi Byte09,

ist es möglich in einem bestimmten Zeitraum abhängig von anderen Devicereadings zu schalten?
Z.B. soll in der Zeit zw. 8 Uhr und 1 Uhr in Abhängigkeit des Zustandes der Lampe1 und des twilight-Wertes ein Cmd ausgeführt werden.

Folgende Schaltbedingung stelle ich mir vor: [08:00:00]-[01:00:00] and [Lampe1:state] eq "off" and [Daemmerung:twilight] < 80

Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 November 2019, 18:13:21
Zitat von: khk123 am 28 November 2019, 18:07:12
Hi Byte09,

ist es möglich in einem bestimmten Zeitraum abhängig von anderen Devicereadings zu schalten?
Z.B. soll in der Zeit zw. 8 Uhr und 1 Uhr in Abhängigkeit des Zustandes der Lampe1 und des twilight-Wertes ein Cmd ausgeführt werden.

Folgende Schaltbedingung stelle ich mir vor: [08:00:00]-[01:00:00] and [Lampe1:state] eq "off" and [Daemmerung:twilight] < 80

Vlg
Karlheinz


[08:00-01:00] AND [Lampe1:state] eq "off" AND [Daemmerung:twilight] < 80

in den Schaltbedingungen sollte gehen

gruss thomas


PS: hast du mal die Version aus dem GIT versucht, ob das passt mit den Variablen ( $day etc. )


Edit: Die Helpfunktion kennst Du ? ( ATTR MSwitch_Help 1 )

ZitatHelp: condition

Hier kann die Angabe von Bedingungen erfolgen, die erfüllt sein müssen um den Schaltbefehl auszuführen.
Diese Bedingunge sind eng an DOIF- Bedingungen angelehnt.

Zeitabhängiges schalten: [19.10-23:00] - Schaltbefehl erfolgt nur in angegebenem Zeitraum
Readingabhängiges schalten [Devicename:Reading] =/>/< X oder [Devicename:Reading] eq "x" - Schaltbefehl erfolgt nur bei erfüllter Bedingung.
Achtung! Bei der Abfrage von Readings nach Strings ( on,off,etc. ) ist statt "=" "eq" zu nutzen und der String muss in "x" gesetzt werden!
Die Kombination mehrerer Bedingungen und Zeiten ist durch AND oder OR möglich:
[19.10-23:00] AND [Devicename:Reading] = 10 - beide Bedingungen müssen erfüllt sein
[19.10-23:00] OR [Devicename:Reading] = 10 - eine der Bedingungen muss erfüllt sein.
Es ist auf korrekte Eingabe der Leerzeichen zu achten.

sunset - Bedingungen werden mit zusätzlichen {} eingefügt z.B. : [{ sunset() }-23:00].

Variable $we:
Die globlae Variable $we ist nutzbar und muss {} gesetzt werden .
{ !$we } löst den Schaltvorgang nur Werktagen aus
{ $we } löst den Schaltvorgang nur Wochenenden, Feiertagen aus

Soll nur an bestimmten Wochentagen geschaltet werden, muss eine Zeitangsbe gemacht werden und durch z.B. |135 ergänzt werden.
[10:00-11:00|13] würde den Schaltvorgang z.B nur Montag und Mitwoch zwischen 10 uhr und 11 uhr auslösen. Hierbei zählen die Wochentage von 1-7 für Montag-Sonntag.
Achtung: Bei Anwendung der geschweiften Klammern zur einletung eines Perlasdrucks ist unbedingt auf die Leerzeichen hinter und vor der Klammer zu achten !
Überschreitet die Zeitangabe die Tagesgrenze (24.00 Uhr ), so gelten die angegebenen Tage noch bis zum ende der angegebenen Schaltzeit , d.H. es würde auch am Mitwoch noch der schaltvorgang erfolgen, obwohl als Tagesvorgabe Dienstag gesetzt wurde.

$EVENT Variable: Die Variable EVENT enthält den auslösenden Trigger, d.H. es kann eine Reaktion in direkter Abhängigkeit zum auslösenden Trigger erfolgen.
[$EVENT] eq "state:on" würde den Kommandozweig nur dann ausführen, wenn der auslösende Trigger "state:on" war.
Wichtig ist dieses, wenn bei den Triggerdetails nicht schon auf ein bestimmtes Event getriggert wird, sondern hier durch die Nutzung eines wildcards (*) auf alle Events getriggert wird, oder auf alle Events eines Readings z.B. (state:*)

Bei eingestellter Delayfunktion werden die Bedingungen je nach Einstellung sofort,verzögert oder sowohl-als-auch überprüft, d.H hiermit sind verzögerte Ein-, und Ausschaltbefehle möglich die z.B Nachlauffunktionen oder verzögerte Einschaltfunktionen ermöglichen, die sich selbst überprüfen. z.B. [wenn Licht im Bad an -> schalte Lüfter 2 Min später an -> nur wenn Licht im Bad noch an ist]

Anstatt einer Verzögerung kann hier auch eine festgelegte Schaltzeit erfolgen.

Sonderfunktionen:

Tendenz: Beschreibung im Wiki
Differenz: Beschreibung im Wiki
Average Beschreibung im Wiki
Increase Beschreibung im Wiki

Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 28 November 2019, 18:32:48
Hi Thomas,

nein, hab ich noch nicht, da ich noch am Umstellen diverser ATs und DOIFs bin. Mache ich aber in Kürze.

Ja, die Helpfunktion kenne ich, hab es aber wohl bei Condition übersehen bzw. nicht aktiviert gehabt.

Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 28 November 2019, 19:19:30
Hallo,

ich habe gerade mal

$month < 4 OR $month > 10

getestet und es klappt.

weitere Zeit-Variablen noch nicht getestet.

Kam zur richtigen Zeit. Danke!

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 28 November 2019, 20:24:56
Hi,
ich habe heute folgende Meldung im LOg
2019.11.28 11:32:47.390 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 8604.
2019.11.28 11:32:47.391 1: stacktrace:
2019.11.28 11:32:47.392 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (8604)
2019.11.28 11:32:47.392 1:     main::MSwitch_Checkcond_state       called by ./FHEM/98_MSwitch.pm (8525)
2019.11.28 11:32:47.392 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 11:32:47.393 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 11:32:47.393 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 11:32:47.393 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 11:32:47.394 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 11:32:47.394 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 11:32:47.394 1:     main::__ANON__                      called by fhem.pl (751)


2019.11.28 12:46:06.614 1: PERL WARNING: Bareword found where operator expected at (eval 5539876) line 1, near ""currentTitle:Christmas Is The Time To Say "I"
2019.11.28 12:46:06.615 1: stacktrace:
2019.11.28 12:46:06.616 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.616 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.617 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.617 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.618 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.618 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.619 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.619 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.620 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.621 1: PERL WARNING: (Missing operator before I?)
2019.11.28 12:46:06.621 1: stacktrace:
2019.11.28 12:46:06.621 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.622 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.623 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.623 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.624 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.624 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.625 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.625 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.626 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.627 1: PERL WARNING: String found where operator expected at (eval 5539876) line 1, near "You"""
2019.11.28 12:46:06.627 1: stacktrace:
2019.11.28 12:46:06.628 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.628 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.629 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.629 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.630 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.630 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.631 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.632 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.632 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.633 1: Echocontrol ERROR: syntax error at (eval 5539876) line 1, near ""currentTitle:Christmas Is The Time To Say "I Love "
8559
2019.11.28 12:46:06.634 1: Echocontrol if ("currentTitle:Christmas Is The Time To Say "I Love You"" =~ m/(.*)(lautstärke|volume|lauter)(.*)/){$answer = 'true';} else {$answer = 'false';}  8560
2019.11.28 12:46:40.124 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:39, delay is 1.111 possibly caused by: no bad guy found :-(
2019.11.28 12:46:45.879 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:41, delay is 4.876 possibly caused by: tmr-echodevice_GetSettings(ECHO_G090U50784160HFP)
2019.11.28 12:47:06.621 1: PERL WARNING: Bareword found where operator expected at (eval 5540436) line 1, near ""currentTitle:Christmas Is The Time To Say "I"
2019.11.28 12:47:06.621 1: stacktrace:
2019.11.28 12:47:06.622 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.622 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.623 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.623 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.624 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.624 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.624 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.624 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.625 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.625 1: PERL WARNING: (Missing operator before I?)
2019.11.28 12:47:06.625 1: stacktrace:
2019.11.28 12:47:06.626 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.626 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.626 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.627 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.627 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.627 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.628 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.628 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.628 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.629 1: PERL WARNING: String found where operator expected at (eval 5540436) line 1, near "You"""
2019.11.28 12:47:06.629 1: stacktrace:
2019.11.28 12:47:06.629 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.630 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.630 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.631 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.631 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.631 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.632 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.632 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.632 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.633 1: Echocontrol ERROR: syntax error at (eval 5540436) line 1, near ""currentTitle:Christmas Is The Time To Say "I Love "


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 November 2019, 20:27:45
ok... ich sehe das Problem und beheben das morgen.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2019, 06:20:58
Zitat von: Tommy82 am 28 November 2019, 20:24:56
Hi,
ich habe heute folgende Meldung im LOg
2019.11.28 11:32:47.390 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 8604.
2019.11.28 11:32:47.391 1: stacktrace:
2019.11.28 11:32:47.392 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (8604)
2019.11.28 11:32:47.392 1:     main::MSwitch_Checkcond_state       called by ./FHEM/98_MSwitch.pm (8525)
2019.11.28 11:32:47.392 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 11:32:47.393 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 11:32:47.393 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 11:32:47.393 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 11:32:47.394 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 11:32:47.394 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 11:32:47.394 1:     main::__ANON__                      called by fhem.pl (751)


2019.11.28 12:46:06.614 1: PERL WARNING: Bareword found where operator expected at (eval 5539876) line 1, near ""currentTitle:Christmas Is The Time To Say "I"
2019.11.28 12:46:06.615 1: stacktrace:
2019.11.28 12:46:06.616 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.616 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.617 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.617 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.618 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.618 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.619 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.619 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.620 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.621 1: PERL WARNING: (Missing operator before I?)
2019.11.28 12:46:06.621 1: stacktrace:
2019.11.28 12:46:06.621 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.622 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.623 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.623 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.624 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.624 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.625 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.625 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.626 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.627 1: PERL WARNING: String found where operator expected at (eval 5539876) line 1, near "You"""
2019.11.28 12:46:06.627 1: stacktrace:
2019.11.28 12:46:06.628 1:     main::__ANON__                      called by (eval 5539876) (1)
2019.11.28 12:46:06.628 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:46:06.629 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:46:06.629 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:46:06.630 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:46:06.630 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:46:06.631 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:46:06.632 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:46:06.632 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:46:06.633 1: Echocontrol ERROR: syntax error at (eval 5539876) line 1, near ""currentTitle:Christmas Is The Time To Say "I Love "
8559
2019.11.28 12:46:06.634 1: Echocontrol if ("currentTitle:Christmas Is The Time To Say "I Love You"" =~ m/(.*)(lautstärke|volume|lauter)(.*)/){$answer = 'true';} else {$answer = 'false';}  8560
2019.11.28 12:46:40.124 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:39, delay is 1.111 possibly caused by: no bad guy found :-(
2019.11.28 12:46:45.879 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:41, delay is 4.876 possibly caused by: tmr-echodevice_GetSettings(ECHO_G090U50784160HFP)
2019.11.28 12:47:06.621 1: PERL WARNING: Bareword found where operator expected at (eval 5540436) line 1, near ""currentTitle:Christmas Is The Time To Say "I"
2019.11.28 12:47:06.621 1: stacktrace:
2019.11.28 12:47:06.622 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.622 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.623 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.623 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.624 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.624 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.624 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.624 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.625 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.625 1: PERL WARNING: (Missing operator before I?)
2019.11.28 12:47:06.625 1: stacktrace:
2019.11.28 12:47:06.626 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.626 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.626 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.627 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.627 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.627 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.628 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.628 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.628 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.629 1: PERL WARNING: String found where operator expected at (eval 5540436) line 1, near "You"""
2019.11.28 12:47:06.629 1: stacktrace:
2019.11.28 12:47:06.629 1:     main::__ANON__                      called by (eval 5540436) (1)
2019.11.28 12:47:06.630 1:     (eval)                              called by ./FHEM/98_MSwitch.pm (8556)
2019.11.28 12:47:06.630 1:     main::MSwitch_checkcondition        called by ./FHEM/98_MSwitch.pm (3138)
2019.11.28 12:47:06.631 1:     main::MSwitch_Notify                called by fhem.pl (3754)
2019.11.28 12:47:06.631 1:     main::CallFn                        called by fhem.pl (3674)
2019.11.28 12:47:06.631 1:     main::DoTrigger                     called by fhem.pl (4737)
2019.11.28 12:47:06.632 1:     main::readingsEndUpdate             called by ./FHEM/37_echodevice.pm (2790)
2019.11.28 12:47:06.632 1:     main::echodevice_Parse              called by FHEM/HttpUtils.pm (634)
2019.11.28 12:47:06.632 1:     main::__ANON__                      called by fhem.pl (751)
2019.11.28 12:47:06.633 1: Echocontrol ERROR: syntax error at (eval 5540436) line 1, near ""currentTitle:Christmas Is The Time To Say "I Love "


moin,

ich habe eben einen FIX in das GIT geladen. Bitte mal ein Update auf diese Version machen und testen ob das Problem damit behoben ist .

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2019, 09:19:51
Zitat von: Panik am 23 November 2019, 18:26:51
...

@Byte09: Ist es möglich, hinter dem CMD1/2 einen Testbutton zu setzen, der nur diese eine Aktion testweise auslöst?

Bin ich jetzt dran , ist in der nächsten Version vorhanden.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 29 November 2019, 17:33:51
Hi Thomas,

hab jetzt mit condition "$year = 2019 AND $month = 11 AND $day = 30" und "$year = 2019 AND $month = 11 AND $day = 29" getestet. Alles ok. Hab bisher auch keine Nebeneffekte entdeckt. Danke für die Änderung.

Aber beim Testen fielen mir folgende Meldungen im Log auf:

Eingabe: define meterReset MSwitch


2019.11.29 16:28:17 1: PERL WARNING: "my" variable $inhalt masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 302.
2019.11.29 16:28:17 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 5160.
2019.11.29 16:28:17 1: PERL WARNING: Useless use of private array in void context at ./FHEM/98_MSwitch.pm line 6066.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4098.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in numeric gt (>) at ./FHEM/98_MSwitch.pm line 4099.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4123.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in numeric gt (>) at ./FHEM/98_MSwitch.pm line 4124.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7636.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in substitution (s///) at ./FHEM/98_MSwitch.pm line 7642.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7643.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7645.
2019.11.29 16:28:17 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 7645.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 7656.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in substitution (s///) at ./FHEM/98_MSwitch.pm line 7658.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 7659.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7659.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $detailarray[8] in string ne at ./FHEM/98_MSwitch.pm line 7661.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7666.
2019.11.29 16:28:17 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 7666.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 6775.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 6782.


Device ausgewählt und "modify Device":


019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5068.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5069.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 5251.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 5290.
2019.11.29 16:29:39 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 5331.
2019.11.29 16:29:39 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 5356.


Nach modify Actions -> kein weiterer Logeintrag

copy resetMeter resetMeter1


2019.11.29 16:37:45 3: setreading resetMeter1 .Trigger_condition  : Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.


events und condition eingetragen
condition ergebnis ist ok

test event mit attr disable=1

2019.11.29 16:49:22 1: PERL WARNING: Use of uninitialized value $evtparts[0] in join or string at ./FHEM/98_MSwitch.pm line 9240.
2019.11.29 16:49:40 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 103


Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2019, 18:14:45
Zitat von: khk123 am 29 November 2019, 17:33:51
Hi Thomas,

hab jetzt mit condition "$year = 2019 AND $month = 11 AND $day = 30" und "$year = 2019 AND $month = 11 AND $day = 29" getestet. Alles ok. Hab bisher auch keine Nebeneffekte entdeckt. Danke für die Änderung.

Aber beim Testen fielen mir folgende Meldungen im Log auf:

Eingabe: define meterReset MSwitch


2019.11.29 16:28:17 1: PERL WARNING: "my" variable $inhalt masks earlier declaration in same scope at ./FHEM/98_MSwitch.pm line 302.
2019.11.29 16:28:17 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 5160.
2019.11.29 16:28:17 1: PERL WARNING: Useless use of private array in void context at ./FHEM/98_MSwitch.pm line 6066.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4098.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in numeric gt (>) at ./FHEM/98_MSwitch.pm line 4099.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4123.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $id in numeric gt (>) at ./FHEM/98_MSwitch.pm line 4124.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7636.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in substitution (s///) at ./FHEM/98_MSwitch.pm line 7642.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7643.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7645.
2019.11.29 16:28:17 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 7645.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7646.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7647.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 7656.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in substitution (s///) at ./FHEM/98_MSwitch.pm line 7658.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestron in string ne at ./FHEM/98_MSwitch.pm line 7659.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $testtimestroff in string ne at ./FHEM/98_MSwitch.pm line 7659.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value $detailarray[8] in string ne at ./FHEM/98_MSwitch.pm line 7661.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7666.
2019.11.29 16:28:17 1: PERL WARNING: Argument "" isn't numeric in multiplication (*) at ./FHEM/98_MSwitch.pm line 7666.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7667.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in multiplication (*) at ./FHEM/98_MSwitch.pm line 7668.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 6775.
2019.11.29 16:28:17 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 6782.


Device ausgewählt und "modify Device":


019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5068.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5069.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 5251.
2019.11.29 16:29:39 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 5290.
2019.11.29 16:29:39 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 5331.
2019.11.29 16:29:39 1: PERL WARNING: Argument "00:00:00" isn't numeric in division (/) at ./FHEM/98_MSwitch.pm line 5356.


Nach modify Actions -> kein weiterer Logeintrag

copy resetMeter resetMeter1


2019.11.29 16:37:45 3: setreading resetMeter1 .Trigger_condition  : Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.


events und condition eingetragen
condition ergebnis ist ok

test event mit attr disable=1

2019.11.29 16:49:22 1: PERL WARNING: Use of uninitialized value $evtparts[0] in join or string at ./FHEM/98_MSwitch.pm line 9240.
2019.11.29 16:49:40 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 103


Vlg
Karlheinz

danke für die Fehlermeldungen.

das ganze ist etwas merkwürdig und ich kann es noch nicht so wirklich nachvollziehen was hier passiert.

ich habe jetzt gefühlte 200 devices auf 3 systemen angelegt und es passiert erstmal nicht . so wie ich das im augenblick sehe und auch reproduzieren kann scheint es nur beim ersten angelegten device nach einem fhemneustart zu passieren.

ich arbeite in jedem fall daran , kann eber etwas dauern , da ich morgen und übermorgen nicht zuhause bin.

die Meldung ist zwar äusserst unschön , aber nicht dramatisch und offenbar selten.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2019, 19:21:30
ich habe jetzt nochmal eine überarbeitete version in das GIT geladen. Damit sollte es deutlich besser sein , aber noch nicht alles behoben , dafür brauche ich etwas mehr zeit.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 29 November 2019, 21:18:04
Zitat von: Byte09 am 29 November 2019, 06:20:58
moin,

ich habe eben einen FIX in das GIT geladen. Bitte mal ein Update auf diese Version machen und testen ob das Problem damit behoben ist .

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09

Bin grad das update am ausführen, mal sehen wie es dann aussieht.

Hast du noch eine idee wieso freezmon soviele Meldungen bringt? Hab den Log voll damit.
2019.11.28 12:46:40.124 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:39, delay is 1.111 possibly caused by: no bad guy found
Wenn ich mswitch deaktiviere habe ich nicht eine meldung dazu
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 November 2019, 21:26:00
Zitat von: Tommy82 am 29 November 2019, 21:18:04
Bin grad das update am ausführen, mal sehen wie es dann aussieht.

Hast du noch eine idee wieso freezmon soviele Meldungen bringt? Hab den Log voll damit.
2019.11.28 12:46:40.124 1: [Freezemon] myFreezemon: possible freeze starting at 12:46:39, delay is 1.111 possibly caused by: no bad guy found
Wenn ich mswitch deaktiviere habe ich nicht eine meldung dazu

Hi ,

ich habe das schon in dem anderen Thread gesehen. Ich habe dieses MSwitch gerade nicht auf meinem System . Da wird aber ein get echodevice settings ausgeführt und ich denke dieser löst das aus.

Ich glaube nicht , das es in letzter Konsequenz vom MSwitch selber kommt, werde das die Tage aber mal checken , wird aber Montag werden.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 30 November 2019, 00:43:39
Hi Thomas,

hab nochmal mit der letzten Version getestet:

FHEM Neustart, dann copy Test1 Test2


2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5721.
2019.11.30 00:14:27 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5721.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5722.
2019.11.30 00:14:27 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5722.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5723.
2019.11.30 00:14:27 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5723.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value in substr at ./FHEM/98_MSwitch.pm line 5724.
2019.11.30 00:14:27 1: PERL WARNING: substr outside of string at ./FHEM/98_MSwitch.pm line 5724.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value $timeoff in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 6217.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value $timeononly in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 6219.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value $timeoffonly in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 6224.
2019.11.30 00:14:27 1: PERL WARNING: Use of uninitialized value $timeonoffonly in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 6227.


copy Test1 Test3 => keine Fehlermeldung im Log

define Test4 MSwitch => keine Fehlermeldung im Log
diverse Änderungen bei Test4 => keine Fehlermeldung im Log


Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 Dezember 2019, 17:12:36
Aus diversen Gründen werde ich mich bis auf weiteres aus dem Forum etwas ausklinken bzw. in den read-only-mode schalten Daher kann es durchaus sein , das es zukünftig nicht mehr ganz so zügig geht mit dem Support.

Da die gefühlte Hälfte der MSwitch-Nutzer sowieso meine Nummer hat könnt ihr mich gerne per Whatsapp anschreiben oder anrufen , wenn es drückt.


Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 06 Dezember 2019, 17:48:21
Änderung der Delay-Formate mit der kommenden Version.

Bei den Delayangaben sind dann folgende Formate möglich:

hh:mm:ss  - Verzögerung in Stunden:Minuten:Sekunden
10.5 - Verzögerung in Sekunden
[random] - siehe Wiki ATTR: MSwitch_Random_Rime
[Device:Reading] - das abgefragte Reading muss entweder das Format hh:mm:ss oder eine alleinstehende Zahl( Sekunden enthalten)
{perlfunktion} -  die Rückgabe des Codes muss entweder das Format hh:mm:ss oder eine alleinstehende Zahl( Sekunden enthalten)

bestehende Konfigurationen werden nicht beeinflusst.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 10 Dezember 2019, 16:21:37
Hi,
ich habe noch einmal eine Frage zum DUMMY Mode - ob ich das so richtig gemacht habe ;-)

Ich möchte einen DUMMY Switch erstellen, damit ich den über Google oder Alexa anschalten kann, aber er soll nach 60 sekunden automatisch ausschalten. Eigentlich ein on-for-timer. Das kann aber über die Sprachassistenten nicht sagen - schalte die pumpe fur 60 sekunden an" .

Also möchte ich eine mswitch erstellen, der die Pumpe einschaltet wenn der mswitch auf on gesetzt wird, dann soll die Pumpe mit on-for-timer geschaltet werden und der dummy mswitch soll sich wieder ausschalten.


1. Neuen mSwitch definiert
2. Den Modus auf Dummy umgeschaltet
3. MSwitch_Selftrigger_always auf 1 gesetzt
4. Unter trigger details 2 events hinzugefügt (state:on state:off) und bei "execute only cmdx" eingefügt
5. webcmd on:off gesetzt
6. Dann das zu schaltende Gerät auswählen und bei CMD1 on und bei CMD2 off gesetzt
7. Den mswitch selbst als Device hinzugefügt damit er mit einem delay von 5 Sekunden sich wieder ausschaltet.

Das funktioniert soweit .
Ist das so richtig oder gibt es einen besseren weg?

Danke.
Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 10 Dezember 2019, 18:31:24
Zitat von: hermann1514 am 10 Dezember 2019, 16:21:37
Hi,
ich habe noch einmal eine Frage zum DUMMY Mode - ob ich das so richtig gemacht habe ;-)

Ich möchte einen DUMMY Switch erstellen, damit ich den über Google oder Alexa anschalten kann, aber er soll nach 60 sekunden automatisch ausschalten. Eigentlich ein on-for-timer. Das kann aber über die Sprachassistenten nicht sagen - schalte die pumpe fur 60 sekunden an" .

Also möchte ich eine mswitch erstellen, der die Pumpe einschaltet wenn der mswitch auf on gesetzt wird, dann soll die Pumpe mit on-for-timer geschaltet werden und der dummy mswitch soll sich wieder ausschalten.


1. Neuen mSwitch definiert
2. Den Modus auf Dummy umgeschaltet
3. MSwitch_Selftrigger_always auf 1 gesetzt
4. Unter trigger details 2 events hinzugefügt (state:on state:off) und bei "execute only cmdx" eingefügt
5. webcmd on:off gesetzt
6. Dann das zu schaltende Gerät auswählen und bei CMD1 on und bei CMD2 off gesetzt
7. Den mswitch selbst als Device hinzugefügt damit er mit einem delay von 5 Sekunden sich wieder ausschaltet.

Das funktioniert soweit .
Ist das so richtig oder gibt es einen besseren weg?

Danke.
Gruß
Hermann


ja, passt im Grunde so . Kannst du mir bitte trotzdem mal die raw des devices geben ? ( ich würde mir das gerne mal anschauen)

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 10 Dezember 2019, 20:48:29
Na klar...

defmod mSwitch_dummy_Heisswasserpumpe MSwitch      # mSwitch_dummy_Heisswasserpumpe Heisswasserpumpe
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Debug 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Eventhistory 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Expert 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Help 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Inforoom MSwitch_Devices
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Mode Dummy
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Selftrigger_always 1
attr mSwitch_dummy_Heisswasserpumpe alias Heisswasser
attr mSwitch_dummy_Heisswasserpumpe genericDeviceType switch
attr mSwitch_dummy_Heisswasserpumpe room GoogleAssistant,MSwitch_Devices,mSwitches
attr mSwitch_dummy_Heisswasserpumpe setList on off
attr mSwitch_dummy_Heisswasserpumpe useSetExtensions 1
attr mSwitch_dummy_Heisswasserpumpe webCmd on:off

setstate mSwitch_dummy_Heisswasserpumpe off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:23:35 .Device_Affected Heisswasserpumpe-AbsCmd1,mSwitch_dummy_Heisswasserpumpe-AbsCmd1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:36 .Device_Affected_Details Heisswasserpumpe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]600#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]mSwitch_dummy_Heisswasserpumpe-AbsCmd1#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]05#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 .Device_Events MSwitch_Self:on:#[tr]MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .First_init done
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_cmd_off state:off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_cmd_on .*:on.*:.*
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_off no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_on no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .V_Check V2.00
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVENT MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTFULL mSwitch_dummy_Heisswasserpumpe:MSwitch_Self:off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART1 mSwitch_dummy_Heisswasserpumpe
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART2 MSwitch_Self
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART3 off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 Trigger_log on
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_activation_by manual
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_event MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_exec_cmd set mSwitch_dummy_Heisswasserpumpe off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 state off

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Dezember 2019, 05:54:59
Zitat von: hermann1514 am 10 Dezember 2019, 20:48:29
Na klar...

defmod mSwitch_dummy_Heisswasserpumpe MSwitch      # mSwitch_dummy_Heisswasserpumpe Heisswasserpumpe
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Debug 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Eventhistory 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Expert 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Help 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Inforoom MSwitch_Devices
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Mode Dummy
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Selftrigger_always 1
attr mSwitch_dummy_Heisswasserpumpe alias Heisswasser
attr mSwitch_dummy_Heisswasserpumpe genericDeviceType switch
attr mSwitch_dummy_Heisswasserpumpe room GoogleAssistant,MSwitch_Devices,mSwitches
attr mSwitch_dummy_Heisswasserpumpe setList on off
attr mSwitch_dummy_Heisswasserpumpe useSetExtensions 1
attr mSwitch_dummy_Heisswasserpumpe webCmd on:off
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Inforoom MSwitch_Devices

setstate mSwitch_dummy_Heisswasserpumpe off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:23:35 .Device_Affected Heisswasserpumpe-AbsCmd1,mSwitch_dummy_Heisswasserpumpe-AbsCmd1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:36 .Device_Affected_Details Heisswasserpumpe-AbsCmd1#[NF]on-for-timer#[NF]no_action#[NF]600#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]mSwitch_dummy_Heisswasserpumpe-AbsCmd1#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]05#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 .Device_Events MSwitch_Self:on:#[tr]MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .First_init done
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_cmd_off state:off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_cmd_on .*:on.*:.*
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_off no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 .Trigger_on no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .V_Check V2.00
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVENT MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTFULL mSwitch_dummy_Heisswasserpumpe:MSwitch_Self:off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART1 mSwitch_dummy_Heisswasserpumpe
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART2 MSwitch_Self
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 EVTPART3 off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:03:06 Trigger_log on
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_activation_by manual
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_event MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 last_exec_cmd set mSwitch_dummy_Heisswasserpumpe off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:24:21 state off



passt alles in allem. Ich hätte es etwas komfortabler gestaltet ( einstellbare zeit ) und würde das MSwitch erst dann wieder ausschalten lassen, wenn die Zeit abgelaufen ist , damit auch im MSwitch immer der aktuelle Zustand angezeigt wird.

defmod mSwitch_dummy_Heisswasserpumpe MSwitch # mSwitch_dummy_Heisswasserpumpe Heisswasserpumpe
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Debug 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Eventhistory 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Expert 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Help 0
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Mode Dummy
attr mSwitch_dummy_Heisswasserpumpe MSwitch_Selftrigger_always 1
attr mSwitch_dummy_Heisswasserpumpe alias Heisswasser
attr mSwitch_dummy_Heisswasserpumpe genericDeviceType switch
attr mSwitch_dummy_Heisswasserpumpe readingList ontime
attr mSwitch_dummy_Heisswasserpumpe room GoogleAssistant,MSwitch_Devices,mSwitches
attr mSwitch_dummy_Heisswasserpumpe setList on off ontime:slider,1,5,600
attr mSwitch_dummy_Heisswasserpumpe useSetExtensions 1
attr mSwitch_dummy_Heisswasserpumpe webCmd on:off:ontime

setstate mSwitch_dummy_Heisswasserpumpe on
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 16:23:35 .Device_Affected Heisswasserpumpe-AbsCmd1,mSwitch_dummy_Heisswasserpumpe-AbsCmd1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:49:18 .Device_Affected_Details Heisswasserpumpe-AbsCmd1#[NF]on-for-timer#[NF]off#[NF][$SELF#[dp]ontime]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[ND]mSwitch_dummy_Heisswasserpumpe-AbsCmd1#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF][$SELF#[dp]ontime]#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 .Device_Events MSwitch_Self:ontime:10#[tr]MSwitch_Self:ontime:112#[tr]MSwitch_Self:off:#[tr]MSwitch_Self:on:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .First_init done
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:43:11 .Trigger_cmd_off MSwitch_Self:off:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:43:11 .Trigger_cmd_on MSwitch_Self:on:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:43:11 .Trigger_off no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:43:11 .Trigger_on no_trigger
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-10 15:45:44 .V_Check V2.00
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 EVENT MSwitch_Self:on:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 EVTFULL mSwitch_dummy_Heisswasserpumpe:MSwitch_Self:on
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 EVTPART1 mSwitch_dummy_Heisswasserpumpe
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 EVTPART2 MSwitch_Self
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 EVTPART3 on
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:43:11 Trigger_log off
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 last_activation_by manual
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:50:15 last_cmd 1
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 last_event MSwitch_Self:on:
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 last_exec_cmd set Heisswasserpumpe on-for-timer 600
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:29 ontime 600
setstate mSwitch_dummy_Heisswasserpumpe 2019-12-11 05:52:33 state on



gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 12 Dezember 2019, 11:08:22
Bei mir funktioniert das nicht.
Im LOG sehe ich folgenden Fehler:

2019.12.12 11:04:02 1: mSwitch_dummy_Heisswasserpumpe: ERROR Timerformat 51 fehlerhaf

2019.12.12 11:04:02 3: mSwitch_dummy_Heisswasserpumpe MSwitch_Restartcm: Befehlsausfuehrung -> set Heisswasserpumpe off  7909


Ist die eingestellte Zeit auch gleich die "default on-for-timer" Zeit?

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Dezember 2019, 11:22:03
Zitat von: hermann1514 am 12 Dezember 2019, 11:08:22
Bei mir funktioniert das nicht.
Im LOG sehe ich folgenden Fehler:

2019.12.12 11:04:02 1: mSwitch_dummy_Heisswasserpumpe: ERROR Timerformat 51 fehlerhaf

2019.12.12 11:04:02 3: mSwitch_dummy_Heisswasserpumpe MSwitch_Restartcm: Befehlsausfuehrung -> set Heisswasserpumpe off  7909


Ist die eingestellte Zeit auch gleich die "default on-for-timer" Zeit?
Wann hast du das letzte Update gemacht? Klingt mir nach einer nicht mehr aktuellen Version!

ja... die einstellbare Zeit wird für on for timer genutzt

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 12 Dezember 2019, 12:09:05
Sollte eigentlich aktuell sein:

TYPE
MSwitch
Version_Datenstruktur
V2.00
Version_Modul
2.7

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Dezember 2019, 13:12:55
Zitat von: hermann1514 am 12 Dezember 2019, 12:09:05
Sollte eigentlich aktuell sein:

TYPE
MSwitch
Version_Datenstruktur
V2.00
Version_Modul
2.7
Die aktuelle version aus dem fhem svn hat ist die V2. 91

unter anderem haben sich genau dir Formate für die delays verändert. Schau mal ein paar posts über diesem (post 922}.

gruss Thomas

Gesendet von meinem ELE-L29 mit Tapatalk
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 12 Dezember 2019, 15:57:10
Komisch.....dann geht es  ;D ;D ;D

Danke.
Gruß
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Dezember 2019, 16:43:08
Zitat von: hermann1514 am 12 Dezember 2019, 15:57:10
Komisch.....dann geht es  ;D ;D ;D

Danke.
Gruß
Hermann

manche dinge sind halt einfach merkwürdig  ;)

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 14 Dezember 2019, 07:43:36
Hallo Byte09,

ich habe jetzt mal deine letzte Version eingespielt: Da hast du ja schon den Testbutton für die Aktion eingefügt.
Super und Danke!

Mir fiel nur bei einem Befehl wie "{Log 1, "FBHZG-Info: Heizung aktiviert über MSW";}" auf,
dass da ein Fehler produziert wird:

ERROR evaluating {fhem("{Log 1, "FBHZG-Info: Heizung aktiviert über MSW";} undefined")}: Unrecognized character \xC3; marked by <-- HERE after aktiviert <--


Bei der neusten Version von Github meckert er auch kurz (oben Links kurze Einblendung: Sowas wie unbekannter Befehl).

Das scheint bei allen FreeCMD so zu sein
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 Dezember 2019, 08:26:05
Zitat von: Panik am 14 Dezember 2019, 07:43:36
Hallo Byte09,

ich habe jetzt mal deine letzte Version eingespielt: Da hast du ja schon den Testbutton für die Aktion eingefügt.
Super und Danke!

Mir fiel nur bei einem Befehl wie "{Log 1, "FBHZG-Info: Heizung aktiviert über MSW";}" auf,
dass da ein Fehler produziert wird:

ERROR evaluating {fhem("{Log 1, "FBHZG-Info: Heizung aktiviert über MSW";} undefined")}: Unrecognized character \xC3; marked by <-- HERE after aktiviert <--


Bei der neusten Version von Github meckert er auch kurz (oben Links kurze Einblendung: Sowas wie unbekannter Befehl).

Das scheint bei allen FreeCMD so zu sein

danke für den Hinweis, ich schaue mir das an und korrigiere das mit kommendem Update ich habe den Fehler gefunden und es ist mit morgigem Update behoben.
Wichtig: Im Augenblick ist die Version im SVN aktueller als die GitHub-Version.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 Dezember 2019, 08:45:00
INFO:

bisher war es nicht möglich , im Sequenzmode reguläre Ausdrücke zu nutzen. Die eingenhenden Events mussten mit der hinterlegten Sequenz genau 'matchen'.

d.H es war nicht möglich eine Sequenz zu erstellen, die z.B auf ein Reading > 0 zutrifft.

mit morgigem Update ist es hier Möglich Sequenzen zu erstellen , in denen die Regeln der Regex angewendet werden können.

Ausdrücke wie dieser
Zitatdevice:event:[1-9] device:state:on
werden dann erkannt und in Sequenzen berücksichtigt.

gruss Byte09

Edit: entsprechende Version 2.92 habe ich soeben in das SVN und in GIT gestellt. Die beiden Versionen sind somit auf dem aktuellen und identischem stand

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 19 Dezember 2019, 18:35:41
Update auf 2.93

mit dem Update auf V2.93 enthält das Webinterface die Option , ausgewähle Befehlszweige zu verbergen .
Dieses habe ich für mich selber benötigt , da ich viele Devices habe, die die gleiche Grundfunktion haben , aber nur ein oder zwei Befehlszweige , die sich Unterscheiden ( und somit ggf. nur bearbeitet werden müssen) . Da trägt es doch deutlich zur Übersicht bei , wenn Felder ausgeblendet werden.

Optional können ganze Gruppen ( Anzeigereihenfolge ) über das Attribut 'MSwitch_Hidecmds' augeblendet werden. Hier ist eine durch Komma getrennte Liste aller entsprechenden Nummer einzutragen , die nicht angezeigt werden sollen.

Ausgeblendete Zweige können durch 'Buttonklick' zur bearbeitung eingeblendet werden.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 21 Dezember 2019, 14:30:06
Hallo Thomas, ich steh mal wieder auf dem Schlauch:

Ich habe hier einen Dummy-MSwitch dem ich mittels SetList und webCMD den State umschalten gegeben habe. Wenn der Button umschalten gedrückt wird, soll ein FreeCMD ausgeführt werden.

Wenn ich nun aber umschalten drücke, wird der state auf umschalten gesetzt, aber der FreeCMD nicht ausgeführt, obwohl ich in den Triggerdetails     nur CMD1 ausführen    Trigger MSwitch_Self: state:umschalten   angegeben habe.
Wenn ich mittels Set exec_cmd_1 den FreeCMD Command starte, passiert das gewünschte sofort.

Ich habe dir hier mal die Raw Definition:

defmod Tanja_Anwesenheit_toggle MSwitch     # FreeCmd
attr Tanja_Anwesenheit_toggle MSwitch_Debug 0
attr Tanja_Anwesenheit_toggle MSwitch_Eventhistory 0
attr Tanja_Anwesenheit_toggle MSwitch_Expert 0
attr Tanja_Anwesenheit_toggle MSwitch_Help 1
attr Tanja_Anwesenheit_toggle MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Tanja_Anwesenheit_toggle MSwitch_Inforoom MSwitch_Info
attr Tanja_Anwesenheit_toggle MSwitch_Mode Dummy
attr Tanja_Anwesenheit_toggle MSwitch_Selftrigger_always 1
attr Tanja_Anwesenheit_toggle group Anwesenheit
attr Tanja_Anwesenheit_toggle room MSwitch_Info,Residents
attr Tanja_Anwesenheit_toggle setList umschalten
attr Tanja_Anwesenheit_toggle webCmd umschalten

setstate Tanja_Anwesenheit_toggle umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected FreeCmd-AbsCmd1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]trigger#[sp]NFC_Tanja#[sp]1#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:40:07 .Device_Events state:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .First_init done
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_cmd_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_cmd_on state:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_on no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .V_Check V2.00
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVENT MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTFULL Tanja_Anwesenheit_toggle:MSwitch_Self:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART1 Tanja_Anwesenheit_toggle
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART2 MSwitch_Self
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART3 umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 Trigger_log off
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:19:17 last_activation_by event
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 last_event MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:22:05 last_exec_cmd   trigger NFC_Tanja 1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:19:17 state umschalten


Kannst du mir nochmal auf die Sprünge helfen wo ich den Fehler mache?

Danke und Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 Dezember 2019, 14:38:24
Zitat von: Wolle02 am 21 Dezember 2019, 14:30:06
Hallo Thomas, ich steh mal wieder auf dem Schlauch:

Ich habe hier einen Dummy-MSwitch dem ich mittels SetList und webCMD den State umschalten gegeben habe. Wenn der Button umschalten gedrückt wird, soll ein FreeCMD ausgeführt werden.

Wenn ich nun aber umschalten drücke, wird der state auf umschalten gesetzt, aber der FreeCMD nicht ausgeführt, obwohl ich in den Triggerdetails     nur CMD1 ausführen    Trigger MSwitch_Self: state:umschalten   angegeben habe.
Wenn ich mittels Set exec_cmd_1 den FreeCMD Command starte, passiert das gewünschte sofort.

Ich habe dir hier mal die Raw Definition:

defmod Tanja_Anwesenheit_toggle MSwitch     # FreeCmd
attr Tanja_Anwesenheit_toggle MSwitch_Debug 0
attr Tanja_Anwesenheit_toggle MSwitch_Eventhistory 0
attr Tanja_Anwesenheit_toggle MSwitch_Expert 0
attr Tanja_Anwesenheit_toggle MSwitch_Help 1
attr Tanja_Anwesenheit_toggle MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Tanja_Anwesenheit_toggle MSwitch_Inforoom MSwitch_Info
attr Tanja_Anwesenheit_toggle MSwitch_Mode Dummy
attr Tanja_Anwesenheit_toggle MSwitch_Selftrigger_always 1
attr Tanja_Anwesenheit_toggle group Anwesenheit
attr Tanja_Anwesenheit_toggle room MSwitch_Info,Residents
attr Tanja_Anwesenheit_toggle setList umschalten
attr Tanja_Anwesenheit_toggle webCmd umschalten

setstate Tanja_Anwesenheit_toggle umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected FreeCmd-AbsCmd1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]trigger#[sp]NFC_Tanja#[sp]1#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:40:07 .Device_Events state:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .First_init done
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_cmd_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_cmd_on state:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 .Trigger_on no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .V_Check V2.00
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVENT MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTFULL Tanja_Anwesenheit_toggle:MSwitch_Self:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART1 Tanja_Anwesenheit_toggle
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART2 MSwitch_Self
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART3 umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:13:18 Trigger_log off
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:19:17 last_activation_by event
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 last_event MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:22:05 last_exec_cmd   trigger NFC_Tanja 1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:19:17 state umschalten


Kannst du mir nochmal auf die Sprünge helfen wo ich den Fehler mache?

Danke und Gruß
Wolle

Hi Wolle,

du hast das auslösende Event fasch gewählt.
am einfachsten setzt du immer das Häkchen bei  'eingehende Events speichern' . dann das Event auslösenun device aktualisieren.

Danach hast du das passende Event in den Dropdownfeldern zur Verfügung.

Gruss Thomas



defmod Tanja_Anwesenheit_toggle MSwitch # FreeCmd
attr Tanja_Anwesenheit_toggle MSwitch_Debug 0
attr Tanja_Anwesenheit_toggle MSwitch_Eventhistory 0
attr Tanja_Anwesenheit_toggle MSwitch_Expert 0
attr Tanja_Anwesenheit_toggle MSwitch_Help 1
attr Tanja_Anwesenheit_toggle MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr Tanja_Anwesenheit_toggle MSwitch_Inforoom MSwitch_Info
attr Tanja_Anwesenheit_toggle MSwitch_Mode Dummy
attr Tanja_Anwesenheit_toggle MSwitch_Selftrigger_always 1
attr Tanja_Anwesenheit_toggle group Anwesenheit
attr Tanja_Anwesenheit_toggle room MSwitch_Info,Residents
attr Tanja_Anwesenheit_toggle setList umschalten
attr Tanja_Anwesenheit_toggle webCmd umschalten

setstate Tanja_Anwesenheit_toggle umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected FreeCmd-AbsCmd1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:16:14 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]trigger#[sp]NFC_Tanja#[sp]1#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]undefined#[NF]undefined#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:56 .Device_Events MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .First_init done
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:54 .Trigger_cmd_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:54 .Trigger_cmd_on MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:54 .Trigger_off no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:54 .Trigger_on no_trigger
setstate Tanja_Anwesenheit_toggle 2019-12-21 09:37:22 .V_Check V2.00
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVENT MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTFULL Tanja_Anwesenheit_toggle:MSwitch_Self:umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART1 Tanja_Anwesenheit_toggle
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART2 MSwitch_Self
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 EVTPART3 umschalten
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:54 Trigger_log on
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:55 last_activation_by event
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:14:24 last_event MSwitch_Self:umschalten:
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:55 last_exec_cmd   trigger NFC_Tanja 1
setstate Tanja_Anwesenheit_toggle 2019-12-21 14:35:56 state umschalten

Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 21 Dezember 2019, 14:44:58
Zitat von: Byte09 am 21 Dezember 2019, 14:38:24
du hast das auslösende Event fasch gewählt.
am einfachsten setzt du immer das Häkchen bei  'eingehende Events speichern' . dann das Event auslösenun device aktualisieren.

Danach hast du das passende Event in den Dropdownfeldern zur Verfügung.

Ja, das hab ich auch schon probiert. Aber wenn ich den Haken reinmache, auf Triggerdetails speichern klicke und dann nochmal auf umschalten klicke, steht immer noch nur state:umschalten zur Verfügung.

?????
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 21 Dezember 2019, 15:05:12
Zitat von: Wolle02 am 21 Dezember 2019, 14:44:58
Ja, das hab ich auch schon probiert. Aber wenn ich den Haken reinmache, auf Triggerdetails speichern klicke und dann nochmal auf umschalten klicke, steht immer noch nur state:umschalten zur Verfügung.

?????

hast du nach setzen des Kakens 'Devices spepichern' gedrückt ?

dann das Event auslösen und danach die Ansicht neu laden .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 21 Dezember 2019, 16:55:49
Ahhh, ich glaube "die Ansicht neu laden" das wars. Jetzt hab ich auch das richtige Triggerevent.

Danke schön. Ich wünsch Dir noch schöne Feiertage.

Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Dezember 2019, 08:39:19
Derzeit arbeite ich an V3.0 des Moduls.
In dieser Version wird wenig am Funktionsumfang des Modul an sich geändert, sondern ich versuche hier hauptsächlich die Bedienbarkeit zu verbessern.

bis zum Update wird es zwar wohl noch einige Tage dauern aber folgende Neuerungen sind vorgesehen :

- ( fertig ) Rename des Devices direkt aus der Webansicht - evtl. überprüfung von Abhängigkeiten
- ( fertig ) eingebauter Eventmonitor mit direkter übernahme der Events in entsprechende Dropdownfelder ( kein Reload der Seite mehr notwendig )
- ( in Arbeit fertig) Liveansicht des Debugmonitors - kein Reload der Seite mehr erforderlich - Modulaktivitäten werden live angezeigt
- ( geplant ) Importmöglichkeit von Notifys
- ( in Arbeit ) Importmöglichkeit von AT's
- ( in Arbeit ) Vereinfachte Grundkonfiguration in Form eines Wizards
- ( geändert ) Änderung Inforoom Ansicht

Folgende mal angedachte Features habe ich verworfen und werde bereits integrierten Code entfernen

- ( verworfen ) komplette Einrichtung des Devices über eine Definition ( define DEVICE MSwitch ... ... ... )

Ich werde diese Liste hier aktualisiern und ggf. Zwischenversionen in das GIT laden. Aktuelle GITversionen werde ich hier eintragen

aktuelle GITversion :
- 2.92 veraltet
- 3.01 alpha
- 3.02 alpha
- MSwitch 3.02 alpha / wizard 0.3 beta
- MSwitch 3.02 alpha / wizard 0.5 beta


Wenn spezielle Wünsche für diese Version bestehen könnt Ihr die hier gerne posten - ich schaue dann ob es in meinen Augen Sinn macht und umsetzbar ist.


Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 23 Dezember 2019, 13:32:05
Hi Thomas,

hab einen kleinen Wunsch:

Du gruppierst im Inforoom ja nach dem Attribut Group. Könntest du im MSwitch Inforoom in der Zeile "MSwitch Inforoom: Anzeige der Deviceinformationen... " noch den Inhalt aus dem Attribut Group,  wenn nicht vorhanden den Inhalt von TYPE anzeigen. 

Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Dezember 2019, 13:55:15
Zitat von: khk123 am 23 Dezember 2019, 13:32:05
Hi Thomas,

hab einen kleinen Wunsch:

Du gruppierst im Inforoom ja nach dem Attribut Group. Könntest du im MSwitch Inforoom in der Zeile "MSwitch Inforoom: Anzeige der Deviceinformationen... " noch den Inhalt aus dem Attribut Group,  wenn nicht vorhanden den Inhalt von TYPE anzeigen. 

Vlg
Karlheinz


hi,

jetzt stehe ich gerade etwas auf dem Schlauch  :-\.
Ich sortiere in diesem Raum gar nicht , es wird von Fhem so sortiert wie jeder andere Raum - die Seite wird auch im Grund nicht vom Mswitchmodul generiert, sondern es ist die normale Raumansicht- wie in jedem anderen Raum auch , mit dem Unterschied , das die Seite per jquery/javascript nach dem aufbau manipuliert wird.
   ...
Da ja nur MSwitch devices in diesem raum sind ( sein sollten ) ist der TYPE doch immer MSwitch ?  ... oder sortierst du auch andere Devices in diesen Raum , dann könnte ich es nachvollziehen ?!

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 23 Dezember 2019, 16:54:17
Hi Thomas,

FHEM zeigt auf den Raumseiten als Überschrift bei der Gruppierung immer den Namen aus dem Atrribut Group bzw. wenn das Attribut Group nicht vorhanden ist, dann den Inhalt von TYPE bzw. den Inhalt des Attributes subType. Dann liegt mein Problemchen  an der Textzeite "MSwitch Inforoom: Anzeige der Deviceinformationen, Änderungen sind nur in den Details möglich."

Du setzt in deinem Programm

\$( \".devType\" ).text( \"MSwitch Inforoom: Anzeige der Deviceinformationen, Änderungen sind nur in den Details möglich.\" );


Dadurch wird deine Infozeile angezeigt. Setzt du keinen "devtype", zeigt FHEM den Groupnamen bzw. den TYPE an. Finde ich hilfreiche als die reine Infozeile. S. angeh. Bilder.

Vlg
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Dezember 2019, 19:05:16
Zitat von: khk123 am 23 Dezember 2019, 16:54:17
Hi Thomas,

FHEM zeigt auf den Raumseiten als Überschrift bei der Gruppierung immer den Namen aus dem Atrribut Group bzw. wenn das Attribut Group nicht vorhanden ist, dann den Inhalt von TYPE bzw. den Inhalt des Attributes subType. Dann liegt mein Problemchen  an der Textzeite "MSwitch Inforoom: Anzeige der Deviceinformationen, Änderungen sind nur in den Details möglich."

Du setzt in deinem Programm

\$( \".devType\" ).text( \"MSwitch Inforoom: Anzeige der Deviceinformationen, Änderungen sind nur in den Details möglich.\" );


Dadurch wird deine Infozeile angezeigt. Setzt du keinen "devtype", zeigt FHEM den Groupnamen bzw. den TYPE an. Finde ich hilfreiche als die reine Infozeile. S. angeh. Bilder.

Vlg
Karlheinz

ok , jetzt habe ich es verstanden. Ich ändere es.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 23 Dezember 2019, 20:44:46
...wie immer ein prompter Service.  :) Ich danke dir.

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 24 Dezember 2019, 12:09:14
Zitat von: khk123 am 23 Dezember 2019, 20:44:46
...wie immer ein prompter Service.  :) Ich danke dir.

in der aktuellen GIT_Version ist es geändert.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 27 Dezember 2019, 11:44:39
Hi Thomas,

im Log erscheint bei der Ausführung von "configdb dump" über MSwitch folgende Fehlermeldung:

2019.12.27 02:10:00 3: ConfigDb_Sicherung MSwitch_Restartcm: Befehlsausfuehrung ->   configdb dump 7805
2019.12.27 02:10:10 1: ConfigDb_Sicherung Absent_Exec_Notif on: ERROR FreeCmd-AbsCmd1: configDB dumped 4208740 bytes
from: /opt/fhem/configDB.db
  to: ./log/configDB_2019-12-27_02-10-00.dump.gz -> Comand:   configdb dump


Der Befehl wurde korrekt ausgeführt und configdb liefert generell als Rückmeldung folgendes:

configDB dumped 4208783 bytes
from: /opt/fhem/configDB.db
  to: ./log/configDB_2019-12-27_11-27-01.dump.gz


Das gleiche Verhalten auch bei folgendem Befehl auf:

2019.12.25 02:10:00 3: ZWave_Sicherung MSwitch_Restartcm: Befehlsausfuehrung -> set ZWave backupCreate 256k 7805
2019.12.25 02:10:02 3: ZWave backupCreate at 16384 bytes
2019.12.25 02:10:05 3: ZWave backupCreate at 32768 bytes
2019.12.25 02:10:08 3: ZWave backupCreate at 49152 bytes
2019.12.25 02:10:11 3: ZWave backupCreate at 65536 bytes
2019.12.25 02:10:14 3: ZWave backupCreate at 81920 bytes
2019.12.25 02:10:16 3: ZWave backupCreate at 98304 bytes
2019.12.25 02:10:19 3: ZWave backupCreate at 114688 bytes
2019.12.25 02:10:22 3: ZWave backupCreate at 131072 bytes
2019.12.25 02:10:25 3: ZWave backupCreate at 147456 bytes
2019.12.25 02:10:28 3: ZWave backupCreate at 163840 bytes
2019.12.25 02:10:30 3: ZWave backupCreate at 180224 bytes
2019.12.25 02:10:33 3: ZWave backupCreate at 196608 bytes
2019.12.25 02:10:36 3: ZWave backupCreate at 212992 bytes
2019.12.25 02:10:39 3: ZWave backupCreate at 229376 bytes
2019.12.25 02:10:42 3: ZWave backupCreate at 245760 bytes
2019.12.25 02:10:44 3: ZWave backupCreate at 262144 bytes
2019.12.25 02:10:44 1: ZWave_Sicherung Absent_Exec_Notif on: ERROR ZWave-AbsCmd1: Wrote 262144 bytes to ./ZWave.bin -> Comand: set ZWave backupCreate 256k


Hab nicht ins Programm geschaut, aber ich nehme an, dass immer wenn die Rückmeldung des auszuführenden Befehls nicht "OK" lautet, eine Fehlermeldung produziert wird.

Viele Grüße
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 Dezember 2019, 12:56:04
Zitat von: khk123 am 27 Dezember 2019, 11:44:39
Hi Thomas,

im Log erscheint bei der Ausführung von "configdb dump" über MSwitch folgende Fehlermeldung:

2019.12.27 02:10:00 3: ConfigDb_Sicherung MSwitch_Restartcm: Befehlsausfuehrung ->   configdb dump 7805
2019.12.27 02:10:10 1: ConfigDb_Sicherung Absent_Exec_Notif on: ERROR FreeCmd-AbsCmd1: configDB dumped 4208740 bytes
from: /opt/fhem/configDB.db
  to: ./log/configDB_2019-12-27_02-10-00.dump.gz -> Comand:   configdb dump


Der Befehl wurde korrekt ausgeführt und configdb liefert generell als Rückmeldung folgendes:

configDB dumped 4208783 bytes
from: /opt/fhem/configDB.db
  to: ./log/configDB_2019-12-27_11-27-01.dump.gz


Das gleiche Verhalten auch bei folgendem Befehl auf:

2019.12.25 02:10:00 3: ZWave_Sicherung MSwitch_Restartcm: Befehlsausfuehrung -> set ZWave backupCreate 256k 7805
2019.12.25 02:10:02 3: ZWave backupCreate at 16384 bytes
2019.12.25 02:10:05 3: ZWave backupCreate at 32768 bytes
2019.12.25 02:10:08 3: ZWave backupCreate at 49152 bytes
2019.12.25 02:10:11 3: ZWave backupCreate at 65536 bytes
2019.12.25 02:10:14 3: ZWave backupCreate at 81920 bytes
2019.12.25 02:10:16 3: ZWave backupCreate at 98304 bytes
2019.12.25 02:10:19 3: ZWave backupCreate at 114688 bytes
2019.12.25 02:10:22 3: ZWave backupCreate at 131072 bytes
2019.12.25 02:10:25 3: ZWave backupCreate at 147456 bytes
2019.12.25 02:10:28 3: ZWave backupCreate at 163840 bytes
2019.12.25 02:10:30 3: ZWave backupCreate at 180224 bytes
2019.12.25 02:10:33 3: ZWave backupCreate at 196608 bytes
2019.12.25 02:10:36 3: ZWave backupCreate at 212992 bytes
2019.12.25 02:10:39 3: ZWave backupCreate at 229376 bytes
2019.12.25 02:10:42 3: ZWave backupCreate at 245760 bytes
2019.12.25 02:10:44 3: ZWave backupCreate at 262144 bytes
2019.12.25 02:10:44 1: ZWave_Sicherung Absent_Exec_Notif on: ERROR ZWave-AbsCmd1: Wrote 262144 bytes to ./ZWave.bin -> Comand: set ZWave backupCreate 256k


Hab nicht ins Programm geschaut, aber ich nehme an, dass immer wenn die Rückmeldung des auszuführenden Befehls nicht "OK" lautet, eine Fehlermeldung produziert wird.

Viele Grüße
Karlheinz

ja, ich habe jetzt auch noch nicht nachgesehen, wird aber etwas derartiges sein.
Ich schaue mir das an.


Ich habe gerade mal reingeschaut und es ist so wie du vermutet hast:

...
if ( defined($errors) and $errors ne "OK" ) {
                                MSwitch_LOG( $name, 1....


da ich auf die schnelle keine Idee habe , wie ich hier eine gewollte Meldung von einer echten Fehlermeldung unterscheiden kann werde ich diese Meldung erstmal komplett abschalten , bzw. nur im Debugmodus aktivieren ( zumindest bis mir was besseres einfällt )

ich werde das morgen im Laufe des Tages erstmal mit der GIT-Version aktualisieren.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 Dezember 2019, 16:14:14
Ich habe gerade eine aktuelle Version in das GIT gestellt.

Ab dieser Version wird eine zusätzliche Javascrip-Datei benötigt. Diese wird beim Update ebenfalls installiert.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 28 Dezember 2019, 08:46:10
Hallo Byte09,

ich habe mehrer Schalter, bei denen die Verzögerung nicht mehr wie vorher reagiert. Exemplarisch unten ein Schalter

Das ist ein MSwitch-Notify-Schalter, der zu einer bestimmten Zeit mit mehreren zeitverzögerten Aktionen loslegt.
Gleichzeitig hatte ich den so gestaltet, daß ein Druck in der Webansicht auf den Schalter auch die Befehlskette aktiviert.
Den Schalter hab ich nach 2s wieder zurückgestellt, da ich der Ansicht war, dass die Befehlskette trotzdem abgearbeitet wird.
Das geht nun seit ein paar Tagen nicht mehr. Ich müsste den MSwitch-Notify-Schalter als letztes zurückstellen, was aber
wahrscheinlich bei diversen Reset-Befehlen ungünstig ist ...
Hast du da was "umgeschraubt" ?

Gruß, Panik




Modulversion: 2.93
Datenstruktur: V2.00

----- Devicename -----
MSW_Raspi_USB_Reset

----- Attribute -----
Attribut MSwitch_Extensions: 1
Attribut webCmd: on:off
Attribut devStateIcon: off:general_aus@red on:general_an@green active:control_home@magenta
Attribut MSwitch_Include_MSwitchcmds: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Lock_Quickedit: 1
Attribut group: MSwitch
Attribut verbose: 0
Attribut room: Aktoren,MSwitch
Attribut MSwitch_Expert: 1
Attribut disable: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Debug: 1
Attribut setList: on off
Attribut MSwitch_Delete_Delays: 1
Attribut icon: time_clock@yellow
Attribut MSwitch_Inforoom: MSwitch
Attribut cmdIcon: off:general_aus on:general_an
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul

----- Trigger -----
Trigger device:  MSwitch_Self
Trigger time: on off ononly[02:01|5] offonly onoffonly
Trigger condition: [urlaubsstatus:state] eq "null"
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: undefined {
system("ls -l /dev/serial/by-id/");
system("lsusb");
fhem("set LED_Band text 5_9_1; sleep 3; set LED_Band text 5_9_0 ");
}

cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd2
cmd1: undefined {WriteStatefile();
Log 1, "Zustandsinfo: Statefile gespeichert (MSW_Raspi_USB_Reset).";}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd3
cmd1: undefined {Log 1, "USB-Reset über MSW ... ";
fhem("set MyPushover msg title='USB-Reset' USB-Reset beginnt gleich device=aquarisx");
speak("USB Reset beginnt in wenigen Sekunden", 0);}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:05
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: MSwitch_Self-AbsCmd1
cmd1: off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:02
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 Dezember 2019, 09:24:42
Zitat von: Panik am 28 Dezember 2019, 08:46:10
Hallo Byte09,

ich habe mehrer Schalter, bei denen die Verzögerung nicht mehr wie vorher reagiert. Exemplarisch unten ein Schalter

Das ist ein MSwitch-Notify-Schalter, der zu einer bestimmten Zeit mit mehreren zeitverzögerten Aktionen loslegt.
Gleichzeitig hatte ich den so gestaltet, daß ein Druck in der Webansicht auf den Schalter auch die Befehlskette aktiviert.
Den Schalter hab ich nach 2s wieder zurückgestellt, da ich der Ansicht war, dass die Befehlskette trotzdem abgearbeitet wird.
Das geht nun seit ein paar Tagen nicht mehr. Ich müsste den MSwitch-Notify-Schalter als letztes zurückstellen, was aber
wahrscheinlich bei diversen Reset-Befehlen ungünstig ist ...
Hast du da was "umgeschraubt" ?

Gruß, Panik




Modulversion: 2.93
Datenstruktur: V2.00

----- Devicename -----
MSW_Raspi_USB_Reset

----- Attribute -----
Attribut MSwitch_Extensions: 1
Attribut webCmd: on:off
Attribut devStateIcon: off:general_aus@red on:general_an@green active:control_home@magenta
Attribut MSwitch_Include_MSwitchcmds: 1
Attribut MSwitch_Include_Webcmds: 1
Attribut MSwitch_Include_Devicecmds: 1
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Lock_Quickedit: 1
Attribut group: MSwitch
Attribut verbose: 0
Attribut room: Aktoren,MSwitch
Attribut MSwitch_Expert: 1
Attribut disable: 0
Attribut MSwitch_Help: 1
Attribut MSwitch_Condition_Time: 1
Attribut MSwitch_Debug: 1
Attribut setList: on off
Attribut MSwitch_Delete_Delays: 1
Attribut icon: time_clock@yellow
Attribut MSwitch_Inforoom: MSwitch
Attribut cmdIcon: off:general_aus on:general_an
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul

----- Trigger -----
Trigger device:  MSwitch_Self
Trigger time: on off ononly[02:01|5] offonly onoffonly
Trigger condition: [urlaubsstatus:state] eq "null"
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: no_trigger
Trigger cmd4: no_trigger

----- Device Actions -----

Device: FreeCmd-AbsCmd1
cmd1: undefined {
system("ls -l /dev/serial/by-id/");
system("lsusb");
fhem("set LED_Band text 5_9_1; sleep 3; set LED_Band text 5_9_0 ");
}

cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:10
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd2
cmd1: undefined {WriteStatefile();
Log 1, "Zustandsinfo: Statefile gespeichert (MSW_Raspi_USB_Reset).";}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: FreeCmd-AbsCmd3
cmd1: undefined {Log 1, "USB-Reset über MSW ... ";
fhem("set MyPushover msg title='USB-Reset' USB-Reset beginnt gleich device=aquarisx");
speak("USB Reset beginnt in wenigen Sekunden", 0);}
cmd2: cmd
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:05
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: MSwitch_Self-AbsCmd1
cmd1: off
cmd2: no_action
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:02
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0



kannst du mir bitte die rawdefinition von dem device geben ?  ... schaue ich mir dann direkt an .

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 28 Dezember 2019, 09:35:56

defmod MSW_Raspi_USB_Reset MSwitch MSW_Raspi_USB_Reset   # FreeCmd MSwitch_Self
attr MSW_Raspi_USB_Reset MSwitch_Condition_Time 1
attr MSW_Raspi_USB_Reset MSwitch_Debug 1
attr MSW_Raspi_USB_Reset MSwitch_Delete_Delays 1
attr MSW_Raspi_USB_Reset MSwitch_Expert 1
attr MSW_Raspi_USB_Reset MSwitch_Extensions 1
attr MSW_Raspi_USB_Reset MSwitch_Help 1
attr MSW_Raspi_USB_Reset MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr MSW_Raspi_USB_Reset MSwitch_Include_Devicecmds 1
attr MSW_Raspi_USB_Reset MSwitch_Include_MSwitchcmds 1
attr MSW_Raspi_USB_Reset MSwitch_Include_Webcmds 1
attr MSW_Raspi_USB_Reset MSwitch_Inforoom MSwitch
attr MSW_Raspi_USB_Reset MSwitch_Lock_Quickedit 1
attr MSW_Raspi_USB_Reset MSwitch_Mode Notify
attr MSW_Raspi_USB_Reset cmdIcon off:general_aus on:general_an
attr MSW_Raspi_USB_Reset devStateIcon off:general_aus@red on:general_an@green active:control_home@magenta
attr MSW_Raspi_USB_Reset disable 0
attr MSW_Raspi_USB_Reset group MSwitch
attr MSW_Raspi_USB_Reset icon time_clock@yellow
attr MSW_Raspi_USB_Reset room Aktoren,MSwitch
attr MSW_Raspi_USB_Reset setList on off
attr MSW_Raspi_USB_Reset verbose 0
attr MSW_Raspi_USB_Reset webCmd on:off

setstate MSW_Raspi_USB_Reset active
setstate MSW_Raspi_USB_Reset 2019-12-28 08:30:06 .Device_Affected FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,FreeCmd-AbsCmd3,MSwitch_Self-AbsCmd1
setstate MSW_Raspi_USB_Reset 2019-12-28 08:34:43 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]{#[nl]system("ls#[sp]-l#[sp]/dev/serial/by-id/")#[se]#[sp]#[nl]system("lsusb")#[se]#[sp]#[nl]fhem("set#[sp]LED_Band#[sp]text#[sp]5_9_1#[se]#[sp]sleep#[sp]3#[se]#[sp]set#[sp]LED_Band#[sp]text#[sp]5_9_0#[sp]")#[se]#[nl]}#[nl]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]undefined#[NF]cmd#[NF]{WriteStatefile()#[se]#[nl]Log#[sp]1#[ko]#[sp]"Zustandsinfo#[dp]#[sp]Statefile#[sp]gespeichert#[sp](MSW_Raspi_USB_Reset)."#[se]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[ND]FreeCmd-AbsCmd3#[NF]undefined#[NF]cmd#[NF]{Log#[sp]1#[ko]#[sp]"USB-Reset#[sp]über#[sp]MSW#[sp]...#[sp]"#[se]#[nl]fhem("set#[sp]MyPushover#[sp]msg#[sp]title='USB-Reset'#[sp]USB-Reset#[sp]beginnt#[sp]gleich#[sp]device=aquarisx")#[se]#[nl]speak("USB#[sp]Reset#[sp]beginnt#[sp]in#[sp]wenigen#[sp]Sekunden"#[ko]#[sp]0)#[se]}#[NF]#[NF]delay0#[NF]delay1#[NF]00#[dp]00#[dp]05#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]02#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]4#[NF]0
setstate MSW_Raspi_USB_Reset 2019-11-20 18:13:41 .Device_Events no_trigger
setstate MSW_Raspi_USB_Reset 2019-11-20 18:13:41 .First_init done
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 Dezember 2019, 09:37:25
es wundert mich ein wenig.mit den letzten beiden updates am 14 und 20 dezember habe ich im grunde keine funktionsänderung vorgenommen , sondern (fast) nur am webinterface 'geschraubt' .

seit wann geht es denn nicht mehr ?

gruss thomas

edit: gib mir ein paar minuten mir das anzuschauen ;-)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 Dezember 2019, 09:54:44
Zitat von: Panik am 28 Dezember 2019, 09:35:56

defmod MSW_Raspi_USB_Reset MSwitch MSW_Raspi_USB_Reset   # FreeCmd MSwitch_Self
attr MSW_Raspi_USB_Reset MSwitch_Condition_Time 1
attr MSW_Raspi_USB_Reset MSwitch_Debug 1
attr MSW_Raspi_USB_Reset MSwitch_Delete_Delays 1
attr MSW_Raspi_USB_Reset MSwitch_Expert 1
attr MSW_Raspi_USB_Reset MSwitch_Extensions 1
attr MSW_Raspi_USB_Reset MSwitch_Help 1
attr MSW_Raspi_USB_Reset MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr MSW_Raspi_USB_Reset MSwitch_Include_Devicecmds 1
attr MSW_Raspi_USB_Reset MSwitch_Include_MSwitchcmds 1
attr MSW_Raspi_USB_Reset MSwitch_Include_Webcmds 1
attr MSW_Raspi_USB_Reset MSwitch_Inforoom MSwitch
attr MSW_Raspi_USB_Reset MSwitch_Lock_Quickedit 1
attr MSW_Raspi_USB_Reset MSwitch_Mode Notify
attr MSW_Raspi_USB_Reset cmdIcon off:general_aus on:general_an
attr MSW_Raspi_USB_Reset devStateIcon off:general_aus@red on:general_an@green active:control_home@magenta
attr MSW_Raspi_USB_Reset disable 0
attr MSW_Raspi_USB_Reset group MSwitch
attr MSW_Raspi_USB_Reset icon time_clock@yellow
attr MSW_Raspi_USB_Reset room Aktoren,MSwitch
attr MSW_Raspi_USB_Reset setList on off
attr MSW_Raspi_USB_Reset verbose 0
attr MSW_Raspi_USB_Reset webCmd on:off

setstate MSW_Raspi_USB_Reset active
setstate MSW_Raspi_USB_Reset 2019-12-28 08:30:06 .Device_Affected FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,FreeCmd-AbsCmd3,MSwitch_Self-AbsCmd1
setstate MSW_Raspi_USB_Reset 2019-12-28 08:34:43 .Device_Affected_Details FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]{#[nl]system("ls#[sp]-l#[sp]/dev/serial/by-id/")#[se]#[sp]#[nl]system("lsusb")#[se]#[sp]#[nl]fhem("set#[sp]LED_Band#[sp]text#[sp]5_9_1#[se]#[sp]sleep#[sp]3#[se]#[sp]set#[sp]LED_Band#[sp]text#[sp]5_9_0#[sp]")#[se]#[nl]}#[nl]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]10#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]3#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]undefined#[NF]cmd#[NF]{WriteStatefile()#[se]#[nl]Log#[sp]1#[ko]#[sp]"Zustandsinfo#[dp]#[sp]Statefile#[sp]gespeichert#[sp](MSW_Raspi_USB_Reset)."#[se]}#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[ND]FreeCmd-AbsCmd3#[NF]undefined#[NF]cmd#[NF]{Log#[sp]1#[ko]#[sp]"USB-Reset#[sp]über#[sp]MSW#[sp]...#[sp]"#[se]#[nl]fhem("set#[sp]MyPushover#[sp]msg#[sp]title='USB-Reset'#[sp]USB-Reset#[sp]beginnt#[sp]gleich#[sp]device=aquarisx")#[se]#[nl]speak("USB#[sp]Reset#[sp]beginnt#[sp]in#[sp]wenigen#[sp]Sekunden"#[ko]#[sp]0)#[se]}#[NF]#[NF]delay0#[NF]delay1#[NF]00#[dp]00#[dp]05#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[ND]MSwitch_Self-AbsCmd1#[NF]off#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]02#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]4#[NF]0
setstate MSW_Raspi_USB_Reset 2019-11-20 18:13:41 .Device_Events no_trigger
setstate MSW_Raspi_USB_Reset 2019-11-20 18:13:41 .First_init done


ich habe mir das angeschaut und kann nachvollziehen was du meinst.
Was mich wundert, ist das es bisher so ging da jetziges verhalten im grunde richtig ist .

nach 2 sekunden schaltet das device auf off ( wenn ich ein device auf off schalte - sollte erwartungsgemäss nichts mehr passieren - daher werden alle delays gelöscht ) Das ist das Standartverhalten - warum das verhalten sich geändert hat ist mir nocht nicht klar, aber das vorherige war dann definitiv falsch .

wenn du dieses verhalten ändern willst schalte das attribut 'MSwitch_Delete_Delays' bitte mal auf 0 . Damit werden bei schalten des devices vorhandene , verzögerte befehle nicht gelöscht und dann sollte das device sich (wieder) wie gewünscht verhalten.

Sei doch bitte so gut und gib mir kurz bescheid ob es dann passt .

gruss thomas

PS: mit einer der kommenden Versionen werde ich die rawdefinition gleich zusammen mit der Support-info ausliefern , so dass alle relevanten daten zusammen sind.
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 28 Dezember 2019, 10:33:01
Hallo Byte09,

Ich habe es jetzt Mal so eingestellt wie von dir vorgeschlagen und es klappt wieder. Also ich schalte den Schalter ab und durch das besagte Attribut wird die Befehlskette trotzdem voll abgearbeitet.

Dankeschön!

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 30 Dezember 2019, 20:00:46
Hallo Byte09,

bekomme ich es bei einem FreeCMD hin, einen Wert zu formatieren?

z.B bekomme ich die Rückmeldung bei Befehl testen:


augeführter Befehl: {fhem("set ECHO_G2A0P30883770DRP speak Die Temperatur im Schlafzimmer beträgt [THGR122NX_1_SZ:temperature:d] Grad bei einer Luftfeuchtigkeit von [THGR122NX_1_SZ:humidity] Prozent")}


Der fett markierte Teil enthält eine Temperatur 20.4 und wird so vorgelesen: ... zwanzigster vier Grad ...

Wenn ich den Wert [THGR122NX_1_SZ:temperature:d] per RegEx in einen Wert mit Komma wandeln könnte, wär es glaub ich gegessen ...

Wie ginge dies?
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 Dezember 2019, 20:34:41
Zitat von: Panik am 30 Dezember 2019, 20:00:46
Hallo Byte09,

bekomme ich es bei einem FreeCMD hin, einen Wert zu formatieren?

z.B bekomme ich die Rückmeldung bei Befehl testen:


augeführter Befehl: {fhem("set ECHO_G2A0P30883770DRP speak Die Temperatur im Schlafzimmer beträgt [THGR122NX_1_SZ:temperature:d] Grad bei einer Luftfeuchtigkeit von [THGR122NX_1_SZ:humidity] Prozent")}


Der fett markierte Teil enthält eine Temperatur 20.4 und wird so vorgelesen: ... zwanzigster vier Grad ...

Wenn ich den Wert [THGR122NX_1_SZ:temperature:d] per RegEx in einen Wert mit Komma wandeln könnte, wär es glaub ich gegessen ...

Wie ginge dies?

das geht sicher , aber da es egal ist wo du letztendlich die umrechnung / unformatierung machst ist hier m.E der bessere weg, dieses direkt im temperatsensor per userreading zu erledigen und sich dieses vorlesen zu lassen. So mache ich es jedenfalls mit meinen sensoren .

formattemp:.* {my @test = split (/\./,ReadingsVal( $name, 'Temperatur', '00.00' ));return $test[0]." komma ".$test[1];},

natürlich könntest du diese 'umrechnung' auch im freecmd als erstes erledigen und sich dann das ergebniss vorlesen lassen, hale ich aber für die Lösung zweiter wahl.

gruss thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 31 Dezember 2019, 09:06:54
Hallo Byte09,

ja so klappt es. Habe den Sensoren ein extra Reading verpasst.

Danke und guten Rutsch!

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 04 Januar 2020, 18:50:02
Funktionsänderung mit kommendem Update auf V3.0.

nachdem ich heute eine erste ( teilweise ) funktionsfähige Modulversion incl. des angekündigten wizards in das GIT gestellt habe werde ich mich erstmal mit einer Funktionsänderung beschftigen, bevor ich mich weiter mit den angekündigten Erweiterungen beschäftige.

konkret geht es um die MSWitch_Extensions.

auszug Wiki:

MSwitch_Extensions (0:1)
Zitat
Es wird eine zusätzliche Schaltoption 'MSwitchToggle' in den Geräten angeboten. Diese kann genutzt werden, wenn zuschaltende Geräte eine Togglefunktion nicht von Haus aus anbieten.

Eine Angabe muss in folgendem Format gemacht werden:

    on/off/state/suchmuster1/suchmuster2, wobei die letzten drei Angaben optional sind.

Funktion: Bei Ausführung des Befehls wird das Gerät 'on' oder 'off' geschaltet (on/off), Voraussetzung ist, dass der 'state' dieses Gerätes auch den 'state on' oder 'off' annimmt. Sollte dieses nicht der Fall sein, so kann mit dem Feld 'state' angegeben werden, in welchem Reading der aktuelle Status vorkommt und wie dieser lautet (suchmuster1/suchmuster2). Dieses 'state' kann mehrere Angaben enthalten, das Vorkommen der Suchmuster ist aber Voraussetzung.

Nachdem ich heute in einem Thread über ein Thema gestolpert bin , bei dem ich versuchen wollte das mit MSwitch einfach umzusetzen musste ich feststellen, das diese Funktion dafür nicht ausgelegt ist ( und eine Umsetzung hier zwar machbar ist, aber deutlich aufwendiger ).

Insofern werde ich diese Funktion grundlegend ändern, so dass nicht (wie bisher) nur ein togglen von 2 Zuständen möglich ist , sondern durch beliebig viele Zustände geschaltet werden kann.

die neue Syntax wird dann wie folgt lauten :

[befehl1,befehl2,befehlx]:(optional)[suchmuster1,suchmuster2,suchmusterx]:(optional)[reading]

[befehl1,befehl2,befehlx] - die Befehle die in der Reihenfolge bei jeder awktivierung 'durchgeschaltet' werden

[suchmuster1,suchmuster2,suchmusterx] - bildet den zugehörigen status eines readings ab , falls unterschiedlich zum gesetzten Befehl und das schalten nicht den state eines devices betrifft ( setlist)

[reading] - Namedes Readings dessen Status betroffen ist.

zum einfachen togglen zwischen on und off würde hier folgende Angabe reichen :
[on,off]

Da ich davon ausgehe, das diese Funktion im Grunde nicht oder sehr selten genutzt wird werde ich hier keine automatischa Anpassung der alten Syntax vornehmen.d.H es wir ein manueller Eingriff erforderlich , falls diese Funktion eingesetzt ist.

Kommen wird diese Änderung mit der Versionsnummer 3.0 im SVN . Wird aber sicherlich noch ein paar Tage dauern.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: MarkusHiba am 05 Januar 2020, 01:21:31
Hallo Byte09,

gesundes Neues Jahr erstmal.

Ich habe mich nochmal mit der Brandmeldeanlage auf meinem Testsystem beschäftigt und hoffe du könntest mir helfen.
Ich habe im Anhang eine Word Datei wo ich mir Gedanken gemacht habe welche Voraussetzungen bzw. was für Ablauf die Brandmeldeanlage haben sollte.
Wie könnte ich das alles mit MSwitch umsetzen? Funktioniert das damit?

Vielleicht könnte man vieles einfacher machen.

Grüße MarkusHiba
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 05 Januar 2020, 07:17:52
Zitat von: MarkusHiba am 05 Januar 2020, 01:21:31
Hallo Byte09,

gesundes Neues Jahr erstmal.

Ich habe mich nochmal mit der Brandmeldeanlage auf meinem Testsystem beschäftigt und hoffe du könntest mir helfen.
Ich habe im Anhang eine Word Datei wo ich mir Gedanken gemacht habe welche Voraussetzungen bzw. was für Ablauf die Brandmeldeanlage haben sollte.
Wie könnte ich das alles mit MSwitch umsetzen? Funktioniert das damit?

Vielleicht könnte man vieles einfacher machen.

Grüße MarkusHiba

Hi Markus,

habe es eben nur mal überflogen- müsste mich aber länger damit beschäftigen.

Ich fahre heute aber erstmal für 4 tage in den Kurzurlaub und komme erst am Mitwochj abend wieder.

Wenn ich wieder da bin können wir gerne danach schauen.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 06 Januar 2020, 20:54:54
Hi,
ich habe heute folgende Meldung im Log nach einem Fhem Neustart:
2020.01.06 20:50:01.537 1: PERL WARNING: Useless use of concatenation (.) or string in void context at ./FHEM/98_MSwitch.pm line 5102, <$fh> line 3128.
2020.01.06 20:50:01.538 1: stacktrace:
2020.01.06 20:50:01.538 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5102)
2020.01.06 20:50:01.539 1:     (eval)                              called by fhem.pl (2607)
2020.01.06 20:50:01.539 1:     (eval)                              called by fhem.pl (2606)
2020.01.06 20:50:01.539 1:     main::CommandReload                 called by fhem.pl (1998)
2020.01.06 20:50:01.540 1:     main::LoadModule                    called by fhem.pl (2055)
2020.01.06 20:50:01.540 1:     main::CommandDefine                 called by fhem.pl (1245)
2020.01.06 20:50:01.540 1:     main::AnalyzeCommand                called by fhem.pl (1098)
2020.01.06 20:50:01.540 1:     main::AnalyzeCommandChain           called by fhem.pl (1383)
2020.01.06 20:50:01.540 1:     main::CommandInclude                called by fhem.pl (609)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 06 Januar 2020, 21:07:35
hi,

schaue ich mir an, schaffe das aber erst am donnerstag.


gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 06 Januar 2020, 21:11:42
Kein Problem, vielen Dank
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 09 Januar 2020, 12:56:41
Hi,
mal eine ganz andere Frage:

Wie ist es eigentlich mit der Systemlast wenn man viele "mSwitche" erstellt? Was ist denn so eine durchschnittliche Anzahl?
So wie ich gelesen habe, soll DOIF das System wohl mehr belasten - oder?

Gruß
Hermann

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 09 Januar 2020, 13:15:42
Zitat von: hermann1514 am 09 Januar 2020, 12:56:41
Hi,
mal eine ganz andere Frage:

Wie ist es eigentlich mit der Systemlast wenn man viele "mSwitche" erstellt? Was ist denn so eine durchschnittliche Anzahl?
So wie ich gelesen habe, soll DOIF das System wohl mehr belasten - oder?

Gruß
Hermann

um ehrlich zu sein habe ich es nie in irgend einer art gemessen , da ich den Bedarf nicht wirklich sehe. Zeitkritische Anforderungen im zehntelsekundenbereich wird wohl kaum jemand nutzen .

Eine Vorfilterung , ob das Modul ( device ) überhaupt angesprochen wird findet ja bereitz durch die fhem.pl statt - hier wird das modul ja nur angesprochen , wenn eine Aktion durch MSwitch gefragt ist ( vorfilterung durch NOTIFYDEV) .

Im grossen und ganzen wird es wohl kein erheblichen Unterschied zwischen DOIF und MSwitch geben ( ungemessen ) .

in meinem Aktivsystem werkeln 122 Mswitch-Devices ( z.T. sehr komplex ) ... und ich habe keinerlei Systemlast -Probleme - auf Pi3

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 11 Januar 2020, 08:34:51
HalloByte09,

ich habe zwei Dinge, die Probleme beim Stringvergleich haben:

1.: Ich benutze das Modul daySchedule, um mit MSwitch tageszeitabhängige Dinge zu schalten.
Dort gibt es ein Reading Daytime. Es kann verschieden Zustände annehmen u.a. "Daytime:Früher Morgen" und "Daytime:Morgen"
Etliche Readings beinhalten Leerzeichen, die MSwitsh nicht richtig erkennt.
Weder die automatische Triggererkennung noch die manuelle können solche Readings mit Leerzeichen richtig aufbereiten.

2.: Beim Benutzen des echodevice-Moduls in MSwitch wollte ich eine Routine starten.
Der Schaltbefehl "routine_play" wird zwar angeboten, aber die Parameter dazu werden nicht genau so erkannt, wie es
das Modul selber tut. D.H. es fehlen 90% der Parameter in der DropDownList und die, die drin sind sind nicht vollständig.
Scheitert es da u.U. auch an der korrekten Erkennung?
In den Parametern kommen Sonderzeichen vor: @ . : _ -
Um überhaupt zu schalten muss ich FreeCMD benutzen und vor @ ein  \ setzen.

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Januar 2020, 08:41:16
Zitat von: Panik am 11 Januar 2020, 08:34:51
HalloByte09,

ich habe zwei Dinge, die Probleme beim Stringvergleich haben:

1.: Ich benutze das Modul daySchedule, um mit MSwitch tageszeitabhängige Dinge zu schalten.
Dort gibt es ein Reading Daytime. Es kann verschieden Zustände annehmen u.a. "Daytime:Früher Morgen" und "Daytime:Morgen"
Etliche Readings beinhalten Leerzeichen, die MSwitsh nicht richtig erkennt.
Weder die automatische Triggererkennung noch die manuelle können solche Readings mit Leerzeichen richtig aufbereiten.

2.: Beim Benutzen des echodevice-Moduls in MSwitch wollte ich eine Routine starten.
Der Schaltbefehl "routine_play" wird zwar angeboten, aber die Parameter dazu werden nicht genau so erkannt, wie es
das Modul selber tut. D.H. es fehlen 90% der Parameter in der DropDownList und die, die drin sind sind nicht vollständig.
Scheitert es da u.U. auch an der korrekten Erkennung?
In den Parametern kommen Sonderzeichen vor: @ . : _ -
Um überhaupt zu schalten muss ich FreeCMD benutzen und vor @ ein  \ setzen.

Hi Panik,

schaue ich mir beides an ,schaffe es aber wahrscheinlich erst morgen.

Ich habe beide Problene behoben ( hoffe ich ) und werde eine neue Testversion in das GIT stellen.
Diesen FIX kann ich nicht mehr in die aktuelle SVN Version einbringen , das ein Riesendurcheinander verursachen würde.
Insofern bitte heute abend ein update auf die GIT-Version machen , dann sollte es gehen


Gruss Thomas

Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 11 Januar 2020, 18:49:21
Hi,
ich habe grade diese Meldung im Log
2020.01.11 18:33:30.866 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 11315.
2020.01.11 18:33:30.867 1: stacktrace:
2020.01.11 18:33:30.867 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (11315)
2020.01.11 18:33:30.867 1:     main::MSwitch_sort                  called by ./FHEM/98_MSwitch.pm (4666)
2020.01.11 18:33:30.868 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:33:30.868 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:33:30.868 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:33:30.869 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:33:30.869 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:33:30.871 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4977.
2020.01.11 18:33:30.872 1: stacktrace:
2020.01.11 18:33:30.872 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (4977)
2020.01.11 18:33:30.873 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:33:30.873 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:33:30.873 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:33:30.874 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:33:30.874 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:33:30.874 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4977.
2020.01.11 18:38:14.104 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4999.
2020.01.11 18:38:14.105 1: stacktrace:
2020.01.11 18:38:14.105 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (4999)
2020.01.11 18:38:14.105 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.106 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.106 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.107 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.107 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.107 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 4999.
2020.01.11 18:38:14.108 1: stacktrace:
2020.01.11 18:38:14.108 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (4999)
2020.01.11 18:38:14.109 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.109 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.110 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.110 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.110 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.111 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5006.
2020.01.11 18:38:14.112 1: stacktrace:
2020.01.11 18:38:14.112 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5006)
2020.01.11 18:38:14.112 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.113 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.113 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.114 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.114 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.115 1: PERL WARNING: Use of uninitialized value within %savedetails in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5007.
2020.01.11 18:38:14.115 1: stacktrace:
2020.01.11 18:38:14.115 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5007)
2020.01.11 18:38:14.116 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.116 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.117 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.117 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.118 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.119 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5375.
2020.01.11 18:38:14.120 1: stacktrace:
2020.01.11 18:38:14.120 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5364)
2020.01.11 18:38:14.121 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.122 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.122 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.122 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.123 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.123 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_MSwitch.pm line 5375.
2020.01.11 18:38:14.124 1: stacktrace:
2020.01.11 18:38:14.124 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5364)
2020.01.11 18:38:14.125 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.125 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.125 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.126 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.126 1:     main::CallFn                        called by fhem.pl (756)
2020.01.11 18:38:14.141 1: PERL WARNING: Use of uninitialized value within %savedetails in string eq at ./FHEM/98_MSwitch.pm line 5478.
2020.01.11 18:38:14.142 1: stacktrace:
2020.01.11 18:38:14.142 1:     main::__ANON__                      called by ./FHEM/98_MSwitch.pm (5478)
2020.01.11 18:38:14.143 1:     main::MSwitch_fhemwebFn             called by ./FHEM/01_FHEMWEB.pm (1490)
2020.01.11 18:38:14.143 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1134)
2020.01.11 18:38:14.144 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (583)
2020.01.11 18:38:14.144 1:     main::FW_Read                       called by fhem.pl (3761)
2020.01.11 18:38:14.145 1:     main::CallFn                        called by fhem.pl (756)
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Januar 2020, 19:12:22
welche modulversion läuft bei dr ?

aus dem svn oder aus dem GIt?

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Tommy82 am 11 Januar 2020, 19:53:53
Hi,
die Version 2.93 aus dem SVN
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 Januar 2020, 20:38:11
Zitat von: Tommy82 am 11 Januar 2020, 19:53:53
Hi,
die Version 2.93 aus dem SVN

ok , dann kann ich es mir erst morgen anschauen - sonst geht es hier bei mir durcheinander - habe auf meinem testsystem gerade die V3.0 beta und möchte das heute nicht mehr ändern.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 12 Januar 2020, 08:55:07
Zitat von: Tommy82 am 11 Januar 2020, 19:53:53
Hi,
die Version 2.93 aus dem SVN

habe mir das angeschaut, es handelt sich 'nur' um einen Log3 Aufruf, in dem es passieren kann, das eine Variable nicht definiert ist.

Verursacht zwr ( unter best. umständen ) eine Fehlermeldung , ist aber nicht kritisch - nur unschön.

Ich werde das in dieser Version nicht mehr korrigieren , in der kommenden Version ist es dann gefixed.

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 12 Januar 2020, 14:38:37
Hi Thomas,

ich vermisse bei den MSwitch-Devices die Liste mit den probably associated Devices. Es wäre schön, wenn du dies noch mit implementieren könntest.
Geht eigentlich ganz einfach (hoffe ich :) ): Bei Änderung der Device-Liste in MSwitch mit dem Befehl
setreading <name> associatedWith <Durch Komma oder Leerzeichen getrennte Liste von Gerätenamen>
das Reading "associatedWith"  für das MSwitch-Device mit der geänderten Device-Liste neu setzen und schon werden die entsprechenden Devices angezeigt und auch bei dem assoziierten Device erscheint ebenfalls das zugehörige MSwitch-Device in der "Probably associated with"-Liste.

Viele Grüße
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: khk123 am 12 Januar 2020, 15:12:51
Muss mich korrigieren. Anscheinend wurde die "Probably associated with"-Liste nur bei älteren MSwitch-Devices nicht angezeigt. Jedenfalls wird, nachdem ich bei diesen Devices nochmal auf den Button "Device speichern" gedrückt habe, jetzt auch die "Probably associated with"-Liste angezeigt. Auch das Trigger-Device wird korrekt mit angezeigt. Was allerdings nicht geht, sind Devices die in einem FreeCmd stehen. Gilt  auch für Devices, die in den Schaltbedingungen angesprochen werden.

Viele Grüße
Karlheinz
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 13 Januar 2020, 05:38:07
Hallo Byte09,

zu deiner Antwort 969:
Zitat
Ich habe beide Problene behoben ( hoffe ich ) und werde eine neue Testversion in das GIT stellen.
Diesen FIX kann ich nicht mehr in die aktuelle SVN Version einbringen , das ein Riesendurcheinander verursachen würde.
Insofern bitte heute abend ein update auf die GIT-Version machen , dann sollte es gehen

Ich hab es jetzt getestet und es funktioniert mit deiner Korrektur. Danke!
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 14 Januar 2020, 11:29:59
Mahlzeit,

ich mal wieder.
Ich würde gerne einen MSwitch anlegen der folgendes machen soll:

Wenn abends der Fernseher läuft sollen einige Lampen geschaltet werden. Aber:
Läuft der FFS vor 20 Uhr - soll nichts passieren.
Wird er um 20 Uhr oder später eingeschaltet, dann sollen die Lampen angehen
Wird er vor 20 Uhr angeschaltet und es ist dann irgendwann 20:00 - und der Fernseher läuft noch immer - dann sollen die Lampen angehen.

Ich dachte ich hätte es hinbekommen. Wenn der FFS nach 20 Uhr eingeschaltet wird, funktioniert auch alles. Nur wenn er vorher schon läuft und es ist dann 20 Uhr oder später....dann passiert nichts.

Hier mal die RAW Daten (ist eine Testumgebung mit Testgeräten und Test zeiten)

defmod lab_mswitch1 MSwitch lab_dummyffs  # lab_light1
attr lab_mswitch1 MSwitch_Debug 0
attr lab_mswitch1 MSwitch_Delete_Delays 1
attr lab_mswitch1 MSwitch_Eventhistory 0
attr lab_mswitch1 MSwitch_Expert 1
attr lab_mswitch1 MSwitch_Extensions 0
attr lab_mswitch1 MSwitch_Help 0
attr lab_mswitch1 MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr lab_mswitch1 MSwitch_Include_Devicecmds 1
attr lab_mswitch1 MSwitch_Include_MSwitchcmds 0
attr lab_mswitch1 MSwitch_Include_Webcmds 0
attr lab_mswitch1 MSwitch_Inforoom MSwitch_Devices
attr lab_mswitch1 MSwitch_Lock_Quickedit 1
attr lab_mswitch1 MSwitch_Mode Notify
attr lab_mswitch1 MSwitch_Safemode 1
attr lab_mswitch1 disable 0
attr lab_mswitch1 room !dummy,MSwitch_Devices

setstate lab_mswitch1 active
setstate lab_mswitch1 2020-01-14 10:34:39 .Device_Affected lab_light1-AbsCmd1
setstate lab_mswitch1 2020-01-14 11:19:22 .Device_Affected_Details lab_light1-AbsCmd1#[NF]on#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][11#[dp]21-11#[dp]25]#[NF]#[NF]5#[NF]10#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate lab_mswitch1 2020-01-14 11:24:05 .Device_Events state:on#[tr]no_trigger#[tr]state:off
setstate lab_mswitch1 2020-01-14 10:30:32 .First_init done
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_off state:off
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_on state:on
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_condition
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_off no_trigger
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_on no_trigger
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_time
setstate lab_mswitch1 2020-01-14 10:30:32 .V_Check V2.00
setstate lab_mswitch1 2020-01-14 11:24:05 EVENT state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTFULL lab_dummyffs:state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART1 lab_dummyffs
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART2 state
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART3 off
setstate lab_mswitch1 2020-01-14 10:31:55 Trigger_device lab_dummyffs
setstate lab_mswitch1 2020-01-14 10:34:25 Trigger_log off
setstate lab_mswitch1 2020-01-14 11:24:05 last_activation_by event
setstate lab_mswitch1 2020-01-14 11:22:57 last_cmd 1
setstate lab_mswitch1 2020-01-14 11:24:05 last_event state:off
setstate lab_mswitch1 2020-01-14 11:22:57 last_exec_cmd set lab_light1 on
setstate lab_mswitch1 2020-01-14 11:24:05 state active


Habe ich da noch einen Fehler?

Gruß
Hermann






Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 14 Januar 2020, 11:54:58
Zitat von: hermann1514 am 14 Januar 2020, 11:29:59
Mahlzeit,

ich mal wieder.
Ich würde gerne einen MSwitch anlegen der folgendes machen soll:

Wenn abends der Fernseher läuft sollen einige Lampen geschaltet werden. Aber:
Läuft der FFS vor 20 Uhr - soll nichts passieren.
Wird er um 20 Uhr oder später eingeschaltet, dann sollen die Lampen angehen
Wird er vor 20 Uhr angeschaltet und es ist dann irgendwann 20:00 - und der Fernseher läuft noch immer - dann sollen die Lampen angehen.

Ich dachte ich hätte es hinbekommen. Wenn der FFS nach 20 Uhr eingeschaltet wird, funktioniert auch alles. Nur wenn er vorher schon läuft und es ist dann 20 Uhr oder später....dann passiert nichts.

Hier mal die RAW Daten (ist eine Testumgebung mit Testgeräten und Test zeiten)

defmod lab_mswitch1 MSwitch lab_dummyffs  # lab_light1
attr lab_mswitch1 MSwitch_Debug 0
attr lab_mswitch1 MSwitch_Delete_Delays 1
attr lab_mswitch1 MSwitch_Eventhistory 0
attr lab_mswitch1 MSwitch_Expert 1
attr lab_mswitch1 MSwitch_Extensions 0
attr lab_mswitch1 MSwitch_Help 0
attr lab_mswitch1 MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr lab_mswitch1 MSwitch_Include_Devicecmds 1
attr lab_mswitch1 MSwitch_Include_MSwitchcmds 0
attr lab_mswitch1 MSwitch_Include_Webcmds 0
attr lab_mswitch1 MSwitch_Inforoom MSwitch_Devices
attr lab_mswitch1 MSwitch_Lock_Quickedit 1
attr lab_mswitch1 MSwitch_Mode Notify
attr lab_mswitch1 MSwitch_Safemode 1
attr lab_mswitch1 disable 0
attr lab_mswitch1 room !dummy,MSwitch_Devices

setstate lab_mswitch1 active
setstate lab_mswitch1 2020-01-14 10:34:39 .Device_Affected lab_light1-AbsCmd1
setstate lab_mswitch1 2020-01-14 11:19:22 .Device_Affected_Details lab_light1-AbsCmd1#[NF]on#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][11#[dp]21-11#[dp]25]#[NF]#[NF]5#[NF]10#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate lab_mswitch1 2020-01-14 11:24:05 .Device_Events state:on#[tr]no_trigger#[tr]state:off
setstate lab_mswitch1 2020-01-14 10:30:32 .First_init done
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_off state:off
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_on state:on
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_condition
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_off no_trigger
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_on no_trigger
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_time
setstate lab_mswitch1 2020-01-14 10:30:32 .V_Check V2.00
setstate lab_mswitch1 2020-01-14 11:24:05 EVENT state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTFULL lab_dummyffs:state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART1 lab_dummyffs
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART2 state
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART3 off
setstate lab_mswitch1 2020-01-14 10:31:55 Trigger_device lab_dummyffs
setstate lab_mswitch1 2020-01-14 10:34:25 Trigger_log off
setstate lab_mswitch1 2020-01-14 11:24:05 last_activation_by event
setstate lab_mswitch1 2020-01-14 11:22:57 last_cmd 1
setstate lab_mswitch1 2020-01-14 11:24:05 last_event state:off
setstate lab_mswitch1 2020-01-14 11:22:57 last_exec_cmd set lab_light1 on
setstate lab_mswitch1 2020-01-14 11:24:05 state active


Habe ich da noch einen Fehler?

Gruß
Hermann
Ich schaue mir das heute abend an.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 20 Januar 2020, 19:18:28
Hey Thomas,
konntest du schonmal schauen ob ich da einen Fehler drin habe?
Gruß Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 Januar 2020, 19:33:00
Zitat von: hermann1514 am 20 Januar 2020, 19:18:28
Hey Thomas,
konntest du schonmal schauen ob ich da einen Fehler drin habe?
Gruß Hermann
sorry ich habe dich schlicht und einfach vergessen.

ich schaue es mir jetzt an.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 20 Januar 2020, 19:43:52
@hermann1514 ,


ich habe dir eine PM geschickt.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 26 Januar 2020, 18:40:57
Hallo Byte09

ist eigentlich irgendwie so ein Konstrukt bei Auslösendes Gerät und/oder Zeit Auslösezeit möglich:

[weckzeit_beginn1:state|!$we]

Der Dummy enthält weckzeit_beginn1 HH:MM wie z.B. 05:10

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 Januar 2020, 18:51:11
Zitat von: Panik am 26 Januar 2020, 18:40:57
Hallo Byte09

ist eigentlich irgendwie so ein Konstrukt bei Auslösendes Gerät und/oder Zeit Auslösezeit möglich:

[weckzeit_beginn1:state|!$we]

Der Dummy enthält weckzeit_beginn1 HH:MM wie z.B. 05:10
Ist grundsätzlich möglich, aber das mswirch muss sich selber triggern, wenn sich das reading ändert um die timer neu zu setzen.

ich sitze gerade in der tollen deutschen Bahn und poste dir ein beispiel wenn ich zu hause bin.

gruss thomas

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 26 Januar 2020, 20:14:20

@Panik

anbei mal die rawdefinition eines dummys und eines MSwitches, was deine Anforderung erfüllt.
schau mal ob du durchsteigst, sonst einfach nochmal melden.

wichtig : Wenn du auszuführende Befehle angiebst darauf achten , das du den BEfehl für MSwitch_Self nicht löschst.

die Angabe in der Zeit geht nicht per setmagic wie von dir angefragt, sondern hier muss perlcode verwendet werden .
[{ReadingsVal("Zeitgeber","zeit",0)}|$we]

je nach anwendung muss es auch kein externer Dummy sein , man könnte dieses reading auch direkt im MSwitch integrieren.

gruss Thomas


defmod flextime MSwitch Zeitgeber # MSwitch_Self
attr flextime MSwitch_Debug 1
attr flextime MSwitch_Delete_Delays 1
attr flextime MSwitch_Event_Id_Distributor zeit:.*=>cmd1 ID 1\

attr flextime MSwitch_Expert 1
attr flextime MSwitch_Extensions 0
attr flextime MSwitch_Help 1
attr flextime MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr flextime MSwitch_Include_Devicecmds 1
attr flextime MSwitch_Include_MSwitchcmds 0
attr flextime MSwitch_Include_Webcmds 0
attr flextime MSwitch_Inforoom MSwitch
attr flextime MSwitch_Lock_Quickedit 1
attr flextime MSwitch_Mode Notify
attr flextime MSwitch_generate_Events 1
attr flextime room 01_Zeiten

defmod Zeitgeber dummy
attr Zeitgeber readingList zeit
attr Zeitgeber room 01_Zeiten
attr Zeitgeber setList zeit:time
attr Zeitgeber stateFormat zeit
attr Zeitgeber webCmd zeit

setstate Zeitgeber 23:40
setstate Zeitgeber 2020-01-26 19:29:01 state zeit 08:05
setstate Zeitgeber 2020-01-26 20:08:32 zeit 23:40

setstate flextime active
setstate flextime 2020-01-26 20:06:42 .Device_Affected MSwitch_Self-AbsCmd1
setstate flextime 2020-01-26 20:08:11 .Device_Affected_Details MSwitch_Self-AbsCmd1#[NF]reload_timer#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[NF]1
setstate flextime 2020-01-26 20:08:32 .Device_Events no_trigger#[tr]zeit:.*
setstate flextime 2020-01-26 19:32:09 .First_init done
setstate flextime 2020-01-26 20:08:43 .Trigger_Whitelist undef
setstate flextime 2020-01-26 20:06:30 .Trigger_cmd_off no_trigger
setstate flextime 2020-01-26 20:06:30 .Trigger_cmd_on zeit:.*
setstate flextime 2020-01-26 20:08:43 .Trigger_condition
setstate flextime 2020-01-26 20:06:30 .Trigger_off no_trigger
setstate flextime 2020-01-26 20:06:30 .Trigger_on no_trigger
setstate flextime 2020-01-26 20:08:43 .Trigger_time on~off~ononly[{ReadingsVal("Zeitgeber","zeit",0)}|$we]~offonly~onoffonly
setstate flextime 2020-01-26 19:32:09 .V_Check V2.00
setstate flextime 2020-01-26 19:32:09 .sysconf undef
setstate flextime 2020-01-26 20:08:32 EVENT zeit:23:40
setstate flextime 2020-01-26 20:08:32 EVTFULL zeit:23:40
setstate flextime 2020-01-26 20:08:32 EVTPART1 zeit
setstate flextime 2020-01-26 20:08:32 EVTPART2 23
setstate flextime 2020-01-26 20:08:32 EVTPART3 40
setstate flextime 2020-01-26 19:32:09 Sys_Extension undef
setstate flextime 2020-01-26 20:08:43 Trigger_device Zeitgeber
setstate flextime 2020-01-26 20:06:30 Trigger_log off
setstate flextime 2020-01-26 20:08:32 last_activation_by event
setstate flextime 2020-01-26 20:08:32 last_cmd 1
setstate flextime 2020-01-26 20:08:32 last_event zeit:23:40
setstate flextime 2020-01-26 20:08:32 last_exec_cmd set flextime reload_timer
setstate flextime 2020-01-26 20:06:00 state active

Titel: Antw:98_MSwitch - Support
Beitrag von: Panik am 27 Januar 2020, 05:35:25
Danke, Thomas !

Ich muss jetzt mal schauen, wie sich das mit meinen Experimenten deckt und wo ich nachbessern muss.

Danke nochmal!

Panik
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 27 Januar 2020, 09:25:40
Zitat von: hermann1514 am 14 Januar 2020, 11:29:59
Mahlzeit,

ich mal wieder.
Ich würde gerne einen MSwitch anlegen der folgendes machen soll:

Wenn abends der Fernseher läuft sollen einige Lampen geschaltet werden. Aber:
Läuft der FFS vor 20 Uhr - soll nichts passieren.
Wird er um 20 Uhr oder später eingeschaltet, dann sollen die Lampen angehen
Wird er vor 20 Uhr angeschaltet und es ist dann irgendwann 20:00 - und der Fernseher läuft noch immer - dann sollen die Lampen angehen.

Ich dachte ich hätte es hinbekommen. Wenn der FFS nach 20 Uhr eingeschaltet wird, funktioniert auch alles. Nur wenn er vorher schon läuft und es ist dann 20 Uhr oder später....dann passiert nichts.

Hier mal die RAW Daten (ist eine Testumgebung mit Testgeräten und Test zeiten)

defmod lab_mswitch1 MSwitch lab_dummyffs  # lab_light1
attr lab_mswitch1 MSwitch_Debug 0
attr lab_mswitch1 MSwitch_Delete_Delays 1
attr lab_mswitch1 MSwitch_Eventhistory 0
attr lab_mswitch1 MSwitch_Expert 1
attr lab_mswitch1 MSwitch_Extensions 0
attr lab_mswitch1 MSwitch_Help 0
attr lab_mswitch1 MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr lab_mswitch1 MSwitch_Include_Devicecmds 1
attr lab_mswitch1 MSwitch_Include_MSwitchcmds 0
attr lab_mswitch1 MSwitch_Include_Webcmds 0
attr lab_mswitch1 MSwitch_Inforoom MSwitch_Devices
attr lab_mswitch1 MSwitch_Lock_Quickedit 1
attr lab_mswitch1 MSwitch_Mode Notify
attr lab_mswitch1 MSwitch_Safemode 1
attr lab_mswitch1 disable 0
attr lab_mswitch1 room !dummy,MSwitch_Devices

setstate lab_mswitch1 active
setstate lab_mswitch1 2020-01-14 10:34:39 .Device_Affected lab_light1-AbsCmd1
setstate lab_mswitch1 2020-01-14 11:19:22 .Device_Affected_Details lab_light1-AbsCmd1#[NF]on#[NF]no_action#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][11#[dp]21-11#[dp]25]#[NF]#[NF]5#[NF]10#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0
setstate lab_mswitch1 2020-01-14 11:24:05 .Device_Events state:on#[tr]no_trigger#[tr]state:off
setstate lab_mswitch1 2020-01-14 10:30:32 .First_init done
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_off state:off
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_cmd_on state:on
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_condition
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_off no_trigger
setstate lab_mswitch1 2020-01-14 10:34:25 .Trigger_on no_trigger
setstate lab_mswitch1 2020-01-14 10:31:55 .Trigger_time
setstate lab_mswitch1 2020-01-14 10:30:32 .V_Check V2.00
setstate lab_mswitch1 2020-01-14 11:24:05 EVENT state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTFULL lab_dummyffs:state:off
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART1 lab_dummyffs
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART2 state
setstate lab_mswitch1 2020-01-14 11:24:05 EVTPART3 off
setstate lab_mswitch1 2020-01-14 10:31:55 Trigger_device lab_dummyffs
setstate lab_mswitch1 2020-01-14 10:34:25 Trigger_log off
setstate lab_mswitch1 2020-01-14 11:24:05 last_activation_by event
setstate lab_mswitch1 2020-01-14 11:22:57 last_cmd 1
setstate lab_mswitch1 2020-01-14 11:24:05 last_event state:off
setstate lab_mswitch1 2020-01-14 11:22:57 last_exec_cmd set lab_light1 on
setstate lab_mswitch1 2020-01-14 11:24:05 state active


Habe ich da noch einen Fehler?

Gruß
Hermann

wenn es soweit funktioniert passt es ja soweit schonmal.

jetzt solltest du in der schaltbedingung ( wo in deinem device [11:21-11:25] steht ) als bedingung noch einfügen , das der fernseher an sein soll ... AND [Fernseher:on] natürlich auf dein devicename .

dann lässt du den CMD-Zweig 1 noch (zusätzlich zu vorhandenem trigger ) um 20 Uhr ausführen und das sollte es gewesen sein.

Wenn du nicht klar kommst ruf mich einfach an , ich habe die Woche Urlaub. Meine Nummer hast du ja - glaube ich.

jetzt
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 Januar 2020, 06:32:20
Zitat von: Byte09 am 23 Dezember 2019, 08:39:19
Derzeit arbeite ich an V3.0 des Moduls.
In dieser Version wird wenig am Funktionsumfang des Modul an sich geändert, sondern ich versuche hier hauptsächlich die Bedienbarkeit zu verbessern.

bis zum Update wird es zwar wohl noch einige Tage dauern aber folgende Neuerungen sind vorgesehen :

- ( fertig ) Rename des Devices direkt aus der Webansicht - evtl. überprüfung von Abhängigkeiten
- ( fertig ) eingebauter Eventmonitor mit direkter übernahme der Events in entsprechende Dropdownfelder ( kein Reload der Seite mehr notwendig )
- ( in Arbeit fertig) Liveansicht des Debugmonitors - kein Reload der Seite mehr erforderlich - Modulaktivitäten werden live angezeigt
- ( geplant ) Importmöglichkeit von Notifys
- ( in Arbeit ) Importmöglichkeit von AT's
- ( in Arbeit ) Vereinfachte Grundkonfiguration in Form eines Wizards
- ( geändert ) Änderung Inforoom Ansicht

Folgende mal angedachte Features habe ich verworfen und werde bereits integrierten Code entfernen

- ( verworfen ) komplette Einrichtung des Devices über eine Definition ( define DEVICE MSwitch ... ... ... )

Ich werde diese Liste hier aktualisiern und ggf. Zwischenversionen in das GIT laden. Aktuelle GITversionen werde ich hier eintragen

aktuelle GITversion :
- 2.92 veraltet
- 3.01 alpha
- 3.02 alpha
- MSwitch 3.02 alpha / wizard 0.3 beta
- MSwitch 3.02 alpha / wizard 0.5 beta


Wenn spezielle Wünsche für diese Version bestehen könnt Ihr die hier gerne posten - ich schaue dann ob es in meinen Augen Sinn macht und umsetzbar ist.


Gruss Byte09

Ich werde zum Wochenende die SVN Version des Moduls auf V3.0 ändern.
Angekündigte Änderungen sind in dieser Version umgesetzt.

- zusätlich wurde bei der Konfiguration ein Live-Eventmonitor eingefügt um Events direkt zu übernehmen.
- änderung der togglefunktion
- diverse kleinere Änderungen
- komplette Überarbeitung der Möglichkeit des Einspielens von vorkonfigurierten Devices. Bisherige Möglichkeit wurde komplett entfernt, das einspielen ist nun über den Wizard möglich. Hierbei wird direkt auf den aktuellsten Preconfigfile im GitHub zugegriffen. Das macht es mir einfacher, diese vorkonfigurierten Devices aktuell zu halten.

Der Konfigurationsmode (Wizard) benötigt eine zusätzliche .js datei. Entsprechendes Update erfolgt automatisch.

Die neue Version ist abwärtskompatibel

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 30 Januar 2020, 11:29:33
Ich habe gerade die Modulversion 3.0 in das GIT gestellt:

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

mit morgigem update wird diese Version auch über das SVN ausgeliefert.

Aus 'Sicherheitsgründen' sind noch einige Funktionen im Wizard deaktiviert. Diese werde ich nach und nach akivieren.

Der Wizardmode steht nur in neu angelegten Devices zur verfügung. Sobald an einem neuen Device eine Änderung gespeichert wurde ist dieser Mode nicht mehr verfügbar.

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: 87insane am 30 Januar 2020, 12:01:33
Hey und Danke Byte09!

Ich schaue immer wieder in dein Modul und teste fleißig. Gerade der neue Wizard ist echt genial für Anfänger in dem Modul. Echt Spitze! Danke für deine Mühen!

Gruß,
Kai
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 31 Januar 2020, 10:44:54
Hi,
habe mir gerade die aktuelle Version vom mswitch aus dem Master gezogen.

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

Ich kann den Wizard leider nicht aufrufen.

Neuen mSwitch erstellt, dann kommt kurz ein Fenster was schnell weg ist und dann kann ich AT's oder doifs importieren - der Wizard ist aber N/A.
Ich habe fhem aktualisiert und auch schon neu gestartet.

Version_Modul 3.0

Gruß
Hermann


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 01 Februar 2020, 09:30:17
Guten Morgen,

ich habe den wizard noch nicht aktiviert da ich bis Ende komme der Woche beruflich unterwegs bin und nicht riskieren möchte das in der Zeit gravierende Fehler auftauchen... und ich nicht die Zeit habe diese zu beheben.

gruss Byte09

Gesendet von meinem ELE-L29 mit Tapatalk

Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 23 Februar 2020, 19:30:02
Update auf V3.02 mit morgigem Update

Änderung debugmode :
Bei Mode 3 des Debugmodes bleiben nun die Testfelder ( condition etc. ) aktiv.

Neues Attribut MSwitch_setList ( in allen Modis ):

dieses kann zusätzlich zur Setlist oder alleinstehend belegt werden. Hier besteht die Möglichkeit eine setList dynamisch zu belegen.

[TYPE=dummy]:on,off

macht alle dummys per Dropdownlist verfügbar - für jeden dieser dummys wird ein gleichlautendes reading angelegt, welches die schaltoptionen on und off besitzt

status:[TYPE=dummy]

erzeugt in der Dropdownliste den Eintrag status mit allen dummys als auswahloption verfügbar - hier muss zusätzlich die readinglist mit 'status' belegt werden , andernfalls wird der state besetzt.

gruss Byte09


Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 11 März 2020, 17:02:09
Folgende Funktionen werde ich mit der kommenden Version wieder deaktivieren:

- Konfigurationswizard
- import AT
- import Notify

in diesem Mode bleiben dann folgende Funktionen erhalten

- import Preconfig
- import MSwitch_Config

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 28 März 2020, 17:06:38
info:


das Modul wird ab sofort nicht mehr über das FHEM SVN verteilt und steht somit bei Neuinstallation nicht automatisch zur Verfügung.

Eine Installation muss manuell über GitHub erfolgen.

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: hermann1514 am 28 März 2020, 22:57:46
Hi.
Darf man fragen was der Grund dafür ist?

Wird das Modul noch weiterentwickelt?

Gruss
Hermann
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 29 März 2020, 06:30:13
Abgesehen davon, dass es mich auch interessieren würde warum viele (einige) Entwickler diesen Schritt gehen, kommt beim Update leider ein Fehler

2020.03.29 06:26:24 1 : Downloading https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
2020.03.29 06:26:24 1 :
2020.03.29 06:26:24 1 : mswitch
2020.03.29 06:26:24 1 : UPD FHEM/98_MSwitch.pm
2020.03.29 06:26:24 1 : Got 422621 bytes for FHEM/98_MSwitch.pm, expected 419535
2020.03.29 06:26:24 1 : aborting.


Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 März 2020, 08:16:09
Zitat von: Wolle02 am 29 März 2020, 06:30:13
Abgesehen davon, dass es mich auch interessieren würde warum viele (einige) Entwickler diesen Schritt gehen, kommt beim Update leider ein Fehler

2020.03.29 06:26:24 1 : Downloading https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt
2020.03.29 06:26:24 1 :
2020.03.29 06:26:24 1 : mswitch
2020.03.29 06:26:24 1 : UPD FHEM/98_MSwitch.pm
2020.03.29 06:26:24 1 : Got 422621 bytes for FHEM/98_MSwitch.pm, expected 419535
2020.03.29 06:26:24 1 : aborting.


Gruß
Wolle

ups, danke für den hinweis - ich korrigiere das .

gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: Byte09 am 29 März 2020, 08:18:49
Zitat von: hermann1514 am 28 März 2020, 22:57:46
Hi.
Darf man fragen was der Grund dafür ist?

Wird das Modul noch weiterentwickelt?

Gruss
Hermann

ja, ich werde das Modul weiterentwickeln ( ich nutze ja nichts anderes  ;) - daher schon aus Eigeninteresse ) .

Zu den Gründen möchte ich mich hier nicht auslassen.

Gruss Byte09
Titel: Antw:98_MSwitch - Support
Beitrag von: 87insane am 29 März 2020, 10:03:11
Nach wie vor ist die Unterstützung etwas gering. Ich selber finde das Modul super und gerade für "Anfänger" oder aber auch fortgeschrittene Personen ohne große Programmier-Ahnung = genial!
Ich werde nach und nach versuchen alles über das Modul um zu setzen. Allerdings fehlt mir aktuell schlicht weg die Zeit. Ich kann es eigentlich nur jedem empfehlen, mal 30-60min zum gucken und versuchen in diesem Modul....

Viel Spaß und Gruß,
87insane
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 03 April 2020, 18:59:29
Tja, nu isser hier auch nicht mehr vertreten. Weiß jemand wie man Byte09 nun überhaupt noch kontaktieren kann?

So sehr ich dieses Modul auch toll finde, stelle ich mir gerade die Frage, ob ich unter diesen Vorzeichen überhaupt weitere MSwitche anlegen soll.
Titel: Antw:98_MSwitch - Support
Beitrag von: det. am 03 April 2020, 20:42:10
Zitat von: Wolle02 am 03 April 2020, 18:59:29
Tja, nu isser hier auch nicht mehr vertreten. Weiß jemand wie man Byte09 nun überhaupt noch kontaktieren kann?

So sehr ich dieses Modul auch toll finde, stelle ich mir gerade die Frage, ob ich unter diesen Vorzeichen überhaupt weitere MSwitche anlegen soll.
Mach mal ein Update mit dem Link aus dem Beitrag https://forum.fhem.de/index.php/topic,109602.0.html (https://forum.fhem.de/index.php/topic,109602.0.html)
Da gibt es zu Deiner Frage Infos.
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 18 April 2020, 12:03:35
Da ich mich im Grunde aus dem Forum zurückgezogen habe ( bzw. nur noch mitleser bin ) jetzt nur einmalig der Hinweis - da 90 % der Anwender noch die Version <= 3.0 nutzen

Die aktuelle Modulversion ist die V3.12
Datenstruktur V2.01

mit dieser Version sind gravierende Änderungen erfolgt , die eine Änderung aller gespeicherten Daten notwendig machen. Dieses passiert bei Update automatisch , allerdings nur mit der jetzt aktuellen Version.

sollte das Update auf diese Version nicht erfolgen , kann es sein das bei einem Update direkt auf eine höhere Version Devices nicht mehr funktionsfähig sind und eine manuelle Anpassung efolgen muss ( massgeblich ist hier die Datenstruktur 2.00 -> 2.01 )

auf zukünftige verfügbare Uptates wird ab dieser Version in den Internals hingewiesen, Supportinformationensind ebenfalls über die Internals verfügbar.

update über GiT -> siehe einen Post über diesem .

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 18 April 2020, 16:01:22
Hallo Thomas,

danke für die Weiterentwicklung Deines Moduls und die Info hier.

Wirst Du denn immer hier im Forum über neue Versionen informieren oder wie bekomme ich die Neuerungen mit?

Beste Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 18 April 2020, 16:11:48
Zitat von: ToKa am 18 April 2020, 16:01:22
Hallo Thomas,

danke für die Weiterentwicklung Deines Moduls und die Info hier.

Wirst Du denn immer hier im Forum über neue Versionen informieren oder wie bekomme ich die Neuerungen mit?

Beste Grüße
Torsten

Hi ToKa,

nein - ich habe mich aus dem Forum Komplett zurückgezogen.

Das Modul wird allerdings nachwievor weiterentwickelt.

Support per Mail Byte009@web.de oder in einer Whatsappgruppe ( link schicke ich dir per PM )

Ab der Version 3.12 wird im Modul selber über bereitstehende Updates informiert ( in den Internals )

gruss  Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 16 Mai 2020, 08:24:52
Da es leider immer noch Installationen gibt mit einer MSwitch-Version < 3 verweise ich nochmal auf diesen Beitrag:

https://forum.fhem.de/index.php/topic,86199.msg1043884.html#msg1043884 (https://forum.fhem.de/index.php/topic,86199.msg1043884.html#msg1043884)

Ende kommender Woche werde ich nochmal ein Update machen müssen , welches erneut die Datenstruktur ändert. Für installierte Versionen < 3.0 ist eine automatische Anpassung der gespeicherten Devices dann nicht mehr möglich - insofern ist dringend ein Update erforderlich !
Titel: 98_MSwitch - Support
Beitrag von: Der_Tom am 11 Oktober 2020, 11:52:55
Nachdem nun einige Zeit vergangen ist und , sagen wir mal , sich der Grund meines Entschlusses das Forum zu verlassen doch eher ... nunja ... relativiert hat , habe ich mich entschlossen , bei Bedarf zumindest hier wieder Support zu leisten .

Unabhängig davon bleibt der Whatsappchannel bestehen.

Das Modul wird aber nachwievor nur extern über GITHub verfügbar bleiben,  zumal ich sowieso u.A keinen Developerzugang mehr habe und keine SVN Rechte mehr besitze.

Gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 13 Oktober 2020, 17:13:51
Update auf V4.13 empfohlen.

Die Version 4.12 und kleiner enthält einen Fehler in der Bedingungsprüfung , der bei folgenden Ausdruck in den Bedingungen zum tragen kommt.

[ReadingsVal:$SELF:time1:0]

.. da diese Art Ausdruck in den Bedingungen nicht dokumentiert ist dürfte es vermutlich kaum aufgefallen sein.

Gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Beetle2003 am 18 Oktober 2020, 21:01:14
Guten Abend,

ich wollte mswitch nutzen um ein Lampe zum blinken zu bringen. Die Intervallzeit sollte 5 sec betragen.

Leider verstehe ich nicht, wie ich diese Blinkfunktion in mswitch einrichte.

Kann mir jemand helfen?

Danke
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 19 Oktober 2020, 06:05:42
Zitat von: Beetle2003 am 18 Oktober 2020, 21:01:14
Guten Abend,

ich wollte mswitch nutzen um ein Lampe zum blinken zu bringen. Die Intervallzeit sollte 5 sec betragen.

Leider verstehe ich nicht, wie ich diese Blinkfunktion in mswitch einrichte.

Kann mir jemand helfen?

Danke

im grunde gibt es da 100 wege. einen habe ich unten im bild mal angehangen. Hierzu muss das attribut rxpert auf 1 stehen , sonst ist die entsprechende option nicht vorhanden.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 19 Oktober 2020, 10:55:07
Ich werde heute abent ein template bauen und einspielen, mit dem du das einfach lösen kannst.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Beetle2003 am 19 Oktober 2020, 12:50:20
Zitat von: Der_Tom am 19 Oktober 2020, 10:55:07
Ich werde heute abent ein template bauen und einspielen, mit dem du das einfach lösen kannst.

gruss Thomas

Danke für das Angebot.
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 19 Oktober 2020, 18:19:01
Zitat von: Beetle2003 am 19 Oktober 2020, 12:50:20
Danke für das Angebot.

so , ich habe mal ein entsprechendes device gebaut . Leider komme ich heute nicht mehr dazu , daraus ein template zu machen .
D.H du musst es manuell einspielen und anpassen - ist aber kein akt.

Device anlegen
define DEVICE MSwitch wizard

danach klickst du auf "import config" und ersetzt den angezeigten code vollständig durch diesen code und klickst auf "Konfiguration speichern"

#V 4.13
#VS V2.01
#S Trigger_log -> on
#S last_activation_by -> manual
#S EVTPART2 -> offpulse
#S EVTPART1 -> MSwitch_Self
#S .Device_Affected -> FreeCmd-AbsCmd1,FreeCmd-AbsCmd2,MSwitch_Self-AbsCmd1
#S offpulse -> 0.5
#S .Trigger_cmd_off -> no_trigger
#S EVTPART3 -> 00
#S EVENT -> MSwitch_Self:offpulse:00
#S .V_Check -> V2.01
#S .Trigger_on -> no_trigger
#S last_event -> MSwitch_Self:offpulse:00
#S state -> off
#S .Trigger_off -> no_trigger
#S last_cmd -> 2
#S aktcount -> 0
#S .change_info  -> info fuer angeforderte deviceaenderung
#S .Trigger_cmd_on -> no_trigger
#S .Device_Events -> MSwitch_Self:onpulse:00 MSwitch_Self:offpulse:00 MSwitch_Self:onpulse:0.5
#S onpulse -> 0.5
#S EVTFULL -> MSwitch_Self:offpulse:00
#S .Device_Affected_Details -> FreeCmd-AbsCmd1#[NF]undefined#[NF]cmd#[NF]set DEINDEVICE on#[NF]set DEINDEVICE off#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF]#[NF]#[NF]0#[NF]0#[NF]2#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[ND]FreeCmd-AbsCmd2#[NF]undefined#[NF]cmd#[NF]{;;my $count = ReadingsVal($SELF,"aktcount",0);;;$count++;;;fhem("setreading $SELF aktcount ".$count);;;fhem("setreading $SELF last_activation_by auto");;;};;;;#[NF]{;;if (ReadingsVal($SELF,"last_activation_by","manual") eq "manual");;{;;fhem("setreading $SELF aktcount 0 ");;;};;;;my $count = ReadingsVal($SELF,"aktcount",0);;;;;if ($count eq ReadingsVal($SELF,"count",0));;{;;fhem("setreading $SELF aktcount 0 ");;;fhem ("set $SELF off");;;;;};;}#[NF]delay1#[NF]delay1#[NF]00:00:00#[NF]00:00:00#[NF][$SELF:count] ne "endless"#[NF][$SELF:count] ne "endless"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]1#[ND]MSwitch_Self-AbsCmd1#[NF]exec_cmd_2#[NF]exec_cmd_1#[NF]#[NF]#[NF]delay2#[NF]delay2#[NF][$SELF:onpulse]#[NF][$SELF:offpulse]#[NF][$SELF:state] eq "on"#[NF][$SELF:state] eq "on"#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]1
#S .First_init -> done
#S count -> 3
#S .sortby -> show
#S EVT_CMD1_COUNT -> 0
#A MSwitch_Include_Webcmds -> 0
#A MSwitch_Reset_EVT_CMD1_COUNT -> 5
#A MSwitch_Extensions -> 1
#A MSwitch_Mode -> Full
#A MSwitch_Delete_Delays -> 0
#A setList -> onpulse:0.5,00:00:01,00:00:02,00:00:03,00:00:04,00:00:05 offpulse:0.5,00:00:01,00:00:02,00:00:03,00:00:04,00:00:05 count:1,2,3,4,5,6,7,8,9,10,endless
#A webCmdLabel -> ::ontime:offtime:counter
#A MSwitch_Expert -> 1
#A MSwitch_Help -> 1
#A webCmd -> on:off:onpulse:offpulse:count
#A MSwitch_Safemode -> 1
#A MSwitch_Include_MSwitchcmds -> 0
#A MSwitch_Debug -> 0
#A MSwitch_generate_Events -> 0
#A MSwitch_Include_Devicecmds -> 1
#A MSwitch_Lock_Quickedit -> 1
#A MSwitch_Eventhistory -> 0
#A readingList -> onpulse offpulse count aktcount



jetzt solltest du das fertige device angezeigt bekommen und musst nur noch deine Lampe anpassen , d.H DEINDEVICE durch deinen Gerätenamen ersetzen und auf "speichern klicken "  ... das sollte es gewesen sein .

Einstellungen Blinkintervall und Anzahl danach im Frontend .

( siehe bild )

bei Fragen einfach melden .
ich will sehen , das ich es morgen schaffe ein Template daraus zu bauen.

gruss Thomas



Titel: Antw:98_MSwitch - Support
Beitrag von: dieter114 am 19 Oktober 2020, 18:48:09
Hallo Thomas,

ich verwende das Modul um eine Scrollende Tooltemperaturanzeige zu steuern,
Es funktioniert gut nur hatte ich ein Problem mit den einzelnen Einstellungen:
Wenn man aus Versehen eine Aktion aus einer Kette löscht, gibt es kein Zurück mehr.
Also wäre es schön wenn irgendwo ein "Löschen Rückgängig" oder wenigstens
die Möglichkeit dazu gegeben wäre.
Oder etwa "wollen sie wirklich löschen..."
Meine Einzelaktionen innerhalb der Ablaufkette sind schon recht Umfangreich
und jedes Mal alles wieder einzeln einzugeben ist einfach "lastig".

Soll nur als Anregung dienen.....

Gruß Wolfdieter
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 19 Oktober 2020, 19:20:34
Zitat von: dieter114 am 19 Oktober 2020, 18:48:09
Hallo Thomas,

ich verwende das Modul um eine Scrollende Tooltemperaturanzeige zu steuern,
Es funktioniert gut nur hatte ich ein Problem mit den einzelnen Einstellungen:
Wenn man aus Versehen eine Aktion aus einer Kette löscht, gibt es kein Zurück mehr.
Also wäre es schön wenn irgendwo ein "Löschen Rückgängig" oder wenigstens
die Möglichkeit dazu gegeben wäre.
Oder etwa "wollen sie wirklich löschen..."
Meine Einzelaktionen innerhalb der Ablaufkette sind schon recht Umfangreich
und jedes Mal alles wieder einzeln einzugeben ist einfach "lastig".

Soll nur als Anregung dienen.....

Gruß Wolfdieter

werde ich mir mal ansehen , ansonsten kennst du die Funktion " set NAME backup_mswitch all_devices" .. damit kannst du alle MSwitch Devices sichern und bei bedarf einzeln wiederherstellen.

gruss Thomas

edit: so, nachdem mir genau das heute auch passiert ist ( ok , bei mir kein drama ) werde ich in den kommenden Tagen eine UNDO funktion einbauen . Diese wird aber immer nur EINE ( die letzte ) aktion rückgängig machen können , ansonsten wird es zu aufwendig.
Titel: Antw:98_MSwitch - Support
Beitrag von: Beetle2003 am 19 Oktober 2020, 23:25:07
Zitat von: Der_Tom am 19 Oktober 2020, 18:19:01
so , ich habe mal ein entsprechendes device gebaut . Leider komme ich heute nicht mehr dazu , daraus ein template zu machen .
D.H du musst es manuell einspielen und anpassen - ist aber kein akt.


Hallo Thomas,

danke Dir für deine Hilfe.

Es hat geklappt.

Wenn ich einen Wunsch äussern dürfte: Kann irgendwo eine Seite mit Beispielen erstellt werden

Vielen Dank

Ralf
Titel: Antw:98_MSwitch - Support
Beitrag von: Beetle2003 am 20 Oktober 2020, 07:11:22
Hallo Thomas,

Ich weiss nicht ob das möglich ist, ich kenne bisher nur den manuellen Weg.

Es wäre schön, wenn es eine Möglichkeit gäbe festzulegen in welcher Cfg diese Funktion hinterlegt wird. Ich arbeite mit verteilten cfgs und kopiere nach dem Anlegen die Informationen aus der fhem in die entsprechende

Danke.
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 20 Oktober 2020, 09:22:23
Zitat von: Beetle2003 am 20 Oktober 2020, 07:11:22
Hallo Thomas,

Ich weiss nicht ob das möglich ist, ich kenne bisher nur den manuellen Weg.

Es wäre schön, wenn es eine Möglichkeit gäbe festzulegen in welcher Cfg diese Funktion hinterlegt wird. Ich arbeite mit verteilten cfgs und kopiere nach dem Anlegen die Informationen aus der fhem in die entsprechende

Danke.

moin, ich kann gerade leider nicht ganz folgen was du meinst.

kannst du bitte nochmal näher erklären?

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Beetle2003 am 20 Oktober 2020, 09:36:46
Zitat von: Der_Tom am 20 Oktober 2020, 09:22:23
moin, ich kann gerade leider nicht ganz folgen was du meinst.

kannst du bitte nochmal näher erklären?

gruss thomas

Hallo,

Wenn ich das Device anlege und das Skript importiere, legt er alles in der Fhem.cfg an.
Gibt es eine Möglichkeit, dass dieses in einer zuvor bestimmten Cfg Datei angelegt wird?
Dieses ist keine Sache deines Tools sondern generell.

Habe bisher keinen Hinweis gefunden ob und wie es funktioniert.

Danke
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 20 Oktober 2020, 10:31:58
Zitat von: Beetle2003 am 20 Oktober 2020, 09:36:46
Hallo,

Wenn ich das Device anlege und das Skript importiere, legt er alles in der Fhem.cfg an.
Gibt es eine Möglichkeit, dass dieses in einer zuvor bestimmten Cfg Datei angelegt wird?
Dieses ist keine Sache deines Tools sondern generell.

Habe bisher keinen Hinweis gefunden ob und wie es funktioniert.

Danke

die Daten eines MSwitch werden nur zu einem kleinen Teil in der cfg abgelegt. Nur das define und ein paar attribute.

der grossteil der Daten liegt in der fhem. save.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 20 Oktober 2020, 16:55:38
mit der nächsten Version wird es einen 'Undo' Button geben.
Dieser wird nach einer Änderung des Devices für XX Minuten eingeblendet und bietet die Möglichkeit die letzte Aktion rückgangig zu machen.

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 21 Oktober 2020, 17:36:05
V4.14 ist ab sofort verfügbar

Change: Undo Funktion eingebaut

Fhemneustart erforderlich !

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 02 November 2020, 07:42:04
V4.15  ist ab sofort verfügbar

Change:  Fehler in der EVENT to ID Brücke behoben.

Fhemneustart ist nicht erforderlich

gruss Thomas

EDIT:

INFO - es sind noch immer mindestens 60 MSwitchinstallationen in Umlauf mit einer Versionsnummer < V3.2.
Diese Versionen sind nicht mehr Updatefähig und werden nach einem Update aller Wahrscheinlichkeit nach nicht mehr funktionieren.


Bitte das Update nicht einspielen , es enhält einen schweren Fehler . Ich werde heute noch V4.16 einspielen.
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 02 November 2020, 09:35:04
V4.16  ist ab sofort verfügbar

Change:  Fehler in der EVENT to ID Brücke behoben.
              schweren fehler aus 4.15 behoben

Fhemneustart ist nicht erforderlich

wer bereits das update auf 4.15 gemacht hat kann das update nicht mehr über den MSwitch-Updater einspielen, diesen habe ich in v4.15 versehentlich ausser funktion gesetzt .

das update muss dann manuell angestossen werden:

update all https://raw.githubusercontent.com/Byte009/FHEM-MSwitch/master/controls_mswitch.txt

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 05 November 2020, 07:31:09
V4.17  ist ab sofort verfügbar

Change:  Wizard um einge Befehle ergänzt (V3.9)

Fhemneustart ist nicht erforderlich

Gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Wolle02 am 05 November 2020, 08:40:28
Hallo Thomas,

nur zur Info. Nach einem Update habe ich folgende Perl_Warnings im Log:

2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $_ in split at ./FHEM/98_MSwitch.pm line 4500.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $_ in split at ./FHEM/98_MSwitch.pm line 4501.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in exists at ./FHEM/98_MSwitch.pm line 4503.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in hash element at ./FHEM/98_MSwitch.pm line 4509.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in hash element at ./FHEM/98_MSwitch.pm line 4503.
2020.11.05 08:16:29 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 9317.



Gruß
Wolle
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 05 November 2020, 08:45:21
Zitat von: Wolle02 am 05 November 2020, 08:40:28
Hallo Thomas,

nur zur Info. Nach einem Update habe ich folgende Perl_Warnings im Log:

2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $_ in split at ./FHEM/98_MSwitch.pm line 4500.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $_ in split at ./FHEM/98_MSwitch.pm line 4501.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in exists at ./FHEM/98_MSwitch.pm line 4503.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in hash element at ./FHEM/98_MSwitch.pm line 4509.
2020.11.05 08:15:12 1: PERL WARNING: Use of uninitialized value $evreading in hash element at ./FHEM/98_MSwitch.pm line 4503.
2020.11.05 08:16:29 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_MSwitch.pm line 9317.



Gruß
Wolle


da die MSwitchversion im Grunde gar nicht geändert ist im vergleich zur 4.15 / 4.16 gehe ich hier davonvaus, das diese Warnung dem Update geschuldet und dabei entstanden ist. Einfach mal beobachten.

Bei der Versionsänderung ging es nur darum dem Updater mitzuteilen , das er ein verfügbares Update anzeigen soll, um  letztendlich den Wizard auf 3.9 upzudaten.

gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 05 November 2020, 10:31:05
Ich habe heute ein neues Template eingespielt.
Dieses ermöglicht die einfache integration einer Tradfri FB um verschiedene Systeme zu dimmen/steuern.

Derzeit unterscheidet sich die Konfiguration über 3 anzusteuernde Systeme

Hue
Homatic
Shelly - nur sehr rudimentär da ich keine Shellys besitze.

Ausgelegt ist das ganze im Mment auf diese FB:https://www.ikea.com/de/de/p/tradfri-fernbedienung-30443124/ (https://www.ikea.com/de/de/p/tradfri-fernbedienung-30443124/)

ich habe zwei weitere Feernbedienungen bestellt und werde diese in das Template einbinden , sobald ich diese bekomme ( Paulmann und tint )


gruss thomas


Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 06 November 2020, 09:35:06
Ich habe das Tradfri Template nochmal überarbeitet .

im Hue-System kann nun zwischen Farbwechsel und Farbtemperatur unterschieden werden.

ZitatMSwitch_Bridge Ikea-Fernbedienung/dimmbare Lampe

Dieses Template erstellt ein Mswitch, welches eine Lampe über eine IkeaFerbedienung schaltet.
Die Konfiguration ist abhängig von verschiedenen Systemen.
Folgende Funktionen sind verfügbar:
- heller/dunkler - kurzer Tastendruck
- dimmup/dimmdown - langer - Tastendruck
- Toggle
- (entweder) Farbwechlser Tastendruck links/rechts (nur im Hue System)
- (oder) Farbtemperatur Tastendruck links/rechts (nur im Hue System)


gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 06 November 2020, 21:52:43
ich habe einen Moderator um Schliessung des Threads gebeten.

lg thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 11 Januar 2021, 09:55:32
Hallo Thomas,

wie auf whatsapp geschrieben ist seit einem der letzte Updates das Verhalten merkwürdig - das WLAN wird ausgeschaltet, obwohl alle Bewohner anwesend sind:

defmod ZS_zs_AW_Bewohner_MSw_01 MSwitch ZS_zs_AW_Bewohner # ZS_zs_AW_Bewohner_MSw_01 ZS_zs_CO_UniFi E3_hk_THKV_Heizkoerper_Fenster
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Condition_Time 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Debug 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Delete_Delays 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Expert 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Extensions 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Help 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Ignore_Types notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_Devicecmds 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_MSwitchcmds 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Include_Webcmds 0
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Inforoom System->MSwitch
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Lock_Quickedit 1
attr ZS_zs_AW_Bewohner_MSw_01 MSwitch_Mode Notify
attr ZS_zs_AW_Bewohner_MSw_01 alias Anwesenheitsabhängige Gerätesteuerung
attr ZS_zs_AW_Bewohner_MSw_01 group MSwitch
attr ZS_zs_AW_Bewohner_MSw_01 icon people_sensor
attr ZS_zs_AW_Bewohner_MSw_01 room System->MSwitch,Zentrale Steuerung

setstate ZS_zs_AW_Bewohner_MSw_01 active
setstate ZS_zs_AW_Bewohner_MSw_01 2019-08-05 22:30:07 .Device_Affected E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1,ZS_zs_AW_Bewohner_MSw_01-AbsCmd1,ZS_zs_CO_UniFi-AbsCmd1
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:51:13 .Device_Affected_Details E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1#[NF]tmHeating#[NF]tmEnergySaveHeating#[NF]#[NF]#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][18#[dp]29-20#[dp]59]#[sp]AND#[sp][ZS_zs_AW_Bewohner#[dp]state]#[sp]ne#[sp]"absent"#[sp]AND#[sp][ZS_zs_AW_Bewohner#[dp]state]#[sp]ne#[sp]"gone"#[sp]AND#[sp][ZS_zs_THKV_MainSwitch_DOIF_01#[dp]mainThermostatMode]#[sp]ne#[sp]"tmOff"#[NF][18#[dp]29-20#[dp]59]#[sp]AND#[sp][ZS_zs_AW_X6200W#[dp]presence]#[sp]eq#[sp]"absent"#[sp]AND#[sp][ZS_zs_THKV_MainSwitch_DOIF_01#[dp]mainThermostatMode]#[sp]ne#[sp]"tmOff"#[NF]0#[NF]0#[NF]3#[NF]2#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]0#[ND]ZS_zs_AW_Bewohner_MSw_01-AbsCmd1#[NF]exec_cmd_1#[NF]exec_cmd_2#[NF]ID#[sp]1#[ko]2#[NF]ID#[sp]1#[ko]2#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF]#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]0#[ND]ZS_zs_CO_UniFi-AbsCmd1#[NF]enableWLAN#[NF]disableWLAN#[NF]StarGateX#[NF]StarGateX#[NF]delay1#[NF]delay1#[NF]00#[dp]00#[dp]00#[NF]00#[dp]00#[dp]00#[NF][05#[dp]29-01#[dp]31]#[sp]AND#[sp][ZS_zs_AW_Bewohner#[dp]state]#[sp]eq#[sp]"home"#[NF]#[NF]0#[NF]0#[NF]2#[NF]1#[NF]#[NF]0#[NF]0#[NF]1#[NF]0#[NF]0
setstate ZS_zs_AW_Bewohner_MSw_01 2020-01-10 07:00:00 .Device_Events no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2018-09-26 13:50:51 .First_init done
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-17 18:31:07 .Trigger_cmd_off state:absent
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-17 18:31:07 .Trigger_cmd_on state:home
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_condition
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_device ZS_zs_AW_Bewohner
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-17 18:31:07 .Trigger_off no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-17 18:31:07 .Trigger_on no_trigger
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_time_1
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_time_2
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_time_3 TIME=05:30||WEEKEND=0[NEXTTIMER]TIME=08:00||WEEKEND=1[NEXTTIMER]TIME=18:30||WEEKEND=0[NEXTTIMER]TIME=19:15||WEEKEND=1
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_time_4 TIME=00:30||WEEKEND=0[NEXTTIMER]TIME=01:30||WEEKEND=1[NEXTTIMER]TIME=21:00|WDAY=1,2,3,4,5,6,7
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 .Trigger_time_5
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-08 08:43:53 .V_Check V5.0
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-07 21:04:55 .sortby priority
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:48:00 EVENT init
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 EVTFULL ZS_zs_AW_Bewohner:lastActivityByDev:rr_Torsten
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 EVTPART1 ZS_zs_AW_Bewohner
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 EVTPART2 lastActivityByDev
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 EVTPART3 rr_Torsten
setstate ZS_zs_AW_Bewohner_MSw_01 2019-01-17 18:31:07 Trigger_log off
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-07 06:55:01 last_activation_by event
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 last_cmd 2
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-07 06:55:02 last_event lastActivityByDev:rr_Torsten
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 06:55:01 last_exec_cmd set ZS_zs_AW_Bewohner_MSw_01 exec_cmd_1 ID 1,2;;
setstate ZS_zs_AW_Bewohner_MSw_01 2021-01-11 08:38:30 state active



Modulversion: 5.02
Datenstruktur: V5.0

----- Devicename -----
ZS_zs_AW_Bewohner_MSw_01

----- Attribute -----
Attribut MSwitch_Inforoom: System->MSwitch
Attribut MSwitch_Lock_Quickedit: 1
Attribut icon: people_sensor
Attribut MSwitch_Mode: Notify
Attribut MSwitch_Delete_Delays: 1
Attribut MSwitch_Debug: 0
Attribut MSwitch_Ignore_Types: notify allowed at watchdog doif fhem2fhem telnet FileLog readingsGroup FHEMWEB autocreate eventtypes readingsproxy svg cul
Attribut MSwitch_Include_MSwitchcmds: 1
Attribut MSwitch_Expert: 1
Attribut MSwitch_Condition_Time: 0
Attribut MSwitch_Include_Webcmds: 0
Attribut room: System->MSwitch,Zentrale Steuerung
Attribut MSwitch_Help: 0
Attribut MSwitch_Include_Devicecmds: 1
Attribut group: MSwitch
Attribut MSwitch_Extensions: 0
Attribut alias: Anwesenheitsabhängige Gerätesteuerung

----- Trigger -----
Trigger device:  ZS_zs_AW_Bewohner
Trigger time: undef
Trigger condition:
Trigger Device Global Whitelist: undef

----- Trigger Details -----
Trigger cmd1: no_trigger
Trigger cmd2: no_trigger
Trigger cmd3: state:home
Trigger cmd4: state:absent

----- Bridge Details -----
undef

----- Device Actions -----

Device: E3_hk_THKV_Heizkoerper_Fenster-AbsCmd1
cmd1: tmHeating
cmd2: tmEnergySaveHeating
cmd1 condition: [18:29-20:59] AND [ZS_zs_AW_Bewohner:state] ne "absent" AND [ZS_zs_AW_Bewohner:state] ne "gone" AND [ZS_zs_THKV_MainSwitch_DOIF_01:mainThermostatMode] ne "tmOff"
cmd2 condition: [18:29-20:59] AND [ZS_zs_AW_X6200W:presence] eq "absent" AND [ZS_zs_THKV_MainSwitch_DOIF_01:mainThermostatMode] ne "tmOff"
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 3
id: 2
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: ZS_zs_AW_Bewohner_MSw_01-AbsCmd1
cmd1: exec_cmd_1 ID 1,2
cmd2: exec_cmd_2 ID 1,2
cmd1 condition:
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 1
id: 0
comment:
cmd1 exit: 0
cmd2 exit: 0

Device: ZS_zs_CO_UniFi-AbsCmd1
cmd1: enableWLAN StarGateX
cmd2: disableWLAN StarGateX
cmd1 condition: [05:29-01:31] AND [ZS_zs_AW_Bewohner:state] eq "home"
cmd2 condition:
cmd1 delay: 00:00:00
cmd2 delay: 00:00:00
repeats: 0
repeats delay: 0
priority: 2
id: 1
comment:
cmd1 exit: 0
cmd2 exit: 0


Viele Grüße
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 11 Januar 2021, 12:26:50
Hi Torsten

Ich habe das ganze device nebst (simulierten) zu schaltenden Geräten und Triggern bei mir probiert und kann keine Probleme feststellen.

am cmd verhalten hat sich in der 5.0x nichts geändert, solange keine direkten Eventabfragen ( $EVENT etc. ) in den Bedingungen vorkommen. Ist hier ja nicht der Fall.

du müsstest einfach mal schauen , ob die Timer überhaubt gesetzt sind ( get xxx active_timer show ).

Warum hast du diese merkwürdige "VerteilerBrücke" ( siehe bild ) dort eingebaut ? Ist im Grunde nicht nötig !?

gruss Thomas


Im Zweifel müsste man halt mal mit Teamviewer oder so drüberschauen.
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 11 Januar 2021, 12:32:40
Hallo Thomas,

es gibt einen Timer für 21:00 Uhr, aber der dürfte ja nichts bewirken, sofern die Bewohner anwesend sind (was ja an beiden Tagen der Fall war):

2021-01-11 18:30:00 execute 'cmd1' commands only
2021-01-11 21:00:00 execute 'cmd2' commands only
2021-01-12 00:00:01 neuberechnung aller Schaltzeiten


Das mit der "Brücke" stamm aus uralten Zeiten / Doku und einer Empfehlung von Dir. Ich hatte das Ewigkeiten nicht mehr in der Hand und muss selber überlegen, was der Hintergrund war. Ich muss gestehen, bei näherer Betrachtung verstehe ich es gar nicht mehr und frage mich, ob das überhaupt schon mal richtig warm und nicht per "Zufall" die 21 Uhr noch nie zugeschlagen haben...

Würd man das aktuell anders lösen?

VG
Torsten
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 11 Januar 2021, 12:42:27


Im Grunde erreichst du in diesem Fall das gleiche, wenn du die Brücke einfach löscht und die beiden anderen Befehle auf ID:- setzt.
wird ja sowieso über die trigger für cmd1/2 entsprechend verteilt und die Timer lösen ja auch bereits die entsprechenden zweige cmd1/2 aus.

und dieses Device wird halt etwas 'schlanker'

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: ToKa am 11 Januar 2021, 12:57:25
Wenn ich wieder verstanden habe, was ich wollte, baue ich das mal neu ;)

Danke für Deine Hilfe.
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 11 Januar 2021, 13:06:15
Zitat von: ToKa am 11 Januar 2021, 12:57:25
Wenn ich wieder verstanden habe, was ich wollte, baue ich das mal neu ;)

Danke für Deine Hilfe.


ATTR MSwitch_Comments = 1   ;) ;) ;)
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 13 März 2021, 06:44:46
WICHTIG:

Falls es Nutzer gibt , die nicht in der Supportgruppe mitlesen :

Ich habe heute die Version 5.2 in das GIT gestellt. In dieser sind die Routinen nicht mehr aktiv, die für eine automatische Anpassung der Datenstruktur bei dem Versionssprung von 4.x -> 5.0 gesorgt haben ( Dieses ist schon einige Monate her ).

d.H bestehende Devices sind ggf. nicht mehr funktionsfähig, wenn ein Update von einer Version 4.x auf >= 5.2 erfolgt.

Falls es noch jemand mit einer Version < 5 gibt , bitte das aktuelle Update nicht machen und mich bei Bedarf kurz anschreiben.

Falls das Update doch ausgeführt wird, können die Daten nur durch ein Restore wieder hergestellt werden , da auch alte MSwitch_Backupdaten nicht mehr kompatibel sind !

gruss Thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Caddy89 am 16 März 2021, 08:14:37
Guten Morgen!
Ich war bisher nur ab und an stiller Mitleser. Nun muss ich mich aber zu Wort melden, da ich gestern festgestellt habe, dass meine sämtlichen MSwitch Devices "verschwunden" sind. Ich gehe ganz stark davon aus, dass es mit Toms letzter Nachricht zusammen hängt.
Was bedeutet das nun genau? Wie gehe ich am besten vor, um meine Geräte wieder zu erhalten?

Danke und freundliche Grüße,
Caddy
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 16 März 2021, 08:57:04
Zitat von: Caddy89 am 16 März 2021, 08:14:37
Guten Morgen!
Ich war bisher nur ab und an stiller Mitleser. Nun muss ich mich aber zu Wort melden, da ich gestern festgestellt habe, dass meine sämtlichen MSwitch Devices "verschwunden" sind. Ich gehe ganz stark davon aus, dass es mit Toms letzter Nachricht zusammen hängt.
Was bedeutet das nun genau? Wie gehe ich am besten vor, um meine Geräte wieder zu erhalten?

Danke und freundliche Grüße,
Caddy

Wie sind sie denn verschwunden ?... Hast du ein Update gemacht (fhem oder mswitch) , oder hast du deine fhem.save Datei irgendwie zerstört ?

Gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Caddy89 am 16 März 2021, 10:30:23
Ein fhem Update habe ich gemacht (ich muss gestehen, bin nicht so der Experte und bin bisher davon ausgegangen, dass dabei auch alle Module automatisch upgedatet werden)...

Zerstört scheint nichts zu sein, da es sich lediglich um die MSwitch Geräte handelt. Alle anderen Geräte etc sind vorhanden!

Verstehe ich es richtig, dass ich in dem Fall nur durch ein Restore der letzten Backupdatei an die Daten komme, dann manuell ein Update auf V5.0 durch führe (wo kriege ich das?) und zu guter Letzt dann auf die aktuellste Version 5.2?!

P.S. Danke schon jetzt für deine Hilfe für mich newbie;)
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 16 März 2021, 11:21:53
Ein komplettes restore wäre gut. Können wir den Rest bitte heute Abend klären ... Bin auf der Arbeit, dadurch nur Handy. Heute Abend gerne auch telefonisch.

Wenn du ein restore gemacht hast gibt mir bitte Mal deine mswitch Versionsnummer ... Findest du in jedem switchdevice. Nicht das du bereits mehrere Strukturupdates verpasst hast und wir ganz anders vorgehen müssen

Gruss thomas
Titel: Antw:98_MSwitch - Support
Beitrag von: Caddy89 am 16 März 2021, 12:28:14
V5.0

Hab dir aber auch gerade eben eine PM geschickt! Besten Dank und bis später!

~Caddy
Titel: Antw:98_MSwitch - Support
Beitrag von: Der_Tom am 27 Juni 2021, 07:56:50
Bitte zukünftig diesen Thread nicht mehr nutzen , sondern den neuen Thread nutzen:

https://forum.fhem.de/index.php/topic,121817.0.html (https://forum.fhem.de/index.php/topic,121817.0.html)


Leider kann ich diesen Thread nicht schliessen , ggf. kann das ja bitte ein Admin oder Mod erledigen .


gruss Thomas