WebRTC compatible android client

This post describes the requirement of creating a SIP phone application on android over the same codecs as WebRTC ( PCMA , PCMU , VP8) . In my project concerning the demonstration of WebRTC inter operability ( presence , audio / video call , message )  with a native android client , I had to develop a lightweight Android SIP application , customized for the look and feel of the webrtc web application . This also enables the added services to WebRTC client such as geolocation , visual voice mail , phonebook , call control options be set from android application as well .

Aim :

Android webrtc- sip client development , using sipml5 stack implemented through web services and native android programming .  

Software Used:

⦁ Eclipse IDE
⦁ Java SE Development Kit 7.0
⦁ Android SDK

Tasks :

⦁ Authorization of a user, based on his/her credentials (Database local to the application).

webrtc_android_2
⦁ Navigation Drawer on the home page which shows a menu giving the user various options like:
⦁ View Home Page
⦁ View Contact List
⦁ View/Edit My Profile
⦁ View My Location
⦁ Sign Out

⦁ Phonebook sync : Importing contact list of the Android Phone into the application. Editing user profile with values like  User Name ,  Password ,  Domain. 

webrtc_android_1
⦁ Inclusion of a Web View in the application which currently opens the desired webpage(http://sipml5.org/call.htm).

⦁ Geolocation: Showing marker for the current location of user in Google Maps.Displaying the address of the user in a Toast Message.

webrtc_android_4

⦁ Audio / Video call capability 

android_webrtc

figure 1 : Login page , figure 2 : Call page , Figure 3 : Menu bar 

Future Roadmap:

⦁ Connecting the application to a database which sits on the cloud.
⦁ Based on the entries in the database the user will be able to:
⦁ Login to the application.
⦁ View or edit his/her details in the My Profile Section.
⦁ Understanding codes of sample applications for making SIP calls from Android OS like:
⦁ SipDroid
⦁ SipDemo
⦁ IMSDroid
⦁ Modifying the existing application to be able to make SIP calls like one of the apps listed above.

Modules :

Development Done:
  1. Development of an authorization page connecting the application to a local database from where values are inserted and retrieved.
  2. Development of navigation drawer where additional options for the application will be displayed making it a user friendly application.
Development Planned:

1.Connectivity to a cloud database.  

2. App engine on cloud.

3. Importing contacts from phone address book .

4. Offine storage of profile details and few call logs .  

Architecture:

webrtc_android_enviornment

……………………………………………………………………………………..

2nd and 3rd generation of telecommunication

Although the history of telecom evolution begins with PSTN and switches we shall oit them as they are truly legacy now .  We have seen the evolution of second to third generation of telecom most recently .  Where 2 G is referred to as the GSM era  , 2.5 G as the GPRS with GSM era . The following two diagram denote the service operators architecture nodes in both these times .

Note that in pure 2G there was only circuit switched communication services .

gsm

The advent 2.5 G bought packet switching for data access along with existing circuit switching for voice network .

gsm_gprs

Note that the processes such as billing etc had begun merging for both the circuit switched and packet switched networks .

However as the mobile became smarted and hungry for faster internet , it bbecame necessary to bring in faster speed and hence was born 3G. . Now 3G was further succeeded by 3.5G ( HSPA – High Speed Downlink Packet Access ) eventually 4G ( LTE Long Term Evolution ) as we can see now but that is another story .

Difference between WebRTC and plugin based communication

A lot of service providers ie telecom operators had deduced their own ways to provide Web based communication even before WebRTC was born . With time , as WebRTC has become stronger , more secure , resilient to failure they have come around to migrate their existing system from previous closed box native APIs to opensource WebRTC APIs.

The first figure ( given below ) depicts a communication platform build over plugins and proprietary APIs using HTTP REST based signaling .

2014-07-22_1212

Web Communication Service Architecture over HTTP/ REST API

As the migration took place the proprietary API components were replaced by Open standard based entities such as plugins were replaced by WebRTC APIs, HTTP REST based signalling was replaced by SIP ( Session Initiation Protocol ) .

Web Communication Service Architecture over WebRTC SIP

Web Communication Service Architecture over WebRTC SIP

Note telecom operator network did not had to face transformation by integration of WebRTC elements .

Interoperability between WebRTC , SIP phones and others

WebRTC SIP clients

What is the role of SIP server ?

 SIP Server convert the SIP transport from WebSocket protocol to UDP, TCP or TLS which are supported by all legacy networks. It also facilitates the use of rich serves such as phonebook synchronisation , file sharing , oauth in client .

How does WebRTC Solution traverse through FireWalls ?

NAT traversal across Firewalls is achieved via TURN/STUN through ICE candidates gathering .Current ice_servers are : stun:stun.l.google.com:19302 and  turn:user@numb.viagenie.ca

What audio and video codecs are supported by WebRTC client side alone ?

Without the role of Media Server WebRTC solution supports Opus , PCMA , PCMU for audio and VP8 for video call.

RTCBreaker if enabled provides a third party B2BUA agent that performs certain level of codec conversion to H.264, H.263, Theora or MP4V-ES for non WebRTC supported agents.

What video resolution is supported by WebRTC solution ?

The browser will try to find the best video size between max and min based on the camera capabilities.

Options are : sqcif | qcif | qvga | cif | hvga | vga | 4cif | svga | 480p | 720p | 16cif | 1080p

We can also predefine the video size such as minWidth, minHeight, maxWidth, maxHeight.

What bandwidth is required to run WebRTC solution ?

We can set maximum audio and video bandwidth to use or use the browser’s ability to set it hy default at runtime . This will change the outgoing SDP to include a “b:AS=” attribute. Browser negotiates the right value using RTCP-REMB and congestion control.

SIPML5 client by dubango

calltakenoffhold

Telestax WebRTC client

2014-06-11_2215

SIPJS with flash network support

windows_IE_1

JSSIP – MIT license 2014-02-09_1444

SIP phones in Ubuntu ( Linux system)

SFL phone

linux sfl 2 linux sfl 1

Yate SIP phone

linux yate 2 linux yate 1

Linphone

ubuntulinphon4 linuxlinphone2

 

Windows Operating system SIP softwares

Xlite is well known SIP softphone for windows dessktop

xlite 1

Xlite new version

windows_xlite_7 windows_xlite_6_001 windows_xlite_6 windows_xlite_3

 

Kapanga SIP softphone . It is also runnable on Linux desktop through windows compatibility softwares like wine

windows_kapanga_3 windows_kapanga_2

FreeSwitch Communicator , comes along with the Freeswitch Media Server .

windows_freeswitchcomm__2 windows_freeswitch_comm_3

Boghe SIP RCS client

windows_boghe_5 windows_boghe_4 windows_boghe_2 windows_boghe_1

Jitsi SIP phone

jitsi 2 jitsi 1

 

MAC SIP software

idoubs desktop SIP RCS client for Mac

Screen shot 2014-06-13 at 4.03.27 PM

iOS SIP phone applications

Linphone

IMG-20140703-WA0003  IMG-20140703-WA0006 IMG-20140703-WA0007  IMG-20140710-WA0001 IMG-20140710-WA0002

Android SIP applications

Sipdroid , opensource

Screenshot_2014-07-01-19-36-47 Screenshot_2014-07-01-19-37-00 Screenshot_2014-07-01-19-37-44 Screenshot_2014-07-01-19-37-54 Screenshot_2014-07-01-19-38-46

 

………………………………………………………………………………………………………………………….

Geolocation with SIP

Aim : 

The application is aimed to optimise the assignments of tasks to field works and engineers , with features such as user location reporting and location tracking of inventory at real-time .

Description :
To map the users on a map ie geo-locate their devices so as to make a visual interpretation of their presence , calls and accessibility .  It will third party Map API’s to provide the underlying map service and use ip address , presence service of SIP and  surrounding access point to track the current location.
Geolocation Services in SIP application Server

Geolocation Services in SIP application Server

Tools Used :
1. Openstreet Maps / Google Map API webservices to display the coordinates on a Map.
2. SIP Location Servers / Registrars
3.HTML5 geolocation : automated location detection using cellular positioning, Wi-Fi positioning, and GPS.
How does it work :
It gathers information from nearby wireless access points and your computer’s IP address,  to get an estimate of your location. That location estimate is then shared with the requesting website.
Usecase : Field Force Management
Tracking the employees/ managers and workers location carrying important cargo .Direct communication in case of navigation or instruction .
sip geolocation and Field force management

sip geolocation and Field force management

Accuracy :
May be able to provide a location to within a few meters. However, in other areas it might be much more than that. All locations returned by  are estimates only.
Direct Implications :
1. The thin html client performs faster .It is applicable to mobile devices, as well as traditional desktop browser applications.
Future :
The ideas could be enhanced to track user’s location history and make informed guess about the services they might be interested in
Image

PSTN/2G/3G/4G to IMS – Internet Telephony Converged Platform

 

3g 4g ims

3g 4g ims

The convergence of Internet and Telephony opens up new revenue streams for the Communication Service Providers by delivering new innovation based convergent applications.

 

What triggered this Technology development?

The Internet, IPTV and Social Media networking is evolving dynamically in the end user space of Communication Service Provider. This opens door for delivering new innovative services to end user through these converged applications.

A SP has to work with multiple Communication Service Providers globally and based on the experience with the customers, has to conceptualize and implemented new innovative use cases on open platform to reduce the cost and  migrate from legacy to Next Generation Networks.

SIP Application in IMS

What will it do, how and in which situation ?

The underlying technology of Internet Telephony Convergent Platform is JAIN SLEE Framework which is open standard for developing core network based applications. This JAIN SLEE framework enables development of network agnostic applications. This is implemented through resource adaptors for deploying same applications over different networks like SIP/IN etc. This framework provides capability to form new complex services through reusable service building block in much easier way then traditional methods. This reduces cost for launching new services and bundled different services into the new convergent service in network agnostic way. It also bring benefits in term of reducing the dependency on Vendor proprietary platform and eventually bringing down cost involved and Time to market in launching new service.

Open cloud architecture

What problem does this technology seek to solve?

Today communication service provider are facing vendor locking situation where most of services deployed are platform dependent which requires huge cost of investment for launching new services. Traditional service development platforms are major roadblock for operators to launch new collaborative services which involves both voice and data channels as they are not based on open standards and are tied to the vendor specific technologies. Also in a fast changing technology the operators need to switch their focus on new innovative services through which operator can monetize services and provide the value added experience to their end customers. To enable it we proposed and implemented framework which not only act as the new Internet Telephony convergent platform but also in sync with their future network transformation strategy as it is based on open standards. Through this platform same applications can be targeted to different segment of users with minimal cost impact. Some of the application which we have developed are detailed below.

a)Parental Control is an application through which parents can have control over their children’s Internet video on demand request. Once a child requests for any video, preview of the same(short clip of video) at the same instance is send to parents’ smart phones. Parents can see preview and can decide there and then weather it is adequate for his/her kids or not, and can either allow or deny through his mobile.

