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

Hallo,

habe das Sript schon ne Weile am laufen auf meiner Box und immer wieder gemäss den Tipps heir angepasst.

Die Rückwärtssuche sollte funktionieren, aber die Ermittlung der Nummern/Namen aus dem internen Telefonbuch schlägt immer fehl.
Liegt das am Password für die FBF-Oberfläche?

Vielleicht kann ja mal jemand seine aktuelle und funktionierende Version hier posten? Das würde es wohl auch für Neueinsteiger einfacher machen...

Danke!

Gruss
Tobse
 
Danke, war wohl etwas blind.

Leider funktionierts nicht ganz...

Per Telnet lässt sich die Abarbeitung des Skripts beobachten. Bei der Stelle (Zeile 43)
ERG=$(/var/tmp/expr substr "$LISTE" 1 1)
kommt die Meldung: "/var/flash/calllog: 43: /var/tmp/expr: not found"

Hat jemand eine Idee?
 
Du brauchst ja auch nicht das komplette Script dort.

Du mußt nur die Passworteingabe vor einem Zugriff des Scripts auf eine Webseite in der FBF setzen.
Evtl. reicht da auch nur einmal der folgende Code am Anfang deines vorhandenen Scripts!?

Code:
export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"
POST_DATA="login:command/password=DEIN_PASSWORT"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null
 
RudatNet schrieb:
Du mußt nur die Passworteingabe vor einem Zugriff des Scripts auf eine Webseite in der FBF setzen.
Das war der entscheidende Hinweis. :)

Vielen Dank!

Habe den genannten Code in mein altes Skript eingefügt und nun werden fröhlich die schon bekannten Anrufer aus dem Telefonbuch angezeigt.

Der Vollständigkeit halber habe ich mein Skript mal angefügt:

EDIT: Hatte noch einen Fehler bzgl. der Rückwärtssuche im Örtlichen drin. Sollte jetzt tun.

Code:
export REQUEST_METHOD="POST"
export REMOTE_ADDR="192.168.178.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"
POST_DATA="login:command/password=FBF_PASSWORT"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null

/usr/bin/wget -O /dev/null "http://192.168.178.1/cgi-bin/webcm?getpage="../html/de/menus/menu2.html\&var:lang=de\&var:menu=fon\&varagenam e=foncalls""

echo "nun 5s warten"
sleep 5

#! /bin/sh
CID=$1
name=""
ParseTelefonbuch() {
  export REQUEST_METHOD="GET"
  export REMOTE_ADDR="192.168.178.1"
  export QUERY_STRING="getpage=../html/de/menus/menu2.html&var:lang=de&var:menu=fon&var:pagename=fonbuch"
  cd /usr/www/html/cgi-bin
          ./webcm |
            sed -n 's/^.*document.write(TrFon(.*", "\(.*\)", ".*'$*'.*/\1/p'
            }
            
            if [ -z "$CID" ]
            then
             CID="unbekannt";
             name="-"
            else
             name=`ParseTelefonbuch $CID`
            if [ -z "$name" ]
            then
            url="http://www.dasoertliche.de/?form_name=search_inv&page=RUECKSUCHE&context=RUECKSUCHE&action=STANDARDSUCHE&la=de&rci=no&ph=${CID}";
            name=$(wget -q -O - "$url" | grep class=\"entry\" | sed -e 's/<[^<]*>/\ /g;s/^[^a-zA-Z0-9]*//;s/  /, /g');
            if [ -z "$name" ]
            then
            name="kein Eintrag"
            fi
            fi
            fi
                                                                                                
            echo $name >/var/tmp/calllog.txt
                                                                                                
            echo "#########################"
            echo "`date +\"%d.%m.%y %H:%M\"` - Anruf von $CID ($name) an $2 ($3) $4"
            echo
                                                                                                
            /sbin/mailer \
            -s "`date +\"%d.%m.%y %H:%M\"` - Anruf von $CID ($name) an $2 ($3) $4" \
            -f '"Fritz!Box" <AbsenderAdresse>' \
            -t "EmpfängerAdresse" \
            -m MailServer \
            -a BenuzterNameMailServer \
            -w "PasswortMailServer" \
            -i '/var/tmp/calllog.txt'
            #  2> /dev/null
 
Zuletzt bearbeitet:
Hallo,

habe da als Anfänger erst mal eine Frage:

1.Kann ich auch puttytel nehmen oder muß es telnet sein?

2. Denke mal die IP muß auf die Box IP angepasst werden oder?




Danke für die Hilfe

Gruß Tobi
 
hi,

@RudatNet zu 1. Nein mein Programm puttytel

2. auf Router IP änden ok:rolleyes:

Neue Frage:

Ist der Skript aus Beitrag 85 mit Passwort der Fritzbox? oder darf die Box kein Passwort haben?
 
@RudatNet wenn Du mir jetzt noch zeigst wo das Passwort im Skript hin muß:rolleyes:
 
bin ich do..:noidea:

POST_DATA="login:command/password=FBF_PASSWORT <---- hier ? oder hier

POST_DATA="login:command/password=FBF_PASSWORT"


:noidea: :noidea: :noidea: :noidea:
 
scheiss dann hab ich doch richtig gemacht der Script läuft nett durch muß ich noch mal checken

Aber Dank :rolleyes:
 
Nein

192.168.0.1

hab ich aber geändert:rolleyes:

Kann ich den Script überschreiben? wie? löschen? edit?
 
Das Nein bezog sich auf Deine Frage...

Die IP hab ich geändert auf 192.168.0.1;)
 
