Hi Leute,
Ich suche hilfe bei einen Linux Shellskript.
folgendes Skript würde ich gerne für die CH anpassen:
Shell-Script
- #!/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="/etc/asterisk/invsuche_cache.conf"
- #pfad um das tempfile anzulegen
- TMPFILE="/tmp/tmpsuche"
- LOG="/var/log/asterisk/anrufliste_log"
- if [ "$1" == "" ]; then
- NAME="anonymer Anrufer"
- DETAILS="Keine details"
- else
- NUMMER=`echo $1 | sed -e "s/\ //g" -e "s/+49/0/"`
- #echo "Suche nach $NUMMER im cache"
- NAME=`awk -F '\t' '{ if ($1 == "'$NUMMER'") print $2 }' $CACHE`
- DETAILS=`awk -F '\t' '{ if ($1 == "'$NUMMER'") print $3 }' $CACHE`
- #echo "Name: $NAME"
- #echo "Details: $DETAILS"
- if [ "$NAME" == "" ]; then
- # echo "Suche nach $NUMMER in [URL]www.dasoertliche.de[/URL]"
- lynx "http://www.dasoertliche.de/DB4Web/es/oetb2suche/home.htm?kw_invers=$NUMMER&main=Antwort&s=2" \
- -dump -nolist -connect_timeout=3> $TMPFILE
- NAME=`grep printselected.gif -A 2 $TMPFILE | awk '{ if (FNR == 2) print $0 }' | sed -e "s/\ \+//" -e "s/\ \+/\ /g" -e "s/\[_\]//g"`
- DETAILS=`grep printselected.gif -A 2 $TMPFILE | awk '{ if (FNR == 3) print $0 }' | sed -e "s/\ \+//" -e "s/\ \+/\ /g" -e "s/\[_\]//g"`
- if [ "$NAME" == "" ]; then
- if grep "Kein Teilnehmer gefunden" $TMPFILE > /dev/null; then
- NAME="$NUMMER"
- DETAILS="Kein Eintrag $2"
- fi;
- fi;
- if [ "$NAME" == "" ]; then
- NAME="$NUMMER"
- DETAILS="Fehler $2"
- else
- echo -e "$NUMMER\t$NAME" >> $CACHE
- fi;
- fi
- fi
- rm -f /tmp/tmpsuche
- #echo -e "`date +%e.%m\ %H:%M ` $NAME " >>$LOG
ich blick da bei dem Teil wo mit Regexp usw gefeilt wird nicht so durch, vielleicht kann mir jemand helfen.
Eine Möglichkeit für reverse-lookup in der ch ist http://tel.search.ch/044XXXXXXX