Neues Modul 70_SamsungAV

Begonnen von KölnSolar, 06 Februar 2019, 13:45:13

Vorheriges Thema - Nächstes Thema

trs

Hallo Markus,

alles klar, teste ich.

Ich habe versucht, bei meinem  TV das Attribut "genericDeviceType - media" zu setzen. Dann das Attr. "homebridgeMapping - ChannelController:reading=<reading>,cmd=<cmd>", wie in:

https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa#Finale:_Skill_verkn.C3.BCpfen

beschrieben. Alexa Namen vergeben. Dann in der Alexa App nach neuen Geräten "Typ" TV suchen lassen. Wird auch gefunden, aber mehr als ausschalten geht nicht. Mir fehlt noch das Verständnis. siehe:

https://forum.fhem.de/index.php/topic,102274.0.html

Der User MadMax-FHEM hat seine Mediabox eingebunden. Warum geht das nicht mit dem SamsungAV Modul?

Noch etwas anderes: Wenn ich den TV ausschalte, dauert es, bis SamsungAV erkennt das er aus ist. Das ist klar, er befindet sich noch ca. 2min. im "Dämmerschlaf". Aber nach dem starten dauert es auch 50sec., bis SamsungAV erkennt, das das Ding an ist. Kann man die Zeitspanne verkürzen? Wäre gut, da nach dem Start der Sender erst nach dieser Zeit ungeschaltet werden kann. Ist blöd, wenn der Fernseher auf einem bestimmten Sender gestartet werden soll. (Aufwecken geht ja bestens mit dem WOL-Modul). Das dauert dann 50sec., bis auf den gewünschten Kanal geschaltet werden kann.


Gruss
Thorsten

KölnSolar

Hi Thorsten,
eine Ecke Timelag werden wir nicht vermeiden können. Bis der sich ins Wlan(bei vielen) eingebucht hat. Ich denke die 50s waren subjektiv. Wenn ich mich recht entsinne läuft ein internaltimer mit Periode 60s. Das würd ich ungern ändern wollen.
Du könntest aber ein notify auf Dein WOL machen u. ein set TV statusRequest (mit Verzögerung, die Du austesten musst) absetzen. Danach sollten die TV-Befehle funktionieren.
ZitatDer User MadMax-FHEM hat seine Mediabox eingebunden. Warum geht das nicht mit dem SamsungAV Modul?
Das hat ja wenig mit dem Modul zu tun. In Alexa bin ich nicht mehr so drin und nutze auch die neue Variante nicht. Letztendlich ist die Schnittstelle ein event in FHEM. Und darauf können wir dann aufbauen und den TV schalten. Dummchen Aley weiß ja gar nicht, was sie da von sich gibt und wir schalten den TV.  ;D
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Heimweh

Hallo, ich habe heute meinen Samsung UE55MU7009 erfolgreich eingebunden.
Wenn ich nun versuche eine Textnachricht an den TV zu senden (set_0_textline) dann hängt sich FHEM komplett auf.
Woran könnte das liegen?

Mein TV:


Internals:
   DEF        192.168.178.52 8001
   FUUID      5d4d29c0-f33f-55ed-a41c-6fc6162e95844013
   Host       192.168.178.52
   Mode       
   NAME       MeinFernseher
   NR         1296
   NTFY_ORDER 50-MeinFernseher
   Port       8001
   STATE      on
   TYPE       SamsungAV
   READINGS:
     2019-08-09 10:34:38   state           on
   helper:
Attributes:
   room       TV
   verbose    5


Auszug aus dem Log:


