[OpenSER-Users-ES] Problema al cancelar una llamada a 2 usuarios

Iñaki Baz Castillo ibc at in.ilimit.es
Mon Feb 18 15:37:21 CET 2008


El Monday 18 February 2008 15:28:48 David Vicente escribió:
> Iñaki Baz Castillo escribió:
> > El Monday 18 February 2008 13:18:53 David Vicente escribió:
> >> Buenos días:
> >>
> >> Tengo el siguiente escenario. Registro dos sip-phones con la misma
> >> sipUri. Les hago una llamada desde otro sip-phone y los INVITE llegan
> >> bien a ambos. El problema llega, cuando quiero cancelar la llamada desde
> >> uno de ellos, ya que hasta que no cuelga el segundo el Openser no lo
> >> envía al llamante. Necesito poder mandarle el mensaje 480 al llamante
> >> cuando llega del primero de los llamados, y no esperar al segundo, y no
> >> sé si se podría hacer.
> >> Si alguien tiene alguna idea se lo agradezco. Un saludo.
> >
> > Creo que este post que escribí en su día te viene que ni pintado ;)
> > http://blog.aliax.net/2007/09/cdigos-sip-de-respuesta-en-parallel.html
>
> Muchas gracias por el enlace, muy claro. Ante esto sólo me queda
> preguntar si habría alguna posibilidad de manejar una señal 4XX a ese
> mensaje y forzar la cancelación de las otras patas, aunque no se deba,
> aunque por lo que he leído me temo que no. Sino habrá que hacerse un
> poquito de ajo y agua.

No creo que haya forma. Al menos yo lo pregunté en mis inicios en la lista 
openser en inglés y la respuesta fue que no se puede. Aunque todo es 
probarlo. Así en plan idea feliz se me ocurre:
- Asignar un "t_reply" para investigar las respuestas.
- En su "on_brachroute" correspondiente mirar si se recibe un 4XX y en ese 
caso poner el AVP del timer del TM a 0.

Para esto sería necesario poner:

  modparam("tm", "fr_inv_timer_avp", "$avp(AVP_INV_TIMER)")
  # Para que OpenSer cancele la llamada pasado el "fr_inv_timer":
  modparam("tm", "noisy_ctimer", 1)


Y en el "on_replyroute" hacer en plan:

  $avp(AVP_INV_TIMER) = 0;

(aunque no creo que funcione).

-- 
Iñaki Baz Castillo
ibc at in.ilimit.es




More information about the Users-es mailing list