Hallo

läuft nett

bekomme nur Fehler nach dem reinkopieren:

Code:
# cd var
# vi calllog
Ä
Å Ä
Å Ä
Ŭ|N²±Aä Ä Ä
Ŭ|N²±Aä Ä
Ĭ|N²±Aä Ä
}¬|N²Ü±Aäs[2;39HÄ Ä
Ŭ|N²±Aä Ä
Ĭ|N²±Aä Ä
}¬|N²Ü±Aäs[3;39HÄ Ä
Å Ä
Ĭ|N²±Aä Ä
}¬|N²Ü±Aäs[4;39HÄ Ä
Å Ä
Ĭ|N²±Aä Ä
}¬|N²Ü±Aäs[5;39HÄ Ä
Å Ä
Ä Ä
}¬|N²Ü±Aäs[6;39HÄ Ä
Ŭ|N²±Aä Ä
Ĭ|N²±Aä Ä
}¬|N²Ü±Aäs[7;39HÄ Ä name=`ParseTelefonbuch $CID`
Ŭ|N²±Aä if [ -z "$name" ]
Ä_inv&page=RUECKSUCHE&context=RUECKSUCHE&acÄ
}¬|N²Ü±Aäs[8;39HÄ
Å
Ĭ|N²±Aä
}¬|N²Ü±Aäs[9;39HÄ
Å
Ä
}¬|N²Ü±Aäs[10;39HÄ
Å
Ä
}¬|N²Ü±Aäs[11;39HÄ
Å
Ä
}¬|N²Ü±Aäs[12;39HÄ
Å
Ä
}¬|N²Ü±Aäs[13;39HÄ
Å
Ä
}¬|N²Ü±Aäs[14;39HÄ
Å
Ä
}¬|N²Ü±Aäs[15;39HÄ
Å
Ä
}¬|N²Ü±Aäs[16;39HÄ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of charactersac±²±] áâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters^[±²±]HE&acáâ
²l²last_modif²last_modifying_cmd overrunber (-1) of characters ±²±]g;s/^[áâ
ÿpAènA**wTu²Tu¬|NLN²lN iA



hier der script

Hier der Skript: Passworte sind xxxxxx


Code:
POST_DATA="login:command/password=xxxx"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null

/usr/bin/wget -O /dev/null "http://192.168.178.1/cgi-bin/webcm?getpage="../html/de/menus/menu2.html\&var:lang=de\&var:menu=fon\&varagenam e=foncalls""

echo "nun 5s warten"
sleep 5

#! /bin/sh
CID=$1
name=""
ParseTelefonbuch() {
export REQUEST_METHOD="GET"
export REMOTE_ADDR="192.168.178.1"
export QUERY_STRING="getpage=../html/de/menus/menu2.html&var:lang=de&var:menu=fon&varagename=f onbuch"
cd /usr/www/html/cgi-bin
./webcm |
sed -n 's/^.*document.write(TrFon(.*", "\(.*\)", ".*'$*'.*/\1/p'
}

if [ -z "$CID" ]
then
CID="unbekannt";
name="-"
else
name=`ParseTelefonbuch $CID`
if [ -z "$name" ]
then
url="http://www.dasoertliche.de/?form_name=search_inv&page=RUECKSUCHE&context=RUEC KSUCHE&action=STANDARDSUCHE&la=de&rci=no&ph=${CID} ";
name=$(wget -q -O - "$url" | grep class=\"entry\" | sed -e 's/<[^<]*>/\ /g;s/^[^a-zA-Z0-9]*//;s/ /, /g');
if [ -z "$name" ]
then
name="kein Eintrag"
fi
fi
fi

echo $name >/var/tmp/calllog.txt

echo "#########################"
echo "`date +\"%d.%m.%y %H:%M\"` - Anruf von $CID ($name) an $2 ($3) $4"
echo

/sbin/mailer \
-s "`date +\"%d.%m.%y %H:%M\"` - Anruf von $CID ($name) an $2 ($3) $4" \
-f '"Fritz!Box" <[email protected]>' \
-t "[email protected]" \
-m mx.freenet.de \
-a xxxxxxx \
-w "xxxxxxPasswort" \
-i '/var/tmp/calllog.txt'
# 2> /dev/null

[Edit wichard:
Code:
-Tags eingefügt][/COLOR][/I]
 
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.