Asterisk SMS Alarmhandler

tabellar

Neuer User
Mitglied seit
13 Feb 2005
Beiträge
55
Punkte für Reaktionen
0
Punkte
0
Hi,

ich habe seit einiger Zeit mit Messgeräten zu tun, die bei entsprechenden
Ereignissen Alarme via SMS versenden. Ich möchte nun Asterisk verwenden, um
diese SMSe als Trigger für weitere Szenarios zu nutzen, z.B. Jabber Messages,
Emails, Datenbankeinträge etc. via AGi.

Diese SMS-Alarme werden von einem Swisscom-GSM Handy versendet. Für erste Tests habe ich im Moment eine freephone Nummer und div. ISDN Nummern in Deutschland, die ich über den internen S0-Bus einer TK-Anlage an Asterisk weiter schicken kann.

Ich habe über die Suche schon nach SMS und Asterisk geschaut, aber mit den Suchtreffern bin ich noch nicht so richtig glücklich. Deshalb hier die Fragen:

1. Kann ich nur über die ISDN Nummern SMSe empfangen (.ch->.de)?
Hat Asterisk dafür alles Bord oder muss noch bei der Telekom irgendwas
freigeschaltet werden?

2. Kann ich die SMSe über z.B. eine Freephone Nummer empfangen?

3. Gibt es sonst noch Möglichkeiten, SMSe mit Asterisk zu empfangen und
weiter zu vermitteln?

Danke im voraus...
Tabellar
 
Ich glaube das die Telekomm auf jedenfall Daten SMS empfang an deinem ISDN anschluss aktivieren muss.
 
Ok, das mit der Telekom kann ich mal abklären. Ich wäre im ersten Schritt ja schon froh, wenn Asterisk mir den Call vom Handy anzeigen und somit in meiner cdr_pgsql DB anlegen würde. Bisherige Versuche, SMSe an die ISDN oder Freephone Nummer zu senden wurden von Asterisk nicht registriert.

Würde Asterisk die Calls des Handys erkennen, könnte ich zumindest über die extension.conf darauf reagieren (z.B. Nr. 01234711/MR1 - Low Alarm von MR1, 01234712/MR1 High Alarm von MR1 etc.).

FastSMS scheint ja zum Versenden von SMSen gut geeignet zu sein (viele Länder und relativ günstig - PSTN ist nicht notwendig). Es fehlt eben das Gegenstück dazu, SMS -> Gateway -> Textnachricht an Voip Nummer....
SMS2Email sehe ich im Moment nur als Notfalllösung, wäre aber sicherlich das einfachste.

Tabellar
 
Günstig? So wie ich das berechnet habe kostet eine SMS in die Schweiz z.B. 10 cent bei einer Abnahme von 1000 Credits. Gibt's da heute noch nichts günstigeres? Hab mich damit lange nicht auseinandergesetzt, aber 10 cent erscheinen mir doch recht viel.
 
Asterisk kann SMS empfangen - Hier mein Teil der extensions.conf

Code:
[sms-recieve]

exten => _X./_1930100,1,Verbose(Receiving SMS from ${CALLERIDNUM})
exten => _X./_1930100,2,Answer
exten => _X./_1930100,3,Wait(1)
exten => _X./_1930100,4,SMS(sms${EXTEN},a)
; hier variablen zur angewählten extension holen (unten z.b. ${MYEMAIL}
exten => _X./_1930100,5,Macro(userinfo)

; smsq liefert diese vars: $ud (user data), $scts (time date), $oa (sender), $mr (ms reference)
exten => _X./_1930100,6,System(smsq --process=printf \'You have recieved a new SMS.\\n\\n\\tFrom: $oa\\n\\t  To: ${EXTEN}\\n\\tSent: $scts\\n\\t SMS: $ud\\n\\n\\nVisit http://192.168.178.20/sms/send.php?to=$oa to reply to this SMS. \\n\' | mail -s \'New SMS revieved\' ${MYEMAIL} -- -f SMS@asterisk --queue=sms${EXTEN})
exten => _X./_1930100,7,Hangup

Empfangen funktioniert (da 01930100 die Gateway-Tel der Telekom ist) - Und die SMS landen brav im Queue (/var/spool/asterisk/sms oder so).

Nur die Weiterleitung mit smsq will nicht, also das --process Kommando. Hänge dort ziemlich fest, vielleicht weiß ja jemand wie das zu nutzen ist?

smsq ist übringes in den Asterisk-addons zu finden.
 
Asterisk kann SMS empfangen - Hier mein Teil der extensions.conf

In der Extension empfiehlt sich der Übersicht halber die Verwendung von same => statt untereinander weg wieder die gesamte Definition.
Das lässt sich dann auch später leichter anpassen.
$CALLERIDNUM ist veraltet, nutze stattdessen ${CALLERID(num)}.
_X. schließt _1930100 mit ein. Die Nummer des SMSC kann weggelassen werden

Code:
[sms-recieve]
exten => _X.,1,Verbose(Receiving SMS from ${CALLERID(num)})
 same => n,Answer
 same => n,Wait(1)
--- snipp ---
; smsq liefert diese vars: $ud (user data), $scts (time date), $oa (sender), $mr (ms reference)
 same => n,System(smsq --process='echo "You have recieved a new SMS.\n\n\tFrom: $oa\n\t  To: ${EXTEN}\n\tSent: $scts\n\t SMS: $ud\n\n\nVisit http://192.168.178.20/sms/send.php?to=$oa to reply to this SMS." | mail -s 'New SMS revieved' ${MYEMAIL} -- -f SMS@asterisk --queue=sms${EXTEN})
...so bekommst Du auch ne Mail.
Der gesamte Befehl in --process muss in ' ' eingeschlossen werden, dann klappt das auch.
 
Du hast aber schon das Datum dieses Threads gesehen? :alt:
 
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.