Dando seguimiento a mi solicitud.
Lo que realicé fue lo siguiente:
1.- Se configura un horario de trabajo.
2.- Se configura un grupo de timbrado, con el número externo donde se va contestar las llamadas fuera de horario.
3.- Se configura una condición horaria, donde selecciono el horario de trabajo, el destino si la hora coincide, el destino si la hora no coincide.
4.- Ya configurado estos pasos, en "extensions_additional.conf" busco "[timeconditions]", copio la configuración y la reconfiguro en el archivo "extensions_custom.conf". Coloco la configuración:
include => time3217
[time3217]
include => time3217-custom
exten => 3217,1,GotoIfTime(09:00-17:59,mon-sat,,?truestate)
exten => 3217,n(falsestate),GotoIf($["${DB(TC/1):0:4}" = "true"]?truegoto)
exten => 3217,n,ExecIf($["${DB(TC/1)}" = "false"]?Set(DB(TC/1)=))
exten => 3217,n(falsegoto),Set(DEVICE_STATE(Custom:TC1)=INUSE)
exten => 3217,n,ExecIf($["${DB(TC/1)}" = "false_sticky"]?Set(DEVICE_STATE(Custom:TCSTICKY${ARG1})=INUSE))
exten => 3217,n,GotoIf($["${TCMAINT}"!="RETURN"]?ext-group,600,1)
exten => 3217,n,Set(TCSTATE=false)
exten => 3217,n,Set(TCOVERRIDE=${IF($["${DB(TC/1):0:5}" = "false"]?true:false)})
exten => 3217,n,Return()
exten => 3217,n(truestate),GotoIf($["${DB(TC/1):0:5}" = "false"]?falsegoto)
exten => 3217,n,ExecIf($["${DB(TC/1)}" = "true"]?Set(DB(TC/1)=))
exten => 3217,n(truegoto),Set(DEVICE_STATE(Custom:TC1)=NOT_INUSE)
exten => 3217,n,ExecIf($["${DB(TC/1)}" = "true_sticky"]?Set(DEVICE_STATE(Custom:TCSTICKY${ARG1})=INUSE))
exten => 3217,n,GotoIf($["${TCMAINT}"!="RETURN"]?from-did-direct,3217,1)
exten => 3217,n,Set(TCSTATE=true)
exten => 3217,n,Set(TCOVERRIDE=${IF($["${DB(TC/1):0:4}" = "true"]?true:false)})
exten => 3217,n,Return()
;--== end of [time3217] ==--
5.- El detalle que tengo es el siguiente: Cuando la llamada entra por un IVR no funciona la configuración.
¿Tendrán una idea que estará pasando?
¿Alguna sugerencia para simplificar la configuración?
Saludos.