There are a number of variables that are defined or read by Asterisk. Here is a list of them. More information is available in each application's help text. All these variables are in UPPER CASE only.
Variables marked with a * are builtin functions and can't be set, only read in the dialplan. Writes to such variables are silently ignored.
${CDR(accountcode)} * Account code (if specified) ${BLINDTRANSFER} The name of the channel on the other side of a blind transfer ${BRIDGEPEER} Bridged peer ${BRIDGEPVTCALLID} Bridged peer PVT call ID (SIP Call ID if a SIP call) ${CALLERID(ani)} * Caller ANI (PRI channels) ${CALLERID(ani2)} * ANI2 (Info digits) also called Originating line information or OLI ${CALLERID(all)} * Caller ID ${CALLERID(dnid)} * Dialed Number Identifier ${CALLERID(name)} * Caller ID Name only ${CALLERID(num)} * Caller ID Number only ${CALLERID(rdnis)} * Redirected Dial Number ID Service ${CALLINGANI2} * Caller ANI2 (PRI channels) ${CALLINGPRES} * Caller ID presentation for incoming calls (PRI channels) ${CALLINGTNS} * Transit Network Selector (PRI channels) ${CALLINGTON} * Caller Type of Number (PRI channels) ${CHANNEL} * Current channel name ${CONTEXT} * Current context ${DATETIME} * Current date time in the format: DDMMYYYY-HH:MM:SS (Deprecated; use ${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)}) ${DB_RESULT} Result value of DB_EXISTS() dial plan function ${EPOCH} * Current unix style epoch ${EXTEN} * Current extension ${ENV(VAR)} Environmental variable VAR ${GOTO_ON_BLINDXFR} Transfer to the specified context/extension/priority after a blind transfer (use ^ characters in place of | to separate context/extension/priority when setting this variable from the dialplan) ${HANGUPCAUSE} * Asterisk cause of hangup (inbound/outbound) ${HINT} * Channel hints for this extension ${HINTNAME} * Suggested Caller*ID name for this extension ${INVALID_EXTEN} The invalid called extension (used in the "i" extension) ${LANGUAGE} * Current language (Deprecated; use ${LANGUAGE()}) ${LEN(VAR)} * String length of VAR (integer) ${PRIORITY} * Current priority in the dialplan ${PRIREDIRECTREASON} Reason for redirect on PRI, if a call was directed ${TIMESTAMP} * Current date time in the format: YYYYMMDD-HHMMSS (Deprecated; use ${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}) ${TRANSFER_CONTEXT} Context for transferred calls ${FORWARD_CONTEXT} Context for forwarded calls ${UNIQUEID} * Current call unique identifier ${SYSTEMNAME} * value of the systemname option of asterisk.conf ${ENTITYID} * Global Entity ID set automatically, or from asterisk.conf