Limitar canales SIP a 1 llamada

930 views
Skip to first unread message

otilio

unread,
Oct 5, 2009, 10:02:28 AM10/5/09
to asterisk-es
He estado mirando este correo de Iñaki:
http://groups.google.com.uy/group/asterisk-es/browse_thread/thread/45716b72691dc6d0
donde comenta el problema de la limitación de llamadas en los canales
SIP. He comprobado que es cierto lo que dice, ya que se me ha
presentado ese problema. Con limit-call=1 permite hacer una llamada y
recibir otra, pero lo que debería hacer es dar señal de ocupado si hay
alguna llamada en curso.
He estado mirando con la función SIPPEER(limit) pero no sé si es un
problema de léxico, la cuestión que tampoco consigo que sirva de algo.
La configuración la tengo así:

exten => s,1,Set(SIPPEER(SIP/${ARG1},limit=1))
exten => s,n,Dial(SIP/${ARG1},30,Ttm)
exten => s,n,Goto(s-${DIALSTATUS},1)

No da error al evaluar la condición, pero permite que entre una
llamada si hay otra en curso.

-- Executing [300@internas:1] Macro("SIP/301-00c66f40", "normal|300")
in new stack
-- Executing [s@macro-normal:1] Set("SIP/301-00c66f40", "SIPPEER(SIP/
300|limit=1)") in new stack
-- Executing [s@macro-normal:2] Dial("SIP/301-00c66f40", "SIP/300|30|
Ttm") in new stack

Alguna idea de lo que estoy haciendo mal?

Saúl Ibarra

unread,
Oct 5, 2009, 10:14:17 AM10/5/09
to aster...@googlegroups.com
Tienes que usar las funciones de grupo: GROUP Y GROUP_COUNT.


--
/Saúl
http://www.saghul.net | http://www.sipdoc.net

Raúl Alexis Betancor Santana

unread,
Oct 5, 2009, 10:26:39 AM10/5/09
to aster...@googlegroups.com

No estas evaluando nada ... tienes un simple SET y listo ..

Se ha comentado ya como 100 millones de veces en la lista, que la
forma "efectiva" de limitar las llamadas es con GROUP y GROUP_COUNT,
combinado con el seteo de OUTBOUND_GROUP en la llamadas salientes desde la
extensión que quieres limitar.


--
Raúl Alexis Betancor Santana
Dimensión Virtual

otilio

unread,
Oct 6, 2009, 5:11:25 AM10/6/09
to asterisk-es
Cierto, cierto, es que no encontraba nada y por lo visto es una
cuestión de que hace bien las búsquedas en la lista.

Después de mirar y hacer pruebas he conseguido que me vaya bien
haciendo una mezcla entre call-limit y GROUP + GROUP_COUNT
Supongo que habrá una forma más sencilla, pero os cuento como lo he
hecho por si a alguien le sirve:

call-limit en las extensiones.
Un "Set(GROUP()=${CALLERID(num)})" en las llamadas a pstn para que
registre como grupo al llamante.
Un "Set(GROUP()=${ARG1})" en la macro de llamadas a extensiones con
"GotoIf($[${GROUP_COUNT()} > 1]?s-NOANSWER,1)" para que si hay una
llamada saliente en curso la de como ocupada.
Si hay una llamada entrante a esa extensión ya se ocupa call-limit.

De momento así me funciona bien a falta de más pruebas, aunque me da
que algo se me pasa ...


On 5 oct, 16:26, Raúl Alexis Betancor Santana <r...@dimension-
virtual.com> wrote:
> On Monday 05 October 2009 15:02:28 otilio wrote:
>
>
>
> > He estado mirando este correo de Iñaki:
> >http://groups.google.com.uy/group/asterisk-es/browse_thread/thread/45...

IvanFP

unread,
Oct 6, 2009, 8:34:59 AM10/6/09
to asterisk-es
Pero, con GROUP y GROUP_COUNT después las transferencias de llamadas
desde el teléfono limitado no van muy bien, ¿no?

Raúl Alexis Betancor Santana

unread,
Oct 6, 2009, 9:05:14 AM10/6/09
to aster...@googlegroups.com
On Tuesday 06 October 2009 10:11:25 otilio wrote:

> De momento así me funciona bien a falta de más pruebas, aunque me da
> que algo se me pasa ...


Se te pasa que con call-limit = 1 no podrás hacer transferencias SIP nativas.

Saúl Ibarra

unread,
Oct 6, 2009, 11:00:28 AM10/6/09
to aster...@googlegroups.com
Los grupos de fijan _por canal_ así que si transfieres un canal
seguirá estando en los mismos grupos.

otilio

unread,
Oct 8, 2009, 10:36:54 AM10/8/09
to asterisk-es
Quieres decir que mientras la llamada esté en curso, aunque la haya
transferido a otro terminal me va a dar como acupado?

Saúl Ibarra

unread,
Oct 8, 2009, 10:42:48 AM10/8/09
to aster...@googlegroups.com
A llama a B. Fijas el grupo KOSA en A. B transfiere a A con C. A sigue
estando en el grupo KOSA.

Responde eso a tu pregunta? De todas formas puedes probar muy fácil
haciendo un group show en el CLI :)

otilio

unread,
Oct 8, 2009, 12:10:06 PM10/8/09
to asterisk-es


On 8 oct, 16:42, Saúl Ibarra <sag...@gmail.com> wrote:
> A llama a B. Fijas el grupo KOSA en A. B transfiere a A con C. A sigue
> estando en el grupo KOSA.

Y además C no está en el grupo (con la transferencia estándar)

>
> Responde eso a tu pregunta? De todas formas puedes probar muy fácil
> haciendo un group show en el CLI :)

