Dialplan Variable über AGI Script auslesen

konabi

Mitglied
Mitglied seit
11 Apr 2005
Beiträge
424
Punkte für Reaktionen
0
Punkte
16
Gibt es die Möglichkeit eine Variable die ich in einem Macro gefüllt habe,
in einem AGI Script auszulesen?

(Die Variable kann nicht als Argument dem AGI Script übergeben werden)


Danke
Sven
 
Geht es ja mit einer globalen Variable?
 
ok,
habe die lösung gefunden.

GET VARIABLE hilft

oder anders Variable vom agi Script zurück zum Dialplan mit

SET VARIABLE


Viele Grüße
Sven
 
Hallo tommiboy


du kannst z.B. in einem AGI Script Varaiablen setzen.
Ich lese die Werte für $TRUNK_NAME und $CHANNEL_MAX aus einer mySQL Datenbank mit Hilfe von php aus, und ordne diese Werte mit Hilfe von SET VARIABLE einer anderen Variable zu:


Code:
    fwrite(STDOUT, "SET VARIABLE TRUNK  ".$TRUNK_NAME." \n");
    fflush(STDOUT);
    fwrite(STDOUT, "SET VARIABLE MAX ".$CHANNEL_MAX." \n");
    fflush(STDOUT);
Diese Variablen kannst Du dann wieder im Dialplan verwenden:

Code:
exten => s,1,NoOp(Trunkname: ${TRUNK})
exten => s,n,NoOp(Maximale Channels: ${MAX})
Um eine Channelvariable aus dem Dialplan in ein AGI Script zu bekommen kannst Du GET VARIABLE nutzen.

Oder Du übergibst beim Aufruf des AGI Scripts Argumente, ählich wie bei Macros:

Code:
[SIZE=3][FONT=monospace]exten => s,1,AGI(mytest.agi,${TRUNK},${MAX})
[FONT=Verdana]
[/FONT][/FONT][/SIZE]
Innerhalb des AGI Script kannst DU dann folgendermaßen auf diese Argumente zugreifen:

Code:
[FONT=Courier New]
[/FONT] [SIZE=3][FONT=monospace][FONT=Verdana][FONT=Courier New] $TRUNK = $argv[1];
$MAX   = $argv[2];[/FONT]
[/FONT][/FONT][/SIZE][FONT=Verdana]
[/FONT]

Viele Grüße
Sven
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
247,959
Beiträge
2,277,863
Mitglieder
377,050
Neuestes Mitglied
Sen4622