[reSIProcate] recon Conversation Manager project Announcement!
I am pleased to announce that the new recon Conversation Manager
project has recently been
added to the resiprocate opensource projects.
recon (Conversation Manager) is a SIP User Agent API that allows
conversations and participants to be created. Participants can then be
placed into conversations. Recon could be used to create the following
types of applications:
Multi-line Phone
Conference Server
Media Server
In general all participants belonging to the same conversation can be
heard and can hear each other. A participants contribution level to a
particular conversation can be modified such that they appear quiter
or louder to other participants.
There are three types of participants:
Local participant - this participant type consists of the default
local speaker and microphone of the computer that is running recon.
Local participants are always only explicitly destroyed. Each
application should only have one local participant created at startup
time. This paricipant can be moved between/added to conversations as
desired.
Media participant - this participant type consists of an audio file,
audio stream, or a tone being played out. Media participants are
destroyed when the file is complete or when explicitly destroyed.
Remote Participant - this participant type uses audio from an external
source. The current implementation uses SIP to create/connect to
remote participants. Remote participants are destroyed by the API
user, or a "hangup" signal from the remote party.
A typical phone conversation consists of 3 components:
1 conversation
1 local participant
1 remote participant.
recon currently uses the sipXtapi project as the RTP/codec/mixing library.
Key Features
-Correct and comprehensive implementation of the relevant standards
from the SIP working groups
-Support for SIP signalling over UDP/TCP/TLS protocols over both IPv4 and IPv6
-Asynchrounous client APIs
-Sending media over TURN UDP/TCP/TLS allocations using a UDP relay
-STUN binding discovery for SDP body
-SRTP via SDES key negotiaion
-SRTP via DTLS-SRTP key negotiation
-Supported Codecs (via sipXtapi): G711u/a, GSM, iLBC, speex
-Audio file memory cache
-Target-Dialog support (draft-ietf-sip-target-dialog)
-Auto-answer support
-SIP Subcription support
-Multi-Registration support with Digest Authentication
-Bridge Mixing
-Variable Participant Contribution Levels
-Both In-dialog and Out-of-dialog REFER handling
-Test console program (testUA)
-SDP Media Capability Negotiation
(draft-ietf-mmusic-sdp-capability-negotiation)
-Single step transfers
-Supervised transfers
For more information on this project please see the overview page on
the resiprocate wiki:
https://www.resiprocate.org/Recon_Overview
Regards,
Scott Godin