Re: [OpenSIPS-Users] ERROR:dialog:dlg_validate_dialog:

2015-03-19 Thread Vlad Paiu

Hello,

Just to recap, you are saying that the Contact the user agent is sending 
is broken and you are happy that OpenSIPS is properly fixing the 
message, but you want to get rid of the ERRORs in the log ? If this is 
the case, you can use setdebug [1] for this.


Try something like

setdebug(-3)
if ($DLG_status!=NULL  !validate_dialog() ) {
xlog( in-dialog bogus request \n);
fix_route_dialog();
}
setdebug()

http://www.opensips.org/Documentation/Script-CoreFunctions-2-1#toc48

Best Regards,

Vlad Paiu
OpenSIPS Developer
http://www.opensips-solutions.com

On 18.03.2015 22:47, Satish Patel wrote:
I know you guys are super busy in OpenSIPS 2.1 release, but any 
suggestion on above issue?


On Wed, Mar 18, 2015 at 12:17 AM, Satish Patel satish@gmail.com 
mailto:satish@gmail.com wrote:


I am getting following error in log, I can understand my contact:
and Route: values mismatching here. why it is happening? is there
a way to get rid on this error?

Following is scenario. Only getting error in BYE message.

[UA][OpenSIP]---[Freeswitch]-[Opensip]-[SIP
Provide]


ERROR:dialog:dlg_validate_dialog: failed to validate remote
contact: dlg=[sip:16463737221
tel:16463737221@188.178.235.222:5061;transport=udp] ,
req=[sip:188.178.235.222;lr;ftag=840e2e35;did=1f4.ca6a6956]

I am using fix_route_dialog() in loose_route()

if (has_totag()) {
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route() || match_dialog())  {
if ($DLG_status!=NULL 
!validate_dialog() ) {
xlog( in-dialog bogus request \n);
fix_route_dialog();
 }

xlog(L_INFO, Loose route failed on
$hdr(route)\n);
if (is_method(BYE)) {
#setflag(ACC_DO); # do accounting ...
#setflag(ACC_FAILED); # ... even
if the transaction fails
} else if (is_method(INVITE)) {
# even if in most of the cases is
useless, do RR for
# re-INVITEs alos, as some buggy
clients do change route set
# during the dialog.
record_route();
}

if (check_route_param(nat=yes))
setflag(NAT);

# route it out to whatever destination was
set by loose_route()
# in $du (destination URI).
route(relay);
 }  else {

if ( is_method(ACK) ) {
if ( t_check_trans() ) {
# non loose-route, but
stateful ACK; must be an ACK after
# a 487 or e.g. 404 from
upstream server
xlog(non loose-route
section\n);
t_relay();
exit;
} else {
# ACK without matching
transaction -
# ignore and discard
xlog(ACK without matching
transaction\n);
exit;
}
}
xlog(L_INFO, destination uri after
loose_route: $du\n);
sl_send_reply(404,Not here);
}
exit;
}









___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] ERROR:dialog:dlg_validate_dialog:

2015-03-19 Thread Satish Patel
Great! will give it a shot!

Just surprised why it is not matching both dlg and req? does
fix_route_dialog();
 has any impact on system when you have very high CPS etc?

It would be good if fix issue from root, instead of external resources
which eat CPU ticks :)

 dlg=[sip:16463737221@188.178.235.222:5061;transport=udp] ,
req=[sip:188.178.235.222;lr;ftag=840e2e35;did=1f4.ca6a6956]

On Thu, Mar 19, 2015 at 12:24 PM, Vlad Paiu vladp...@opensips.org wrote:

  Hello,

 Just to recap, you are saying that the Contact the user agent is sending
 is broken and you are happy that OpenSIPS is properly fixing the message,
 but you want to get rid of the ERRORs in the log ? If this is the case, you
 can use setdebug [1] for this.

 Try something like

 setdebug(-3)
 if ($DLG_status!=NULL  !validate_dialog() ) {
 xlog( in-dialog bogus request \n);
 fix_route_dialog();
 }
 setdebug()

 http://www.opensips.org/Documentation/Script-CoreFunctions-2-1#toc48

 Best Regards,

 Vlad Paiu
 OpenSIPS Developerhttp://www.opensips-solutions.com

 On 18.03.2015 22:47, Satish Patel wrote:

 I know you guys are super busy in OpenSIPS 2.1 release, but any suggestion
 on above issue?

 On Wed, Mar 18, 2015 at 12:17 AM, Satish Patel satish@gmail.com
 wrote:

  I am getting following error in log, I can understand my contact: and
 Route: values mismatching here. why it is happening? is there a way to get
 rid on this error?

  Following is scenario. Only getting error in BYE message.

  [UA][OpenSIP]---[Freeswitch]-[Opensip]-[SIP
 Provide]


 ERROR:dialog:dlg_validate_dialog: failed to validate remote contact:
 dlg=[sip:16463737221@188.178.235.222:5061;transport=udp] ,
 req=[sip:188.178.235.222;lr;ftag=840e2e35;did=1f4.ca6a6956]

  I am using fix_route_dialog() in loose_route()

 if (has_totag()) {
 # sequential request withing a dialog should
 # take the path determined by record-routing
 if (loose_route() || match_dialog())  {
 if ($DLG_status!=NULL  !validate_dialog() ) {
 xlog( in-dialog bogus request \n);
 fix_route_dialog();
  }

 xlog(L_INFO, Loose route failed on
 $hdr(route)\n);
 if (is_method(BYE)) {
 #setflag(ACC_DO); # do accounting ...
 #setflag(ACC_FAILED); # ... even if the
 transaction fails
 } else if (is_method(INVITE)) {
 # even if in most of the cases is
 useless, do RR for
 # re-INVITEs alos, as some buggy clients
 do change route set
 # during the dialog.
 record_route();
 }

 if (check_route_param(nat=yes))
 setflag(NAT);

 # route it out to whatever destination was set by
 loose_route()
 # in $du (destination URI).
 route(relay);
  }  else {

 if ( is_method(ACK) ) {
 if ( t_check_trans() ) {
 # non loose-route, but stateful
 ACK; must be an ACK after
 # a 487 or e.g. 404 from upstream
 server
 xlog(non loose-route section\n);
 t_relay();
 exit;
 } else {
 # ACK without matching
 transaction -
 # ignore and discard
 xlog(ACK without matching
 transaction\n);
 exit;
 }
 }
 xlog(L_INFO, destination uri after
 loose_route: $du\n);
 sl_send_reply(404,Not here);
 }
 exit;
 }









 ___
 Users mailing 
 listUsers@lists.opensips.orghttp://lists.opensips.org/cgi-bin/mailman/listinfo/users



 ___
 Users mailing list
 Users@lists.opensips.org
 http://lists.opensips.org/cgi-bin/mailman/listinfo/users


___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] ERROR:dialog:dlg_validate_dialog:

2015-03-18 Thread Satish Patel
I know you guys are super busy in OpenSIPS 2.1 release, but any suggestion
on above issue?

On Wed, Mar 18, 2015 at 12:17 AM, Satish Patel satish@gmail.com wrote:

 I am getting following error in log, I can understand my contact: and
 Route: values mismatching here. why it is happening? is there a way to get
 rid on this error?

 Following is scenario. Only getting error in BYE message.

 [UA][OpenSIP]---[Freeswitch]-[Opensip]-[SIP
 Provide]


 ERROR:dialog:dlg_validate_dialog: failed to validate remote contact:
 dlg=[sip:16463737221@188.178.235.222:5061;transport=udp] ,
 req=[sip:188.178.235.222;lr;ftag=840e2e35;did=1f4.ca6a6956]

 I am using fix_route_dialog() in loose_route()

 if (has_totag()) {
 # sequential request withing a dialog should
 # take the path determined by record-routing
 if (loose_route() || match_dialog())  {
 if ($DLG_status!=NULL  !validate_dialog() ) {
 xlog( in-dialog bogus request \n);
 fix_route_dialog();
  }

 xlog(L_INFO, Loose route failed on
 $hdr(route)\n);
 if (is_method(BYE)) {
 #setflag(ACC_DO); # do accounting ...
 #setflag(ACC_FAILED); # ... even if the
 transaction fails
 } else if (is_method(INVITE)) {
 # even if in most of the cases is useless,
 do RR for
 # re-INVITEs alos, as some buggy clients
 do change route set
 # during the dialog.
 record_route();
 }

 if (check_route_param(nat=yes))
 setflag(NAT);

 # route it out to whatever destination was set by
 loose_route()
 # in $du (destination URI).
 route(relay);
  }  else {

 if ( is_method(ACK) ) {
 if ( t_check_trans() ) {
 # non loose-route, but stateful
 ACK; must be an ACK after
 # a 487 or e.g. 404 from upstream
 server
 xlog(non loose-route section\n);
 t_relay();
 exit;
 } else {
 # ACK without matching transaction
 -
 # ignore and discard
 xlog(ACK without matching
 transaction\n);
 exit;
 }
 }
 xlog(L_INFO, destination uri after loose_route:
 $du\n);
 sl_send_reply(404,Not here);
 }
 exit;
 }







___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


[OpenSIPS-Users] ERROR:dialog:dlg_validate_dialog:

2015-03-17 Thread Satish Patel
I am getting following error in log, I can understand my contact: and
Route: values mismatching here. why it is happening? is there a way to get
rid on this error?

Following is scenario. Only getting error in BYE message.

[UA][OpenSIP]---[Freeswitch]-[Opensip]-[SIP
Provide]


ERROR:dialog:dlg_validate_dialog: failed to validate remote contact:
dlg=[sip:16463737221@188.178.235.222:5061;transport=udp] ,
req=[sip:188.178.235.222;lr;ftag=840e2e35;did=1f4.ca6a6956]

I am using fix_route_dialog() in loose_route()

if (has_totag()) {
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route() || match_dialog())  {
if ($DLG_status!=NULL  !validate_dialog() ) {
xlog( in-dialog bogus request \n);
fix_route_dialog();
 }

xlog(L_INFO, Loose route failed on
$hdr(route)\n);
if (is_method(BYE)) {
#setflag(ACC_DO); # do accounting ...
#setflag(ACC_FAILED); # ... even if the
transaction fails
} else if (is_method(INVITE)) {
# even if in most of the cases is useless,
do RR for
# re-INVITEs alos, as some buggy clients do
change route set
# during the dialog.
record_route();
}

if (check_route_param(nat=yes))
setflag(NAT);

# route it out to whatever destination was set by
loose_route()
# in $du (destination URI).
route(relay);
 }  else {

if ( is_method(ACK) ) {
if ( t_check_trans() ) {
# non loose-route, but stateful
ACK; must be an ACK after
# a 487 or e.g. 404 from upstream
server
xlog(non loose-route section\n);
t_relay();
exit;
} else {
# ACK without matching transaction
-
# ignore and discard
xlog(ACK without matching
transaction\n);
exit;
}
}
xlog(L_INFO, destination uri after loose_route:
$du\n);
sl_send_reply(404,Not here);
}
exit;
}
___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users