Dial Plan
El Dial Plan es el corazón del conmutador en parte es donde se deben existir todas las marcaciones permitidas dentro del Conmutador.
CONCEPTOS BÁSICOS
El dialplan esta basado en marcaciones que están dentro de contextos (perfiles), donde estos pueden ser jerárquicos (incluir otros contextos), para formar contextos que pueden ser utilizados utilizados dentro de otros para generar nuevos perfiles sin necesidad de crear todo un nuevo contexto para permitir varias marcaciones ya existentes en otro contexto.
1.- Context (Contexto)
El context es la parte mas básica para el dialplan es la donde se define el nombre del context (perfil) para que este sea identificado y ser usado posteriormente, el cual va a contener extensiones.
2.- Extension
La extensión es la marcación permitida que se debe agregar dentro del context; por extensión nos referimos a cualquier cantidad de dígitos que se permitan marcar por ejemplo 911, 0445555123456, 0019234567890, esta extensión utiliza caracteres especiales para definir dichas marcaciones.
Extension
La extensión como tal debe tener la siguiente sintaxis:
Extension prioridad aplicación parámetros
Donde
Extension: Es la marcación permitida dentro del contexto
Prioridad: Es la prioridad de la extensión, donde la primera prioridad a ejecutar en cualquier extensión es la numero 1, y en orden ascendente el conmutador buscara la siguiente (2) y así sucesivamente.
Aplicación: Es la aplicación a ejecutar dentro del conmutador
Parámetros: Son los parámetros que requiere la aplicación para ser ejecutada correctamente.
Definición de Extensiones
Como anteriormente lo habiamos comentado, las extensiones utilizan caracteres especiales para ser definidas y permitir marcaciones abiertas o cerradas; por marcaciones abiertas nos referimos a grupos de marcaciones que tienen algo en común, y por cerradas se refiere a marcaciones particulares que deben ser marcadas siempre igual.
La extensión esta basada en posiciones de dígitos dentro de la cual la primera posición esta a la izquierda siendo esta la posición 1 por ejemplo en la marcación 712, el siete ocupa la posición 1 y el 2 ocupa la posición 3.
Caracteres especiales para extension (Pattern matching)
Carácter (es) |
Significado |
X |
Cualquier carácter del 0 al 9 |
0…9 |
Carácter 0 ó 1 ó 2 ó 3 … hasta el 9 |
_ |
Guion bajo, este carácter es usado cuando se va a dejar una marcación abierta (conjunto de extensiones a ser marcada) |
[ ] |
Corchete cuadrado es usado cuando se van a definir un rango de dígitos a ser usados en la extensión (donde los caracteres X, [, y ]) sean utilizados |
1-3 |
Rango de dígitos del 1 al 3 |
125 |
Dígitos que pueden ser marcados, en este caso el 1 ó 2 o 5 siendo un o exclusivo (es decir solo uno de estos dígitos puede ser usado) |
Ejemplos de marcaciones cerradas
Extension |
Significado |
911 |
Marcación a 911 |
*43 |
Marcación a prueba de eco |
018001232222 |
Marcación a el 018001232222 |
Marcaciones abiertas
Extension |
Significado |
_044XXXXXXXXXX |
Marcación a cualquier numero que empiece con 044 y 10 dígitos adicionales, en total deben ser 13 dígitos |
_019[1-9]XXXXXXXX |
Marcación a cualquier numero que empiece con 019 y el cuarto dígitos no sea un 0 (cero) |
_001XXXXXXXXXX |
Marcación a cualquier numero que empiece con 001 mas 10 dígitos. |
_[789]XX |
Marcación de cualquier numero de 3 dígitos que empiece con 7, 8 ó 9 mas 2 dígitos (del 0 al 9) |
Retomando la extension esta basada en la siguiente sintaxis:
Extension, prioridad,aplicación, parametros
Ahora bien mostraremos una extension completa
Como se muestra en la imagen se marcara un numero que empiece con 012 o 013 o 014 … hasta 017 mas 9 dígitos, donde la primera prioridad a ejecutar es la “1” y la aplicación a ejecutar es “dial” y los parámetros son “sip/${EXTEN},120,tT”.
En la prioridad 2 en la misma extension (_01[2-7]XXXXXXXXX) la aplicación a ejecutar es “Hangup” y no lleva parámetros.
Para las aplicaciones que se pueden usar ver el anexo A.
Variable ${EXTEN}
Dentro del dialplan existen diferentes variables que deben ser usadas para hacer las marcaciones necesarias una de esas variables es “${EXTEN}”, esta variable contiene lo que haya sido marcado desde el teléfono por ejemplo si alguien marco 018001232222 = ${EXTEN}.
${EXTEN} = 018001232222
Nuevamente el contenido de esta variable esta basado en posiciones donde el primer dígito (posición 1) es el “0”, el segundo dígito es “1”, el tercer dígito “8”, y así sucesivamente.
Y de igual manera podemos eliminar dígitos de esta variable, adicionar dígitos, o usar dígitos que estén dentro de la variable en un rango.
Por ejemplo para quitar un dígito de izquierda a derecha seria lo siguiente
${EXTEN} = 018001232222
${EXTEN:1}= 18001232222
${EXTEN:2}= 8001232222
Donde la sintaxis es “:N” donde es un dígitos de 1 a 9 para eliminar la cantidad de caracteres indicada.
Para un rango seria lo siguiente:
${EXTEN}= 9018001232222
${EXTEN:0:5}= 90180
${EXTEN:5:7}= 0123222
Donde la sintaxis es “:N:K” donde “N” es la cantidad de dígitos a brincar y “K” la cantidad de dígitos a contar a partir de “N”, por lo que en nuestro ejemplos ${EXTEN:0:5} se leería de esta manera no brinques ninguna posición y cuenta 5.
Para un rango negativo seria lo siguiente:
${EXTEN} = 9018001232222
${EXTEN:-12}= 018001232222
${EXTEN:-10:5}= 80012
Aquí se sigue la siguiente regla “-N:K”, cuenta de forma regresiva hasta “N”y a partir de la posición cuenta “K”
Adicionar dígitos
Para adicionar dígitos se realizan las siguientes operaciones
${EXTEN} = 018001232222
9${EXTEN}=9018001232222
${EXTEN}9999=90180012322229999
Aquí se siguen las siguientes reglas dígitos(1234)+${EXTEN} o ${EXTEN}+dígitos(1234)
Inclusión de Context
Dentro de la configuracion de los contextos, se puede realizar la inclusion de un contexto en otro, siendo la sintaxis la siguiente:
[context1]
extension1,1,aplicación(parametros)
extension4,1,aplicación(parametros)
[context2]
include => context1
extension2,1,aplicación(parametros)
extension3,1,aplicación(parametros)
Así que con la siguiente sintaxis, si se tiene el context2 como perfil, se podrán realizar las llamadas a la extension2, extension3, así como a las extensiones que están en el context1 (extension1, extension4)
Ejemplo
[contexto1]
_9018001232222,1,dial(sip/${EXTEN},120,tT)
_9018001232222,2,hangup()
[contexto2]
include => contexto1
911,1, dial(sip/${EXTEN},120,tT)
911,2,hangup()
Contextos en ARAManager WEB
Dentro de la configuración de fabrica del ARAManager WEB, existen diversos contextos que ya tienen extensiones sobre las marcaciones pre configuradas las cuales brindan diferentes funcionalidades, los siguientes contextos son los contextos básicos del conmutador que brindan las funcionalidades básicas:
Contexto |
Descripción |
App-callforward |
Contexto donde se encuentran todas las extensiones para realizar desvíos de llamadas en una extensión. |
App-callwaiting |
Contexto donde se encuentran todas las extensiones para habilitar / Deshabilitar llamada en espera |
App-directory |
Contexto donde se encuentran todas las extensiones para buscar la extensión de una persona en el directorio |
App-dnd |
Contexto donde se encuentran todas las extensiones para habilitar o deshabilitar No molestar |
App-hangup |
Contexto donde se encuentran todas las extensiones para colgar las llamadas de una extensión del conmutador |
App-meetme |
Contexto donde se encuentran todas las extensiones para poder realizar audio conferencias en el conmutador |
App-messagecenter |
Contexto donde se encuentran todas las extensiones para poder escuchar los buzones de voz de una extensión |
App-pickup |
Contexto donde se encuentran todas las extensiones para poder tomar una llamada que no se encuentre en el mismo grupo de marcación. |
App-pins |
Contexto donde se encuentran todas las extensiones para poder realizar llamadas con clave |
App-record |
Contexto donde se encuentran todas las extensiones para poder realizar grabaciones de audio para operadoras automáticas |
App-speeddial |
Contexto donde se encuentran todas las extensiones que son de marcación rápida sin necesidad de marcar una clave |
App-test |
Contexto donde se encuentran todas las extensiones para poder realizar diferentes pruebas de eco, llamar a soporte técnico, saber la hora del conmutador, saber el numero de extensión en la que se encuentra. |
App-zapbarge |
Contexto donde se encuentran todas las extensiones para poder monitorear los diferentes canales existentes en el conmutador |
Closed |
Contexto donde se encuentran todas las extensiones creadas en el conmutador y adicionalmente incluye todos los contextos (app-anteriormente mostrados) |
Adicionalmente tenemos contexts para realizar llamadas salientes dichos context inician con calls
Calls-local |
Contexto donde se encuentra las extensiones para permitir llamadas locales |
Calls-national |
Contexto donde se encuentran las extensiones para permitir llamadas nacionales |
Calls-cellular-local |
Contexto donde se encuentran las extensiones para permitir llamadas a cellular local |
Calls-cellular-nacional |
Contexto donde se encuentran las extensiones para permitir llamadas a cellular nacional |
Calls-tollfree |
Contexto donde se encuentran las extensiones para permitir llamadas a números gratuitos |
Calls-services |
Contexto donde se encuentran las extensiones para permitir llamadas a los servicios como 066,911,070, etc. |
Calls-international |
Contexto donde se encuentran las extensiones para permitir llamadas internacionales a USA y Canadá |
Calls-world |
Contexto donde se encuentran las extensiones para permitir llamadas mundiales |
Perfiles de marcación
Context |
Context incluidos |
Descripción |
Closed |
App-callforward App-Callwaiting App-dnd … App-test |
Contexto donde se encuentran las extensiones de usuario creadas |
Low |
Closed Calls-local |
Contexto para permitir llamadas locales, mas el contexto closed |
Medium |
Low Calls-national Calls-cellular-local |
Contexto para permitir llamadas nacionales fijos y celulares locales mas el contexto low |
Vip |
Medium Calls-cellular-nacional Calls-international |
Contexto para permitir llamadas celulares nacionales y llamadas internacionales |
Recepción de llamadas
Para la recepción de llamadas se tienen diferentes context de fabrica dependiendo del tipo de linea que se tenga instalada en el conmutador
Lineas Digitales
in-e1-span01 |
|
|
|
5550183800 |
1 |
Goto |
Ivr_principal,s,1 |
5550183801 |
1 |
Goto |
Ivr_secundario,s,1 |
in-e1-span02 |
|
|
|
5559183800 |
1 |
Goto |
Ivr_principal,s,1 |
5559183801 |
1 |
Goto |
Ivr_secundario,s,1 |
Lineas analógicas
in-fxo-span01 |
|
|
|
s |
1 |
Goto |
Ivr_principal,s,1 |
in-fxo-span02 |
|
|
|
s |
1 |
Goto |
Ivr_secundario,s,1 |
Lineas SIP
in-sip-span01 |
|
|
|
5550183890 |
1 |
Goto |
Ivr_principal,s,1 |
5550183891 |
1 |
Goto |
Ivr_secundario,s,1 |
in-sip-span02 |
|
|
|
9992183890 |
1 |
Goto |
Ivr_principal,s,1 |
9992183891 |
1 |
Goto |
Ivr_secundario,s,1 |
Ingresar a DIAL PLAN
Se deben de seguir las siguientes instrucciones para ir al modulo de Dial Plan:
- Ingresar a la Interfaz de usuario
- Ir al Menú de Dial Plan y seleccionar Dial Plan.
Una vez dentro del menú Dial Plan se vera la siguiente pantalla
Menú para búsqueda de un context en el Dial Plan
Barra de Navegación
Esta barra permite la navegación de todos los context creados en el Dial Plan
Boton ADD CONTEXT
Este botón se usa para añadir un nuevo CONTEXT en el Dialplan.
Botón SEND DIALPLAN
Este botón se usa para enviar todos los cambios realizados al conmutador para que se apliquen en el conmutador, este botón esta deshabilitado, hasta que se realice alguna modificación.
Búsqueda de Context
Para buscar un context se posiciona el cursor del mouse en el Control de búsqueda y se escribe el nombre del context a buscar, por ejemplo:
y se presiona el icono de para que se realice la búsqueda del context deseado
Donde aparecerá solo el context deseado en caso de que exista el nombre buscado.
Ver Contenido de un CONTEXT.
Para ver el contenido de un CONTEXT, se deberá seleccionar el Context deseado con el puntero del ratón, y después presionar el icono para que se muestre la información.
Opciones de Busqueda y Filtro en Context
Para buscar una extensión en el Context se utiliza la siguiente barra.
En extensión, escribe la extensión que deseas buscar.
En Application, escribe la aplicación que deseas buscar y presiona el icono .
Para ordenar las extensiones que se muestran en el Context, presiona sobre el siguiente icono , y elije una de las dos siguientes opciones:
Donde la opción Extension –Priority ASC, ordena todas las extensiones en forma ascendente que se encuentran en el context seleccionado.
Donde la opción Extension –Priority Desc, ordena todas las extensiones en forma descendente que se encuentran en el context seleccionado.
Por ejemplo:
Agregar una extensión
Para agregar una extensión presione el botón .
Y se creara una nueva extensión (línea) al inicio del context como se muestra en la imagen.
En esta opción usted deberá llenar cada uno de los parámetros como se muestra a continuación.
Eliminar una extensión.
Para eliminar una extensión usted deberá presionar el icono .
Y confirmar en el cuadro de dialogo
Inclusión de context
Se puede agregar un CONTEXT en otro ya existente para que herede las extensiones que ya tiene el context a incluir.
Para realizar la inclusión presione el botón .
Con lo cual se insertará una línea al inicio del context como la que se muestra
En la columna de Parameters deberá escribirse el nombre del context a incluir.
Por ejemplo:
Para Eliminar la inclusión se deberá presionar el icono y confirmar la eliminación en el cuadro de dialogo
Y el context quedara de la siguiente manera
Agregar un context
Presionar el botón donde aparecerá la siguiente pantalla:
Poner un nombre para el context y presionar el botón de Guardar.
Para eliminar un context se presiona el icono donde se solicitara la confirmación de eliminación
Para mas información acerca del dialplan consulte:
https://www.voip-info.org/asterisk-config-extensionsconf
ANEXO A
APLICACIONES DE ASTERISK
- AbsoluteTimeout: Set absolute maximum time of call. Deprecated in favor of TIMEOUT(absolute) (1.2, 1.4)
- AddQueueMember: Dynamically adds queue members. (1.0)
- ADSIProg: Load Asterisk ADSI Scripts into phone. (1.0)
- AELSub: Launch subroutine built with AEL (1.4)
- AgentCallbackLogin: Call agent callback login. Deprecated. (1.4, 1.6)
- AgentLogin: Call agent login. (1.0)
- AgentMonitorOutgoing: Monitor Outgoing Agent Calls. (1.0)
- AGI: Executes an AGI compliant application. (1.0)
- AlarmReceiver: Emulate an Ademco Contact ID Alarm Receiver. (1.0)
- ALSAMonitor: Monitor the ALSA console. (3rd party addon)
- AMD: Answering machine detection. (1.4)
- Answer: Answer a channel if ringing. (1.0)
- AppendCDRUserField: Append data to the CDR user field. Deprecated in favor of CDR(userfield) (1.4, 1.6)
- Authenticate: Authenticate a user. (1.0)
- BackGround: Play a file while awaiting extension. (1.0)
- BackgroundDetect: Background a file with talk detect. (1.0)
- Bridge: Connect two arbitrary callers. (1.6)
- Busy: Indicate busy condition and wait for hangup. (1.0)
- CallingPres: Change the presentation for the callerid in a ZAP channel (1.2)
- ChangeMonitor: Change monitoring filename of a channel. (1.0)
- ChanIsAvail: Check if channel is available. (1.0)
- ChannelRedirect: Redirect an existing channel to the dialplan. (1.4)
- ChanSpy: Universal channel barge-in. (1.2)
- CheckGroup: Checks if the total # of channels exceeds max. Deprecated in favor of Asterisk func group_count. (1.2, 1.4)
- ClearHash: Clear the keys from a specified hashname (1.6)
- ConfBridge: Conference bridge application. (1.6.2)
- Congestion: Indicate congestion and wait for hangup. (1.0)
- ContinueWhile: Restart a while loop (1.4)
- ControlPlayback: Play a sound file with fast forward, rewind and exit controls. (1.0)
- Curl: Allows for the retrieval of external URLs. Also supports POSTing. Deprecated in favor of CURL. (1.2, 1.4).
- Cut: Split a string on a specified delimiter. Deprecated in favor of Asterisk func cut. (1.2, 1.4)
- DAHDIBarge: Barge in (monitor) Zap channel (was ZapBarge) (1.0)
- DAHDIRAS: Provide ISDN data service (was ZapRAS)
- DAHDIScan: Scan Zap channels to monitor calls (was ZapScan)
- DAHDISendKeypadFacility: Send digits out of band over a PRI (was ZapSendKeypadFacility)
- DateTime: Say the date and/or time. Same as SayUnixTime. (1.0)
- DBdel: Delete a key from the database. Deprecated in favor of DB_DELETE. (1.4, 1.6)
- DBdeltree: Delete a family or keytree from the database. (1.0)
- DBget: Retrieve a value from the database. Deprecated in favor of DB. (1.4, 1.6)
- DBput: Store a value in the database. Deprecated in favor of DB. (1.4, 1.6)
- DBQuery: Execute predefined queries against MySQL Servers, and get the result back into the dialplan. (3rd party addon)
- DBRewrite: Execute perl compatible regular expression and substitution out of a MySQL Database. (3rd party addon)
- DeadAGI: Executes AGI on a hungup channel. (1.0)
- Dial: Place an call and connect to the current channel. (1.0)
- Dictate: Records and plays back a dictation. (1.2)
- DigitTimeout: Set maximum timeout between digits. Deprecated in favor of TIMEOUT(digit) (1.2, 1.4)
- Directory: Provide directory of voicemail extensions. (1.0)
- DISA: DISA (Direct Inward System Access). (1.0)
- DTMFToText: Enter alphanumeric strings with DTMF phone (3rd party addon)
- DumpChan: Dump Info About The Calling Channel. (1.0)
- DUNDiLookup: Look up a number with DUNDi. Deprecate in favor of Asterisk func dundilookup. (1.2, 1.4)
- EAGI: Executes an AGI compliant application on local or remote machine (FastAGI). (1.0)
- Echo: Echo audio read back to the user. (1.0)
- EndWhile: End A While Loop. (1.2)
- EnumLookup: Lookup number in ENUM (1.4, 1.6)
- Exec: Execute dialplan application. (1.0)
- ExecIf: Executes dialplan application conditionally. (1.2)
- ExecIfTime: Executes dialplan application conditionally based on current time. (1.2)
- ExitWhile: End a While loop. (1.2)
- ExtenSpy: Listen/whisper to a specific extension (1.4)
- ExternIVR: Interfaces with an external IVR application. (1.2)
- Festival: Say text with the Festival voice synthesizer. (1.0)
- Flash: Flashes a DAHDI Trunk. (1.0)
- Flite: Say text with the Festival Lite voice synthesizer (faster response than Festival) (3rd party addon)
- ForkCDR: Fork The CDR into 2 seperate entities. (1.0)
- GetCPEID: Get ADSI CPE ID. (1.0)
- GetGroupCount: group count for specified group or channel is in. Deprecated in favor of Asterisk func group_count (1.2, 1.4)
- GetGroupMatchCount: Calculates group count for all groups that match pattern. Deprecated in favor of Asterisk func group_match_count (1.2, 1.4)
- Gosub: Jump to a subroutine and return. (1.2)
- GosubIf: Conditional jump to a subroutine and return. (1.2)
- Goto: Goto a particular priority, extension, or context. (1.0)
- GotoIf: Conditional goto. (1.0)
- GotoIfTime: Conditional goto on current time. (1.0)
- Hangup: Unconditional hangup. (1.0)
- HasNewVoicemail: Conditionally branches to priority + 101. Deprecated in favor of VMCOUNT. (1.4, 1.6)
- HasVoicemail: Conditionally branches to priority + 101. Deprecated in favor of Asterisk func vmcount. (1.4, 1.6)
- ICES: Streaming calls to the Internet (3rd party addon)
- ImportVar: Set variable to value. (1.2)
- Incomplete: Returns AST_PBX_INCOMPLETE value. (1.6)
- JabberJoin: Join a group chat. (1.8)
- JabberLeave: Leave a group chat. (1.8)
- JabberSend: Send a message to a buddy. (1.4)
- JabberSendGroup: Send a message to a group chat. (1.8)
- JabberStatus: Return presence status of client or transport as values 1-7 (1.4)
- Asterisk cmd jack: Interface to JACK audio for audio manipulation. (1.6)
- KeepAlive: Returns AST_PBX_KEEPALIVE value. (1.6)
- Log: Send arbitrary text to a selected log level. (1.4)
- LookupBlacklist: Look up Caller*ID name/number from blacklist database. Deprecated in favor of DB. (1.4, 1.6)
- LookupCIDName: Look up CallerID Name from local database. Deprecated in favor of DB. (1.4, 1.6)
- Macro: Macro Implementation. Deprecated in favor of Gosub/Return (1.6)
- MacroExclusive: Only one channel at a time may call this macro, all others have to wait (1.4) Replaced by dialplan functions LOCK(), TRYLOCK(), and UNLOCK() (1.6)
- MacroExit: Exit the macro as if it had fully completed (1.4) Deprecated in favor of Return (1.6)
- MacroIf: Conditional Macro Implementation. Deprecated in favor of GosubIf (1.6)
- MailboxExists: Checks if voicemail mailbox exists. (1.0)
- Math: Perform (rather simple) calculations. Deprecated in favor of MATH. (1.2, 1.4)
- MeetMe: Simple MeetMe conference bridge. (1.0)
- Asterisk cmd MeetmeAdmin: MeetMe conference Administration. (1.0)
- MeetMeChannelAdmin: MeetMe conference Administration (channel specific) (1.6)
- MeetMeCount: MeetMe participant count. (1.0)
- Milliwatt: Generate a constant 1004Hz tone at 0dbm (mu-law) (1.0)
- MinivmAccMess: Mini-Voicemail – record account specific messages (1.6)
- MinivmDelete: Mini-Voicemail – delete voicemail messages (1.6)
- MinivmGreet: Mini-Voicemail – Play prompts (1.6)
- MinivmNotify: Mini-Voicemail – Notify voicemail owner about new messages (1.6)
- MinivmRecord: Mini-Voicemail – Receive voicemail and forward via email (1.6)
- Asterisk cmd MixMonitor: Record and mix call legs. (1.2)
- Monitor: Record a telephone conversation to a sound file. (1.0)
- MP3Player: Play an MP3 sound file or stream. (1.0)
- MSet: Set channel variable(s) or function value(s) (1.6)
- MusicOnHold: Play Music On Hold indefinitely. (1.0)
- MYSQL: Perform various mySQL database activities. (3rd party addon)
- NBScat: Play an NBS local stream (3rd party addon)
- NoCDR: Make sure asterisk doesn’t save CDR for a certain call. (1.0)
- NoOp: No operation. For debugging, see Verbose or Log. (1.0)
- ODBCFinish: Clear the resultset of a successful multirow query (1.6)
- Originate: Originate a call and connect to a specified extension or application (1.6.2)
- Page: Page multiple endpoints at once. (1.2)
- Park: Park yourself. (1.0)
- ParkAndAnnounce: Park and Announce. (1.0)
- ParkedCall: Answer a parked call. (1.0)
- PauseQueueMember: Pauses an agent. (1.2)
- Perl: res_perl is the mod_perl of Apache, only for Asterisk. (3rd party addon)
- PHP: res_php integrates PHP into Asterisk without AGI. (3rd party addon)
- Pickup: Directed call pickup (1.2)
- Asterisk cmd BristuffPickUp: Pickup a Zap Channel before answered (Bristuff)
- PickupChan: Pickup a ringing channel (1.6)
- Playback: Play a file. (1.0)
- Playtones: Play a tone list while executing other commands. (1.0)
- PPPD: PPP daemon connector (3rd party addon)
- PrivacyManager: Require phone number to be entered, if no CallerID sent. (1.0)
- Asterisk cmd proceeding: Indicate proceeding (1.6)
- Progress: Play early audio to the caller before answering the line. (1.0)
- Queue: Queue a call for a call queue. (1.0)
- Random: jump to a specified location based on a random probability. Deprecated in favor of Asterisk func rand (1.4, 1.6)
- Read: Read DTMF tones into a variable. (1.0)
- ReadExten: Read an extension into a variable (1.6)
- ReadFile: Read the contents of a text file into a channel variable. (1.2)
- RealTime: Populate variables with details from database using RealTime. Deprecated in favor of Asterisk func realtime. (1.4, 1.6)
- RealTimeUpdate: Update a field in a database using RealTime. Deprecated in favor of Asterisk func realtime. (1.4, 1.6)
- Record: Record a telephone conversation to a sound file. (1.0)
- RemoveQueueMember: Dynamically removes queue members. (1.0)
- ResetCDR: Reset CDR data. (1.0)
- ResponseTimeout: Set maximum timeout awaiting response. Deprecated in favor of TIMEOUT(response) (1.2, 1.4)
- RetryDial: Place a call, retrying on failure allowing optional exit extension. (1.2)
- Return: Return from a Gosub or GosubIf. (1.2)
- Ringing: Indicate ringing tone. (1.0)
- Rpt: Support Amatuer Radio and Commercial Two Way Repeater Linking. (1.0)
- SayAlpha: Say Alpha. (1.0)
- SayCountedAdj: Say declining counting phrases (1.8)
- SayCountedNoun: Say declining counting phrases (1.8)
- SayDigits: Say Digits. (1.0)
- SayNumber: Say Number. (1.0)
- SayPhonetic: Say Phonetic. (1.0)
- SayUnixTime: Say the date and/or time. (1.0)
- SendDTMF: Sends arbitrary DTMF digits. (1.0)
- SendImage: Send an image file. (1.0)
- SendText: Send client a text message. (1.0)
- SendURL: Send client a URL to display. (1.0)
- Set: Set channel variable(s) or function value(s). (1.0)
- SetAccount: Sets account code. Deprecated in favor of CDR(accountcode) (1.0, 1.4)
- Asterisk cmd SetAMAFlags: Set the channel AMA Flags for billing. (1.0)
- SetCallerID: Set CallerID. Deprecated in favor of Asterisk func callerid. (1.4, 1.6)
- SetCallerPres: Channel independent setting of caller presenation. Deprecated in favor of CALLERPRES (1.6)
- SetCDRUserField: Set CDR User Field. See Billing. Deprecated in favor of CDR(userfield) (1.4, 1.6)
- SetCIDNum: Set only the Caller ID number (not name). Deprecated in favor of CALLERID. (1.4, 1.6)
- SetGlobalVar: Set variable to value. Deprecated in favor of GLOBAL.(1.2, 1.4)
- SetGroup: Sets the group for the current channel. Deprecated in favor of Asterisk func group (1.2, 1.4)
- SetLanguage: Change language setting for sound playback. Deprecated in favor of Asterisk func language. (1.2, 1.4)
- SetMusicOnHold: Set default Music On Hold class. Deprecated in favor of Asterisk func channel (1.6)
- Asterisk cmd SipAddHeader: Add header to outbound SIP invite. (1.2)
- SIPCallPickup: Pickup a ringing phone in the pickup group. Obsoleted.
- SIPGetHeader: Pick any header from a SIP invite message. Deprecated in favor of Asterisk func sip_header. (1.2, 1.4)
- SIPdtmfMode: Change DTMF mode during SIP call. (1.0)
- SMS: Pass SMS (short messaging service) to and from SMSc (SMS Center). (1.0)
- SoftHangup: Request hangup on another channel. (1.0)
- SrxEchoCan: Disable/enable Echo Cancellation
- SrxDeflect: Deflect an incoming call
- SrxMWI: Set / reset MessageWaitingIndication (MWI) on a Sirrix group
- StackPop: Remove a return address without returning. (1.2)
- Steal: Steal a Zap Channel after answered
- StopMonitor: Stop monitoring a channel. (1.0)
- StopMixMonitor: Stop monitoring a channel monitored with MixMonitor. (1.4)
- StopPlaytones: Stop playing a tone list. (1.0)
- System: Execute a system command. (1.0)
- TestClient: Execute Interface Test Client. (1.2)
- TestServer: Execute Interface Test Server. (1.2)
- Transfer: Transfer caller to remote extension. (1.0)
- TrySystem: Execute a system command with always 0 returned. (1.0)
- TXTCIDName: Lookup caller name from TXT record. Deprecated in favor of Asterisk func txtcidname. (1.2, 1.4)
- UnpauseQueueMember: Resumes an agent. (1.2)
- UserEvent: Send an arbitrary event to the manager interface. (1.0)
- VMAuthenticate: Authenticate a user based on voicemail.conf. (1.2)
- VMSayName: Play the recording name of the voicemail user if it exists, otherwise play the mailbox number. (1.8)
- VoiceMail: Leave a voicemail message. (1.0)
- VoiceMailMain: Enter voicemail system. (1.0)
- Wait: Waits for some time. (1.0)
- WaitExten: Waits for an extension to be entered. (1.0)
- WaitForRing: Wait for Ring Application. (1.0)
- WaitMusicOnHold: Wait, playing Music On Hold. Deprecated in favor of extended MusicOnHold. (1.6)
- WaitUntil: Wait (sleep) until the current time is the given epoch (1.6)
- While: Start a while loop. (1.2)
Zapateller: Block telemarketers with SIT. (1.0)