Einzelnen Beitrag anzeigen
Alt 08.11.2006, 23:16   #113
FFL
IPPF-Fan
 
Registriert seit: 15.11.2004
Beiträge: 141
FFL eine Nachricht über ICQ schicken FFL eine Nachricht über Skype schicken
Hallo,

ich hab das Skript über den Versand bei fullsms.de angepasst, da kostet die SMS mit Absenderkennung nur 5ct.
Allerdings muss man vorher den Text "urlencoden". Ich mach das mit sed und einer vorher in der debug.cfg erstellten urlencode.sed. Vielleicht hat einer einen besseren Weg
Code:
# debug.cfg

# create urlencode.sed
cat > /var/tmp/urlencode.sed << 'ENDURLENCODE'
s/%/%25/g
s/ /%20/g
s/ /%09/g
s/!/%21/g
s/"/%22/g
s/#/%23/g
s/\$/%24/g
s/\&/%26/g
s/'\''/%27/g
s/(/%28/g
s/)/%29/g
s/\*/%2a/g
s/+/%2b/g
s/,/%2c/g
s/-/%2d/g
s/\./%2e/g
s/\//%2f/g
s/:/%3a/g
s/;/%3b/g
s//%3e/g
s/?/%3f/g
s/@/%40/g
s/\[/%5b/g
s/\\/%5c/g
s/\]/%5d/g
s/\^/%5e/g
s/_/%5f/g
s/`/%60/g
s/{/%7b/g
s/|/%7c/g
s/}/%7d/g
s/~/%7e/g
ENDURLENCODE
Code:
# cat /var/flash/calllog
#! /bin/sh
################################################################
# Fritz!Box - Calllog
# Benachrichtigung über neue Anrufe per SMS fullsms.de
# Autor: Fabian Fischer - ff@nodomain.cc
# Quelle: http://www.ip-phone-forum.de/showthread.php?t=98161
# Danke an die vorigen Autoren!
################################################################
# Konfiguration
user=USER
pass=PASS
from=Fritz!Box
to=HANDYNR
################################################################

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

# Text erzeugen
echo "`date +\"%d.%m.%y %H:%M\"` - Anruf von $CID ($name) an $2 ($3) $4"| sed -f /var/tmp/urlencode.sed > /var/tmp/calllog.txt

text=`cat /var/tmp/calllog.txt`

# Text an Handy senden (fullsms.de)
# echo $text
wget -O - "http://www.fullsms.de/gw/?user=$user&passwort=$pass&typ=3&handynr=$to&absender=$from&text=$text"
In diesem Fall werde ich über jeden Anrufer informiert. Evtl. passe ich mir das noch an wie in diesem Thread irgendwo beschrieben.

Ich warte auf euer Feedback

edit:// sorry, da hatte sich beim Kopieren eine [eingeschlichen
__________________
DSL-Anschluss: DSL2+ 16000; 17691 kBit/s Download; 1183 kBit/s Upload
DSL-Provider: 1und1 4DSL
Router: FRITZ!Box Fon WLAN 2+ (7170) mit OpenVPN-Server (Howto), Firmware-Version 29.04.33
LAN: PC; Nokia dBoxII; Thomson IP1101 (Maxdome-Client mit SOT)
WLAN Laptop; Roku Soundbridge
VoIP: 1und1 ausgehende Gespräche; Fallback über Analog; Sipgate ein- und ausgehende Gespräche; Sipgate-Nummer bei 1und1 freigeschaltet -> kostenlos erreichbar auch für 1und1-Benutzer; Phoneflat
Telefon: Siemens Gigaset 4000 micro

Geändert von FFL (10.11.2006 um 22:19 Uhr).
FFL ist offline   Mit Zitat antworten