[ VERSION 1.2.0 ] 74_AMAD.pm zur Steuerung eines Androidgerätes

Begonnen von CoolTux, 07 August 2015, 09:39:01

Vorheriges Thema - Nächstes Thema

RoBra81

Ich hätte eine Idee, weiß aber nicht genau, was alles dran hängt  ;):
Man könnte eine Art Lebensbit einführen: immer, wenn vom FHEM eine Anfrage kommt (die kommt doch alle 180 Sekunden, oder?), wird im Automagic eine Zeitüberwachung zurückgesetzt (könnte ein Flow mit Pause sein, der bei erneutem Start die alte Instanz beendet). Ist die Zeit einmal abgelaufen, so wird der Status auf Disconnected gesetzt und damit der Informations-Flow deaktiviert. Mit der nächsten Anfrage von FHEM wird der Status wieder auf Connected gesetzt und der Informations-Flow wieder aktiviert...

CoolTux

Kann man machen. Nur ist das mit den INTERVAL so eine Sache, das kann ja jeder ändern wie es ihm beliebt. Aber den Denkansatz finde ich gut.
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

RoBra81

Man könnte es auch parametrierbar machen, z.B. als Vielfaches einer definierten Zeit: im Automagic läuft immer ein Flow, der minütlich (das wäre die definierte Zeit) eine Variable hochzählt. Bei einer Anfrage von FHEM wird die Variable wieder auf 0 gesetzt. Erreicht die Variable das parametrierte Maximum (z.B. 10 für 10 Minuten) so erfolgt das disconnect usw.

CoolTux

Ich denke dann lieber ein Attribut welches die SSID in die Bedingung ein setzt   ;D
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

RoBra81

Hatte ich auch schon drüber nachgedacht, aber ich kann mir vorstellen, dass es Nutzer gibt, die z.B. eine zweite Fritzbox (zur Reichweitenerhöhung) im Netzwerk haben und somit mehrere gültige SSIDs...

RoBra81

Ich denke, den "Überwachungsflow" könnte ich "basteln"...

CoolTux

Die Frage ist wie Du das genau machen willst? Einen der beiden Flows (Informations, SetCommands) kannst Du nicht abschalten. Die überwachen sich gegenseitig und aktivieren sich dann wieder. interner Counter mit globaler Variable vielleicht, aber irgendwie habe ich das Gefühl das wir schon so viele davon haben.
Also auf was könnte man prüfen? Man könnte noch versuchen einen ping los zu treten auf die hinterlegte global_fhemip, würde aber wieder in meinem Netz nicht gehen. Habe Netzsegmentierung.



Ich denke noch   ;D
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

RoBra81

Wenn ich es richtig verstehe, wird der Flow Informations vom Gerät getriggert um Informationen ans FHEM zu liefern und der Flow SetCommands wird vom FHEM getriggert um Informationen abzurufen bzw. Kommandos am Gerät auszuführen? In dem Fall würde ich nur den Flow Informations deaktivieren und hätte auch kein Problem damit, dass er von SetCommand (durch eine Aktion von FHEM) wieder aktiviert wird...

CoolTux

Beide Flows werden von FHEM getriggert
Informations

HTTP Request: /fhem-amad/deviceInfo


SetCommands

HTTP Request: /fhem-amad/setCommands/*
und
HTTP Request: /fhem-amad/deviceInfo


Der deviceInfo trigger bei SetCommands prüft bei jeder Informationsanfrage auch gleich noch ob der Informations Flow noch aktiv ist.


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

RoBra81

Und der deviceInfo-Trigger ist der, der zyklisch kommt? Dann würde es ja passen...

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

hillbicks

Sollten eigentlich grundsaetzlich alles fhem Befehle ueber Automagic abbildbar sein? Ich frage weil es mir bisher nicht gelungen ist ein trigger xxx auszufuehren. Hab dabei im Header das set durch trigger ersetzt und bei Daten dann nur noch den Namen vom notify eingetragen.

Allerdings funktioniert das Beispiel aus dem Wiki mit dem readingsval bei mir auch nicht, kommt ebenfalls nix zurueck.

Jemand eine Idee hierzu?

CoolTux

#867
Aus sicherheitstechnischen Gründen, gehen ausschließlich set Befehle.
Anbei mal ein Beispiel für ReadingsVal

Die Variable response musst Du dann natürlich noch ausgeben lassen in dem Flow. Also entweder Ansage oder Bildschirmausgabe.


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

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

hillbicks

Danke Dir schonmal!

Letztendlich kann ich die Befehle an fhem von Android aus ja auch direkt an die GUI schicken, dafuer muss ich ja nicht ueber die CommandBridge gehen.

URL: http://{global_fehmip}:8033/fhem?cmd=trigger%20XXXX

Wichtig ist dabei Leerzeichen in der URL durch %20 zu ersetzen, sonst klappt das nicht.

Basic authentication eintragen, header und data rauslassen und gut ist.

Danke Dir trotzdem fuer die Hilfe!