[ 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

qweasd

Bzgl. VoiceControl:

Ich benutze die Voicecontrol analog zu Post #1089 von Invers mit nur einem DOIF. Danke an den Tipp mit dem "|" !

Das schöne an der AMAD-CommBridge ist, dass man so das Gerät von dem der Befehl kommt auch eine Sprachbestätigung bzw. Rückmeldung ausgeben lassen kann.
Hier ein Beispiel mit dem man die Temperatur der Heizung anpassen kann.

DOELSEIF ([AMADCommBridge:receiveVoiceCommand] =~ "wohnzimmer" and [AMADCommBridge:receiveVoiceCommand] =~ "heizung" and [AMADCommBridge:receiveVoiceCommand] =~ "grad")
   (set CUL_HM_HM_CC_RT_DN_1234XX_Clima desired-temp [AMADCommBridge:receiveVoiceCommand:d],
   set [AMADCommBridge:receiveVoiceDevice] ttsMsg Heizung im Wohnzimmer wird auf [AMADCommBridge:receiveVoiceCommand:d] Grad gestellt.)
DOELSE (set [AMADCommBridge:receiveVoiceDevice] ttsMsg Das habe ich nicht verstanden [AMADCommBridge:receiveVoiceCommand].)


In diesem Setup ist pro Sprachbefehl nur eine Action möglich.

Timmy.m hat mich in Post #1079 auf eine Idee gebracht, ob es möglich wäre innerhalb des AMAD moduls mit einem Sprachbefehl mehrere actions durchzuführen. Dafür wäre ein Wort als Seperator zwischen mehreren Befehlen nötig. Dazu könnte bspw. das Wort "und" dienen.

Der Sprachbefehl "Schalte Licht in der Küche an und das Licht im Wohnzimmer aus" könnte in meiner Überlegung in zwei Phasen als trigger in der CommBridge ankommen:
-Phase 1: [AMADCommBridge:receiveVoiceCommand] = "schalte licht in der küche an"
-Phase 2: [AMADCommBridge:receiveVoiceCommand] = "und das licht im wohnzimmer aus"
Somit würde das DOIF 2mal mit unterschiedlichen Einzelkommandos durchlaufen. Ob das innerhalb des Moduls oder im Automagic-Flow passt kann ich nicht sagen.

Zum Schluss noch mein Respekt an CoolTux für das AMAD- und HomBot-Modul.

Tommy82

Hi,
seid einem der letzten Updates, funktioniert AMAD mit meinem Tablett nicht mehr richtig, der Status wird nicht mehr aktualisisert:
Internals:
   DEF        192.168.188.23
   HOST       192.168.188.23
   INTERVAL   180
   NAME       Android_Tablett_Wohnzimmer
   NR         291
   PORT       8090
   STATE      initialized
   TYPE       AMAD
   VERSION    1.2.0
   Helper:
     Dblog:
       Laststatusrequesterror:
         Mydblog:
           TIME       1456864183.33261
           VALUE      192.168.188.23
       Laststatusrequeststate:
         Mydblog:
           TIME       1456864183.33261
           VALUE      statusRequest_error
   Readings:
     2016-02-25 22:57:40   automagicState  no supported from your device
     2016-02-25 22:57:40   bluetooth       on
     2016-02-25 22:57:40   checkActiveTask
     2016-02-25 22:57:40   connectedBTdevices []
     2016-02-25 22:57:40   connectedBTdevicesMAC []
     2016-02-25 22:57:40   currentMusicAlbum no soundplayer activ
     2016-02-25 22:57:40   currentMusicArtist no soundplayer activ
     2016-02-25 22:57:40   currentMusicTrack no soundplayer activ
     2016-03-01 21:26:40   deviceState     online
     2016-03-01 13:01:02   display         an
     2016-02-25 22:57:40   flow_SetCommands aktiv
     2016-02-25 22:57:40   flow_informations aktiv
     2015-12-03 20:02:53   lastSetCommandState cmd_done
     2016-03-01 21:29:43   lastStatusRequestError 192.168.188.23: No route to host
     2016-03-01 21:29:43   lastStatusRequestState statusRequest_error
     2016-02-25 22:57:40   nextAlarmDay
     2016-02-25 22:57:40   nextAlarmTime
     2016-02-25 22:57:40   powerLevel      99.0
     2016-02-25 22:57:40   powerPlugged    0
     2016-02-25 22:57:40   screen          on
     2016-02-25 22:57:40   screenBrightness 157
     2016-02-25 22:57:40   screenOrientation auto
     2016-03-01 21:26:40   state           initialized
     2015-11-11 18:50:01   volume          7
     2016-02-25 22:57:40   volumeMusikBluetooth
     2016-02-25 22:57:40   volumeMusikSpeaker 15
   Helper:
     infoErrorCounter 1
     setCmdErrorCounter 0
Attributes:
   room       Wohnzimmer


Einer eine idee was das sein könnte?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

CoolTux

Hallo, 

Sind die Flows aktiviert? Kannst Du das Tablet vom FHEM Server aus anpingen? Wird der Information Flow rot?

Kannst Du von Hand mal ein statusRequest machen.



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

fh168

Hallo,

erst mal ein dickes Danke für das Modul. Ich setze es seit einigen Tagen mit Automagic ein.
Ich bekomme ab und zu die Meldung: too many Errors .. und dann kann ich das 39 Euro Tablet nicht mehr ansprechen. Ein shutdown restart Fhem hilft dann wieder. Kann man in dem Modul so wie beim WLAN Lacrosse so ein Watchdog einbauen, wenn als nach ein paar Minuten nichts passiert dann restart von dem Modul?

LG
/robin
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

CoolTux

Hallo,

Das hat mit einem Restart des Modules nichts zu tun. To many Errors bedeutet das das Tablet zu oft nicht erreichbar war. Danach legt sich das Modul erstmal selber still.
Das kann man sehen an zwei Dingen.

1. deviceState ist offline
oder
2. das Attribut disable ist 1


Beides kann man von Hand wieder ändern. Das Attribut kann man wieder löschen und den deviceState mit set blabla deviceState online wieder auf online setzen.



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

fh168

Hi,

aber eine Automatik (check alle paar stunden, wenn offline dann wieder online stellen) ist nicht vorgesehen? bei mir war es der Fall, das der Akku leer gelaufen ist und ich vergessen habe, morgens das Netzteil wieder reinzustecken.
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

CoolTux

Hallo,

Ein Automatisches wieder online setzen ist nicht vor gesehen. Im Zuge der Fehlermeldungen würde das ja nichts bringen wenn das Tablet dann trotzdem immer noch nicht erreichbar ist. Dies würde unnötig Ressourcen fressen.
Ich zum Beispiel stelle mich automatisch offline wenn ich das Haus verlasse, wenn dann wieder automatisch online gesetzt würde wäre der Sinn ja weg.

Aber mit der AMAD Version 2 wird das alles eh ganz anders, dann meldet das Androidgerät aktiv seinen Status, da muss man nur schauen wie man das Auswertet wenn mal längere Zeit nichts kommt.



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

FhemPiUser

#1102
hallo,

ich nutze noch wvc und überlege auf amad + fully umzusteigen.

ich habe aber vorher ein paar fragen zu amad + automagic:

1) wie aktiviere ich die aufnahme eines sprachbefehls am tablet? oder hört das tablet micro immer mit? bei wvc geht das ja über druck auf das batteriesymbol...

