[SR-Users] Kamailio dispatcher

Evgeniy Spinov spinov_evgeniy at intalisan.com
Thu Jun 16 17:12:35 CEST 2011


On Thu, 2011-06-16 at 12:06 +0200, Daniel-Constantin Mierla wrote:
> 
> On 6/15/11 10:50 AM, Evgeniy Spinov wrote:
> > On Wed, 2011-06-15 at 09:47 +0200, Daniel-Constantin Mierla wrote:
> >> On 6/14/11 1:06 PM, Evgeniy Spinov wrote:
> >>> On Mon, 2011-06-13 at 12:12 +0200, Daniel-Constantin Mierla wrote:
> >>>
> >>> Ok, still unsolved problem.
> >>>
> >>> I've changed failover part of the script to use ds_next_dst(). It does
> >>> what it should and signalization works fine - calls are being connected.
> >>> However I've got no audio and message in logs:
> >>>
> >>> 7(9917) ERROR: rtpproxy [rtpproxy.c:2211]: incorrect port 0 in reply
> >>> from rtp proxy
> >>>
> >>> I've added force_rtp_proxy() after ds_next_dst() and message
> >>> disappeared, however still no audio on the failover call.
> >>>
> >>> RTP Proxy runs on the same server and is fine for not failover calls.
> >>> Success route script executes force_rtp_proxy() and fix_nated_contact()
> >>> in curtain conditions and that's it.
> >>>
> >>> Am I missing something in my logic?
> >> Try to do the rtpproxy thing in branch route -- anyhow this has nothing
> >> to with dispatcher.
> >>
> >> Cheers,
> >> Daniel
> >>
> > It's done on the branch route, however it seems that branch route is not
> > being executed when the failure branch route is being ran.
> do t_on_branch() in failure route as well.


Tried that - nothing changes. Getting "incorrect port 0 in reply from
rtpproxy" and no audio.




> 
> Cheers,
> Daniel
> 
> >   Anyhow, when
> > the call is not passing through failure route and ds_next_dst() it is
> > fine, no errors. When it goes there, error with rtp proxy in logs and no
> > audio. When I add force_rtp_proxy() on success of t_relay() in failure
> > route it gives no errors, but still no audio.
> >
> > I do not know where issue is related, and what is wrong, especially when
> > this scenario worked before.
> >
> > Just to avoid misunderstanding, providing you a failure and a normal
> > branches of the script. Failure route:
> >
> >          if (is_method("INVITE")
> >                          &&  (isbflagset("6") || isflagset(5))) {
> >                  unforce_rtp_proxy();
> >          }
> >
> > 	... ( checks for different errors and messages output is skipped, not
> > related to this issue anyway )
> >
> >              if( ds_next_dst() )
> >              {
> >                  xlog( "L_NOTICE", "[$Tf] $ci Next gateway $fU ->  $tU via
> > $du\n" );
> >                  if( !t_relay() )
> >                  {
> >                      xlog( "L_INFO", "[$Tf] $ci -- ERROR - Can not
> > t_relay()\n" );
> >                      return;
> >                  };
> >                  return;
> >              }
> >              else
> >              {
> >                       xlog( "L_INFO", "[$Tf] $ci No more routes available
> > \n" );
> >                  t_reply("503", "Service unavailable -- no more gateways"
> > );
> >                  exit;
> >              };
> >
> >
> > And success route completely:
> >
> >          if ((isflagset(5) || isbflagset("6"))&&  status=~"(183)|(2[0-9][0-9])") {
> >                  force_rtp_proxy();
> >          }
> >          if (isbflagset("6")) {
> >                  fix_nated_contact();
> >          }
> >
> >
> > Thank you.
> >
> >
> >
> 





More information about the sr-users mailing list