We may earn an affiliate commission when you visit our partners.
Pardip Singh

After publishing my first course "Introduction to RCS", this course is the next in the series of Advanced courses on RCS. Ultimate objective of this course is to make the students understand how a chat or group chat session is setup with signaling control flows resulting in the setup of transport path that carry the messages from one subscriber to others who are part of the chat session.   

We shall go through following agenda and information flow and discuss end to end call flows for chat sessions towards the end of the course.

Read more

After publishing my first course "Introduction to RCS", this course is the next in the series of Advanced courses on RCS. Ultimate objective of this course is to make the students understand how a chat or group chat session is setup with signaling control flows resulting in the setup of transport path that carry the messages from one subscriber to others who are part of the chat session.   

We shall go through following agenda and information flow and discuss end to end call flows for chat sessions towards the end of the course.

  • Discuss in which scenarios, the RCS client on your phone gets Auto Configured and what particular parameters related to RCS get set on the client to provide you RCS services.

  • As we saw that RCS is completely based on IMS Network, we shall look at all functional elements that are part of IMS architecture. Then we shall see the Call Flow diagrams of how RCS client gets registered to IMS network and get associated to the Messaging Application Server.

  • Since RCS sessions are setup between two subscribers only when both support RCS and are IMS Registered, we need to understand what in the network gives us this functionality to check the Capabilities of other subscribers. That is where we shall go in more details of functionality of Presence Server. We shall see both Publication and Retrievals of capabilities of different subscribers.

  • Then we shall see the functions of a Messaging Server and the Message Store that control the logic of these RCS functions.

  • We cannot appreciate the end-to-end call flows for Chat Sessions without seeing how exactly the Messaging Transport Path based on MSRP Protocol is setup. We shall see the functionality of another element here called PCRF (Policy and Charging Rule Functions) that controls the QOS that has to be satisfied for this messaging transport path.

  • Our intent is to always setup end to end RCS connections when two or more subscribers are intending to Chat. But as we discussed in Introduction to RCS course about the Challenges and Obstacles facing RCS adaptation, for quite some time we may not see end to end RCS penetration. So, RCS standards have defined other means of sending the information between participants if the receiving entity or the network is not supporting RCS. This is where we shall discuss Standalone Messaging which is Pager Mode and Large Message Mode.  This also gives more real time experience to end users till we see full adaptation of RCS on all handsets.

  • After building this much understanding of all functional blocks, we shall tie them together to go in detailed Call Flows to setup a 1 to 1 chat session between two subscribers of the same Service Provider.

  • Finally, we shall extend this Chat concept to 1 to N Group Chat sessions.

  • Once the chat sessions are well understood, our next topic will be to see how we are able to send small or large files of different types on these chat sessions and also how do we communicate with Applications and Chatbots. That will be my next upcoming course "RCS File Transfers and Chatbot Communication".  Stay tuned for that.

  • To make sure that we keep the course length to an optimum duration, in this course, I will limit the scenarios of Chat Sessions between subscribers of same Service Provider.  If we add subscribers of different service providers in the chat session, it adds another level of complexity that will be the topic of advanced course solely Dedicated to “RCS Interoperability using NNI”. Stay tuned for that upcoming course.

Enroll now

What's inside

Syllabus

Introduction

In this lecture I wanted to cover a quick review of my Course on "Introduction to RCS" and then move forward to decide the Agenda and Learning Objectives for this advanced course on "RCS Chat Sessions A to Z"

Read more

In this lecture we go over the list of all the topics on which you will get a detailed understanding and in the end tie them together to show how  1to1 and 1toN Chat sessions work.

Through this section, student will know all the functions that the RCS does to provide you the RCS functions to the end. They will also know how the client gets configured with right parameter values.

In this lecture we are talking about the main functions that the RCS client is supposed to take care of.

Here we are talking about what are the main parameters that need to be set and in which scenarios, the configuration Server is used to reconfigure the RCS client.

This section gives a detailed view of each functional element involved in IMS network that allows that RCS client to do successful IMS registration and get associated with a Messaging Server

We covered all the Functional Entities in the IMS architecture that are responsible in selecting the right S-CSCF that will be able to serve the UE for all its RCS functions. 

Building the association of a messaging server with the RCS client on the UE is one of the goals of a successful IMS registration.  We tried to cover that aspect in this lecture.

The Call Flow diagrams are the best way to understand what is involved in a successful IMS Registration. That was the objective of this lecture to give you the flows starting from the registration request coming from the RCS client on the UE.

