Call Controller (CC)– This component take care of various call related operation in O365, this includes Reverse number lookup, call progress, routing calls to/from PSTN. Sends a roster of connected callers & if required then ring multiple endpoints. Coordinates Call Me at scenarios from Teams clients.
SIP Proxy (SP) is the bridge which translates HTTP REST signaling to SIP. This will generally happen when a call need to go out from Teams towards SBC using Direct Routing. Before an incoming or outbound call can be processed, OPTIONS messages are exchanged between SIP Proxy and the SBC. These OPTIONS messages allow SIP Proxy to provide the allowed capabilities to SBC. It is important for OPTIONS negotiation to be successful (200OK response), allowing for further communication between SBC and SIP Proxy for establishing calls
Transport Relay (TR) – Provides media relay services to clients that cannot connect directly to SBC.
Media Controller (MC) is a microservice in Azure that assigns Media Processors and creates Session Description Protocol (SDP) offers.
Media Processor (MP) is B2BUA, which means it can change a codecs (for example, SILK from Teams client to MP and G.711 between MP and SBC), also it is a public facing component that handles media in non-bypass cases and handles media for voice applications, its instance is existing in main data centers only.
A sample call flow:
- Teams user called a PSTN number with Direct Routing Configuration in place.
- An Http Rest API signal will be sent from Teams client to O365 Team infra.
- Call will be sent to Call Controller component of Teams infra.
- Call Controller will check the assigned Voice Routing policy. And identify the corresponding PSTN usage.
- Once SBC identified, SIP proxy will convert HTTP Rest to SIP request & route it to SBC.
- Once SBC responded back with 200 OK status and session is established. Then media will start flowing over a secured channel with real time protocol SRTP.
Pingback: MS Teams & VOIP Glossary - Cloud Mechanics