H.4. Dialplan-Applikationen und -Funktionen
ChanIsAvail()
hat jetzt eine Option „t
“. Damit wird einfach nur zurückgegeben, ob das Device existiert.ChannelRedirect()
bricht jetzt den Channel nicht mehr ab, wenn die Umleitung fehlschlägt, wie das vorher der Fall war. Stattdessen ist der Erfolgsstatus der Umleitung in der Channel-VariableCHANNELREDIRECT_STATUS
verfügbar (SUCCESS
oderNOCHANNEL
).SetCallerPres()
ist veraltet und wurde durch die FunktionCALLERPRES()
ersetzt.- Das 5. Argument von
DISA()
wurde geändert. Wenn Sie vorher „noanswer
“ verwendet haben, muss die Option jetzt „n
“ lauten. Macro()
ist veraltet (aber noch möglich). Für Unterroutinen sollten Sie jetztGosub()
undReturn()
verwenden oder direkt die native „macro
“-Syntax von AEL verwenden.macro mein-makro() { // tu was return; }
StattMacroExclusive()
gibt es jetzt die FunktionenLOCK()
,TRYLOCK()
undUNLOCK()
, um sicherzustellen, dass ein Abschnitt im Dialplan nicht von mehreren Kanälen gleichzeitig ausgeführt wird.Read()
setzt jetzt eine VariableREADSTATUS
(aufOK
|ERROR
|HANGUP
|INTERRUPTED
|SKIPPED
|TIMEOUT
), anstatt bei einem Fehler automatisch aufzulegen. Wenn Sie bei${READSTATUS} != "OK"
" auflegen wollen, müssen Sie das hinterher explizit im Dialplan tun.Privacy()
greift nicht mehr aufprivacy.conf
zu, also müssen alle Optionen der Applikation direkt im Dialplan als Argumente übergeben werden.MusicOnHold()
hat einen neuen optionalen Timeout-Parameter, der einen Abbruch nach einer bestimmten Dauer ermöglicht. Dadurch wirdWaitMusicOnHold()
überflüssig.SetMusicOnHold()
ist veraltet. Stattdessen sollSet(CHANNEL(musicclass)=...)
verwendet werden.- Die Argumente von
ExecIf()
wurden verändert.Alt:ExecIf(
Ausdruck
,Applikation
,Argumente
)Neu:ExecIf(
Ausdruck
?ApplikationT
(ArgumenteT
)[:ApplikationF
(ArgumenteF
)]) QUEUE_MEMBER_COUNT()
ist veraltet.QUEUE_MEMBER()
akzeptiert jetzt als 2. Parameter „logged
“, „free
“ oder „count
“.