[OpenSIPS-Users] delete a binding in location database from the routing script
Hi, I have a case where is would be helpful to delete a binding from the location database. For example, when we receive a socket reset or time-out while trying to use it. I believe it can be done trough the MI : ul rm username [contact URI] delete user's usrloc entries But I just wanted to confirm that currently it can not be done directly from the routing script ? ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] ACK Timer
Hi , I face a lot of scenarios where the customer send a cancel while the trunk send 200 OK and start the billing from its side ,so the client call will be canceled from his side and goes to the max call duration from my side and trunk side . Si I draw this function below loadmodule dialog.so modparam(dialog, timeout_avp, $avp(timeout2)) if (has_totag()) { if ( is_method(INVITE)) { $avp(timeout2) = 3; } else if (is_method(ACK)) { $avp(timeout2) = 3540; } Do this function effect on my calls or cause any problem Regards Khaled Chehab Senior NGN Engineer Description: icucall Operations Office - Lebanon Office: +961 1 515155 ext 300 Mobile : +961 3 045212 E-mail: kche...@icucall.com MSN ID :khalidche...@hotmail.com Skype: k_chehab Web Site: http://www.icucall.com http://www.allohi.com image001.png___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] ACK Timer
This may work, only if you create dialog with 'B' flag, also 3 seconds look very short, destination must be very quick to ACK the call. I think there is a better way to achieve this, you only need to ensure CANCEL is received at destination. Thank you. On Tue, Feb 12, 2013 at 1:45 PM, M.Khaled W Chehab kche...@icucall.comwrote: Hi , ** ** I face a lot of scenarios where the customer send a cancel while the trunk send 200 OK and start the billing from its side ,so the client call will be canceled from his side and goes to the max call duration from my side and trunk side . Si I draw this function below loadmodule dialog.so modparam(dialog, timeout_avp, $avp(timeout2)) ** ** if (has_totag()) { if ( is_method(INVITE)) { $avp(timeout2) = 3; } else if (is_method(ACK)) { $avp(timeout2) = 3540; } ** ** Do this function effect on my calls or cause any problem ** ** Regards ** ** ** ** ** ** Khaled Chehab Senior NGN Engineer [image: Description: icucall] Operations Office - Lebanon Office: +961 1 515155 ext 300 Mobile : +961 3 045212 E-mail: kche...@icucall.com MSN ID :khalidche...@hotmail.com Skype: k_chehab Web Site: http://www.icucall.com http://www.allohi.com ** ** -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com image001.png___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] ACK Timer
Please can you show me by code the better way(ensure Cancel) since this is a critical issue and I am relaying the cancel and after that trunk send me more than 8 time 200 Ok ,as is there a way to stop/hangup the call since I receive the cancel from the client 2-what do you mean destination must be very quick ( since 200 oK is received the normal reply (ACK) takes millsec or I am wrong ? Regards From: Muhammad Shahzad [mailto:shaherya...@gmail.com] Sent: Tuesday, February 12, 2013 3:05 PM To: M.Khaled W Chehab Cc: users@lists.opensips.org; bog...@opensips.org; users-boun...@lists.opensips.org; Muhammad Shahzad Subject: Re: ACK Timer This may work, only if you create dialog with 'B' flag, also 3 seconds look very short, destination must be very quick to ACK the call. I think there is a better way to achieve this, you only need to ensure CANCEL is received at destination. Thank you. On Tue, Feb 12, 2013 at 1:45 PM, M.Khaled W Chehab kche...@icucall.com wrote: Hi , I face a lot of scenarios where the customer send a cancel while the trunk send 200 OK and start the billing from its side ,so the client call will be canceled from his side and goes to the max call duration from my side and trunk side . Si I draw this function below loadmodule dialog.so modparam(dialog, timeout_avp, $avp(timeout2)) if (has_totag()) { if ( is_method(INVITE)) { $avp(timeout2) = 3; } else if (is_method(ACK)) { $avp(timeout2) = 3540; } Do this function effect on my calls or cause any problem Regards Khaled Chehab Senior NGN Engineer Description: icucall Operations Office - Lebanon Office: +961 1 515155 ext 300 Mobile : +961 3 045212 E-mail: kche...@icucall.com MSN ID :khalidche...@hotmail.com Skype: k_chehab Web Site: http://www.icucall.com http://www.allohi.com -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: mailto:shari_78...@hotmail.com shari_78...@hotmail.com Email: mailto:shaherya...@googlemail.com shaherya...@googlemail.com image001.png___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] ACK Timer
Sorry i didn't see you are setting dialog timeout for sequential INVITE, instead of initial INVITE, so this timeout would actually have no effect on new call, it will effect only established call (e.g. when caller or callee sets call on hold etc.) and when that sequential INVITE comes in the destination has to accept it within 3 seconds, which is OK, since call is already established, only its state being changed. Secondly, a call is not considered established till ACK arrives from caller party. Since caller never sends ACK, so destination should end call (after 32 seconds per RFC 3261) even if it does not receives CANCEL from caller. And if destination receives CANCEL, then call should end anyway. Such call can not be billed, since it was never established. From billing the caller prospective, you should start billing upon receiving 200 OK from destination but you must discard it if CANCEL comes from caller instead of ACK. In fact i have seen some billing systems that actually start billing upon receiving ACK from caller, rather 200 OK from destination. To overcome the loss of few seconds (between 200 OK from destination and ACK from caller), they use a different billing head called connection charges. Thank you. On Tue, Feb 12, 2013 at 2:24 PM, M.Khaled W Chehab kche...@icucall.comwrote: Please can you show me by code the better way(ensure Cancel) since this is a critical issue and I am relaying the cancel and after that trunk send me more than 8 time 200 Ok ,as is there a way to stop/hangup the call since I receive the cancel from the client 2-what do you mean destination must be very quick ( since 200 oK is received the normal reply (ACK) takes millsec or I am wrong ? ** ** ** ** Regards ** ** *From:* Muhammad Shahzad [mailto:shaherya...@gmail.com] *Sent:* Tuesday, February 12, 2013 3:05 PM *To:* M.Khaled W Chehab *Cc:* users@lists.opensips.org; bog...@opensips.org; users-boun...@lists.opensips.org; Muhammad Shahzad *Subject:* Re: ACK Timer ** ** This may work, only if you create dialog with 'B' flag, also 3 seconds look very short, destination must be very quick to ACK the call. ** ** I think there is a better way to achieve this, you only need to ensure CANCEL is received at destination. Thank you. ** ** On Tue, Feb 12, 2013 at 1:45 PM, M.Khaled W Chehab kche...@icucall.com wrote: Hi , I face a lot of scenarios where the customer send a cancel while the trunk send 200 OK and start the billing from its side ,so the client call will be canceled from his side and goes to the max call duration from my side and trunk side . Si I draw this function below loadmodule dialog.so modparam(dialog, timeout_avp, $avp(timeout2)) if (has_totag()) { if ( is_method(INVITE)) { $avp(timeout2) = 3; } else if (is_method(ACK)) { $avp(timeout2) = 3540; } Do this function effect on my calls or cause any problem Regards Khaled Chehab Senior NGN Engineer [image: Description: icucall] Operations Office - Lebanon Office: +961 1 515155 ext 300 Mobile : +961 3 045212 E-mail: kche...@icucall.com MSN ID :khalidche...@hotmail.com Skype: k_chehab Web Site: http://www.icucall.com http://www.allohi.com ** ** -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com image001.png___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] ACK Timer
Ah, again typo, in last line of previous email, i meant to recover loss of few seconds between 200 OK and CANCEL from caller, (not ACK from caller, since ACK establishes a billable call). Thank you. On Tue, Feb 12, 2013 at 2:54 PM, Muhammad Shahzad shaherya...@gmail.comwrote: Sorry i didn't see you are setting dialog timeout for sequential INVITE, instead of initial INVITE, so this timeout would actually have no effect on new call, it will effect only established call (e.g. when caller or callee sets call on hold etc.) and when that sequential INVITE comes in the destination has to accept it within 3 seconds, which is OK, since call is already established, only its state being changed. Secondly, a call is not considered established till ACK arrives from caller party. Since caller never sends ACK, so destination should end call (after 32 seconds per RFC 3261) even if it does not receives CANCEL from caller. And if destination receives CANCEL, then call should end anyway. Such call can not be billed, since it was never established. From billing the caller prospective, you should start billing upon receiving 200 OK from destination but you must discard it if CANCEL comes from caller instead of ACK. In fact i have seen some billing systems that actually start billing upon receiving ACK from caller, rather 200 OK from destination. To overcome the loss of few seconds (between 200 OK from destination and ACK from caller), they use a different billing head called connection charges. Thank you. On Tue, Feb 12, 2013 at 2:24 PM, M.Khaled W Chehab kche...@icucall.comwrote: Please can you show me by code the better way(ensure Cancel) since this is a critical issue and I am relaying the cancel and after that trunk send me more than 8 time 200 Ok ,as is there a way to stop/hangup the call since I receive the cancel from the client 2-what do you mean destination must be very quick ( since 200 oK is received the normal reply (ACK) takes millsec or I am wrong ? ** ** ** ** Regards ** ** *From:* Muhammad Shahzad [mailto:shaherya...@gmail.com] *Sent:* Tuesday, February 12, 2013 3:05 PM *To:* M.Khaled W Chehab *Cc:* users@lists.opensips.org; bog...@opensips.org; users-boun...@lists.opensips.org; Muhammad Shahzad *Subject:* Re: ACK Timer ** ** This may work, only if you create dialog with 'B' flag, also 3 seconds look very short, destination must be very quick to ACK the call. ** ** I think there is a better way to achieve this, you only need to ensure CANCEL is received at destination. Thank you. ** ** On Tue, Feb 12, 2013 at 1:45 PM, M.Khaled W Chehab kche...@icucall.com wrote: Hi , I face a lot of scenarios where the customer send a cancel while the trunk send 200 OK and start the billing from its side ,so the client call will be canceled from his side and goes to the max call duration from my side and trunk side . Si I draw this function below loadmodule dialog.so modparam(dialog, timeout_avp, $avp(timeout2)) if (has_totag()) { if ( is_method(INVITE)) { $avp(timeout2) = 3; } else if (is_method(ACK)) { $avp(timeout2) = 3540; } Do this function effect on my calls or cause any problem Regards Khaled Chehab Senior NGN Engineer [image: Description: icucall] Operations Office - Lebanon Office: +961 1 515155 ext 300 Mobile : +961 3 045212 E-mail: kche...@icucall.com MSN ID :khalidche...@hotmail.com Skype: k_chehab Web Site: http://www.icucall.com http://www.allohi.com ** ** -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com -- Muhammad Shahzad --- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +49 176 99 83 10 85 MSN: shari_78...@hotmail.com Email: shaherya...@googlemail.com image001.png___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] [RELEASES] Drafting OpenSIPS 1.10.0 TODO list
Hi Saul, On 02/11/2013 01:38 PM, Saúl Ibarra Corretgé wrote: So, please do not be shy and make your points here ;). Also we plan a second round of discussion / selection via an IRC meeting (probably in 2 weeks or so). You asked for it :-) Here are 3 big items I think we should have in OpenSIPS: 1. Non-blocking TCP operations (this is already on the list) Indeed, this is already on the list, with fixes, improvements, etc 2. Outbound support (RFC5626) - supporting this may affect the design of point 1. I have this RFC on my list to read and see exactly what needs to be done to fully support it - I will add it on the list 3. WebSocket transport We do support the websocket as protocol in SIP, but we do not do gatewaying ..So you refer to the translation from websocket to SIP ? As for bug fixes, there are a few that come to mind: 1. Proper routing of in-dialog messages when GRUU is used. (the dialog should remember the path and loose_route should route the message to the right place even if an AoR is found in the contact, which happens when GRUU is used. This is a problem if a user re-registers while on a call and she chooses a different inbound proxy, as the in-dialog requests would now follow a different path). 2. PUA module should refresh outgoing subscriptions until told otherwise 3. presence_xml should validate incoming PIDF documents (validate them against the schema, that is). Right now it doesn't, and if a client sends a broken document then the aggregated PIDF document will also be broken. Those broken docs should not be stored. For the bugs, it will be really helpful if you would open tickets on SF tracker, with all the relevant information. It is an easy and centralized way to keep track of all reports ;) Best regards, Bogdan ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] [RELEASES] Drafting OpenSIPS 1.10.0 TODO list
Hi Saul, On 02/11/2013 05:38 PM, Saúl Ibarra Corretgé wrote: So, please do not be shy and make your points here ;). Also we plan a second round of discussion / selection via an IRC meeting (probably in 2 weeks or so). You asked for it :-) Here are 3 big items I think we should have in OpenSIPS: 1. Non-blocking TCP operations (this is already on the list) 2. Outbound support (RFC5626) - supporting this may affect the design of point 1. 3. WebSocket transport As for bug fixes, there are a few that come to mind: 1. Proper routing of in-dialog messages when GRUU is used. (the dialog should remember the path and loose_route should route the message to the right place even if an AoR is found in the contact, which happens when GRUU is used. This is a problem if a user re-registers while on a call and she chooses a different inbound proxy, as the in-dialog requests would now follow a different path). 2. PUA module should refresh outgoing subscriptions until told otherwise 3. presence_xml should validate incoming PIDF documents (validate them against the schema, that is). Right now it doesn't, and if a client sends a broken document then the aggregated PIDF document will also be broken. Those broken docs should not be stored. I can elaborate on any of the points in case there are any doubts :-) Oh, since I'm here, let me add one more thing: - Get rid of the lumps or add a way to apply all pending lumps to a message manually. This would fix a number of issues that can now happen, like using engage_mediaproxy and removing the SDP of a 183 response. I have on TODO list some fixup to deal with some cases (like adding a lump to a section that was removed) - this will solve most of the problems . We had a talk on that some time ago ;) - and I just added on the list. To apply changes in realtime will imply a tremendous work (to change in all modules), which I'm not so sure it will pay off. A really bad compromise will be a function to force the changes to be push, but IMHO this is a terrible hack and it will open Pandora's box for script writers. Regards, Bogdan ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Why is OpenSipS sending a 407
Hi Dovid, Because by default, the nonce re-usage is turn on in auth module - which means a nonce can be used for only a single auth processing! and in your case, same nonce is used in 2 auth cases. What you can do: 1) make processing in script stateful, so that the second SUBSCRIBE will be seen as a retransmission and will not hit the auth - use t_newtran() before the auth part. 2) disable the check for nonce reusage - see http://www.opensips.org/html/docs/modules/1.9.x/auth.html#id250176 Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/11/2013 09:08 PM, Dovid Bender wrote: Hi, Our set up is this: Client - OpenSipS - Custom BLF service (on port 5080). In the DP we have: if ( method == MESSAGE || method == NOTIFY || method == SUBSCRIBE || method == UNSUBSCRIBE ) { rewritehostport( 127.0.0.1:5080 ); route( 2 ); exit; Now we have some kind of issue with our BLF service where there is a delay on the response from it. This causes the phone to send another SUBSCRIBE. Here is what happens. 1) Phone (SUBSCRIBE) - OpenSips 2) Phone- (407 with nonce) OpenSIpS 3) Phone (SUBSCRIBE WITH nonce) - OpenSips 4) OpenSips - Custom BLF service (port 5080) There is no response and OpenSipS sends it again to port 5080 5) OpenSips - Custom BLF service (port 5080) 6) Phone (SUBSCRIBE WITH same nonce as earlier) - OpenSips 7) Phone- (407 with NEW nonce) OpenSIpS 8) OpenSipS- (100 trying) Custom BLF Service 9) OpenSIpS- (200 OK) Custom BLF service 10) Phone- (200 OK) OpenSiPS It seems that #9 and #10 are a result of #3. My question is why when the phone sends the subscribe again in #6 does OpenSipS respond with a new nonce and not to wait or something else along those lines. Yes I am using a really old version 1.4.4. Please see an ngrep trace below. U 2013/02/11 12:04:11.011210 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F. From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To:sip:51810...@nyc-02.mydomain.net. CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact:sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.011693 203.144.218.9:5060 - 67.198.80.143:22413 SIP/2.0 407 Proxy Authentication Required. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F;rport=22413;received=67.198.80.143 . From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net;tag=3cedc95538ff95eef7f88d49489ad924.2130 . CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Proxy-Authenticate: Digest realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055. Server: PBX_MANAGER. Content-Length: 0. Warning: 392 203.144.218.9:5060 Noisy feedback tells: pid=12565 req_src_ip=67.198.80.143 req_src_port=22413 in_uri=sip:51810...@nyc-02.mydomain.net out_uri=sip:51810...@nyc-02.mydomain.net via_cnt==1. . U 2013/02/11 12:04:11.036514 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKe11f68b965DEA98. From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To:sip:51810...@nyc-02.mydomain.net. CSeq: 2 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact:sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Proxy-Authorization: Digest username=51810401, realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055, uri=sip:51810...@nyc-02.mydomain.net, response=579c8a1809c8e4bc1d88c9b070185b11, algorithm=MD5. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.037479 203.144.218.9:5060 - 127.0.0.1:5080 SUBSCRIBE sip:51810402@127.0.0.1:5080;transport=udp SIP/2.0. Record-Route:sip:203.144.218.9;lr=on;ftag=892B04F3-2D3963A0. Via: SIP/2.0/UDP 203.144.218.9;branch=z9hG4bK315.0ca86cc.0. Via: SIP/2.0/UDP 10.0.0.102;rport=22413;received=67.198.80.143;branch=z9hG4bKe11f68b965DEA98. From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To:sip:51810...@nyc-02.mydomain.net. CSeq: 2 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact:sip:51810401@67.198.80.143:22413. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent:
Re: [OpenSIPS-Users] delete a binding in location database from the routing script
Hi Julien, Indeed, from script level you cannot remove a contact - but will not be hard to add something like that. Nevertheless, may I ask how do you figure out from script level if a registration must be removed ? (socket related evens are not visible from the script level) Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/12/2013 11:02 AM, Julien Chavanton wrote: Hi, I have a case where is would be helpful to delete a binding from the location database. For example, when we receive a socket reset or time-out while trying to use it. I believe it can be done trough the MI : ul rm username [contact URI] delete user's usrloc entries But I just wanted to confirm that currently it can not be done directly from the routing script ? ___ 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] Feature request: multiset cache interfaces and queued insertions
Hi Brett, While Couchbase supports such operations, I can't see that other familiar NoSQL back-ends support such multiset features. Could you give more examples of back-ends supporting this ? Also, it might be that doing delayed inserts for cache operations would lead to some tricky scenarios.. Like if you want to cache some information from a regular DB, you will end up first loading the info and storing it in memory, in order to do a multiset later when more set queries have piled up. Then when you'd need the key again, you would not find it ( since it's still in mem waiting to be flushed to the back-end ) and again fetch it from the DB and put it into memory waiting for the multi set. So it kind of breaks the cache concept ( that once you put something there, you'll find it next time ). Regards, Vlad Paiu OpenSIPS Developer http://www.opensips-solutions.com On 02/10/2013 11:17 PM, Brett Nemeroff wrote: Hey all, Quick feature request. Many of the cache back ends support multisets at once. I've seen tremendous speed improvements from multisets. In addition, maybe complementary, I'd like to see queues cache insertions. This is especially useful for using the cache interface for something like acc. The idea would be that it'll queue up insertions (set/add) nd maybe in a timer route or when some queued message count is hit, it'd multiset all if them at once. Doing one set with thousands of records is much faster than multiple connections to do the same Thanks! Brett -Brett ___ 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] Dialog ping question
Hi Brett, The dialog module will end the call on the next ping interval. What is the issue that you are having ? Best Regards, Vlad Paiu OpenSIPS Developer http://www.opensips-solutions.com On 02/08/2013 06:12 PM, Brett Nemeroff wrote: Hello List, Question regarding dialog pinging. If dialog pinging is enabled and so is the B flag, how long after a failed ping should opensips send the BYE in either direction? Thanks, Brett ___ 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] [OpenSIPS-Devel] [RELEASES] Drafting OpenSIPS 1.10.0 TODO list
Hi Bobby, Thanks for the feedback, see my inline comments. On 02/11/2013 06:32 PM, Bobby Smith wrote: 1) TCP fixes (async/non-blocking) -- I know these are already on the list, but as we move more and more traffic to TCP on older versions, we are seeing reduced performance and odd deadlocks/socket problems from time to time yes, this is a bit of a painful matter and it will be addressed in the next release. 2) better support of RFC 6140 (the gruu fixes that saul mentioned come to mind) OK, if you also have examples of cases which do not work, please fill in some bug reports on SF tracker - it will help the developers in fixing things. 3) not really related to the release, but representation at SIPNOC this year would be pretty awesome. A lot of people from the standards bodies meet here (IETF), and seeing some pursuit around sipconnect 1.1/2.0 would be great for the community IMO as most of the people here offering competing choices are vendors selling black box products, however there is asterisk representation and everyone uses SER in one flavor on their networks :). Indeed, it will be interested and useful, and I would love to do it if we find fonds to support the participation to such an event...as OSS project, there is no much income to help with the participation to various events. Best regards, Bogdan On Mon, Feb 11, 2013 at 10:38 AM, Saúl Ibarra Corretgé s...@ag-projects.com mailto:s...@ag-projects.com wrote: On Feb 11, 2013, at 12:38 PM, Saúl Ibarra Corretgé wrote: Hi Bogdan and team, On Feb 9, 2013, at 7:40 PM, Bogdan-Andrei Iancu wrote: Hi all, According the the release policy (http://www.opensips.org/Development/Development), I would like to call for a brainstorming, ideas, discussion, etc regarding what should be the roadmap for OpenSIPS 1.10 - more or less, what new goodies should be in 1.10 release (next major release). The page is already ready (http://www.opensips.org/Main/Ver1100) and pre-populated with the pending items from 1.9 release plus some items from my side . I would like to stat the discussion here, on the mailing list first, to get from all community ideas on what should be done in 1.10 - things to improve, supporting new RFC/drafts, new functionalitites, etc. So, please do not be shy and make your points here ;). Also we plan a second round of discussion / selection via an IRC meeting (probably in 2 weeks or so). You asked for it :-) Here are 3 big items I think we should have in OpenSIPS: 1. Non-blocking TCP operations (this is already on the list) 2. Outbound support (RFC5626) - supporting this may affect the design of point 1. 3. WebSocket transport As for bug fixes, there are a few that come to mind: 1. Proper routing of in-dialog messages when GRUU is used. (the dialog should remember the path and loose_route should route the message to the right place even if an AoR is found in the contact, which happens when GRUU is used. This is a problem if a user re-registers while on a call and she chooses a different inbound proxy, as the in-dialog requests would now follow a different path). 2. PUA module should refresh outgoing subscriptions until told otherwise 3. presence_xml should validate incoming PIDF documents (validate them against the schema, that is). Right now it doesn't, and if a client sends a broken document then the aggregated PIDF document will also be broken. Those broken docs should not be stored. I can elaborate on any of the points in case there are any doubts :-) Oh, since I'm here, let me add one more thing: - Get rid of the lumps or add a way to apply all pending lumps to a message manually. This would fix a number of issues that can now happen, like using engage_mediaproxy and removing the SDP of a 183 response. Regards, -- Saúl Ibarra Corretgé AG Projects ___ Devel mailing list de...@lists.opensips.org mailto:de...@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel ___ Devel mailing list de...@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Dialog ping question
I was expecting that every 30 seconds a ping goes out. If the ping gets a negative reply, it's immediately sent a BYE. The delay between the failure code and the BYE is causing some confusion. Not anything technically wrong with it, but not what's expected. Anyway to change that behavior? Can you check for failures immediately afterwards (maybe delay by an appropriate SIP timer length) before just waiting for the next cycle? Thanks, Brett On Tue, Feb 12, 2013 at 10:32 AM, Vlad Paiu vladp...@opensips.org wrote: ** Hi Brett, The dialog module will end the call on the next ping interval. What is the issue that you are having ? Best Regards, Vlad Paiu OpenSIPS Developerhttp://www.opensips-solutions.com On 02/08/2013 06:12 PM, Brett Nemeroff wrote: Hello List, Question regarding dialog pinging. If dialog pinging is enabled and so is the B flag, how long after a failed ping should opensips send the BYE in either direction? Thanks, Brett ___ 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] Feature request: multiset cache interfaces and queued insertions
Right it's mostly useful for append only operations like cdr writing. Of course you'll be able to do alot of that via the acc module, but this lets you write all sorts of other analytics at high insertion rate as well. Oh and speaking of append only... Couchbase does support an append method that would be nice to expose to the script as well. :) Thanks for your time Vlad, Brett On Tue, Feb 12, 2013 at 10:24 AM, Vlad Paiu vladp...@opensips.org wrote: Hi Brett, While Couchbase supports such operations, I can't see that other familiar NoSQL back-ends support such multiset features. Could you give more examples of back-ends supporting this ? Also, it might be that doing delayed inserts for cache operations would lead to some tricky scenarios.. Like if you want to cache some information from a regular DB, you will end up first loading the info and storing it in memory, in order to do a multiset later when more set queries have piled up. Then when you'd need the key again, you would not find it ( since it's still in mem waiting to be flushed to the back-end ) and again fetch it from the DB and put it into memory waiting for the multi set. So it kind of breaks the cache concept ( that once you put something there, you'll find it next time ). Regards, Vlad Paiu OpenSIPS Developer http://www.opensips-solutions.**com http://www.opensips-solutions.com On 02/10/2013 11:17 PM, Brett Nemeroff wrote: Hey all, Quick feature request. Many of the cache back ends support multisets at once. I've seen tremendous speed improvements from multisets. In addition, maybe complementary, I'd like to see queues cache insertions. This is especially useful for using the cache interface for something like acc. The idea would be that it'll queue up insertions (set/add) nd maybe in a timer route or when some queued message count is hit, it'd multiset all if them at once. Doing one set with thousands of records is much faster than multiple connections to do the same Thanks! Brett -Brett __**_ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-**bin/mailman/listinfo/usershttp://lists.opensips.org/cgi-bin/mailman/listinfo/users __**_ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-**bin/mailman/listinfo/usershttp://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] add sdp on 180 Ringing and play file as ringback tone
Hi, I wondering if it posiible to add sdp on 180 ringing in order to play some ringing tone. The ideea si that i want to play from rtpproxy with rtpproxy_stream2uac/rtpproxy_stream2uas some music as ringback tone to calling party if it's online. -- Dani Popa ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] (sl_)send_reply in dialog
Hi all. In REQUEST_ROUTE I have: if (!sipmsg_validate()) { xlog(L_WARN, {main} sipmsg_validate() failed [$rc] - bailing out); send_reply(400, Bad Request); exit; } I recently had a case where an in-dialog ACK (to be exact: the ACK that is sent by the caller in response to 487 Request Canceled, after he has cancelled the call before callee picked up) caused sipmsg_validate() to complain. The complain as such was ok, since the ACK did miss the mandatory Max-Forwards header [1]. However, I found that in this case OpenSIPS did not send a 400 Bad Request. Switching from send_reply() to sl_send_reply() didn't help either. I'm pretty sure this is to be expected, but still I would like to understand the reason for that behaviour - can anyone help? Bye, Mike [1] For those who are interested, the caller was a AVM Fritz!Box FON 7270 with a late 2011 firmware. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Why is OpenSipS sending a 407
You need to use t_check_trans(); right after CANCEL processing, this will absorb re-transmission of SUBSCRIBE or whatever method that may be, e.g. # CANCEL processing if (is_method(CANCEL)) { if (t_check_trans()) { t_relay(); }; exit; }; t_check_trans(); Thank you. On Mon, Feb 11, 2013 at 8:08 PM, Dovid Bender os-l...@dovid.net wrote: Hi, Our set up is this: Client - OpenSipS - Custom BLF service (on port 5080). In the DP we have: if ( method == MESSAGE || method == NOTIFY || method == SUBSCRIBE || method == UNSUBSCRIBE ) { rewritehostport( 127.0.0.1:5080 ); route( 2 ); exit; Now we have some kind of issue with our BLF service where there is a delay on the response from it. This causes the phone to send another SUBSCRIBE. Here is what happens. 1) Phone (SUBSCRIBE) - OpenSips 2) Phone - (407 with nonce) OpenSIpS 3) Phone (SUBSCRIBE WITH nonce) - OpenSips 4) OpenSips - Custom BLF service (port 5080) There is no response and OpenSipS sends it again to port 5080 5) OpenSips - Custom BLF service (port 5080) 6) Phone (SUBSCRIBE WITH same nonce as earlier) - OpenSips 7) Phone - (407 with NEW nonce) OpenSIpS 8) OpenSipS - (100 trying) Custom BLF Service 9) OpenSIpS - (200 OK) Custom BLF service 10) Phone - (200 OK) OpenSiPS It seems that #9 and #10 are a result of #3. My question is why when the phone sends the subscribe again in #6 does OpenSipS respond with a new nonce and not to wait or something else along those lines. Yes I am using a really old version 1.4.4. Please see an ngrep trace below. U 2013/02/11 12:04:11.011210 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F. From: John Doe sip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net. CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact: sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.011693 203.144.218.9:5060 - 67.198.80.143:22413 SIP/2.0 407 Proxy Authentication Required. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F;rport=22413;received=67.198.80.143 . From: John Doe sip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net ;tag=3cedc95538ff95eef7f88d49489ad924.2130 . CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Proxy-Authenticate: Digest realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055. Server: PBX_MANAGER. Content-Length: 0. Warning: 392 203.144.218.9:5060 Noisy feedback tells: pid=12565 req_src_ip=67.198.80.143 req_src_port=22413 in_uri=sip:51810...@nyc-02.mydomain.net out_uri=sip:51810...@nyc-02.mydomain.net via_cnt==1. . U 2013/02/11 12:04:11.036514 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKe11f68b965DEA98. From: John Doe sip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net. CSeq: 2 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact: sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Proxy-Authorization: Digest username=51810401, realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055, uri=sip:51810...@nyc-02.mydomain.net, response=579c8a1809c8e4bc1d88c9b070185b11, algorithm=MD5. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.037479 203.144.218.9:5060 - 127.0.0.1:5080 SUBSCRIBE sip:51810402@127.0.0.1:5080;transport=udp SIP/2.0. Record-Route: sip:203.144.218.9;lr=on;ftag=892B04F3-2D3963A0. Via: SIP/2.0/UDP 203.144.218.9;branch=z9hG4bK315.0ca86cc.0. Via: SIP/2.0/UDP 10.0.0.102;rport=22413;received=67.198.80.143;branch=z9hG4bKe11f68b965DEA98. From: John Doe sip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net. CSeq: 2 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact: sip:51810401@67.198.80.143:22413. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml.
Re: [OpenSIPS-Users] delete a binding in location database from the routing script
Hi Julien, yes, signaling based events (like a rejection or timeout from the user) may be considered a good reason to delete his registration. Now, on Transport related error from OpenSIPS itself: UDP - there is no way to get the potential ICMP errors :( TCP - the t_relay() function do return with error if it failed to put the message on the network. We need to work out some specific return code to indicate a net err. Let me add these 2 things on the TODO list for 1.10 - removing contacts and NET indication from t_relay . Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/12/2013 06:20 PM, Julien Chavanton wrote: Hi, With Opensips we can use timeout, for example after sending an INVITE if we do not receive any provisional responses after 32 seconds, this registration binding should be refreshed / recreated. Some equipments are generating 503 when they face a transport layer failure, we found out that this is quite reliable. In our case it would be best to delete the binding to avoid loosing time trying to use when we know is is not working. Is there a way to detecting transport layer failure in Opensips ? (TCP RST) 8.1.3.1 Transaction Layer Errors In some cases, the response returned by the transaction layer will not be a SIP message, but rather a transaction layer error. When a timeout error is received from the transaction layer, it MUST be treated as if a 408 (Request Timeout) status code has been received. If a fatal transport error is reported by the transport layer (generally, due to fatal ICMP errors in UDP or connection failures in TCP), the condition MUST be treated as a 503 (Service Unavailable) status code. On Tue, Feb 12, 2013 at 4:46 PM, Bogdan-Andrei Iancu bog...@opensips.org mailto:bog...@opensips.org wrote: Hi Julien, Indeed, from script level you cannot remove a contact - but will not be hard to add something like that. Nevertheless, may I ask how do you figure out from script level if a registration must be removed ? (socket related evens are not visible from the script level) Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/12/2013 11:02 AM, Julien Chavanton wrote: Hi, I have a case where is would be helpful to delete a binding from the location database. For example, when we receive a socket reset or time-out while trying to use it. I believe it can be done trough the MI : ul rm username [contact URI] delete user's usrloc entries But I just wanted to confirm that currently it can not be done directly from the routing script ? ___ Users mailing list Users@lists.opensips.org mailto: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] (sl_)send_reply in dialog
Hi Michael, ACK requests do not have replies :) - this is RFC3261. Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/12/2013 08:14 PM, Michael Renzmann wrote: Hi all. In REQUEST_ROUTE I have: if (!sipmsg_validate()) { xlog(L_WARN, {main} sipmsg_validate() failed [$rc] - bailing out); send_reply(400, Bad Request); exit; } I recently had a case where an in-dialog ACK (to be exact: the ACK that is sent by the caller in response to 487 Request Canceled, after he has cancelled the call before callee picked up) caused sipmsg_validate() to complain. The complain as such was ok, since the ACK did miss the mandatory Max-Forwards header [1]. However, I found that in this case OpenSIPS did not send a 400 Bad Request. Switching from send_reply() to sl_send_reply() didn't help either. I'm pretty sure this is to be expected, but still I would like to understand the reason for that behaviour - can anyone help? Bye, Mike [1] For those who are interested, the caller was a AVM Fritz!Box FON 7270 with a late 2011 firmware. ___ 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] add sdp on 180 Ringing and play file as ringback tone
Although I do not believe it is technically a violation of the RFC, it is not recommended best practice, and would be a rare implementation. The most common way to support ringback (early media) is with a 183 w/SDP session progress. For a little more information: http://wiki.freeswitch.org/wiki/180_vs._183_vs._Early_Media Of course some googling will give you tons more opinions about ring back and early media. -dg On Tue, Feb 12, 2013 at 10:04 AM, Dani Popa dani.p...@gmail.com wrote: Hi, I wondering if it posiible to add sdp on 180 ringing in order to play some ringing tone. The ideea si that i want to play from rtpproxy with rtpproxy_stream2uac/rtpproxy_stream2uas some music as ringback tone to calling party if it's online. -- Dani Popa ___ 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] add sdp on 180 Ringing and play file as ringback tone
I just want to play media on replay route in case of 18[013] reply, so i'm sure the user was alerted if i got one of them, i'm pretty sure is not the case from the link below and also inserted media is not a fake ringback. Thanks anyway! Dani Popa On Feb 13, 2013, at 0:56, Daniel Goepp d...@goepp.net wrote: Although I do not believe it is technically a violation of the RFC, it is not recommended best practice, and would be a rare implementation. The most common way to support ringback (early media) is with a 183 w/SDP session progress. For a little more information: http://wiki.freeswitch.org/wiki/180_vs._183_vs._Early_Media Of course some googling will give you tons more opinions about ring back and early media. -dg On Tue, Feb 12, 2013 at 10:04 AM, Dani Popa dani.p...@gmail.com wrote: Hi, I wondering if it posiible to add sdp on 180 ringing in order to play some ringing tone. The ideea si that i want to play from rtpproxy with rtpproxy_stream2uac/rtpproxy_stream2uas some music as ringback tone to calling party if it's online. -- Dani Popa ___ 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 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] add sdp on 180 Ringing and play file as ringback tone
I know there is a perl script that does the opposite, take a 183, and convert to a 180: http://www.opensips.org/Resources/DocsTutPerl183to180 Perhaps you could do something like this to take a 180, and convert to a 183 w/SDP? The link I sent was really just conversational, not intended to be an example of how to do it, just some info on the difference, and why it's not recommended to do a 180 w/SDP, as that removes local custom ringtones. I do think that what you want to do is a 183 with early media, not just append an SDP to a 180. Good luck though:) -dg On Tue, Feb 12, 2013 at 3:28 PM, Dani Popa dani.p...@gmail.com wrote: I just want to play media on replay route in case of 18[013] reply, so i'm sure the user was alerted if i got one of them, i'm pretty sure is not the case from the link below and also inserted media is not a fake ringback. Thanks anyway! Dani Popa On Feb 13, 2013, at 0:56, Daniel Goepp d...@goepp.net wrote: Although I do not believe it is technically a violation of the RFC, it is not recommended best practice, and would be a rare implementation. The most common way to support ringback (early media) is with a 183 w/SDP session progress. For a little more information: http://wiki.freeswitch.org/wiki/180_vs._183_vs._Early_Media Of course some googling will give you tons more opinions about ring back and early media. -dg On Tue, Feb 12, 2013 at 10:04 AM, Dani Popa dani.p...@gmail.com wrote: Hi, I wondering if it posiible to add sdp on 180 ringing in order to play some ringing tone. The ideea si that i want to play from rtpproxy with rtpproxy_stream2uac/rtpproxy_stream2uas some music as ringback tone to calling party if it's online. -- Dani Popa ___ 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 ___ 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] Why is OpenSipS sending a 407
Bogdan, I had a look at: http://www.opensips.org/html/docs/modules/1.9.x/auth.html#id250176 and I read what it said. Does this mean that anyone that knows my nonce can make a call and get through to my OpenSipS or is it only an issue if we have multiple boxes? Regards, Dovid -Original Message- From: Bogdan-Andrei Iancu [mailto:bog...@opensips.org] Sent: Tuesday, February 12, 2013 10:45 To: OpenSIPS users mailling list Cc: Dovid Bender Subject: Re: [OpenSIPS-Users] Why is OpenSipS sending a 407 Hi Dovid, Because by default, the nonce re-usage is turn on in auth module - which means a nonce can be used for only a single auth processing! and in your case, same nonce is used in 2 auth cases. What you can do: 1) make processing in script stateful, so that the second SUBSCRIBE will be seen as a retransmission and will not hit the auth - use t_newtran() before the auth part. 2) disable the check for nonce reusage - see http://www.opensips.org/html/docs/modules/1.9.x/auth.html#id250176 Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 02/11/2013 09:08 PM, Dovid Bender wrote: Hi, Our set up is this: Client - OpenSipS - Custom BLF service (on port 5080). In the DP we have: if ( method == MESSAGE || method == NOTIFY || method == SUBSCRIBE || method == UNSUBSCRIBE ) { rewritehostport( 127.0.0.1:5080 ); route( 2 ); exit; Now we have some kind of issue with our BLF service where there is a delay on the response from it. This causes the phone to send another SUBSCRIBE. Here is what happens. 1) Phone (SUBSCRIBE) - OpenSips 2) Phone- (407 with nonce) OpenSIpS 3) Phone (SUBSCRIBE WITH nonce) - OpenSips 4) OpenSips - Custom BLF service (port 5080) There is no response and OpenSipS sends it again to port 5080 5) OpenSips - Custom BLF service (port 5080) 6) Phone (SUBSCRIBE WITH same nonce as earlier) - OpenSips 7) Phone- (407 with NEW nonce) OpenSIpS 8) OpenSipS- (100 trying) Custom BLF Service 9) OpenSIpS- (200 OK) Custom BLF service 10) Phone- (200 OK) OpenSiPS It seems that #9 and #10 are a result of #3. My question is why when the phone sends the subscribe again in #6 does OpenSipS respond with a new nonce and not to wait or something else along those lines. Yes I am using a really old version 1.4.4. Please see an ngrep trace below. U 2013/02/11 12:04:11.011210 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F. From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To:sip:51810...@nyc-02.mydomain.net. CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact:sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.011693 203.144.218.9:5060 - 67.198.80.143:22413 SIP/2.0 407 Proxy Authentication Required. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKbf285746A6088D1F;rport=22413;received=67.198.80.143 . From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To: sip:51810...@nyc-02.mydomain.net;tag=3cedc95538ff95eef7f88d49489ad924.2130 . CSeq: 1 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Proxy-Authenticate: Digest realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055. Server: PBX_MANAGER. Content-Length: 0. Warning: 392 203.144.218.9:5060 Noisy feedback tells: pid=12565 req_src_ip=67.198.80.143 req_src_port=22413 in_uri=sip:51810...@nyc-02.mydomain.net out_uri=sip:51810...@nyc-02.mydomain.net via_cnt==1. . U 2013/02/11 12:04:11.036514 67.198.80.143:22413 - 203.144.218.9:5060 SUBSCRIBE sip:51810...@nyc-02.mydomain.net SIP/2.0. Via: SIP/2.0/UDP 10.0.0.102;branch=z9hG4bKe11f68b965DEA98. From: John Doesip:51810...@nyc-02.mydomain.net;tag=892B04F3-2D3963A0. To:sip:51810...@nyc-02.mydomain.net. CSeq: 2 SUBSCRIBE. Call-ID: 5a00cffc-a02c6e6d-59dbeb42@10.0.0.102. Contact:sip:51810401@10.0.0.102. Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER. Event: dialog. User-Agent: PolycomSoundPointIP-SPIP_550-UA/3.3.3.0069. Accept-Language: en. Accept: application/dialog-info+xml. Proxy-Authorization: Digest username=51810401, realm=nyc-02.mydomain.net, nonce=511924a95c1ba157752dafbb90e3ea950be45fe6a055, uri=sip:51810...@nyc-02.mydomain.net, response=579c8a1809c8e4bc1d88c9b070185b11, algorithm=MD5. Max-Forwards: 70. Expires: 120. Content-Length: 0. . U 2013/02/11 12:04:11.037479 203.144.218.9:5060 - 127.0.0.1:5080 SUBSCRIBE
[OpenSIPS-Users] Presence Module-restricting user from changing presence
Hi I have integrated OpenSIPS presence Module with OpenIMS. Now, I am able to see presence on user;s in client Alice and Bob. I want to restrict users ALice and Bob from changing their presence, i.e after Alice registers, it should be shown available. After that even if Alice wants to change its status to busy or away, It should not be able to do it. Also, once Alice de-registers, it should show offline. Is their a way in OpenSIPS to do the same at OpenSIPS server end?? -- Thanks and Regards Garima Sharma ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] add sdp on 180 Ringing and play file as ringback tone
Thank you, Dani On Wed, Feb 13, 2013 at 2:00 AM, Daniel Goepp d...@goepp.net wrote: I know there is a perl script that does the opposite, take a 183, and convert to a 180: http://www.opensips.org/Resources/DocsTutPerl183to180 Perhaps you could do something like this to take a 180, and convert to a 183 w/SDP? The link I sent was really just conversational, not intended to be an example of how to do it, just some info on the difference, and why it's not recommended to do a 180 w/SDP, as that removes local custom ringtones. I do think that what you want to do is a 183 with early media, not just append an SDP to a 180. Good luck though:) -dg On Tue, Feb 12, 2013 at 3:28 PM, Dani Popa dani.p...@gmail.com wrote: I just want to play media on replay route in case of 18[013] reply, so i'm sure the user was alerted if i got one of them, i'm pretty sure is not the case from the link below and also inserted media is not a fake ringback. Thanks anyway! Dani Popa On Feb 13, 2013, at 0:56, Daniel Goepp d...@goepp.net wrote: Although I do not believe it is technically a violation of the RFC, it is not recommended best practice, and would be a rare implementation. The most common way to support ringback (early media) is with a 183 w/SDP session progress. For a little more information: http://wiki.freeswitch.org/wiki/180_vs._183_vs._Early_Media Of course some googling will give you tons more opinions about ring back and early media. -dg On Tue, Feb 12, 2013 at 10:04 AM, Dani Popa dani.p...@gmail.com wrote: Hi, I wondering if it posiible to add sdp on 180 ringing in order to play some ringing tone. The ideea si that i want to play from rtpproxy with rtpproxy_stream2uac/rtpproxy_stream2uas some music as ringback tone to calling party if it's online. -- Dani Popa ___ 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 ___ 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 -- Dani Popa ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] (sl_)send_reply in dialog
Hi Bogdan. ACK requests do not have replies :) - this is RFC3261. Doh! Indeed, that makes perfect sense. I'm still new to this stuff, got a lot left to lern... Bye, Mike ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users