Hi,
I'm using kamailio as an intermediate proxy with survivability. That means I'm monitoring the primary server using the dispatch module, and if it goes down, I take control of all further requests. The main server acts as registrar, but I keep a copy a of the registered users list.
There's a feature of Siemens (now Unify) phones and SBC where in this same scenario, the SBC will send a NOTIFY packet informing the status change to the phones. The phones then display a message indicating "limited service" and re-register. To indicate that they support this feature, phones send a "Supported: X-Siemens-Proxy-State" header when registering. The NOTIFY packet from the SBC includes the header "Event: server-mode-backup" or "Event: server-mode-normal" according to the main server status.
I would like to replicate this functionality in kamailio. I looked at the presence module, as it already sends NOTIFY requests, but UACs have to subscribe to events first, and Siemens phones do not. I am trying to do it manually in the event_route[dispatcher:dst-down/up] triggers, but I can't find a way to iterate through all registered users.
I would appreciate some assistance:
- Is there some module I'm missing that implements something similar?
- If not, how to iterate through all registered users to manually send a request to each of them?
- If I send the requests using uac_req_send, will they be sent sequentially from the same thread?
Thanks
Neven Boric