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 PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
233,374
Beiträge
2,033,384
Mitglieder
351,967
Neuestes Mitglied
arto72