bloquear lefonos con el modulo key lock

Forums: 

un modulo muy importante ya que en muchos ecenarios las empresas tienen altos costos x concepto de gastos a celulares y nacionales, este modulo se encuentra en el mirror de freepbx.org y basicamente bloquea el telefono mediante un codigo que puede ser cambiado x el de tu eleccion x defecto es *57 bloquea *58 desbloquea y *59 cambia la clave...!

el problema es que el cambio de clave *59 no lo esta haciendo y me baje la version mas nueva, aqui les coloco el extension_additional.

[macro-keylock-check]
include => macro-keylock-check-custom
exten => s,1,Noop(Checking block...)
exten => s,n,Set(me=${CALLERID(num)})
exten => s,n,GotoIf(${DB(KEYLOCK/${me}/locked)}?blocked:unblocked)
exten => s,n(blocked),Noop(Blocked...)
exten => s,n,Answer
exten => s,n,Playback(security)
exten => s,n,Playback(activated)
exten => s,n,Macro(hangupcall,)
exten => s,n(unblocked),Noop(Calling...)

; end of [macro-keylock-check]

[keylock-lock]
include => keylock-lock-custom
exten => *57,1,Answer
exten => *57,n,Set(me=${CALLERID(num)})
exten => *57,n,GotoIf(${DB_EXISTS(KEYLOCK/${me}/password)}?exists:not_exists)
exten => *57,n(not_exists),Macro(keylock-setpass,)
exten => *57,n,Goto(authenticated)
exten => *57,n(exists),Set(PASSWORD=${DB(KEYLOCK/${me}/password)})
exten => *57,n,Authenticate(${PASSWORD},)
exten => *57,n,Goto(authenticated)
exten => *57,n(authenticated),Set(DB(KEYLOCK/${me}/locked)=1)
exten => *57,n,Set(STATE=BUSY)
exten => *57,n,Gosub(keylock-lock,sstate,1)
exten => *57,n,Playback(security)
exten => *57,n,Playback(now)
exten => *57,n,Playback(activated)
exten => *57,n,Hangup
exten => sstate,1,Set(DEVSTATE(Custom:KLC${me})=${STATE})
exten => sstate,n(return),Return()
exten => _*57.,1,Answer
exten => _*57.,n,Set(ME=${CALLERID(num)})
exten => _*57.,n,Set(PASSWORD=${DB(KEYLOCK/${ME}/password)})
exten => _*57.,n,Noop(${EXTEN:3})
exten => _*57.,n,Noop(${EXTEN:3})
exten => _*57.,n,GotoIf($[ ${PASSWORD} = ${EXTEN:3}]?*57,authenticated)
exten => _*57.,n,Playback(vm-invalidpassword)
exten => _*57.,n,Hangup

; end of [keylock-lock]

[keylock-unlock]
include => keylock-unlock-custom
exten => *58,1,Answer
exten => *58,n,Set(ME=${CALLERID(num)})
exten => *58,n,GotoIf(${DB(KEYLOCK/${ME}/locked)}?locked:unlocked)
exten => *58,n(locked),Playback(security)
exten => *58,n,Playback(activated)
exten => *58,n,Set(PASSWORD=${DB(KEYLOCK/${ME}/password)})
exten => *58,n,Authenticate(${PASSWORD},)
exten => *58,n,Goto(authenticated)
exten => *58,n(authenticated),dbDel(KEYLOCK/${ME}/locked)
exten => *58,n,Set(STATE=NOT_INUSE)
exten => *58,n,Gosub(keylock-unlock,sstate,1)
exten => *58,n,Goto(unlocked)
exten => *58,n(unlocked),Playback(security)
exten => *58,n,Playback(now)
exten => *58,n,Playback(de-activated)
exten => *58,n,Hangup
exten => sstate,1,Set(DEVSTATE(Custom:KLC${ME})=${STATE})
exten => sstate,n(return),Return()
exten => _*58.,1,Answer
exten => _*58.,n,Set(ME=${CALLERID(num)})
exten => _*58.,n,Set(PASSWORD=${DB(KEYLOCK/${ME}/password)})
exten => _*58.,n,Noop(${EXTEN:3})
exten => _*58.,n,GotoIf($[ ${PASSWORD} = ${EXTEN:3}]?*58,authenticated)
exten => _*58.,n,Playback(vm-invalidpassword)
exten => _*58.,n,Hangup

; end of [keylock-unlock]

[keylock-toggle]
include => keylock-toggle-custom
exten => *56,1,Macro(user-callerid,)
exten => *56,n,Set(me=${CALLERID(num)})
exten => *56,n,GotoIf(${DB(KEYLOCK/${me}/locked)}?keylock-unlock,*58,locked:keylock-lock,*57,1)

; end of [keylock-toggle]

[macro-keylock-setpass]
include => macro-keylock-setpass-custom
exten => s,1,Set(ME=${CALLERID(num)})
exten => s,n,GotoIf(${DB(KEYLOCK/${ME}/password)}?set:read)
exten => s,n(set),Set(PASSWORD=${DB(KEYLOCK/${ME}/password)})
exten => s,n,Authenticate(${PASSWORD},)
exten => s,n,Goto(notset)
exten => s,n(read),Read(PASSWORD,vm-newpassword,,,,)
exten => s,n,GotoIf($["${PASSWORD}"!=""]?notset:read)
exten => s,n(notset),Set(DB(KEYLOCK/${ME}/password)=${PASSWORD})
exten => s,n,Playback(vm-passchanged)

; end of [macro-keylock-setpass]

[keylock-setpass]
include => keylock-setpass-custom
exten => *59,1,Answer
exten => *59,n,Macro(keylock-setpass,)
exten => *59,n,Hangup

; end of [keylock-setpass]
1019,11 8%

corregido...!

como nadie m dio idea yo lo arregle...! *59 q s para el cambio de clave tiene un detalle cuando checka Goto (notset) lo q hice fue q en las funciones del modulo /var/www/html/admin/modules/keylock/functions.inc.php comente Goto (notset) y listo puedo cambiar la clave..:! hojala les sirva..:!