Datenströme
Für AGI-Skripte ist ein Verständnis des Unix-Datenstrom-Models unabdingbar. Im Anhang dieses Buches finden Sie Informationen zu diesem Prinzip.
STDIN
Das AGI-Skript bekommt über den „standard input“ (STDIN) einige Informationen von Asterisk. Das Format sieht folgendermaßen aus:
agi_request: mein-skript.py
agi_channel: PJSIP/2000-00000001
agi_language: de
agi_callerid: 2000
agi_calleridname: Hans Beispiel
agi_context: intern
agi_extension: 1234
agi_priority: 2
Nach dem Übergeben dieser Grundinformationen sendet Asterisk noch eine Leerzeile, um dem AGI-Skript mitzuteilen, dass die Übertragung beendet ist.
AGI-Header
Die folgende Aufstellung listet alle von Asterisk weitergegebenen Header auf:
-
agi_requestDer Dateiname des aufgerufenen AGI-Programms
-
agi_channelDer Channel
-
agi_languageDie eingestellte Sprache (z. B.
enfür Englisch oderdefür Deutsch) -
agi_typeDie Channel-Art (z. B.
PJSIPfür SIP,IAX2für IAX,Localfür Local-Channels) -
agi_uniqueidEine im System unique (einmalige) ID für das Gespräch
-
agi_calleridDie Caller-ID (z. B.
Hans Meier <2000>) -
agi_contextDer Ursprungs-Context
-
agi_extensionDie Ursprungs-Extension
-
agi_priorityDie Priorität in der Extension beim Aufruf des AGI-Skripts
-
agi_accountcodeAbrechnungscode
-
agi_calleridnameName aus der Caller-ID (z. B.
Hans Meier) -
agi_callingpresPresentation-Indicator der Caller-ID (z. B.
allowed_not_screened,prohib), steuert die Anzeige beim Angerufenen