[SR-Users] How to hook to Register And Unregister event in Kamailio

Anuran Barman anuranbarman at gmail.com
Mon Jul 22 19:37:02 CEST 2019


that will be helpful. Thanks

On Mon, 22 Jul 2019 at 11:06 PM, David Villasmil <
david.villasmil.work at gmail.com> wrote:

> You do right after the authentication challenge. I will send a snipped (on
> my phone)
>
> On Mon, 22 Jul 2019 at 13:38, Anuran Barman <anuranbarman at gmail.com>
> wrote:
>
>> evapi seems to be complicated and more than necessary for I want to do.
>> Can't I get the successful register and unregister event from config file
>> just like got INVITE event without using it?
>>
>> On Mon, Jul 22, 2019 at 6:02 PM Anuran Barman <anuranbarman at gmail.com>
>> wrote:
>>
>>> # IP authorization and user authentication
>>> route[AUTH] {
>>> #!ifdef WITH_AUTH
>>>
>>> #!ifdef WITH_IPAUTH
>>> if((!is_method("REGISTER")) && allow_source_address()) {
>>> # source IP allowed
>>> return;
>>> }
>>> #!endif
>>>
>>> if (is_method("REGISTER") || from_uri==myself) {
>>> xlog("LOG_LOCAL3","L_INFO","authentication request from domain=$ad
>>> realm=$ar username=$Au sourceIP=$si agentHeader=$ua");
>>> # authenticate requests
>>> if (!auth_check("$fd", "subscriber", "1")) {
>>> auth_challenge("$fd", "0");
>>> exit;
>>> }
>>> # user authenticated - remove auth header
>>> if(!is_method("REGISTER|PUBLISH"))
>>> consume_credentials();
>>> xlog("LOG_LOCAL3","L_INFO","authentication successful"); *<==============
>>> At this point can I assume authentication is successful ??*
>>> }
>>> # if caller is not local subscriber, then check if it calls
>>> # a local destination, otherwise deny, not an open relay here
>>> if (from_uri!=myself && uri!=myself) {
>>> sl_send_reply("403","Not relaying");
>>> exit;
>>> }
>>>
>>> #!endif
>>> return;
>>> }
>>>
>>> Kindly look into the snippet above. The bold lettered one. At that point
>>> can I assume authentication is successful ??
>>>
>>> On Mon, Jul 22, 2019 at 5:58 PM E. Schmidbauer <eschmidbauer at gmail.com>
>>> wrote:
>>>
>>>> you should be doing some sort of authentication and then saving the
>>>> user's registration data.
>>>> add a route to fire an event when the registration data is saved.
>>>> or even better IMO would be to use an event queue like mqueue and
>>>> rtimer to push events into a queue and process them with rtimer and evapi
>>>>
>>>> On Mon, Jul 22, 2019 at 7:46 AM Anuran Barman <anuranbarman at gmail.com>
>>>> wrote:
>>>>
>>>>> But it does not tell me if thats a successful register. I can make the
>>>>> user online but may be the request fails as credentials are wrong. So the
>>>>> REGISTER is not successful. How can I handle that?
>>>>>
>>>>> On Mon, 22 Jul 2019 at 5:14 PM, David Villasmil <
>>>>> david.villasmil.work at gmail.com> wrote:
>>>>>
>>>>>> Just as you do is_method(“INVITE”) you can do is_method(“REGISTER”)
>>>>>> after that you can check the EXPIRE, if it is zero then it is an
>>>>>> UN-REGISTER.
>>>>>>
>>>>>>
>>>>>> On Mon, 22 Jul 2019 at 12:35, E. Schmidbauer <eschmidbauer at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> here is a good example of how you can use evapi in kamailio:
>>>>>>>
>>>>>>> http://kb.asipto.com/kamailio:k43-async-sip-routing-nodejs#evapi_processing
>>>>>>>
>>>>>>> here is a good example of how you can implement it with a go app:
>>>>>>> https://github.com/cgrates/kamevapi
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Mon, Jul 22, 2019 at 7:18 AM Anuran Barman <
>>>>>>> anuranbarman at gmail.com> wrote:
>>>>>>>
>>>>>>>> It seems like this module is useful for making the
>>>>>>>> connection/message flow. But that I need when I have the events of Register
>>>>>>>> and unregister. How to get the events from this module?
>>>>>>>>
>>>>>>>> On Mon, Jul 22, 2019 at 3:51 PM Anuran Barman <
>>>>>>>> anuranbarman at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Though I have already a NodeJS server running, I will try the
>>>>>>>>> evapi module. If there are some tutorial/Wiki on how to do this please
>>>>>>>>> share that with me. That will be great help.
>>>>>>>>>
>>>>>>>>> On Mon, Jul 22, 2019 at 3:39 PM E. Schmidbauer <
>>>>>>>>> eschmidbauer at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I would recommend using `evapi` for something like this
>>>>>>>>>> You could build a small go app that connects via evapi and
>>>>>>>>>> send/receive events to/from kamailio.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Mon, Jul 22, 2019 at 3:07 AM Anuran Barman <
>>>>>>>>>> anuranbarman at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>> I  am integrating Kamailio into my application. I want to hook
>>>>>>>>>>> to the successful REGISTER and unregister event into Kamailio into my
>>>>>>>>>>> application. For now, I am able to hook into INVITE event and can hit my
>>>>>>>>>>> server to send a email to the callee user that user X is calling you. The
>>>>>>>>>>> way I am doing is by this
>>>>>>>>>>>         if (is_method("INVITE")) {
>>>>>>>>>>>                 xlog("LOG_LOCAL3","L_INFO","invite came ($fU)
>>>>>>>>>>> ($tU)");
>>>>>>>>>>>                 $var(res) = http_connect("sipnodejsserver",
>>>>>>>>>>> "/","text/plain","src_user:$fU,dst_user:$tU" ,"$avp(route)");
>>>>>>>>>>>                 xlog("LOG_LOCAL3","L_INFO","request sent
>>>>>>>>>>> $avp(route)  $var(res)");
>>>>>>>>>>>                 setflag(FLT_ACC); # do accounting
>>>>>>>>>>>         }
>>>>>>>>>>>
>>>>>>>>>>> I need to show into my application that their SIP phone is
>>>>>>>>>>> online or not. How can I hook into this?
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>> sr-users at lists.kamailio.org
>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>
>>>>>> --
>>>>>> Regards,
>>>>>>
>>>>>> David Villasmil
>>>>>> email: david.villasmil.work at gmail.com
>>>>>> phone: +34669448337
>>>>>> _______________________________________________
>>>>>> Kamailio (SER) - Users Mailing List
>>>>>> sr-users at lists.kamailio.org
>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>
>>>>> _______________________________________________
>>>>> Kamailio (SER) - Users Mailing List
>>>>> sr-users at lists.kamailio.org
>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users at lists.kamailio.org
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
> --
> Regards,
>
> David Villasmil
> email: david.villasmil.work at gmail.com
> phone: +34669448337
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190722/1c62cdbe/attachment.html>


More information about the sr-users mailing list