Which of the following steps is NOT typically involved in the IMS registration process for an RCS client? 

Checking the RCS capabilities of any subscriber is very important point in providing the RCS functions to the user. We shall discuss everything about it in this section.

Here we talk about the Architecture for the Presence Server as defined in standards and how we can describe it in a more simplified way showing Presenters and Watchers entities.

Here we describe the Publishing of Capabilities with a simplified Call Flow diagram.

In this lecture we are talking about a sample of PUBLISH method example so that we can describe all the fields that constitute a PUBLISH method.

Here we describe call flows that take place when a subscriber A is trying to check the RCS capabilities of Subscriber B that may belong to another service provider.

To make it more clear, here we discuss a sample of SUBSCRIBE and NOTIFY method so that we could see all the fields that are part of these methods.

In this short duration of this course, we cannot discuss all details of each method involved in Presence Server functionality.  So I wanted to give some of the important RFCs that will be usually referenced if you are working in any RCS Chat session issues.

The last lecture in this section deals with the RLS Resource List Server which is responsible to update the Presence information for all the subscribers in the Contact list in your phone.

Here we shall test the students' knowledge of how the RCS capabilities are published and retrieved by subscribers using Presence Server.

Messaging Server and the Message Store work in sync to make these RCS functions feasible. In this section we shall go over all the functions that they perform.

After going through this lecture, you will know all the functions performed by a Messaging Server.

After this lecture you will know all the functions performed by the Message Store.

In this section, we want to explain what is involved in setting up a dedicated bearer transport path which takes care of the required QOS for RCS functions.

Here we are talking of key features of MSRP so that in next two slides you will appreciate how we make these features feasible.

Here we describe the role of PCRF that takes care of QOS requirement for the dedicated bearer path.

Here we go through the call flows explaining how all elements are involved to setup a dedicated bearer path.

Questions on Messaging Server/Message Store and MSRP path setup
In this section you will know everything about Standalone Messaging as defined in GSMA RCS guidelines so that if the recipient is not RCS compatible, how we resort to other ways to send the message.

Standalone Messaging is defined within RCS standards which allow messages to reach the destination if the recipient is not RCS compatible.

Pager Mode is a way to send the message using SIP MESSAGE method that carries the small text or image to the Messaging Server that then decides how to send it to the destination based on status of the recipient.

This is a way to send a larger message to the recipient even when the destination does not support RCS>. We shall describe this with a Call Flow diagram.

In this section we are going to tie everything that we learnt in previous sections to see how a 1 to 1 chat session gets setup and what other variations can take place for the session.

Here we see call flows of a successful 1 to 1 Chat session setup. This ties up all the functional elements that we discussed in previous sections.

In this lecture we are covering a 1to1 Chat session setup where the RCS client on user A had to fall back to Legacy  SMS/MMS because the recipient was not supporting RCS.

here we are seeing another version of 1 to 1 Chat session where after all the setup, somehow the MSRP packets are failing to reach the destination. So we try to fall back to legacy but that also is not reachable. So we use Message Store to save the message for later delivery.

Here we shall discuss how a group chat session is setup and then how it is maintained for addition or removal of members of the group.

In this lecture we discuss how a successful Group Chat session is established.

If I have an ongoing Group Chat session and one member wants to add a new member in the group, what is call flow related to that activity. Lets discuss that in this lecture.

In this lecture we discuss how a member can be removed from an existing ongoing group chat session. We shall discuss this with a call flow diagram.

This section is just to recollect, what we have learnt in this whole course and request for feedback from the students.
Summary of what we have learnt
Conclusions

This set of questions will cover all the topics that we covered in this course.

Save this course

Save RCS Advanced Course - Chat Sessions A to Z to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in RCS Advanced Course - Chat Sessions A to Z with these activities:
Review IMS Fundamentals
Strengthen your understanding of the underlying IMS architecture, which is crucial for grasping RCS concepts.
Show steps
  • Review your notes on IMS architecture.
  • Focus on key components like CSCF and HSS.
  • Practice questions on IMS registration procedures.
Read 'IMS: IP Multimedia Subsystem' by Olivier Verscheure
Gain a deeper understanding of the IMS framework that underpins RCS technology.
Show steps
  • Obtain a copy of the book.
  • Read the chapters related to IMS architecture and protocols.
  • Take notes on key concepts and terminology.
Discuss Call Flows with Peers
Reinforce your understanding of RCS call flows by explaining them to your peers and answering their questions.
Show steps
  • Form a study group with other students.
  • Choose a specific call flow to discuss.
  • Take turns explaining the steps involved.
  • Answer questions and clarify any confusion.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Create a Call Flow Diagram