2) verstehe ich es richtig, dass die amad communication bridge eine http schnittstelle bzw port zu fhem öffnet, über die sämtlich fhem befehle remote ausführbar möglich sind? falls ja, ist ssl und basicauth für die schnittstelle möglich oder wie kann diese abgesichert werden?

3) was geht und was geht nicht, wenn ich die communication bridge nicht nutze bzw nicht mit dem set befehl einrichte?

CoolTux

Hallo FhemPiUser

zu 1. Die Aufnahme aktiviert man über einen set Befehl, wie Du ihn umsetzt obligt allein Dir. Du kannst zum Beispiel ein Micro Icon in FTUI darstellen.

zu 2. Die AMAD CommBridge stellt einen TCP Socket zur Verfügung, was Du darüber jagst und wie ist erstmal völlig egal, Auswerten tut die Bridge aber nur bestimmte Muster. Wie das Muster aussieht steht im Wiki. Es werden auch nicht alle FHEM Befehle zu gelassen, einzig setreading, set und eine Vordefinierte Form von ReadingsVal.

zu 3. Ohne die Bridge geht bis Version 1.2 lediglich der VoiceCommand nicht. Ab der noch kommenden Version 2.0 (AMAD2) ist die Bridge absolut pflicht.


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

FhemPiUser

