[AMADNG] AMAD 4.2 The Next Generation of AMAD with Tasker Support

Begonnen von CoolTux, 25 Mai 2017, 18:24:49

Vorheriges Thema - Nächstes Thema

Invers

userReading =
hatte ich bisher immer so, wollte aber mal probieren. Mir war nicht klar, dass es so bleiben muss. Ich dachte, das wäre der Scriptname.
Ich werde nachher mal mit nur einem Reading probieren.
Muss erst einmal weg. Vorerst vielen Dank, melde mich nachher.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Invers

Es funktioniert nun alles, wie ich es möchte. Die Formatierung der Kommastelle musste ich in der Readingsgroup ändern.
Ob es mit 2 Readingsnamen klappt, habe ich nicht probiert. Ich habe 1 Reading gesendet, dann noch das zweite Reading für powerPlugged. So geht es nun.
Ich habe mich bei den Tests verwirren lassen. Wenn  ich etwas geändert hatte, hatte ich den Flow (gesamt oder Teil) in Automagic gestartet. Das klappt so leider nicht, was ich nicht wusste, da ja immer Erfolg gemeldet wurde.
Ich habe nun bemerkt, dass nur Werte übertragen werden, wenn sich etwas ändert, oder wenn ich den Flow erneut speichere. Die Ausführung bringt nichts. Vermutlich hatte ich also zwischen meinen Tests schon mehrfach Erfolg, der allerdings nicht wirklich sichtbar war. Da habe ich seit gestern also umsonst herumgefummelt. Naja, es bildet wenigstens. LOL!
Ich danke dir für deine geduldige Hilfe.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Schlimbo

Guten Morgen CoolTux,
gibt es einen Grund warum die fhemServerIP in AMADCommBridge als Reading ausgeführt ist?
Da diese ja zwingt benötigt wird und sich auch nicht ändern sollte, fände ich es sinnvoller die IP gleich im define mit anzugeben, oder zumindest als Attribut.
Hätte den Vorteil, dass sie auch in der config mit abgespeichert ist. Beim Neuaufsetze des Systems muss diese momentan immer explizit gesetzt werden.
Gruß Schlimbo

CoolTux

Ich glaube die IP muss gar nicht mehr beim Einrichten der Bridge gesetzt werden. Das dürfte mit Hilfe des Einrichtungsassistenten nun passieren. Aber eben als Reading. Ist die einfachste und beste Variante. Kein Ändern der FHEM Konfig.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Schlimbo

#1384
Okay, dann gibt es das Problem wohl nur bei der Tasker Version, bei Automagic wird die IP soweit ich in Erinnerung habe über den Header übertragen, das ist mit Tasker momentan aber leider nicht möglich.
Edit: Gerade noch mal ausprobiert: Das automatische setzen der fhemServerIP über den Einrichtungsassistenten klappt auch mit Tasker.

Jedoch ändert dies nichts an der Situation, dass nach einem neu aufsetzen des FHEM Servers das Reading von Hand noch mal gesetzt werden muss, da der Assistent hierbei ja nicht neu durchlaufen wird.
Ist zwar kein großes Problem, aber wird schnell mal vergessen...
Auch wenn durch ein Programmierfehler das Modul mal nicht geladen werden kann, verliert man das Reading (hatte ich beider Entwicklung der Tasker Version des öfteren).

Ohne das Reading wird das Log file mit der Meldung befüllt:
2019.03.18 23:44:40.126 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:44:46.726 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:44:46.727 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:06.523 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:06.524 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:06.530 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:06.531 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:10.131 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:16.813 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!
2019.03.18 23:45:16.814 3: AMADDevice (myAmadBridge) - GetUpdate, Please set myAmadBridge fhemServerIP <IP-FHEM> NOW!


Für was wird das Reading überhaupt gebraucht? Die IP ist doch nur für das Android Gerät interessant und ist dort sowieso in einer Globalen Variable hinterlegt.

Schlimbo

Hallo Marko,

hab mir das mit der fhemServerIP noch mal angesehen.
Im Grunde wird diese vom Bridge Device gar nicht wirklich benötigt. Hiermit hat man lediglich die Möglichkeit über FHEM, die auf dem Android Gerät gespeicherte Automagic Variable "global_fhemip" zu überschreiben.
Wird das Reading "fhemServerIP" gelöscht hat das jedoch zur Folge, dass in Automagic die Globale Variable global_fhemip auf "none" gesetzt wird und dadurch das Android Gerät den FHEM Server nicht mehr kennt.
Hier sollte in Automagic vor dem übernehmen einer neuen fhemip zumindest geprüft werden ob es sich nicht um "none" handelt.
Da es mit dieser Änderung dann auch keinen zwingende Notwendigkeit für das Reading "global_fhemip" mehr gäbe, fände ich es gut wenn du die  Prüfung auf ein vorhandenes fhemServerIP Reading und die darauf resultierende Meldung "Please set $bname fhemServerIP" aus dem Modul entfernen könntest.

Gruß Schlimbo

CoolTux

Zitat von: Schlimbo am 21 März 2019, 22:50:13
Hallo Marko,

hab mir das mit der fhemServerIP noch mal angesehen.
Im Grunde wird diese vom Bridge Device gar nicht wirklich benötigt. Hiermit hat man lediglich die Möglichkeit über FHEM, die auf dem Android Gerät gespeicherte Automagic Variable "global_fhemip" zu überschreiben.
Wird das Reading "fhemServerIP" gelöscht hat das jedoch zur Folge, dass in Automagic die Globale Variable global_fhemip auf "none" gesetzt wird und dadurch das Android Gerät den FHEM Server nicht mehr kennt.
Hier sollte in Automagic vor dem übernehmen einer neuen fhemip zumindest geprüft werden ob es sich nicht um "none" handelt.
Da es mit dieser Änderung dann auch keinen zwingende Notwendigkeit für das Reading "global_fhemip" mehr gäbe, fände ich es gut wenn du die  Prüfung auf ein vorhandenes fhemServerIP Reading und die darauf resultierende Meldung "Please set $bname fhemServerIP" aus dem Modul entfernen könntest.

Gruß Schlimbo

Hallo Schlimbo,

Das schaue ich mir gerne die Tage noch mal genauer an. Wird wohl noch aus der Anfangszeit resultieren.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Schlimbo

Hallo Marko,
noch ein anderer Punkt:
Was hältst du davon über die Statistik https://www.fhem.de/stats/statistics.html
auch noch die Information zu bekommen, wie oft welcher remoteServer verwendet wird?
Hierzu musste nur folgendes nach Zeile 160 eingefügt werden:
    $hash->{MODEL}                              = $remoteServer;

CoolTux

Die Idee finde ich gut. Werde ich ein bauen. Habe ich beim Weather Modul bezüglich verwendeter API auch schon gemacht. Gefällt mir.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net