FHEM Forum

FHEM - Anwendungen => Multimedia => Thema gestartet von: justme1968 am 20 Januar 2018, 23:32:06

Titel: neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 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 (https://play.google.com/store/apps/details?id=de.cyberdream.androidtv.notifications.google) 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
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: willibutz am 20 Januar 2018, 23:55:42
Hallo Andre,
geht gut, also ich werde es verwenden, danke

LG willibutz
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Laserhelge am 21 Januar 2018, 10:34:52
Funktioniert prima. Auf so was habe ich schon lange gewartet.

Vielen Dank!!!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: vuffiraa am 21 Januar 2018, 11:28:51
Kaum äußert man den Wunsch nach einem Modul, ist es auch schon da  ;)

Vielen Dank!
Vuffiraa
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: vuffiraa 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
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: ekur am 21 Januar 2018, 14:27:40
Als Rückmeldung der Funktion:
Funktioniert einwandfrei mit einem Sony KD-43XE8005.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 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?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schnurpi 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
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: vuffiraa am 21 Januar 2018, 18:16:25
Zitat von: justme1968 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.
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...

Zitatach 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
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schnurpi 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.

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 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.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 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>
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: vuffiraa am 21 Januar 2018, 19:26:14
Zitat von: justme1968 am 21 Januar 2018, 18:56:43
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:7676
Box rechts unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=10" http://192.168.2.43:7676
Box 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:7676
Box 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:7676
Box links unten
curl -F "filename=@decoded.png" -F "title=Titel" -F "msg=Meldung" -F "offset=10" -F "position=1" http://192.168.2.43:7676
Box 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:7676
Box ganz links am Rand

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

Gruß Ulf
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schnurpi am 22 Januar 2018, 20:22:46
Super, hat funktioniert. Danke!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: isdnbus 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:


Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 26 Januar 2018, 19:51:22
hier funktioniert alles wie gehabt.

die meldungen kann ich mir eigentlich nur erklären wenn fhem intern etwas durcheinander gekommen ist.

bitte starte fhem noch mal neu und schau ob es dann geht.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Pr3mut05 am 26 Januar 2018, 21:57:02
Sehr cool
Vielen Dank
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 26 Januar 2018, 22:01:06
es scheint auch eine version für fire tv zu geben: https://www.amazon.de/Christian-Fees-Notifications-for-Fire/dp/B00OESCXEK

die müsste damit genau so funktionieren.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 26 Januar 2018, 22:10:40
ich habe das modul eben eingecheckt.

@vuffiraa: die defaults kommen noch. ich warte nur nich die diskussion um das gruppieren von attributen ab.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: devien am 27 Januar 2018, 19:14:27
Zitat von: justme1968 am 26 Januar 2018, 22:01:06
es scheint auch eine version für fire tv zu geben: https://www.amazon.de/Christian-Fees-Notifications-for-Fire/dp/B00OESCXEK

die müsste damit genau so funktionieren.

kann ich bestätigen, funktioniert mit der APP
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: b4r7 am 28 Januar 2018, 01:07:36
sehr geil!

Habe bisher die msg Funktion von meinem Enigma Reci genutzt. Das hier ist um längen besser!

Vielen Dank!!!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: synaps-o-dan am 28 Januar 2018, 14:54:20
Hallo,
cooles Modul, danke! Ich habe es mit einem FireTV im Einsatz, läuft.
Wunsch: wenn man eine Nachricht an ein ausgeschaltetes Gerät sendet, könnte man das im state vermerken ("device off" oder so was in der Richtung). Im Log erscheint ja bereits eine Fehlermeldung.
LG,
Daniel
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 28 Januar 2018, 20:21:07
was die genaue ursache ist (gerät aus, falsche ip, app läuft nicht, ...) kann man nicht wirklich rausfinden.

aber ab morgen gibt es ein lastError reading.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: raimundl am 29 Januar 2018, 08:45:56
Danke!
Läuft super!
MfG
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: cpet am 30 Januar 2018, 23:38:50
 8) Coole Sache,

klappt allerbest mit einem FireTV 4k und einem FireTV Stick  :)

vielen Dank !!!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: raimundl am 03 Februar 2018, 18:07:39
Vieles bereits probiert und alles o.k. - bis auf:

wie ist das richtige Format für

usage: set TVNachricht msg [imageurl=<imageurl>]

Bitte ein praktisches Beispiel für einen "imageurl"

MfG
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 03 Februar 2018, 18:09:16
eine ganz normale von deinem fernseher aus erreichbare url: http://.../xyz.jpg.

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 05 Februar 2018, 19:11:05
Hallo justme,
vielen dank für das super nützliche Modul.

Hab mir die Kommunikation der Telefon APP mit Wireshark mal etwas genauer angesehen.

Es gibt in der APP noch einen "width" Parameter mit diesem kann die größe der Meldung beeinflusst werden.
Mögliche Werte sind 0 - 5
Zitat0:standard (>2 | <3)
1:schmal
2:klein
3:breit
4:sehr breit

Zitat von: justme1968 am 21 Januar 2018, 14:31:16
- wie funktioniert das mit dem type aus der appstore beschreibung?
Der Type Parameter ist in der APP wie folgt beschrieben:
Zitat0:Vollständig (Title,Details,Bild)
1:Nur Titel
2:Nur Anwendungsname
3:Nur Symbol
4:Titel und Details ohne Bild
5:Titel, Bild und erste Zeile
Allerdings ist für eine korrekte Anzeige zusätzlich nötig die Parameter "title", "msg" entsprechend zu setzen oder zu leeren.
z.B. wird bei Type 1 kein "msg" übertragen, bei Type 2 wird "title" mit dem APP Namen überschrieben und "msg" nicht gesetzt, bei Type 3 wird kein "msg" und kein "title" gesendet usw.
Im Anhang die Telegramme der einzelnen Typen.

Zitat von: justme1968 am 21 Januar 2018, 14:31:16
- 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.

Es können auch lokale gespeicherte Bilder über "filename2" gesendet werden:
curl -F "filename2=@/storage/emulated/0/DCIM/OpenCamera/IMG_20170512_172900.jpg;type=application/octet-stream" -X POST http://192.168.5.16:7676

Wäre super wenn du das noch in das Modul übernehmen könntest.

Gruß Schlimbo
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 05 Februar 2018, 22:02:11
sehr schön.