b)IPTV/VOD session mobility is a service which allow user to transfer their ongoing voice call/video-on-demand session from their smartphone to desktop/computing device/smart-device and vice-versa seamlessly.

c)Converged application like unified communication platform for trader community take advantage of both voice and data services and help trader community in terms of analytics and decision making process.

What is the specific breakthrough of this technology?

Internet and Telephony are two major drivers in Telecom domain. Hence the concept of convergence of Internet and Telephony is of great interest for the Telcos. Internet telephony, also known as voice-over-IP or IP telephony is the real-time delivery of voice between two or more parties, across networks using the Internet protocols, and the exchange of information required to control this delivery. New innovative use case scenarios  have been conceptualized and implemented considering new user behavior changes. These bring in value addition to CSPs in order to bring more revenue streams. Solutions like Secure VOIP bring another dimension of innovation as it provides a secured voice communication over the internet using open source software like Asterisk. This solution helps business reduce their operational communication costs using encrypted standard security algorithms.

Asterisk- Applications (1)

How does this technology compare with other technologies? 

Internet telephony convergent platform has the unique value proposition based on new innovative use case scenarios using multiple underlying technologies. These scenarios are implemented using Open Standards. Though many other vendors’ platform also provides some of the facilities of platform in part and pieces but none of them give complete end to end solutions suits to operators as our Internet Telephony convergent platform provides.

