Hallo zusammen,
ich versuche, Infos über Telefonate an unseren VDR zu schicken, bin dabei vom callmonitor ausgegangen und wollte erstmal sehen, was der telefon daemon so alles von sich gibt. Die beteiligten Dateien sind
debug.cfg:
telefon.cfg:
telefon.sh:
Aber es passiert nix, die telefon.log bleibt leer.
Wo ist da was faul?
Auch ein simples
in der Telnet-Konsole führt zu keinem Protokoll.
Gruß
Claus
ich versuche, Infos über Telefonate an unseren VDR zu schicken, bin dabei vom callmonitor ausgegangen und wollte erstmal sehen, was der telefon daemon so alles von sich gibt. Die beteiligten Dateien sind
debug.cfg:
Code:
# Starten des Telnet Daemons
/usr/sbin/telnetd -l /sbin/ar7login &
# Konfiguration
# Lokales Verzeichnis (muss beschreibbar sein) in dem die Dateien liegen sollen
LOCALDIR="/var/usr"
# Adresse des Servers von dem die Dateien nachgeladen werden
WEBURL="www.*.de"
# Herunterladen von Dateien
f_get() {
# Abholen vom Webserver
wget http://$WEBURL/fbf/$1
# Test auf Erfolg
[ -e ./$1 ] || return 1
# Anpassen der Dateirechte
chmod +x ./$1
# Test auf Erfolg
[ -x ./$1 ] || return 1
}
# Warten bis die FritzBox den Server erreichen kann
while !(ping -c 1 $WEBURL); do
sleep 10
done
# In das lokale Verzeichnis wechseln
mkdir $LOCALDIR || exit
cd $LOCALDIR
# netcat zur Kommunikation mit anderen Hosts
f_get nc || exit
# multid fuer Status online/offline
f_get multid.cfg || exit
f_get multid.sh || exit
$LOCALDIR/multid.cfg &
# telefon fuer callmessage
f_get telefon.cfg || exit
f_get telefon.sh || exit
$LOCALDIR/telefon.cfg &
# ggfs. aktualisierte debug.cfg
f_get debug.cfg
# EOF
telefon.cfg:
Code:
#!/bin/sh
PGM="telefon"
LOCALDIR="/var/usr"
# Tests
[ -x $LOCALDIR/$PGM.sh ] || exit
# Neustart
killall -15 $PGM
sleep 3
killall $PGM
sleep 3
echo > $LOCALDIR/$PGM.log
$PGM a127.0.0.1 | $LOCALDIR/$PGM.sh &
# EOF
telefon.sh:
Code:
#!/bin/sh
PGM="telefon"
LOCALDIR="/var/usr"
# extracted out of callmonitor.sh, mod-53.tar.gz
while read line
do
echo "$line" >> $LOCALDIR/$PGM.log
case $line in
# IncomingCall*)
IncomingCall)
MSISDN="$(echo $line | sed 's/^.*caller: .\(.*\). called:.*/\1/')"
CALLED="$(echo $line | sed 's/^.*called: .\(.*\)".*/\1/')"
if [ "$MSISDN" = "" ]; then
MSISDN="Keine Rufnummer übermittelt"
CALLER=".."
else
CALLER="$(cat $0 2>/dev/null | fgrep '#MSISDN=$MSISDN:' | sed 's/#MSISDN=$MSISDN://')"
if [ "$CALLER" = "" ]; then
CALLER="unbekannt"
fi
fi
#echo "http://172.20.0.20:23232/@$CALLER ($MSISDN)"
#wget -O /dev/null "http://172.20.0.20:23232/@$CALLER ($MSISDN)"
echo "$CALLER @ $MSISDN -> $CALLED"
;;
esac
done
### Beispiele für Namensanzeige. Raute und Doppelpunkt so lassen, nur Nummer und Name ändern
#MSISDN=0190666666:Jasmin
Aber es passiert nix, die telefon.log bleibt leer.
Wo ist da was faul?
Auch ein simples
Code:
killall telefon
telefon a127.0.0.1 | tee /var/usr/telefon.log &
Gruß
Claus