2019.08.09 10:29:11 4: [SamsungAV] MeinFernseher online with 192.168.178.52:8001 - HTTP-Response: 401
2019.08.09 10:29:51 5: [SamsungAV] MeinFernseher command 0_text_line parameter Hallo
DEBUG: .../IO/Socket/SSL.pm:2853: new ctx 94458045728528
DEBUG: .../IO/Socket/SSL.pm:692: socket not yet connected
DEBUG: .../IO/Socket/SSL.pm:694: socket connected
DEBUG: .../IO/Socket/SSL.pm:717: ssl handshake not started
DEBUG: .../IO/Socket/SSL.pm:753: not using SNI because hostname is unknown
DEBUG: .../IO/Socket/SSL.pm:806: set socket to non-blocking to enforce timeout=2
DEBUG: .../IO/Socket/SSL.pm:819: call Net::SSLeay::connect
DEBUG: .../IO/Socket/SSL.pm:822: done Net::SSLeay::connect -> -1
DEBUG: .../IO/Socket/SSL.pm:832: ssl handshake in progress
DEBUG: .../IO/Socket/SSL.pm:842: waiting for fd to become ready: SSL wants a read first
DEBUG: .../IO/Socket/SSL.pm:862: socket ready, retrying connect
DEBUG: .../IO/Socket/SSL.pm:819: call Net::SSLeay::connect
DEBUG: .../IO/Socket/SSL.pm:822: done Net::SSLeay::connect -> -1
DEBUG: .../IO/Socket/SSL.pm:832: ssl handshake in progress
DEBUG: .../IO/Socket/SSL.pm:842: waiting for fd to become ready: SSL wants a read first
DEBUG: .../IO/Socket/SSL.pm:862: socket ready, retrying connect
DEBUG: .../IO/Socket/SSL.pm:819: call Net::SSLeay::connect
DEBUG: .../IO/Socket/SSL.pm:822: done Net::SSLeay::connect -> 1
DEBUG: .../IO/Socket/SSL.pm:877: ssl handshake done
2019.08.09 10:29:51 4: [SamsungAV] HTTP socket-connection to MeinFernseher. SSL_Reply:
2019.08.09 10:29:51 4: [SamsungAV] HTTP socket-connection to MeinFernseher successful.
2019.08.09 10:29:51 5: [SamsungAV] MeinFernseher send to TV: GET /api/v2/channels/samsung.remote.control?name=RkhFTVJlbW90ZQ== HTTP/1.1
Upgrade: websocket
Connection: Upgrade
Host: 192.168.178.52:8002
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13


2019.08.09 10:29:51 5: [SamsungAV] MeinFernseher first websocket response: HTTP/1.1 101 Switching Protocols
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=

RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

KölnSolar

ZitatWenn ich nun versuche eine Textnachricht an den TV zu senden (set_0_textline) dann hängt sich FHEM komplett auf.
Absturz oder extrem langer freeze ?

Du hast den Befehl falsch interpretiert(trotzdem darf das natürlich keine Auswirkung auf das System haben. Das werde ich korrigieren). Du kannst mit dem Befehl keine Textnachricht senden. Dafür musst Du "meinen" DLNA_Renderer einsetzen. 0_textline ist nur dazu da, dass man bei einer App oder WWW-Browser eine Textzeile an die Applikation schicken kann.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Heimweh

Zitat von: KölnSolar am 09 August 2019, 11:04:26
Absturz oder extrem langer freeze ?

Du hast den Befehl falsch interpretiert....

Ich habe mehrere Minuten gewartet bis ich einen Systemreset durchgeführt habe. Zwei mal in Folge hab ich das getestet....
Achso. Ok dann werde ich das DLNA Thema mal angehen. Vielen Dank :)
RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

KölnSolar

Da war dann der Wunsch Vater des Gedanken. 0_text_line ist nur für Serien bis F implementiert.  ::) Werde ich also korrigieren, so dass der Befehl für jüngere Serien nicht mehr angeboten wird.

