Hi,

an interesting feature is implemented with 40af0d1 and 4338e3cf7: "System DSMs". This is generic purpose DSM scripts which are executed when the server starts. They can also be executed with the DI or DSM command "createSystemDSM".

This can be useful for implementing anything that should be periodically or continuously executed in the server, for example a DSM which checks a database (using mod_mysql) for scheduled conferences, and then (using dlg.dialout) creates calls to the participants. Or, a call generator as a DSM that checks the call target periodically and creates calls if they run out. Or, some DSM checking call queues and agents from the database and distributes the calls. And so on.

Another possibility is to add some server side processing to commands executed from the outside (through DSM events via DI - via xlmrpc or jsonrpc transport), which can be done by the system DSM thread.

Using the loadConfig DI command, a new system DSM can be loaded and started any time into the running server btw.

Have fun!
Stefan

Stefan Sayer wrote:
Module: sems
Branch: master
Commit: 40af0d1777a1585c11d496de8beb0d9078d9718a
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=40af0d1777a1585c11d496de8beb0d9078d9718a

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Tue Jul  6 23:30:20 2010 +0200

DSM: add system DSMs, DSMs unrelated to calls

---

 apps/dsm/DSM.cpp                     |   72 +++++++++++++-
 apps/dsm/DSM.h                       |    5 +
 apps/dsm/DSMCall.cpp                 |    3 +-
 apps/dsm/DSMCoreModule.cpp           |   34 ++++++-
 apps/dsm/DSMCoreModule.h             |    5 +-
 apps/dsm/DSMStateEngine.cpp          |   10 +-
 apps/dsm/DSMStateEngine.h            |    5 +-
 apps/dsm/SystemDSM.cpp               |  181 ++++++++++++++++++++++++++++++++++
 apps/dsm/SystemDSM.h                 |  100 +++++++++++++++++++
 apps/dsm/etc/dsm.conf                |    7 +-
 doc/dsm/Readme.dsm.txt               |   25 +++++
 doc/dsm/dsm_syntax.txt               |   26 ++++-
 doc/dsm/examples/test_system_dsm.dsm |   37 +++++++
 13 files changed, 492 insertions(+), 18 deletions(-)

Diff:   
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commitdiff;h=40af0d1777a1585c11d496de8beb0d9078d9718a
_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev



--
Stefan Sayer
VoIP Services Consulting and Development

Warschauer Str. 24
10243 Berlin

tel:+491621366449
sip:[email protected]
email/xmpp:[email protected]


_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to