Hi all,
What is the best way to monitor endpoint registrations?
When one of our clients has a link failure or for some reason they lose their SIP registration with Kamailio, we'd like to be able to see this so that we can respond and get the trunk re-registered.
We do monitor the physical links but endpoints, (usually Asterisk based), often don't re-register after connectivity is restored.
I was thinking of a script that dumps the 'location' table every 10 minutes and compares it to the previous 'location' table dump and reports on the changes.
Is there a better way of doing this?
Regards,
[Description: cid:image001.jpg@01C8D7A0.651BD080]
Nick Raper 4th Dimension Technology | South Africa Office: +27 21 506 6260 | 24 hour helpline: +27 21 506 6260 | Fax: +27 86 610 5792 Email: nick@4dt.co.zamailto:nick@4dt.co.za | Web: www.4dt.co.zahttp://www.4dt.co.za/
P Please consider the environment before printing this email.
Hello,
if you use recent versions, there is an event route exported by registrar module where you can write a log message or do some other action when a contact expires:
- http://kamailio.org/docs/modules/stable/modules/registrar.html#idp2012416
Maybe you can hook something there that will make it easier for you to track non-registering devices.
Moreover, there is an option (when combined with nathelper module) to remove the record from location table when a device is not replying to OPTIONS keepalive requests. In this way you can discover faster when a device connectivity is lost.
On the other hand, there is no way to contact the device and tell to re-register.
Cheers, Daniel
On 13/03/14 09:25, Nick Raper wrote:
Hi all,
What is the best way to monitor endpoint registrations?
When one of our clients has a link failure or for some reason they lose their SIP registration with Kamailio, we’d like to be able to see this so that we can respond and get the trunk re-registered.
We do monitor the physical links but endpoints, (usually Asterisk based), often don’t re-register after connectivity is restored.
I was thinking of a script that dumps the ‘location’ table every 10 minutes and compares it to the previous ‘location’ table dump and reports on the changes.
Is there a better way of doing this?
Regards,
On 13 Mar 2014, at 12:19, Daniel-Constantin Mierla miconda@gmail.com wrote:
On the other hand, there is no way to contact the device and tell to re-register.
This is a protocol issue, btw, not a Kamailio issue.
The SIP UA can subscribe to reg-info and get information about the current registrations for an AOR. If the server somehow deregisters a contact (reboot, expire, forced deletion) then the UA will discover it in the subscribe/notify events.
/O
Hi Daniel,
Thank you this is exactly what I was looking for. We are using version Kamailio v3.3.3 and although Kamailio starts without any errors, I don’t get the ‘expired contact for’ syslog entry.
If I use ‘event_route[htable:mod-init]’ then I can write a sylog entry without a problem.
So it seems that ‘event_route[usrloc:contact-expired]’ might not work in version 3.3.3, is this correct?
Regards,
[Description: cid:image001.jpg@01C8D7A0.651BD080]
Nick Raper 4th Dimension Technology | South Africa Office: +27 21 506 6260 | 24 hour helpline: +27 21 506 6260 | Fax: +27 86 610 5792 Email: nick@4dt.co.zamailto:nick@4dt.co.za | Web: www.4dt.co.zahttp://www.4dt.co.za/
P Please consider the environment before printing this email.
From: sr-users-bounces@lists.sip-router.org [mailto:sr-users-bounces@lists.sip-router.org] On Behalf Of Daniel-Constantin Mierla Sent: 13 March 2014 01:20 PM To: Kamailio (SER) - Users Mailing List Subject: Re: [SR-Users] Endpoint registration tracking and reporting
Hello,
if you use recent versions, there is an event route exported by registrar module where you can write a log message or do some other action when a contact expires:
- http://kamailio.org/docs/modules/stable/modules/registrar.html#idp2012416
Maybe you can hook something there that will make it easier for you to track non-registering devices.
Moreover, there is an option (when combined with nathelper module) to remove the record from location table when a device is not replying to OPTIONS keepalive requests. In this way you can discover faster when a device connectivity is lost.
On the other hand, there is no way to contact the device and tell to re-register.
Cheers, Daniel On 13/03/14 09:25, Nick Raper wrote: Hi all, ? What is the best way to monitor endpoint registrations? ? When one of our clients has a link failure or for some reason they lose their SIP registration with Kamailio, we?d like to be able to see this so that we can respond and get the trunk re-registered. ? We do monitor the physical links but endpoints, (usually Asterisk based), often don?t re-register after connectivity is restored. ? I was thinking of a script that dumps the ?location? table every 10 minutes and compares it to the previous ?location? table dump and reports on the changes. ? Is there a better way of doing this? ? Regards,
--
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference - April 2-4, 2014, Berlin, Germany
Hello Nick,
indeed, the feature was introduced in 4.0:
- http://www.kamailio.org/wiki/features/new-in-4.0.x#registrar
Cheers, Daniel
On 17/03/14 08:59, Nick Raper wrote:
Hi Daniel,
Thank you this is exactly what I was looking for. We are using version Kamailio v3.3.3 and although Kamailio starts without any errors, I don’t get the ‘expired contact for’ syslog entry.
If I use ‘event_route[htable:mod-init]’ then I can write a sylog entry without a problem.
So it seems that ‘event_route[usrloc:contact-expired]’ might not work in version 3.3.3, is this correct?
Regards,
Description: cid:image001.jpg@01C8D7A0.651BD080
*Nick Raper*
4^th Dimension Technology | South Africa
Office: +27 21 506 6260 | 24 hour helpline: +27 21 506 6260 | Fax: +27 86 610 5792
Email: nick@4dt.co.za mailto:nick@4dt.co.za | Web: www.4dt.co.za http://www.4dt.co.za/
/P///Please consider the environment before printing this email.
*From:*sr-users-bounces@lists.sip-router.org [mailto:sr-users-bounces@lists.sip-router.org] *On Behalf Of *Daniel-Constantin Mierla *Sent:* 13 March 2014 01:20 PM *To:* Kamailio (SER) - Users Mailing List *Subject:* Re: [SR-Users] Endpoint registration tracking and reporting
Hello,
if you use recent versions, there is an event route exported by registrar module where you can write a log message or do some other action when a contact expires:
http://kamailio.org/docs/modules/stable/modules/registrar.html#idp2012416
Maybe you can hook something there that will make it easier for you to track non-registering devices.
Moreover, there is an option (when combined with nathelper module) to remove the record from location table when a device is not replying to OPTIONS keepalive requests. In this way you can discover faster when a device connectivity is lost.
On the other hand, there is no way to contact the device and tell to re-register.
Cheers, Daniel
On 13/03/14 09:25, Nick Raper wrote:
Hi all, ? What is the best way to monitor endpoint registrations? ? When one of our clients has a link failure or for some reason they lose their SIP registration with Kamailio, we?d like to be able to see this so that we can respond and get the trunk re-registered. ? We do monitor the physical links but endpoints, (usually Asterisk based), often don?t re-register after connectivity is restored. ? I was thinking of a script that dumps the ?location? table every 10 minutes and compares it to the previous ?location? table dump and reports on the changes. ? Is there a better way of doing this? ? Regards,
-- Daniel-Constantin Mierla -http://www.asipto.com http://twitter.com/#!/miconda http://twitter.com/#%21/miconda -http://www.linkedin.com/in/miconda Kamailio World Conference - April 2-4, 2014, Berlin, Germany http://www.kamailioworld.com