Revision: 16221
Author: [email protected]
Date: Thu Jan  6 10:46:53 2011
Log: [No log message]
http://code.google.com/p/mobicents/source/detail?r=16221

Added:
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/images/binnar-structure.png
Modified:
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml

=======================================
--- /dev/null   
+++ /trunk/protocols/ss7/docs/sources/src/main/resources/en-US/images/binnar-structure.png Thu Jan 6 10:46:53 2011
Binary file, no diff available.
=======================================
--- /trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml Tue Jan 4 21:12:25 2011 +++ /trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml Thu Jan 6 10:46:53 2011
@@ -6,72 +6,182 @@

 <chapter
        id="setup">
-       <title>Source and Binary Setup</title>
+       <title>Installation and Running</title>
        <section
-               id="preinstall_requirements_and_prerequisites">
-               <title>Pre-Install Requirements and Prerequisites</title>
- <para>Ensure that the following requirements have been met before continuing with the install.</para>
+               id="installing_and_using">
+               <title>Installing</title>
+ <para>Mobicents SS7 stack at its core requires only Java 1.5(Java SE) if you are using only <literal>M3UALinkset</literal>. + However if you plan to use <literal>DahdiLinkset</literal> or <literal>DialogicLinkset</literal>, respective SS7 cards
+               needs to be installed on the server along with native 
libraries.</para>
+
+ <para>A simple way to get started is to download and install binary. This will provide you with all the dependencies you need to get going.
+               You can obtain binary release from &THIS.RELEASE_BINARY_URL;
+               </para>
+
                <section
-                       id="hardware_requirements">
-                       <title>Hardware Requirements</title>
-                       <para>The
-                               &THIS.PLATFORM; &THIS.APPLICATION;
-                               doesn't change the &THIS.PLATFORM;
-                               Hardware Requirements, however it requires
-                               <acronym>SS7</acronym>
-                               card.
-                       </para>
-                       <note>
-                               <!-- Is this proper statement ? -->
- <para>Desired is high performance machine to process voice and data channels.</para>
-                       </note>
-               </section>
-               <section
-                       id="software_prerequisites">
-                       <title>Software Prerequisites</title>
-                       <para>The &THIS.PLATFORM; &THIS.APPLICATION;
-                               depends on :
-                       </para>
+                       id="dependencies">
+                       <title>Binary Service</title>
+ <para>The &THIS.PLATFORM; &THIS.APPLICATION; binary is broken down into a few modules.</para> + <para>The following is a description of the important services and libraries that make up &THIS.PLATFORM; &THIS.APPLICATION;</para>
                        <itemizedlist>
                                <listitem>
-                                       <para>&THIS.PLATFORM;
-                                               <literal>ASN</literal>
-                                               library
-                                       </para>
+ <para><literal>asn</literal> : Abstract Syntax Notation One (ASN.1) library is used by various &THIS.PLATFORM; &THIS.APPLICATION; + protocols to encode/decode the structured data exchanged between Signaling Point over networks. To know more about asn library refer to + document included with asn. Applications using any of the &THIS.PLATFORM; &THIS.APPLICATION; User Protocols may never need to call asn API directly, + however it must be in classpath as &THIS.PLATFORM; &THIS.APPLICATION; User Protocols refers this library.</para>
                                </listitem>
+                               <!--
                                <listitem>
-                                       <para>&THIS.PLATFORM;
-                                               <literal>Stream</literal>
-                                               library
+ <para><literal>stream</literal> : All I/O operation within &THIS.PLATFORM; &THIS.APPLICATION; is asynchronous. + Stream API enables the user to abstract I/O operation. To know more about stream library refer to
+                                       document included with stream.
                                        </para>
                                </listitem>
