Functions: Cheat Sheet

224 entries, compact print-friendly format

Functions | AsteriskRecipes.com Cheat Sheet
Name Syntax Synopsis Since
ABS() ABS([num]) Returns absolute value of a number. 16.19.0, 18.5.0
AES_DECRYPT() AES_DECRYPT(key,string) Decrypt a string encoded in base64 with AES given a 16 character key. 1.6.1.0
AES_ENCRYPT() AES_ENCRYPT(key,string) Encrypt a string with AES given a 16 character key. 1.6.1.0
AGC() AGC(channeldirection) Apply automatic gain control to audio on a [[term:channel|channel]]. 1.6.1.0
AGENT() AGENT(AgentId[:item]) Gets information about an Agent 12.0.0
AMI_CLIENT() AMI_CLIENT(loginname,field) Checks attributes of manager accounts 11.0.0
ARRAY() ARRAY(var1[,var2,varN]) Allows setting multiple variables at once. 1.4.0
AST_CONFIG() AST_CONFIG(config_file,category,variable_name[,index]) Retrieve a variable from a configuration file. 1.6.1.0
AST_SORCERY() AST_SORCERY(module_name,object_type,object_id,field_name[,retrieval_method,retrieval_details]) Get a field from a sorcery object 12.2.0
BASE64_DECODE() BASE64_DECODE(string) Decode a base64 string. 1.4.0
BASE64_ENCODE() BASE64_ENCODE(string) Encode a string in base64. 1.4.0
BASENAME() BASENAME(filename) Return the name of a file. 16.21.0, 18.7.0
BLACKLIST() BLACKLIST() Check if the callerid is on the blacklist. 1.6.0
CALENDAR_BUSY() CALENDAR_BUSY(calendar) Determine if the calendar is marked busy at this time. 1.8.0
CALENDAR_EVENT() CALENDAR_EVENT(field) Get calendar event notification data from a notification call. 1.8.0
CALENDAR_QUERY() CALENDAR_QUERY(calendar[,start,end]) Query a calendar server and store the data on a [[term:channel|channel]] 1.8.0
CALENDAR_QUERY_RESULT() CALENDAR_QUERY_RESULT(id,field[,entry]) Retrieve data from a previously run CALENDAR_QUERY() call 1.8.0
CALENDAR_WRITE() CALENDAR_WRITE(calendar,field) Write an event to a calendar 1.8.0
CALLCOMPLETION() CALLCOMPLETION(option) Get or set a call completion configuration parameter for a [[term:channel|channel]]. 1.8.0
CALLERID() CALLERID(datatype[,CID]) Gets or sets Caller*ID data on the [[term:channel|channel]]. 1.2.0
CALLERPRES() CALLERPRES() Gets or sets Caller*ID presentation on the [[term:channel|channel]]. N/A
CDR() CDR(name[,options]) Gets or sets a [[term:cdr]] variable. 1.2.0
CDR_PROP() CDR_PROP(name) Set a property on a [[term:channel|channel]]'s [[term:cdr]]. 12.0.0
CHANNEL() CHANNEL(item) Gets/sets various pieces of information about the [[term:channel|channel]]. 1.2.0
CHANNELS() CHANNELS([regular_expression]) Gets the list of channels, optionally filtering by a regular expression. 1.6.1.0
CHANNEL_EXISTS() CHANNEL_EXISTS(name_or_uid) Checks if the specified [[term:channel|channel]] exists. 16.22.0, 18.8.0
CHECKSIPDOMAIN() CHECKSIPDOMAIN(domain) Checks if domain is a local domain. N/A
CONFBRIDGE() CONFBRIDGE(type,option) Set a custom dynamic bridge, user, or menu profile on a [[term:channel|channel]] for the [[term:confbridge]] application... 10.0.0
CONFBRIDGE_CHANNELS() CONFBRIDGE_CHANNELS(type,conf) Get a list of channels in a [[term:confbridge]] conference. 16.27.0, 18.13.0, 19.5.0
CONFBRIDGE_INFO() CONFBRIDGE_INFO(type,conf) Get information about a [[term:confbridge]] conference. 10.0.0
CONNECTEDLINE() CONNECTEDLINE(datatype[,i]) Gets or sets Connected Line data on the [[term:channel|channel]]. 1.8.0
CSV_QUOTE() CSV_QUOTE(string) Quotes a given string for use in a CSV file, escaping embedded quotes as necessary 1.8.0
CURL() CURL(url[,post-data]) Retrieve content from a remote web or ftp server 10.0.0
CURLOPT() CURLOPT([key]) Sets various options for future invocations of CURL. 10.0.0
CUT() CUT(varname,char-delim,range-spec) Slices and dices strings, based upon a named delimiter. 1.2.0
DAHDI_CHANNEL() DAHDI_CHANNEL(property[,channel]) Set or get a property of a DAHDI [[term:channel|channel]]. N/A
DB() DB(family/key) Read from or write to the Asterisk database. 1.2.0
DB_DELETE() DB_DELETE(family/key) Return a value from the database and delete it. 1.4.0
DB_EXISTS() DB_EXISTS(family/key) Check to see if a key exists in the Asterisk database. 1.2.0
DB_KEYCOUNT() DB_KEYCOUNT([prefix]) Obtain the number of keys at a prefix within the Asterisk database. 16.26.0, 18.12.0, 19.4.0
DB_KEYS() DB_KEYS([prefix]) Obtain a list of keys within the Asterisk database. 10.0.0
DEC() DEC(variable) Decrements the value of a variable, while returning the updated value to the [[term:dialplan|dialplan]] 1.8.0
DELETE() DELETE(varname) Deletes a specified [[term:channel|channel]] variable. 18.21.0, 20.6.0, 21.1.0
DENOISE() DENOISE(channeldirection) Apply noise reduction to audio on a [[term:channel|channel]]. 1.6.1.0
DEVICE_STATE() DEVICE_STATE(device) Get or Set a device state. 1.6.0
DIALGROUP() DIALGROUP(group[,op]) Manages a group of users for dialing. 1.6.0
DIALPLAN_EXISTS() DIALPLAN_EXISTS([[term:context|context]][,[[term:extension|extension]],priority]) Checks the existence of a [[term:dialplan|dialplan]] target. 1.6.0
DIGIT_SUM() DIGIT_SUM([num]) Returns the sum of all the digits in a number. 23.1.0, 22.7.0, 20.17.0
DIRNAME() DIRNAME(filename) Return the directory of a file. 16.21.0, 18.7.0
DUNDILOOKUP() DUNDILOOKUP(number[,[[term:context|context]],options]) Do a DUNDi lookup of a phone number. 1.8.0
DUNDIQUERY() DUNDIQUERY(number[,[[term:context|context]],options]) Initiate a DUNDi query. 1.8.0
DUNDIRESULT() DUNDIRESULT(id[,resultnum]) Retrieve results from a DUNDIQUERY. 1.8.0
ENUMLOOKUP() ENUMLOOKUP(number[,method-type,options,record#,zone-suffix]) General or specific querying of NAPTR records for ENUM or ENUM-like DNS pointers. 1.2.0
ENUMQUERY() ENUMQUERY(number[,method-type,zone-suffix]) Initiate an ENUM query. 1.6.0
ENUMRESULT() ENUMRESULT(id,resultnum) Retrieve results from a ENUMQUERY. 1.6.0
ENV() ENV(varname) Gets or sets the environment variable specified. 1.2.0
EVAL() EVAL(variable) Evaluate stored variables 1.2.0
EVAL_EXTEN() EVAL_EXTEN(priority[,context,extensions]) Evaluates the contents of a [[term:dialplan|dialplan]] [[term:extension|extension]] and returns it as a string. 16.26.0, 18.12.0, 19.4.0
EVAL_SUB() EVAL_SUB(priority[,context,extensions]) Executes a Gosub and provides its return value as a string 20.11.0, 21.6.0, 22.1.0
EXCEPTION() EXCEPTION(field) Retrieve the details of the current [[term:dialplan|dialplan]] exception. 1.6.0
EXISTS() EXISTS(data) Test the existence of a value. 1.2.0
EXPORT() EXPORT(channel,var) Set variables or [[term:dialplan|dialplan]] functions on any arbitrary [[term:channel|channel]] that exists. 16.30.0, 18.16.0, 19.8.0, 20.1.0
EXTENSION_STATE() EXTENSION_STATE(extension[@[[term:context|context]]]) Get an [[term:extension|extension]]'s state. 1.6.0
FAXOPT() FAXOPT(item) Gets/sets various pieces of information about a fax session. 11.0.0
FEATURE() FEATURE(option_name) Get or set a feature option on a [[term:channel|channel]]. 12.0.0
FEATUREMAP() FEATUREMAP(feature_name) Get or set a feature map to a given value on a specific [[term:channel|channel]]. 12.0.0
FIELDNUM() FIELDNUM(varname,delim,value) Return the 1-based offset of a field in a list 10.0.0
FIELDQTY() FIELDQTY(varname,delim) Count the fields with an arbitrary delimiter 1.2.0
FILE() FILE(filename[,offset,length,options,format]) Read or write text file. 1.6.0
FILE_COUNT_LINE() FILE_COUNT_LINE(filename[,format]) Obtains the number of lines of a text file. 1.8.0
FILE_FORMAT() FILE_FORMAT(filename) Return the newline format of a text file. 1.8.0
FILTER() FILTER(allowed-chars,string) Filter the string to include only the allowed characters 1.2.40
FRAME_DROP() FRAME_DROP(direction) Drops specific frame types in the TX or RX direction on a [[term:channel|channel]]. 16.21.0, 18.7.0
FRAME_TRACE() FRAME_TRACE(filter list type) View internal ast_frames as they are read and written on a [[term:channel|channel]]. 10.0.0
GEOLOC_PROFILE() GEOLOC_PROFILE(parameter[,options]) Get or Set a field in a geolocation profile 16.28.0, 18.14.0, 19.6.0
GLOBAL() GLOBAL(varname) Gets or sets the global variable specified. 1.4.0
GLOBAL_DELETE() GLOBAL_DELETE(varname) Deletes a specified global variable. 18.21.0, 20.6.0, 21.1.0
GLOBAL_EXISTS() GLOBAL_EXISTS(varname) Check if a global variable exists or not. 18.21.0, 20.6.0, 21.1.0
GROUP() GROUP([category]) Gets or sets the [[term:channel|channel]] group. 1.2.0
GROUP_COUNT() GROUP_COUNT([groupname@category]) Counts the number of channels in the specified group. 1.2.0
GROUP_LIST() GROUP_LIST() Gets a list of the groups set on a [[term:channel|channel]]. 1.2.0
GROUP_MATCH_COUNT() GROUP_MATCH_COUNT(groupmatch[@category]) Counts the number of channels in the groups matching the specified pattern. 1.2.0
HANGUPCAUSE() HANGUPCAUSE(channel,type) Gets per-[[term:channel|channel]] hangupcause information from the channel. 11.0.0
HANGUPCAUSE_KEYS() HANGUPCAUSE_KEYS() Gets the list of channels for which hangup causes are available. 11.0.0
HASH() HASH(hashname[,hashkey]) Implementation of a [[term:dialplan|dialplan]] associative array 1.6.0
HASHKEYS() HASHKEYS(hashname) Retrieve the keys of the HASH() function. 1.6.0
HINT() HINT([[term:extension|extension]][,options]) Get the devices set for a [[term:dialplan|dialplan]] hint. 1.6.0
HOLD_INTERCEPT() HOLD_INTERCEPT(action) Intercepts hold frames on a [[term:channel|channel]] and raises an event instead of passing the frame on 13.7.0
IAXPEER() IAXPEER(peername[,item]) Gets IAX peer information. 1.2.0
IAXVAR() IAXVAR(varname) Sets or retrieves a remote variable. 1.6.0
ICONV() ICONV(in-charset,out-charset,string) Converts charsets of strings. 1.6.0
IF() IF(expression?retvalue) Check for an expression. 1.2.0
IFMODULE() IFMODULE(modulename.so) Checks if an Asterisk module is loaded in memory. 1.6.0
IFTIME() IFTIME(timespec?retvalue) Temporal Conditional. 1.2.0
IMPORT() IMPORT(channel,variable) Retrieve the value of a variable from another [[term:channel|channel]]. 1.6.0
INC() INC(variable) Increments the value of a variable, while returning the updated value to the [[term:dialplan|dialplan]] 1.8.0
ISNULL() ISNULL(data) Check if a value is NULL. 1.2.0
JABBER_RECEIVE() JABBER_RECEIVE(account,jid[,timeout]) Reads XMPP messages. 12.0.0
JABBER_STATUS() JABBER_STATUS(account,jid) Retrieves a buddy's status. 12.0.0
JITTERBUFFER() JITTERBUFFER(jitterbuffer type) Add a Jitterbuffer to the Read side of the [[term:channel|channel]]. This dejitters the audio stream before it reaches t... 10.0.0
JSON_DECODE() JSON_DECODE(varname,item[,separator,options]) Returns the string value of a JSON object key from a string containing a JSON array. 16.24.0, 18.10.0, 19.2.0
KEYPADHASH() KEYPADHASH(string) Hash the letters in string into equivalent keypad numbers. 1.4.0
LEN() LEN(string) Return the length of the string given. 1.2.0
LISTFILTER() LISTFILTER(varname,delim,value) Remove an item from a list, by name. 1.6.2.0
LOCAL() LOCAL(varname) Manage variables local to the gosub stack frame. 1.6.1.0
LOCAL_PEEK() LOCAL_PEEK(n,varname) Retrieve variables hidden by the local gosub stack frame. 1.6.1.0
LOCK() LOCK(lockname) Attempt to obtain a named mutex. 1.6.0
LOG_GROUP() LOG_GROUP([group]) Set the [[term:channel|channel]] group name for log filtering on this channel 18.21.0, 20.6.0, 21.1.0
LTRIM() LTRIM(string) Trim leading whitespace in a string 16.30.0, 18.16.0, 19.8.0, 20.1.0
MAILBOX_EXISTS() MAILBOX_EXISTS(mailbox@context) Tell if a mailbox is configured. N/A
MASTER_CHANNEL() MASTER_CHANNEL() Gets or sets variables on the master [[term:channel|channel]] 1.8.0
MATH() MATH(expression[,type]) Performs Mathematical Functions. 1.2.0
MAX() MAX([num1,num2]) Returns the maximum of two numbers. 16.19.0, 18.5.0
MD5() MD5(data) Computes an MD5 digest. 1.2.0
MEETME_INFO() MEETME_INFO(keyword,confno) Query a given conference of various properties. 1.6.1.0
MESSAGE() MESSAGE(argument) Create a message or read fields from a message. 10.0.0
MESSAGE_DATA() MESSAGE_DATA(argument) Read or write custom data attached to a message. 10.0.0
MIN() MIN([num1,num2]) Returns the minimum of two numbers. 16.19.0, 18.5.0
MINIVMACCOUNT() MINIVMACCOUNT(account:item) Gets MiniVoicemail account information. 1.6.0
MINIVMCOUNTER() MINIVMCOUNTER(account:name[:operand]) Reads or sets counters for MiniVoicemail message. 1.6.0
MIXMONITOR() MIXMONITOR(id,key) Retrieve data pertaining to specific instances of MixMonitor on a [[term:channel|channel]]. 13.0.0
MUTEAUDIO() MUTEAUDIO(direction) Muting audio streams in the [[term:channel|channel]] 1.8.0
ODBC() ODBC(property[,argument]) Controls ODBC transaction properties. 13.8.0
ODBC_FETCH() ODBC_FETCH(result-id) Fetch a row from a multirow query. 1.6.0
PARK_GET_CHANNEL() PARK_GET_CHANNEL(parking_space,parking_lot) Get the [[term:channel|channel]] name of an occupied parking space in a parking lot. 16.0.0
PASSTHRU() PASSTHRU([string]) Pass the given argument back as a value. 1.8.0
PERIODIC_HOOK() PERIODIC_HOOK([[term:context|context]],[[term:extension|extension]],interval,hook_id) Execute a periodic [[term:dialplan|dialplan]] hook into the audio of a call. 13.0.0
PITCH_SHIFT() PITCH_SHIFT(channel direction) Pitch shift both tx and rx audio streams on a [[term:channel|channel]]. 1.8.0
PJSIP_AOR() PJSIP_AOR(name,field) Get information about a [[term:pjsip]] AOR 13.2.0
PJSIP_CONTACT() PJSIP_CONTACT(name,field) Get information about a [[term:pjsip]] contact 13.2.0
PJSIP_DIAL_CONTACTS() PJSIP_DIAL_CONTACTS([[term:endpoint|endpoint]][,aor,request_user]) Return a dial string for dialing all contacts on an AOR. 12.0.0
PJSIP_DTMF_MODE() PJSIP_DTMF_MODE() Get or change the [[term:dtmf]] mode for a [[term:sip]] call. 13.18.0, 14.7.0, 15.1.0
PJSIP_ENDPOINT() PJSIP_ENDPOINT(name,field) Get information about a [[term:pjsip]] [[term:endpoint|endpoint]] 12.0.0
PJSIP_HEADER() PJSIP_HEADER(action,name[,number]) Gets headers from an inbound [[term:pjsip]] [[term:channel|channel]]. Adds, updates or removes the specified [[term:sip]... 12.0.0
PJSIP_HEADERS() PJSIP_HEADERS([prefix]) Gets the list of [[term:sip]] header names from an INVITE message. 16.20.0, 18.6.0
PJSIP_HEADER_PARAM() PJSIP_HEADER_PARAM(header_name,parameter_type,parameter_name) Get or set header/URI parameters on a [[term:pjsip]] [[term:channel|channel]]. 18.16.0, 20.1.0
PJSIP_INHERITABLE_HEADER() PJSIP_INHERITABLE_HEADER(action,name[,number]) Adds, updates or removes the specified [[term:sip]] header from a [[term:pjsip]] or non-PJSIP [[term:channel|channel]] t... 20.19.0, 22.9.0, 23.3.0
PJSIP_MEDIA_OFFER() PJSIP_MEDIA_OFFER(media) Media and [[term:codec|codec]] offerings to be set on an outbound [[term:sip]] [[term:channel|channel]] prior to dialing... 12.0.0
PJSIP_MOH_PASSTHROUGH() PJSIP_MOH_PASSTHROUGH() Get or change the on-hold behavior for a [[term:sip]] call. 13.30.0, 16.7.0, 17.1.0
PJSIP_PARSE_URI() PJSIP_PARSE_URI(uri,type) Parse a URI and return a type part of the URI. 13.24.0, 16.1.0
PJSIP_PARSE_URI_FROM() PJSIP_PARSE_URI_FROM(uri,type) Parse the contents of a variable as a URI and return a type part of the URI. 18.24.0, 20.9.0, 21.4.0
PJSIP_RESPONSE_HEADER() PJSIP_RESPONSE_HEADER(action,name[,number]) Gets headers of 200 response from an outbound [[term:pjsip]] [[term:channel|channel]]. 16.28.0, 18.14.0, 19.6.0
PJSIP_RESPONSE_HEADERS() PJSIP_RESPONSE_HEADERS([prefix]) Gets the list of [[term:sip]] header names from the 200 response of INVITE message. 16.28.0, 18.14.0, 19.6.0
PJSIP_SEND_SESSION_REFRESH() PJSIP_SEND_SESSION_REFRESH([update_type]) W/O: Initiate a session refresh via an UPDATE or re-INVITE on an established media session 13.12.0, 14.1.0
PJSIP_TRANSFER_HANDLING() PJSIP_TRANSFER_HANDLING([mode]) Set how transfers are handled for a [[term:pjsip]] [[term:channel|channel]]. 22.3.0, 21.8.0, 20.13.0
POLARITY() POLARITY() Set or get the polarity of a DAHDI [[term:channel|channel]]. 16.28.0, 18.14.0, 19.6.0
POP() POP(varname[,delimiter]) Removes and returns the last item off of a variable containing delimited text 1.8.0
PP_EACH_EXTENSION() PP_EACH_EXTENSION(mac,template_file) Execute specified template for each [[term:extension|extension]]. 1.6.1.0
PP_EACH_USER() PP_EACH_USER(string,exclude_mac) Generate a string for each phoneprov user. 1.6.0
PRESENCE_STATE() PRESENCE_STATE(provider,field[,options]) Get or Set a presence state. 11.0.0
PUSH() PUSH(varname[,delimiter]) Appends one or more values to the end of a variable containing delimited text 1.8.0
QUEUE_EXISTS() QUEUE_EXISTS([queuename]) Check if a named [[term:queue|queue]] exists on this server 1.8.0
QUEUE_GET_CHANNEL() QUEUE_GET_CHANNEL(queuename[,position]) Return caller at the specified position in a [[term:queue|queue]]. 14.0.0
QUEUE_MEMBER() QUEUE_MEMBER(option[,queuename,interface]) Provides a count of [[term:queue|queue]] members based on the provided criteria, or updates a queue member's settings. 1.6.0
QUEUE_MEMBER_COUNT() QUEUE_MEMBER_COUNT(queuename) Count number of members answering a [[term:queue|queue]]. N/A
QUEUE_MEMBER_LIST() QUEUE_MEMBER_LIST(queuename) Returns a list of interfaces on a [[term:queue|queue]]. 1.4.0
QUEUE_MEMBER_PENALTY() QUEUE_MEMBER_PENALTY(queuename,interface) Gets or sets [[term:queue|queue]] members penalty. 1.6.0
QUEUE_VARIABLES() QUEUE_VARIABLES(queuename) Return [[term:queue]] information in variables. 1.6.0
QUEUE_WAITING_COUNT() QUEUE_WAITING_COUNT([queuename]) Count number of calls currently waiting in a [[term:queue|queue]]. 1.4.0
QUOTE() QUOTE(string) Quotes a given string, escaping embedded quotes as necessary 1.4.0
RAND() RAND([min,max]) Choose a random number in a range. 1.4.0
REALTIME() REALTIME(family,fieldmatch[,matchvalue,delim1|field,delim2]) RealTime Read/Write Functions. 1.4.0
REALTIME_DESTROY() REALTIME_DESTROY(family,fieldmatch[,matchvalue,delim1,delim2]) RealTime Destroy Function. 1.6.0
REALTIME_FIELD() REALTIME_FIELD(family,fieldmatch,matchvalue,fieldname) RealTime query function. 1.6.2.0
REALTIME_HASH() REALTIME_HASH(family,fieldmatch,matchvalue) RealTime query function. 1.6.2.0
REALTIME_STORE() REALTIME_STORE(family,field1,fieldN,field30) RealTime Store Function. 1.6.0
RECORDING_INFO() RECORDING_INFO(property) Retrieve information about a recording previously created using the Record application N/A
REDIRECTING() REDIRECTING(datatype[,i]) Gets or sets Redirecting data on the [[term:channel|channel]]. 1.8.0
REGEX() REGEX("regular expression" string) Check string against a regular expression. 1.2.0
REPLACE() REPLACE(varname,find-chars[,replace-char]) Replace a set of characters in a given string with another character. 1.8.0
RTRIM() RTRIM(string) Trim trailing whitespace in a string 16.30.0, 18.16.0, 19.8.0, 20.1.0
SAYFILES() SAYFILES(value[,type]) Returns the ampersand-delimited file names that would be played by the Say applications (e.g. SayAlpha, SayDigits). 16.21.0, 18.7.0
SCRAMBLE() SCRAMBLE([direction]) Scrambles audio on a [[term:channel|channel]]. 16.21.0, 18.7.0
SET() SET(varname[=value]) SET assigns a value to a [[term:channel|channel]] variable. 1.2.0
SHA1() SHA1(data) Computes a SHA1 digest. 1.4.0
SHARED() SHARED(varname[,channel]) Gets or sets the shared variable specified. 1.6.0
SHELL() SHELL(command) Executes a command using the system shell and captures its output. 1.6.0
SHIFT() SHIFT(varname[,delimiter]) Removes and returns the first item off of a variable containing delimited text 1.8.0
SIPPEER() SIPPEER(peername,item) Gets [[term:sip]] peer information. N/A
SIP_HEADER() SIP_HEADER(name,number) Gets the specified [[term:sip]] header from an incoming INVITE message. N/A
SIP_HEADERS() SIP_HEADERS(prefix) Gets the list of [[term:sip]] header names from an incoming INVITE message. N/A
SMDI_MSG() SMDI_MSG(message_id,component) Retrieve details about an SMDI message. 1.4.19
SMDI_MSG_RETRIEVE() SMDI_MSG_RETRIEVE(smdi port,search key[,timeout,options]) Retrieve an SMDI message. 1.4.19
SORT() SORT(keyval[,keyvaln]) Sorts a list of key/vals into a list of keys, based upon the vals. 1.2.0
SPEECH() SPEECH(argument) Gets information about speech recognition results. 1.6.1.0
SPEECH_ENGINE() SPEECH_ENGINE(name) Get or change a speech engine specific attribute. 1.6.1.0
SPEECH_GRAMMAR() SPEECH_GRAMMAR(result_number[/nbest_number]) Gets the matched grammar of a result if available. 1.6.1.0
SPEECH_RESULTS_TYPE() SPEECH_RESULTS_TYPE() Sets the type of results that will be returned. 1.6.1.0
SPEECH_SCORE() SPEECH_SCORE(result_number[/nbest_number]) Gets the confidence score of a result. 1.6.1.0
SPEECH_TEXT() SPEECH_TEXT(result_number[/nbest_number]) Gets the recognized text of a result. 1.6.1.0
SPRINTF() SPRINTF(format,arg1[,arg2,argN]) Format a variable according to a format string. 1.6.1.0
SQL_ESC() SQL_ESC(string) Escapes single ticks for use in SQL statements. 1.4.0
SQL_ESC_BACKSLASHES() SQL_ESC_BACKSLASHES(string) Escapes backslashes for use in SQL statements. 16.26.0, 18.12.0, 19.4.0
SRVQUERY() SRVQUERY(service) Initiate an SRV query. 1.8.0
SRVRESULT() SRVRESULT(id,resultnum[,field]) Retrieve results from an SRVQUERY. 1.8.0
STACK_PEEK() STACK_PEEK(n,which[,suppress]) View info about the location which called Gosub 1.8.11.0, 10.3.0
STAT() STAT(flag,filename) Does a check on the specified file. 1.4.0
STIR_SHAKEN() STIR_SHAKEN(index[,value]) Gets the number of STIR/SHAKEN results or a specific STIR/SHAKEN value from a result on the [[term:channel|channel]]. 16.15.0
STIR_SHAKEN_ATTESTATION() STIR_SHAKEN_ATTESTATION(field) Sets STIR/SHAKEN Attestation parameters on an outgoing [[term:channel|channel]]. 20.17.0, 22.7.0, 23.1.0
STRBETWEEN() STRBETWEEN(varname,insert-string) Inserts a substring between each character in a string. 16.21.0, 18.7.0
STRFTIME() STRFTIME([epoch,timezone,format]) Returns the current date/time in the specified format. 1.2.0
STRPTIME() STRPTIME(datetime,timezone,format) Returns the epoch of the arbitrary date/time string structured as described by the format. 1.4.0
STRREPLACE() STRREPLACE(varname,find-string[,replace-string,max-replacements]) Replace instances of a substring within a string with another string. 10.0.0
SYSINFO() SYSINFO(parameter) Returns system information specified by parameter. 1.6.0
TALK_DETECT() TALK_DETECT(action) Raises notifications when Asterisk detects silence or talking on a [[term:channel|channel]]. 12.4.0
TESTTIME() TESTTIME(date,time[,zone]) Sets a time to be used with the [[term:channel|channel]] to test logical conditions. 1.8.0
TIMEOUT() TIMEOUT(timeouttype) Gets or sets timeouts on the [[term:channel|channel]]. Timeout values are in seconds. 1.2.0
TOLOWER() TOLOWER(string) Convert string to all lowercase letters. 1.6.0
TONE_DETECT() TONE_DETECT(freq[,duration_ms,options]) Asynchronously detects a tone 16.21.0, 18.7.0
TOUPPER() TOUPPER(string) Convert string to all uppercase letters. 1.6.0
TRIM() TRIM(string) Trim leading and trailing whitespace in a string 16.30.0, 18.16.0, 19.8.0, 20.1.0
TRYLOCK() TRYLOCK(lockname) Attempt to obtain a named mutex. 1.6.0
TXTCIDNAME() TXTCIDNAME(number[,zone-suffix]) TXTCIDNAME looks up a caller name via DNS. 1.2.0
UNLOCK() UNLOCK(lockname) Unlocks a named mutex. 1.6.0
UNSHIFT() UNSHIFT(varname[,delimiter]) Inserts one or more values to the beginning of a variable containing delimited text 1.8.0
URIDECODE() URIDECODE(data) Decodes a URI-encoded string according to RFC 2396. 1.2.0
URIENCODE() URIENCODE(data) Encodes a string to URI-safe encoding according to RFC 2396. 1.2.0
UUID() UUID() Generates an UUID. N/A
VALID_EXTEN() VALID_EXTEN([[term:context|context]],extension,priority) Determine whether an [[term:extension|extension]] exists or not. N/A
VARIABLE_EXISTS() VARIABLE_EXISTS(varname) Check if a [[term:dialplan|dialplan]] variable exists or not. 18.21.0, 20.6.0, 21.1.0
VERSION() VERSION([info]) Return the Version info for this Asterisk. 1.6.0
VMCOUNT() VMCOUNT(vmbox[,folder]) Count the voicemails in a specified mailbox or mailboxes. 1.2.0
VM_INFO() VM_INFO(mailbox,attribute[,folder]) Returns the selected attribute from a mailbox. 11.0.0
VOLUME() VOLUME(direction[,options]) Set or get the TX or RX volume of a [[term:channel|channel]]. 1.6.0