SailFin Sample Applications - Basic3pcc

These instructions are for using this sample with basic (i.e., non clustered) SailFin installation.

This sample ("Basic3pcc") demonstrates a simple Third Party Call Control (3pcc) application in SailFin.

This sample includes 2 applications as shown in the figure below:


Jspwiki style: sortable

table-filter

Cannot resolve external resource into attachment.  

%%
%%

Figure 1. Applications bundled in Basic3pcc sample.

Application #1 (i.e., 3pccConvergedApp.sar) is a 3pcc call controller application. CallInitiatorServlet, which is a http servlet, is also part of this application using which the user can initiate a 3pcc call from the browser.

Application #2 (i.e., 3pccRegistrarAndProxy.sar) contains the RegistrarServlet to keep the registration details of user's SIP phone, and a ProxyServlet to proxy the SIP requests to the registered location of user's SIP phone.

Overall workings of the sample is described in the figure below:


Jspwiki style: sortable

table-filter

Cannot resolve external resource into attachment.  

%%
%%

Figure 2. Overall workings of the sample

Instructions to deploy the sample application Basic3pcc

Note: For executing sailfin samples user must have installed and configured SailFin server. Here 'SF_HOME' is the sailfin installation directory.

  • Set the environment variables SF_HOME=<your sailfin installation dir>, HOST_IP_ADDRESS=<your actual ip address, not localhost/127.0.0.1>
  • % cd SF_HOME/bin
  • % ./asadmin start-domain domain1

It would start the server.

  • % cd SF_HOME/samples/sipservlet/Basic3pcc

It would point to the sailfin sample 'Basic3pcc' direcotry

  • % SF_HOME/lib/ant/bin/ant

It would check your environment variable settings and it would display the available targets for use.

  • % SF_HOME/lib/ant/bin/ant deploy

It would deploy both 3pccConvergedApp.sar and 3pccRegistrarAndProxy.sar files on SailFin server.

  • Optional step % SF_HOME/lib/ant/bin/ant build
    Execute this step only if you want to modify this sample and rebuild the sample yourself. If you do this step, you need to redeploy the sample using step (5).

Instructions to execute the sample application Basic3pcc

  • Setup your X-Lite softphones using platform specific steps (1) - (4) described in the CallSetup sample application's "Instructions execute the sample application" section. While configuring make sure that the X-Lite listens on the correct IP address, not on localhost/127.0.0.1. For example, in Linux this can be done by specifying the IP address at Menu > System Settings > Network > Listen on IP.
    As mentioned in the instruction, you need to register both Alice's and Bob's X-Lite phones with SailFin.
  • Now Browse to http://&lt;your-host&gt;:&lt;your-port&gt;/3pcc (eg., http://localhost:8080/3pcc) and login as Alice. Use Alice as the the password.
    Note that the sample has pre-provisioned list of users which are Alice, Bob, Adam, Eve (with password same as user name). If you wish to re-provision the users, you can do so by editing SF_HOME/samples/sipservlet/Basic3pcc/userdb.properties file. If you do that then you need to re-build and re-deploy the sample using step (6) & (5) of the above section.
  • Once you are logged in, you will see the page like this :


Jspwiki style: sortable

table-filter

Cannot resolve external resource into attachment.  

%%
%%

Figure 3. Brower view after Alice logged in

  • Select the radio button against "Bob" and click "Call" button. This will establish a call between you (i.e., Alice) and Bob. The web page will also be updated with the call status and call history.
    The call establishment between you (i.e., Alice) and Bob is done as per 3pcc :


Jspwiki style: sortable

table-filter

Cannot resolve external resource into attachment.  

%%
%%

Figure 4. Third Party Call Control (3pcc) call establishment.

Continue to read how to explore SailFin cluster, high availability features using Basic3pcc sample application



3pcc-callestablish.png (image/png)
applications.png (image/png)
overview.png (image/png)
portal.png (image/png)