How does this new technology help in achieving the goals?

We consider it as solution which can act as foundation block to build a long term partnership with operators especially in area of services landscape. This solution enables operator to monetize different voice and data convergent services and in sync with the operator’s next generation transformation initiative. The services acts as catalyst to increase the data usage of end-users. Strong business case can be built with these services by operators as they meet the future demands of tech savvy end users. These services not only fill the void between communication service provider and social media/internet/video-on-internet but also take advantage of reach of social media/internet and eventually enable operator to add new revenue stream. These services can also help operator to increase their brand visibility with added advantage of social media and internet application bundled with their core services. Operator can charge it on per application basis or can be just carrier and charge for data usage. Convergent services which involves both the voice and data, enable operator to charge on voice services , data services and application usage. With our rich experience in convergent platform domain we believe we can convert significant opportunities in this space.

Explain your journey of Technology development ?

After seeding of concept of Internet Telephony convergent platform SP should explore partner product Software centric platforms like Open cloud, Oracle, Mobicient etc which offers the capability to deliver convergent applications at a low cost and using the open standards. Standards like JAIN SLEE provide capability for developing and delivering such applications across different type of underlying network. 

Mobicents Platform

One can develop the complete solution using such open, standard platforms as a base . The complete solution takes care of the real-network issues and solutions for the same. There were many hurdles and roadblock at first. Adaptation to open standards like JAIN SLEE requires fast ramp up as it is quite complex technology. In a small stipulated time a core team should have developed competency through Partner Training inputs and Brain Storming sessions. To test framework at lab, there would be dependency on many open source software and strategic partner products. There would be many incompatibility issues. Its important that such issues be  sorted out by exhaustive explorations of products and by bug fixes .

