Neues Modul 70_SamsungAV

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

Vorheriges Thema - Nächstes Thema

bennebartsch

#30
Schon längst probiert, die Zeit reicht aus. Bekomme immer das gleiche (vollständige und valide) JSON.

ohne JSON::
2019.07.15 12:35:55.477 5: [SamsungAV] stv send payload: {"params":{"event":"ed.installedApp.get","TypeOfRemote":"SendRemoteKey","to":"host"},"method":"ms.channel.emit"}
2019.07.15 12:35:56.491 5: [SamsungAV] response stv to write_payload: {"data":{"data":[{"appId":"111299001912","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/111299001912/250x250.png","is_lock":0,"name":"YouTube"},{"appId":"11101200001","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/11101200001/250x250.png","is_lock":0,"name":"Netflix"},{"appId":"3201512006963","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201512006963/250x250.png","is_lock":0,"name":"Plex"},{"appId":"3201601007250","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201601007250/250x250.png","is_lock":0,"name":"Google Play Filme"},{"appId":"11091000000","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/11091000000/250x250.png","is_lock":0,"name":"Facebook Watch"},{"appId":"3201708014649","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201708014649/250x250.png","is_lock":0,"name":"Sports"},{"appId":"3201607009920","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201607009920/250x250.png","is_lock":0,"name":"DAZN"},{"appId":"3201606009684","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201606009684/250x250.png","is_lock":0,"name":"Spotify"},{"appId":"org.tizen.browser","app_type":4,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/webbrowser/250x250.png","is_lock":0,"name":"Internet"},{"appId":"20172100006","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/20172100006/250x250.png","is_lock":0,"name":"e-Manual"},{"appId":"3201705012365","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201705012365/250x250.png","is_lock":0,"name":"ZDF mediathek"},{"appId":"3201511006428","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201511006428/250x250.png","is_lock":0,"name":"Rakuten TV"},{"appId":"3201512006785","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201512006785/250x250.png","is_lock":0,"name":"Prime Video"},{"appId":"3201412000679","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201412000679/250x250.png","is_lock":0,"name":"ARD"},{"appId":"3201608010269","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201608010269/250x250.png","is_lock":0,"name":"Brandworld"},{"appId":"3201608010221","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201608010221/250x250.png","is_lock":0,"name":"ProSieben"},{"appId":"3201505002690","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201505002690/250x250.png","is_lock":0,"name":"CHILI"},{"appId":"3201506003123","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201506003123/250x250.png","is_lock":0,"name":"maxdome"},{"appId":"3201903018105","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201903018105/250x250.png","is_lock":0,"name":"Samsung Sportworld"},{"appId":"3201804016033","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201804016033/250x250.png","is_lock":0,"name":"waipu.tv – Fernsehen wie noch nie"},{"appId":"3201704012215","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201704012215/250x250.png","is_lock":0,"name":"VR-SmartTV"},{"appId":"3201612011418","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201612011418/250x250.png","is_lock":0,"name":"McAfee Security for TV"}]},"event":"ed.installedApp.get","from":"host"}

2019.07.15 12:35:56.491 5: [SamsungAV]
2019.07.15 12:35:56.491 3: [SamsungAV] stv timelag to reach all json data for app list might be too small


mit JSON::
2019.07.15 12:50:24.350 5: [SamsungAV] stv send payload: {"method":"ms.channel.emit","params":{"TypeOfRemote":"SendRemoteKey","event":"ed.installedApp.get","to":"host"}}
2019.07.15 12:50:25.355 5: [SamsungAV] response stv to write_payload: {"data":{"data":[{"appId":"111299001912","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/111299001912/250x250.png","is_lock":0,"name":"YouTube"},{"appId":"11101200001","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/11101200001/250x250.png","is_lock":0,"name":"Netflix"},{"appId":"3201512006963","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201512006963/250x250.png","is_lock":0,"name":"Plex"},{"appId":"3201601007250","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201601007250/250x250.png","is_lock":0,"name":"Google Play Filme"},{"appId":"11091000000","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/11091000000/250x250.png","is_lock":0,"name":"Facebook Watch"},{"appId":"3201708014649","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201708014649/250x250.png","is_lock":0,"name":"Sports"},{"appId":"3201607009920","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201607009920/250x250.png","is_lock":0,"name":"DAZN"},{"appId":"3201606009684","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201606009684/250x250.png","is_lock":0,"name":"Spotify"},{"appId":"org.tizen.browser","app_type":4,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/webbrowser/250x250.png","is_lock":0,"name":"Internet"},{"appId":"20172100006","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/20172100006/250x250.png","is_lock":0,"name":"e-Manual"},{"appId":"3201705012365","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201705012365/250x250.png","is_lock":0,"name":"ZDF mediathek"},{"appId":"3201511006428","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201511006428/250x250.png","is_lock":0,"name":"Rakuten TV"},{"appId":"3201512006785","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201512006785/250x250.png","is_lock":0,"name":"Prime Video"},{"appId":"3201412000679","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201412000679/250x250.png","is_lock":0,"name":"ARD"},{"appId":"3201608010269","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201608010269/250x250.png","is_lock":0,"name":"Brandworld"},{"appId":"3201608010221","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201608010221/250x250.png","is_lock":0,"name":"ProSieben"},{"appId":"3201505002690","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201505002690/250x250.png","is_lock":0,"name":"CHILI"},{"appId":"3201506003123","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201506003123/250x250.png","is_lock":0,"name":"maxdome"},{"appId":"3201903018105","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201903018105/250x250.png","is_lock":0,"name":"Samsung Sportworld"},{"appId":"3201804016033","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201804016033/250x250.png","is_lock":0,"name":"waipu.tv – Fernsehen wie noch nie"},{"appId":"3201704012215","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201704012215/250x250.png","is_lock":0,"name":"VR-SmartTV"},{"appId":"3201612011418","app_type":2,"icon":"/opt/share/webappservice/apps_icon/FirstScreen/3201612011418/250x250.png","is_lock":0,"name":"McAfee Security for TV"}]},"event":"ed.installedApp.get","from":"host"}

2019.07.15 12:50:25.356 5: [SamsungAV] ARRAY found
2019.07.15 12:50:25.356 5: [SamsungAV] Application: YouTube  Id: 111299001912
2019.07.15 12:50:25.356 5: [SamsungAV] Application: Netflix  Id: 11101200001
2019.07.15 12:50:25.356 5: [SamsungAV] Application: Plex  Id: 3201512006963
2019.07.15 12:50:25.356 5: [SamsungAV] Application: Google Play Filme  Id: 3201601007250
2019.07.15 12:50:25.356 5: [SamsungAV] Application: Facebook Watch  Id: 11091000000
2019.07.15 12:50:25.356 5: [SamsungAV] Application: Sports  Id: 3201708014649
2019.07.15 12:50:25.357 5: [SamsungAV] Application: DAZN  Id: 3201607009920
2019.07.15 12:50:25.357 5: [SamsungAV] Application: Spotify  Id: 3201606009684
2019.07.15 12:50:25.357 5: [SamsungAV] Application: Internet  Id: org.tizen.browser
2019.07.15 12:50:25.357 5: [SamsungAV] Application: e-Manual  Id: 20172100006
2019.07.15 12:50:25.357 5: [SamsungAV] Application: ZDF mediathek  Id: 3201705012365
2019.07.15 12:50:25.357 5: [SamsungAV] Application: Rakuten TV  Id: 3201511006428
2019.07.15 12:50:25.357 5: [SamsungAV] Application: Prime Video  Id: 3201512006785
2019.07.15 12:50:25.358 5: [SamsungAV] Application: ARD  Id: 3201412000679
2019.07.15 12:50:25.358 5: [SamsungAV] Application: Brandworld  Id: 3201608010269
2019.07.15 12:50:25.358 5: [SamsungAV] Application: ProSieben  Id: 3201608010221
2019.07.15 12:50:25.358 5: [SamsungAV] Application: CHILI  Id: 3201505002690
2019.07.15 12:50:25.358 5: [SamsungAV] Application: maxdome  Id: 3201506003123
2019.07.15 12:50:25.358 5: [SamsungAV] Application: Samsung Sportworld  Id: 3201903018105
2019.07.15 12:50:25.358 1: PERL WARNING: Wide character in print at fhem.pl line 979.
2019.07.15 12:50:25.358 5: [SamsungAV] Application: waipu.tv – Fernsehen wie noch nie  Id: 3201804016033
2019.07.15 12:50:25.358 5: [SamsungAV] Application: VR-SmartTV  Id: 3201704012215
2019.07.15 12:50:25.358 5: [SamsungAV] Application: McAfee Security for TV  Id: 3201612011418
2019.07.15 12:50:25.394 4: [SamsungAV] stv online with 192.168.2.220:8001 - HTTP-Response: 401

KölnSolar

Danke fürs testen.
Tssss, seltsam. Muss aber trotzdem eine Besonderheit bei Dir sein. Ich passe es mal an....
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

trs

Hallo Markus,

kannst Du die Channel-Nummer-Eingabe 4-stellig machen? dann muss man die Kanäle nicht auf die ersten 99 legen;-)

Ja, ich weiß, man kann auch die einzelnen Ziffern übergeben, aber dann muss man dazwischen immer ein "wait" einfügen, da sonst Eingaben verschluckt werden.


Gruss
Thorsten

KölnSolar

Hi Thorsten,
meinst Du das macht wirklich Sinn ? Man müsste ja dann in der riiiiieeeesen Liste seine Kanäle suchen. ??? Ist dann die FHEM-remotecontrol nicht ideal für Deinen Zweck ? 4 clicks und Du hast umgeschaltet.

Absolute channelwahl geht ja nur über den DLNA-Renderer. Der gibt sogar nur einstellig vor. Heißt also, dass das Modul bei größeren Werten keine Probleme machen sollte. Kannst Du mal die Befehle
set TV_Samsung-device channel 1xyz
und
set TV_DLNARenderer-device channel 1xyz
im Webinterface ausprobieren.
Wenn einer oder gar beide Befehle funktionieren, fällt uns vielleicht ein workaround ein. Ich hab da schon grob was im Hinterkopf....

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

trs

Hallo Markus,

den DNLARenderer hab ich nicht installiert, und der Set-Befehl 4-stellig geht ja leider nicht. Kann man auf dem TV verfolgen, kommen nur zwei Ziffern an.



Gruss
Thorsten

KölnSolar

Hallo Thorsten,
wie recht Du hast. Ich hatte das indirekt über die Makro-Funktion umgesetzt.  ::)
Mit der lässt sich dann auch 4-stellig schalten. Habs gerade ausprobiert. Hätten wir schon einmal einen halben workaround.  ;)
Mit dummy und notify könntest Du Dir Deine konkreten Kanäle definieren.
define TV_channel dummy
attr TV_channel setList state:1000,1001...........
attr TV_channel webCmd state


define act_on_TV_channel notify TV_channel { if ("$EVENT" eq "1000")  { fhem("set Fernseher 0_macro 1,0,0,0") } elseif ("$EVENT" eq "1001")  { fhem("set Fernseher 0_macro 1,0,0,1") }  elseif ..... Damit wäre es vollständig. Ist das die Lösung ?

Mit remotecontrol ist nix für Dich ?

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

trs

#36
Hallo Markus,

danke für Deine schnelle Hilfe. Das ist leider auch nicht das Richtige. Ich muss weiter ausholen: Ich habe einen Echo Dot geschenkt bekommen. Ich hab mich bis dahin geweigert, so ein Ding zu benutzen (Abhöreinrichtung;-)), aber jetzt, wo das Teil da ist...

Ich will die einzelnen Sender mit Namen schalten ("Alexa, schalte ARD ein"). Geht auch, ich habe warscheinlich einen schlechten Lösungsansatz gewählt:
-Dummy mit dem Sendernamen gesetzt
-DOIF mit dem Befehl, über SamsungAV die Sendernummer zu übermitteln

Ich muss die Sendernummer 4-stellig eingeben, da sonst der TV bei 2 oder 3 Stellen wartet, ob man noch mehr eingiebt. Leider kann ich die Zahlen auch nicht in einem Rutsch hintereinander übermitteln, da sonst Eingaben übersprungen werden. Also dazwischen Waits mit 0.2 sec.

Das ganze ist sehr aufwendig. Wenn ich jedenfalls 4-stellig übergeben könnte, wäre dass aber schon eie Erleichterung.

Dann habe ich überlegt, ob man das DOIF einmalig anlegen kann, und die Sendernummer als Konstante aus dem Sender.Dummy übernimmt. Da bin ich aber auch nicht weiter gekommen, siehe

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

Nun gebe ich erst ein mal auf...


Danke und Gruss
Thorsten


KölnSolar

Du weißt doch: aufgeben is nicht.  ;D
Ginge denn nichtdefine TV_channel dummy
attr TV_channel setList state:ARD,ZDF...........
attr TV_channel webCmd state

define act_on_TV_channel notify TV_channel { if ("$EVENT" eq "ARD")  { fhem("set Fernseher 0_macro 1,0,0,0") } elseif ("$EVENT" eq "ZDF")  { fhem("set Fernseher 0_macro 1,0,0,1") }  elseif ..... :-\
DOIF ist nicht so meins. Ist mir zu komplex/kompliziert.

Oder liegt es gar an Deiner alexa-Umsetzung ? (Hab da dieselbe Meinung wie Du, aber man kommt am Fortschritt nicht vorbei)
Ich hab das noch nach "alter" Manier mit custom skill, fhemIntents.
Sprachkommando:
Alexa, sage Flimmerkiste das Erste
löst über fhemIntents meine Sub Alexacmd mit "tv1" aus
dort ist dann
"tv1" => "set Fernseher 1;; ich habe A.R.D eingeschaltet"
also der Schaltbefehl und die Voice-Ausgabe von alexa.
alexa-Antwort
ich habe A.R.D eingeschaltet

Will heißen: Wenn ich ARD auf 1000 liegen hätte, müsste ich nur den Makro-Befehl mit 1,0,0,0 in meine sub einbauen.
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

R1k4rd

Hey :)

ZitatIch muss die Sendernummer 4-stellig eingeben, da sonst der TV bei 2 oder 3 Stellen wartet, ob man noch mehr eingiebt. Leider kann ich die Zahlen auch nicht in einem Rutsch hintereinander übermitteln, da sonst Eingaben übersprungen werden. Also dazwischen Waits mit 0.2 sec.

Nur um das direkt mal zu sagen bevor du dich an die vollständige Umsetzung machst, bei mir klappt es auch wenn ich zum Beispiel die Ziffer 2 und danach den Befehl Enter übergebe. Dann ist es, zumindest bei mir, nicht nötig 4 Stellen anzugeben sondern nur eine und mithilfe des Enters wird direkt auf die Senderzahl umgeschalten. Einfach mal probieren, sollte meines Erachtens bei dir aber auch funktionieren, es wäre sauberer und durch eine geringer Befehlsangabe auch schneller und evtl. fehlerunanfälliger. Wenn du Lust hast kannst du ja mal dein Ergebnis hier reinposten, vielleicht findet das irgendwann noch Verwendung bei mir, aber halt mit dem Google Assistant ;)

LG Richard

trs

#39
Hallo Markus,

danke für die Aufmunterung.-)) "0_macro" funktioniert schon mal tadellos. Ich muß bei meiner Lösung leider für jeden Sender einen Dummy setzen, damit ich für jeden Dummy einen Alexa-Namen vergeben kann, und somit den Sender "einschalten".

Wenn jemand noch eine einfachere Lösung hat, dann her damit. ich habe keine Homebridge. Ich werde mich. bei dem Modul Fhem_Connect mit dem Attribut "genericDeviceType - media" außeinandersetzen.

@R1k4rd: meine Sender liegen total versteut, hab ich nicht sortiert (zu faul). Oder hast Du eine Anwendung, mit der das gut funktioniert? Oder eine aktuelle Programmliste?


Gruss
Thorsten

R1k4rd

Zitat@R1k4rd: meine Sender liegen total versteut, hab ich nicht sortiert (zu faul). Oder hast Du eine Anwendung, mit der das gut funktioniert? Oder eine aktuelle Programmliste?

Ich benutze seit Jahren ChanSort, damit funktioniert es eigentlich echt super einfach und schnell (20min wenn du von 1000 auf ca. 50 Sender reduzierst usw.) und man kann dann halt zu jedem Fernseher gehen und die gleiche Senderliste dort einfach importieren. Am besten gehst du so vor: am Fernseher nochmal Sendersuchlauf machen, dann Senderliste mit allen Sendern auf USB exportieren, dann am PC nach Wunsch bearbeiten und dann halt wieder importieren. Hier noch der Link: https://www.chip.de/downloads/ChanSort_60828875.html (unten Rechts manuelle Installation erspart die Werbung von Chip usw.)

LG Richard

trs

Hallo Markus,

zu früh gefreut: Macro geht zwar in der Eingabezeile, im DOIF wird aber nur die erste Ziffer übermittelt, die letzten drei werden verschluckt.


Gruss
Thorsten

KölnSolar

Hi Thorsten,
hab ich nicht ganz verstanden. Der set TV 0_macro 1,0,0,0 bringt nur die 1 auf den TV ? Dann müssten doppelte Kommas helfen, sprich, das DOIF raubt vielleicht zuviel Zeit ? :-\
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

trs

Hallo Markus,

nee, eher andersrum: Das DOIF schickt die einzelnen Befehle (Ziffern) zu schnell hintereinander. Ist genau so, als wenn ich die einzelnen Zahlen hintereinander ohne "wait" dazwischen sende.

Gruss
Thorsten

KölnSolar

das kommt auf dasselbe raus. 2 anstatt 1 Komma geben dem TV mehr Zeit.  ;)
Probier mal...
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