Callback mit SMS und LCR

oortmanp

Neuer User
Mitglied seit
17 Feb 2005
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Hallo,

da ich oft im hotel (im ausland) bin, habe ich einen dialplan und script geschrieben die mit einer empfangenen sms eine callback lösung ermöglichen. Hierdurch spart man sich die teuere handygebühr und hoteltelefongebühr im ausland.

Der Asterisk server ruft dann, nach SMS empfang und kontrolle, mit LCR im hotel an, wenn da abgenommen wird, fragt asterisk: "please connect me to room ...." und dann nach 15 sec kommt DISA. Jetzt kann man erneut mit LCR wählen.

für diejenigen die interesse haben, so geht's:

schicke von deinem handy eine sms an asterisk mit als text: "telefonnummer vom hotel" room "zimmernummer".
z.B. für Hotel Crown Plaza Istanbul mit Zimmernr 902
00902125608100 room 902

im dialplan sollte dann folgendes stehen:
Code:
[smsreceive]
 exten => 5xxxx/01930100,1,Verbose(Receiving SMS from ${CALLERIDNUM})
 exten => 5xxxx/01930100,2,Answer
 exten => 5xxxx/01930100,3,Wait(1)
 exten => 5xxxx/01930100,4,SMS(smsinfo,a)
 exten => 5xxxx/01930100,5,AGI(smsanalyse.agi|0163xxxxxxx)
 exten => 5xxxx/01930100,6,Verbose(phonenumber ${PHONENR})
 exten => 5xxxx/01930100,7,GotoIf($[${PHONENR} = NOTVALID]?12)
 exten => 5xxxx/01930100,8,AGI(tsblcr.agi|/etc/asterisk/lcr/tsblcr.routing|${PHONENR})
 exten => 5xxxx/01930100,9,Verbose(phonenumber incl cbc ${TSBLCRROUTING})
 exten => 5xxxx/01930100,10,AGI(callback.agi|${PHONENR}|relayanddialtone|5xxxx|${TSBLCRROUTING})
 exten => 5xxxx/01930100,11,Hangup
 
[relayanddialtone]
 exten => s,1,AGI(roomnr.agi)
 exten => s,2,Verbose(roomnumber ${ROOMNR})
 exten => s,3,SetVar(howmanydigits= ${LEN(${ROOMNR})})
 exten => s,4,Verbose(how many digits ${howmanydigits})
 exten => s,5,Wait(3)
 exten => s,6,SetVar(zaehler = 0)
 exten => s,7,Playback(Connect2Room)
 exten => s,8,Playback(${ROOMNR:${zaehler}:1})
 exten => s,9,AGI(increasezaehler.agi|${zaehler})
 exten => s,10,Verbose(zaehler ist ${zaehler})
 exten => s,11,GotoIf($[${zaehler} != ${howmanydigits}]?8)
 exten => s,12,Wait(15)
 exten => s,13,Authenticate(xxxxxx)
 exten => s,14,DISA(no-password|dialout)
 exten => s,15,Hangup

dann noch ein verzeichnis:
"/var/spool/asterisk/outgoing/tmp/callback" anlegen

die agi's natürlich im richtigen verzeichnis kopieren.
(sind zwar nicht schön programmiert, aber es funktioniert)
Falls ihr verbesserungsvorschläge habt, hoere ich es gerne.

dann noch eigene sound dateien aufnehmen mit z.B. text:

"Hello, please connect me to Mr. ....., roomnumber" ->Connect2Room.gsm
und alle zahlen 0,1,...,9 ->0.gsm 1.gsm ... 9.gsm
(von wav nach gsm konvertieren mit sox) und in /var/lib/asterisk/sounds kopieren.

Man kann nur von der im dialplan angegebene handynr ein sms-callback starten. Alle andere versuche werden abgelehnt mit: phonenumber NOTVALID

LCR findet statt über das TSBLCR script von allesOK

Wenn man auch nach 24:00 und vor 7:00 telefonieren möchte, muss man sich das von der TCOM freischalten lassen. War glaube ich: sms an 01930100 von der frei zu schaltenen MSN schicken mit als text ANMELD.

Viel erfolg,
Pieter-Bas
 

Anhänge

  • callbacksms.zip
    1.2 KB · Aufrufe: 75

Statistik des Forums

Themen
244,695
Beiträge
2,216,692
Mitglieder
371,315
Neuestes Mitglied
jack-mack
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.