FRITZBox Call Monitor für Enigma1

  • Wurde sicherlich schon oft diskutiert, aber hier habe ich eine m. E. recht einfache Umsetzung gefunden!
    Da muß kein Pseudo-image etc auf die Fritzbox...!


    KLICK!!!


    Wäre super wenn man das auf Enigma bzw. Gemini portieren könnte! :face_with_rolling_eyes:


    Ist doch ne super "Herausforderung" für Seddi und die anderen Multimedia-götter hier im Forum..!? :tongue:

    DM7000s + 500GB hdd
    DM8000 HD DMOE2.0+GP3.2/flash + 1TB hdd+ Sandisk Extreme III 4GB SDHC
    DM920 UHD 4K 1x DVB-S2 FBC + 1TB hdd

  • Fände ich auch super.
    Was passiert denn wenn man das einfach mal probiert wie das da beschrieben ist? Will das auch ausprobieren bin aber im Moment im Hotel und nicht zu Hause.
    Gruß Axel

    Ich übernehme keine Haftung für Schäden oder Frustration und anderes die durch meine Beiträge und Scripte bzw. Tools entstehen.

  • Hi,
    hatten wir hier glaube ich auch schon.


    Daemon läuft, Anrufe werden erkannt, Reverse-Suche geht, Eintrag ins Telefonbuch geht, LCD-Anzeige geht aber es wird nichts auf dem Fernseher angezeigt.


    Auf dem Heimatboard gibt es eine 5 Monate neuere Version. Libcurl wird auch benötigt. Da die Lib nicht mehr in allen Images drin ist habe ich mal eine Version angehängt die auf meiner 7020 läuft.


    Falls jemand die Anzeige auf dem Bildschirm hinbekommt wäre es nicht schlecht wenn er es hier mal zum Besten gibt.


    ciao

  • Ich hab gerade mal ein klein wenig gebastelt, und bekomme jetzt mit fritzboxcallmon auf meiner DM600 Anrufe angezeigt. Die Lösung ist zwar nicht schön, sondern vielmehr von hinten durch die Brust ins Auge - aber es geht und ich weiß auch, warum es nicht "einfach so" funktioniert:
    das Problem scheint zu sein, dass in der URL die Leerzeichen in den Daten im body-Parameter nicht mit %20 angegeben werden, sondern ganz normal -> dadurch gibt es keine Nachricht auf dem Schirm.


    Also habe ich mich, mangels Quellen vom fritzboxcallmon, einfach mit folgendem Quickhack dazwischengeschoben:
    [list=1]
    [*]WEBIF von Port 80 auf 88 konfiguriert
    [*]Little Apache auf Port 80 konfiguriert
    [*]/usr/www/cgi-bin/xmessage angelegt (Inhalt siehe unten) und ausführbar gemacht (chmod 755 xmessage)
    [/list=1]
    Das selbstgeschriebene xmessage nimmt nun die von fritzboxcallmon gesendeten Daten auseinandern und bereitet sie so auf, dass die Dream damit wieder etwas anfangen kann (also ohne Leerzeichen). Das "Parsen" der Daten ist noch sehr dumm und kommt aktuell nicht damit klar, wenn anstelle einer Telefonnummer ein Name (aus dem Adressbuch oder via Rückwärtssuche) präsentiert wird...dafür müsste ich aber erst meine Regex-Kenntnisse wieder etwas auffrischen :winking_face:


    Bash
    #!/bin/sh                                                                                                                                                          
    PORT=88                                                                                                                                                            
    TITLE=Anruf                                                                                                                                                        
    TIMEOUT=5 
    CALLERID=`echo $QUERY_STRING | awk '{print $5}'`                                                                                                                   
    LINE=`echo $QUERY_STRING | awk '{print $8}'`                                                                                                                       
    MESSAGE=Anrufer:%20$CALLERID\\nLeitung:%20$LINE                                                                                                                    
                                                                                                                                                                       
    wget -q -O /dev/null "http://localhost:$PORT/cgi-bin/xmessage?timeout=$TIMEOUT&caption=$TITLE&body=$MESSAGE"
  • Hi yaan,
    scheint zu stimmen. "Mist aber auch" wird nicht angezeigt wohl aber "mistaberauch"


    Schade auch.


    ciao

  • yaan


    Geile Sache, hoffentlich bekommst du das auch mal als plugin hin, damit wir "Ahnungslosen" ebenfalls in den Genuss kommen! :wmger:
    Zur Not könnte man doch für die Leerzeichen auch einen Plenk (also "_") einsetzten lassen oder?
    Das würde mir persönlich schon reichen! :tongue:


    PS: Könnte man evtl. ein plugin realisieren das zumindest die Telefonnummer auf dem TV ausgibt? :face_with_rolling_eyes:
    Damit wäre mir, und sicherlich auch anderen, schon weiter geholfen...!



    Big THX vorab!! :wmger:

    111001100011100101111010101010001111

    4 Mal editiert, zuletzt von gman ()

  • Sehr nice...!


    Mir würde es ebenfalls schon reichen, wenn ein Fenster am TV aufgeht, wo man die Telefonnummer sieht!



    Zur Konfiguration für "Telefonnumer only" folgende 3 Fragen:
    1. Wie ändere ich den webifport entsprechend?
    2. Was ist beim Apache zu tun?
    3. Wie muss die abgebildete xmessage dann aussehen?



    thx.... :wmbiggrin:

    DM7000s + 500GB hdd
    DM8000 HD DMOE2.0+GP3.2/flash + 1TB hdd+ Sandisk Extreme III 4GB SDHC
    DM920 UHD 4K 1x DVB-S2 FBC + 1TB hdd

  • Naja, als einfaches Plugin sicherlich schwierig - da wäre es ohnehin zielführender die Quellen von fritzboxcallmon zu korrigieren, dass die Leerzeichen da erst überhaupt nicht rauskommen sondern, dass es direkt richtig gemacht wird.


    Zitat

    Original von SuPerfrEa|<
    Zur Konfiguration für "Telefonnumer only" folgende 3 Fragen:
    1. Wie ändere ich den webifport entsprechend?
    2. Was ist beim Apache zu tun?
    3. Wie muss die abgebildete xmessage dann aussehen?


    1. Den Port vom WebIF kann man unter Menu > Einstellungen > Experten > Kommunikation/Netzwerk ändern. Wenn man einen anderen als 88 nimmt sollte man natürlich die oben gepostete xmessage entsprechend modifizieren.
    2. Beim Apache ist eigentlich nichts zu tun: lediglich den Port auf 80 ändern (geht über's Bluepanel), Verzeichnis /usr/www/cgi-bin anlegen und die xmessage von oben dort als Datei hinlegen und ausführbar machen.
    3. Was meinst Du damit?



    Zitat

    Original von harper73
    Ich zumindest bin mit Pseudoimage/callmessage ganz zufrieden.
    Funzt 1a und bei mehreren oder neuen Images auf der Dream
    brauche da auch nichts weiter machen.


    Stimmt schon. Was mich an Callmessage allerdings nervt ist das Verhalten, dass nachdem die Dream aus dem Standby wiederkommt alle "verpassten" Anrufe angezeigt werden. Wobei ich diese Situation mit fritzboxcallmon noch nicht ausprobiert habe - vielleicht ist es da genauso :winking_face:

  • Hi yaan,
    mit dem "richtigen" Fritz-Plugin kannst Du in die Scripte enigma_enter_standby und enigma_leave_standby einfach ein killall daemon bzw. daemon-start einbauen. Das mit den gesammelten Messages nervt mich auch ein bißchen.


    ciao

  • super yaan, merci werd das gleich mal so konfigurieren!


    zu 3.
    Wollte nur wissen, ob ich evtl. an der Datei etwas ändern muß, wenn ich lediglich die Nummer am TV anzeigen lassen möchte!


    Zwie Dinge sind mir noch unklar!!
    Kommt das Vezeichnis "/usr/www/cgi-bin/" direkt unter /var?
    Welche Dateiendung muß die xmessage-Datei haben?

    DM7000s + 500GB hdd
    DM8000 HD DMOE2.0+GP3.2/flash + 1TB hdd+ Sandisk Extreme III 4GB SDHC
    DM920 UHD 4K 1x DVB-S2 FBC + 1TB hdd

    2 Mal editiert, zuletzt von SuPerfrEa|< ()

  • Die angesammelten Meldungen liegen allerdings nicht an der callmessage der Fritzbox.


    Einfach mal im Standby per Webinterface der Dream mehrere Meldungen schicken.
    Gleicher Effekt. Man müsste die zwischengespeicherten Meldungen
    nach verlassen des Standby irgendwie löschen.

  • Zitat

    Original von SuPerfrEa|<
    Zwie Dinge sind mir noch unklar!!
    Kommt das Vezeichnis "/usr/www/cgi-bin/" direkt unter /var?
    Welche Dateiendung muß die xmessage-Datei haben?


    (1) /usr/www sollte es in der Form im Root (also /) schon geben - lediglich cgi-bin muss noch anlegen
    (2) keine Dateiendung



    Zitat

    Original von harper73
    Die angesammelten Meldungen liegen allerdings nicht an der callmessage der Fritzbox.


    Einfach mal im Standby per Webinterface der Dream mehrere Meldungen schicken.
    Gleicher Effekt. Man müsste die zwischengespeicherten Meldungen
    nach verlassen des Standby irgendwie löschen.


    Genau das hatte ich bereits vermutet. Aber Trial hatte ja bereits ein Lösung aufgezeigt - sollte so wohl auch funktioniere. Probiert hab ich es allerdings noch nicht :winking_face:

  • Hi,
    yaan hat mich auf eine Idee gebracht und vielleicht auch zum Erfolg:-)


    Er hat recht das " " beim Webinterface nicht so gut ankommt und durch "%20" ersetzt werden muß. Ich habe mir die Binaries mal angesehen und da steht eigentlich schon %20 an einigen Stellen ABER nicht an allen. Ich habe einmal " (" und einmal " via " gefunden und gepatcht und es scheint zu gehen. Um euch das auch mal testen zu lassen packe ich meine gepachte Version mal hier ran.


    Viel Spaß


    ciao

  • Sehr nice, Trial. Hab's gerade auf meiner DM600 getestet und funktioniert soweit einwandfrei - so lange nur die Nummer und kein Name angezeigt wird. Ist für mich jetzt erstmal nicht so tragisch, da die Rückwärtssuche ohnehin nicht geht (kA warum, ist mir aber auch egal).
    Außerdem, ist aber auch egal, werden bei "[MSN-Name] via ISDN" keine Leerzeichen ausgegeben.

  • Tolle Sache.
    Wie muß man das denn jetzt installieren, genauso wie das in der INSTALL Datei beschrieben ist, oder ist das bei der Dreambox anders?


    Muß ich wie weiter oben beschrieben auch noch die Ports ändern oder ist das jetzt mit der Version von Trial hinfällig.


    Schön ware nochmal eine Schritt für Schritt Anleitung passend zur Dreambox mit Enigma 1. (Ich weis ich weis, hier steht schon ziemlich viel im Bezug auf die Installation aber irgendwie ein bischen durcheinander... und Leute wie ich die sich da nicht so gut mit auskennen kommen da schon bei ins Schleudern
    :thx:

    Ich übernehme keine Haftung für Schäden oder Frustration und anderes die durch meine Beiträge und Scripte bzw. Tools entstehen.

  • [list=1][*]fritzboxcallmon nach /var/bin kopieren
    [*]chmod a+x /var/bin/fritzboxcallmon
    [*]fritzboxcallmon.conf und fritzboxcallmon.addr nach /var/tuxbox/config kopieren
    [*]fritzboxcallmon.conf öffnen und notwendige Einstellungen machen
    [*]/var/bin/fritzboxcallmon starten
    [/list=1]
    Anschließend sollte man noch für ein automatisches Starten nach einem Reboot folgende Zeile in /usr/bin/enigma.sh an passender Stelle einfügen (bei mir steht es vor "[ -e /var/wifi ] && rm -rf /var/wifi "):

    Code
    [ -e /var/bin/fritzboxcallmon ] && /var/bin/fritzboxcallmon


    Außerdem habe ich, auf Tip von Trial hin, auch /etc/enigma_enter_standby.sh und /etc/enigma_leave_standby.sh erweitert.


    enigma_enter_standby.sh:

    Code
    ...
    PID_FCM=`pidof fritzboxcallmon`
    if [ $PID_FCM ]; then
            kill -9 $PID_FCM
    fi
    ...


    enigma_leave_standby.sh:

    Code
    ...
    [ -e /var/bin/fritzboxcallmon ] && /var/bin/fritzboxcallmon
    ...


    +++ EDIT 13.01.2008 11:04 +++
    Falls auf der Box noch keine libcurl.so.2 in /usr/bin vorhanden ist, einfach die vom Trial hier gepostete herunterladen und nach /usr/bin kopieren.

  • Habe das genau nach der Anleitung von Yaan gemacht (danke yaan!)


    Zitat


    # fritzboxcallmon nach /var/bin kopieren
    # chmod a+x /var/bin/fritzboxcallmon
    # fritzboxcallmon.conf und fritzboxcallmon.addr nach /var/tuxbox/config kopieren
    # fritzboxcallmon.conf öffnen und notwendige Einstellungen machen
    # /var/bin/fritzboxcallmon starten



    Nach dem Befehl:
    /var/bin/fritzboxcallmon
    erhalte ich folgende Meldung:


    fritzboxcallmon: relocation error: fritzboxcallmon: symbol __libc_stack_end, version GLIBC_2.1 not defined in file ld.so.1 with link time reference


    PS: Habe auch eine Dreambox 7000 oder funktioniert das hierdrauf nicht?
    Gemini 4.2 habe ich im Flash.


    Danke für die Hilfe

    Ich übernehme keine Haftung für Schäden oder Frustration und anderes die durch meine Beiträge und Scripte bzw. Tools entstehen.

  • Doch, sollte auf der 7020 auch funktionieren.


    Aller Wahrscheinlichkeit nach fehlt die die libcurl.so.2, wie Trial sie im 3. Post angehängt hat. Einfach entpacken und nach /usr/lib kopieren, dann sollte es gehen.