In Feb 2020 I wrote a prescient article entitled "Where is MS & Microsoft Teams in the OnPrem to CPaaS Journey?" in which I explored where Microsoft was with a "Twilio-like API" for Microsoft Teams. At that time I estimated Microsoft is about 25% (looking back, perhaps a bit generous) of the way to a "Twilio-like API" for Microsoft Teams.
Well, today at Microsoft Ignite 2020 Microsoft has announced the Azure Communication Service, which is most definitely aimed at being a "Twilio-like API", but to accommodate no AAD requirement, it does not interface directly with Microsoft Teams.
What is the Azure Communication Service?
The Microsoft Developer article describes it like this "Built on the same Microsoft 365 infrastructure that supports Microsoft Teams, ACS offers developers consumption-based use of those same enterprise-ready chat, SMS, video and WebRTC capabilities".
It is an communication platform as a service that provides apis to build your own communication enabled apps. This means for those developers wanting to build a SMS, IM, audio, video & desksharing app, developers don't need to build the low level communication components, they can just use the apis to utilize Microsoft's services.
What is the difference between the "Microsoft Graph Communication APIs" for Microsoft Teams and "Azure Communication Service"?
Here is a quick comparison, first Teams Graph Communications API | Azure Communication Service:
Calls automated with CommAPIs show up in MS Teams reports | Unrelated to MS Teams
Utilizes the MS Teams platform you already paid for | Consumption based, unrelated to MS Teams billing
Requires Teams/AD Users | Does not require AD Users
Integrated to MS Teams/Automated MS Teams calls/meetings | Separate systems from Teams/Could integrate via SBC/Federation? (appears like Microsoft "light up integration to Teams in Preview soon..."-CVP Scott Van Vliet source: https://youtu.be/49oshhgY6UQ?t=735 )
Increasingly complete server API & no client API | Server API's & Client API's
audio calls, video, PSTN | SMS/IM/audio/video/PSTN/
Pricing
https://docs.microsoft.com/en-us/azure/communication-services/concepts/pricing#pricing-example-group-audiovideo-call-using-js-and-ios-client-librariesWhat Modalities Does ACS Support?
Below are some of the communication methods supported by ACS per the current Docs page:
- Chat
- Telephony
- SMS
- Voice
- Video
Our Experience Using the ACS Preview
Building a simple chat and video conferencing app with ACS is very simple.
Summary
ACS looks to provide a very nice Microsoft alternative to Twilio and other CPaaS API options. The Server and Client API components are complete enough to create many interesting solutions today. It is not a replacement to create native Microsoft Teams solutions.
To learn more about the ACS, watch the session "Innovate with Azure Communication Services" from Microsoft Ignite 2020.
Sources:
https://azure.microsoft.com/en-us/services/communication-services/
Azure Communication Service API Docs: https://docs.microsoft.com/en-us/azure/communication-services/
Ignite 2020 Microsoft Teams Developer Platform Article: https://developer.microsoft.com/en-us/microsoft-teams/blogs/microsoft-teams-microsoft-graph-dev-platform-ignite-2020/