New Basic3pcc sample application addition in SailFin
This sample includes 2 applications as shown in the figure below:
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:
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> and HOST_IP_ADDRESS=<your actual ip address, not localhost/127.0.0.1>
- % ./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://<your-host>:<your-port>/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 :
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 :
Figure 4. Third Party Call Control (3pcc) call establishment.