Quick'n'Dirty: SMS-Benachrichtigung bei eingehenden Anrufen

Das Busy kommt z.B. auch, wenn die Anrufsperre für eingehende Nummern greift.


...wie uncool! Warum kommt da nicht BLOCKED als $4?!
Deshalb hatte ich Dich gefragt
James372 schrieb:
Welche Werte (bei welchen Ereignissen) kann $4 denn noch annehmen?


Sinn des Codes den Du "nicht verstehst": Im Betreff des Mails "BUSY on BUSY: " vor "Anruf von..." zu setzen (siehe das $busy hinter dem -s im mailer-Aufruf)


Gruss, James
 
Ja, mitlerweile hab ich deine mailer Zeile auch gelesen und das ergibt dann wieder einen Sinn im Kontext auf "extra Info" - naja -egal.

Aus dem "Status" im Mailbody ist auch das Busy ersichtlich - somit kann ich auch behaupten, seit Jahren nix als BUSY da gesehen zu haben und warum das so "uncool" ist - wird AVM bestimmt gerne beantworten. ;)
 
Dank an Lemur für den Wink mit sämtlichen Zaunpfählen :)

Und bei allen anderen Beiträgern möchte ich mich auch sehr herzlich bedanken,
das Script hat mir in den Krankenhausbesuchsphasen sehr geholfen.
:groesste:
 
Sorry, ich war ein paar Tage in der offline-Welt unterwegs :)

Hier mein "Letztstand" (ohne Busy oder Unwetterwarnung)

Code:
#!/bin/sh
# Meldung eingehender Anrufe der FB via Mail
# Rev. 04.2010 by Lemur / angepasst StefanSK 26.-03.08.2010
#############################################
# Einstellungen
VZDIR="/var/media/ftp/USB-DISK-USB-DISK-01/CallLog"        # Arbeitsverzeichniss
BLLOG="${VZDIR}/logs/black-log.txt"                # Logfile nicht gefundener Eintraege
DEBUG="OFF"                                        # Konsolen Debug ausgabe zum testen
SMSGW="OFF"                                        # SMS zustellung
#############################################
# Script Variablen
CID=$1                                            # CID die ruft
MSN=$2                                            # MSN die gerufen wird
LINE=$3                                            # Leitung die gerufen wird
FBTB=$5                                            # Name des internen Telefonbuchs, falls vorhanden
#############################################
# Script Initialisierung
if [ "$DEBUG" = "ON" ] ; then echo "Script start mit CID=$1 , MSN=$2 , LINE=$3 , FBTB=$5" ; fi

if [ "$CID" = "" ] ; then 
    CID="Unbekannt"
    output="<b>Der Anrufer hat seine Telefonnummer nicht übermittelt</b>."
    if [ "$DEBUG" = "ON" ] ; then echo "Die CID wurde nicht übergeben - Suche übersprungen." ; fi
    else
    # Pruefe in Whitelist & internem Telefonbuch
    daten=$(cat ${VZDIR}/whitelist.txt | grep -c $1);
    if [ "$daten" != "0" ] ; then output=$(cat ${VZDIR}/whitelist.txt | grep $CID | sed 's/;/+/g;s/[^+]*+//;s/^/Inhaber: <br><b>/;s!+!</b>+!;s!+!<br />!g'); fi
    if [ "$daten" = "0" ] ; then output="Inhaber: <b> <br />$5</b>" ; fi
    if [ "$5" != "" ] ; then daten="1" ; fi
    if [ "$DEBUG" = "ON" ] ; then echo "Whitelist ergab: Output=$output , Daten=$daten" ; fi
    # Falls notwendig, prüfe in online Verzeichnis KLICKTEL
    if [ "$daten" = "0" ] ; then url="http://www.klicktel.de/inverssuche/index/search?method=searchSimple&_dvform_posted=1&phoneNumber=$1" ; wget -q -O ${VZDIR}/tmp.htm "$url" 
            sleep 5 ; daten="5" ;
            tbname=$(cat ${VZDIR}/tmp.htm | grep "namelink" | sed 's/<[^<]*>/\ /g;s/  //;s/ /, /');
            adress=$(cat ${VZDIR}/tmp.htm | sed 's!/!!g' | sed -n '/p class="data track"/,/p>/p' | sed '/p class="data track"/d;$d' | sed 's!<br >! <br />!g');
            tbnum=$(cat ${VZDIR}/tmp.htm | grep "phoneNumber" | sed 's/"phoneNumber" value="/ #/;s/.*\#//;s/"/ # /;/^#/d;s/#.*$//g;s/ //g');
            output="Inhaber: <b> <br />$tbname </b> <br />$adress <br />Tel.:$tbnum"
            if [ -z "$tbname" ] ; then daten="0" ; output="Der Anschlussinhaber konnte nicht ermittelt werden." ; echo -e "`date +\"%y.%m.%d-%H:%M\"` - auf MSN: $MSN - no result in KlickTel Database - CID: $CID" >> ${BLLOG} ; fi
    if [ "$DEBUG" = "ON" ] ; then echo "KlickTel ergab: OUTPUT=$output , daten=$daten" ; fi
    fi
    # Falls notwendig, prüfe in online Verzeichnis DAS TELEFONBUCH
    if [ "$daten" = "0" ] ; then url="http://www2.dastelefonbuch.de/?la=de&bi=15&kw=$1&cmd=search" ; wget -q -O ${VZDIR}/tmp.htm "$url" 
            sleep 5 ; daten="5" ; daten=$(cat ${VZDIR}/tmp.htm | grep -c "long hide");
                if [ "$daten" != "0" ] ; then 
                echo "<b>Inhaber: </b><br />" > ${VZDIR}/tmp1.htm
                cat ${VZDIR}/tmp.htm | sed -n -e '/class="long hide"/,/div/p' >> ${VZDIR}/tmp1.htm
                cat ${VZDIR}/tmp.htm | sed -n -e '/class="no-icon"/,/div/p' >> ${VZDIR}/tmp1.htm
                output=$(cat ${VZDIR}/tmp1.htm);
                else output="Der Anschlussinhaber konnte nicht ermittelt werden." ; echo -e "`date +\"%y.%m.%d-%H:%M\"` - auf MSN: $MSN - no result in T - Com Database  - CID: $CID" >> ${BLLOG} ;
                fi
            if [ "$DEBUG" = "ON" ] ; then echo "T-Com ergab: OUTPUT=$output , daten=$daten" ; fi
    fi