Benefits expected if this Technology is implemented / commercialized 

a) Communication service providers are able to realize appreciable cost saving through Internet Telephony convergent platform Operators deployed in their network. This is so legacy platform were costly and difficult to manage. This platform brings innovative and cost effective way of launching new collaborative services which brings new revenue stream.

b) Improved Time to market

c) Extensible architecture for the service helps in extending the service for multiple markets.

Social Benefits

Unified communications, where voice, video, email, text and other messaging technologies are combined to provide greater flexibility for users by enabling new ways to transfer information and manage connectivity. Integration of collaborative services with the social media platform like Facebook , Linkedin , Twitter etc, increases the connectivity and value experience of end users. Through social media based convergent applications operator can further increase their reach to end users by utilizing underlying the Internet Telephony convergent platform.

My Insights 

Based on my personal experience while implementing this technology/platform, I think this solution act as catalyst for enabling the transition from network centricity to customer centricity. This movement is further supplemented through the reduced dependence on legacy vendors and increased adoption of open standard based platforms. Through the converged application layer for Telcos I envisage a platform which is agnostic to underlying network layer. Unified platform allows carriers, mobile operators, and cable operators to rapidly create, manage, and deliver converged video, voice, and data service bundles across multiple networks and devices. It enhance end user experience and enable Telcos to add new revenue stream by offering value added services to their customer. 

……………………………………………………………………………………………………………

Business Challenges for a telecom service provider

With the fast pace of telecom evolution both towards the access network front ( ie GSM , UMTS , 3G , 4G , LTE , VOLTE ) to core network side ( ie application servers , registrar , proxies , gateway , media server etc ) a CSP ( copntent service provider ) is trying hard to keep up with the user expectation . The user expects a plethora of services , reduced cost and high speed bandwidth . If this was not enough a CSP also has competition  OTT (   Over The Top ) Players who provide communication and messaging for FREE .

Technology Evolution Challenges

  • • The increased data speeds and further more increasing hunger for the data overwhelms the existing network infrastructures.
  • • Ensure uniform service experience across the network technologies to check the customer churn.
  • • Access / Radio Technology independent delivery of services.
  • • Enhance Reuse for exiting investments.

Multiple Service Platform Challenges

  • • Typical network constitutes of Multiple Service Platforms increasing network complexity and integration challenges many fold.
  • • Heterogeneous multiple SDP Solutions typically deployed to cater to Multiple Types of Networks/ Standards/Variants
  • • Service Islands makes introduction of seamless services a challenging task for the CSP

Transport Upgrade and Convergence of Wireless Wireline

  • • Retain investments in copper wire systems while migrating towards next generation Fiber Optic systems.
  • • Severe competition among wire-line and wireless operators to provide latest services to retain subscriber base.
  • • Fixed Mobile Convergence leading to a diminishing gap among the revenue shares of various operators in the space, and leading to losses for wire-line only players.

