Hi everyone,
I am still trying to find a solution to my problem with BYe messages that are not going through SER. Maybe someone with enough knowledge about route recording could help me with the configuration:
My main problem with BYE messages is that they are not going through SER; the client sends it directly to my rtp proxy. as the RTP is established with it. I need them to go through SER. How can I achieve this ?
I don't know how to use route recording, could you explain what following config block does ? (this is in the default configuration but doesn't make BYE messages to go through SER)
if (!method=="REGISTER") { record_route(); }
if (loose_route()) { # mark routing logic in request append_hf("P-hint: rr-enforced\r\n"); route(1); break; };
thanks, ilker
________________________________
From: serusers-bounces@iptel.org [mailto:serusers-bounces@lists.iptel.org] On Behalf Of İlker Aktuna (Koç.net) Sent: Friday, May 05, 2006 12:09 AM To: fay butt; serusers@lists.iptel.org Subject: RE: [Serusers] How to use record route to change path of BYE messages
Hi,
Thanks for your reply but this is totally a different case. In my case the problem is not CANCEL messages but BYE and ACK messages.
BYE message (and also ACK) is sent to the contact of the RTP stream instead of the SER proxy. But I want these messages to be sent to SER. That's why I should somehow make them to be sent to SER.
So It should be done by either recording route or changing contact header. How can I do that ?
Thanks, ilker
________________________________
From: serusers-bounces@iptel.org [mailto:serusers-bounces@lists.iptel.org] On Behalf Of fay butt Sent: Thursday, May 04, 2006 7:08 PM To: serusers@lists.iptel.org Subject: Re: [Serusers] How to use record route to change path of BYE messages
hi, i had that problem a time ago. I just put this messege and now it's working fine. if (method == "CANCEL" ) { if (uri =~"^sip:4[0-9]*@localhost") { forward ( asterisk , 5060 ); t_relay(); break; }; };
"Ýlker Aktuna (Koç.net)" ilkera@koc.net wrote:
Hi, For voice communication I use a SIP+RTP proxy together with SER. For PSTN calls SER routes the INVITE messages to the RTP proxy. Everything works fine there, but when the call is ended by one client (which is connected to SER) or the PSTN user, the BYE message does not arrive to SER. If our RTP proxy does not see the message coming from SER, call doesn't end. That's why I need all of the BYE messages to go through SER. How can I do that ? In the default configuration there is a record route process for every message other than REGISTER. But still BYE and ACK messages are not sent to SER. Should I change the contact header of the messages arriving from RTP proxy ? If so, how can I do it ? What does following configuration block do ? if (loose_route()) { # mark routing logic in request append_hf("P-hint: rr-enforced\r\n"); route(1); break; }; Thanks, ilker
http://387555.sigclick.mailinfo.com/sigclick/050A0207/00044F03/01004900/66252513.jpg _____________________________________________________________________________________________________________________________________________ Bu e-posta mesaji kisiye ozel olup, gizli bilgiler iceriyor olabilir. Eger bu e-posta mesaji size yanlislikla ulasmissa, icerigini hic bir sekilde kullanmayiniz ve ekli dosyalari acmayiniz. Bu durumda lutfen e-posta mesajini kullaniciya hemen geri gonderiniz ve tum kopyalarini mesaj kutunuzdan siliniz. Bu e-posta mesaji, hic bir sekilde, herhangi bir amac icin cogaltilamaz, yayinlanamaz ve para karsiligi satilamaz. Bu e-posta mesaji viruslere karsi anti-virus sistemleri tarafindan taranmistir. Ancak yollayici, bu e-posta mesajinin - virus koruma sistemleri ile kontrol ediliyor olsa bile - virus icermedigini garanti etmez ve meydana gelebilecek zararlardan dogacak hicbir sorumlulugu kabul etmez. This message is intended solely for the use of the individual or entity to whom it is addressed , and may contain confidential information. If you are not the intended recipient of this message or you receive this mail in error, you should refrain from making any use of the contents and from opening any attachment. In that case, please notify the sender immediately and return the message to the sender, then, delete and destroy all copies. This e-mail message, can not be copied, published or sold for any reason. This e-mail message has been swept by anti-virus systems for the presence of computer viruses. In doing so, however, sender cannot warrant that virus or other forms of data corruption may not be present and do not take any responsibility in any occurrence. _____________________________________________________________________________________________________________________________________________
On Fri, May 12, 2006 at 10:38:51AM +0300, İlker Aktuna (Koç.net) wrote:
Hi everyone,
I am still trying to find a solution to my problem with BYe messages that are not going through SER. Maybe someone with enough knowledge about route recording could help me with the configuration:
My main problem with BYE messages is that they are not going through SER; the client sends it directly to my rtp proxy. as the RTP is established with it. I need them to go through SER. How can I achieve this ?
I don't know how to use route recording, could you explain what following config block does ? (this is in the default configuration but doesn't make BYE messages to go through SER)
It does (you can check by ethereal, ngrep etc.),
if (!method=="REGISTER") { record_route(); }
but as it has another Route header pointing to the RTP proxy it leaves SER within the next block which is entered when loose_route() function has found any reasonable target in the Route headers to forward the request to ....
if (loose_route()) { # mark routing logic in request append_hf("P-hint: rr-enforced\r\n");
so you can add your logic either here or into route[1] block, which might be called from other places as well (be aware)
route(1); break; };
And you'll get all the subsequent dialog request and target refresh requests (not only BYE) from both parties, which basically means the To and From could be swapped (e.g. BYE is sent by the proxy, net the client).
thanks, ilker
Hope Google will index this to help more people :-) Michal