Auch, wenn der Befehl unsinnig ist, einen Absturz oder freeze konnte ich bei mir nicht reproduzieren.  :-\
2019.08.09 12:11:16 5: [SamsungAV] Fernseher command 0_text_line parameter what
.
.
2019.08.09 12:11:16 4: [SamsungAV] HTTP socket-connection to Fernseher. SSL_Reply:
2019.08.09 12:11:16 4: [SamsungAV] HTTP socket-connection to Fernseher successful.
2019.08.09 12:11:16 5: [SamsungAV] Fernseher send to TV: GET /api/v2/channels/samsung.remote.control?name=RkhFTVJlbW90ZQ==&token=14508320 HTTP/1.1
Upgrade: websocket
Connection: Upgrade
Host: 192.168.178.61:8002
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13


2019.08.09 12:11:16 5: [SamsungAV] Fernseher first websocket response: HTTP/1.1 101 Switching Protocols
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=


2019.08.09 12:11:16 5: [SamsungAV] Fernseher Statusbytes of second websocket response: 817e0115
2019.08.09 12:11:16 5: [SamsungAV] Fernseher data of second websocket response: {"data":{"clients":[{"attributes":{"name":"RkhFTVJlbW90ZQ==","token":"14508320"},"connectTime":1565345476517,"deviceName":"RkhFTVJlbW90ZQ==","id":"ebef5bd9-81a3-4a70-8525-a676862567ef","isHost":false}],"id":"ebef5bd9-81a3-4a70-8525-a676862567ef"},"event":"ms.channel.connect"}

2019.08.09 12:11:16 4: [SamsungAV] Fernseher sending 0_TEXT_LINE
2019.08.09 12:11:16 5: [SamsungAV] Fernseher send payload: {"params":{"TypeOfRemote":"SendRemoteKey","Cmd":"Click","DataOfCmd":"KEY_0_TEXT_LINE","Option":"false"},"method":"ms.remote.control"}
Es wurde also nur ein nicht vorhandener TV-Befehl gesendet, der dann logischerweise vom TV nicht verarbeitet werden kann.

Was im Vergleich zu Deinem TV als Unterschied auffällt: Der Zugriff bei Dir erfolgte ohne token. Könnte es sein, dass FHEM "hing", weil noch ein secutity-pop-up auf dem TV bestätigt werden wollte ? Oder hast Du nur(was nicht schlimm ist) nicht die aktuellste firmware auf dem TV, sprich automatische firmware-updates ausgeschaltet ?
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Heimweh

Du hast in beide Fällen Recht gehabt. Updates waren aus. Ich habe ein Update gemacht und nochmal 0_set_text durchgeführt. Darauf hin kann ein Pop-up am TV welches ich bestätigen musste.... Fhem hat sich nicht mehr aufgehängt.

Ich danke für Deine Hilfe

Gesendet von meinem LYA-L29 mit Tapatalk

RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

dominik

Hallo,

ich wollte das Modul gerade in Google Assistant nativ integrieren, leider bekomme ich es bei mir nicht eingerichtet.

Model: UE55ES6300

Mit samsungctl kann ich das Gerät steuern und muss nur einmal am TV die Verbindung akzeptieren. Ich habe es auch mit regapp_smartcrypto.py probiert, leider erhalte ich da gar keine Meldung am TV (IP im Script geändert und bereits mehrere Ports probiert). Kannst du mir bitte weiterhelfen damit ich es bei mir testen kann und dann in Google Assistant FHEM Connect implementieren kann?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

KölnSolar

#53
ZitatUE55ES6300
gelesen ?

Edit: Und wo wir einmal hier zum Thema zusammen sind, könnten wir uns austauschen, wie wir zum DLNARenderer  weiter vorgehen.  ;)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

dominik

Ja, gelesen. Ich habe es genau so definiert, leider erhalte ich keine Meldung am TV. Mit der samsungctl App erhalte ich jedoch die Meldung. Das STV Modul habe ich auch noch aktiv am Laufen, stoert das vielleicht das SamsungAV Modul?

Bzgl. DLNARenderer, ich habe im Moment noch den Fokus auf Google Assistant, gibt es größere Punkte die du anpassen möchtest?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

KölnSolar