ich habe eben width und image eingebaut und bei type sprechendere namen vergeben.

falls die app noch mehr parameter kennt: man kann ohne modul änderung alles direkt verwenden was zahlen oder strings als parameter erwartet. d.h. width=X geht auch jetzt schon ohne update. ich baue aber gerne jeweils sprechendere namen ein.

zu image: wenn möglich ist es besser imageurl zu verwenden statt image da das bild nicht eingelesen und verschickt werden muss. das geht schneller und fhem blockiert nicht. das geht auch über fhemweb wenn fhemweb auf das bild zugreifen kann.

ps: image ist ungetestet. bitte mal probieren :)
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: OppiM am 06 Februar 2018, 10:26:18
Hi,

das Modul läßt sich bei mir seit dem heutigen Update nicht mehr laden:
2018.02.06 10:23:07.170 1: reload: Error:Modul 37_NotifyAndroidTV deactivated:
Experimental values on scalar is now forbidden at ./FHEM/37_NotifyAndroidTV.pm line 163.
Type of arg 1 to values must be hash or array (not hash element) at ./FHEM/37_NotifyAndroidTV.pm line 163, near "} )  "

2018.02.06 10:23:07.170 0: Experimental values on scalar is now forbidden at ./FHEM/37_NotifyAndroidTV.pm line 163.
Type of arg 1 to values must be hash or array (not hash element) at ./FHEM/37_NotifyAndroidTV.pm line 163, near "} )  "


Gruß,
Michael
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 06 Februar 2018, 10:28:21
sorry. habs repariert. ab morgen im update.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 07 Februar 2018, 22:23:56
Danke für die schnelle Umsetzung. Habe gerade die Image Funktion getestet.
Anscheinend gehen relative Pfade noch nicht:
set <name> image=./www/snapshots/Cam_snapshot.jpg Test Image
Als Fehlermeldung bekomme ich:
Zitatimage not found: ./www/images/default/./www/snapshots/Cam_snapshot.jpg

Auch ist es nicht möglich ein Image ohne Text zu versenden:
set <name>  image=/opt/fhem/www/snapshots/Cam_snapshot.jpg
hier bekomme ich
Zitatusage: set notifyShieldTV msg [bkgcolor=amber|black|cyan|green|grey|indigo|pink|red|teal] [duration=<duration>] [icon=<icon>] [image=<image>] [imageurl=<imageurl>] [interrupt=false|true] [offset=<offset>] [offsety=<offsety>] [position=bottom-left|bottom-right|center|top-left|top-right] [title=<title>] [transparency=0%|100%|25%|50%|75%|default] [type=complete|icononly|nameonly|noicon|short|titleonly] [width=default|extrawide|narrow|small|wide] <message>

Könntest du da noch was machen?

Zu den Type Parameter "noicon", dies sollte besser zu "noimage" umbenannt werden, da er in der APP auch mit "Title and details without image" beschrieben ist.

Es gibt auch die Möglichkeit Nachrichten dauerhaft anzuzeigen (duration: Unlimited) Diese Nachrichten verschwinden auf dem TV Gerät erst bei Betätigung der Fernbedienung.
Hierzu ist es nötig duration auf 15 zu setzen und gleichzeitig interrupt auf true:
set <name> interrupt=1 duration=15 Diese Nachricht wird dauerhaft angezeigt
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 07 Februar 2018, 22:31:44
Meine Teste haben ergeben, der einzige Parameter der zwingend benötigt wird ist "icon", dieser kann jedoch auch entfallen, wenn stattdessen ein "image" oder "imageurl" Parameter vorhanden ist.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 07 Februar 2018, 22:39:30
Fände es auch super, wenn es die Möglichkeit gäbe, über Attribute, default Parameter einzustellen, die dann verwendet werden, wenn die Parameter beim "set" nicht explizit gesetzt wurden.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 07 Februar 2018, 22:59:46
relative pfade waren bisher immer relativ zu $FW_icondir/default. d.h. dein relativer pfad hätte ../../... sein müssen. ich habe aber die automatische ergänzung für image jetzt komplett rausgenommen.

die prüfung auf pflicht parameter habe ich jetzt auf  !msg && !image &&!imageurl  umgestellt. die prüfung ist weniger um tatsächlich zu prüfen als viel mehr um auf die schnelle den usage text zum spicken bekommen.

ist bei "Title and details without image" wirklich das bild gemeint oder doch nur das kleine icon? ein bild wird doch sowieso nur gezeigt wenn man es explizit setzt.

für duration sind aktuell keine erlaubten werte hinterlegt. d.h. es ist alles möglich und man müsste es nur dokumentieren. wenn ich Unlimited hinterlege muss ich auch alle anderen möglichen werte hinterlegen. das wird unhandlich. wie macht die app das welche werte sind erlaubt?

die default attribute waren schon drin, aber noch deaktiviert weil mir das aktuelle namensschema nicht gefällt. ich habe es jetzt aber mal freigeschaltet. ich werde aber vermutlich die benennung nochmal ändern sobald mit etwas besseres einfällt.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 07 Februar 2018, 23:50:44
Zitat von: justme1968 am 07 Februar 2018, 22:59:46
die prüfung auf pflicht parameter habe ich jetzt auf  !msg && !image &&!imageurl  umgestellt. die prüfung ist weniger um tatsächlich zu prüfen als viel mehr um auf die schnelle den usage text zum spicken bekommen.
Könntest du da noch icon mit aufnehmen, damit Type: "icononly" funktioniert.
Zitat von: justme1968 am 07 Februar 2018, 22:59:46
ist bei "Title and details without image" wirklich das bild gemeint oder doch nur das kleine icon? ein bild wird doch sowieso nur gezeigt wenn man es explizit setzt.
So sehe ich es zumindest aus der APP Beschreibung, auch bei der Test Message aus der APP heraus wird bei Type4 das icon angezeigt, allerdings finde ich die Type Funktion sowieso etwas seltsam in der APP umgesetzt, wie ich schon bei meinem vorherigen Post beschrieben habe, reicht es nicht nur den Type zu setzen. Wird der Type zum Beispiel auf "titleonly" gesetzt und ich sende auch einen "msg" Parameter mit, wird auf dem TV trotzdem beides angezeigt. Type passt anscheinend nur die Fenster Form für die Nachricht an um die Parameter muss man sich aber noch selbst kümmern.
Zitat von: justme1968 am 07 Februar 2018, 22:59:46
für duration sind aktuell keine erlaubten werte hinterlegt. d.h. es ist alles möglich und man müsste es nur dokumentieren. wenn ich Unlimited hinterlege muss ich auch alle anderen möglichen werte hinterlegen. das wird unhandlich. wie macht die app das welche werte sind erlaubt?
In der App kann ein Wert von 0-14 oder "Unlimited(only interaction mode)" ausgewählt werden, wobei Unlimited im Telegramm mit duration=15 übertragen wird.
Es funktionieren für die Anzeigedauer aber generell auch Werte größer 15s
Würde deshalb die frei Eingabe für diesen Parameter im Modul auch so lassen, du könntest ja auf "duration=unlimited" im Modul reagieren und es dann in "interrupt=1 duration=15" umwandeln.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 08 Februar 2018, 06:48:47
Beim "set" wird ein Leerzeichen ja als Trennzeichen zwischen den Parametern verwendet,
gibt es trotzdem die möglich als Titel mehrere Wörter Anzugeben (inkl Leerzeichen)?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Laserhelge am 08 Februar 2018, 07:05:03
Hi Schlimbo,

