SlideShare a Scribd company logo
Bogdan Iancu
- 9th of November 2022 -
OpenSIPS 3.3 – Messaging in
the IMS and UC ecosystems
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
● highly customizable SIP server
● multi-process, low resource usage (written in C)
● bespoke configuration language (opensips.cfg)
● flexible and powerful (178 modules)
2
What is OpenSIPS?
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
OpenSIPS 3.3
..is “Instant Messaging” focused
3
● IM was/is usually
neglected in SIP
● IM is really important
in IMS ecosystem (RCS)
● There is no Unified
Communication without IM
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
SIP MESSAGE method, RFC 3428 ->
IM in Page Mode
IM, from MESSAGE …..
4
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Message Session Relay Protocol
(MSRP), RFC 4975, RFC 4976 ->
IM in Session Mode
…. to MSRP
5
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Session mode
The main advantage of Session Mode is the that you can deal
with IM in a more complex way, session based (or chats)
this enables more advanced IM oriented services to be built,
or unified with the audio/video/presence capabilities.
6
7
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
MSRP stack in OpenSIPS 3.3
8
Unified communication
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Message to MSRP GW
Before Unifying we need to Bridge / Gateway between:
● SIP clients with Page Mode (SIP MESSAGE)
● MSRP-based (“Session Mode”) Instant Messaging
10
11
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
MSRP User Agent
Also Bridging in the external apps/entities:
● External apps may use OpenSIPS API
● Events (to be notified) and commands (to trigger actions)
12
13
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Call Center to…Contact Center
In addition to voice/video, a Contact Center may support
Messaging/Chat, emails or tickets as communication channels
between Customers and Agents.
1. Agents, beside skills, will have multiple supported
communication types.
2. Certain communication types may support multiple parallel
channels (like an agent may do 4 chats simultaneous)
3. An agent cannot do different communication types in the
same time
14
15
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Call Distribution Algorithms
Balancing Mode
1. Distribute one item (call or chat) to each available
agent
2. An agent doing chats cannot take calls, even if he has
free channels!
3. ADVANTAGE: avoid overloading certain agents
4. DOWNSIDE: starvation of the audio calls in the queue
16
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Balancing mode
17
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Call Distribution Algorithms
Full-load mode
1. Optimize the chat sessions usage – once the agent takes a
chat, all the following chats will be assigned to him
2. Efficient in using the chat resources/sessions of an
agents, to leave as much space as possible for calls
3. ADVANTAGE: avoids call starvation in the queue
4. DOWNSIDE: may lead to a dis-balanced loading of chat
agents
18
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Full-load mode
19
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Call Distribution Algorithms
● None of the above algorithms are perfect
● The ideal algorithm will require some full queue
inspection (look-ahead) in order to compute the optimal
distribution
● Alternative - the “external” dispatching via API
○ Disable internal call dispatching
○ Build your own external application for implementing the algorithm
○ Use MI to fetch the status of the queued calls and logged agents
○ Use MI dispatching a call to an agent
20
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
External Call Distribution - API
21
IMS
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Rich Communication Services (RCS)
● RCS is a suite of specifications from OMA and GSMA aimed
at replacing SMS messages with a richer messaging system
● the vast majority of SIP-related RCS features are already
supported by OpenSIP
○ RFC 3261 (SIP)
○ RFC 3428 (SIP MESSAGE)
○ RFC 3550 (RTP/RTCP)
○ RFC 3501 (IMAP4)
○ RFC 4566 (SDP)
○ RFC 4975 (MSRP)
○ RFC 5547 (SDP attributes for file transfer)
23
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
RCS - what is missing?
● OpenSIPS already supports everything that’s SIP in there
● RCS capabilities - developers may need to program
OpenSIPS in order to mangle those capabilities before
routing RCS SIP traffic to an interconnected carrier
○ removing unsupported capabilities
○ adding extra ones in case an endpoint did not include them.
● showcasing the string-managing techniques needed to shape
up the RCS capabilities of the egress SIP messages
○ https://www.opensips.org/Documentation/Tutorials-RCS-Managing-Capabilities
24
- TADSummit 2022 -
Bogdan Iancu - OpenSIPS Project
Roadmap
● End-to-end encryption of MSRP chats
● Recording of MSRP chats (transcripts)
● Real time interception of MSRP chats (supervisor)
● Multi-chat support (MSRP conference)
● Better support for control events (like “typing”, “read”)
25
● Bogdan Iancu
○ OpenSIPS Project: www.opensips.org
○ Email: bogdan@opensips.org
Take-Away Message
Start the chatting with OpenSIPS 3.3
26

More Related Content

PDF
sip trunking design and deployment in uc networks
PPTX
Microsoft Lync 2010 Call Flows Explained
PDF
R43019698
PDF
Open mic mediaarchitecture_121113
PDF
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
PPTX
Sip architecture
PDF
Architecting an ibm sametime 9.0 audio visual deployment
PPTX
SIP Trunking overview
sip trunking design and deployment in uc networks
Microsoft Lync 2010 Call Flows Explained
R43019698
Open mic mediaarchitecture_121113
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
Sip architecture
Architecting an ibm sametime 9.0 audio visual deployment
SIP Trunking overview

Similar to OpenSIPS 3.3 – Messaging in the IMS and UC ecosystems. Bogdan-Andrei Iancu (20)

PDF
An hour with WebRTC FIC UDC
PPTX
Integrated Media Gateway and the Transition to IP
PPTX
Scaling Open Source Applications with SBCs
PDF
Scaling Open Source Applications with SBCs
PDF
IoT and M2M for Software Developers
PPTX
Webinar on 1st Open Call - slideset
PPT
MULTIMEDIA SERVICES OVER IP NETWORKS
PDF
RCA OCORA: Safe Computing Platform using open standards
PDF
ARCHITECTURE OF 80386 IN DETAIL SPPU COMPUTER ENGINEERING SEM 4
PPTX
Taking your Siemens PLC s7-1200 to industry 4.0
PDF
Building NGN Together - Towards a Regional IMS Ecosystem
PPTX
Rich communication suite
PPTX
OPC UA Inside Out Part 6 - Brownfield and Greenfield Webinar
PDF
OSGi Technology in the IP Multimedia Subsystem (IMS) for Converged Network Se...
PPT
1 VoIP Overview[1]
PPT
1 Vo Ip Overview
PPTX
Gain maximum benefit from Channel Technical Professionals and the technical p...
PPTX
Innovation in the network – Adding value to voice OpenCloud Bouygues
PDF
CURRICULUM VITAE
PDF
FIWARE Tech Summit - Stream Processing with Kurento Media Server
An hour with WebRTC FIC UDC
Integrated Media Gateway and the Transition to IP
Scaling Open Source Applications with SBCs
Scaling Open Source Applications with SBCs
IoT and M2M for Software Developers
Webinar on 1st Open Call - slideset
MULTIMEDIA SERVICES OVER IP NETWORKS
RCA OCORA: Safe Computing Platform using open standards
ARCHITECTURE OF 80386 IN DETAIL SPPU COMPUTER ENGINEERING SEM 4
Taking your Siemens PLC s7-1200 to industry 4.0
Building NGN Together - Towards a Regional IMS Ecosystem
Rich communication suite
OPC UA Inside Out Part 6 - Brownfield and Greenfield Webinar
OSGi Technology in the IP Multimedia Subsystem (IMS) for Converged Network Se...
1 VoIP Overview[1]
1 Vo Ip Overview
Gain maximum benefit from Channel Technical Professionals and the technical p...
Innovation in the network – Adding value to voice OpenCloud Bouygues
CURRICULUM VITAE
FIWARE Tech Summit - Stream Processing with Kurento Media Server
Ad

More from Alan Quayle (20)

