AGI und DIALSTATUS

Beastie

Neuer User
Mitglied seit
19 Okt 2005
Beiträge
42
Punkte für Reaktionen
0
Punkte
6
Hi,

ich versuche gerade unseren Dialplan in einem AGI abzubilden, was auch ziemlich gut funktioniert.
Das Einzige, was mir Sorgen bereitet ist die Moeglichkeit Variablen abzufragen. Das soll ja mit
GET VARIABLE gehen, aber irgendwie tut das nicht so, wie ich das will.

So sieht der Block mit "AGI debug" aus:

AGI Rx << EXEC Dial "SIP/42|30|oTW"
-- AGI Script Executing Application: (Dial) Options: (SIP/42|30|oTW)
-- Called 42
-- SIP/42-28f01000 is ringing
AGI Tx >> 200 result=0
AGI Rx << GET VARIABLE DIALSTATUS
AGI Tx >> 200 result=1 (NOANSWER)
AGI Rx << NOOP Status ist: 200 result=1
AGI Tx >> 200 result=0
AGI Rx << NOOP None
AGI Tx >> 200 result=0

Und das ist dazugehoerige Codeschnipsel:

sys.stdout.write("EXEC Dial \"%s|%s|oTW\"\n" % (result_one[1], result_one[4]))
sys.stdout.flush()
sys.stdout.write("GET VARIABLE DIALSTATUS\n")
sys.stdout.flush()
bla = sys.stdin.readline()
sys.stdout.write("NOOP Status ist: %s\n" % bla)
sys.stdout.flush()
result = re.search('.*\((.*?)\).*', bla)
if result is None:
sys.stdout.write("NOOP %s\n" % result)
sys.stdout.flush()
pass
else:
status = result.group(1)
sys.stdout.write("NOOP %s\n" % status)
sys.stdout.flush()

Wenn Asterisk mir den DIALSTATUS uebergibt, steht er in Klammern, aber die
werden mir in der Variable, die ich ueber stdin einlese, nicht mitgegeben.

Hat jemand eine Erklaerung, oder Loesung dafuer?

Danke!


Ciao,
-Martin.
 
3CX

Neueste Beiträge

Statistik des Forums

Themen
239,537
Beiträge
2,129,043
Mitglieder
362,933
Neuestes Mitglied
mafl2k
Erhalten Sie 3CX für 1 Jahr kostenlos!

Gehostet, in Ihrer privaten Cloud oder on-Premise! Ganz ohne Haken. Geben Sie Ihren Namen und Ihre E-Mail an und los geht´s:

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.
oder via