[Problem] Anrufmonitor auf Samung-TV per DLNA: Suppress "New message received"

Peter931

Aktives Mitglied
Mitglied seit
5 Mai 2005
Beiträge
893
Punkte für Reaktionen
2
Punkte
18
Hallo,
ich habe ein Python Skript von https://shantanugoel.com/2013/07/14/samsung-tv-message-box-python/
angepasst, dass von JFritz aufgerufen werden kann, um einen Anruf auf dem Fernseher zu signalisieren.
Leider zeigt der Fernseher zunächst nur an:
Bild-1: "New Message received"
Nun muss man einmal mit der Fernbedienung bestätigen, bevor man die eigentliche Nachricht sehen kann, dass ein Telefonanruf angekommen ist.

Kann man irgendwie direkt zur eigentlichen Nachricht gelangen, ohne erst auf der FB OK zu drücken?


samsung-messagebox-demo-1-300x225.jpg samsung-messagebox-demo-2-300x225.jpg
 
Das betrifft aber nur Einstellungen an einem Tablet. Habe hier einen Fernseher ohne diese Einstellmöglichkeiten. Trotzdem Danke. Vielleicht hilft es jemand anderen.

Gesendet von meinem Apollo Lite mit Tapatalk
 
Gibt es da keine Einstellmöglichkeit am Fernseher?
 
Ich bin einfach davon ausgegangen, dass auf dem TV die gleiche App läuft wie auf einem Tablet.
 
Es ist ein Samsung Samsung UE37C6700.
Ich frage mich, ob man das erste Fenster automatisiert mit OK beantworten kann, damit es sich wieder schließt.
 
Es ist ein Samsung Samsung UE37C6700.
Ich hab nen UE46C6700 und kann mich nicht wirklich an so ein "OK"-Fenster erinnern. Ist aber auch schon lange her, dass ich an den Messages gesendet habe.

Ich frage mich, ob man das erste Fenster automatisiert mit OK beantworten kann, damit es sich wieder schließt.
Klar, du kannst den C6700 komplett fernsteuern. Ich hab da mal vor Jahren ein Programm geschrieben, das ich aber momentan nicht mehr anbiete.

happy computing
R@iner
 
@R@iner: Gibt es denn irgendwo Beschreibungen, wie man ein OK sendet?
 
@Peter931:
Mit Sicherheit. Suche nach "remote control samsung tv" und da sollte sich einiges finden lassen. Mir fehlt es an Zeit das jetzt alles bei mir rauszusuchen und mich wieder einzulesen.

edit:
Wenn Du nicht fündig wirst, dann melde dich nochmal
 
Zuletzt bearbeitet:
Nach https://www.libble.de/includes/handleiding.asp?id=175278&c=30207,4491913582&t=2-8-2018 12:46:28
(Handbuch des Gerätes) auf Seite 49, rechte Spalte:
Using the Message Function
Using this function, you view call arrivals, SMS messages
and schedules set on the mobile phone through the alarm
window while watching TV.
✎✎NOTE
x To disable the alarm window, set Message to Off in
Setup of AllShare.
x If OK is selected, or if OK is not selected after the
message has appeared three times, the message
will be deleted. The message is not deleted from the
mobile phone.
x The alarm window can be displayed while using
some applications such as Media Play etc. To view
the contents of a message, switch to TV viewing
mode.
x When a message from an unknown mobile phone is
displayed, select the mobile phone on the message
menu in AllShare and select Denied to block the
phone.
 
Wenn man in ALL-SHARE-Settings "alarm window" deaktiviert, kommt gar keine Nachricht mehr durch,
Also keine Lösung.

### Zusammenführung Doppelpost by stoney ###

@skyteddy: Habe leider nicht passendes gefunden. Kannst du helfen?
 
Zuletzt bearbeitet von einem Moderator:
Hallo Peter931,

Ich hab nen UE46C6700 und kann mich nicht wirklich an so ein "OK"-Fenster erinnern. Ist aber auch schon lange her, dass ich an den Messages gesendet habe.
also, meine Erinnerung hat mich nicht getäuscht, es braucht kein "OK" bei dem Senden eines "Anrufs/Incoming Call"! Der wird direkt angezeigt.

Ich hab jetzt mal schnell in meine Sourcen des ruSamsungTVCommunicators geschaut. Zum Hintergrund. Es gibt verschiedene Arten von (Text-)Messages, die Du dem TV via SOUP-Request senden kannst. Du scheinst eine Message vom Typ "SMS" zu senden, da taucht vorher das OK-Fenster auf! Beim Typ "Incoming Call" definitiv nicht! Dann gäbe es noch den "Schedule Reminder", aber der braucht auch ein "OK" vorher, will es aber nicht beschwören.


@skyteddy: Habe leider nicht passendes gefunden. Kannst du helfen?
Räusper. Dein Google kaputt? ;) Ich finde unzählige! Siehe z.B. hier, da haben wir das damals zusammengetragen:
https://wiki.samygo.tv/index.php?title=MessageBoxService_request_format

HTH

Happy computing!
R@iner
 
