Dialplan PIN Outgoing Berdasarkan User

Halo Teman2,

Saya ada permintaan dari atasan untuk mengeset password (PIN) pada panggilan keluar berdasarkan user. Sebelumnya saya sudah membuat PIN berdasarkan extensionnya, seperti dibawah ini :

;;; TELKOMSEL ;;;
[out-80811]
ignorepat => 8
exten => _80811x.,1,Noop()
exten => _80811x.,n,GotoIf($["${CALLERID(num)}" = “67498”]?dialon)
exten => _80811x.,n,GotoIf($["${CALLERID(num)}" = “67499”]?dialon)
exten => _80811x.,n,GotoIf($["${CALLERID(num)}" = “67500”]?dialon:hangon)
exten => _80811x.,n(dialon),Read(digito,pin,4)
exten => _80811x.,n,Gotoif($[ “${LEN(${digito})}” != “4” ]?dialon)
exten => _80811x.,n,Set(pincheck=${EXTEN:1:4})
exten => _80811x.,n,Set(dbpin=${DB(pin/${digito}0811)})
exten => _80811x.,n,Gotoif($[ “${pincheck}” != “${dbpin}” ]?dialon)
exten => _80811x.,n,Set(CALLERID(all)=0217890123 <0217890123 >)
exten => _80811x.,n,Dial(PJSIP/${EXTEN:1}@siptrunk,60)
exten => _80811x.,n(hangon),Hangup()

Jadi pengembangan fungsi PIN berdasarkan user ini nantinya supaya tidak bergantung pada extension saat user pindah2 extension atau lokasi. Mohon informasi & bantuannya apakah ada yang sudah pernah buat ?

Terimakasih

Halo,

Kalau menggunakan Briker, Freepbx, atau Issabel bisa menggunakan fitur PIN Sets.

Apabila Vanilla Asterisk, maka caranya bisa seperti fitur PIN Sets nya Freepbx dimana User cukup input nomor PIN saja atau bisa juga membuat 2 kali otentikasi, dimana user memasukan nomor User, setelah itu PIN nya.

Untuk cara ke 2, lebih mudah menggunakan database, dari dialplan asterisk akses databasenya bisa menggunakan func odbc.