RCS ( Rich Communication Suite )

RCS ( Rich Communication Suite )

For the past few weeks, I’ve been trying to find the answer to this one. After much information gathering, I understood that majority of communication platform provider’s mostly OTT such as iMessage from apple, RBM(RCS Business Messaging) already supports these features. And it is partially a term coined by Google to bring smart communication features in Android and other smartphones. In essence, RCSe is a part of the broader IMS architecture published by GSMA.

Update: after 2019 plenty of carriers also already provide RCSe as a replacement for SMS. OEM providers like Samsung also have RCS feature inbuild in phones.

Rich Communications should be viewed as technology upgrade that will transition SMS and voice capabilities from Circuit Switched technologies into the all-IP world, including VoLTE. RCS and VoLTE are build over IMS technology. The RCS wil benifit from Standardization of the technical environment, shared by all industry players, to offer these services on a wide range of handsets

The Rich Communication Services programme is a global initiative to deploy inter-operator services within an industry ecosystem. Marketed by the GSMA under the brand name joyn,  RCS is an upgrade that marks the transition of messaging and voice capabilities from Circuit Switched technology to an all-IP world.Wider and large scale IMS deployment, interoperability between different terminal vendor RCS clients and RCS service interworking between operators are the key aims of the RCS Initiative.

What is special about RCS ?

In the face of new and innovative over the top messaging applications, mobile operators are experiencing declining SMS usage. With the launch of WiFi and VoIP enabled voice calling applications, similar declines in voice revenues are increasing, RCS presents and opportunity for telecom providers to rebrand their messaging solutions as a better product to compete against the growing influence of “Over-The-Top” (OTT) communications services providers.

  • Enhanced Phonebook: service capabilities and enhanced contacts information such as presence and service discovery.
  • Enhanced Messaging: enables a large variety of messaging options including chat, emoticons, location share and file sharing.
  • Enriched Calls: enables multimedia content sharing during a voice call, video call and video sharing (see what I see).

Rich Communication Suite (RCS) and RCS-e aim to seamlessly unify the communications experience by integrating traditional mobile telephony with new interactive services such as presence, instant messaging and content sharing enabled by the enhanced address book of the mobile phone. RCS leverages the 3GPP IMS architecture and uses SIP signalling to establish sessions to exchange instant messages, presence information, video and files

RCS releases

Five releases of the RCS specifications have been made to date. Each release expanded the scope of its predecessor.

  • Release 1 : Offered the first definitions for the enrichment of voice and chat with content sharing, driven from an RCS enhanced address book.
  • Release 2 : Added broadband access to RCS features: enhancing the messaging and enabling sharing of files.
  • Release 3: Focused on the broadband device as a primary device.
  • Release 4: Included support for LTE.
  • Release 5: The most recent release, global interoperability is a key aspect of these specifications.

As the team developed a web client for making and receiving SIP calls over websockets through a proxy SIP server , I felt its an  achievement big enough. To integrate it with RCS ( Rich Communication Suite ) stack appeared as a very complicated job .

I began by adding RCS specific standards modules one by one instead of importing the whole stack / library all together. The modules for XCAP for buddylist, MSRP for file transfer, geolocation  mapping , cloud sync of phonebook and message book have begun taking shape . In essence following features set are expected out of a RCS enabled Client ( short outline ) Provisioning

  • OAUTH integration with operator customer portal
  • RCS HTTP Auto-Configuration
  • Manual IMS credentials, typically reserved for testing / troubleshooting

RCS services

  • Service Discovery
    • OPTIONS and Presence supported
    • Address book polling
  • Delivery & display notifications o Message composing indication
  • 1-1 Chat
    • IMDN
    • Is-Composing
    • Store & forward / deferred message and notification delivery
    • Hotfixes compliant
  • Group Chat
    • Hotfixes compliant
    • Is-Composing
    • IMDN
    • Geo-location Push
    • Start and end a group chat session
    • Add or remove participants
    • Broadcast / Send messages to all participants
  • File Transfer
    • Send file via URL or as MIME attachment o Accept or Reject file transfer
    • MSRP based
    • HTTP based
    • Store & forward
    • Geo-location push via FT
    • vCard sharing
    • Thumbnail support
  • Voice & video
    o Best effort voice
    o Transcode
  • Network Address Book Support
    • Synchronization to SyncML based network address book
    • Contact import from Google, Facebook etc.