hi cooltux,

ok, vielen dank für die klasse arbeit.  klingt alles klasse, ich denke ich werde auch umsteigen.

wünschen würde ich mir aber noch eine absicherung der communication bridge schnittstelle z.b. mit ssl und username pwd auth.

könnte die bridge denn nicht den fhem webinstanz-mechanismus verwenden, der dann mit allowed basicauth, ssl etc abgesichert werden kann?

CoolTux

Den Webinstanz-mechanismus kann man leider nicht verwenden.
Automagic bietet alleine nur die Möglichkeit über http Request eine Kommunikation zu tätigen, da ist in der Tat dann auch ssl und Auth möglich. Dies müsste ich aber in der CommBridge implementieren. Da mir dazu noch das Wissen fehlt wird dies wohl noch eine Weile offen bleiben müssen.
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

Tommy82

Zitat von: CoolTux am 02 März 2016, 06:39:59
Hallo, 

Sind die Flows aktiviert? Kannst Du das Tablet vom FHEM Server aus anpingen? Wird der Information Flow rot?

Kannst Du von Hand mal ein statusRequest machen.



Grüße

Hi,
also das anpingen klappt problemlos
ping  192.168.188.23
PING 192.168.188.23 (192.168.188.23) 56(84) bytes of data.
64 bytes from 192.168.188.23: icmp_seq=1 ttl=64 time=191 ms
64 bytes from 192.168.188.23: icmp_seq=2 ttl=64 time=8.39 ms
64 bytes from 192.168.188.23: icmp_seq=3 ttl=64 time=2.76 ms
64 bytes from 192.168.188.23: icmp_seq=4 ttl=64 time=3.08 ms
64 bytes from 192.168.188.23: icmp_seq=5 ttl=64 time=3.43 ms
64 bytes from 192.168.188.23: icmp_seq=6 ttl=64 time=2.30 ms


Der Manuelle Status request bringt allerdings nur ein


Cannot set command, FHEM Device is offline

Die Flows sind auch aktiviert

Hab eben aber auch noch diese Meldung im Log:
2016.03.02 14:55:29.214 1: PERL WARNING: Use of uninitialized value in delete at ./FHEM/74_AMAD.pm line 131.
2016.03.02 14:55:29.215 3: stacktrace:
2016.03.02 14:55:29.215 3:     main::__ANON__                      called by ./FHEM/74_AMAD.pm (131)
2016.03.02 14:55:29.216 3:     main::AMAD_Undef                    called by fhem.pl (3147)
2016.03.02 14:55:29.217 3:     main::CallFn                        called by fhem.pl (1888)
2016.03.02 14:55:29.217 3:     main::CommandDelete                 called by ./FHEM/74_AMAD.pm (916)
2016.03.02 14:55:29.218 3:     main::AMAD_CommBridge_Read          called by fhem.pl (3147)
2016.03.02 14:55:29.218 3:     main::CallFn                        called by fhem.pl (654)
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

CoolTux

Hallo,

Nach mal bitte ein setreading Tablet deviceState online

Und dann nochmal ein statusRequest
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

Tommy82

Jetzt hat der status Request funktioniert, auch wenn immer noch No route to Host angezeigt wird

