Autor Thema: neues modul 37_NotifyAndroidTV.pm  (Gelesen 4967 mal)

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17762
neues modul 37_NotifyAndroidTV.pm
« am: 20 Januar 2018, 23:32:06 »
anbei die erste version eines moduls um nachrichten an android tv geräte zu senden. dazu muss auf dem gerät die Notifications for Android TV installiert sein.

verwendung: define <name> NotifyAndroidTV <host>
set <name> msg [options] <message>

die options sind alle optional :). mögliche options sind: bkgcolor, interrupt, position, transparency, duration, offset, icon, title.

mit set <name> msglassen sich die möglichen werte für die optionen anzeigen.

ein aufruf mit allen möglichen optionen könnte so aussehen:set nb msg bkgcolor=amber interrupt=true position=top-left transparency=0% duration=2 offset=10 icon=fhemicon title="der titel" das ist ein test
wenn es ein paar anwender gibt checke ich das modul regulär ein.

gruss
  andre

edit 2018-01-21: crash bei nicht erreichbarem gerät behoben

edit 2018-01-26: das modul ist jetzt offiziell eingecheckt
« Letzte Änderung: 26 Januar 2018, 22:09:45 von justme1968 »
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH
Gefällt mir Gefällt mir x 10 Liste anzeigen

Offline willibutz

  • New Member
  • *
  • Beiträge: 39
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #1 am: 20 Januar 2018, 23:55:42 »
Hallo Andre,
geht gut, also ich werde es verwenden, danke

LG willibutz

Offline Laserhelge

  • New Member
  • *
  • Beiträge: 19
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #2 am: 21 Januar 2018, 10:34:52 »
Funktioniert prima. Auf so was habe ich schon lange gewartet.

Vielen Dank!!!
FHEM auf Raspberry 2 / CUL / KNX

Offline vuffiraa

  • Sr. Member
  • ****
  • Beiträge: 584
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #3 am: 21 Januar 2018, 11:28:51 »
Kaum äußert man den Wunsch nach einem Modul, ist es auch schon da  ;)

Vielen Dank!
Vuffiraa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Offline vuffiraa

  • Sr. Member
  • ****
  • Beiträge: 584
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #4 am: 21 Januar 2018, 13:59:34 »
Hallo Andre,

wenn der Anfang erst mal gemacht ist, sind die ersten Ergänzungen so einfach  ;)

Wenn ich dich unterstützen darf, mache ich mal den Vorschlag, die Default-Optionen in die Internals auszulagern und dort per entsprechende Sets zu modifizieren. Damit kann man dann die Optionen anpassen und muss sie so nicht bei jeder Nachricht mitschicken.

Anbei das passende Diff.

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Offline ekur

  • Jr. Member
  • **
  • Beiträge: 97
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #5 am: 21 Januar 2018, 14:27:40 »
Als Rückmeldung der Funktion:
Funktioniert einwandfrei mit einem Sony KD-43XE8005.
FHEM 5.8 auf Raspi3, Visualisierung TabletUI auf Waveshare 7" Touch, Datenlogging MySQL
CUL_HM  HM-CC-RT-DN, HM-RC, HM-LC-BL1-FM, HM-PBI-4-FM, HM-SEC-SD, HM-SEC-SCo
OWDevice:DS1420,DS18B20 an BananaPi

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17762
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #6 am: 21 Januar 2018, 14:31:16 »
@vuffiraa: ich hatte mir auch schon überlegt das über ein paar attribute zu machen. dann überlebt es auch einen neustart.

die drei defaults die aktuell fest eingebaut sind waren nur die die zwingend nötig sind weil sich die app scheinbar diese drei werte merkt und keine eingebauten defaults hat. d.h. wenn man sie nicht setzt werde die werte vom letzten aufruf genommen. und das kann schief gehen wenn z.b. der offset aus dem letzten aufruf nicht zur position aus dem neuen aufruf passt. das hat mich zwischendurch einige zeit gekostet weil meine nachrichten nicht mehr sichtbar waren :)

ich baue für das nächste update etwas ein.


ach ja: hat jemand eigentlich die app fürs handy und kann mal mitschneiden was da alles möglich ist? dinge die mir nicht klar sind:
- kann man auch die vordergrund farbe setzen?
- funktioniert der offset wirklich so? d.h. nur in eine richtung? ich hatte weder mit negativen werten wirklich erfolg, noch scheint ein vertikales verschieben zu gehen
- wie funktioniert das senden von bildern das im google appstore beschrieben ist? ich vermute damit ist nicht das icon gemeint. man kann zwar auch problemlos recht grosse jpg bilder schicken aber als icon sind die so klein das man nichts mehr erkennen kann. das kann also nicht die dort erwähnte funktionalität sein.
- kann die app text mit zeilenumbrüche senden? wenn ja: wie wird das codiert?
- wie funktioniert das mit dem type aus der appstore beschreibung?
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Schnurpi

  • Jr. Member
  • **
  • Beiträge: 59
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #7 am: 21 Januar 2018, 17:55:42 »
Hallo Andre,
wie cool ist das denn??  8) Hab es auf einem Philips-TV getestet, funktioniert super!
Setze es gleich ein, um zusätzlich zur akustischen Erinnerung einen Text zu senden, falls vergesen wurde, nach dem Lüften das Fenster zu schließen.

Vielen Dank!

Gruß Maik

Offline vuffiraa

  • Sr. Member
  • ****
  • Beiträge: 584
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #8 am: 21 Januar 2018, 18:16:25 »
@vuffiraa: ich hatte mir auch schon überlegt das über ein paar attribute zu machen. dann überlebt es auch einen neustart.

