Rufnummern Zuschneiden

baschdieh

Mitglied
Mitglied seit
15 Sep 2005
Beiträge
416
Punkte für Reaktionen
0
Punkte
0
Hallo,

gibt es die Moeglichkeit einen Rufnummern-String zurecht zu schneiden?

Sprich das Telefon übergibt via EXTEN einen String wie folgt:

1149XXXXCallerID*20*0049XXXZIELRUFNUMMER*12XXXCALLERID

Nun wuerde ich gerne den Teil in der Mitte mit der Zielrufnummer aus diesem String schneiden und mit einem Dial-Befehl an einen S2M schicken.

Wieso das ganze?
Der String wird von unserem VoIP-Provider erwartet - im Falle eines Ausfalls, moechte soll die Rufnummer einem Backup S2M uebergeben werden.

Hat da jemand eine Idee? VIelen Dank!
 
oder mal in Kapitel 5 meines Asterisk-Kurses hier im Forum nachlesen...
 
Alles klar - war ja einfacher als gedacht! Nun gehts weiter:

Nachdem das ja mit dem Nummern-Auschneiden wunderbar funktioniert, sollte nun eine automatische Regel eingebaut werden.

Zu einem soll primär der Anruf ueber das SIP-Gateway in dem gewünschten format getätigt werden.
Sobald das SIP-Gateway nicht erreichbar ist, muss das EXTEN in das gewünschte Format für ein ZAP-Device gebracht werden.

Manuell funktioniert das, aber wie richte ich es automatisch ein? Problem an der Sache ist, dass ich vom SIP-Gateway keine Rückmeldung bekomme, ob er Tot oder aktiv ist. Daher müsste man die Sache zeitabhängig konfigurieren.
Code:
SIP/ip.vom.sip.provider is making progress passing it to SIP/intern-98dd
Wenn diese Meldung innerhalb von 10 Sekunden gemeldet wird, ist alles okay. Wird diese Meldung nicht innerhalb von 10Sekunden ausgegeben, scheint wohl der SIP-Provider tot zu sein und man muesste den Weg ueber die S2M gehen.

Wäre so etwas machbar?

Vielen Dank soweit!

Habe nun ganz simpel folgendes getestet - scheint wohl auch ohne weiteres zu funktionieren. Was sagt ihr dazu ?

Code:
exten => _X.,1,Dial(SIP/1149${EXTEN:1}*[email protected],10)
exten => _X.,2,Congestion
exten => _X.,102,Dial(Zap/g1/0${EXTEN:18})

danke!
 
Zuletzt bearbeitet von einem Moderator:
Das Problem ist, dass wenn Du im DIAL Befehl bist Du warten musst bis sich der DIAL Befehl zurückmeldest und Dir einen Status übergibt ${DIALSTATUS}.
(Du verwendest noch die alten priority-jumps.)


Wenn Du z.B. einen nicht aktiven SIP Server anrufst musst Du ca. 60 Sekunden warten bis der DIAL Befehl nicht erfolgreich beendet wird.
 
D.h. ich kann die "60" Sekunden nicht irgendwie auf "10" Sekunden verkuerzen?
 
Kostenlos!

Statistik des Forums

Themen
248,887
Beiträge
2,303,973
Mitglieder
378,565
Neuestes Mitglied
BenGradish