If NAT flag (P-MsgFlags: 2) is passed only in the initial INVITE,
re-INVITE will set up the RTP stream to the private address, but not
enable symmetric RTP (comedia style send-to-where-i-get-rtp-from)
again. this fix remembers passive_mode for the call.
If an INVITE has been forked and more than one branch is aimed at SEMS,
then the branch parameter of the top-via is necessary to distinguish the
different sessions.
By default, SEMS will now accept forked INVITEs.
This behavior can be switched off by setting "accept_forked_dialogs" to "no" (default=yes).
Conflicts:
core/AmSipDispatcher.cpp
Purpose
-------
The db_reg_agent module allows SEMS to read SIP accounts from a database
and register the accounts to SIP a registrar. In that it serves a similar
purpose as the reg_agent/registrar_client modules, with the differences
that it reads accounts from mysql DB instead of the file system, and that
it is built to support many (up to several 10k) subscription. Additionally,
accounts may be added, changed and removed while SEMS is running; the
db_reg_agent then can be triggered via DI interface (XMLRPC/json-rpc) to
pick up the new registration.
Features
- configurable subscription query
- configurable desired expires
- flatten out re-register spikes by intelligently planning registration refresh
- ratelimiting (x new REGISTER requests per y seconds)
- seamless restart of SEMS server possible; registration status is restored from DB.
missing payload descriptions (a line in SDP) valid for known payloads
with pt < 69 would lead the SDP filter which matches on the codec name
to fail.
sdp_filter=transparent/blacklist/whitelist enables normalization of SDP
if sdp_filter is not set, no normalization is done.