Pblished under Joyn in GSMS RDC Developer documents. There are many individual RCS APIs available. Brief details are as follows.

1. Log user in and out of the RCS server : Allows address book contacts to receive periodic updates of user availability for chat, file transfer and other services. This is essential for use of the RCS services.

2. Subscribe application to server-originated notifications :This is one of the most important aspects of RCS as events are asynchronous; the notifications channel is used by your application to know how an API call is proceeding and to receive updates from other users such as messages, files and status updates. You can subscribe to certain types of notifications if your application is focused on particular RCS services.

3. Network address book access and management : RCS provides each registered user with a server managed address book. Though the other APIs are not restricted to contacts in the network address book this makes it much more convenient to connect with other users. The network address book can have contacts added, removed, attributes changed, and is available to any application the user signs in to.

4. Chat API : Unlike SMS, which is broadly a ‘fire and forget’ service, the RCS chat services allow much more sophisticated messaging services to be built. Depending on user configuration you can check out whether the user has received the message, and displayed it.

RCS chat also allows feedback to other parties when a user is composing a message. There are also group chat services allowing multiple parties to collaboratively message. RCS provides API features for setting up a group chat session, adding or removing chat participants.

5. File Transfer : These APIs allow applications to send content between users – whether this is a picture or a document, and whether it is stored originally on the user’s device or elsewhere located on the Internet. They allow the recipient to receive information about the file separately from the file itself so the recipient can choose whether or not to accept the file.

6. User capabilities API : Enables the application to retrieve and amend system managed common capabilities of the user.

At this stage I will also put in a bit more about RCSe.

RCSe ( enhanced )

What is the difference between RCS-e and RCS?

RCS-enhanced (RCS-e) is the currently available version of RCS, developed to speed time to market. It offers enhanced features such as instant messaging, live video sharing, and file transfer across any device on any network operator

RCSe Features

  • Focus on advanced communication
    chat , file transfer , video sharing
  • Easy to Use
    zero touch from end user perspective
    minimal setup for subscribers
    Interoperability across devices , infrastructure components and service providers
  • Low barrier to entry / simplify networks
    Capability discovery using SIP OPTIONS
    Less impact on network elements and handset battery
    Lack of presence server reduces cost and time to market
  • Universal
    Allows implementation in lower range devices
    One common device specification

RCS-e Customer Value Proposition

New IP Communication Services, Profile Sharing, Native Device Integration


RCSe Characteristics

  • Dynamic Capability Discovery
  • User Perspective
  • network detects when user attaches with RCs e device
  • detection triggers network provisioning and client configuration
  • Security
    • authentication by network
    • SSO / GIBA in 3G coverage
    • SIP Digest in Wifi
    • Encryption for Wifi access
    • TLS for SIP and TCP media or IPsec
    • SRTP for UDP or IPsec
    • NAT traversal and Keep-alives

RCSe Releases

  • RCS-e (1.2.2) : RCS-e defined the initial IM/Chat functionality, File transfer, Image Share and Video share functionality over mobile packet switched networks, trusted and untrusted broadband networks.  It has gained wide acceptance in Europe as an initial deployment to be followed by future deployment phases.
  • RCS 5.0 is completely backward compatible with V1.2.2 specifications and adds new features such as best efforts IP video calls, Geo-location exchange, Social Presence, Standalone Messaging, and a network based blacklist. Global interoperability is a key aspect of these specifications, and as a result this version supports both OMA CPM and OMA SIMPLE IM, which are more widely requested in North America.
  • RCS 5.1 is also backward compatible with the V1.2.2 and 5.0 specifications.  It introduces additional new features such as Group Chat Store & Forward, File Transfer in Group Chat, File Transfer Store & Forward, and Best Effort Voice Call.