Solidify your knowledge of a specific RCS call flow by creating a detailed diagram illustrating each step.
Show steps
  • Select a specific RCS call flow.
  • Research the steps involved in the call flow.
  • Create a visual diagram using a drawing tool.
  • Label each step clearly and concisely.
Explore 'RCS: The Next Generation Messaging Platform' by Mikael Grill
Deepen your understanding of RCS specifications and industry trends.
Show steps
  • Acquire a copy of the book.
  • Focus on chapters related to call flows and messaging protocols.
  • Compare the book's content with the course material.
Contribute to an Open Source RCS Project
Apply your knowledge of RCS by contributing to an open-source project related to messaging or telecommunications.
Show steps
  • Find an open-source project related to RCS.
  • Explore the project's codebase and documentation.
  • Identify a bug or feature to work on.
  • Submit a pull request with your changes.
Develop a Presentation on RCS Security
Research and present on the security aspects of RCS, including potential vulnerabilities and mitigation strategies.
Show steps
  • Research RCS security protocols and vulnerabilities.
  • Create a presentation outline.
  • Develop slides with clear explanations and visuals.
  • Practice your presentation delivery.

Career center

Learners who complete RCS Advanced Course - Chat Sessions A to Z will develop knowledge and skills that may be useful to these careers:
IMS Engineer
An IMS Engineer specializes in the IP Multimedia Subsystem (IMS) architecture, which is crucial for delivering multimedia services. This course is directly relevant, providing a detailed understanding of how RCS leverages the IMS network to establish chat sessions. An IMS engineer benefits from the course's comprehensive coverage of IMS functional elements, registration processes, and the association of RCS clients with messaging application servers. The call flow diagrams included in the course are very helpful for visualizing and troubleshooting IMS-related issues. The in-depth discussion of presence server functionality and capabilities exchange mechanisms can further enhance their expertise.
Messaging Protocol Specialist
This course is valuable for a Messaging Protocol Specialist, because it offers insights required into the setup, control flows, and transport paths of chat sessions. Messaging protocol specialists often work on developing and refining standards and implementing messaging protocols. The course's detailed examination of IMS architecture, presence server functionality, and MSRP protocol is directly applicable. Understanding how PCRF controls the quality of service for messaging transport is also critical. The course's exploration of standalone messaging and RCS interoperability provides a comprehensive view of modern messaging challenges and solutions.
RCS Solution Architect
This course provides a strong foundation for an RCS Solution Architect, who is responsible for designing and implementing Rich Communication Services solutions. The course's comprehensive overview of chat session setup, IMS network integration, and messaging transport is directly applicable to this role. An RCS solution architect benefits from understanding how RCS clients are auto-configured, how capabilities are exchanged, and how messaging servers function. The detailed call flows included in the course are invaluable for designing robust and scalable RCS solutions. The course's coverage of standalone messaging and RCS interoperability addresses critical real-world challenges in RCS deployment.
Telecom Engineer
A Telecom Engineer designs, develops, and maintains communication systems. This course on RCS chat sessions helps build a foundation for understanding the intricacies of modern messaging protocols vital to this role. Telecom engineers often work with protocols like MSRP, SIP, and technologies related to IMS networks. The detailed exploration of call flows for chat session setup is particularly relevant. Knowledge of legacy fallback mechanisms, such as SMS/MMS, discussed in the course, is beneficial in ensuring robust communication solutions. Examining this course's discussion of standalone messaging can provide insights to a telecom engineer for RCS adaptation.
Technical Support Engineer
A Technical Support Engineer provides assistance to customers experiencing technical issues with communication systems. The detailed call flows and explanations of RCS protocols covered in this course are valuable for troubleshooting problems related to RCS chat sessions. A technical support engineer can use the information from this course to understand the different stages of a chat session setup, identify potential points of failure, and diagnose issues more effectively. The course's coverage of standalone messaging and fallback mechanisms allows for better handling of compatibility-related problems. Being familiar with the discussed functional elements helps.
Telecommunications Consultant
This course is useful for a Telecommunications Consultant, who advises organizations on communication technologies and strategies. The course's comprehensive overview of RCS chat session setup and IMS network integration provides valuable insights. A telecommunications consultant can leverage this knowledge to guide clients on RCS adoption and implementation. The course's discussion of standalone messaging and RCS interoperability addresses common concerns related to RCS deployment. Understanding the roles of different functional elements is helpful for consultants.
Baseband Engineer
This course provides valuable information for a Baseband Engineer who works on the physical layer aspects of wireless communication. The course’s detail into how RCS clients are auto-configured provides the baseband engineer the framework for how to connect devices. The Baseband Engineer benefits from how the call flows are completed and should pay close attention to the messaging servers and the coverage of standalone messaging and RCS interoperability.
Mobile Device Engineer
This course is useful for a Mobile Device Engineer because it provides deep insight into how RCS services are delivered to mobile devices. Mobile device engineers design, develop, and test mobile devices, and this course provides a solid understanding of RCS protocols and IMS networks. They should pay close attention to how RCS clients are auto-configured, how capabilities are exchanged, and how messaging servers function. The course’s coverage of standalone messaging and RCS interoperability addresses critical real-world challenges in mobile device RCS capabilities.
Quality Assurance Engineer
A Quality Assurance Engineer ensures the reliability and performance of communication systems. This course may prove valuable for understanding the end-to-end call flows and potential fallback scenarios in RCS chat sessions. A quality assurance engineer testing a chat application can use the knowledge gained from this course to design comprehensive test cases. The course's discussion of MSRP protocol and quality of service considerations is very relevant for performance testing. The exploration of standalone messaging and fallback mechanisms provides insights into handling scenarios where RCS is not fully supported, which is crucial for ensuring a consistent user experience.
Network Architect
The role of a Network Architect involves designing and implementing computer networks. This course may be useful in understanding the signaling and transport mechanisms behind RCS chat sessions, which are important considerations for modern network design. The course provides a comprehensive look at how RCS clients register with IMS networks and establish messaging transport paths, thereby allowing the architect to consider these elements in their designs. A network architect should pay close attention to the course's discussion of quality of service and the role of PCRF, because these components are essential for ensuring reliable and efficient communication.
Unified Communications Specialist
A Unified Communications Specialist integrates various communication methods. This course may be useful in giving them an understanding of how RCS chat sessions are set up and managed, providing a deeper insight into mobile messaging integration within unified communication platforms. The course's discussions on IMS network elements, SIP, MSRP protocol, and quality of service are all relevant. The discussion on presence server functionality and capabilities exchange mechanisms can further inform integration strategies. Unified communication specialists can use the knowledge from this course to enhance their expertise in delivering comprehensive communication solutions.
Network Security Engineer
A Network Security Engineer is responsible for securing computer networks and communication systems. This course may be useful for understanding the protocols and architectures used in RCS chat sessions, which can help in identifying potential security vulnerabilities. The course's exploration of IMS network elements and signaling flows can aid in assessing the security aspects of RCS deployments. A network security engineer can use the knowledge of MSRP protocols to assess the end-to-end security. Any discussion of standalone messaging is highly relevant to network security.
Voice over IP Engineer
A Voice over IP Engineer deals with the technologies and protocols that enable voice and multimedia communications over the internet. This course may be useful in understanding how RCS chat sessions are established and managed, as these rely on similar underlying principles as Voice over IP. The course's detailed examination of IMS network elements, SIP signaling, and MSRP protocol is relevant to a Voice over IP engineer's work. Knowledge of quality of service mechanisms, such as PCRF, is also valuable for ensuring reliable communication. The understanding of transport path is important to the optimization of voice over IP communications.
Mobile Application Developer
A Mobile Application Developer focuses on creating applications for mobile devices. While this course may not directly focus on coding, it helps build a strong understanding of the underlying communication protocols used by chat applications. A mobile application developer may find the discussions on RCS client auto configuration, IMS network registration, and capabilities exchange to be valuable. Understanding the intricacies of setting up chat sessions is important for developers aiming to build high-performance, reliable messaging applications. The sections on standalone messaging and fallback mechanisms are also relevant for ensuring broad compatibility.
Wireless Network Planner
A Wireless Network Planner designs and optimizes wireless communication networks. This course may be useful in understanding the requirements and protocols associated with RCS. The course's discussions on IMS registration, messaging transport paths, and quality of service considerations all relate to the performance of wireless networks. The discussion of PCRF and its role in managing quality of service is pertinent. Wireless network planners can use this information to ensure their networks are capable of supporting RCS services effectively. Understanding MSRP protocol provides additional leverage.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in RCS Advanced Course - Chat Sessions A to Z.
Provides a comprehensive overview of the IMS architecture and its various components. It is particularly helpful for understanding the underlying infrastructure that supports RCS. While not strictly required, it offers valuable background knowledge and can serve as a useful reference throughout the course. It is commonly used as a reference by telecommunications professionals.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser