NEWS
Anrufer von Fritz.box auf Samsung TV mit Samygo
-
Hallo zusammen,
Ich habe es vor kurzem hinbekommen per iobroker die Rufnummer des aktuellen Anrufers per iobroker auf meinem Samsung TV anzeigen zu lassen. Das ganze habe ich mit einer Fritz.box Cable und einem Samsung UE50es5700, auf dem SamyGo für den root installiert ist, über den iobroker bewerkstelligt.
Falls es jemand interessiert würde ich mal eine Anleitung schreiben, da ich selbst nichts gefunden habe.
Viele GrüßeEdit:
So, hier mal die Sachen die ich gemacht habe.
Host: iobroker auf einem Raspberrypi 2
TV: Samsung UE50ES5700 mit aktuellster Firmware und Samygo (Info: https://wiki.samygo.tv/index.php?title=Main_Page), dies ist ein Root, der Telnet, FTP und ähnliches freischaltet.
Dazu habe ich die Bibliothek libalert genutzt (https://forum.samygo.tv/viewtopic.php?t=9099), diese sollte für Fernseher der Serie B-C-D-E-F-H funktionieren. Dort kann man per telnet verschiedene Nachrichten auf dem Fernseher anzeigen lassen.Die Rootmethode hängt vom jeweiligen Fernseher ab, da sollte am besten im Forum nach dem richtigen Root nachgesehen werden (Für mein Modell hatte folgende Anleitung geholfen https://forum.samygo.tv/viewtopic.php?f=49&t=8721 - ein USB Stick muss aber dann immer eingesteckt bleiben, sobald dieser mal ausgesteckt wird funktioniert der root nicht mehr, aber man hat ja bestimmt einen kleinen 1GB stick über)
Danach wird per FTP die Datei von libalert eingefügt und die Rechte passend gesetzt.
Somit wäre der Fernseher Softwareseitig vorbereitet.Auf dem RaspberryPi loggt man sich dann ein (hier verwende ich putty)
Per netcat loggt man sich dann mal auf dem TV ein: "nc [IP-Adresse] 23" (23 für telnet port)
Um zu testen ob es funktioniert benutzen wir einfach das Beispiel der libalert Bibliothek.
samyGOso -d -A -B -l /mnt/opt/privateer/usr/libso/libAlert.so BLINKS:3 DELAY:200 MSGBOX:"Blah!"Also gehts auf zum iobroker, dort wird der Javascript-Adapter benötigt. Dort muss bei der Konfiguration das Häckchen bei "Erlaube das Programm "exec"" gesetzt werden.
Zudem habe ich den "fritzbox Adapter" installiert. Dieser wird nun entsprechend konfiguriert mit IP-Adresse und Zugangsdaten.In den Skripten öffnen wir ein neues Blocklyscript. mit folgenden Blöcken:
Da man zu oft Anführungszeichen nutzt hab ich mich dafür entschieden den Befehl in die Datei /opt/samygo/msg.txt zu schreiben und diesen dann auszuführen.
Es wird zuerst geprüft ob aktuell angerufen wird, anschließend wird etwas gewartet und anschließend der Text in die Datei geschrieben. Hier wird die Nummer aus dem fritzbox Adapter gelesen und zusammen der Code in eine textdatei geschrieben. Dieser sieht bei mir dann folgendermaßen aus:
Kann natürlich selbst auf die eigenen Bedürfnisse angepasst werden. Wollte eigentlich mal noch den tr-064 Adapter probieren, aber der will bei mir nicht.
Hier mal der export, dort muss natürlich die IP-Adresse angepasst werden.
Man könnte auch noch zuerst mit dem Ping Adapter prüfen ob der TV online ist.<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout">timeout</variable> </variables> <block type="on_ext" id="ZV}TqMN=;9Nx!hJ6T~m8" x="113" y="138"> <mutation items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="uEdk_S[2n~vMS(s#c.Zo"> <field name="oid">fritzbox.0.calls.ring</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_settimeout" id="/R|BV/%aqkK]w^jqRh`]"> <field name="NAME">timeout</field> <field name="DELAY">2000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="exec" id="rE|?1x^[qI[wEwkXL3:q"> <mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG">log</field> <value name="COMMAND"> <shadow type="text" id="yMWm_Y7D%knmH`m?bkLX"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="!rAb;_X%s~$]U)(Sh$tB"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_join" id="$WE=f|YYz;ru41#=!g17"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="SwUVW.a.S4/Ey}Z(=vNt"> <field name="TEXT">echo "samyGOso -d -A -B -l /mnt/opt/privateer/usr/libso/libAlert.so BLINKS:3 DELAY:200 MSGBOX:'</field> </block> </value> <value name="ADD1"> <block type="get_value" id="TD%ZPak_vK%j3l$bfkfE"> <field name="ATTR">val</field> <field name="OID">fritzbox.0.calls.ringActualNumbers</field> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="aok`DFl/01]S:|PDISC4"> <field name="TEXT"> ruft an' \n exit" > /opt/samygo/msg.txt</field> </block> </value> </block> </value> <next> <block type="exec" id="Zf!*Bo8!BuyMj0w+^16W"> <mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG">log</field> <value name="COMMAND"> <shadow type="text" id="yMWm_Y7D%knmH`m?bkLX"> <field name="TEXT">cat /opt/samygo/msg.txt | nc 192.168.178.21 23</field> </shadow> </value> </block> </next> </block> </statement> </block> </statement> </block> </xml>
-
@ex-one wollt ich schom immer haben - aber man braucht dazu ein bestimmtes modell nehme ich an - ich habe einen UE40D5000
weißt du was man braucht, damit das geht
-
@ex-one
Klingt interessant.
Suche sowas für meinen "it's not a trick, it's a Sony" Fernseher. -
@liv-in-sky
Ich benutze dort die Bibliothek von der Seite
https://forum.samygo.tv/viewtopic.php?t=9099
Für den Fernseher müsste man mal im Wiki hier nachschauen
https://wiki.samygo.tv/index.php?title=Main_Page
//Edit: scheint mit dem D5000 nicht zu gehen, erst ab 5500Würde dann heute Abend mal das ganze nochmal einrichten und Screenshots machen.
-
@ex-one
Coole Sache. Würde mich auf jeden fall interessieren.
Als ich damals meinen UE40D7090 gekauft habe, habe ich über sowas leider noch nicht nach gedacht. Als ich mich dann vor ein paar Jahren mal damit beschäftigt habe, hatte ich leider schon eine neuere Firmware Version drauf. Der Downgrade über deren DNS hat auch nicht mehr geklappt.
Mich würde trotzdem einfach nur das "Vorgehen" und "Lösen" interessieren. Irgendwann kommt ja ein neuer TV. Im Moment könnte ich das mit meinem Enigma2 Receiver lösen. -
hab die beiden seiten durchstöbert - scheint mein tv ist nicht dabei - muss er smart tv haben - meiner war so ein günstig angebot und hat das anicht
https://wiki.samygo.tv/index.php?title=Compatibility
https://wiki.samygo.tv/index.php?title=Compatibility_Table_for_D_series_TVswird wohl leider nix
-
Hat ein wenig länger gedauert.
Habe es im ersten Post mal beigefügt.