fi

BODYHEAD="<html><body><b> <font face="arial" size="2"> Telefonsystem | Anrufinformation:</b><br /><br /> $output  <br /><br /> <font color="#666666"> Status: $3 $4 <br/> Von Nummer: $CID <br /> Auf Leitung:   $2 <br/>  Um: `date -R` CET <br /><br /> <br /> <br />" 
BODYFOOT="Lemur & StefanSK (c) 08/2010 </html>"
echo -e $BODYHEAD > ${VZDIR}/result.htm
echo -e $BODYFOOT >> ${VZDIR}/result.htm
#############################################
# Adressierungseinstellung
case "$2" in
                MSN1 | MSN2)
                [email protected]
                SMSGW="OFF"
                ;;
                MSN3 )
                [email protected]
                [email protected]
                ;;
                MSN4 | MSN5 | MSN6 | MSN7 )
                [email protected]
                SMSGW="OFF"
                ;;
                esac ; 
                if [ "$DEBUG" = "ON" ] ; then echo "E-Mail für $TOADRESS vorbereitet." ; fi
                if [ -z "$TOADDRESS" ] ; then exit ; fi
#############################################
# Mailer
/sbin/mailer \
      -s "Von $CID auf $MSN um `date +\"%H:%M am %d.%m.%y\"`"\
        -f 'Fritz!Box 7270 | Standort <[email protected]>' \
        -t "$TOADDRESS" \
        -m smtp.server \
        -a smtp.user \
        -w 'password' \
      -l SSL \
        -i '/var/media/ftp/USB-DISK-USB-DISK-01/CallLog/result.htm'
#############################################
# SMS Service
if [ "$SMSGW" = "ON" ] ; then
sed -n -f $VZDIR/html2sms.sed $VZDIR/result.htm > $VZDIR/smstext.txt
/sbin/mailer \
      -s "auth|pass|gateway=1"\
        -f 'Telefonsystem | XXXXX Group <[email protected]>' \
        -t "$TOSMS" \
        -m smtp.server.tld \
        -a smtp-auth \
        -w smtp-pass \
      -l SSL \
        -i '/var/media/ftp/USB-DISK-USB-DISK-01/CallLog/smstext.txt'
