Aayush: weblog

Archive for the ‘presence’ Category

Integrating Ericsson SDS IMS Simulator with Mobicents and then rocking the house with Eclipse.

Posted by Aayush Bhatnagar on October 17, 2009


Hello,

In this post, I will explain how to integrate the Service Development Studio (SDS) which emulates the entire IMS core network, the HSS, a DNS server and BGCF etc with the Mobicents communication platform (also called JBCP).

IMS application development and testing could not get any more productive for developers using this combination.

The IMS application server used here on top of Ericsson SDS is the Presence Server deployed on Mobicents.

This post will provide step-by-step instructions to achieve this integration along with informative screenshots:

STEP-1: Download and Install Ericsson Service Development Studio in Eclipse.

I am using Eclipse Galileo for this demonstration.

You can now download the SDS in your eclipse installation by using the Software Updates mechanism (the same way we install plugins). As shown in the figure below, go to HELP and then click on “Install New Software”. Then you add this website for installation:

http://www.ericsson.com/developer/sds/pulsar

[I have had queries that this URL is not working when “clicked”. This URL is not supposed to be clicked, but added to the eclipse website updates and installed there]

Once you do so, you should see a list of packages for installation. However, the packages will only be visible if you un-check the option that reads: “Group Items by Category”. Once you do this, you will see the packages that need to be installed.

step1

You will need to accept the license for this software to proceed for installation as shown below:

step2

Once the packages are installed, re-start Eclipse for the changes to take effect. Once you restart Eclipse, you will start seeing the views associated with SDS.

STEP-2: Configure the DNS server of SDS using Eclipse:

Now configure the DNS server with the domain of the Mobicents server hosting the Presence service. For this example I have used a well defined IP address belonging to my laptop. I got this IP by virtue of connecting to the internet. Save the domain name in the DNS server as shown —> presence.mobicents.com

step3dns

Step-3: Configure the SDS HSS node for service control and service provisioning:

The next step is to configure the HSS.

Go to the HSS view as shown in the figure and configure the Service Trigger Point (SPT) for the Presence Service as shown below. The SPT is for the PUBLISH method, which is used by the presentity to publish their presence status to the server. By defining this SPT, we are telling the S-CSCF to make a routing decision for this message, whenever it is received.

step4hss1

Now, specify the definition of the SPT in the HSS view as shown. Define an initial filter criteria for this service, the SIP application server to be contacted (Mobicents in our case) and the default handling to be undertaken by the S-CSCF, in case Mobicents is not reachable.  The default handling here is SESSION_CONTINUED.

step4hss2

After the initial configurations of the DNS server and the HSS, it is time we start the action.

Step-4: Start the DNS Server:

Start the DNS server by clicking on SDS—>Server—>DNS—->Start DNS as shown in the figure below:

startdns

Step-5: Start the Call Session Control Function (CSCF):

Now start the CSCF by navigating to SDS—>Server—>CSCF—>Start CSCF.

startcscf

Step-6: Start the Test agent acting as an IMS UE:

Now start the test agent by navigating to SDS—>Test Tools—>Start Test Agent as shown below.

starttestagent

Step-7: REGISTER the test agent with the Ericssion IMS SDS core:

Now create a REGISTER request as shown in the figure and register the test agent with the IMS core network. You can provision any number of users in the HSS and register them in the IMS core network.

In the figure, you can see that we can add and remove additional SIP headers as needed by us for testing

registercreate

After creating the REGISTER request, send it to the IMS core network by clicking on the button and receive the 200 OK. You can also see the call flow in Eclipse that updates itself dynamically as the SIP messaging progresses.

registersend

Step-8:  Start Mobicents (JBOSS application server) on your machine:

Here, I am using Mobicents as the application server over IMS. Use the Presence Serve binary given here and start it on your local machine by issuing a run.bat -b <ip-address> command on Windows and a run.sh -b <ip-address> on Linux.

You can download the Presence Server binary from here:

https://sourceforge.net/projects/mobicents/files

Make sure that JAVA_HOME environment variable is set properly.

startjbcp

Step-9: PUBLISH your presence from the test agent:

Now, using the test agent send a PUBLISH request. Do not forget to add an Event:presence header to the request.

publishpresence

Send the request to the IMS core network. On the basis of our earlier configurations, the PUBLISH message will reach the Presence Server as shown below and is then processed by the Presence Server.

mobicentsgetssmg

So, you can see, how productive it can be using the right open source tools and projects for IMS service development and testing. It can save you a lot of time and effort by using the right tools.

Instead of struggling with Open IMS core, SDS can be used for IMS emulation. On top of the IMS core, you can use the Mobicents platform for rapid service creation and deployment.

All this can be achieved by JAVA developers using familiar tools (Eclipse workbench) and on the same machine !

So guys, dont wait…try it out !!

Tell me how you liked this demonstration and give me feedback. Please feel free to post here, in case you encountered any problems, or if this demo helped you in any way.

Cheers !

Posted in 3gpp, DNS, Eclipse, Ericsson, HSS, I-CSCF, IMS, Mobicents, P-CSCF, presence, S-CSCF, SDS | 22 Comments »