+                                -->
+                               <listitem>
+ <para><literal>ss7</literal> : ss7 contains the service that is deployed in JBoss AS and libraries that end applications refers to.
+                                       ss7 is further divided into sub-modules
+                                       </para>
+                                       <itemizedlist>
+                                               <listitem>
+ <para><literal>docs</literal> : User guide for &THIS.PLATFORM; &THIS.APPLICATION; </para>
+                                               </listitem>
+                                               <listitem>
+ <para><literal>mobicents-ss7-service</literal> : SS7 service is the core engine as explained in section <xref linkend="design_overview_ss7_service" /> </para>
+                                               </listitem>
+                                               <listitem>
+ <para><literal>native</literal> : native libraries component to interact with SS7 Card installed on server, runtime component. + As of now native libraries are compiled only for linux OS. However if you plan to use <literal>M3UALinkset</literal> there is
+                                                       no dependency on OS as 
everything is 100% java.</para>
+                                               </listitem>
+                                               <listitem>
+ <para><literal>protocols</literal> : The &THIS.PLATFORM; &THIS.APPLICATION; User Protocols libraries. Your application would directly + call the API's exposed by these libraries. Depending on application you may be either interested in <literal>TCAP</literal>, + <literal>MAP</literal> or both or <literal>ISUP</literal> libraries</para>
+                                               </listitem>
+                                               <listitem>
+ <para><literal>shell</literal> : the Command Line Interface (CLI) module to manage the &THIS.PLATFORM; &THIS.APPLICATION;. + Refer <xref linkend="linkset_management"/> to understand how to use shell</para>
+                                               </listitem>
+                                       </itemizedlist>
+                               </listitem>
<!-- <listitem> <para>&THIS.PLATFORM; <literal>M3UA</literal> library </para> </listitem> -->
                        </itemizedlist>
+                       <para>Binary release has following layout:</para>
+                       <mediaobject id="binary_layout">
+                               <imageobject>
+ <imagedata width="300px" align="center" fileref="images/binnar-structure.png" format="PNG" />
+                       </imageobject>
+                       <caption>
+                               <para>&THIS.PLATFORM; &THIS.APPLICATION; binary 
layout.
+                               </para>
+                       </caption>
+               </mediaobject>
                </section>
+
+               <section
+                       id="installing_binary">
+                       <title>Installing Binary</title>
+ <para>The &THIS.PLATFORM; &THIS.APPLICATION; binary requires that you have JBoss Application Server installed + and JBOSS_HOME system property set. To know further details on setting JBOSS_HOME look
+                       <xref linkend="jboss_home_setup" /> </para>
+
+ <para>Once JBOSS_HOME is properly set, use ant to deploy the mobicents-ss7-service, shell scripts and shell library.</para>
+                       <important>
+                                               <para>
+ Ant 1.6 (or higher) is used to install the binary. Instructions for using Ant, including install, can be found at <ulink url="http://ant.apache.org/"; /></para>
+                       </important>
+                       <programlisting>
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;/ss7
+[usr]$ ant deploy
+                       </programlisting>
+                       <para>To undeploy these services</para>
+                       <programlisting>
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;/ss7
+[usr]$ ant undeploy
+                       </programlisting>
+
+                       <para>
+ While above steps will deploy the necessary ss7 service and shell components, the <literal>java.library.path</literal> + should be set to point the directory containing native component or should be copied to JBoss native library path manually.
+                               This step is only required if you are using the 
SS7 board on server.
+                       </para>
+               </section>
+               <section
+                       id="running_binary">
+                       <title>Running &THIS.PLATFORM; 
&THIS.APPLICATION;</title>
+                       <para>
+ Starting or stopping &THIS.PLATFORM; &THIS.APPLICATION; is no different than starting or stopping JBoss Application Server
+                       </para>
+                       <section
+                               id="starting_binary">
+                               <title>Starting</title>
+                               <para>
+ Once installed, you can run server by executing the run.sh (Unix) or run.bat (Microsoft Windows) + startup scripts in the <filename>&lt;install_directory&gt;/bin</filename> directory (on Unix or Windows). + If the service started properly you should see following lines in the Unix terminal or Command Prompt depending on your environment:
+                               </para>
+                               <screen><![CDATA[
+23:22:26,079 INFO [LinksetManager] SS7 configuration file path /home/abhayani/workarea/mobicents/jboss-5.1.0.GA/server/default/data/linksetmanager.xml
+23:22:26,141 INFO  [LinksetManager] Started LinksetManager
+23:22:26,199 INFO  [SS7Service] Starting SCCP stack...
+23:22:26,229 INFO  [SccpStackImpl] Starting ...
+23:22:26,230 INFO [RouterImpl] SCCP Router configuration file: /home/abhayani/workarea/mobicents/jboss-5.1.0.GA/server/default/deploy/mobicents-ss7-service/sccp-routing.txt +23:22:26,261 INFO [SS7Service] SCCP stack Started. SccpProvider bound to java:/mobicents/ss7/sccp +23:22:26,261 INFO [ShellExecutor] Starting SS7 management shell environment +23:22:26,270 INFO [ShellExecutor] ShellExecutor listening at /127.0.0.1:3435 +23:22:26,270 INFO [SS7Service] [[[[[[[[[ Mobicents SS7 service started ]]]]]]]]]
+]]>
+                               </screen>
+                       </section>
+                       <section
+                               id="stopping_binary">
+                               <title>Stopping</title>
+ <para>You can shut down the server(s) you can run server(s) by executing the <command>shutdown.sh -s</command> (Unix) or + <command>shutdown.bat -s</command> (Microsoft Windows) scripts in the <filename>&lt;install_directory&gt;/bin</filename> + directory (on Unix or Windows). Note that if you properly stop the server, you will see the following three lines as the last output in the Unix terminal or Command Prompt:</para>
+                        <screen><![CDATA[[Server] Shutdown complete
+Shutdown complete
+Halting VM]]></screen>
+                       </section>
+               </section>
        </section>

        <section
                id="source_code">
                <title>
