Recon ToDo List

From reSIProcate
Revision as of 08:34, 11 June 2008 by Sgodin (talk | contribs) (New page: ===TODO List=== In order for recon to appeal to the widest audience possible, some changes should be made in order to provide a better layer between the underlying media stack (currently s...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

TODO List

In order for recon to appeal to the widest audience possible, some changes should be made in order to provide a better layer between the underlying media stack (currently sipXtapi) and the Conversation Manager. The following tasks are required:

  • Re-write the SDP library. The SDP library provides a semantic representation of the information conveyed in the Session Description Protocol (SDP), including ICE candidates and components. It is currently created in sipX style code and reside in the sipXtapi repository (sipXsdpLib). This library should be ported/rewritten in resip style containers. Once this is complete we can modify the offer/answer logic in recon to only be dependant on resip.
  • Provide a media access API/thin layer so that sipX API's are not accessed directly from different areas in recon source code. Currently sipX API's are accessed in the following locations:
    • ConversationManager.cxx - contains main sipXmediaFactory and sipXmediaInterface - the interface into sipX library
      • createMediaInterface
      • setVolume
      • setMicrophoneGain
      • muteMicrophone
      • enableEchoCancel
      • enableAutoGainControl
      • enableNoiseReduction
    • BridgeMixer.cxx - API's to control the sipX bridge mixing matrix
      • setMixWeightsForOutput
      • setMixWeightsForInput
    • MediaResourceParticipant.cxx - API's to play tones, files, media
      • start/stopTone
      • start/stopAudio
      • playBuffer
      • createPlayer (deprecated in latest sipX)
    • RemoteParticipantDialogSet - API's to create local socket/connection
      • create/deleteConnection
      • getCapabilities
      • getConnectionPortOnBridge
    • RemoteParticipant.cxx - API's to start/stop RTP
      • setConnectionDestination
      • start/stopRtpSend
      • start/stopRtpReceive
      • isReceivingRtpAudio
      • isSendingRtpAudio