Hi Tyler,
On 02/10/2011 05:33 AM, Tyler Merritt wrote:
All,
A very special issue I'm facing now. I'm using "is_method" from the
reply block (starting with a "has_totag" which matches and then goes
inside that block to check stuff out).
Here is the code:
xlog ("L_INFO", "Right before the reINVITE check!\n");
I suggest you to print the message buffer here just to be sure. Use
xlog("$mb\n");
Regards,
--
Anca Vamanu
OpenSIPS Developer
if ( is_method("INVITE") ) {
append_hf("GW: REINVITE\r\n");
if ( t_check_trans() ) {
t_relay();
exit;
}
}
xlog ("L_INFO", "Right after the reINVITE
check!\n");
sl_send_reply("404","Not here");
Here is the packet:
12:18:24.725518 IP 192.168.1.134.5060 > 192.168.0.2.5060: SIP, length: 720
E.....@...v(................INVITE sip:XXXXXXXXXX@DOMAIN SIP/2.0
CSeq: 443638 INVITE
Here is the definition from the documentation:
|is_method(name)|
Check if the method of the message matches the name. If name is a
known method (invite, cancel, ack, bye, options, info, update,
register, message, subscribe, notify, refer, prack), the function
performs method ID testing (integer comparison) instead of ignore case
string comparison.
The 'name' can be a list of methods in the form of
'method1|method2|...'. In this case, the function returns true if the
SIP message's method is one from the list. IMPORTANT NOTE: in the list
must be only methods defined in OpenSIPS with ID (invite, cancel, ack,
bye, options, info, update, register, message, subscribe, notify,
refer, prack, publish; for more
see:http://www.iana.org/assignments/sip-parameters).
If used for replies, the function tests the value of method field from
CSeq header.
If used for replies, the function tests the value of method field from
*CSeq header.*
*
*
The CSeq header above sure enough has "INVITE" inside it. And the
is_method filed is being used from a reply (it shouldn't really matter
though right? It should match regardless).
Please point out what I'm doing wrong - the daemon.log file shows:
Feb 10 12:18:25 sip-proxy1 /usr/sbin/opensips[22658]:
DBG:rr:loose_route: There is no Route HF
Feb 10 12:18:25 sip-proxy1 /usr/sbin/opensips[22658]: Right before the
reINVITE check!
Feb 10 12:18:25 sip-proxy1 /usr/sbin/opensips[22658]: Right after the
reINVITE check!
It *should* pass loose_route as it does, and then between the two log
messages stuff should happen - in this case, a match of the INVITE
header.
I don't see what I'm doing wrong.
_______________________________________________
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