-                       Source Code
+                       Setup from source
                </title>
-               <para></para>
+ <para>&THIS.PLATFORM; &THIS.APPLICATION; is an open source project, instructions for building from source are part of the manual! + Building from source means you can stay on top with the latest features. Whilst aspects of &THIS.PLATFORM; &THIS.APPLICATION; are quite
+               complicated, you may find ways to become contributors.</para>
+
+ <para>&THIS.PLATFORM; &THIS.APPLICATION; works with JDK1.5 and above. you will need also need to have the following tools installed.
+               Minimum requirement version numbers provided.</para>
+
+               <itemizedlist>
+                       <listitem>
+ <para><literal>Subversion Client 1.4</literal> : Instructions for using SVN, including install, can be found at <ulink
+                                                               
url="http://subversion.tigris.org"; /></para>
+                       </listitem>
+                       <listitem>
+ <para><literal>Maven 2.0.9</literal> : Instructions for using Maven, including install, can be found at <ulink
+                                                               
url="http://maven.apache.org/"; /></para>
+                       </listitem>
+                       <listitem>
+ <para><literal>Ant 1.7.0</literal> : Instructions for using Ant, including install, can be found at <ulink
+                                                               
url="http://ant.apache.org"; /></para>
+                       </listitem>
+               </itemizedlist>

                <section
-                       id="release_source_building">
+                       id="source_building">
                        <title>Release Source Code Building</title>
                        <procedure>
                                <step>
                                        <title>Downloading the source 
code</title>
-                                       <important>
-                                               <para>
- Subversion is used to manage its source code. Instructions for using Subversion, including install, can be found at
-                                                       <ulink
-                                                               
url="http://svnbook.red-bean.com"; />
-                                               </para>
-                                       </important>
-                                       <para>Use
- SVN to checkout a specific release source, the base URL is &THIS.RELEASE_SOURCE_CODE_URL;,
+
+ <para>Use SVN to checkout a specific release source, the base URL is &THIS.RELEASE_SOURCE_CODE_URL;,
                                                then add the specific release 
version, lets consider &THIS.VERSION;.
                                        </para>
<programlisting>[usr]$ svn co &THIS.RELEASE_SOURCE_CODE_URL;/&THIS.APPLICATION.DIRNAME;-&THIS.VERSION;</programlisting>
@@ -79,24 +189,46 @@
                                </step>
                                <step>
                                        <title>Building the source code</title>
-                                       <important>
+ <para>Now that we have the source the next step is to build and install the source. + &THIS.PLATFORM; &THIS.APPLICATION; uses Maven 2 to build the system. There are two profiles + available "dahdilinux" and "dialogiclinux" appart from default profile that doesn't try to compile the native modules.</para>
+                                       <note>
                                                <para>
