Dear all,
I am using siptrace module and getting all the packets except the BYE. when the call disconnected BYE packet is not received.
I am also getting the packets OK, REGISTER, INVITE two times in sip_trace table.
Can anyone help me to sort out this problem??
-- Dinesh Gautam
!!
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Dear all,
I am using siptrace module and getting all the packets except the BYE. when the call disconnected BYE packet is not received.
I am also getting the packets OK, REGISTER, INVITE two times in sip_trace table.
Can anyone help me to sort out this problem??
Ensure you are using "record_route()" for the call initial INVITE. If not, in- dialog requests (as re-INVITE, INFO, BYE) will not pass through the proxy and instead will go directly from UA to UA.
Yes I have record_route() in .cfg config file
# record routing if (!is_method("REGISTER|MESSAGE")) record_route(); still I am not getting BYE packet.
thanks for your response.
--- Dinesh Gautam
On Tue, 2010-01-19 at 11:22 +0100, Iñaki Baz Castillo wrote:
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Dear all,
I am using siptrace module and getting all the packets except the BYE. when the call disconnected BYE packet is not received.
I am also getting the packets OK, REGISTER, INVITE two times in sip_trace table.
Can anyone help me to sort out this problem??
Ensure you are using "record_route()" for the call initial INVITE. If not, in- dialog requests (as re-INVITE, INFO, BYE) will not pass through the proxy and instead will go directly from UA to UA.
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Yes I have record_route() in .cfg config file
# record routing if (!is_method("REGISTER|MESSAGE")) record_route(); still I am not getting BYE packet.
Can you check (with ngrep or tshark) if BYE request arrives to the proxy?
I have checked BYE packet with wireshark, it is coming to the proxy.
On Tue, 2010-01-19 at 12:22 +0100, Iñaki Baz Castillo wrote:
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Yes I have record_route() in .cfg config file
# record routing if (!is_method("REGISTER|MESSAGE")) record_route(); still I am not getting BYE packet.
Can you check (with ngrep or tshark) if BYE request arrives to the proxy?
-- Iñaki Baz Castillo ibc@aliax.net
Kamailio (OpenSER) - Users mailing list Users@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/users http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
On 1/19/10 1:33 PM, Dinesh Gautam wrote:
I have checked BYE packet with wireshark, it is coming to the proxy.
again, check if you call sip_trace() and set the proper flag for BYE -- the BYE goes via loose_route() in your config which is pretty much at the top of main route.
Cheers, Daniel
On Tue, 2010-01-19 at 12:22 +0100, Iñaki Baz Castillo wrote:
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Yes I have record_route() in .cfg config file
# record routing if (!is_method("REGISTER|MESSAGE")) record_route(); still I am not getting BYE packet.
Can you check (with ngrep or tshark) if BYE request arrives to the proxy?
-- Iñaki Baz Castilloibc@aliax.net
Kamailio (OpenSER) - Users mailing list Users@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/users http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
I am using sip_trace function.But I am not getting how to set the flag for BYE packet. These are my settings for siptrace module.
# to enable siptrace in database. modparam("siptrace", "db_url", "mysql://openser:openserrw@localhost/openser")
# Table to store sip trace, provide table name here is default sip_trace modparam("siptrace", "table", "sip_trace"). modparam("siptrace", "trace_flag", 0)
# Set on(1)/off(0) sip trace data modparam("siptrace", "trace_on", 1)
Please suggest me if any modifications required.
On 1/19/10 2:07 PM, Dinesh Gautam wrote:
I am using sip_trace function.But I am not getting how to set the flag for BYE packet. These are my settings for siptrace module.
# to enable siptrace in database. modparam("siptrace", "db_url", "mysql://openser:openserrw@localhost/openser")
# Table to store sip trace, provide table name here is default sip_trace modparam("siptrace", "table", "sip_trace"). modparam("siptrace", "trace_flag", 0)
here:
modparam("siptrace", "trace_flag", 18)
- or any other flag you don't use for something else.
# Set on(1)/off(0) sip trace data modparam("siptrace", "trace_on", 1)
Please suggest me if any modifications required.
In your route block, where you handle the within dialog requests (search for loose_route() )
if(loose_route()) { # add this block if(is_method("BYE")) { sip_trace(); setflag(18); } }
Cheers, Daniel
Daniel,
On 01/19/2010 08:25 AM, Daniel-Constantin Mierla wrote:
sip_trace(); setflag(18);
Why do you call sip_trace(), and then set the flag afterward?
Also, I thought it is as with dialog module - one has choice either to invoke sip_trace() manually or to set a flag, but not both? Why do you do both? And why in that order?
Thanks,
Hi Alex,
On 1/19/10 7:48 PM, Alex Balashov wrote:
Daniel,
On 01/19/2010 08:25 AM, Daniel-Constantin Mierla wrote:
sip_trace(); setflag(18);
Why do you call sip_trace(), and then set the flag afterward?
Also, I thought it is as with dialog module - one has choice either to invoke sip_trace() manually or to set a flag, but not both? Why do you do both? And why in that order?
order does not matter.
Maybe would be good to make auto-setting of the flag if sip_trace is executed. So, sip_trace() does a snapshot of the current processed message (incoming). The flag is set in order to trace outgoing request and all replies related to transaction. Probably one that wants to trace the incoming request wants to trace everything related.
However, siptrace is not dialog aware, so it works only at transaction level and must be called for each transaction (e.g., BYE).
Cheers, Daniel
On 01/19/2010 02:25 PM, Daniel-Constantin Mierla wrote:
However, siptrace is not dialog aware, so it works only at transaction level and must be called for each transaction (e.g., BYE).
Oh. Well, that's informative. I was under the impression it used dialog callbacks. Thanks, that helps!
On 1/19/10 8:30 PM, Alex Balashov wrote:
On 01/19/2010 02:25 PM, Daniel-Constantin Mierla wrote:
However, siptrace is not dialog aware, so it works only at transaction level and must be called for each transaction (e.g., BYE).
Oh. Well, that's informative. I was under the impression it used dialog callbacks. Thanks, that helps!
could be an enhancement for the future and controlled via module parameter.
I see no reason to be bound to dialog in case you want to trace everything or something related to an user or ip.
Cheers, Daniel
Thanks Daniel,
Now I am getting BYE packet by modifying .cfg file as you said.
I have one more problem,I am receiving almost all packets (Ok, REGISTER, SUBSCRIBE, BYE) twice in database.
Why it is happening ??
Dinesh Gautam
On Tue, 2010-01-19 at 14:25 +0100, Daniel-Constantin Mierla wrote:
On 1/19/10 2:07 PM, Dinesh Gautam wrote:
I am using sip_trace function.But I am not getting how to set the flag for BYE packet. These are my settings for siptrace module.
# to enable siptrace in database. modparam("siptrace", "db_url", "mysql://openser:openserrw@localhost/openser")
# Table to store sip trace, provide table name here is default sip_trace modparam("siptrace", "table", "sip_trace"). modparam("siptrace", "trace_flag", 0)
here:
modparam("siptrace", "trace_flag", 18)
- or any other flag you don't use for something else.
# Set on(1)/off(0) sip trace data modparam("siptrace", "trace_on", 1)
Please suggest me if any modifications required.
In your route block, where you handle the within dialog requests (search for loose_route() )
if(loose_route()) { # add this block if(is_method("BYE")) { sip_trace(); setflag(18); } }
Cheers, Daniel
On 1/20/10 8:34 AM, Dinesh Gautam wrote:
Thanks Daniel,
Now I am getting BYE packet by modifying .cfg file as you said.
I have one more problem,I am receiving almost all packets (Ok, REGISTER, SUBSCRIBE, BYE) twice in database.
Why it is happening ??
Do you get 'in' and 'out' or two times 'in' two times 'out'? If you look at the network with ngrep, what is received/sent?
Cheers, Daniel
Dinesh Gautam
On Tue, 2010-01-19 at 14:25 +0100, Daniel-Constantin Mierla wrote:
On 1/19/10 2:07 PM, Dinesh Gautam wrote:
I am using sip_trace function.But I am not getting how to set the flag for BYE packet. These are my settings for siptrace module.
# to enable siptrace in database. modparam("siptrace", "db_url", "mysql://openser:openserrw@localhost/openser")
# Table to store sip trace, provide table name here is default sip_trace modparam("siptrace", "table", "sip_trace"). modparam("siptrace", "trace_flag", 0)
here:
modparam("siptrace", "trace_flag", 18)
- or any other flag you don't use for something else.
# Set on(1)/off(0) sip trace data modparam("siptrace", "trace_on", 1)
Please suggest me if any modifications required.
In your route block, where you handle the within dialog requests (search for loose_route() )
if(loose_route()) { # add this block if(is_method("BYE")) { sip_trace(); setflag(18); } }
Cheers, Daniel
On 1/19/10 12:18 PM, Dinesh Gautam wrote:
Yes I have record_route() in .cfg config file
# record routing if (!is_method("REGISTER|MESSAGE")) record_route(); still I am not getting BYE packet.
do you set the flag and call sip_trace() for BYE?
If you are using 3.0 and don't set trace_local_ip parameter, use the latest kamailio_3.0 branch from git (see dokuwiki for guidelines).
Cheers, Daniel
thanks for your response.
Dinesh Gautam
On Tue, 2010-01-19 at 11:22 +0100, Iñaki Baz Castillo wrote:
El Martes, 19 de Enero de 2010, Dinesh Gautam escribió:
Dear all,
I am using siptrace module and getting all the packets except the BYE. when the call disconnected BYE packet is not received.
I am also getting the packets OK, REGISTER, INVITE two times in sip_trace table.
Can anyone help me to sort out this problem??
Ensure you are using "record_route()" for the call initial INVITE. If not, in- dialog requests (as re-INVITE, INFO, BYE) will not pass through the proxy and instead will go directly from UA to UA.