ich hab es so gelöst, dass ich den Titel vorher in eine Variable gespeichert habe

   z.B.   $title = "Anruf".chr(20)."(privat)";

und diese dann beim set verwende.

Wie man bei dem Beispiel schon sieht, muss man als Leerzeichen ein chr(20) verwenden, sonst funktioniert es nicht.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 07:46:41
einfach im set anführungszeichen verwenden.

set <name> msg title="test titel" test

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 08 Februar 2018, 08:38:24
Danke für die Info, werde ich heute abend mal ausprobieren.

Zitat von: justme1968 am 07 Februar 2018, 22:59:46
die prüfung ist weniger um tatsächlich zu prüfen als viel mehr um auf die schnelle den usage text zum spicken bekommen.
Könntest du den Spickzettel auch noch in die Commandref aufnehmen?
Find es einfacher in der Commandref zu schauen, als einen set mit ungültigen Wert abzufeuern.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 08:48:26
ich habe icon auch noch in die parameter prüfung aufgenommen und duration=unlimited eingebaut.

zur commandref: die möglichen parameter stehen ja schon drin. die werte selber auch noch einzutragen ist irgendwie blöd weil die immer von hand gepflegt werden müssen. der hilfe text wird automatisch erzeugt und passt immer zu den wirklich im code verwendeten werten.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: cpet am 08 Februar 2018, 19:57:54
Ich bekomme jetzt als Ausgabe :

$VAR1 = {
          'offset' => 0,
          'offsety' => 0,
          'transparency' => '0%'
        };


wenn ich einen set Befehl ausführe
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 21:24:01
kann es sein das deine version nicht aktuell ist?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: cpet am 08 Februar 2018, 22:02:27
Sollte die neueste sein, außer es wurde heute über Update nicht die neueste verteilt  ;)

# $Id: 37_NotifyAndroidTV.pm 16111 2018-02-07 21:55:48Z justme1968 $

steht in der obersten Zeile des Moduls
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 22:15:32
die neueste ist# $Id: 37_NotifyAndroidTV.pm 16114 2018-02-08 07:47:08Z justme1968 $

da ist der fix drin. war scheinbar ein paar minuten zu spät für den update heute.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: cpet am 08 Februar 2018, 22:17:34
Ah alles klar dann wird es morgen ja wohl wieder funzen ;D

Vielen Dank :)
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 08 Februar 2018, 23:26:24
Guten Abend zusammen,

Habe mir gerade überlegt wie ich einen Plot auf dem TV anzeigen könnte.
Es gibt ja die Funktion "plotAsPng", die einen Plot in ein Image wandelt, weiß aber noch nicht, wie ich das am besten an das Modul übergeben könnte, da die Funktion das Image im Binär Format zurück gibt.
Hat hierzu jemand eine Idee?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 23:29:27
aktuell muss du das bild irgendwohin schreiben und dann per image oder imageurl angeben.

ich schaue mal ob mir noch etwas besseres einfällt.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: mumpitzstuff am 08 Februar 2018, 23:33:47
Mit einem Netzlaufwerk könnte es gehen.

open FILE, "> <netzlaufwerk>/plot.png";
binmode FILE;
print FILE plotAsPng("SVG_FileLog_plot");
close FILE;

Und dann die URL des Netzlaufwerks verwenden.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 08 Februar 2018, 23:35:31
warum netzlaufwerk? lokal auf dem fhem rechner nach /tmp wenn es als image eingebunden werden soll oder nach .../www/images wenn es per fhemweb und imageurl ausgeliefert werden soll.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 00:11:43
Interessant, danke schon mal für eure Antworten.
funktioniert:

sub sendPlotToTV($$){
  my ($name,$plot) = @_;
  open(my $file, '>', "./www/images/plot.png");
  binmode $file;
  print $file plotAsPng("$plot");
  close $file;
  fhem "set $name msg imageurl=http://192.168.1.2:8083/fhem/www/images/plot.png type=titleonly width=extrawide position=center"
}

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 09:54:52
ab morgen kann man image={<perlCode>} verwenden.

d.h. es geht z.b. so etwas:set <name> msg image={plotAsPng('meinPlot')}

die variante mit rausschreiben und imageurl angeben ist aber zu bevorzugen weil sie fhem weniger blockiert.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 13:37:48
Das ist ja super, funktioniert bestens.
Warum blockiert das eigentlich FHEM, die Kommunikation läuft doch nonblocking ab, oder?

Gerade noch mal mit dem Type Parameter getestet, also "noicon" ist eindeutig "noimage", denn bei:
set notifyShieldTV msg image={plotAsPng('SVG_CO2_whz')} type=noicon width=extrawide
Wird das Image nicht angezeigt, das Icon aber schon.

Momentan wird das Icon immer mitgesendet, könntest du das bitte bei den Typen "nameonly" und "titleonly" unterbinden?

Edit:
Type "titleonly" funktioniert noch nicht:
set notifyShieldTV msg type=titleonly title=Test schafft es nicht durch die "set" Prüfung.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 14:23:30
das einlesen des image und das erzeugen des plot blockiert fhem. nur das ausliefern passiert nonblocking.