- Maven 2.0.9 (or higher) is used to build the release. Instructions for using Maven2, including install, can be found at
-                                                       <ulink
-                                                               
url="http://maven.apache.org"; />
+                                                       Native modules are 
supported only for linux OS for now.
                                                </para>
-                                       </important>
-                                       <para>Use Maven to build the 
binaries.</para>
+                                       </note>
+ <para>Use "dahdilinux" profile if linux server on which this code is built already has dahdi module installed. + Make sure you pass "include.zap" system property pointing to correct directory where dahdi is installed</para>
                                        <programlisting>
-                                   [usr]$ cd 
&THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
-                                   [usr]$ mvn install
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
+[usr]$ mvn install -Pdahdilinux -Dinclude.zap=/usr/include/dahdi
                                    </programlisting>
-                                       <para>
-                                               Once the process finishes you 
should have the
-                                               <literal>binary</literal>
-                                               build in 
<filename>XXX</filename>
-                                               .
-                                       </para>
+
+ <para>Use "dialogiclinux" profile if linux server on which this code is built already has dialogic module installed. + Make sure you pass "include.dialogic" system property pointing to correct directory where dilogic libraries are installed</para>
+                                       <programlisting>
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
+[usr]$ mvn install -Pdialogclinux -Dinclude.dialogic=/usr/include/dialogic
+                                   </programlisting>
+
+ <para>To build &THIS.PLATFORM; &THIS.APPLICATION; without building any native libraries use</para>
+                                       <programlisting>
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
+[usr]$ mvn install
+                                   </programlisting>
+                                       <note>
+                                               <para>
+ If you are using &THIS.PLATFORM; &THIS.APPLICATION; without any native dependencies, &THIS.PLATFORM; &THIS.APPLICATION; can run in any OS.
+                                               </para>
+                                       </note>
+
+
+                                       <para>Use Ant to build the binary 
.</para>
+                                       <programlisting>
+[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;/release
+[usr]$ ant
+                                   </programlisting>
+
                                </step>
                        </procedure>
                </section>
@@ -107,71 +239,11 @@
                        <para>
                                Similar process as for
                                <xref
-                                       linkend="release_source_building" />,
+                                       linkend="source_building" />,
the only change is the SVN source code URL, which is &THIS.TRUNK_SOURCE_CODE_URL;.
                        </para>
                </section>

        </section>
-
-       <section
-               id="binary_release">
-               <title>Binary release</title>
-               <para>You
-                       can obtain binary release from &THIS.RELEASE_BINARY_URL;
-                       (section
-                       <literal>Mobicents Protocols Suite</literal>
-                       ).
-                       It contains following:
-               </para>
-               <variablelist>
-                       <varlistentry>
-                               <term>Documentation</term>
-                               <listitem>
-                                       <para>Up to date documentation for current 
release.</para>
-                               </listitem>
-                       </varlistentry>
-                       <varlistentry>
-                               <term>Dependencies</term>
-                               <listitem>
-                                       <para>
-                                               All required dependencies, ie.
-
-                                               <literal>Stream</literal>
-                                               ,
-                                               <literal>ASN</literal>
-                                               .
-                                       </para>
-                               </listitem>
-                       </varlistentry>
-                       <varlistentry>
-                               <term>Binary release</term>
-                               <listitem>
-                                       <para>All supported protocol modules as jar 
files.</para>
-                               </listitem>
-                       </varlistentry>
-                       <varlistentry>
-                               <term>SS7 Service</term>
-                               <listitem>
-                                       <para>
-                                               SS7 service which can be 
deployed in
-                                               <literal>JBoss</literal>
-                                               server.
-                                       </para>
-                               </listitem>
-                       </varlistentry>
-                       <varlistentry>
-                               <term>Shell CLI   </term>
-                               <listitem>
-                                       <para>Shell
-                                               like tool to manage &THIS.PLATFORM; 
&THIS.APPLICATION;.
-                                       </para>
-                               </listitem>
-                       </varlistentry>
-               </variablelist>
-               <para>Binary release has following layout:</para>
-               <!-- XXX AMIT: Add image here. -->
-       </section>
-
 </chapter>

Reply via email to