name mode size
amci 040000
ampi 040000
etc 040000
plug-in 040000
rpm 040000
rtp 040000
scripts 040000
wav 040000
AmAdvancedAudio.cpp 100644 5.87kB
AmAdvancedAudio.h 100644 3.4kB
AmApi.cpp 100644 2.22kB
AmApi.h 100644 6.26kB
AmArg.h 100644 2.87kB
AmAudio.cpp 100644 14.88kB
AmAudio.h 100644 10.72kB
AmB2BSession.cpp 100644 8.09kB
AmB2BSession.h 100644 5.25kB
AmCachedAudioFile.cpp 100644 5.15kB
AmCachedAudioFile.h 100644 2.79kB
AmConferenceChannel.cpp 100644 829B
AmConferenceChannel.h 100644 2.11kB
AmConferenceStatus.cpp 100644 4.58kB
AmConferenceStatus.h 100644 2.92kB
AmConfig.cpp 100644 8.31kB
AmConfig.h 100644 5.19kB
AmConfigReader.cpp 100644 3.21kB
AmConfigReader.h 100644 1.84kB
AmCtrlInterface.cpp 100644 5.33kB
AmCtrlInterface.h 100644 3.46kB
AmDtmfDetector.cpp 100644 15.87kB
AmDtmfDetector.h 100644 7.63kB
AmEvent.cpp 100644 124B
AmEvent.h 100644 1.83kB
AmEventQueue.cpp 100644 2.39kB
AmEventQueue.h 100644 1.76kB
AmIcmpWatcher.cpp 100644 3.82kB
AmIcmpWatcher.h 100644 1.97kB
AmInterfaceHandler.cpp 100644 9.2kB
AmInterfaceHandler.h 100644 3.09kB
AmJitterBuffer.cpp 100644 6.62kB
AmJitterBuffer.h 100644 2.68kB
AmMail.cpp 100644 3.87kB
AmMail.h 100644 3.18kB
AmMediaProcessor.cpp 100644 8.52kB
AmMediaProcessor.h 100644 3.28kB
AmMultiPartyMixer.cpp 100644 4.59kB
AmMultiPartyMixer.h 100644 2.45kB
AmPlaylist.cpp 100644 3.44kB
AmPlaylist.h 100644 2.52kB
AmPlayoutBuffer.cpp 100644 12.44kB
AmPlayoutBuffer.h 100644 4.48kB
AmPlugIn.cpp 100644 13.26kB
AmPlugIn.h 100644 4.49kB
AmRtpAudio.cpp 100644 5.45kB
AmRtpAudio.h 100644 2.65kB
AmRtpPacket.cpp 100644 4.39kB
AmRtpPacket.h 100644 2.18kB
AmRtpReceiver.cpp 100644 3.3kB
AmRtpReceiver.h 100644 1.95kB
AmRtpStream.cpp 100644 9.84kB
AmRtpStream.h 100644 6.16kB
AmSdp.cpp 100644 18.58kB
AmSdp.h 100644 4.71kB
AmServer.cpp 100644 3.98kB
AmServer.h 100644 2.91kB
AmSession.cpp 100644 15.41kB
AmSession.h 100644 9.48kB
AmSessionContainer.cpp 100644 10.02kB
AmSessionContainer.h 100644 5.49kB
AmSipDialog.cpp 100644 14.75kB
AmSipDialog.h 100644 3.76kB
AmSipEvent.h 100644 618B
AmSipReply.cpp 100644 1.1kB
AmSipReply.h 100644 484B
AmSipRequest.cpp 100644 2.93kB
AmSipRequest.h 100644 1.07kB
AmSmtpClient.cpp 100644 9.24kB
AmSmtpClient.h 100644 2.8kB
AmStats.h 100644 1.65kB
AmThread.cpp 100644 7.52kB
AmThread.h 100644 4.41kB
AmUAC.cpp 100644 1.87kB
AmUAC.h 100644 1.45kB
AmUtils.cpp 100644 17.27kB
AmUtils.h 100644 7.7kB
EmailTemplate.cpp 100644 5.84kB
EmailTemplate.h 100644 1.68kB
LowcFE.cpp 100644 8.89kB
LowcFE.h 100644 3.39kB
Makefile 100644 3.69kB 100644 4.29kB
SampleArray.h 100644 2.27kB
doxygen_proj 100644 50.95kB
log.cpp 100644 1.94kB
log.h 100644 2.83kB
sems.conf.sample 100644 3.79kB
sems.cpp 100644 14kB
sems.h 100644 2.16kB
+------------------------------------+ | SIP express media server - README | +------------------------------------+ Introduction: SEMS is a extensible media server which helps you adding voice services to your VoIP system. Each module or plug-in extends your system. Audio plug-ins enable new codecs and file format whereby application plug-ins implement the service's logic. Some modules called component modules provide functionality for other modules to use. You can easely extend SEMS by creating your own plug-ins. Applications can be written using the SEMS framework API in C++, or in Python using an embedded python interpreter of the ivr or py_sems plugins. The following default applications are shipped with SEMS : * voicemail: records voice messages and mails them as email * conferencing: enables many people to talk together at the same time * announcement: plays an announcement * echo: test module echoing your voice * mailbox: saves voicemails into an IMAP server. Users can dial in to check their messages * ann_b2b: pre-call-announcement, plays an announcement before connecting the callee in b2bua mode * announce_transfer: pre-call-announcement, plays an announcement and then transfers the caller to the callee using REFER * early_announce: pre-call announcement using early media (183) * conf_auth: collect a PIN number, verify it against an XMLRPC authentication server and connect in b2bua mode * pin_collect: collect a PIN, optionally verify it, and transfer the call SEMS only support patent free codecs. Which means that we won't support codecs like g729. On the other hand, we have support for all important patent free (g711u, g711a, GSM06.10 and iLBC). Requirements: 1. Ser version 0.9.6: SIP Epress Router ( - SEMS requires Ser as its SIP stack. - SEMS & Ser communicate together through socket, which means that a Ser instance is mandatory on every host using SEMS. 2. Python version >= 2.3 for the ivr (embedded python interpreter), optional 3. flite speech synthesizer for TTS in the ivr, optional 4. lame >= 3.95 for mp3 file output, optional How to get started with SEMS: To try out SEMS, the easiest is to follow one of the tutorials linked from the SEMS homepage (e.g. The Application Modules Documentation page then gives an overview of the application modules that come with SEMS ( If you are interested in writing your own applications, the application development tutorial is a good start (, together with the design overview ( Installation: 1. Download SEMS through svn: svn checkout svn:// -or- svn checkout 2. Compile SEMS: make all make install Notice: you don't need to execute 'make install' if you want to run SEMS from the source tree. For detailed instructions, have a look at doc/COMPILING as well. 3. Look at the default configuration file whether it fits your need: If you installed SEMS with 'make install', the configuration is at '/usr/local/etc/sems/sems.conf'. Else make your own using sems.conf.sample. 4. Start Ser: Please read the Ser User's guide and doc/Configure-SEMS-Ser-HOWTO if you don't known how to complete this stage, 5. Start SEMS: If you installed SEMS with 'make install', sems can be found at '/usr/local/sbin/sems'. If you need help starting 'sems', try 'sems -h'. Troubleshooting: * RH thread problem: SEMS has currently problems being run on Redhat 9. If you cannot wait until it is fixed, you may want to run ans_machine after running the following command: export LD_ASSUME_KERNEL=2.4.1 This disables the new pthread implementation included in Redhat 9. Installed file using 'make install': /usr/local/sbin/sems : SEMS executable /usr/local/lib/sems/plug-in/* : plug-ins /usr/local/lib/sems/audio/* : default path for audio files /usr/local/lib/sems/ivr/* : precompiled IVR scripts /usr/local/etc/sems/sems.conf : configuration file /usr/local/etc/sems/etc/* : modules configuration files /usr/local/share/doc/sems/README : this README. source_path/scripts/sems[.redhat] : example start-up scripts. source_path/sems.conf.example : example configuration file. Documentation: In the doc/ directory there is a set of files describing the applications shipped with SEMS, alongside some more documentation. With 'make doc' you can generate the doxygen documentation in doc/doxygen_doc, which contains these files as well. All documentation is available online linked from the SEMS homepage: Bug report & Contact: If you have problems configuring Ser&SEMS for your needs, look at the support information on the Ser homepage ( and the SEMS homepage ( The mailing lists ( for SEMS are the first address to ask for help, report bugs and improvements. You need to be subscribed to be able to post to the lists. Authors: Raphael Coeffic (, Stefan Sayer ( and all contributors. Thanks goes to: * Ulrich Abend ( for his great debuging work and ISDN gateway which unfortunately did not make it into this version yet. * Jiri Kuthan ( for the debuging work and help to implement communicating part between Ser & SEMS ('vm' module). * All the others who helped during test session :-)