wenn das file schon im filesystem liegt und nicht eingelesen werden muss weil fhem es per imagurl direkt ausliefern kann ist es am besten. wenn es erzeugt und rausgeschrieben werden muss ist es egal. bei plotAsPng ist es auch egal.

ich habe die beiden vorgeschlagenen änderungen noch eingecheckt:
- noicon im noimage umbenannt
- das icon wird bei type nameonly und titleonly nicht mehr mit geschickt.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 15:13:17
Wow du bist ja schnell, hattest du meinen Nachtrag noch gesehen?
Zitat von: Schlimbo am 09 Februar 2018, 13:37:48
Edit:
Type "titleonly" funktioniert noch nicht:
set notifyShieldTV msg type=titleonly title=Test schafft es nicht durch die "set" Prüfung.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 15:24:08
nein :) natürlich nicht.

ich habe die parameter prüfung jetzt komplett rausgeschmissen. der hilfe text wird nur noch beiset <name> msg ?angezeigt.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 21:17:07
Zitat von: Schlimbo am 09 Februar 2018, 13:37:48
Momentan wird das Icon immer mitgesendet, könntest du das bitte bei den Typen "nameonly" und "titleonly" unterbinden?
Sorry, da hatte ich ja meine eigene Aussage vergessen :-\
Zitat von: Schlimbo am 07 Februar 2018, 22:31:44
Meine Teste haben ergeben, der einzige Parameter der zwingend benötigt wird ist "icon", dieser kann jedoch auch entfallen, wenn stattdessen ein "image" oder "imageurl" Parameter vorhanden ist.
Ein Image/Icon wird ja zwingend benötigt, durch die Unterbindung bei  "nameonly"|"titleonly" kann icon ja jetzt nicht mehr verwendet werden und die beiden Typen funktionieren somit nur noch mit Image Nachrichten.

Würdest du das bitte noch mal anpassen? So das bei Nachrichten mit Parameter "Image" oder "imageurl" das Icon optional ist und bei allen anderen doch immer mit Icon gesendet wird.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 21:26:03
ich hab da mal was eingecheckt :)

probier bitte ob es so funktioniert.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 21:37:41
sorry. ich musste das wieder zurück nehmen. wenn ich bei image und titleonly das icon nicht mit schicke wird nichts angezeigt. d.h. ich muss das icon senden auch wenn es nicht angezeigt wird.

wann genau stört dich das icon? was macht die app anders?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 21:45:51
Zitat von: justme1968 am 09 Februar 2018, 21:37:41
wenn ich bei image und titleonly das icon nicht mit schicke wird nichts angezeigt. d.h. ich muss das icon senden auch wenn es nicht angezeigt wird.
Das ist seltsam, bei mir funktioniert das:
set notifyShieldTV msg type=titleonly title=Test image=./www/images/plot.png
Wird bei mir korrekt ohne Icon angezeigt

Das Icon stört mich hauptsächlich bei den Plots.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 21:48:09
bei titleonly wird bei mir das icon nicht angezeigt. auch wenn ich es mit sende. wenn ich es weg lasse wird nichts angezeigt.

ich habe die app auf einem sony bravia fernseher laufen. du scheinbar auf einem shield. ich weiss nicht ob das einen unterschied macht.

ich überlege mal was wir tun können.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 21:52:10
Über die APP wird bei titleonly auch das Icon angezeigt, ist also auch nicht konsequent umgesetzt.

Wie wäre is mit einem zusätzlichen Parameter mit dem das Icon deaktiviert werden kann?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 21:57:20
dann ist es einer der parameter die auf app seite ihren wert behalten wenn man sie nicht wieder überschreibt.

meine app ist seindbar in irgendeinem anderen zustand als deine.

noch ein parameter mehr gefällt mir nicht. ich glaube es ist besser wenn wir rausfinden welcher parameter die probleme macht.

schau mal ob du das über die app rausfindest. die scheint bei dir ja den parameter wieder zurück zu setzen.

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 22:09:57
Die Telegramm Mitschnitte der APP habe ich hier angehängt;
https://forum.fhem.de/index.php/topic,83064.msg761455.html#msg761455 (https://forum.fhem.de/index.php/topic,83064.msg761455.html#msg761455)
Sehe hier aber nichts außergewöhnliches, außer dass es noch einen Parameter "force" gibt, was der aber bewirkt hab ich noch nicht herausgefunden.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 09 Februar 2018, 22:27:31
Zitat von: justme1968 am 21 Januar 2018, 14:31:16
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 :)
Welche Parameter meist du da? Könnte dieses verhalten bei mir noch nicht nachvollziehen.
Evtl. hängt es auch mit der Android Version zusammen.
Auf meinem ShieldTV läuft 7.0
Die "Notification for Android TV" APP hat die Version 4.4.0
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 09 Februar 2018, 22:38:10
offset, offset und transparency. wenn man die nicht explizit auf 0 setzt behalten sie den wert vom letzen mal.

das hat mich ein paar stunden gekostet weil ich offset auf einen wert gestellt hatte der für ein fenster auf der linken seite gepasst hat und fenster an der default position plötzlich rechts vom fernseher verschwunden sind.

bei mir hat die app die version 4.3.0 und android ist auch 7.0

ich sehe aber gerade es gibt ein update auf 4.4.0. ich teste morgen.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 10 Februar 2018, 00:09:09
Zitat von: justme1968 am 09 Februar 2018, 21:37:41
sorry. ich musste das wieder zurück nehmen. wenn ich bei image und titleonly das icon nicht mit schicke wird nichts angezeigt. d.h. ich muss das icon senden auch wenn es nicht angezeigt wird.
Bei mir klappt das mit Rev 16137 auch ohne Icon, siehe Bild im Anhang.

Allerdings wird hiermit das Icon nie mitgesendet, hatte mir das so vorgestellt, dass default mäßig kein Icon gesendet wird, bei expliziter Angabe des Parameters icon aber das Icon angehängt wird.
Ohne Icon:
set notifyShieldTV msg type=titleonly title=Test image=./www/images/plot.png
Mit Icon:
set notifyShieldTV msg type=titleonly title=Test image=./www/images/plot.png icon=fhemicon