die drei defaults die aktuell fest eingebaut sind waren nur die die zwingend nötig sind weil sich die app scheinbar diese drei werte merkt und keine eingebauten defaults hat. d.h. wenn man sie nicht setzt werde die werte vom letzten aufruf genommen. und das kann schief gehen wenn z.b. der offset aus dem letzten aufruf nicht zur position aus dem neuen aufruf passt. das hat mich zwischendurch einige zeit gekostet weil meine nachrichten nicht mehr sichtbar waren :)

ich baue für das nächste update etwas ein.
Das mit dem Neustart ist ein gutes Argument. Bei Attributen habe ich aber immer das Problem, dass die Liste der verfügbaren Attributnamen immer schon so lang ist und man den Überblick verliert, welche nun gerätespezifisch sind. Readings sind die Optionen natürlich auch nicht. Internals passen ganz gut, gehen aber dann verloren. Als Hack könnte man unsichtbare Readings nehmen und damit dann Internals füllen...

Zitat
ach ja: hat jemand eigentlich die app fürs handy und kann mal mitschneiden was da alles möglich ist? dinge die mir nicht klar sind:
- kann man auch die vordergrund farbe setzen?
- funktioniert der offset wirklich so? d.h. nur in eine richtung? ich hatte weder mit negativen werten wirklich erfolg, noch scheint ein vertikales verschieben zu gehen
- wie funktioniert das senden von bildern das im google appstore beschrieben ist? ich vermute damit ist nicht das icon gemeint. man kann zwar auch problemlos recht grosse jpg bilder schicken aber als icon sind die so klein das man nichts mehr erkennen kann. das kann also nicht die dort erwähnte funktionalität sein.
- kann die app text mit zeilenumbrüche senden? wenn ja: wie wird das codiert?
- wie funktioniert das mit dem type aus der appstore beschreibung?
- Zur Vordergrundfarbe habe ich nichts gefunden.
- Bei offset gibt es noch ein passendes offsety.
- Bilder werden über die Option imageurl gesendet. Dazu passend gibt es auch noch iconurl.
- Zeilenumbrüche werden als <br> übertragen.
- Option type unterstützt die Werte 0 bis 5. Soweit ich das sehen, bestimmt man damit die Größe der Box.

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Offline Schnurpi

  • Jr. Member
  • **
  • Beiträge: 59
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #9 am: 21 Januar 2018, 18:54:36 »
Ich habe gerade versucht eine Nachricht zu senden, wenn das TV-Gerät ausgeschaltet ist. Daraufhin verabschiedert sich FHEM und es hilft nur noch ein Reboot.

Fehlermeldung im Log:
Can't use an undefined value as a subroutine reference at FHEM/HttpUtils.pm line 857, <FH> line 1.

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17762
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #10 am: 21 Januar 2018, 18:56:43 »
@vuffiraa: sehr geil :)

imageurl funktioniert einfach. beim klingeln kommt jetzt nicht nur eine nachricht sondern gleich ein schnappschuss von der cam mit. sehr cool.

funktionieren bei den offsets bei dir auch negative werte?

@Schnurpi: ist in der nächsten version repariert.
« Letzte Änderung: 21 Januar 2018, 19:10:14 von justme1968 »
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17762
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #11 am: 21 Januar 2018, 19:10:02 »
@Schnurpi: ich habe ganz oben eine version angehängt bei der der absturz behoben ist.

den imageurl parameter kann man übrigens einfach so verwenden. auch wenn er noch nicht explizit eingebaut ist:set <name> msg imageurl=http://<fhem ip>:8083/fhem/snapshots/test.jpg das ist ein schnappschuss
auch <br> im text sollte gehen. die neue version ersetzt jetzt auch \n durch <br>
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline vuffiraa

  • Sr. Member
  • ****
  • Beiträge: 584
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #12 am: 21 Januar 2018, 19:26:14 »
funktionieren bei den offsets bei dir auch negative werte?

Testzyklus:
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=0" http://192.168.2.43:7676Box rechts unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=10" http://192.168.2.43:7676Box ungefähr in der Mitte unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=-10" http://192.168.2.43:7676Box ganz rechts am Rand

curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=0" -F "position=1" http://192.168.2.43:7676Box links unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=10" -F "position=1" http://192.168.2.43:7676Box ungefähr in der Mitte unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=-10" -F "position=1" http://192.168.2.43:7676Box ganz links am Rand

Die Offset-Werte scheinen abhängig von der Position interpretiert zu werden.

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Offline Schnurpi

  • Jr. Member
  • **
  • Beiträge: 59
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #13 am: 22 Januar 2018, 20:22:46 »
Super, hat funktioniert. Danke!

Offline isdnbus

  • New Member
  • *
  • Beiträge: 4
Antw:neues modul 37_NotifyAndroidTV.pm
« Antwort #14 am: 26 Januar 2018, 18:23:41 »
Hallo das Modul funktionierte vor 2 Tagen wie beschrieben.

Seit heute erhalte ich die folgende Fehlermeldung wenn ich der Message duration=20 voranstelle

error:
duration value must be one of:

Eine ganz normale Textnachricht wird korrekt dargestellt.

Bei
set <name> msg bkgcolor=amber interrupt=true position=top-left transparency=0% duration=2 offset=10 icon=fhemicon title="der titel" das ist ein test

gibt´s folgende Meldung:

error:
icon value must be one of:
duration value must be one of:
title value must be one of:
offset value must be one of:



 

decade-submarginal