Internals:
   DEF        192.168.188.23
   HOST       192.168.188.23
   INTERVAL   180
   NAME       Android_Tablett_Wohnzimmer
   NR         291
   PORT       8090
   STATE      active
   TYPE       AMAD
   VERSION    1.2.0
   Helper:
     Dblog:
       Automagicstate:
         Mydblog:
           TIME       1456942913.97204
           VALUE      no supported from your device
       Bluetooth:
         Mydblog:
           TIME       1456942913.97204
           VALUE      on
       Connectedbtdevices:
         Mydblog:
           TIME       1456942913.97204
           VALUE      []
       Connectedbtdevicesmac:
         Mydblog:
           TIME       1456942913.97204
           VALUE      []
       Currentmusicalbum:
         Mydblog:
           TIME       1456942913.97204
           VALUE      no soundplayer activ
       Currentmusicartist:
         Mydblog:
           TIME       1456942913.97204
           VALUE      no soundplayer activ
       Currentmusictrack:
         Mydblog:
           TIME       1456942913.97204
           VALUE      no soundplayer activ
       Devicestate:
         Mydblog:
           TIME       1456942789.781
           VALUE      online
       Display:
         Mydblog:
           TIME       1456942627.55447
           VALUE      an
       Flow_setcommands:
         Mydblog:
           TIME       1456942913.97204
           VALUE      aktiv
       Flow_informations:
         Mydblog:
           TIME       1456942913.97204
           VALUE      aktiv
       Laststatusrequeststate:
         Mydblog:
           TIME       1456942913.97204
           VALUE      statusRequest_done
       Powerlevel:
         Mydblog:
           TIME       1456942913.97204
           VALUE      21.0
       Powerplugged:
         Mydblog:
           TIME       1456942913.97204
           VALUE      0
       Screen:
         Mydblog:
           TIME       1456942913.97204
           VALUE      on
       Screenbrightness:
         Mydblog:
           TIME       1456942913.97204
           VALUE      157
       Screenorientation:
         Mydblog:
           TIME       1456942913.97204
           VALUE      auto
       State:
         Mydblog:
           TIME       1456942913.97204
           VALUE      volumeMusikBluetooth:
       Volumemusikspeaker:
         Mydblog:
           TIME       1456942913.97204
           VALUE      0
   Readings:
     2016-03-02 19:21:53   automagicState  no supported from your device
     2016-03-02 19:21:53   bluetooth       on
     2016-03-02 19:21:53   checkActiveTask
     2016-03-02 19:21:53   connectedBTdevices []
     2016-03-02 19:21:53   connectedBTdevicesMAC []
     2016-03-02 19:21:53   currentMusicAlbum no soundplayer activ
     2016-03-02 19:21:53   currentMusicArtist no soundplayer activ
     2016-03-02 19:21:53   currentMusicTrack no soundplayer activ
     2016-03-02 19:19:49   deviceState     online
     2016-03-02 19:17:07   display         an
     2016-03-02 19:21:53   flow_SetCommands aktiv
     2016-03-02 19:21:53   flow_informations aktiv
     2015-12-03 20:02:53   lastSetCommandState cmd_done
     2016-03-01 21:59:46   lastStatusRequestError 192.168.188.23: No route to host
     2016-03-02 19:21:53   lastStatusRequestState statusRequest_done
     2016-03-02 19:21:53   nextAlarmDay
     2016-03-02 19:21:53   nextAlarmTime
     2016-03-02 19:21:53   powerLevel      21.0
     2016-03-02 19:21:53   powerPlugged    0
     2016-03-02 19:21:53   screen          on
     2016-03-02 19:21:53   screenBrightness 157
     2016-03-02 19:21:53   screenOrientation auto
     2016-03-02 19:21:53   state           active
     2015-11-11 18:50:01   volume          7
     2016-03-02 19:21:53   volumeMusikBluetooth
     2016-03-02 19:21:53   volumeMusikSpeaker 0
   Helper:
     infoErrorCounter 0
     setCmdErrorCounter 0
Attributes:
   room       Wohnzimmer


Interessanterweise habe ich die CommandBridge jetzt aber zweimal


Internals:
   BUF
   FD         4
   NAME       AMADCommBridge_192.168.188.23_40699
   NR         733
   PEER       192.168.188.23
   PORT       40699
   SNAME      AMADCommBridge
   SSL
   STATE      Connected
   TEMPORARY  1
   TYPE       AMAD
Attributes:
   room       hidden


Internals:
   BRIDGE     1
   CONNECTS   2
   FD         22
   NAME       AMADCommBridge
   NR         292
   PORT       8090
   STATE      opened
   TYPE       AMAD
   VERSION    1.2.0
   Readings:
     2015-11-06 19:24:23   expertMode      1
     2015-11-06 19:23:49   fhemServerIP    192.168.188.47
     2016-03-02 17:32:07   state           opened
Attributes:
   room       Wohnzimmer
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

CoolTux

Lösche bitte mal die

AMADCommBridge_192.168.188.23_40699


Kann mir gerade nicht erklären wo die herkommen soll.

In meinen Augen funktioniert Dein AMAD aber

2016-03-01 21:59:46   lastStatusRequestError 192.168.188.23: No route to host

Das ist die letzte Fehlermeldung. Die war aber schon am 01. und Du hast ja jetzt Readings welche schon vom 02. sind


2016-03-02 19:21:53   lastStatusRequestState statusRequest_done


Hat alles super geklappt.
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