Danke! Ja, schicke eine "SMS". Werde ich gleich mal mit "Incoming call" ausprobieren!
( Erst noch etwas Wacken genießen)


Das war es! "Incoming Call" zeigt sofort die richtige Box!

Anbei der angepasste Code von: Shantanu Goel (http://tech.shantanugoel.com/)

Code:
#!/usr/bin/python
# Developed by Shantanu Goel. http://tech.shantanugoel.com/

import socket
import argparse
import time

#Defaults
port        = 52235
receiver_no = "1234567890"
sender_no   = "1234567890"
receiver    = "Receiver"
sender      = "Sender"
epochtime   = time.mktime(time.localtime())

def buildMessage(args):
  body = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"\
  "<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\" s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" \
  "<s:Body>" \
  "      <u:AddMessage xmlns:u=\"urn:samsung.com:service:MessageBoxService:1\">" \
  "         <MessageType>text/xml</MessageType>" \
  "         <MessageID>MessageId</MessageID>" + "<Message>" \
  "&lt;Category&gt;Incoming Call&lt;/Category&gt;" \
  "&lt;DisplayType&gt;Maximum&lt;/DisplayType&gt;" \
  "&lt;CallTime&gt;" + "&lt;Date&gt;" + time.strftime('%Y-%m-%d', time.localtime(args.time)) +  "&lt;/Date&gt;" \
  "&lt;Time&gt;" + time.strftime('%H:%M:%S', time.localtime(args.time)) + "&lt;/Time&gt;" \
  "&lt;/CallTime&gt;" \
  "&lt;Callee&gt;"  \
  "&lt;Number&gt;" + args.receiver_no + "&lt;/Number&gt;" \
  "&lt;Name&gt;" + args.receiver + "&lt;/Name&gt;" \
  "&lt;/Callee&gt;" \
  "&lt;Caller&gt;" \
  "&lt;Number&gt;" + args.sender_no +  "&lt;/Number&gt;" \
  "&lt;Name&gt;" + args.sender + "&lt;/Name&gt;" \
  "&lt;/Caller&gt;" \
  "&lt;Body&gt;" + args.msg + "&lt;/Body&gt;" \
  "</Message>" + "      </u:AddMessage>" + "   </s:Body>" + "</s:Envelope>";
  #print ('Hello World')
  host = socket.gethostname()
  length = len(body)
  header = "POST /PMR/control/MessageBoxService HTTP/1.0\r\n" \
  "Content-Type: text/xml; charset=\"utf-8\"\r\n" + "HOST: " + host + "\r\n" \
  "Content-Length: " + str(length) + "\r\n" \
  "SOAPACTION: \"uuid:samsung.com:service:MessageBoxService:1#AddMessage\"\r\n" \
  "Connection: close\r\n" + "\r\n"
  message = header + body
  print (message)

  return message

def sendMessage(args, message):
  s    = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
  s.connect((args.ip, args.port))
  #msgbytes  = bytes([0x43, 0x44, 0x45, 0x47, 0x48, 0x49])
  #s.send(msgbytes)
  sent = s.send(message.encode('ascii'))
  #sent = s.sendmsg(message)
  if (sent <= 0):
    print('Error Sending Message')
    s.close()
    return
  recv = s.recv(100000)
  print (recv)
  s.close()

def main():
  parser = argparse.ArgumentParser(description='Send an arbitrary text message to Samsung TVs which is displayed onscreen. Developed by Shantanu Goel (http://tech.shantanugoel.com/) version 1.0', add_help = False)
  flags = parser.add_argument_group('Arguments')
  flags.add_argument('-i', '--ip', dest = 'ip', default = '192.168.0.40', help = 'Required. IP Address of the TV')
  flags.add_argument('-m', '--msg', dest = 'msg', default = 'Telefon-Anruf', help = 'Required. Message body text to be sent to TV')
  flags.add_argument('-p', '--port', dest = 'port', default = port, type = int, help = 'Optional. Port on which message should be sent')
  flags.add_argument('-t', '--time', dest = 'time', default = epochtime, type = float, help = 'Optional. Receive date and time in epoch/unix format')
  flags.add_argument('-r', '--receiver', dest = 'receiver', default = receiver, help = 'Optional. Receiver Name')
  flags.add_argument('-x', '--receiverno', dest = 'receiver_no', default = receiver_no, help = 'Optional. Receiver Number')
  flags.add_argument('-s', '--sender', dest = 'sender', default = sender, help = 'Optional. Sender Name')
  flags.add_argument('-y', '--senderno', dest = 'sender_no', default = sender_no, help = 'Optional. Sender Number')
  flags.add_argument('-h', '--help', action='help')
  args = parser.parse_args()

  message = buildMessage(args)

  sendMessage(args, message)


main()
 
Zuletzt bearbeitet:
Hallo,

cooles Feature. Wie binde ich das in Jfritz ein?

Mfg
Hermann
 
Unter Optionen-> Einstellungen und dann Fritzbox-> Anrufmonitor.
Dort kannst du ein beliebiges Programm aufrufen.
Jfritz-01.jpg
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.