Hallo Forum.
Folgendes Problem.
Ich baue derzeit eine SMS2Mail-Gateway mit dem *
Der Ausschnitt aus der extensions.conf sieht wie folgt aus:
Klappt auch alles Prima. Bis auf den Haken das SMS ein wenig traege ist, was das erzeugen der SMS-Datei angeht. Somit greift das AGI voll ins leere (Datei noch nicht vollständig geschrieben).
Das Wait bei der Prio "5" nützt überhaupt nichts, da der Asterisk anscheinend die komplette Kette abbricht, wenn das SMSC aufgelegt hat. Wie bringe ich dem Dings bei, dass es nach dem Kommando SMS(...) gefälligst (egal ob Hangup oder nicht) Warten soll, und noch das AGI sauber ausführt ???
Ein sleep in der smsanalyse.agi bringt überigens auch nichts.
Hier noch mal die smsanalyse (hier im Forum aufgeschnappt und nach Perl portiert![Smile :) :)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Gruss iNT2k
Folgendes Problem.
Ich baue derzeit eine SMS2Mail-Gateway mit dem *
Der Ausschnitt aus der extensions.conf sieht wie folgt aus:
Code:
exten => ${FN1}/01930100,1,Verbose(Receiving SMS from ${CALLERIDNUM})
exten => ${FN1}/01930100,2,Answer
exten => ${FN1}/01930100,3,Wait(1)
exten => ${FN1}/01930100,4,SMS(smsinfo,a)
exten => ${FN1}/01930100,5,Wait(1)
exten => ${FN1}/01930100,6,AGI(smsanalyse.agi)
exten => ${FN1}/01930100,7,Hangup
Klappt auch alles Prima. Bis auf den Haken das SMS ein wenig traege ist, was das erzeugen der SMS-Datei angeht. Somit greift das AGI voll ins leere (Datei noch nicht vollständig geschrieben).
Das Wait bei der Prio "5" nützt überhaupt nichts, da der Asterisk anscheinend die komplette Kette abbricht, wenn das SMSC aufgelegt hat. Wie bringe ich dem Dings bei, dass es nach dem Kommando SMS(...) gefälligst (egal ob Hangup oder nicht) Warten soll, und noch das AGI sauber ausführt ???
Ein sleep in der smsanalyse.agi bringt überigens auch nichts.
Hier noch mal die smsanalyse (hier im Forum aufgeschnappt und nach Perl portiert
Code:
#!/usr/bin/perl -w
my $mail=1; # 1=Vermailen // 0=Debugmode
my $dir="/var/spool/asterisk/sms/mtrx";
my $fta=`ls -l -r -t $dir|grep 200|tail -1|cut -c45-`;
$fta=~s/^.*(sms.*)$/$1/g;
if (!($mail)) { print $fta; }
my ($mobile,$sms)=('','');
open(SMS,$dir."/".$fta);
while ($in=<SMS>) {
if ($in=~m/^oa.*/g) {
$in=~s/^oa\=(.*)\n$/$1/g;
$mobile=$in;
} elsif ($in=~m/^.?ud=.*/g) {
$in=~s/^.?ud=(.*)$/$1/g;
$sms.=$in;
}
}
close(SMS);
my $subj=qq~"SMS von $mobile"~;
if ($mail) {
open (SMSmailer,"| mailtargetmail\@targetdomain.tld -s $subj");
print SMSmailer qq~
SMS von $mobile erhalten
$sms
~;
close(SMSmailer);
} else {
print $mobile." -> ".$sms."\n";
}
Gruss iNT2k