IMSSF and RIMSSF

 

  • What is IM SSF  ?IP Multimedia Service Switching Function is a  gateway to provide IN service such s legacy VPN ( Virtual Private Network ),
IMSSFaltanai

IMSSF

 

  • What is RIMSSF  ?

Reverse IP Multimedia Service Switching Function Works on reverse principle to connect IN network  to IMS services using IMS services such as FMFM ( find me follow me ) .

RIMSSFaltanai

thoughts on a Fullproof communication platform

How easier would it be if there was a infrastructure that could connect all devices all communication protocols , old legacy PSTN phones , vOIP  ones like  SIP all the PBXs of the worlds , GSM handsets even the very new WebRTC .

I have assembled my thoughts of a ideal communication platform in this blog-post , it involves GSM PLMN PBX IP with their respective gateways , meeting at a particular point which understand all protocols and provides a single registry service for telecom network operations like OSS , BSS ( I haven’t gone into too much of those details , since it spoils the fun ) .

 

GSM PLMN PBX IP webrtc h323

Embedding a bit from NGN ( next generation network) , since I like the concept of softswitch ( Signalling gateway +   Media Gateway controller )  .

All the above should connect to an IP network . why ? Because the future lies in IP telephony . Also because it becomes easier to make provisioning system for the admin to add new policies , review real-time statistics and for the users to avail new servers and customize their services settings any time .

softswitchMGW

Ofcourse there will arise codec inter- operability issue s, firewall ICE issues so on … yet all great inventions start with an idea , dont they :)

Mobility with webRTC and SIP

mobilitytrends Mobility trends in the last decade.

As Services like :

  • Social networking integration with telecommunication ,
  • seamless web connectivity ,
  • session continuity from tv to tablet to phone ,
  • multi devices session sync call ,
  • Voice mail  etc    ,

are popular hit among masses , it is high time to introduce a real-time  communication technology  that is not just device but Operating system agnostic too .One that is lightweight and  easy to use  . Something that requires no installation or support or plugin or meddling with anything on the system .

 

Can there be something that matched all of the above ?

WebRTC is one shot answer to the problems . Its free and fantastic.

Possible usecases of webrtc  based tools coupled with signalling server and service API’s , range from Enterprise communicator to e-leaning , from tele-medicine to field force management .

mobilityreach

 

 

 

 

 

 

 

Connecting Webrtc enabled smart devices with browser to the devices that doesn’t have browsers like GSM /  IN phone , Legacy PBX , IMS endpoints  such as IPTv .

Mobiles

MVC vs Struts2 vs Spring3

MVC :

Model : bean classes or POJO , compromising of variables declarations , getters and setters . DAO operations

View : Front end components like , jsps , html maybe servlets too, along with other styling css , Javascript , JSON , Jquerry , AJAX

Controller : the servlets responsible for taking the parameters or command from front end page , processing dao operations using beans and returning the result back to front end pages for display .

web.xml : servlet mappings

proprieties files: url , username and password for db connection object

Major Enhancements WebRTC

Struts2

 

Major Enhancements WebRTC (1)

 

 

Spring 3

 

Major Enhancements WebRTC (2)

Tools for a Telecom software Engineer

evernote    desktop

  • Evernote for notekeeping
  • Eclipse to do real programming

github  mysql

  • Github to upload download code
  • MySQL  workbench to take care of Database Management

 

 

Technologies to Work with

 wenrtc players icon

  •  IETF
  • W3C
  • WebRTC
  • HTML
  • Java
  • GSMS standards

 

 

 

tools

Frameworks

frameworks

  • Struts
  • Hibernate
  • Spring
  • EJB

 

Applications for Telecom Providers that cater to SIP

IMS services 

 