ZitatBzgl. DLNARenderer, ich habe im Moment noch den Fokus auf Google Assistant, gibt es größere Punkte die du anpassen möchtest
Immens viel. Meine inoffizielle Version hat mittlerweile 133 Downloads.  ??? Ich habe auch einiges an der Struktur des Moduls verändert. Meines Erachtens könnte man meine Version produktiv übernehmen, es müssten sich nur vorab Tester finden, die die Funktionsfähigkeit für die nicht Samsung-devices bestätigen. Ich könnte dann auch ggfs. das Modul für den Support übernehmen....

ZitatIch habe es genau so definiert, leider erhalte ich keine Meldung am TV. Mit der samsungctl App erhalte ich jedoch die Meldung.
Dann guck doch mal auf dem TV und entferne sämtliche vorhandenen Berechtigungen.
ZitatDas STV Modul habe ich auch noch aktiv am Laufen, stoert das vielleicht das SamsungAV Modul?
Puh, bin mir nicht sicher. Das einfachste ist sicherlich, wenn Du es mal deaktivierst(da das STV das nicht kann, einfach ein defmod mit falscher IP)

Und ansonsten ein Log mit verbose=5
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

dominik

DLNARenderer, gerne können wir deine Version übernehmen und für mich ist es auch in Ordnung wenn du den Support übernimmst :)

Wegen TV werde ich später nochmals probieren. Btw, hast du die vielleicht überlegt ein Attribut zu erstellen, wo man ein Mapping der TV Sendernamen auf die Sendernummer macht? Ich würde das nämlich gerne im Google Assistant übernehmen und dann bräuchte niemand homebridgeMappings konfigurieren. Dann könnte man sagen "Schalte den Fernseher auf Pro7" und es wird die Sendungsnummer von Google Assistant FHEM Connect an das Modul gesendet, oder in deinem Modul wird Pro7 auf 7 gemapped und es sendet dann 7 an den TV. Was hältst du davon?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Es läuft nun! :)

Ich musste ein statusRequest manuell durchführen, dann ging es auf "on". Ich habe mir den Code kurz angesehen und wie es aussieht, dürfte SamsungAV_Init nicht aufgerufen werden. Ich habe nun das disable Attribut auf 0 gesetzt (war vorher garnicht gesetzt) und damit wird der regelmäßige Aufruf von SamsungAV_Init ausgelöst.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

KölnSolar

ZitatWas hältst du davon?
wenig.  ;)
Hintergrund ist, dass die Befehle ja generell 1:1 sind. Wenn ich Dich richtig verstehe, müsste das Attribut gelesen, geprüft werden, ob der Befehl vorhanden ist und ggfs. der Befehl ersetzt werden. Was meint denn der Rest dazu ?

ZitatEs läuft nun! :)
Na prima.
ZitatIch habe mir den Code kurz angesehen und wie es aussieht, dürfte SamsungAV_Init nicht aufgerufen werden.
Eigentlich schon.
ZitatIch habe nun das disable Attribut auf 0 gesetzt (war vorher garnicht gesetzt)
muss ja auch nicht. Ist default=0.

ZitatDLNARenderer, gerne können wir deine Version übernehmen und für mich ist es auch in Ordnung wenn du den Support übernimmst :)
Wenn Du meine Version mit Deinen Geräten mal testen könntest auf generelle Funktionsweise, könnte man es wagen meine Version produktiv zu schalten. Du hast ja vermutlich devices, die CaskeId unterstützen. Da hab ich zwar nichts dran geändert, aber wer weiß....
Bei den 133 Downloadern gab es bisher kein Problem. Sind vermutlich aber überwiegend Samsung-Nutzer...
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

dominik

Ich habe mir das SamsungAV_Init nochmals angesehen, diese Ausgabe "[SamsungAV] device $name initialising...." kommt bei mir nie wenn ich es einmal initialisiere.

DLNARenderer, ich habe leider auch kein CaskeId Geraet mehr, aber einige Nutzer bestimmt noch. Wir koennen ja mal im DLNARenderer Thread die Frage stellen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik