EVAL()

EVAL(Variable)

Wertet eine Variable doppelt aus. Das lässt sich am besten an einem Beispiel erklären: Wenn die Variable ${VAR} den String "${VAR2}" enthält, würde sie ohne Eval() zu diesem String ausgewertet. Mit Eval() wird auch ${VAR2} nochmal zu ihrem Inhalt ausgewertet.

; wenn VAR den String "${VAR2}" enthält und VAR2 den String "Hallo Welt":
exten => 123,1,Set(foo=${EVAL(${VAR})})
; dann ist foo jetzt "Hallo Welt"
[Anmerkung]Anmerkung

Interner Hilfetext zu dieser Applikation in Asterisk 1.4: 

  -= Info about function 'EVAL' =- 

[Syntax]
EVAL(<variable>)

[Synopsis]
Evaluate stored variables.

[Description]
Using EVAL basically causes a string to be evaluated twice.
When a variable or expression is in the dialplan, it will be
evaluated at runtime. However, if the result of the evaluation
is in fact a variable or expression, using EVAL will have it
evaluated a second time. For example, if the variable ${MYVAR}
contains "${OTHERVAR}", then the result of putting ${EVAL(${MYVAR})}
in the dialplan will be the contents of the variable, OTHERVAR.
Normally, by just putting ${MYVAR} in the dialplan, you would be
left with "${OTHERVAR}".

Differenz zum internen Hilfetext in Asterisk 1.2: 

- keine - 

Version 1.2, November 2002

Neue Version verfügbar

Sie betrachten gerade die alte Version des Buches (Version 1.0). Wir empfehlen Ihnen für Asterisk 1.4 und 1.6 die neue Version des Buches.

Asterisk-Tag 2008

Lernen Sie Mark Spencer (den Erfinder von Asterisk) kennen! Viele Vorträge, Case-Studies und Workshops rund um das Thema VoIP. Asterisk-Tag.org

Das gedruckte Buch