FHEM Forum

FHEM => Automatisierung => Thema gestartet von: xanker am 18 Mai 2016, 19:29:04

Titel: Neues Modul 98_AWEAR: Notifications, Dialoge, Spracherkennung für Android Wear
Beitrag von: xanker am 18 Mai 2016, 19:29:04
Hallo zusammen,

da ich seit geraumer Zeit eine Android Wear Smartwatch (Moto 360 Sport) habe und von den Möglichkeiten von AutoWear (Tasker Plugin) inspiriert wurde, habe ich ein Modul geschrieben, welches JSON-Code erstellt der als Pushover-Nachricht versendet wird, sodass er von AutoWear (bzw. Tasker) ausgewertet werden kann. Dadurch ist es möglich, verschiedenste Screens und Notifications auf einer Android Wear anzuzeigen. Je nach Screen können z.B. Buttons definiert werden, welchen Commandos zugewiesen werden können, die dann beim Drücken zurück an FHEM gesendet werden (das Senden an FHEM geschieht dabei über andFHEM oder wenn man will auch per HTTPGET). Die Commandos werden im Reading "answer" des AWEAR Device gespeichert, darauf kann man dann z.B. per Notify reagieren.

Desweiteren lassen sich auch verschiedenste Informationen von der Smartwatch auslesen (z.B. Batteriestand, Bildschirm an/aus, Ladezustand, etc.) und ändern (z.B. Bluetooth, Wifi, Helligkeit, etc.). Man kann auch die Schrittzahl auslesen oder eine Pulsmessung starten und auslesen. Die Informationen werden alle als Reading gespeichert.

Als kleines i-Tüpfelchen besteht auch die Möglichkeit eine Sprachaufnahme auf der Smartwatch zu starten, der erkannte Text wird dann an FHEM gesendet.

Aufgrund der Abhängigkeiten zum Pushover-Modul und zu den Android-Apps Pushover, Tasker, AutoWear (und andFHEM), werde ich kurz erklären wie man das Modul nutzt.

Vorraussetzungen:


AWEAR Device anlegen:
define <name> AWEAR <PushoverDevice>:<DeviceName>
<PushoverDevice> ist der Name des zuvor angelegten Pushover Device. <DeviceName> ist der Geräte-Name des Smartphones (diesen sieht man in der Pushover App: Settings -> Device name).

Jetzt erkläre ich noch kurz wie man Notifications und einen Spracherkennung-Screen anzeigt und wie man die Einstellungen der Smartwatch ausliest. Detaillierte Informationen über die Parameter und die anderen Screens habe ich in die commandref des Moduls eingetragen. Mann kann auch gewisse Icons einstellen, hierzu empfehle ich in AutoWear einen entsprechenden Screen zu erstellen, das gewünschte Icon auszuwählen und dann den String anzuschauen und als Wert des entsprechenden Parameters zu setzen. Die Parameter sind übrigens alle optional, es besteht für alle Parameter ein Standard-Wert.


Notification anlegen:
set <name> notification <parameter1>=<value1> ... <parameterN>=<valueN>
Dies erstellt eine Notification auf der Smartwatch, dabei können bis zu 5 Buttons angelegt werden, welche alle ein beliebiges Commando zurück an FHEM senden können. Der entsprechende Button wird nur angezeigt wenn ein Command gesetzt ist.
Mögliche Parameter sind:


Spracherkennungs-Screen anlegen:
set <name> voice <parameter1>=<value1> ... <parameterN>=<valueN>
Dies startet eine Spracherkennung auf der Smartwatch. Man kann dann beliebige Worte/Zahlen/Sätze sagen, welche dann als Text an FHEM gesendet werden.
Mögliche Parameter sind:


Einstellungen der Smartwatch auslesen:
set <name> getsettings
Die Einstellungen werden als Readings gespeichert. Folgende Einstellungen werden ausgelesen:


Wie erwähnt, alles weitere ist in der commandref des Moduls beschrieben. Ich hoffe es kann jemand was damit anfangen, oder hat gar ein paar Verbesserungsvorschläge (z.B. Alternativen für den Weg über Pushover). Bugreports sind auch willkommen...

Viele Grüße
xanker
Titel: Antw:Neues Modul 98_AWEAR: Notifications, Dialoge, Spracherkennung für Android Wear
Beitrag von: felskrone am 20 Juni 2016, 20:20:14
Hallo Xanker,

erstmal vielen Dank dafür, dass Du Deine Arbeit mit uns teilst!
Ich bin zufällig über Deine Module gestolpert - das Thema interessiert mich grundsätzlich sehr. Ich habe auch fast alle benötigten Apps und Hardware im Einsatz.

FHEM auf Raspi, diverse Homematic-Komponenten, andFhem, Tasker und Auto-Wear, dazu eine LG G Watch R. Das einzige was fehlt, ist bei mir Pushover.
Bis vor kurzen hatte ich GCM-send und andNotify im Einsatz und habe gerade eben auf Telegram und das Telegram-Bot-Modul umgebaut. (sehr genial, insbesondere, weil man darüber auch Fhem per Mobil-Phone steuern kann, ohne einen Port zu öffnen, oder VPN zu benötigen)
Mich bei dem 1768 Service (Pushover) anzumelden, würde ich lieber vermeiden.

Leider habe ich im Moment so viele andere Baustellen, dass ich diese neue gerade bis auf weiteres nicht aufmachen kann.

Ich wollte nur mal ein Feedback geben, da bisher ja offenbar noch keiner reagiert hat. Ich werde den Fred auf jeden Fall im Auge behalten.

Gruß, fk

Titel: Antw:Neues Modul 98_AWEAR: Notifications, Dialoge, Spracherkennung für Android Wear
Beitrag von: xanker am 21 Juni 2016, 16:29:16
Hi felskrone,

hat mich bisher auch gewundert dass so gar niemand Interesse daran hat :D
An dem AWEAR Modul habe ich bisher nicht weiter gearbeitet, da es soweit (für meine Zwecke) funktioniert. Ich habe Pushover nur verwendet, da es in Tasker integriert ist.
Wenn ich wüsste wie ich das ganze mit Telegram umsetzten kann, dann wäre mir das sogar lieber.
Wenn du einen Tip für mich hast, dann könnte ich das am Wochenende implementieren. Ich müsste nur wissen wie ich in Tasker eine eingehende Telegram Nachricht verarbeiten kann.

Alternativ hab ich mir auch schon überlegt dafür ne eigene App zu schreiben, da es aber wohl kaum Interessenten gibt, wird sich der Aufwand wohl nicht lohnen.

Mein QuestionsModul hab ich auch soweit angepasst, dass ich die Fragen inkl. Antwortmöglichkeiten an die Uhr schicken kann. Das ist sehr praktisch, da es simpel zu definieren ist und für eine Frage nur ein Device angelegt werden muss, welches sowohl die Frage sendet, als auch die Antwort entgegennimmt und dann das entsprechende Kommando ausführt, ohne weitere Notifys oder DOIFs. Ich werde schauen dass ich am WE mal den Thread dazu aktualisiere.

Grüße