Survilliance
Stream media from Surveillance camera into mobile by just calling a particular number. The camera also records movements and send a message to user on suspicious activity .
This is a user triggered application for security purpose. If an IP camera is installed in secure zone. The user can run the surveillance application on his smart phone. As IP camera detects any motion, immediately this application sends a SMS and a mail having snapshots of scene before and after the suspected motion. The user can directly go to the URL’s obtained from mail and see the suspected event. In addition to this at any point of time he wants to see the captured media feed from the camera he just needs to give a call to the camera .
•SIP Trunking
The SIP Trunking can be implemented to deliver a SIP Trunk connection with  any number of IP-based voice “circuits” to each customer site and enabling the multiple SIP Trunks from different sites that can be grouped together so that different premises for a customer can be linked and interconnected.  It includes the functionality of Call control and number translation
•Voice Call Continuity
•In this use case call is established between two users Bob and Alice using PC, if Bob wants to resume call from his mobile, he needs to run the VCC application on his mobile. Bob resumes the call to Alice through his mobile. The former connection is between PC to PC, Later the connection transfers between PC and mobile
•Enhanced Call Screening
•The use case implements the screening of many SIP users and the user can enable the feature of Do not Disturb for any particular date, time of the day or day of the week. Also every call made or screened is recorded with timestamp
•Auto Attendant
•The use case implements the screening of many SIP users and the user can enable the feature of Do not Disturb for any particular date, time of the day or day of the week. Also every call made or screened is recorded with timestamp
•Click To Dial
•A supervisor can enable the call between any two registered SIP clients via a web based interface

•Orchestration of IN/IMS services

Open Cloud Service broker orchestrates services, by managing the interactions between the services in a centralized middleware layer. The Open Cloud Service Interaction SLEE (SIS) provides service brokering and service interaction functionality for SS7 and IMS networks. We can orchestrate two services such as Call Screening and find-me follow me (fmfm). The usecase is that when the caller calls callee it will be checked if the callee has screened the caller or not, in case the caller is not screened the second service fmfm will be invoked. If the callee has registered from multiple devices, till the call is not picked all the numbers will be tried
•Credit Transfer
•The Credit Transfer service enables subscribers to transfer credit from their post-paid or pre-paid account to another subscriber’s pre-paid account. For example, a parent can quickly top-up their child’s balance. The donating subscriber can transfer credit using SMS or a USSD menu, or can call an IVR service. When credit has been transferred both the donating subscriber and the credited subscriber receive an SMS detailing the credit transferred.
•Call Request
•Enables a pre-paid subscriber with low credit to request a contact to call them. The subscriber uses USSD menus or calls a service number and provides the number of their contact. Additionally, the service may also be automatically offered to subscribers attempting to call with insufficient credit.
•The service can either simply send a text message to the contact requesting them to call back, or the service may out-dial and interact with the “called” party, asking them to accept the call charges before setting up the call. The service can be configured for use only by pre-paid customers with a balance below a specified threshold, and may be restricted to send call requests only to on-net destinations.
•Toll Free Phone Number
•The Free-phone Number application enables enterprise subscribers to provide a free-phone number for their business, so their customers can call them for free from land lines and reduced cost from mobile (depending on local practices).
•Calls made to the free-phone number are diverted to the enterprise subscriber’s regular number (or any other number they specify). The enterprise pays for the originating and terminating call charges.
•Cloud-based PBX
•This service, hosted by the network operator, provides enterprises with PBX functionality without needing equipment to be installed on their premises, with opportunities to buy as a monthly subscription rather than as a capital investment.
•PBX functions may include: Call forwarding, call transfer, call pick-up, call hold, call screening, hunt groups, call distribution and call queuing, etc.

SIP in depth

SIP headers :

Display names are described in RFC 2822
From also contains a display name and a SIP URI that indicate the originator of the request.  The From also contains a tag parameter which is used for identification purposes.
Call-ID contains a globally unique identifier for this call. Mandatory
CSeq or Command Sequence contains an integer and a method name. The CSeq number is incremented for each new request within a dialog and is a traditional sequence number.
Contact contains a SIP URI that represents a direct route to the originator usually composed of a username at a fully qualified domain name (FQDN). While an FQDN is preferred, many end systems do not have registered domain names, so IP addresses are permitted.  The Contact header field tells other elements where to send future requests.
Max-Forwards serves to limit the number of hops a request can make on the way to its destination. It consists of an integer that is decremented by one at each hop.
Content-Type contains a description of the message body.
Content-Length contains an octet (byte) count of the message body.
sip headers 1 sip headers 2 sip headers 3

Mandatory SIP headers

  • INVITE sip:altanai@domain.comSIP/2.0
  • Via: SIP/2.0/UDP host.domain.com:5060
  • From: Bob <sip:bob@domain.com>
  • To: Altanai <sip:domain@wcom.com>
  • Call-ID: 163784@host.domain.com
  • CSeq: 1 INVITE

session description in SDP

