Limite de tiepmo en llamadas

2,584 views
Skip to first unread message

Panda

unread,
Jul 10, 2009, 11:20:16 AM7/10/09
to asterisk-es
Saludos amigos tengo un pequeño problema, estoy utilizando elastix 1.5
y soy nuevo en el mundo de asterik entonces todo lo he venido
configurando desde la interfaz web que trae elastix y mi jefe me pidio
que limite el tiempo de llamadas a ciertas extensiones entonces me
roto la cabeza por casi una semana y como no todo es de color rosa en
el GUI de FreePBX ni elastisx no hay como configurar esa opcion..
entoces busque en varios foros inclido aqui y me dan varias opciones
para poner el limite editando por consola, pero el problema que tengo
es que hay varios archivos que empiezan con extension y aqui la lista

(extensions_a2billing.conf
extensions_additional.conf
extensions.ael
extensions.conf
extensions.conf.old_freePBX-2.5.1-11rc
extensions.conf.old_freePBX-2.5.1-12rc
extensions.conf.rpmnew
extensions_custom.conf
extensions_custom.conf.sample
extensions_override_freepbx.conf)

La mayoria de los foros me dicen que edite el archivo
extension_custon_conf y que agrege esto:

[interno]
include => ext-local
;solo puede llamar a extensiones locales

[temporizador]
exten => _96XXXXXX,1,Set(LIMIT_TIMEOUT_FILE=vm-goodbye)
exten => _96XXXXXX,n,Set(LIMIT_WARNING_FILE=beep)
exten => _96XXXXXX,n,Dial(SIP/3815410/${EXTEN:1},30,TtrL
(60000:30000:15000))
exten => _96XXXXXX,n,Playback(all-circuits-busy-now,noanswer)
exten => _96XXXXXX,n,Playback(pls-try-call-later)
exten => _96XXXXXX,n,Playtones(Congestion)
exten => _96XXXXXX,n,Hangup

teniendo en cuenta que cambien parametros segun mis necesidades pero
luego de hacerlo he guardaro y reiniciado el dialplan en el CLI de
asterik y hecho la prueba y nada segun lo que entiendo esta linea
exten => _96XXXXXX,n,Dial(SIP/3815410/${EXTEN:1},30,TtrL
(60000:30000:30000)) me dice que la llamada dura 1min y el beep va a
sonar a los 30 seg antes de que se corte cada 15 segundos pero no me
funciona

En donde me puede estar equivocando ???

Iñaki Baz Castillo

unread,
Jul 10, 2009, 11:23:27 AM7/10/09
to aster...@googlegroups.com
El Friday 10 July 2009 17:20:16 Panda escribió:
> exten => _96XXXXXX,n,Dial(SIP/3815410/${EXTEN:1},30,TtrL
> (60000:30000:30000))

¿Se está de verdad ejecutando esa línea al hacer una llamada? (verifícalo en
el CLI).

--
Iñaki Baz Castillo
<ib...@xtratelecom.es>

Andres Jaramillo

unread,
Jul 10, 2009, 11:37:10 AM7/10/09
to aster...@googlegroups.com
Gracias por tu ayuda...ya revise el CLI y no encuentro la linea del tiempo se lo sale esto.. revise si lo que edite en los archivos de extension esta  y si esta los contextos que yo le puse para la llamada

[Jul 10 10:30:59] VERBOSE[18687] logger.c:     -- Executing [s@macro-dialout-trunk:19] Dial("IAX2/1009-6720", "SIP/3815410/072607113|300|") in new stack
[Jul 10 10:30:59] NOTICE[18687] app_dial.c: Hey! chan IAX2/1009-6720's context='macro-dialout-trunk', and exten='s'
[Jul 10 10:30:59] VERBOSE[18687] logger.c:     -- Called 3815410/072607113
[Jul 10 10:31:00] VERBOSE[18687] logger.c:     -- SIP/3815410-083e1b00 is ringing
[Jul 10 10:31:00] VERBOSE[18687] logger.c:     -- SIP/3815410-083e1b00 is making progress passing it to IAX2/1009-6720
--
Linux Registered User # 442709
Soporte Tecnico Windows - Linux
3214895 - 095644953

Iñaki Baz Castillo

unread,
Jul 10, 2009, 11:53:27 AM7/10/09
to aster...@googlegroups.com
El Friday 10 July 2009 17:37:10 Andres Jaramillo escribió:
> Gracias por tu ayuda...ya revise el CLI y no encuentro la linea del tiempo

Entonces el enjendro de Elastix está pasando de la configuración custom que le
has puesto. Pero esto es una consulta sobre Elastix.

Panda

