diff --git a/kamailio/default.cfg b/kamailio/default.cfg index f17230c..ebc6f85 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..38fbd6b 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 diff --git a/kamailio/nodes-role.cfg b/kamailio/nodes-role.cfg new file mode 100644 index 0000000..7f8d7f9 --- /dev/null +++ b/kamailio/nodes-role.cfg @@ -0,0 +1,18 @@ +######## Nodes role - pushes info to kazoo ######## +#!ifndef TIMER-LOADED +loadmodule "timer.so" +#!endif +#!ifndef STATISTICS-LOADED +loadmodule "statistics.so" +#!endif +modparam("timer", "declare_timer", "NODES_TIMER=NODES_TIMER_ROUTE,5000,slow,enable"); + +#!trydef UNIX_TO_GREGORIAN 62167219200 +####### 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