WebRTC/RCS Client

WebRTC Communication Client can meet the requiremnets of RCS and serve as a telco based platform for using TSP backened network to provide call and messaging to web users.

REST and SOAP Based Client
Integration with RCS features like MSRP, XCAP
Cloud Hosted Solution
Technical Expertise in HTML5,J2EE,SIP,WebRTC & IMS

WebRTC RCS Add-on Features

  1. Integrated charging: Users already have mobile service. WebRTC with session-based charging can be added onto existing service plans.
  2. Bundling: Messaging APIs can augment WebRTC apps with RCS and other messaging services developers
    Already know and implement.
  3. Reliability: QoS can provide assurance to users and priority services (enterprise, emergency, law enforcement, eHealth) that a WebRTC service will work as well as they need it to.

IMS integartion with RCS

RCS solution is required to bear its Net-Net session border controller (SBC) deployed at the access border of the SIP or IMS service network. SBC should provide critical control functions to deliver interactive communications services—voice, video and multimedia sessions—over the IP 3G RAN.

 Development paths

  1. RCS e-stack ( Orange Labs ) – installed and testing the originally present features with android 4.2.2 https://code.google.com/p/android-rcs-ims-stack/
  2. RCS oenapi ( GSMA ) – registered with developer license to use the non commercially API’s , attempts to run the same http://rcs.oneapi-gw.gsma.com/

Challenges in RCS intergration
There are technical challenges and requirements for RCS IP interactive communications:

  • Service reach: Deliver service to handsets and clients on networks with differing or conflicting network characteristics such as IP addresses, signalling and transport protocols and encryption.
  • Security: Protect network resources from attack and overloads and ensure the privacy of communications.
  • Revenue and cost optimization: Protect against theft and abuse of service and capture session data for billing, traffic management and planning.
  • Regulatory compliance: Enable emergency service routing and lawful intercept to comply with government regulations for VoIP and interactive communications.
  • SLA assurance: Handle latency-sensitive traffic with high priority and maintain service availability during abnormal busy periods.

Monitizations with RCS

Standards-based network services, such as GSMA OneAPI and Rich Communications Suite (RCS), along with service provider’s OSS/BSS “back-end” capabilities enables numerous features that gives application developers the ability to monetize communications, context, commerce and control. They can deliver their services more intelligently, by providing them with real-time information such as Data Connection type, tariff, roaming status, and device capabilities integrate innovative API such as integral Payments Engine.

RealTime Notifications: RCS gives choice of notifications such as sms, email, and push notification messages via Android, Apple or MS notification service. Device-level ad targeting can be by
•Time of Day
•Frequency Capping
•Direction of Travel

Context based communications

The suite of rich communication services with context-based capabilities have numerous applications too. For example integrating directly into business applications such as Field Service Management. The advantages of contextual commnication communciations is that it interact more intelligently and effectively with their customers, for example delivering targeted, contextually relevant marketing promotions, offers and coupons. Some application of RCS from user front is that it allows the user to describe issues in detail by allowing multimedia formats in tickets or complaina or even request higher Quality of Service temporarily for the delivery of, for example, High-Definition video content.

Smart Self care application using RCS

One of the possible applications using RCS-based advanced communication features can be smart self-care. This can include platform support and API integration to check real-time consumption, validity alerts, payment history, check available promo/discounted plans & period as well as Pay-online using sms/MMS. Self-care is a popular concept among many service/product providers and is developed for mobile applications on smartphones, and web portals on the internet. This is similarly integrable via SMS or Toll-Free number using IVR/USSD.

Realted Terms


  • File Transfer using  MSRP (or Message Session Relay Protocol) is an instant messaging or chat protocol, defined by the IETF in RFC4975. MSRP is a text-based, connection-oriented protocol for exchanging  arbitrary (binary) MIME content, especially instant messages.