PDF
What is a vCon?
PDF
Supercharging CPaaS Growth & Margins with Identity and Authentication, Aditya...
PPTX
Building a sub-second virtual ThunderDome: Considerations for mass scale sub-...
PDF
What makes a cellular IoT API great? Tobias Goebel
PDF
eSIM as Root of Trust for IoT security, João Casal
PPTX
Architecting your WebRTC application for scalability, Arin Sime
PPTX
CPaaS Conversational Platforms and Conversational Customer Service – The Expe...
PDF
Programmable Testing for Programmable Telcos, Andreas Granig
PDF
How to best maximize the conversation data stream for your business? Surbhi R...
PDF
Latest Updates and Experiences in Launching Local Language Tools, Karel Bourgois
PDF
What Everyone Needs to Know about Protecting the CPaaS Ecosystem from Unlawfu...
PDF
Master the Audience Experience Multiverse: AX Best Practices and Success Stor...
PDF
Open Source Telecom Software Survey 2022, Alan Quayle
PDF
TADS 2022 - Shifting from Voice to Workflow Management, Filipe Leitao
PDF
What happened since we last met TADSummit 2022, Alan Quayle
PDF
Stacuity - TAD Summit 2022 - Time to ditch the dumb-pipe, Mike Bromwich
PDF
AWA – a Telco bootstrapping product development: Challenges with dynamic mark...
PDF
Founding a Startup in Telecoms. The good, the bad and the ugly. João Camarate
PDF
How to bring down your own RTC platform. Sandro Gauci
PPTX
Radisys - Engage Digital - TADSummit Nov 2022
What is a vCon?
Supercharging CPaaS Growth & Margins with Identity and Authentication, Aditya...
Building a sub-second virtual ThunderDome: Considerations for mass scale sub-...
What makes a cellular IoT API great? Tobias Goebel
eSIM as Root of Trust for IoT security, João Casal
Architecting your WebRTC application for scalability, Arin Sime
CPaaS Conversational Platforms and Conversational Customer Service – The Expe...
Programmable Testing for Programmable Telcos, Andreas Granig
How to best maximize the conversation data stream for your business? Surbhi R...
Latest Updates and Experiences in Launching Local Language Tools, Karel Bourgois
What Everyone Needs to Know about Protecting the CPaaS Ecosystem from Unlawfu...
Master the Audience Experience Multiverse: AX Best Practices and Success Stor...
Open Source Telecom Software Survey 2022, Alan Quayle
TADS 2022 - Shifting from Voice to Workflow Management, Filipe Leitao
What happened since we last met TADSummit 2022, Alan Quayle
Stacuity - TAD Summit 2022 - Time to ditch the dumb-pipe, Mike Bromwich
AWA – a Telco bootstrapping product development: Challenges with dynamic mark...
Founding a Startup in Telecoms. The good, the bad and the ugly. João Camarate
How to bring down your own RTC platform. Sandro Gauci
Radisys - Engage Digital - TADSummit Nov 2022
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Modernizing your data center with Dell and AMD
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
A Presentation on Artificial Intelligence
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Approach and Philosophy of On baking technology
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Monthly Chronicles - July 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Modernizing your data center with Dell and AMD
Empathic Computing: Creating Shared Understanding
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
20250228 LYD VKU AI Blended-Learning.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Review of recent advances in non-invasive hemoglobin estimation
Digital-Transformation-Roadmap-for-Companies.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Unlocking AI with Model Context Protocol (MCP)
MYSQL Presentation for SQL database connectivity
A Presentation on Artificial Intelligence
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
Per capita expenditure prediction using model stacking based on satellite ima...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Approach and Philosophy of On baking technology
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Monthly Chronicles - July 2025

