<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
<pre wrap="">I could implement openser as a registrar(only) server .Thanks to the team<span
 class="moz-txt-citetags"> </span>openser for the timely help.I would like to know what all can be done using
<span class="moz-txt-citetags"> </span>openser/kamailio as a registrar server alone. i.e. in the real world<span
 class="moz-txt-citetags"> </span>scenario how does openser can be useful as a registrar sever alone.I would
<span class="moz-txt-citetags"> </span>like to make myself clear by pointing to the below example. i can integrate<span
 class="moz-txt-citetags"> </span>openser and asterisk and make openser as a registrar (only)server and can
<span class="moz-txt-citetags"> </span>make use of asterisk for call functionality purposes.. Similarly, i would<span
 class="moz-txt-citetags"> </span>like to know where openser fits in (openser should only be used as a
<span class="moz-txt-citetags"> </span>registrar server again).
<span class="moz-txt-citetags"> </span>Your responses can speed up my research work..
<span class="moz-txt-citetags"></span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>Sa&uacute;l Ibarra wrote:
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>You are doing save_location before authentication. You should first
<span class="moz-txt-citetags">&gt; </span>challenge the REGISTER for authentication and then do save_location.
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>2009/10/6, Rajesh <a
 class="moz-txt-link-rfc2396E"
 href="mailto:Rajesh.sreedharan@siptech.com">&lt;Rajesh.sreedharan@siptech.com&gt;</a>:
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>Dear All,
<span class="moz-txt-citetags">&gt; </span>                I would like my kamailio server to act (only) as a
<span class="moz-txt-citetags">&gt; </span>Registrar  server. I  have configured my kamilio for performing
<span class="moz-txt-citetags">&gt; </span>authentication successfully, but this time i find that authentication is
<span class="moz-txt-citetags">&gt; </span>not being done.Your views on my cfg is greatly appreciated.
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># ------------------ module loading ----------------------------------
<span class="moz-txt-citetags">&gt; </span>debug=3
<span class="moz-txt-citetags">&gt; </span>log_stderror=yes
<span class="moz-txt-citetags">&gt; </span>mpath="<i
 class="moz-txt-slash"><span class="moz-txt-tag">/</span>usr/local/lib/kamailio/modules<span
 class="moz-txt-tag">/</span></i>"
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>loadmodule "db_mysql.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "mi_fifo.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "sl.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "pv.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "usrloc.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "registrar.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "textops.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "uri_db.so"
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>loadmodule "auth.so"
<span class="moz-txt-citetags">&gt; </span>loadmodule "auth_db.so"
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>port=5060
<span class="moz-txt-citetags">&gt; </span># ----------------- setting module-specific parameters ---------------
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># ----- mi_fifo params -----
<span class="moz-txt-citetags">&gt; </span>modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># ----- auth_db params -----
<span class="moz-txt-citetags">&gt; </span>/* uncomment the following lines if you want to enable the DB based
<span class="moz-txt-citetags">&gt; </span>   authentication */
<span class="moz-txt-citetags">&gt; </span>modparam("auth_db", "calculate_ha1", yes)
<span class="moz-txt-citetags">&gt; </span>modparam("auth_db", "password_column", "password")
<span class="moz-txt-citetags">&gt; </span>modparam("auth_db", "db_url","mysql://openser:openserrw@localhost/openser")
<span class="moz-txt-citetags">&gt; </span>modparam("auth_db", "load_credentials", "")
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># -- usrloc params --
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>modparam("usrloc", "db_url",
<span class="moz-txt-citetags">&gt; </span><a
 class="moz-txt-link-rfc2396E"
 href="mailto:mysql://openser:openserrw@192.168.64.75/openser">"mysql://openser:openserrw@192.168.64.75/openser"</a>)
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>modparam("usrloc", "db_mode", 3)
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># -------------------------  request routing logic -------------------
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># main routing logic
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>route{
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>       # initial sanity checks -- too long messages
<span class="moz-txt-citetags">&gt; </span>       if (msg:len &gt;=  2048 ) {
<span class="moz-txt-citetags">&gt; </span>               sl_send_reply("513", "Message too big");
<span class="moz-txt-citetags">&gt; </span>               exit;
<span class="moz-txt-citetags">&gt; </span>       };
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>       if (!uri==myself) {
<span class="moz-txt-citetags">&gt; </span>               sl_send_reply("400", "Bad destination, only register
<span class="moz-txt-citetags">&gt; </span>messages destined for this server are accepted");
<span class="moz-txt-citetags">&gt; </span>               exit;
<span class="moz-txt-citetags">&gt; </span>       };
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>       # the only valid message for the registrar is the register message
<span class="moz-txt-citetags">&gt; </span>       # other messages are answered with an error message
<span class="moz-txt-citetags">&gt; </span>       if (uri==myself) {
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>               if (method=="REGISTER") {
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>                       sl_send_reply("100", "Trying");
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>                       if(!save("location")) {
<span class="moz-txt-citetags">&gt; </span>                               sl_reply_error();
<span class="moz-txt-citetags">&gt; </span>                       };
<span class="moz-txt-citetags">&gt; </span>                       exit;
<span class="moz-txt-citetags">&gt; </span>               } else {
<span class="moz-txt-citetags">&gt; </span>                       sl_send_reply("403", "Forbidden");
<span class="moz-txt-citetags">&gt; </span>                       exit;
<span class="moz-txt-citetags">&gt; </span>               };
<span class="moz-txt-citetags">&gt; </span>       };
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span># Authentication route
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>    if (is_method("REGISTER"))
<span class="moz-txt-citetags">&gt; </span>    {
<span class="moz-txt-citetags">&gt; </span>        # authenticate the REGISTER requests (uncomment to enable auth)
<span class="moz-txt-citetags">&gt; </span>        if (!www_authorize("192.168.64.75", "subscriber"))
<span class="moz-txt-citetags">&gt; </span>        {
<span class="moz-txt-citetags">&gt; </span>            www_challenge("192.168.64.75", "0");
<span class="moz-txt-citetags">&gt; </span>            exit;
<span class="moz-txt-citetags">&gt; </span>        }
<span class="moz-txt-citetags">&gt; </span>            ###the following  lines are uncommented
<span class="moz-txt-citetags">&gt; </span>        if ($au!=$tU)
<span class="moz-txt-citetags">&gt; </span>        {
<span class="moz-txt-citetags">&gt; </span>            sl_send_reply("403","Forbidden auth ID");
<span class="moz-txt-citetags">&gt; </span>            exit;
<span class="moz-txt-citetags">&gt; </span>    }
<span class="moz-txt-citetags">&gt; </span>    }
<span class="moz-txt-citetags">&gt; </span>     else
<span class="moz-txt-citetags">&gt; </span>         {
<span class="moz-txt-citetags">&gt; </span>        # authenticate if from local subscriber (uncomment to enable auth)
<span class="moz-txt-citetags">&gt; </span>        if (from_uri==myself)
<span class="moz-txt-citetags">&gt; </span>        {
<span class="moz-txt-citetags">&gt; </span>              if (!proxy_authorize("", "subscriber"))
<span class="moz-txt-citetags">&gt; </span>             {
<span class="moz-txt-citetags">&gt; </span>                 proxy_challenge("", "0");
<span class="moz-txt-citetags">&gt; </span>                exit;
<span class="moz-txt-citetags">&gt; </span>            }
<span class="moz-txt-citetags">&gt; </span>            if (is_method("PUBLISH"))
<span class="moz-txt-citetags">&gt; </span>            {
<span class="moz-txt-citetags">&gt; </span>            if ($au!=$tU) {
<span class="moz-txt-citetags">&gt; </span>                    sl_send_reply("403","Forbidden auth ID");
<span class="moz-txt-citetags">&gt; </span>                    exit;
<span class="moz-txt-citetags">&gt; </span>                }
<span class="moz-txt-citetags">&gt; </span>             } else {
<span class="moz-txt-citetags">&gt; </span>                if ($au!=$fU) {
<span class="moz-txt-citetags">&gt; </span>                    sl_send_reply("403","Forbidden auth ID");
<span class="moz-txt-citetags">&gt; </span>                    exit;
<span class="moz-txt-citetags">&gt; </span>                }
<span class="moz-txt-citetags">&gt; </span>            }
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>              consume_credentials();
<span class="moz-txt-citetags">&gt; </span>            # caller authenticated
<span class="moz-txt-citetags">&gt; </span>        }
<span class="moz-txt-citetags">&gt; </span>    }
<span class="moz-txt-citetags">&gt; </span>    return;
<span class="moz-txt-citetags">&gt; </span>}
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt;</span>
<span class="moz-txt-citetags">&gt; </span>--
<span class="moz-txt-citetags">&gt; </span>Regards,
<span class="moz-txt-citetags">&gt; </span>Rajesh
<span class="moz-txt-citetags">&gt;</span></pre>
</body>
</html>