Probado, tienes toda la razón.
Sigo buscando otras formas de hacerlo, de momento he anulado el call-
limit, que no pinta nada.

otilio

unread,
Oct 9, 2009, 3:28:38 PM10/9/09
to asterisk-es
Bueno, pues al final no puedo anualar el call-limit o no funciona
SIPPEER :)
Creo haber dado con el tema, mezclando GROUP y GROUP_COUNT con SIPPEER
(curcalls), de tal manera que no pase lo que me comentaba saúl. La
verdad es que es un buen fallo de la serie SPA900 de Linksys que no
tenga la opción de rechazar las llamadas cuando hay una en curso. A
ver si en la nueva serie SPA500 lo han corregido ...

Saludos y gracias por la ayuda.

Raúl Alexis Betancor Santana

unread,
Oct 9, 2009, 3:48:47 PM10/9/09
to aster...@googlegroups.com
otilio escribió:

> Bueno, pues al final no puedo anualar el call-limit o no funciona
> SIPPEER :)
> Creo haber dado con el tema, mezclando GROUP y GROUP_COUNT con SIPPEER
> (curcalls), de tal manera que no pase lo que me comentaba saúl. La
> verdad es que es un buen fallo de la serie SPA900 de Linksys que no
> tenga la opción de rechazar las llamadas cuando hay una en curso. A
> ver si en la nueva serie SPA500 lo han corregido ...
>
> Saludos y gracias por la ayuda.
>
No creo en absoluto, que porque el SPA no te haga "esa limitación", sea
un bug.
Más bien no has entendido como solventar el problema con las funiones GROUP.


dsc.ingenieria

unread,
Oct 9, 2009, 3:58:30 PM10/9/09
to aster...@googlegroups.com

No creo que se refiera a un bug, sino al hecho de no poder configurar el terminal para que, por ejemplo, sólo acepte una llamada entrante, cosa que si no recuerdo mal también le pasa a los SNOM 300.
 





Raúl Alexis Betancor Santana

unread,
Oct 9, 2009, 4:50:29 PM10/9/09
to aster...@googlegroups.com
dsc.ingenieria escribió:

>
> No creo que se refiera a un bug, sino al hecho de no poder configurar
> el terminal para que, por ejemplo, sólo acepte una llamada entrante,
> cosa que si no recuerdo mal también le pasa a los SNOM 300.
>

Normalmente los UAC solo admiten la "limitación" de simultáneas en
función de la cuentas SIP que admita o alguna otra limitación artificial
que quiera introducir el fabricante.

El error de concepto viene de que la gente intenta tratar a los UAC SIP
como si fueran meros teléfonos tontos de las antiguas PBX's y ahí
cometen los errores uno detrás de otro, intentando simular el
comportamiento de una PBX tradicional con Asterisk o cualquier otro
equipo SIP. Obviando las grandisimas ventajas que SIP ofrece sobre la
telefonía tradicional.

Juan Carlos Valero

unread,
Oct 10, 2009, 5:04:07 AM10/10/09
to aster...@googlegroups.com
Hola,


> No creo que se refiera a un bug, sino al hecho de no poder configurar el
> terminal para que, por ejemplo, sólo acepte una llamada entrante, cosa que si
> no recuerdo mal también le pasa a los SNOM 300.

Eeeeeeng !!! Error!
En los Snom 300 (en toda la gama en realidad) puedes configurar 1 sola llamada simultanea y que rechace la segunda llamada.

http://wiki.snom.com/Settings/call_waiting

Al final de la pagina lo explica

--

Un saludo,

Juan Carlos Valero

-------------------------------------------------------------------------
Capa Tres Soluciones Tecnológicas S.L. Barcelona
Visita nuestra página web en: http://www.capatres.com
Teléfono: 935605424 Fax: 935748256 Blog: http://blogs.capatres.com -------------------------------------------------------------------------

José Ferney Franco Baquero

unread,
Oct 11, 2009, 9:39:05 AM10/11/09
to aster...@googlegroups.com
Tienes un error:
exten => s,1,Set(SIPPEER(SIP/${ARG1}, limit)=1)

Además observa la recomendación de Saúl.


2009/10/5 otilio <tr...@esdebian.org>

otilio

unread,
Oct 22, 2009, 2:49:47 PM10/22/09
to asterisk-es


On 9 oct, 22:50, Raúl Alexis Betancor Santana <r...@dimension-
virtual.com> wrote:
> dsc.ingenieria escribió:
>
>
>
> > No creo que se refiera a un bug, sino al hecho de no poder configurar
> > el terminal para que, por ejemplo, sólo acepte una llamada entrante,
> > cosa que si no recuerdo mal también le pasa a los SNOM 300.

A eso exactamente me refería.

>
> Normalmente los UAC solo admiten la "limitación" de simultáneas en
> función de la cuentas SIP que admita o alguna otra limitación artificial
> que quiera introducir el fabricante.

Al menos en el caso de los Linksys no lo hace en función de las
cuentas SIP ni mucho menos, pues un 921 sólo dispone de una cuenta y
sin embargo entran las llamadas por detrás cuando estás hablando.

> El error de concepto viene de que la gente intenta tratar a los UAC SIP
> como si fueran meros teléfonos tontos de las antiguas PBX's y ahí
> cometen los errores uno detrás de otro, intentando simular el
> comportamiento de una PBX tradicional conAsterisko cualquier otro
> equipo SIP. Obviando las grandisimas ventajas que SIP ofrece sobre la
> telefonía tradicional.

Si tu lo dices así será, pero te puedo hacer una lista de teléfonos
que sí que hacen lo que comento, incluido el Snom 300. La opción
generalmente se denomina "llamada en espera".
Reply all
Reply to author
Forward
0 new messages