OpenSIPS 3.3 – Messaging in the IMS and UC ecosystems. Bogdan-Andrei Iancu

  • 1. Bogdan Iancu - 9th of November 2022 - OpenSIPS 3.3 – Messaging in the IMS and UC ecosystems
  • 2. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project ● highly customizable SIP server ● multi-process, low resource usage (written in C) ● bespoke configuration language (opensips.cfg) ● flexible and powerful (178 modules) 2 What is OpenSIPS?
  • 3. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project OpenSIPS 3.3 ..is “Instant Messaging” focused 3 ● IM was/is usually neglected in SIP ● IM is really important in IMS ecosystem (RCS) ● There is no Unified Communication without IM
  • 4. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project SIP MESSAGE method, RFC 3428 -> IM in Page Mode IM, from MESSAGE ….. 4
  • 5. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Message Session Relay Protocol (MSRP), RFC 4975, RFC 4976 -> IM in Session Mode …. to MSRP 5
  • 6. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Session mode The main advantage of Session Mode is the that you can deal with IM in a more complex way, session based (or chats) this enables more advanced IM oriented services to be built, or unified with the audio/video/presence capabilities. 6
  • 7. 7
  • 8. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project MSRP stack in OpenSIPS 3.3 8
  • 10. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Message to MSRP GW Before Unifying we need to Bridge / Gateway between: ● SIP clients with Page Mode (SIP MESSAGE) ● MSRP-based (“Session Mode”) Instant Messaging 10
  • 11. 11
  • 12. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project MSRP User Agent Also Bridging in the external apps/entities: ● External apps may use OpenSIPS API ● Events (to be notified) and commands (to trigger actions) 12
  • 13. 13
  • 14. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Call Center to…Contact Center In addition to voice/video, a Contact Center may support Messaging/Chat, emails or tickets as communication channels between Customers and Agents. 1. Agents, beside skills, will have multiple supported communication types. 2. Certain communication types may support multiple parallel channels (like an agent may do 4 chats simultaneous) 3. An agent cannot do different communication types in the same time 14
  • 15. 15
  • 16. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Call Distribution Algorithms Balancing Mode 1. Distribute one item (call or chat) to each available agent 2. An agent doing chats cannot take calls, even if he has free channels! 3. ADVANTAGE: avoid overloading certain agents 4. DOWNSIDE: starvation of the audio calls in the queue 16
  • 17. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Balancing mode 17
  • 18. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Call Distribution Algorithms Full-load mode 1. Optimize the chat sessions usage – once the agent takes a chat, all the following chats will be assigned to him 2. Efficient in using the chat resources/sessions of an agents, to leave as much space as possible for calls 3. ADVANTAGE: avoids call starvation in the queue 4. DOWNSIDE: may lead to a dis-balanced loading of chat agents 18
  • 19. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Full-load mode 19
  • 20. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Call Distribution Algorithms ● None of the above algorithms are perfect ● The ideal algorithm will require some full queue inspection (look-ahead) in order to compute the optimal distribution ● Alternative - the “external” dispatching via API ○ Disable internal call dispatching ○ Build your own external application for implementing the algorithm ○ Use MI to fetch the status of the queued calls and logged agents ○ Use MI dispatching a call to an agent 20
  • 21. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project External Call Distribution - API 21
  • 22. IMS
  • 23. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Rich Communication Services (RCS) ● RCS is a suite of specifications from OMA and GSMA aimed at replacing SMS messages with a richer messaging system ● the vast majority of SIP-related RCS features are already supported by OpenSIP ○ RFC 3261 (SIP) ○ RFC 3428 (SIP MESSAGE) ○ RFC 3550 (RTP/RTCP) ○ RFC 3501 (IMAP4) ○ RFC 4566 (SDP) ○ RFC 4975 (MSRP) ○ RFC 5547 (SDP attributes for file transfer) 23
  • 24. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project RCS - what is missing? ● OpenSIPS already supports everything that’s SIP in there ● RCS capabilities - developers may need to program OpenSIPS in order to mangle those capabilities before routing RCS SIP traffic to an interconnected carrier ○ removing unsupported capabilities ○ adding extra ones in case an endpoint did not include them. ● showcasing the string-managing techniques needed to shape up the RCS capabilities of the egress SIP messages ○ https://www.opensips.org/Documentation/Tutorials-RCS-Managing-Capabilities 24
  • 25. - TADSummit 2022 - Bogdan Iancu - OpenSIPS Project Roadmap ● End-to-end encryption of MSRP chats ● Recording of MSRP chats (transcripts) ● Real time interception of MSRP chats (supervisor) ● Multi-chat support (MSRP conference) ● Better support for control events (like “typing”, “read”) 25
  • 26. ● Bogdan Iancu ○ OpenSIPS Project: www.opensips.org ○ Email: bogdan@opensips.org Take-Away Message Start the chatting with OpenSIPS 3.3 26