Was mir noch aufgefallen ist, in dem vom Modul gesendet Daten ist auch folgendes enthalten:
--boundary
Content-Disposition: form-data; name="image"

{plotAsPng("SVG_CO2_whz")}
--boundary

Das gehört da glaube ich nicht hin.

Beim verwenden des Attributs "defaultBkgcolor" wird die Farbe nicht in hex übergeben:
--boundary
Content-Disposition: form-data; name="bkgcolor"

green
--boundary


Des weiteren ist mir aufgefallen, dass "transparency=0%" nur funktioniert, wenn "bkgcolor" gesetzt ist, deswegen sollte bkgcolor auch immer übertragen werden, default ist glaube ich gray.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Matscher am 20 März 2018, 07:47:20
Hallo,

Ich nutze Notification for Fire TV (4.4.0). Leider funktioniert NotifyAndroidTV bei mir nicht von FHEM aus. Benachrichtigungen werden aber auf dem Fire TV angezeigt, wenn ich zum Beispiel die APP von einem anderen Tablett benutzte.


2018.03.19 21:47:57 5: NotifyMyFireTv: using icon ./www/images/default/fhemicon.png
2018.03.19 21:47:57 5: --boundary

Content-Disposition: form-data; name="msg"



Hallosdsdsd

--boundary

Content-Disposition: form-data; name="transparency"



0

--boundary

Content-Disposition: form-data; name="offsety"



0

--boundary

Content-Disposition: form-data; name="offset"



0


2018.03.19 21:47:57 4: NotifyAndroidTV (NotifyMyFireTv) - send notification


Kann es an der Version der Fire TV App liegen?

Danke für Eure Hilfe.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: patator am 03 Oktober 2018, 16:02:47
Cooles Modul wäre alles auch möglich ein live bild von der ipcam anzuzeigen?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlimbo am 03 Oktober 2018, 20:54:40
Für ipcams nutze ich die APP "tinyCam", tinyCam besitzt eine Tasker Schnittstelle, getriggert über AMAD kann ich mir damit bei verschiedenen Ereignissen den Livestream der Cams am TV anzeigen lassen.
Über NotifyAndroidTV kannst du dir höchstens ein Snapshot der cam anzeigen lassen.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: patator am 08 Oktober 2018, 08:54:11
Hallo zusammen, es ist mir möglich ein bild von der ipcam zu senden leider cached der tv das Bild wenn der Dateiname gleich bleibt. Somit habe ich das Problem dass das Bild obwohl neuer immer das alte angezeigt wird. Gibt es eine Möglichkeit das zu ändern?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: dinkel75 am 23 Januar 2019, 18:22:43
Hallo,

ich probiere mir per imageurl eine Bild auf meine FireTV zu schicken - das klappt aber nicht!
Funktioniert das bei euch noch?
Muss ich vielleicht noch Attribute setzen - Textnachrichten und sogar Plots über image geschickt funktionieren.

Danke

Ciao
Michael
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 23 Januar 2019, 18:25:51
ja. funktioniert noch.

ich verwende es so:

fhem( "set braviaNotify msg title=$name imageurl=$imageurl width=extrawide position=center type=complete" );

$imageurl ist direkt die snapshot url einer cam.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: dinkel75 am 23 Januar 2019, 20:07:20
Funkt bei mir leider nicht - dürfte nicht mit jeder Hardware funktionieren, hab eine FireTV Box.
Trotzdem Danke!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: dinkel75 am 24 Januar 2019, 06:19:05
Jetzt hab ich meinen Fehler gefunden.
Ich hab NotifyFireTV auf der Box installiert - scheinbar funktioniert so Text und SVG Plots.
Leider kann ich auf meinem Philips TV PUZ7909 die NotifyAndroidTV aus dem PlayStore nicht installieren - "wird nicht unterstützt".

@justme1968: Wäre es möglich die NotifyFireTV App so anzupassen, so das es mit dieser Version auch funktioniert?