sdp

  • v=  (protocol version)  Mandatory
  • o=  (owner/creator and session identifier).   Mandatory
  • s=  (session name)   Mandatory
  • t=  (time the session is active)   Mandatory
  • i=* (session information)
  • u=* (URI of description)
  • e=* (email address)
  • p=* (phone number)
  • c=* (connection information – not required if included in all media)
  • b=* (bandwidth information)
  • z=* (time zone adjustments)
  • k=* (encryption key)
  • a=* (zero or more session attribute lines)
  • r=* (zero or more repeat times)Media description
  • m=  (media name and transport address)  Mandatory
  • i=* (media title)

TYPICAL SIP INVITE :

  • INVITE sip:01150259917040@67.135.76.4 SIP/2.0
  • Via: SIP/2.0/UDP 69.7.163.154:5060;branch=z9hG4bK400fc6e6
  • From: “8069664170” <sip:8069664170@69.7.163.154>;tag=as42e2ecf6
  • To: <sip:01150259917040@67.135.76.4>
  • Contact: <sip:8069664170@69.7.163.154>
  • Call-ID: 2485823e63b290b47c042f20764d990a@69.7.163.154
  • CSeq: 102 INVITE
  • User-Agent: MatrixSwitch
  • Date: Thu, 22 Dec 2005 18:38:28 GMT
  • Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER
  • Content-Type: application/sdp
  • Content-Length: 268
  • v=0
  • o=root 14040 14040 IN IP4 69.7.163.154
  • s=session
  • c=IN IP4 69.7.163.154
  • t=0 0
  • m=audio 26784 RTP/AVP 0 8 18 101
  • a=rtpmap:0 PCMU/8000
  • a=rtpmap:8 PCMA/8000
  • a=rtpmap:18 G729/8000
  • a=rtpmap:101 telephone-event/8000
  • a=fmtp:101 0-16
  • a=fmtp:18 annexb=no – – – -
  • c=* (connection information – optional if included at session-level)
  • b=* (bandwidth information)
  • a=* (zero or more media attribute lines)

SIP Responses

sip resp

 

1xx—Provisional Responses
100 Trying
180 Ringing
181 Call is Being Forwarde
182 Queued
183 Session in Progress199 Early Dialog Terminated

2xx—Successful Responses
200 OK
202 Accepted
204 No Notification

3xx—Redirection Responses
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
305 Use Proxy
380 Alternative Service

4xx—Client Failure Responses
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Conditional Request Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Unsupported URI Scheme
417 Unknown Resource-Priority
420 Bad Extension
421 Extension Required
422 Session Interval Too Small
423 Interval Too Brief
424 Bad Location Information
428 Use Identity Header
429 Provide Referrer Identity
430 Flow Failed
433 Anonymity Disallowed
436 Bad Identity-Info
437 Unsupported Certificate
438 Invalid Identity Header
439 First Hop Lacks Outbound Support
470 Consent Needed
480 Temporarily Unavailable
481 Call/Transaction Does Not Exist
482 Loop Detected.
483 Too Many Hops
484 Address Incomplete
485 Ambiguous
486 Busy Here
487 Request Terminated
488 Not Acceptable Here
489 Bad Event
491 Request Pending
493 Undecipherable
494 Security Agreement Required

5xx—Server Failure Responses
500 Server Internal Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Server Time-out
505 Version Not Supported
513 Message Too Large
580 Precondition Failure

6xx—Global Failure Responses
600 Busy Everywhere
603 Decline
604 Does Not Exist Anywhere
606 Not Acceptable

 

Mandatory Headers in SIP Response 
  • SIP/2.0 200 OK
  • Via: SIP/2.0/UDP host.domain.com:5060
  • From: Bob<sip:bob@domain.com>
  • To: Altanai<sip:altanai@domain.com>
  • Call-ID: 163784@host.domain.com
  • CSeq: 1 INVITE
Note : –

Via, From, To, Call-ID

, and 

CSeq 

are copied exactly from Request.

WebRTC end to end solution

webrtc solution

WebRTC client deployment view , accessible devices , network elements

 

WebRTC deploymenet overview and inetraction with other network elemets such as gateway , cloud storage ,  sipserver , IMS

WebRTC deploymenet overview and inetraction with other network elemets such as gateway , cloud storage , sipserver , IMS