Reverse Lookup Problem Anrufen Name Abfrage über tel.search.ch

silver_ch

Neuer User
Mitglied seit
18 Jan 2005
Beiträge
87
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

PBX:
Ich habe ein Astlinux Asterisk PBX auf CF Karte mit Schreibschutz nur /tmp Ordner ist beschreibbar.

Problem:
Ich versuche mit dem Reverse Lookup.AGI Script welche ich installiert habe Namensabfrage über tel.search.ch.Script funktioniert aber mein Asterisk zeigt mir Name von Anrufen nicht er zeigt mit immer nur die Nummer.Ich bekomme brav im /tmp 5 files und als Inhalt steht über tel.search.ch abgefragte Name.Asterisk zeigt mit aber als CallerID 2x Nummer z.B. 0796223185 0796223185 statt 0796223185 Name Vorname.

mein extensions.conf schaut so aus:

Code:
exten =>15,1,Set(CHANNEL(language)=de)
exten =>15,n,AGI(lookup.agi, ${CALLERID(num)})
exten =>15,n,Set(CALLERID(name)=${LONGNAME})
exten =>15,n,Dial(SIP/15,10,r)
exten =>15,n,Answer
exten =>15,n,Playback(vm-nobodyavail)
exten =>15,n,Voicemail(15)
exten =>15,n,Hangup
CLI zeigt bei einem Anruf folgendes :

Code:
– Called [email protected]
— Executing [[email protected]:1] Set(“Local/[email protected];2″, “CHANNEL(language)=de”) in new stack
— Executing [[email protected]:2] AGI(“Local/[email protected];2″, “lookup.agi, 0796223185″) in new stack
— Launched AGI Script /var/lib/asterisk/agi-bin/lookup.agi
— AGI Script lookup.agi completed, returning 0
— Executing [[email protected]:3] Set(“Local/[email protected];2″, “CALLERID(name)=”) in new stack
— Executing [[email protected]:4] Dial(“Local/[email protected];2″, “SIP/15,10,r”) in new stack
mein lookup.agi
Code:
#!/bin/sh
#
#read agi_request
#read agi_language
#read agi_channel
#read agi_type
#read agi_uniqueid
#read agi_callerid
#read agi_dnid
#read agi_rdnis
#read agi_context
#read agi_extension
#read agi_priority
#read agi_enhanced
#read agi_accountcode
#read emptyline#pfad zum cachefile
CACHE=”/tmp/invsuche_cache”#pfad um das tempfile anzulegen
TMPFILE=”/tmp/tmpsuche.html”
TMPFILE2=”/tmp/tmpclir”
LOG=”/tmp/anrufliste_log”
echo “$1-$2-$3″ >/tmp/reverse.tmp
if [ "$1" = " " ] || [ -z "$1" ]; then
echo “Keine Nummer”
#echo | tail -n 10 /var/log/syslog | grep “RING (” >>$TMPFILE2
#if [ "`tail -c 10 $TMPFILE2`" = "z audio) " ]; then
NAME=”analoger Anrufer”
DETAILS=”Keine details”
#fi
#if [ "`tail -c 10 $TMPFILE2`" = "(Speech) " ]; then
# NAME=”aktiv unterdrueckt”
# DETAILS=”ISDN anrufer ohne Nummer”
#fi
else
NUMMER=`echo $1 | sed -e “s/\ //g” -e “s/+41/0/”`
echo “Suche nach $NUMMER im cache”
NAME=`awk -F ‘—’ ‘{ if ($1 == “‘$NUMMER’”) print $2 }’ $CACHE`
if [ -z "$NAME" ]; then
wget -O $TMPFILE “http://maindomain.ch/telsearch.php?tel=$NUMMER”
NAME=`cat $TMPFILE`
if [ ! -z "$NAME" ]; then
printf “$NUMMER—$NAME\n” >> $CACHE
fi
fi
if [ -z "$NAME" ]; then
NAME=”$NUMMER”
fi
fi
###
### Here you can add “additional alert code”
###
# directly source an external scriptlet, for better separation with this publicly updated script
#. /usr/local/asterisk/reverse.agi_notifier_sh
printf “`date +%Y-%m-%d\ %H:%M` $NAME\t$NUMMER\n” >>$LOG
echo ‘SET VARIABLE LONGNAME ‘”\”$NAME\”" >/tmp/stdout
read in
exit 0


nach einem Anruf erhalte ich im /tmp 5 files
1.) file anrufliste_log
Code:
2011-11-17 03:56 Name Vorname	0796223185
2.) file invsuche_cache
Code:
0796223185—Name Vorname
3.) file reverse.tmp
Code:
0796223185–
4.) file stdout
Code:
SET VARIABLE LONGNAME “Name Vorname”
5.) file tmpsuche.html
Code:
Name Vorname
ev. kann jemand sehen wo ich einen Fehler gemacht habe ?

Beste Grüsse aus der Schweiz
 
3CX

Statistik des Forums

Themen
235,920
Beiträge
2,067,896
Mitglieder
356,971
Neuestes Mitglied
tomcek