fi
#############################################
# System bereinigen
if [ "$DEBUG" = "ON" ] ; then 
    echo "Mail verarbeitet, löschen unterbrochen."
    else
    rm ${VZDIR}/*.htm
    rm ${VZDIR}/smstext.txt
    rm ${VZDIR}/tmp.htm ; rm ${VZDIR}/tmp1.htm
fi
exit 0
Die wesentliche Änderung besteht darin, dass als TMP-Verzeichnis eben der USB-Speicher herangezogen wird.
Auf die Sache mit der Unwetterwarnung würde ich gerne nochmal zurückkommen ... hast Du mal das Muster?

Danke & viele Grüsse,

St.
 
Zuletzt bearbeitet:
:groesste:
Perfekt!
Eine (wahlweise zu aktivierende) Kleinigkeit fehlt IMHO noch, nämlich:

Es gibt immer wieder Leute, die meinen, man müsse sofort innerhalb von 10 Sekunden zurückgerufen haben.
Schon Goethe wusste in "Faust": Die Geister, die ich rief, werd ich nun nicht wieder los ...
Nun nerven die mit neuerlichen Nachzügler-Anrufen.
Meine Idee:
Die letztanrufende(n) Nummer(n) zwischenspeichern für 30 Minuten,
ruft diese Nummer ein 2tes oder ntes Mal an, dann möge das Script nichts machen und den Anruf ignorieren, gemeldet wurde der ja schon.
Wer bitte findet das gut und mag es einbauen, ich bin dazu zu :-Ö
 
Guten Tag,

ich muss erstmal sagen, dass ich den Mod absolut genial finde. Ich hab ihn nun schon seit Wochen im Einsatz und bin begeistert.

Allerdings hab ich nun eine neue 7270 v3 und will meine alte verkaufen.
Ich bekomme den Mod allerdings nicht runter. Egal ob ich FW-Update versuche, oder sogar mit der Recover.exe arbeite... der Mod bleibt und es kommen weiter SMS.
Das ist natürlich nervig, wenn der neue Besitzer die Box nutzt... ;)

Kann mir jemand sagen, wie ich den Mod von der Box bekomme?

Vielen Dank...

Matzell
 
...noch die URL für Schweizer:
Code:
  url="http://mobile.tel.local.ch/de/q/?what=$callerid&where=&type%5B%5D=res&type%5B%5D=bus";

HTH, James



P.S. Und für deutsche Schweizer, die öfter mal Anrufe aus D kriegen.
Code:
  url="http://mobile.tel.local.ch/de/q/?what=$callerid&where=&type%5B%5D=res&type%5B%5D=bus";
  output=$(wget -q -O - "$url");
  outputtest=`echo -e $output | grep -v -i "es konnten keine eintr"`
  if [ -z $outputtest ]
  then
    if [ `echo $callerid | grep "0049"` ]
    then
      url="http://mobil.dasoertliche.de/oe/search_invers?number=$callerid";
      output=$(wget -q -O - "$url")
    else  
      output="\r\n Anruf von $callerid $name auf Leitung $2\r\n Am `date +\"%d.%m.%y, um %H:%M Uhr.\"`\r\n\r\n Kein Telefonbuch-Eintrag."
    fi
  fi
 
Guten Tag,
Kann mir jemand sagen, wie ich den Mod von der Box bekomme?


Nicht von AVM freigegebene Firmware
Die FRITZ!Box wird momentan mit einer von AVM nicht freigegebenen Firmware betrieben oder die Konfiguration wurde möglicherweise über vom Hersteller nicht vorgesehene Wege verändert (z.B. telnet). In diesem Zustand kann AVM für die korrekte Funktion Ihrer FRITZ!Box nicht mehr garantieren.
Sie haben die Möglichkeit, das Gerät wieder in den Auslieferungszustand zurückzusetzen. Starten Sie dafür das Programm "Recover" von Ihrer FRITZ!Box-CD (\Software\X_Misc).
Nach dem Wiederherstellen des Auslieferungszustandes wird Ihre FRITZ!Box wieder vollständig von AVM unterstützt.
 
Ich hab mir die recover.exe vom AVM-FTP geholt, und alles durchgeführt. Danach hab ich die gesicherte Konfiguration wieder in die Box gespielt, und trotzdem war der Mod noch aktiv. Ist der auch in der Sicherung drin?

DANKE schonmal...
 
...Allerdings hab ich nun eine neue 7270 v3 und will meine alte verkaufen...
Kann mir jemand sagen, wie ich den Mod von der Box bekomme?
Hallo Matzell,

mach mal bitte folgendes:

1.) Telnet an und auf die Box.
2.) echo > /var/flash/calllog
3.) echo > /var/flash/debug.cfg

Abschliessend noch mal die passende Recovery drüberbügeln.

Joe
 
mach mal bitte folgendes:

1.) Telnet an und auf die Box.
2.) echo > /var/flash/calllog
3.) echo > /var/flash/debug.cfg

Abschliessend noch mal die passende Recovery drüberbügeln.

Das war der entscheidende Tipp!

Vielen Dank!!!!
 
Hallo,
wirklich ein Super Thema. Habe ich bereits lange nach gesucht.
Jedoch habe ich ein Problem mit den Skript von User Sprickmann (am 8.8.2010).

Ich erhalte folgende Fehlermeldung in TelNet bzw Putty angezeigt :
# /var/flash/calllog: line 61: syntax error: word unexpected (expecting "in")
# Jan 14 23:14:13 telefon[1537]: SIGCHLD received!

Was habe ich denn hier genau falsch gemacht ?
Line 61 ist bei mir "case "$2" in"

Ich hoffe Ihr könnt mich unterstützen.

Danke und Gruß
Carsi
 
hallo Carsi,
bitte einmal dein komplettes Script einfügen bitte. Rufnummern bitte durch XXX oder ähnlich ersetzen ;)

Gruß,
Jonas
 
Hallo zusammen,
konnte das Problem selber lösen.

Jetzt habe ich aber ein neues. Und zwar wird keine E-Mail versandt.

Folgende Daten habe ich in den entsprechenden Bereich eingetragen :
#############################################
# Mailer
/sbin/mailer \
-s "Anruf von $CID auf $MSN um `date +\"%H:%M am %d.%m.%y\"`"\
-f 'Anruf in Abwesenheit - Zuhause | Standort <[email protected]>' \
-t "$TOADRESS" \
-m smtp.1und1.de \
-a [email protected] \
-w 'MeinPasswort' \
-l SSL \
-i '/var/media/ftp/Ut163-USB2FlashStorage-01/CallLog/result.htm'
#############################################

In $TOADRESS steht die Empfangs - E-Mail Adresse.

Die Daten result.htm wird richtig erzeugt.

Ich habe auch schon SMTP Adresse und Sende E-Mail Adresse mit Hochomma bzw. Anführungszeichen probiert.
Leider alles ohne erfolg.

Hat noch jemmand eine Idee ?

Danke und Gruß
Carsi
 
Anführungszeichen und Hochkommata werden benötigt wie in meinem Skript dargestellt ... sonst gehts nicht. Funktioniert der von "iphone10" vorgeschlagene Weg? Oft liegt das Problem tatsächlich an den korrekten Daten ;-)

Gruss,
St.
 
Hallo zusammen,
konnte das Problem selber lösen.

Jetzt habe ich aber ein neues. Und zwar wird keine E-Mail versandt.
...
Du kannst auch den AVM-e-mail-Reporter nehmen. Dann funktioniert der E-Mail-Versand, so z. B.:
Code:
mailer -s "Anruf von $CID auf $MSN um: `/bin/date`" -i /var/media/ftp/Ut163-USB2FlashStorage-01/CallLog/result.htm -r
 
hallo,

bei mir funkioniert das versenden per email auch nicht kann es an den ssl port
liegen

-a [email protected] \
-w 'MeinPasswort' \
-l SSL \
-i '/var/media/ftp/Ut163-USB2FlashStorage-01/CallLog/result.htm'

per console

PHP:
/sbin/mailer -s "Betreff" -f "[email protected]" -t "[email protected]" -m smtp.1und1.de -a [email protected] -w 'deinpw'

geht es ohne probleme .....

brauche hilfe .. danke

lg
kai
 
Habe den fehler gefunden ssl mußte bei mir unter mail abgeschaltet werden und ich vergass die MSN einzutragen :)

PHP:
#############################################
# Adressierungseinstellung
# Muster:
#                MSN3 | MSN4 | MSN5 )
#                TOADDRESS=kai@xxxxxx
#                [email protected]
# Statt TOSMS: SMSGW="OFF"
#                ;;
case "$2" in
              0xxxxxx101|0xxxxx1010|0xxxxxxx011 )
                TOADDRESS=kai@xxxxxx
                SMSGW="OFF"
                ;;
				3xxxxx )
                TOADDRESS=kai@xxxxx
                [email protected]
                SMSGW="ON"
                ;;
                esac ; 
                if [ "$DEBUG" = "ON" ] ; then echo "E-Mail für '$TOADDRESS' vorbereitet." ; fi
                if [ -z "$TOADDRESS" ] ; then exit ; fi
#############################################
# Mailer
/sbin/mailer \
      -s "Von $CID auf $MSN um `date +\"%H:%M am %d.%m.%y\"`"\
        -f 'FritzBox Kai <[email protected]>' \
        -t "$TOADDRESS" \
        -m smtp.xxxxl.net \
        -a xxxxx \
        -w 'xxxxxxxx' \
        -i ${TMPDIR}/result.htm
		echo "test"
#############################################
 
Habe den fehler gefunden ssl mußte bei mir unter mail abgeschaltet werden und ...
mail mit ssl geht mit openssl von der Konsole:
Code:
openssl s_client -crlf -connect pop.xxxx.de:[B]110[/B] -starttls [B]pop3[/B]
Code:
openssl s_client -crlf -connect mail.xxxx.de:[B]25[/B] -starttls [B]smtp[/B]
 

Statistik des Forums

Themen
246,085
Beiträge
2,245,799
Mitglieder
373,539
Neuestes Mitglied
Horst Fürst
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.