diff --git a/kamailio/default.cfg b/kamailio/default.cfg index 807ae09..a521ca0 100644 --- a/kamailio/default.cfg +++ b/kamailio/default.cfg @@ -204,6 +204,9 @@ include_file "pusher-role.cfg" #!ifdef RESPONDER-ROLE include_file "responder-role.cfg" #!endif +#!ifdef NODES-ROLE +include_file "nodes-role.cfg" +#!endif ####### Permissions module ########## loadmodule "permissions.so" diff --git a/kamailio/local.cfg b/kamailio/local.cfg index 51b7ee7..e3d21f4 100644 --- a/kamailio/local.cfg +++ b/kamailio/local.cfg @@ -12,6 +12,7 @@ debug = L_INFO #!trydef REGISTRAR-ROLE #!trydef PRESENCE-ROLE #!trydef RESPONDER-ROLE +#!trydef NODES-ROLE ## Disabled Roles - remove all but the last '#' to enable # # #!trydef TRAFFIC-FILTER-ROLE @@ -20,7 +21,7 @@ debug = L_INFO # # #!trydef ANTIFLOOD-ROLE # # #!trydef MESSAGE-ROLE # # #!trydef PUSHER-ROLE - + ################################################################################ ## SERVER INFORMATION ################################################################################ diff --git a/kamailio/nodes-role.cfg b/kamailio/nodes-role.cfg new file mode 100644 index 0000000..88f8c96 --- /dev/null +++ b/kamailio/nodes-role.cfg @@ -0,0 +1,14 @@ +######## Nodes role - pushes info to kazoo ######## +#!ifndef TIMER-LOADED +loadmodule "timer.so" +#!endif +modparam("timer", "declare_timer", "NODES_TIMER=NODES_TIMER_ROUTE,5000,slow,enable"); + +####### NODES Logic ######## +route[NODES_TIMER_ROUTE] +{ + $var(Payload) = '{"Event-Category" : "nodes", "Event-Name" : "advertise", "Expires" : 5000, "Used-Memory" : $(stat(real_used_size){s.int}), "Registrations" : $(stat(registered_users){s.int}), "WhApps" : {"kamailio" : {"Startup" : $Tb }} }'; + kazoo_publish("nodes", "", $var(Payload)); +} + +# vim: tabstop=4 softtabstop=4 shiftwidth=4 expandtab