Azure Communication Services libraries now GA
Azure Communication Services libraries now GA
We’re excited to announce that Azure Communication Services is now generally available. Developers can easily add chat, voice calling, video calling, traditional telephone calling, SMS messaging, and other forms of real-time communication to their applications using the same services and technologies that power Microsoft Teams. Interoperability into Microsoft Teams is also supported (in preview).
We recently showcased Azure Communication Services at Microsoft Ignite. To see how these services work together, watch the sessions below:
- Microsoft Mechanics: Azure Communication Services Updates
- Ignite On-Demand: Accelerating digital customer engagement with Azure Communication Services
- Ignite Ask the Experts: Accelerating digital customer engagement with Azure Communication Services
Overview
In this article, we want share high-level scenarios that can be built using Azure Communication Services and how these scenarios are reflected in the design of our SDKs for a variety of platforms.
Azure Communication Services provides libraries for mobile apps, desktop, and web, so you can reach a broad audience.
- Bring your own identity. Azure Communication Services provides a lightweight identity framework so you can connect any kind of user or bot.
- Manage resources effectively. Azure Communication Services takes advantage of common Azure systems, like Azure Resource Manager, so you can programmatically manage and scale resources.
- Put the pieces together. Azure Communication Services has integration points with EventGrid, PowerApps, Teams and more.
SDKs for a variety of platforms
As a fully managed communication platform that enables developers and organizations to securely build communications features and connected user experiences across applications running on any device, Azure Communication Services offers the following core services:
- Voice and Video Calling - Make and receive voice and video calls over IP
- Chat - Enable One-to-One or Group Chat functionality
- SMS – Add SMS to applications and connect with users that prefer mobile communication. US only.
- Voice Calling (PSTN) - Allow for users to interact with a traditional telephone number, facilitated by PSTN (Public Switched Telephone Network) for voice calling. US only.
- Phone Numbers – Provision numbers for calling or SMS workflows to enable end-to-end communication scenarios.
Our SDK’s supported platforms reflects the type of applications you can build. For SMS you can only build service apps, while Chat allows you to build both service and client apps. Calling is currently supported only for clients. SMS and Chat also have published REST interfaces that you can access directly over the Internet.
LANGUAGES AND PUBLISHING LOCATIONS |
||||||
Area |
JavaScript |
.NET |
Python |
Java SE |
iOS |
Android |
Chat |
||||||
SMS |
- |
- |
||||
Calling |
- |
- |
- |
|||
Identity |
|
|
||||
Reference Documentation |
- |
Bring your own identity
Communication can occur between people but also between people and computers (bots). You may be building apps for enterprises where Azure Active Directory/M365 identity is pervasive or building apps for consumers using Facebook or another authentication provider; for these reasons we want to help you build sophisticated apps that reach the broadest possible audience and provide an easy way to handle that process.
To support this flexibility we built a simple, lightweight identity framework that is published through the Identity namespace and SDK:
- Azure Communication Services identities are generic, allowing you to map them to your application concepts freely. You can use identities to represent devices, bots, people, or any other application concept.
- To securely access the communications data plane, your services mints user access tokens (UAT) on behalf of an identity and distribute those tokens to clients.
You can get more details about the identity and token management and other architecture information in our conceptual documentation.
Manage resources effectively
Azure Communication Services creates and manages two key Azure resources:
- Service Resources. In Azure, all services are managed as resources through Azure Resource Manager. Through the Azure Portal, REST APIs, and SDKs, you can create and manage Azure Communication Services resources. You put resources with a common lifecycle into a resource group that can be deployed or deleted in a single action. You can see which resources are linked by a dependency. You can apply tags to resources to categorize them for management tasks, such as separating different organization or user communication cohorts.
- Phone Numbers. Azure Communication Services allows you acquire phone numbers for SMS and voice calling interactions. This is currently permitted only the Azure portal, but REST APIs and SDKs are in development.
The combination of these capabilities is especially suited to ISV scenarios. For example, if you are building a contact center platform for external organizations, you can create Azure Communication Services resources and acquire phone numbers programmatically as part of customer on-boarding.
Putting the pieces together
Adding communication capabilities to apps and low-code workflows is a continuing project for our team. Right now, these are some popular ways to extend Azure Communication Services:
- Build your own clients against the REST interfaces for SMS, Chat, Identity, and ARM.
- Send SMS messages in Azure Logic Apps and Power Apps. Use Azure EventGrid to trigger Logic Apps and other automation for receiving SMS messages.
- Interoperability with Microsoft Teams allows you to create custom applications that connect users to meetings created with Teams. Users of your custom applications do not need to have Azure Active Directory identities or Teams licenses to experience this capability. This is ideal for bringing users (who may be familiar with Teams) and external users (using a custom application experience) together into a seamless meeting experience.
These tools can be combined with a variety of Azure and Microsoft Graph capabilities to create sophisticated workflows, for example:
- Consumer texts a hospital’s appointment desk asking for a telehealth visit.
- This SMS message fires into EventGrid, which triggers your service to use Graph APIs to create a Teams meeting for the applicable healthcare provider.
- The day before the appointment, the consumer is sent an SMS reminder.
- Healthcare provider joins the appointment via Teams.
- The consumer joins the Teams meeting using either a website or app you build.
Conclusion and Next Steps
We hope this was a valuable technical introduction to Azure Communication Services and what you can use today to build and ship rich communication experiences.
If you want to learn more and get started, here are some quick links to our official documentation:
Published on:
Learn moreRelated posts
How Azure AI Search powers RAG in ChatGPT and global scale apps
Millions of people use Azure AI Search every day without knowing it. You can enable your apps with the same search that enables retrieval-augm...
Episode 388 – Getting Started with Azure Bicep: Infrastructure as Code with a Domain Specific Language
Welcome to Episode 388 of the Microsoft Cloud IT Pro Podcast. In this episode, we dive into Azure Bicep, Microsoft’s streamlined language for ...
RAG with SQL Vector Store: A Low-Code/No-Code Approach using Azure Logic Apps
Data is at the heart of every AI application, and efficient data ingestion is critical for success. With over 1,400 enterprise connectors, Log...
Exciting Announcement: Public Preview of Native Vector Support in Azure SQL Database!
Public Preview of Native Vector Support in Azure SQL Database We are excited to share that the dedicated vector data type in Azure SQL Databas...
Scaling Azure Container Apps for Peak Performance
Unlock the full potential of Azure Container Apps with smart scaling! In this final part of our series, explore how to keep your apps responsi...