unread,
Jul 10, 2009, 2:51:32 PM7/10/09
to asterisk-es
SOLUCIONADO

Este parámetro se debe colocar por medio del Web Browser en Setup -
General Settings en Asterisk Dial Command y en Asterisk Outbund Dial.
La forma de configurar es la siguiente:

Asterisk Dial Command Options [L(tiempo en segundos)]
Asterisk Outbund Dial Command Options [L(tiempo en segundos)]

las opciones del comando Dial se puede utilizar el modificador L para
limitar el tiempo:

L(x[:y][:z])

Esto limitara la llamada a "x" milisegundos, notificandote cuando
falten "y" milisegundos y repitiendolo cada "z" milisegundos, en donde
solo "x" es indispensable para su funcionamiento.

Mira este ejemplo:
Dial(L(3600000:61000:30000)

Significa que el comando Dial limitara la llamada a 3600000 ms (1
hora) y notificara que la llamada llega a ese tiempo cuando falte
61000 (1 minuto y 1 segundo) y esa alarma se repetira cada 30000 ms
(30 segundos).

RazaMetaL | Only The Good Die Young

unread,
Jul 10, 2009, 4:37:51 PM7/10/09
to aster...@googlegroups.com
2009/7/10 Panda <aej...@gmail.com>:

Eso afectará a todo tu dial plan, significa que hasta el jefe se le va
a cortar la llamada de negocios después del tiempo que determines en
esa opción.

Saludos,

--
Linux User: 255902

Please avoid sending me Word or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html

Andres Jaramillo

unread,
Jul 11, 2009, 7:33:10 PM7/11/09
to aster...@googlegroups.com
Lo que dice RazaMetal es cierto asi que investingando un poco mas tengo esta otra solucion

SOLUCION 2
En caso de estar trabajando con elastix o trixbox hay un archivo que se llama extensions_additional.conf con el cual no vamos a trabajar solo vamos a copiar algunas cosas de ahi ya que cada vez que se actualize freepbx se cambia el archivo y si lo hemos modificado se borra lo que hemos puesto asi que vamos a trabajar con el archivo extensions_custom.conf...

Primero:
Abrimos el archivo extensions_additional.conf desde el editor de archivos que tiene elastix y copiamos todo el contexto que dice [from-internal-additional] ya que es elcontexto de default que utiliza freepbx en las extensiones para realizar llamadas.
ejemplo este es mi contexto

[from-internal-additional]
include => from-internal-additional-custom
include => ext-paging
include => app-pbdirectory
include => app-fmf-toggle
include => ext-findmefollow
include => fmgrps
include => vmblast-grp
include => app-dialvm
include => app-vmmain
include => app-speeddial
include => app-queueprio
include => app-calltrace
include => app-directory
include => app-echo-test
include => app-speakextennum
include => app-speakingclock
include => app-cf-busy-off
include => app-cf-busy-off-any
include => app-cf-busy-on
include => app-cf-off
include => app-cf-off-any
include => app-cf-on
include => app-cf-unavailable-off
include => app-cf-unavailable-on
include => app-dictate-record
include => app-dictate-send
include => app-daynight
include => app-gabcast
include => ext-group
include => grps
include => ext-meetme
include => app-recordings
include => app-languages
include => app-dnd-off
include => app-dnd-on
include => app-dnd-toggle
include => ext-dnd-hints
include => ext-queues
include => app-callwaiting-cwoff
include => app-callwaiting-cwon
include => app-blacklist
include => app-userlogonoff
include => app-pickup
include => app-zapbarge
include => app-chanspy
include => ext-test
include => ext-local
exten => h,1,Hangup

Segundo
Luego de copiado nos iremos editar el archivo extensions_custom.conf, lo abrirremos y al final pegaremos el contexto pero con cambiando el nombre del contexto en este caso yo lo llame [cuenta-premiun]

[cuenta-premiun]
nclude => from-internal-additional-custom
include => ext-paging
include => app-pbdirectory
include => app-fmf-toggle
include => ext-findmefollow
include => fmgrps
include => vmblast-grp
include => app-dialvm
include => app-vmmain
include => app-speeddial
include => app-queueprio
include => app-calltrace
include => app-directory
include => app-echo-test
include => app-speakextennum
include => app-speakingclock
include => app-cf-busy-off
include => app-cf-busy-off-any
include => app-cf-busy-on
include => app-cf-off
include => app-cf-off-any
include => app-cf-on
include => app-cf-unavailable-off
include => app-cf-unavailable-on
include => app-dictate-record
include => app-dictate-send
include => app-daynight
include => app-gabcast
include => ext-group
include => grps
include => ext-meetme
include => app-recordings
include => app-languages
include => app-dnd-off
include => app-dnd-on
include => app-dnd-toggle
include => ext-dnd-hints
include => ext-queues
include => app-callwaiting-cwoff
include => app-callwaiting-cwon
include => app-blacklist
include => app-userlogonoff
include => app-pickup
include => app-zapbarge
include => app-chanspy
include => ext-test
include => ext-local
include => locales
include => celular
exten => h,1,Hangup

Luego de copiado tenemos que borrar el include que dice include => outbound-allroutes
Seguido de esto tambien tenemos que copiar del archivo extensions-additional.conf las reglas de llamada en mi caso se llaman locales y celulares

ejemplo: esto que voy a pegar en la pagina lo voy a copiar y pegar en el archivo extensions_custom.conf teniendo en cuenta hay cambiar el nombre a los contextos

[outrt-001-local] -----> yo lo cambien por [local-premiun]
include => outrt-001-local-custom
exten => 100,1,Set(EMERGENCYROUTE=YES)
exten => 100,n,Macro(user-callerid,SKIPTTL,)
exten => 100,n,Set(_NODEST=)
exten => 100,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 100,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 100,n,Macro(outisbusy,)
exten => 101,1,Set(EMERGENCYROUTE=YES)
exten => 101,n,Macro(user-callerid,SKIPTTL,)
exten => 101,n,Set(_NODEST=)
exten => 101,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 101,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 101,n,Macro(outisbusy,)
exten => 102,1,Set(EMERGENCYROUTE=YES)
exten => 102,n,Macro(user-callerid,SKIPTTL,)
exten => 102,n,Set(_NODEST=)
exten => 102,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 102,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 102,n,Macro(outisbusy,)
exten => 105,1,Set(EMERGENCYROUTE=YES)
exten => 105,n,Macro(user-callerid,SKIPTTL,)
exten => 105,n,Set(_NODEST=)
exten => 105,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 105,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 105,n,Macro(outisbusy,)
exten => 150,1,Set(EMERGENCYROUTE=YES)
exten => 150,n,Macro(user-callerid,SKIPTTL,)
exten => 150,n,Set(_NODEST=)
exten => 150,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 150,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 150,n,Macro(outisbusy,)
exten => 311,1,Set(EMERGENCYROUTE=YES)
exten => 311,n,Macro(user-callerid,SKIPTTL,)
exten => 311,n,Set(_NODEST=)
exten => 311,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 311,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 311,n,Macro(outisbusy,)
exten => 411,1,Set(EMERGENCYROUTE=YES)
exten => 411,n,Macro(user-callerid,SKIPTTL,)
exten => 411,n,Set(_NODEST=)
exten => 411,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 411,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 411,n,Macro(outisbusy,)
exten => 911,1,Set(EMERGENCYROUTE=YES)
exten => 911,n,Macro(user-callerid,SKIPTTL,)
exten => 911,n,Set(_NODEST=)
exten => 911,n,Macro(record-enable,${AMPUSER},OUT,)
exten => 911,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => 911,n,Macro(outisbusy,)
exten => _1800NXXXXXX,1,Set(EMERGENCYROUTE=YES)
exten => _1800NXXXXXX,n,Macro(user-callerid,SKIPTTL,)
exten => _1800NXXXXXX,n,Set(_NODEST=)
exten => _1800NXXXXXX,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _1800NXXXXXX,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _1800NXXXXXX,n,Macro(outisbusy,)
exten => _1866NXXXXXX,1,Set(EMERGENCYROUTE=YES)
exten => _1866NXXXXXX,n,Macro(user-callerid,SKIPTTL,)
exten => _1866NXXXXXX,n,Set(_NODEST=)
exten => _1866NXXXXXX,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _1866NXXXXXX,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _1866NXXXXXX,n,Macro(outisbusy,)
exten => _1877NXXXXXX,1,Set(EMERGENCYROUTE=YES)
exten => _1877NXXXXXX,n,Macro(user-callerid,SKIPTTL,)
exten => _1877NXXXXXX,n,Set(_NODEST=)
exten => _1877NXXXXXX,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _1877NXXXXXX,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _1877NXXXXXX,n,Macro(outisbusy,)
exten => _1888NXXXXXX,1,Set(EMERGENCYROUTE=YES)
exten => _1888NXXXXXX,n,Macro(user-callerid,SKIPTTL,)
exten => _1888NXXXXXX,n,Set(_NODEST=)
exten => _1888NXXXXXX,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _1888NXXXXXX,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _1888NXXXXXX,n,Macro(outisbusy,)
exten => _NXXXXXX,1,Set(EMERGENCYROUTE=YES)
exten => _NXXXXXX,n,Macro(user-callerid,SKIPTTL,)
exten => _NXXXXXX,n,Set(_NODEST=)
exten => _NXXXXXX,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _NXXXXXX,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _NXXXXXX,n,Macro(outisbusy,)

; end of [outrt-001-local]


[outrt-002-Provincial] ----> yo lo cambie por [provincial-premium]
include => outrt-002-Provincial-custom
exten => _0[2].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[2].,n,Set(_NODEST=)
exten => _0[2].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[2].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[2].,n,Macro(outisbusy,)
exten => _0[3].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[3].,n,Set(_NODEST=)
exten => _0[3].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[3].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[3].,n,Macro(outisbusy,)
exten => _0[4].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[4].,n,Set(_NODEST=)
exten => _0[4].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[4].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[4].,n,Macro(outisbusy,)
exten => _0[5].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[5].,n,Set(_NODEST=)
exten => _0[5].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[5].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[5].,n,Macro(outisbusy,)
exten => _0[6].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[6].,n,Set(_NODEST=)
exten => _0[6].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[6].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[6].,n,Macro(outisbusy,)
exten => _0[7].,1,Macro(user-callerid,SKIPTTL,)
exten => _0[7].,n,Set(_NODEST=)
exten => _0[7].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[7].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[7].,n,Macro(outisbusy,)

; end of [outrt-002-Provincial]


[outrt-003-Celular]----> yo lo cambie por [celular-premium]
include => outrt-003-Celular-custom
exten => _0[9].,1,Set(EMERGENCYROUTE=YES)

exten => _0[9].,n,Macro(user-callerid,SKIPTTL,)
exten => _0[9].,n,Set(_NODEST=)
exten => _0[9].,n,Macro(record-enable,${AMPUSER},OUT,)
exten => _0[9].,n,Macro(dialout-trunk,3,${EXTEN},,)
exten => _0[9].,n,Macro(outisbusy,)

; end of [outrt-003-Celular]


luego de copiar, pegar y realizar los cambios en los contextos, dentro del mismo extensions_custom.conf agrege los inlcude dentro de [cuentas-premium] quedando de la siguiente manera

[cuenta-premiun]
nclude => from-internal-additional-custom
include => ext-paging
include => app-pbdirectory
include => app-fmf-toggle
include => ext-findmefollow
include => fmgrps
include => vmblast-grp
include => app-dialvm
include => app-vmmain
include => app-speeddial
include => app-queueprio
include => app-calltrace
include => app-directory
include => app-echo-test
include => app-speakextennum
include => app-speakingclock
include => app-cf-busy-off
include => app-cf-busy-off-any
include => app-cf-busy-on
include => app-cf-off
include => app-cf-off-any
include => app-cf-on
include => app-cf-unavailable-off
include => app-cf-unavailable-on
include => app-dictate-record
include => app-dictate-send
include => app-daynight
include => app-gabcast
include => ext-group
include => grps
include => ext-meetme
include => app-recordings
include => app-languages
include => app-dnd-off
include => app-dnd-on
include => app-dnd-toggle
include => ext-dnd-hints
include => ext-queues
include => app-callwaiting-cwoff
include => app-callwaiting-cwon
include => app-blacklist
include => app-userlogonoff
include => app-pickup
include => app-zapbarge
include => app-chanspy
include => ext-test
include => ext-local
include => local-premium
include => provincial-premium
include => celular-premium

exten => h,1,Hangup

Guardamos el archvio y reiniciamos el dialplan desde el CLI de asterisk
Ahora para que a las extensiones no cojan el tiempo que pusimos para las llamadas cambiamos lo siguiente
No vamos a PBX -- Extensiones --- seleccionamos la extension (la del Jefe) y buscamos la opcion

Device Options
This device uses iax2 technology.---- dentro de esta hay otra opcion que dice: context y la cambiamos por cuenta-premium
guardamos los cambios y aplicamos la configuracion... hacemos la prueba de llamada desde la extension del jefe y nos damos cuenta que ya no tiene limite de tiempo en las llamadas... en caso de que tengas mas relgas de llamada solo lo agregamos al extension_additional.conf

espero que la explicacion que hize se me haga entender cualquier duda estare dispuesto ayudar en lo que pueda.

Elio Rojano

unread,
Jul 12, 2009, 4:11:02 PM7/12/09
to aster...@googlegroups.com
Después de ver estos contextos, he de admitir lo fácil, simple y didáctico que puede llegar a ser utilizar un interfaz web como FreePBX tanto en trixbox, elastix o cualquier otro...
</ironic>
--
http://www.sinologic.net/
Reply all
Reply to author
Forward
0 new messages