[reSIProcate] ClientRegistration::requestRefresh does not work

Scott Godin slgodin at icescape.com
Fri Oct 13 12:30:23 CDT 2006


There is currently no way to do that.

 

From: Ali Pey [mailto:alipey at gmail.com] 
Sent: Friday, October 13, 2006 1:25 PM
To: Scott Godin
Cc: resiprocate-devel at list.sipfoundry.org
Subject: Re: ClientRegistration::requestRefresh does not work

 

I was thinking of the time when you are not registered and you would
want to trigger registration. 

For instance if the reregistration retry time is 5 minutes and you don't
want to wait for 5 minutes and you would like to trigger registration
earlier for a particular scenario. 

Is there anyway to do that?

I guess one way would be to reduce the retry time, but that would create
more network traffic.

Regards,
Ali



On 10/13/06, Scott Godin <slgodin at icescape.com> wrote:

Looking at the code, the state is changed to either RetryAdding or
RetryRefreshing.

 

requestRefresh can only be called if you are successfully registered,
and you want to refresh before the timeout interval.

 

From: Ali Pey [mailto:alipey at gmail.com] 
Sent: Thursday, October 12, 2006 3:46 PM
To: Scott Godin
Cc: resiprocate-devel at list.sipfoundry.org
Subject: DUM: ClientRegistration::requestRefresh does not work

 


If the registration fails or times out, the client is not registered
anymore, however, the mState is still registered. If you requestRefresh
at this point, it would not work.

The mState should be reset after registration failure or time out. 

Scott,
Can you put this fix in as well please?

Thanks,
Ali

On 10/12/06, Scott Godin < slgodin at icescape.com
<mailto:slgodin at icescape.com> > wrote:

You can store the handle after you get the first onSuccess or onFailure
call.   Unfortunately - I don't think you get the handle before these
callbacks.

 

From: Ali Pey [mailto:alipey at gmail.com ] 
Sent: Thursday, October 12, 2006 1:13 PM


To: Scott Godin
Cc: resiprocate-devel at list.sipfoundry.org
Subject: Re: [reSIProcate] DUM: Registration is not updated after time
out

 

How would I call ClientRegistration::requestRefresh? 
There is no handle in DUM that I can call this from my application.

On 10/12/06, Scott Godin < slgodin at icescape.com
<mailto:slgodin at icescape.com> > wrote:

I will apply this fix - thanks.

 

You can use ClientRegistration::requestRefresh in order to request an
immediate refresh before the timeout interval.

 

________________________________

From: Ali Pey [mailto:alipey at gmail.com ] 
Sent: Thursday, October 12, 2006 9:32 AM
To: Scott Godin
Cc: resiprocate-devel at list.sipfoundry.org


Subject: Re: [reSIProcate] DUM: Registration is not updated after time
out

 

ClientRegistration can set mUserRefresh = true after onFailure and
onRequestRetry. This way it will call onSuccess after successful
re-registration. 

I tested it and it worked fine. Should I submit the fix? if yes how?

You also mentioned " You normally only get an onSuccess if you did
something to invoke the registration." How would I invoke registration?
Let's say the application needs a fresh registration again before it
times out or while it's waiting for re-registration. 
This can be quite useful if the far end is not reachable or the user
tries to make a call and you are not registered at that moment.

Thanks,
Ali

On 10/12/06, Scott Godin < slgodin at icescape.com
<mailto:slgodin at icescape.com> > wrote:

Ah I see.  I agree - there should be an onSuccess call, if there was a
previous onFailure.

 

________________________________

From: Ali Pey [mailto: alipey at gmail.com ] 
Sent: Thursday, October 12, 2006 9:13 AM
To: Scott Godin; resiprocate-devel at list.sipfoundry.org
Subject: Re: [reSIProcate] DUM: Registration is not updated after time
out

 

Here is the scenario:

1- ClientRegistration registers with a Registrar Server successfully. If
calls onSuccess on the handler so your application knows that you are
registered. The Re-Registration time is set to 30 second. 

2- Registrar Server is not reachable. ClientRegistration can not
register any more. It times out and it calls onRequestRetry on the
handler. The application now knows that it's not connected to the
server. 

3- Link is back up. ClientRegistration successfully re-registers with
the Registrar Server. The handler/application does not get notified so
your application thinks that it's still not registered.

The application or handler needs to be notified that it is registered
with the server and can provide service to the user. 

Am I missing something?

Regards,
Ali

On 10/11/06, Scott Godin < slgodin at icescape.com
<mailto:slgodin at icescape.com> > wrote:

This behavior is intentional.  You normally only get an onSuccess if you
did something to invoke the registration.  Automatic re-registrations
only callback if there is a failure.

 

From: resiprocate-devel-bounces at list.sipfoundry.org
[mailto:resiprocate-devel-bounces at list.sipfoundry.org ] On Behalf Of Ali
Pey
Sent: Wednesday, October 11, 2006 4:55 PM
To: resiprocate-devel at list.sipfoundry.org
Subject: [reSIProcate] DUM: Registration is not updated after time out

 

Hi There,

I found and fixed a bug with DUM's ClientRegistration. 

ClinentRegistration class calls the handler's onFailure or
onRequestRetry if the registration fails or times out. However, it won't
call onSuccess when it successfully re-registers. 

Is there a process for submitting fixes to resiprocate/DUM?
What do I need to do?

Cheers,
Ali

 

 

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20061013/60b2c4ee/attachment.htm>


More information about the resiprocate-devel mailing list