en-US.concept-chapter-Controlling_and_Programming_the_Media_Server.xml Maven / Gradle / Ivy
<?xml version='1.0'?> <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ <!ENTITY % BOOK_ENTITIES SYSTEM "Media_Server_User_Guide.ent"> %BOOK_ENTITIES; ]><!-- chapter id nickname: captms --> <chapter id="captms-Controlling_and_Programming_the_Media_Server"> <title>Controlling and Programming the Mobicents Media Server</title> <section id="captms-MMS_Control_Protocols"> <title>MMS Control Protocols</title> <para>The Mobicents Media Server adopts a call control architecture where the call control <quote>intelligence</quote> is located outside of the Media Server itself, and is handled by external call control elements collectively known as Call State Control Function (CSCF).The media server assumes that these call control elements will synchronize with each other to send coherent commands and responses to the media servers under their control. Server Control Protocols is, in essence, an asynchronous master/slave protocol, where the Server Control Modules are expected to execute commands sent by CSCF. Each Server Control Module is implemented as a JSLEE application, and consists of a set of Service Building Blocks (<acronym>SBB</acronym>)s, which are in charge of communicating with media server endpoints via SPI. Such an architecture avoids difficulties with programming concurrency, low-level transaction and state-management details, connection-pooling and other complex APIs.</para> <section id="captms-Media_Gateway_Control_Protocol_Interface"> <title>Media Gateway Control Protocol Interface</title> <para>The Media Gateway Control Protocol (MGCP) is a protocol for controlling media gateways (for example, the Media Server) from external call control elements such as media gateway controllers or Call Agents. The MGCP assumes that the Call Agents, will synchronize with each other to send coherent commands and responses to the gateways under their control.</para> <para>The MGCP module is included in the binary distribution. The Call Agent uses the MGCP to tell the Media Server:</para> <itemizedlist> <listitem><para>which events should be reported to the Call Agent;</para></listitem> <listitem><para>how endpoints should be connected; and,</para></listitem> <listitem><para>which signals should be played on which endpoints.</para></listitem> </itemizedlist> <para>MGCP is, in essence, a master/slave protocol, where the gateways are expected to execute commands sent by the Call Agents. The general base architecture and programming interface is described in <ulink url="http://www.ietf.org/rfc/rfc2805.txt">RFC 2805</ulink>, and the current specific MGCP definition is located in <ulink url="http://www.ietf.org/rfc/rfc3435.txt">RFC 3435</ulink>.</para> </section> <section> <title> JSR-309 Control protocol Interface </title> <para> JSR-309 defines a programming model and object model for Media Server (MS) control independent of MS control protocols. JSR-309 API is not an API for a specific protocol. It will take advantage of the multiple and evolving Multimedia Server capabilities available in the industry today and also provide an abstraction for commonly used application functions like multi party conferencing, multimedia mixing and interaction dialogs. </para> <para> Some of the commonly used MS control protocols are <ulink url="http://www.mobicents.org/mms/mms-mgcp-main.html">MGCP (RFC 3435)</ulink>, MEGACO (RFC 3525), Media Server Markup Language (MSML) (RFC 4722) and VoiceXML. The Mobicents implementation of JSR-309 API makes use of MGCP as MS control protocol. </para> <para> The Mobicents JSR-309 Impl is first and only open source implementation of JSR-309 available as of today. To further understand the JSR-309 API, download specs from <ulink url="http://jcp.org/en/jsr/detail?id=309">here</ulink> </para> <para> “The latest release of Mobicents JSR-309 Impl is part of binary media server release and can be found under clients folder”. </para> <para> The diagram bellow shows the high-level architecture of how application can make use of JSR-309 over MGCP </para> <mediaobject id="mms-jsr309-mgcp"> <imageobject> <imagedata align="center" width="550" fileref="images/SipJSR309.jpeg" format="PNG"></imagedata> </imageobject> </mediaobject> </section> </section> </chapter>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy