based on a patch by Robert Szokovacs
Conflicts:
apps/dsm/DSMCoreModule.cpp
apps/dsm/DSMCoreModule.h
core/AmRtpStream.h
core/AmSession.h
doc/dsm/dsm_syntax.txt
pauseReceiving()
stop RTP receiving (drop all received packets, also no RTP timeout check)
resumeReceiving()
restart RTP receiving
monitorRTPTimeout(enabled=false)
set call to monitor RTP timeout (enabled="true" or "false")
based on a patch by Emil Kroymann
Conflicts:
apps/dsm/DSMCall.cpp
apps/dsm/DSMCall.h
apps/dsm/DSMSession.h
apps/dsm/DSMStateEngine.h
apps/dsm/SystemDSM.cpp
apps/dsm/SystemDSM.h
doc/dsm/dsm_syntax.txt
Conflicts:
doc/dsm/dsm_syntax.txt
* 1.4:
b/f: fix incorrect parsing of keys with semicolon at the beginning in get_header_keyvalue
[systemd] Restart in case of failure
[init-script] Fix diractory for Pid-file
b/f: fix false positive matching keys with prefixes in get_header_keyvalue
Added missing /etc/sysconfig/sems file to the pkg/rpm
1.4 branch build version
updated changelog for 1.4.3 release
SEMS 1.4.3 release
c/f: revert a83b8e1 as it can cause some issues with the linker
c/f: make it possible to pass CXX / CC from env vars
c/f: make callgen compile using proper IP for From host
core: name default interface as "default"
core: handle exceptions in out-of-dlg messages gracefully
b/f: stopping failed outbound calls
b/f: AmCondition::wait_for_to nsec overflow
Add [Install] directive for systemd
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.
max/avg calls and calls/s values, can be accessed via
get_callsmax/get_callsavg/get_cpsmax/get_cpsavg from
- stats server
- XMLRPC through xmlrpc2di
based on a patch by Robert Szokovacs rsokovacs gammatelecom hu
* dsm_lang:
DSM: support variables in range, e.g. range($myvar)
DSM: size($arrayname, $dst) action
added [] to chars not allowed in var names
DSM: fix for ($bar in array) for structs
DSM: parsing of "else", if conditions without []
DSM: implement for ($x in range(2, 5))
DSM: "for (x in array)" and "for (k,v in struct)"
dsm: execution reordered (small optimization)
reindent
reindent
implementation of functions in DSM
initial support for if blocks (no else)
SIGHUP - broadcast shutdown, usually sends BYE and stops all calls. The server does not terminate.
SIGINT - broadcast shutdown (usually sends BYE and stops all calls), and stop.
SIGTERM - stop the server, without broadcasting shutdown (no BYEs sent).