Asterisk: Dialplan con esempio - le Variabili
In questo tutorial/guida vedremo quali sono e come si utilizzano le Variabili nel nostro Dialplan di Asterisk.
Le variabili di Asterisk hanno tutte questa sintassi:
${NOME-VARIABILE}
Le variabili di Asterisk sono case sensitive! Quindi ${MIAVAR} e ${miavar} sono 2 variabili diverse!
Le variabili che Asterisk genera automaticamente (per ogni chiamata) sono tutte in maiuscolo (Es. ${DIALSTATUS}).
Le variabili di Asterisk si dividono in 3 diverse tipologie:
Variabili Globali
Sono le variabili utilizzabili in qualsiasi contesto del dialplan (di fatto in tutti i canali).Si deviniscono e valorizzano:
- nella sezione [globals] del file extensions.conf
[globals]
variabile-globale-1=valore-da-assegnare
- nel dialplan con l'application Set
variabile-globale-1=valore-da-assegnare
exten=>6124,1,Set(GLOBAL(MYGLOBALVAR)=valore-da-assegnare)
Variabili di Canale
Sono le variabili che vengono definite e valorizzate per la sola durata di ogni singola chiamata.Ci sono tantissime varibili di canale. Un mini estratto:
${CALLERID(name)} - Caller ID Name only
${CALLERID(num)} - Caller ID Number only
${CHANNEL} - Current channel name
${CONTEXT} - Current context
${EXTEN} - Current extension
${HANGUPCAUSE} - Asterisk cause of hangup (inbound/outbound)
${UNIQUEID} - Current call unique identifier
Per avere maggiori dettagli visitate il Wiki di Asterisk
Le variabili di canale possono essere "modificate" con l'application Set
Esempio: aggiungiamo lo zero al CALLERID(num) (al numero del chiamante)
exten=>123,1,Set(CALLERID(num)=0${CALLERID(num)})
exten=>123,1,Set(CALLERID(num)=0${CALLERID(num)})
Variabili di Ambiente
Sono le variabili di Linux a cui si può accedere con Asterisk all'interno del dialplan, grazie alla funzione ENV().
Esempio:
exten=>123,1,NoOp(${ENV(ASTERISK_PROMPT)})
Ritorna il corrente CLI prompt di Asterisk.
exten=>123,1,NoOp(${ENV(ASTERISK_PROMPT)})
Ritorna il corrente CLI prompt di Asterisk.
Migliora il tuo business. Partecipa ai nostri Corsi! |
||
I nostri corsi OnLine ed in Aula sono studiati per garantire il miglior apprendimento e sono finalizzati a "creare professionisti nel settore". Questi i prossimi corsi in calendario: |
Corsi 2019
Corso | Data | Tipo |
---|