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! :-)
| M | T | W | T | F | S | S |
|---|---|---|---|---|---|---|
| « Jul | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | ||||
Commenti Recenti