I am developing 3 functions with the perl module :<br> => proxy_registered (REQUEST_ROUTE) : returns the registration status which can be :<br> - registered<br> - must challenge the registrar proxy<br> - not registed<br>
- too fast: retry later<br><br>=> proxy_challenge (REQUEST_ROUTE) :<br> - records the contact in the database with a registration flag set to null<br> - fixes the expire parameter of the current SIP request<br>
<br>=> proxy_challenge_result (REPLY_ROUTE) :<br> - changes or not the registration flag in the database<br> - fixes the expire parameter in the database<br> - fixes the expire parameter of the current reply<br>
<br>What do you think about it ?<br>Next week, I will make some tests with these functions.<br>If its work correctly, I have planned to write a module to improve performance.<br><br>Best Regards,<br><br>-- <br>Julien Mangeard<br>
<br><div class="gmail_quote">On Fri, Jun 20, 2008 at 10:14 AM, Daniel-Constantin Mierla <<a href="mailto:miconda@gmail.com">miconda@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello,<div><div></div><div class="Wj3C7c"><br>
<br>
On 06/15/08 13:11, Julien mangeard wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br>
<br>
I try to use Openser for caching REGISTER requests.<br>
Openser server is between UA and SIP registrar server.<br>
<br>
First register :<br>
The UA sends a REGISTER request.<br>
Openser server changes the expire value (with bigger value) and it relays these request to the SIP registrar server.<br>
SIP registrar server responses with a challenge. The Openser relays this challenge to the UA.<br>
<br>
The UA reponses to this challenge.<br>
The Openser relays the message to the SIP registrar server.<br>
When the SIP registrar server responses with "200 OK", Openser server add a record in it own location database.<br>
<br>
Second register :<br>
The UA send a REGISTER request.<br>
The UA is in the Openser location database and the session is not expire.<br>
Openser responses "200 OK" without forwarding the request to SIP registrar server.<br>
<br>
I've make a schema with the expected registration flow : <a href="http://img225.imageshack.us/img225/930/registerlj0.png" target="_blank">http://img225.imageshack.us/img225/930/registerlj0.png</a>.<br>
<br>
What do you think about it ?<br>
Can I do this kind of configuration with existing Openser module ?<br>
</blockquote>
<br></div></div>
is openser acting as registrar as well (for messages 9 and 11)? Practically it is possible, but take care of 200ok replies from registrar, because they can have expires parameter with the value you updated in REGISTER -- you have to restore it back to initial value in order to achieve what you want.<br>
<br>
Cheers,<br>
Daniel<div class="Ih2E3d"><br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
Best Regards,<br>
<br>
-- <br>
Julien Mangeard<br>
06.84.39.57.78<br>
<br>
</blockquote>
-- <br>
</div><a href="http://www.asipto.com" target="_blank">http://www.asipto.com</a><br>
<br>
</blockquote></div><br>