Appunto svaccato su come scrivere su un file il CID della chiamata entrante. Il CID viene scritto quando un interno risponde, e il nome del file e` il numero dell'interno che ha risposto. Il trucco e` che funziona anche se il dial chiama tanti interni (e ovviamente uno solo risponde)
[macro-DialInterno]
; # Chiama un interno e dopo un timeout di X secondi passa alla segreteria.
; # Se l'interno e` occupato, passa alla segreteria. Va bene per le chiamate
; # entranti da fuori, non e` molto utile se gli interni si chiamano fra di loro.
; # I parametri sono: Interno (o lista di interni),timeout, parametri numero e context della voice m
ailbox.
; # per esempio: 101,30,sb1@default
exten => s,1,Dial(${ARG1}|${ARG2}|M(writefile))
exten => s,n,Voicemail(${ARG3}) ; segreteria se non risponde nessuno dopo il timeout
exten => s,n,Hangup(16)
exten => s,102,Voicemail(${ARG3}) ; segreteria se tutti gli interni sono occupati
exten => s,103,Hangup
[macro-writefile]
; ### per gestire le chiamate in corso dal sofware gestionale, scrivo un file
; ### dentro a /var/spool/asterisk/incoming che ha il nome dell'interno che ha risposto
; ### o che ha originato la chiamata e contiene il callerid del remoto.
; # viene chiamata dal comando Dial in macro-dialinterno
exten => s,1,System(/bin/echo -e "${cid}">/var/spool/asterisk/incoming/${CHANNEL:4:2})