Danke
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: panzaeron am 04 Februar 2019, 00:33:32
Ich weiß es ist nicht direkt eine FHEM Frage, aber vielleicht kann mir totzdem jemand helfen. Ich versuche gerade Notification for Android TV mit cURL von einer Linux Kommandozeile aus anzusteuern:
curl -v -i -F "type=0" -F "title=Titel" -F "msg=Ist was zu sehen?" -F "duration=14" -F "position=0" -F "width=0" -F "bkgcolor=#607d8b" -F "transparency=1" -F "force=true" http://192.168.0.26:7676
Es wird keine Fehlermeldung ausgegeben:
* Rebuilt URL to: http://192.168.0.26:7676/
*   Trying 192.168.0.26...
* TCP_NODELAY set
* Connected to 192.168.0.26 (192.168.0.26) port 7676 (#0)
> POST / HTTP/1.1
> Host: 192.168.0.26:7676
> User-Agent: curl/7.58.0
> Accept: */*
> Content-Length: 1040
> Content-Type: multipart/form-data; boundary=------------------------a3824a2e42e56e58
> Expect: 100-continue
>
* Done waiting for 100-continue
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< Content-Type: text/html
Content-Type: text/html
< Date: Sun, 3 Feb 2019 23:23:19 GMT
Date: Sun, 3 Feb 2019 23:23:19 GMT
< Connection: keep-alive
Connection: keep-alive
< Content-Length: 0
Content-Length: 0

Aber ich bekomme keine Nachricht auf dem Fernseher angezeigt  :( Eine Nachricht vom Smartphone zu senden ist kein Problem.
Hat einer eine Idee was an meinem Aufruf falsch ist.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 16 Mai 2019, 21:28:01
Wollte Danke sagen für das Modul.
Funktioniert einwandfrei mit meinem Philips 65PUS8102 Android TV (mit Android Version Pie).
Nutze es um die Lautstärke des AV Recievers anzuzeigen da das Philips nicht hinbekommt mit CEC  ;)
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 06 Juni 2019, 20:19:55
Hi popy,

ich mache genau dasselbe, wie Du. Ich habe nur festgestellt, dass ich nachdem eine Notification auf dem Philips sichtbar war und ich auf der Fernbedienung die "OK" Taste drücke, ich in die NotifyAndroidTV App auf dem Philips wechsle, wo ich dann die Details zur Nachricht nochmal sehe. Ist das bei Dir auch so?

Viele Grüße
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 06 Juni 2019, 20:39:44
Ich habe nochmal etwas herum experimentiert:

Mein Notify sah mal so aus:

OnkyoReceiver:volume:..* set NotifyTV msg duration=1 interrupt=true title="Volume" $EVTPART1

Offenbar bewirkt die Option interrupt, dass die Notification im TV als "zu bestätigen" markiert wird. Also habe ich beim Klick auf OK die Details der Message aufgerufen. Interrupt=false (oder default) zeigt nur noch die msg für die angegebene duration an.

Sorry, wenn das für den einen oder anderen Android User bereits bekannt ist. Ich hatte bis zu meinem Philips bisher keine Android Erfahrung ;-)

Viele Grüße
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 06 Juni 2019, 20:59:51
kann ich ein anderes icon senden?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 20 August 2019, 22:49:00
Hallo,

hat schon jemand opensource Projekt "PiPup" (ähnlich wie "Notifications for Android TV") ausprobiert?
https://github.com/rogro82/PiPup

Gruß, sxd85
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Remstäler am 19 November 2019, 08:05:41
Hallo zusammen,

habe mich nun auch mit dem Modul beschäftigt und es klappt soweit super mit einem Philips TV.

Ich hab nur ein Problem:

Wie bringe ich einen variablen Wert zur Anzeige der in einer Dummy-Variable steht ?


Beispiel: Ich will die Position meiner Markise anzeigen, der Positionswert ist variabel.

Mein Befehl lautet: set Android_TV msg Markise ist auf "Dummy_Position:state" % gefahren !



Wie muss ich den Dummy hier einfügen, damit es mir den Positionswert als Zahl anzeigt ?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 19 November 2019, 08:50:45
das hat nichts speziell mit dem modul zu tun.

schau dir mal in der commandref setmagic an. oder wie im notify $EVENT funktioniert. oder wie man mit perl einen string zusammenbaut und dann den fhem aufruf verwendet.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Remstäler am 19 November 2019, 09:29:00
Nein, ich wollte es auch nicht auf das Modul "schieben". Da liegt der Fehler sicher nicht.

Der Fehler ist bei mir, ich weiß einfach nicht wie ich diese Variable "schreiben" muss damit nur der Wert angezeigt wird.

Sicher fehlen mir nur irgendwelche Steuerzeichen vor und/oder hinter der Variable.


Werde mir diese Infos mal anschauen - DANKE !!!
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 20 November 2019, 20:33:58
Zitat von: sxd85 am 20 August 2019, 22:49:00
Hallo,

hat schon jemand opensource Projekt "PiPup" (ähnlich wie "Notifications for Android TV") ausprobiert?
https://github.com/rogro82/PiPup

Gruß, sxd85

Bin gerade dabei, krieg's aber nicht an's laufen

Grüße vom Gent
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 21 November 2019, 23:22:10
Zitat von: gent am 20 November 2019, 20:33:58
Bin gerade dabei, krieg's aber nicht an's laufen

Hallo Gent,
kommst du zufällig an die APK-Datei der App?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 22 November 2019, 21:11:41
nein, leider nicht, aber die beta gibt's ja auch im google play store
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 22 November 2019, 22:26:47
Zitat von: gent am 22 November 2019, 21:11:41
nein, leider nicht, aber die beta gibt's ja auch im google play store

Alles klar. Leider hat der Fernseher, der mir zur Verfügung steht, nur LAN-Anschluss und die App ist nur "Android TV" kompatible, also nicht mit dem Smartphone zu bekommen.

Falls ich irgendwann die APK in die Hand kriege, kann ich dir gerne helfen.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 02 Dezember 2019, 20:01:38
Zitat von: sxd85 am 22 November 2019, 22:26:47Falls ich irgendwann die APK in die Hand kriege, kann ich dir gerne helfen.

Habe endlich die APKs (Bundle) runtergeladen. Mein FHEM-Server läuft gerade nicht, aber mit curl kann ich Texte, Bilder und sogar Videos an mein (Sony) Android TV senden.

Was "Notifications for Android TV" längst kann, aber PiPUP nicht ist, lokale Mediadateien an den Fernseher senden. Ansonsten klappt alles, obwohl die App noch Beta ist.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 02 Dezember 2019, 20:03:16
sobald man die app ohne umwege auf den fernseher bekommt baue ich das gerne ins fhem modul ein
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 04 Dezember 2019, 21:22:49
Hallo André

pipup ist zwar noch beta, aber es ist (zumindest mit aktueller Firmware auf dem TV) möglich, das zu verwenden. Wie hoch schätzt Du denn den Aufwand ein, ein Modul dafür zu entwickeln? Ich würde Dir auch gerne helfen, weiß aber nicht wie. Vielleicht können wir uns da mal austauschen.

Viele Grüße, Holger
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 05 Dezember 2019, 10:01:26
nach allem was zu lesen ist habe ich aktuell nicht vor auf android 8 zu gehen. vor allem da man nicht bzw. nicht einfach zurück kommt. auch zum sideloading der app habe ich keine lust.

d.h. für mich wäre die voraussetzung zum testen das es mit android 7 und app store auf meinem a1 geht.

zum modul: es schaut auf den ersten blick dem Notifications for Android TV zumindest ähnlich und der aufwand es ins bestehende modul einzauen sollte überschaubar sein. der knackpunkt ist die diversen möglichen permutationen der parameter zu testen. und das geht nur wenn man wirklich davor sitzt.

schau dir einfach mal das aktuelle modul an.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: gent am 05 Dezember 2019, 20:23:57
Hallo André,

ich habe mir das NotifyAndroidTV angesehen, aber ich bin nicht sicher, ob da nicht ein eigenes Modul für pipup besser wäre. NATv basiert auf einem Form based Content Type, während pipup json im body benötigt.

An Alle, die hier mitlesen: Hat jemand ein ganz rudimentäres Modul, welches im body einen raw json-string per http post an eine URL senden kann? Dann würde ich mich mal an einem fhem modul versuchen.

Viele Grüße, Holger
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 05 Dezember 2019, 20:33:11
es gibt diverse module die json nutzen. das die hue module sind ein beispiel.

ich würde im notify android modul einfach einfach des kodieren der parameter in die form daten und das kodieren nach json jeweils in eine routine stecken und alles andere gleich lassen. selbst wenn es nicht das gleiche modul wird würde ich mit dem aktuellen anfangen und es kopieren.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 12 Dezember 2019, 21:03:01
Zitat von: justme1968 am 05 Dezember 2019, 10:01:26
nach allem was zu lesen ist habe ich aktuell nicht vor auf android 8 zu gehen. vor allem da man nicht bzw. nicht einfach zurück kommt. auch zum sideloading der app habe ich keine lust.

d.h. für mich wäre die voraussetzung zum testen das es mit android 7 und app store auf meinem a1 geht.

Das habe ich leider nicht verstanden. PiPup läuft doch auf Android 7 und ist mit "a1" nicht Sony KD-A1 gemeint?  ???
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 12 Dezember 2019, 21:05:53
ja. aber ganz oben steht etwas von aktueller firmware. das wäre 8 und nicht 7. und es steht etwas von apk bundle runter laden. das heisst für mich adb und side loading statt app store.

wie bekommt man das ding denn jetzt auf seinen fernseher?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: sxd85 am 13 Dezember 2019, 23:20:51
Zitat von: justme1968 am 12 Dezember 2019, 21:05:53
ja. aber ganz oben steht etwas von aktueller firmware. das wäre 8 und nicht 7. und es steht etwas von apk bundle runter laden. das heisst für mich adb und side loading statt app store.

wie bekommt man das ding denn jetzt auf seinen fernseher?

Also, die Aussagen stammen teilweise von mir. Allerdings ist meine Situation eine ganz andere, weil der Fernseher, den ich einrichte keinen Internetanschluss hat. Nur deswegen suchte ich die entsprechende APK(s).

Du kannst die App aber ganz gewöhnlich aus dem Play Store beziehen.  :)

Achja, was mit PiPup ebenfalls noch nicht geht: RTSP streamen und HTTP Auth. Aber "Notifications f. Android TV" kann das alles auch nicht.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 14 Dezember 2019, 12:21:21
ok. ich war nur irritiert da auf der GitHub seite auch etwas in der art steht. hab es aber jetzt auch direkt im playstore gefunden.

ich probiere es mal aus.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 15 Dezember 2019, 15:44:21
ich habe mal einen neuen thread für die test version mit PiPup aufgemacht: https://forum.fhem.de/index.php/topic,106363.0.html (https://forum.fhem.de/index.php/topic,106363.0.html)

es ist erst mal ein eigenes modul, aber der code ist zu 99% identisch und ich glaube das ich es wieder zusammen fassen werde.

aktuell ist nur die json variante für image urls eingebaut. für eingebettete bilder sind es wie bei notify for android version forms. d.h. das der code wird noch ähnlicher.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 11 Februar 2020, 12:41:59
Hallo Verwende NotifyAndroidTV schon länger.
Manchmal fällt mir folgendes auf:

2020.02.11 12:20:01 1: PERL WARNING: Argument "white" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#009688" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#4CAF50" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#607d8b" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#00BCD4" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#FFC107" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#000000" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#F44336" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#303F9F" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.
2020.02.11 12:20:01 1: PERL WARNING: Argument "#E91E63" isn't numeric in numeric eq (==) at ./FHEM/37_NotifyAndroidTV.pm line 162.


An der Zeile 162 dürfte es ein Problem geben, ist das ein bekanntes Problem?

Danke
pOpY
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 11 Februar 2020, 12:46:02
die zeilennummer passt nicht zur aktuellen version.  bitte mach mal ein update und zeige die version ausgabe.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 11 Februar 2020, 12:50:33
Zitat von: justme1968 am 11 Februar 2020, 12:46:02
die zeilennummer passt nicht zur aktuellen version.  bitte mach mal ein update und zeige die version ausgabe.

Stimmt, scheint ziemlich alt zu sein:

37_NotifyAndroidTV.pm 16138 2018-02-09 20:36:36Z justme1968

Ein Update meines FHEM systems habe ich gerade eben erst gemacht.
Ein update check sagt:


Downloading https://fhem.de/fhemupdate/controls_fhem.txt

fhem
List of new / modified files since last update:
UPD ./CHANGED
UPD FHEM/10_MQTT2_DEVICE.pm
UPD FHEM/30_HUEBridge.pm
UPD FHEM/31_HUEDevice.pm
UPD FHEM/33_readingsGroup.pm
UPD FHEM/36_WMBUS.pm
UPD FHEM/59_GSI.pm
UPD FHEM/70_DENON_AVR.pm
UPD FHEM/70_Pushsafer.pm
UPD FHEM/73_AutoShuttersControl.pm
UPD FHEM/77_SMAEM.pm
UPD FHEM/93_DbRep.pm
UPD FHEM/98_GAEBUS.pm
UPD FHEM/98_HTTPMOD.pm
UPD FHEM/98_MSwitch.pm
UPD FHEM/98_logProxy.pm
UPD FHEM/98_structure.pm
UPD FHEM/UConv.pm
UPD FHEM/WMBus.pm
UPD FHEM/lib/AttrTemplate/httpmod.template
UPD FHEM/lib/AttrTemplate/mqtt2.template
UPD www/pgm2/MSwitch_Wizard.js

New entries in the CHANGED file:
- bugfix:  77_SMAEM: fix Perl warning if no frequence is delivered
- bugfix:  93_DbRep: fix Perl warning
- feature: 70_DENON_AVR: added more surround modes (thx Shadow3561)
- bugfix:  70_Pushsafer: fix availableMessages reading
- bugfix:  73_AutoShuttersControl: fix GetAntiFreez
Downloading https://raw.githubusercontent.com/klein0r/fhem-style-haus-automatisierung/version-2/controls_ha_theme.txt

ha_theme
nothing to do...
Downloading https://raw.githubusercontent.com/klein0r/fhem-tasmota/master/controls_tasmota.txt

tasmota
nothing to do...


Kein Notify modul?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 11 Februar 2020, 12:52:31
das ist die aktuelle version. aber die zeilennummer stimmt trotzdem nicht.

hast du irgendetwas von hand gemacht?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 11 Februar 2020, 12:58:32
Nein, nichts verändert.
Habe meine gerade mit BeyondCompare gegen den trunk verglichen -> Binär identisch.

Hier der Code welches ein Notify macht:


#################################################
# Volume OSD TV
#################################################
sub VolumeOSDTV()
{
    # Log
    #Log 1, "VolumeAVR:".ReadingsVal("WZ_AVR","volume","0");

    #TV eingeschaltet & es ist noch kein OSD angezeigt
    if(ReadingsVal("WOL_WZ_TV","isRunning","true") eq "true")
    {
      #Zeige erstes OSD an
        fhem('set WZ_ATV_Notify msg bkgcolor=white interrupt=true position=bottom-left transparency=0% duration=1 offset=0 icon=mid title="Lautstärke" '.ReadingsVal("WZ_AVR","volume","0")); 
    }
}

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 12 Februar 2020, 15:57:36
bitte ändere mal die zeile

164         } elsif( grep {$_==$param_h->{$option}} values %{$options->{$option}} )  {

in

164         } elsif( grep {$_ eq $param_h->{$option}} values %{$options->{$option}} )  {

und schau ob die meldung weg ist. wie gesagt passen die zeilennummern aus der meldung nicht zum modul.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 12 Februar 2020, 22:21:53
Zitat von: justme1968 am 12 Februar 2020, 15:57:36
bitte ändere mal die zeile

164         } elsif( grep {$_==$param_h->{$option}} values %{$options->{$option}} )  {

in

164         } elsif( grep {$_ eq $param_h->{$option}} values %{$options->{$option}} )  {

und schau ob die meldung weg ist. wie gesagt passen die zeilennummern aus der meldung nicht zum modul.

Geändert & Funktioniert! Danke!

Hatte ja eine message mit bkgcolor=white aufgerufen und es kam auch kein Fehler.
Der Meldungshintergrund war aber nicht weiß sondern cyan.
Ist mir damals beim aktivieren des Moduls nicht aufgefallen.

Nach dem ändern und aufruf meiner message mit "white" kommt:


error:
bkgcolor value must be one of: amber black cyan green grey indigo pink red teal


Auch kann ich jetzt die Hintergrundfarbe mit bkgcolor und eines der oben genannten Farbwerte setzen  :)

Danke nochmals für Deine Unterstützung.
Kann eingecheckt werden.

PS.: Warum die Zeilennummern nicht passen kann ich mir nicht erklären.

pOpY

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 20 Februar 2020, 21:04:29
@justme1968

Hallo Andre.

War auf der Suche wie ich die Schriftgröße anpassen kann.
Die App für Android kann 4 verschiedene Größen:


Habe mit einem HTTP Sniffer am Handy herausgefunden was man mitgeben muss um das zu erreichen:


Kannst du das Bitte aufnehmen dass es auch einen "defaultFontSize" gibt und in der Dokumentation?

Danke
pOpY
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 20 Februar 2020, 21:19:05
probier mal ob es mit der angehängten version geht.

Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 20 Februar 2020, 21:32:00
Zitat von: justme1968 am 20 Februar 2020, 21:19:05
probier mal ob es mit der angehängten version geht.

Geht leider nichtmehr wenn defaultFontSize gesetzt ist.
Mit verbose 5 sehe ich dass z.B.: "large" mitgegeben wird.
Das ist nicht korrekt es muss 1, 2 oder 3 mitgegeben werden.
Wobei 1 - small & 3 - large ist.

Hier da Log:


2020.02.20 21:30:22 5: WZ_ATV_Notify: using icon ./www/images/default/Trockner.png
2020.02.20 21:30:22 5: --boundary
Content-Disposition: form-data; name="msg"

Bitte ausräumen!
--boundary
Content-Disposition: form-data; name="interrupt"

0
--boundary
Content-Disposition: form-data; name="position"

0
--boundary
Content-Disposition: form-data; name="offsety"

0
--boundary
Content-Disposition: form-data; name="bkgcolor"

#607d8b
--boundary
Content-Disposition: form-data; name="fontsize"

large
--boundary
Content-Disposition: form-data; name="duration"

10
--boundary
Content-Disposition: form-data; name="transparency"

0
--boundary
Content-Disposition: form-data; name="offset"

0
--boundary
Content-Disposition: form-data; name="title"

Trockner ist fertig

2020.02.20 21:30:22 4: NotifyAndroidTV (WZ_ATV_Notify) - send notification


pOpY
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 20 Februar 2020, 21:39:48
Habe mal zum testen folgendes in der pm file gemacht:


                fontsize => { '1' => 1,
                              '2' => 2,
                              '3' => 3,
                            },


Jetzt geht es, ist halt gui bei den attr's nicht schön.
Dir fällt da sicher was eleganteres ein  ;)

pOpY
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 21 Februar 2020, 15:00:11
das ist scheinbar ein fehler den es schon immer gibt.

probier bitte noch mal die angehängte version.
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 21 Februar 2020, 22:08:12
Zitat von: justme1968 am 21 Februar 2020, 15:00:11
das ist scheinbar ein fehler den es schon immer gibt.

probier bitte noch mal die angehängte version.

defaultFontsize funktioniert nun wie es soll.
Danke!
Kann ins nächste Update  ::)
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 24 Februar 2020, 21:11:54
ist eingecheckt
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: popy am 24 Februar 2020, 21:31:50
Danke!  :D
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: Schlites am 26 März 2021, 13:40:40
Ist diese Modul nutzbar / erweiterbar für "dream Notifications", welches auch aus der Feder von Christian Fees stammt?
Titel: Antw:neues modul 37_NotifyAndroidTV.pm
Beitrag von: justme1968 am 26 März 2021, 15:40:04
ich vermute mal. ich habe aber nirgends etwas zum api gefunden. da es der gleiche entwickler ist funktioniert vielleicht alles genau so. probier es einfach aus. wenn es nicht geht: versuch etwas zu api zu erfahren.
Titel: Aw: neues modul 37_NotifyAndroidTV.pm
Beitrag von: alanblack am 17 April 2024, 18:44:02
@justme1968
Ich bin gerade erst über das Modul gestolpert - finde ich super.

Eine Erweiterung möchte ich noch anregen: IPv6
Mit einer IPv4-Adresse läuft das Modul.
Mit einem Hostnamen auch.
Mit einer IPv6-Adresse [IPv6] bekomme ich lastError: can't find host
Spaßeshalber mal die [] weggelassen führt zu lastError: malformed or unsupported URL

Falls Du Zeit hast,... sonst schaue ich mal, ob ich die Ursache finde.

Grüße