Advertisement
Advertisement

More Related Content

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

More from Alan Quayle(20)

Advertisement

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
  9. Unified communication
  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
Advertisement