Quello che vi mostrerò è un pezzo di codice per extensions_custom.conf che non fa altro che rispondere a una chiamata e richiedere un pin.
[pin_auth]
exten => s,1,Answer
exten => s,n,Set(VALIDPIN=1234)
exten => s,n,Read(PIN,vm-password,,,,)
exten => s,n,Gotoif($[${PIN}=${VALIDPIN}]?valid)
exten => s,n,NoOp(PIN:NOK)
exten => s,n,Wait(1)
exten => s,n,Hangup
exten => s,n(valid),NoOp(PIN:OK)
exten => s,n,Wait(1)
exten => s,n,Hangup
exten => h,1,Hangup
Nel Dettaglio:
Su asterisk poi si può agganciare questa “App” a un interno chiamabile, ovviamente il codice lo si può modificare a piacimento per effettuare altri tipi di servizi, io l’ho applicato per fare una “Strong Authentication”:
Per far si che il servizio web faccia scaturire la chiamata uso un file “numero.call“ generato dalla pagina in php con owner e gruppo asterisk e che viene messo dentro /var/spool/asterisk/outgoing
Il contenuto del file è questo:
Channel: DAHDI/0/123456789
Context: from-internal
Extension: 1000
Priority: 1
Cosa avviene:
See you! Bye! :-)
One Response
Comment by Enrico
20/07/2011 at 12:07
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.122 Safari/534.30
Carina!
ER