customer engagement
36 TopicsFrom Call Transcripts to CRM Gold: AI-Powered Post-Call Intelligence
Call transcripts are full of business intelligence that never makes it to your Customer Relationship Management (CRM) software. Customer sentiment, promised follow-ups, escalation signals – all lost in walls of conversational text. We’ve all seen it happen. Agent frantically scribbles notes during calls. Promised callbacks fall through cracks. Critical details get buried in transcript files that sit untouched for months. Meanwhile, your CRM holds half-empty case records and incomplete customer histories. What if those transcripts could talk back? How We Transform Call Transcripts into CRM Data Instead of just explaining what's possible, we built something you can click through and try on your own. Pick from realistic customer scenarios – an airline passenger with a mystery credit card charge, a small business owner confused about cloud billing. Watch AI pull out the important stuff while you keep full control before anything touches your systems. Takes minutes, not hours. The real value isn't just saving time on data entry. It's about not losing what actually happened on that call. If you're more of a visual person and would like to see a video demonstration of this project in action, check out the walkthrough below: How Human-AI Collaboration Ensures Reliable Results We made some choices that matter if you're thinking about real business use. Raw transcripts are a mess. Full of "ums" and "let me transfer you" and customers repeating themselves. AI cuts through all that noise to find what you need: the core issue, what you promised, what happens next. Your agents get the story, not a wall of text. Human oversight isn't just editing typos. The demo shows what real business judgment looks like. Sometimes what sounds like anger is actually relief. Sometimes "I'll call you back" means different things in different contexts. AI spots patterns brilliantly, but humans understand nuance and catch the edge cases that matter for customer relationships. Structured output changes guarantees consistent CRM data. Here's the technical piece that makes everything else possible: we use JSON schemas to guarantee consistent results. Same format every time, no parsing messy text responses. Your CRM integration becomes trivial – clean data that maps directly to fields without custom logic to handle variations. Business Intelligence You Can Act on Immediately Once you've got structured call intelligence, things get interesting fast. Picture this: sentiment analysis flags an angry customer at 2 PM. Your senior agent gets pinged before the promised callback at 4 PM. Or someone mentions a competitor during what should've been routine support. Your sales team knows by end of day, not next quarter. A customer describes the same technical issue three other people called about this week? Your product team sees the pattern before it becomes a crisis trending on social media. The flow works the same whether you're dealing with frustrated airline customers, confused SaaS users, or financial service complaints. It’s the same AI extraction, same human review, just different actions triggered by what you find. The Real Opportunity Every company with customer calls has intelligence locked in transcripts and recordings. Communication APIs plus AI can unlock that intelligence and automate workflows that currently eat up agent time. This demo shows one practical path: structured AI analysis with human oversight, feeding straight into business systems. Scales from small teams manually reviewing suggestions to enterprise deployments processing thousands of calls with minimal human touch. You're not just automating data entry. You're capturing business intelligence that vanishes the moment each call ends. And with the human review layer, you're building confidence in the system while training it to handle your specific business context. How to Connect Live Call Data to Your AI Analysis Real implementations need live conversation data rather than static transcripts. That's where the integration work begins. Azure Communication Services Call Automation APIs provide real-time transcription during calls. Microsoft Teams APIs extract transcripts from recorded meetings. Most phone systems can export call transcripts via API these days. The workflow stays identical – transcript → AI analysis → human review → business actions – but connecting those data sources requires additional plumbing. Real production systems also need async processing. Instead of waiting for AI analysis during the call, you'd typically queue transcripts for background processing and surface insights when agents need them. Simple Technology Stack: Node.js + Azure OpenAI We deliberately chose straightforward technology to prove a point: you don't need exotic tools for sophisticated call intelligence. Node.js backend. Vanilla JavaScript frontend. OpenAI structured output with strict JSON schemas. That's it. What do we mean by "structured output"? Instead of returning free-form text, the LLM is instructed to respond with JSON that matches a predefined schema. This ensures the output is predictable, machine-readable, and easy to integrate directly into systems like CRMs with no extra parsing or guesswork required. Important caveat: not all LLMs support structured output yet. OpenAI, Azure OpenAI, and a few others do, but if you're using a different provider, you'd need additional validation logic to ensure consistent formatting. The structured approach is what makes CRM integration seamless, so it's worth choosing providers that support it. Try the Post-Call Intelligence Demo Clone the repository and test it out today! The demo includes setup instructions and realistic scenarios. Not production code, but shows how AI-powered call intelligence works in practice. Full instructions are in the README of the repo, but you only need to enter a few commands in your terminal. For more information and resources, check out the docs on real-time transcription or see more communication API + AI sample demos. Those transcripts sitting in your phone system? They're not just records of what happened. They're roadmaps for what should happen next. The intelligence is sitting there. The tools exist to extract it reliably. Question is whether you'll let it keep disappearing into the void.How AI + Communication APIs Are Transforming Work Across Industries
The Specialization Revolution Businesses across industries want AI-driven automation that actually meets their unique needs. Generic, one-size-fits-all solutions aren’t cutting it anymore. Think about it: a healthcare AI sending HIPAA-compliant appointment reminders has completely different challenges than a retail AI handling returns. It's not just different words — it's understanding compliance rules, knowing what's urgent, and getting the relationship dynamics that matter in each industry. We're seeing a shift from cookie-cutter automation to AI that gets context. Communication APIs plus AI tools let you build systems that understand these industry quirks and feel both efficient and personal. Note: This blog focuses on what's possible rather than step-by-step how-tos. You'll see real examples and use cases, with links to docs and samples if you want to dig deeper. A Framework for Communication Intelligence Not every interaction needs the same level of AI. Think about your communications in four buckets: Automated at Scale: High-volume, routine stuff handled smartly but still feels personal. This could be AI email templates that mention customer history, or sophisticated bots that trigger based on schedules and events. Contextually Intelligent: Communications that need real-time analysis and smart routing. Basic version: sentiment analysis routes angry calls properly. Advanced version: specialized agents with complex escalation rules. Human-Augmented: Complex conversations where AI helps people with context, suggestions, and busy work. Simple version: auto-logging CRM data from emails. Fancy version: real-time compliance monitoring and automated follow-ups. Purely Human: Sensitive, high-stakes conversations that need human judgment and relationship-building. AI still helps with prep and follow-up, but the actual conversation is all human. Figure out where your communications fit, and you'll spot the best places to add AI. Industry Transformation in Action Here's how different industries are applying these concepts to solve real problems. Healthcare: Secure, Compliant Patient Communication Healthcare has strict privacy rules and handles tons of sensitive patient information, but patients still expect things to move quickly and smoothly. Smart Appointment Management: Healthcare systems use communication APIs to send HIPAA-compliant reminders via SMS, email, and voice calls. AI personalizes messages based on patient history and what kind of appointment it is. Urgent calls get routed to the right medical staff fast. If you want to get fancy, conversational agents can handle rescheduling and escalate urgent stuff automatically. See this in action: AI SMS Appointment Scheduler demo shows how natural conversation flows work for scheduling and rescheduling. Intelligent Call Routing: When patients call with concerns, communication platforms analyze what they're saying and figure out how urgent it is. Medication questions go to nurses, billing problems go to admin staff, and everyone keeps the full context. The key here isn't replacing doctors and nurses, it's handling all the compliance-heavy routine stuff that bogs them down, so they can focus on actual patient care. Healthcare teams tell us this cuts their admin work while making patients happier through faster, smarter routing and personalized messages. Financial Services: Balancing Compliance with Personal Service Banks and financial firms must document everything and stay compliant, but clients still want personal, responsive service. Streamlined Client Onboarding: Financial institutions use communication APIs to automate onboarding workflows: personalized welcome messages, scheduling required meetings based on specific milestones. Basic version handles document requests and compliance reminders. Advanced setups use tools like Copilot Studio for complex regulatory workflows that connect to multiple backend systems. Automated Compliance Documentation: Instead of making advisors manually document every client conversation, AI transcribes calls, spots compliance requirements, and generates the right records. This cuts paperwork while making sure nothing slips through the cracks. Financial services are using AI to handle the regulatory heavy lifting so advisors can focus on actually advising and building relationships. Recruiting: Scaling Personal Connection Recruiting is all about balancing efficiency with personal touch. You need to reach hundreds of candidates but make each one feel special. Smart Outreach Campaigns: Recruiting teams use Azure Communication Services with Azure OpenAI to craft personalized messages that reference specific skills, experience, and mutual connections. Systems automatically customize email templates based on candidate profiles. Advanced teams run complex, multi-touch campaigns across email, SMS, and professional platforms. Coordinated Interview Scheduling: Communication platforms handle smart scheduling by looking at calendars and sending personalized invitations and reminders. It handles scheduling conflicts and sends confirmations automatically. Comprehensive setups manage multi-round interviews with automatic rescheduling. Success comes from using AI to kill the busy work while keeping humans involved in relationship building. Recruiting teams using AI-powered communication report faster hiring and happier candidates through more responsive, personalized interactions. Retail and E-commerce: Responsive Customer Service E-commerce customer service ranges from "where's my order?" to complex technical support. You need systems that handle simple questions fast while getting complex issues to humans with full context. Intelligent Issue Routing: When customers contact support, Azure Communication Services with Azure OpenAI looks at what they're asking and their history to figure out the best response. Simple order status questions get automatic responses with real-time tracking. Product issues go to specialist teams with all the context they need. See this in action: Customer Service Chat with AI Handoff demo shows smooth transitions from AI help to human agents with conversation summaries. Proactive Problem Resolution: AI watches order fulfillment and shipping to reach customers before they even contact you. When shipments get delayed, customers get personalized updates with realistic delivery estimates and appropriate compensation based on their history. Retail works best when AI handles routine stuff quickly while making sure complex or emotional situations get immediate human attention with complete context. Sales and Account Management: Relationship Intelligence Sales is about building relationships over time. You need deep understanding of client needs, preferences, and business context Automated Relationship Maintenance: Sales teams monitor communication patterns and get suggestions for client outreach. Communication APIs enable personalized check-ins based on contract renewal dates or industry news. Advanced setups automatically schedule meetings and generate industry-specific insights. Meeting Intelligence and Follow-ups: During client calls, AI captures key points and action items, then helps generate follow-ups. Teams are building AI agents with Copilot Studio that actually send those follow-up emails automatically, crafting personalized messages based on meeting notes and handling bulk outreach. See how it works: The Build an AI Email Agent with Copilot Studio video below shows step-by-step implementation. Sales teams get value when AI handles data analysis and admin tasks while humans focus on strategy and relationship building. Education: Personalized Student Support Schools manage communications across tons of different people with different needs and preferences. Accessible Student Support: Schools use communication APIs to handle routine student questions about schedules, deadlines, and campus resources through smart chat interfaces. These route academic concerns to appropriate counselors while keeping context about each student's needs. Basic versions provide 24/7 info access, cutting admin burden significantly without expensive enterprise platforms. Proactive Student Engagement: By looking at engagement patterns and academic performance, AI helps spot students who might need extra support and helps connect them with appropriate resources. These solutions focus on flagging at-risk students rather than complex intervention workflows. Educational implementations work best when AI handles routine admin communications while keeping meaningful educational relationships human-centered. Getting Started Start by looking at your current communication workflows. Look for high-volume, routine interactions that eat up time but don't build relationships, such as appointment reminders, status updates, scheduling coordination. These are your best starting points. Start Simple: Azure Communication Services gives you secure, compliant multi-channel communication. Adding Azure AI Foundry brings intelligence for content generation, sentiment analysis, and routing. Pick one workflow and see what happens. Get started with Azure Communication Services or check out integrating Azure AI Foundry. Scale Up When Ready: For complex workflows, Copilot Studio lets you build conversational AI that connects to your business data and works across Teams, websites, and other channels. What makes it work: Define clear boundaries between AI and human interactions. Keep human control with review and override capabilities. Design for context continuity across channels. Start small and learn as you go. Quick resources: Azure Communication Services, Azure AI Foundry, Copilot Studio, GitHub examples The companies doing this well aren't replacing human connection, they're using AI to handle the routine work so people can focus on conversations that actually matter. Pick one workflow. Build something simple. See what you learn.General Availability of Teams Phone extensibility
General Availability of Teams Phone Extensibility Powered by Azure Communication Services (ACS) Organizations often struggle with fragmented workflows between UCaaS (e.g., Microsoft Teams) and CCaaS platforms. This limits the potential of generative AI to unify customer interactions and streamline operations. Teams Phone Extensibility (TPE) powered by Azure Communication Services bridges this gap - enabling seamless integration between Teams Phone and CCaaS systems. Key Benefits Unified Telephony: Use Teams Phone for both UCaaS and CCaaS without separate systems. Conversational AI: Integrate AI tools for voice input, greetings, and sentiment analysis. Automated Meeting Summaries: AI captures key decisions and action items in real time, reducing manual notetaking and improving team alignment. Human-Like Communication: AI auto-detects spoken languages to enable natural, seamless conversations without manual selection. Sentiment Analysis: AI tracks emotional tone in real time, helping supervisors support both customers and agents during sensitive interactions. PII Redaction: AI masks sensitive personal data in real time to ensure compliance and build user trust. Extended UCaaS Features: Emergency calling, dial plan policies, and more. Agent Notification Handling: Choose between Teams client or CCaaS app for alerts. Cost Efficiency: Leverage existing Teams Phone plans without extra ACS numbers. Global Reach: Supports Teams Calling Plans, Direct Routing, and Operator Connect. Core Features Provisioning: Connect ACS deployments with Teams tenants for seamless setup. Advanced Call Routing & Controls: Manage calls, add participants, transfer mid-call. Convenience Recording: Customizable call recording for CCaaS scenarios. On-Behalf-Of (OBO) Calling: Apps can initiate/manage calls via Teams Resource Accounts. Call Automation & SDKs: Build intelligent call flows and custom CCaaS clients. Emergency Calling Support: Agents can dial emergency services with location data. Billing Model: Charges apply for ACS SDK usage; Teams licenses required for agents. Telemetry & Diagnostics: Monitor and debug call quality via Azure portal tools. Resources to Get Started https://aka.ms/TPe-Overview https://aka.ms/TPe-FAQ https://aka.ms/TPe-Tutorials https://aka.ms/TPe-SupportBuilding an AI Receptionist: A Hands-On Demo with Azure Communication Services and OpenAI
Ever missed an appointment because of a rigid SMS system? What if you could text a change and get an immediate, natural response that understands your intent and confirms a new slot quickly? In this post, we'll show you how to build an AI receptionist that does just that, using Azure Communication Services and Azure OpenAI. We'll guide you through a hands-on demo that uses a simulated but realistic calendar for reliable confirmations and rescheduling, and show you how to make it production-ready. A natural text thread with the scheduling agent Watch the Walkthrough Prefer a walkthrough? Watch the video demo to see the app in action with live code explanations. This demo is ideal for anyone who wants to explore conversational AI with minimal setup -- whether you're a developer, product manager, or just curious about integrating Azure services. What Actually Happens Under the Hood Here’s the simple set of moving parts behind the “AI receptionist” feel. First a quick look at each piece, then the exact path a message takes. Core pieces we’re using for this demo: Azure Communication Services: Provides the real phone number, receives incoming text messages, and sends replies. Azure Event Grid: Immediately forwards each new message event to a public URL (the webhook) your app exposes. FastAPI: Hosts that webhook (an HTTP endpoint) and keeps simple in‑memory conversation and calendar data. Azure OpenAI: Generates the receptionist’s reply using the running conversation plus a small snapshot of available appointment times. Simulated calendar: Thirty upcoming business days with realistic fullness so the system can offer believable open slots. Then the message moves through this path: You send a text message to the demo phone number (handled by Azure Communication Services). Azure Communication Services raises a “message received” event. Azure Event Grid delivers that event as an HTTP POST to the FastAPI webhook (a regular URL). The webhook quickly returns “OK” and kicks off a background function (process_sms in main.py) so the user is never kept waiting. If this is your first message, it creates a mock appointment for “tomorrow” and sends a reminder; otherwise it adds your new message to the conversation history. It selects a few upcoming open slots from the simulated calendar, adds them to the system prompt, asks Azure OpenAI for a receptionist‑style reply, and receives the response. The reply goes back through Azure Communication Services, and the conversation state stays in memory. That’s the loop. An event arrives, flows through a thin path, and a reply goes out. No constant checking (polling) or scheduled scripts needed. Demo vs Production In the demo you start the conversation by texting the number. In a production rollout, you usually send an automated reminder (for example 24 hours before) and let the patient reply to confirm or change. From there the path is straightforward: swap the simulated calendar for a real scheduling API, persist conversation and appointment state, add authentication and signed webhook validation, and layer in logging and compliance. The event flow itself staysthe same. The Calendar Trick We prebuild the next 30 business days (weekdays only), 09:00–17:00 in 30-minute slots, mark about 80 percent as “booked,” and keep the rest “available.” On each turn we pull a small handful of near-term open times and add them to the system prompt. That gives the model concrete, bounded choices and prevents it from inventing odd times like “3:10 AM” or “Saturday 7 PM.” A single snapshot replaces custom slot logic while still feeling live. The FastAPI routes for getting calendar logic Prompt Strategy The system prompt frames a single role: a friendly receptionist limited to scheduling (no medical advice, within business hours, 30-minute increments). Each user message refreshes the availability lines so the model always sees current openings. The rules: only offer specific times when rescheduling, stay concise, and confirm final details. This balance keeps replies natural while keeping time suggestions controlled. Where to Take It Next To evolve the demo into a dependable production service you layer durability, richer scheduling logic, safety, and observability onto the same event path - no rewrite required. Productization Persist conversations and appointments (database + real scheduling/calendar API) Authentication, signed webhook validation, rate limiting Structured logging, tracing, latency and token metrics Scheduling intelligence Function / tool calls for explicit slot selection Real calendar integration (Outlook, scheduling API, electronic health record system) Time zones, appointment types, user preferences (language, time windows) Safety & context Moderation / compliance filters Retrieval for policies, preparation instructions, service types Insights & analytics Analytics (reminder → confirmation rate, response latency, fallback counts) Getting It Running (You’ll Spend Minutes, Not Hours) This setup is intentionally light. The only potentially slow step is acquiring a phone number in Azure Communication Services (see the official quickstart). Full step-by-step instructions (environment variables, dev tunnel, Event Grid subscription) live in the demo repository README. The high-level overview is: Clone the repository and copy .env.example to .env Add Azure Communication Services connection string + phone number and Azure OpenAI endpoint/key/model. Install dependencies and start the app on port 8000. Expose port 8000 with a dev tunnel and point an Event Grid SMSReceived subscription to /api/sms/webhook. Text your Azure Communication Services number and observe inbound event and reply in the terminal. Screenshot of a terminal log with inbound event + “SMS sent to ACS number" Closing You now have an event‑driven SMS conversation that feels like a live receptionist using only a phone number, a webhook, a lightweight availability snapshot, and a model prompt. Clone the repository, run the demo, and try a reschedule from your own phone. Extend it and make it your own - whether that means integrating a real scheduling API, adding persistence, or incorporating compliance features. We’d love to see what you build.10 Things You Might Not Know You Could Do with Azure Communication Services
Azure Communication Services gives developers the building blocks for voice, video, chat, SMS, and more. But the real magic happens when you start combining those capabilities with other Azure services to solve real-world problems. This blog isn’t a feature list or a product pitch. It’s a collection of creative, practical scenarios that show what’s possible with Azure Communication Services today. Each one is based on real questions, real demos, and real developer experiences. Some are simple. Some are surprisingly powerful. All of them are designed to spark ideas. We’ve included links to sample code, documentation, and visuals to help you dive deeper. And we’ll keep this post updated as new scenarios emerge, so if you’ve built something cool, let us know! Build a Voice Assistant That Understands Users—and Follows Through 🔎 Quick Look What it does: Create a voice-first assistant that can understand, respond, and follow up using natural language. Why it matters: Offers a more intelligent, flexible alternative to traditional IVRs. What you'll need: Azure Communication Services for voice, Azure OpenAI, and backend logic to handle actions. Most voice agents are limited to scripted menus or keyword matching. But with Azure Communication Services and Azure OpenAI, you can build a voice experience that actually understands what users are saying and responds with meaningful action. In this demo, a user calls a virtual assistant looking for dinner inspiration. Instead of navigating a rigid menu, they just talk naturally. The assistant interprets the request, asks follow-up questions, and sends a personalized recipe link via SMS—all powered by Azure Communication Services for both the voice and messaging workflows. This kind of voice-first interaction is ideal for customer support, concierge services, or any scenario where users want to speak naturally and get something done. Watch the video below to see the full experience in action or explore the demo yourself here. Send Responsive Messages in Real-Time 🔎 Quick Look What it does: Trigger personalized messages based on real-time user behavior (like missed appointments or failed logins). Why it matters: Helps you move beyond static reminders to more timely, relevant communication. What you’ll need: Azure Communication Services, Azure Event Grid, Azure OpenAI, and an event source like a Logic App or backend service. Most messaging systems are built around schedules: send a reminder at 9 AM, a follow-up two days later, and so on. But what if your messages could respond to what your users are doing right now? With Azure Communication Services, you can build event-driven workflows that trigger messages based on real-time behavior. A customer misses an appointment. A user completes a transaction. A login attempt fails. Using Azure Event Grid, you can detect these events, generate a tailored message with Azure OpenAI, and send it instantly via SMS, email, or WhatsApp using Azure Communication Servies. This approach helps teams move beyond static, one-size-fits-all messaging. It enables timely, relevant communication that’s easier to maintain and scale - without manually scripting every variation. Learn more and get started: Azure Communication Services as an Event Grid source Handle SMS events with Event Grid Push notifications overview Use Event Grid to send calling push notifications Let Users Schedule Appointments by Text – In Their Own Words 🔎 Quick Look What it does: Enable natural language scheduling over SMS. No apps, menus, or portals required. Why it matters: Makes scheduling faster and more user-friendly, especially for service-based businesses. What you’ll need: Azure Communication Services for SMS, Azure OpenAI to interpret intent, and a backend or Logic App to manage availability and confirmations. Coordinating appointments over email or phone is slow and manual. Even traditional SMS-based schedulers often rely on rigid decision trees that break when users type something unexpected. This demo takes a smarter approach. By combining Azure Communication Services with Azure OpenAI, it lets users book, confirm, or reschedule appointments through natural, conversational SMS - no app, no portal, no menus. Just text like you normally would: “Hey, can I move my appointment to next Tuesday?” “Do you have anything earlier in the day?” Behind the scenes, Azure Communication Services handles the messaging layer, while OpenAI interprets the user’s intent and routes it to backend logic that manages availability and confirmations. It’s a lightweight, flexible solution that’s ideal for clinics, service providers, or any business that wants to streamline scheduling—without sacrificing user experience. Try the SMS scheduling demo. Everything you need to get started is in the README. Reach Customers on WhatsApp – Right Alongside SMS & Email 🔎 Quick Look What it does: Send messages across WhatsApp, SMS, and email from a single workflow. Why it matters: Increases engagement by meeting users where they are. What you’ll need: Azure Communication Services with Advanced Messaging SDK, verified sender setup for each channel Your customers are already on WhatsApp. Now your app can be too, without rearchitecting your entire messaging stack. Azure Communication Services lets you send and receive WhatsApp messages using the same platform you already use for SMS, email, and chat. That means you can reuse your existing workflows, backend logic, and delivery infrastructure - just with a new channel that meets your users where they are. Whether it’s appointment reminders, shipping updates, or live customer support, WhatsApp becomes just another part of your communication toolkit. You can trigger messages using Azure Event Grid, automate replies with Azure Bot Framework, and manage everything through the Advanced Messaging SDK. Want to see it in action? This quickstart guide walks you through registering your WhatsApp Business Account, connecting it to Azure Communication Services, and sending both text and media messages. > Channels selected from the blade menu. Learn more: Overview of Advanced Messaging for WhatsApp Send text and media WhatsApp messages (Quickstart) Publish an agent to WhatsApp using Copilot Studio Let Customers Join a Teams Meeting- Without a Teams Account 🔎 Quick Look What it does: Embed a browser-based Teams meeting experience into your app or site. Why it matters: Makes it easy for customers to join secure meetings without downloading Teams or signing in. What you’ll need: Azure Communication Services with Teams interop, a Teams meeting link, and a web app or portal. Not every customer wants to download an app or create a Microsoft account just to join a meeting. With Azure Communication Services, you can embed a fully branded, browser-based meeting experience into your app or website that connects directly to a Microsoft Teams meeting - no Teams account required. This is especially useful for industries like healthcare, legal, or financial services, where external participants need to join secure consultations or appointments without friction. You control the UI, the branding, and the flow, while Azure Communication Services handles the real-time voice and video connection to Teams. You can see how this works in the interop-quickstart demo, which shows how to create a Teams meeting, generate a join link, and embed the experience in a custom app. Handle Teams Calls Inside Your CRM—No App Switch Required 🔎 Quick Look What it does: Let agents make and receive Teams calls directly inside Dynamics 365 or a custom contact center UI. Why it matters: Reduces context switching and improves agent efficiency. What you’ll need: Teams Phone Extensibility, Azure Communication Services Call Automation, Dynamics 365 or another CCaaS. Most contact center agents juggle multiple tools - CRM, phone, notes, AI assistants - just to handle a single call. But what if they could do it all in one place? With Teams Phone Extensibility, powered by Azure Communication Services, agents can make and receive Teams calls directly inside Dynamics 365 or any custom contact center app. No need to open the Teams client. Here’s what’s possible: Answer calls in a custom agent desktop, routed through Teams Phone. Trigger AI workflows mid-call—like summarizing the conversation with Azure OpenAI or escalating to a supervisor. Initiate outbound calls from bots or workflows using ACS’s Call Automation APIs. Record and analyze calls with full control over logic and storage. It’s a surprising way to bring AI, voice, and CRM together, without rebuilding your contact center from scratch. Embed Secure Video Visits to Your Healthcare App–Fast 🔎 Quick Look What it does: Add HIPAA-compliant video calling with identity integration. Why it matters: Enables secure, branded telehealth or consultation experiences. What you’ll need: Azure Communication Services for video, Azure AD B2C, and a secure frontend. Telehealth is here to stay. But building a secure, compliant video experience from scratch can be a heavy lift. Azure Communication Services makes it easier. With built-in support for HIPAA, GDPR, and SOC 2, encrypted media transport, and identity integration via Azure AD B2C, Azure Communication Services lets you embed video calling directly into your app—without compromising on privacy or user experience. The Sample Builder shows how to combine video, chat, and SMS into a seamless patient-provider experience. It’s ready to deploy, customize, and scale. Learn more: Azure Communication Services HIPAA compliance overview Quickstart - Add video calling to your app - An Azure Communication Services quickstart | Microsoft Learn Combine AI and Human Support in a Single Chat Experience 🔎 Quick Look What it does: Start with an AI assistant and escalate to a human agent with full context. Why it matters: Scales support while preserving the human touch when needed. What you’ll need: Azure Communication Services for chat, Azure OpenAI, bot framework, and agent handoff logic. Most customer service chats start with automation—but they shouldn’t get stuck there. With Azure Communication Services, you can build a chat experience that begins with an AI assistant and hands off to a human agent when it makes sense. This demo shows how it works: a customer starts chatting through a web widget. An AI assistant, powered by Azure OpenAI, handles common questions and tasks. If the conversation gets complex or the user asks for help, the chat transitions smoothly to a live agent—no context lost. Agents can even generate AI-powered summaries to get up to speed quickly before jumping in. It’s a practical way to scale support without sacrificing the human touch. . On the left, a dialog box displays the user experience, while on the right, the agent's view shows the conversation summary and includes a button to take over the automated chat. Build a voice-first, AI virtual assistant in Under a Week 🔎 Quick Look What it does: Launch a branded voice assistant quickly using Zammo.ai and ACS. Why it matters: Speeds up deployment of voice experiences across channels. What you’ll need: Zammo.ai, Azure Communication Services for voice, and a publishing channel (e.g., Alexa, web). When Montgomery County, Maryland needed to support COVID-19 vaccine registration, they didn’t have months to build a solution. In just six business days, they launched a voice-first virtual assistant that handled 100% of inbound calls: automating appointment scheduling, supporting English and Spanish, and deflecting thousands of calls from live agents. They partnered with Zammo.ai to build the experience, all without writing custom code. Where Azure Communication Services fits in: Azure Communication Services powered the voice infrastructure, enabling a scalable, multilingual experience that saved time, reduced hold times by 90%, and helped the county serve residents more equitably. Don’t take our word for it, learn more about how it came together here. Know What You’ll Pay, Before You Ship 🔎 Quick Look What it does: Estimate costs and usage before you build. Why it matters: Helps you plan and budget more effectively. What you’ll need: Azure Communication Services pricing calculator, usage estimator, and billing dashboard. One of the first questions developers ask when building with Azure Communication Services is: “How much is this going to cost me?” And the answer is: it depends, but in a good way. Azure Communication Services uses a flexible, pay-as-you-go pricing model. You’re only billed for what you use - no upfront commitments, no recurring subscription fees. That makes it easy to prototype, test, and scale without overcommitting. Each communication channel (SMS, email, voice/video calling, and WhatsApp) has its own pricing structure based on usage volume, geography, and delivery method. For example: SMS to U.S. numbers is priced differently than international messages. Voice calls vary depending on whether you’re using VoIP, PSTN, or Teams interop. WhatsApp pricing may involve partner-based rates through Messaging Connect. There are a few exceptions to the pay-as-you-go model. For instance, leasing a dedicated phone number incurs a monthly fee. But overall, the model is transparent and developer-friendly. To help you estimate costs and plan ahead, here are some helpful resources: Azure portal pricing calculator: Azure Communication Services pricing | Microsoft Azure Azure Communication Services Pricing Overview: Azure Communication Services pricing | Microsoft Azure What Will You Build Next? Azure Communication Services gives you the flexibility to build the communication experience your users actually want - whether that’s a quick SMS, a secure video call, or a voice assistant that gets things done. And when you combine ACS with other Azure services like OpenAI, Event Grid, and Bot Framework, the possibilities expand even further. We’ll keep this post updated as new scenarios and demos emerge. If you’ve built something interesting with ACS, we’d love to hear about it—and maybe even feature it in a future post. Check out our official documentation to get started today!Messaging Connect: Global SMS Coverage Now Available in Azure Communication Services
Messaging Connect is now in public preview—Messaging Connect is a new partner-based model for Azure Communication Services that enables global SMS coverage in over 190 countries—starting with Infobip. It simplifies compliant delivery, removes provisioning complexity, and helps developers reach users or Agents reach humans, worldwide using the Azure Communication Service SMS API they already know.Identities with Custom ID: A Simpler, Smarter Way to Manage Communication Users
In today's multi-modal communication landscape, both humans and AI agents can interact across multiple sessions—via chat, voice, or other communication channels. Managing those user sessions securely and consistently has been a challenge when using short-lived, ephemeral identities. Azure Communication Services (ACS) now solves that with Identities with Custom IDs. This new feature allows developers to associate ACS-generated identities with custom application-defined identifiers (like emails or usernames). These custom identifiers make it easy to recognize and reuse an ACS user identity across multiple sessions — enabling smoother experiences, stronger data consistency, and more intelligent engagement across the entire customer journey. 💡 With Custom IDs, developers can now unlock deeper intelligence across customer journeys — from onboarding to support to re-engagement — all powered by consistent identity data. Imagine a telehealth platform where patients log in using their email addresses. Previously, developers had to build and maintain a custom mapping layer to associate those emails with ACS identities. Now, with Custom IDs, that mapping is handled automatically—developers can use the email (or any custom identifier) directly using the customId attribute when creating an Identity, and ACS ensures it consistently maps to the same ACS-generated identity across sessions. How Identity Management is Simplified with Custom IDs: The diagram compares two approaches to identity management in Azure Communication Services: Traditional Identity Flow (Left Diagram): Authentication Initiation – The customer starts the process by logging into the Woodgrove Client App. Token Retrieval – The client app authenticates the user and retrieves a secure token from the Identity and Access Management system (IAM). Identity Mapping – The client app sends an identifier to a back-end identity mapping service, which maps such identifier to an ACS identity. ACS Token Retrieval – The client app obtains an ACS authentication token from the IAM for the mapped ACS identity. Start communication – The client app uses the ACS token to start communication through the different services (chat, calling, etc.) This traditional flow requires the app to manage ACS identity creation and short-lived identifiers for each session. Custom ID Flow with Durable Identity (Right Diagram): Authentication Initiation – The customer starts the process by logging into the Woodgrove Client App. Token Retrieval – The client app authenticates the user and retrieves a secure token from the Identity and Access Management system (IAM). ACS Token creation with custom Id – The client app creates an authentication token using the custom Id and gets an access token for a consistent ACS identity. Start communication – The client app uses the ACS token to start communication through the different services (chat, calling, etc.) This flow eliminates the need to manage ACS identity mapping or short-lived identifiers for each session. Example Code: How Custom ID Works //Authenticate the client var client = new CommunicationIdentityClient(connectionString); // Alphanumeric custom ID string customId = "alice@contoso.com"; // Create Access Tokens with using an Identity with Custom Id var userAndTokenResponse = await client.CreateUserAndTokenAsync(scopes: new[] { CommunicationTokenScope.Chat }, customId: customId); var user = userAndTokenResponse.Value.User; Console.WriteLine($"\nUser ID: {user.Id}"); // Create another token with the same customId and validate that the same user is returned var userAndTokenResponse2 = await client.CreateUserAndTokenAsync(scopes: new[] { CommunicationTokenScope.Chat }, customId: customId); var user2 = userAndTokenResponse2.Value.User; Console.WriteLine($"\nUser ID (second call): {user2.Id}"); // Validate they are the same Debug.Assert(user.Id == user2.Id); This confirms that custom IDs map consistently to the same durable ACS identity. 🔄 Repeated calls with alice@contoso.com return the same ACS user ID — demonstrating the reliability of Identities with Custom ID. 🔐 Custom IDs are handled securely and are never exposed beyond your own app’s context, ensuring that identity data remains protected and private. 📌 Explore the sample code and documentation to get started: Identity model, JS SDK, .NET SDK, QuickStart.Lockheed Martin & Librestream boost mission readiness with secure video collaboration platform
The following is a public press release from Lockheed Martin & Librestream announcing the launch of their secure video collaboration platform. In an effort to continue ensuring armed forces are ready for any mission, Lockheed Martin and Librestream have partnered with Microsoft to revolutionize defense sustainment with the introduction of Onsight NOW, an advanced remote collaboration platform. Onsight NOW enables seamless communication, enhances teamwork and boosts productivity through its advanced features, including chat, annotations and multi-user calling capabilities. The tool operates on Microsoft's Azure Government Cloud, which provides a secure and reliable method for defense operations teams to collaborate in real-time, enabling them to share live video feeds, annotate critical information, and capture vital information – all while maintaining the highest levels of security and compliance. Azure Government services provide a strong and secure foundation for cloud computing that meets the high standards of defense agencies. This includes being certified for FedRAMP, which is a strict set of federal security guidelines. “Lockheed Martin’s implementation of Onsight NOW on Azure Government is a testament to its unwavering commitment to pioneering secure, cutting-edge solutions in defense sustainment. By leveraging Onsight NOW, Lockheed Martin is not only advancing operational efficiency but also setting a new benchmark for secure, interoperable video collaboration across the defense sector,” said Dan Flynn, Managing Director, Global Defense at Librestream. Onsight NOW on Azure Government is installed securely within Lockheed Martin’s own cloud environment, which ensures sensitive information is protected and handled correctly. This permits both Lockheed Martin and external partners to securely collaborate in real time. “Aligned with 1LMX – our mission-driven business and digital transformation program – Onsight NOW will ultimately deliver the speed, agility and insights our customers need to be ready to address growing security threats across the world,” says Drew Robbins, Vice President of Sustainment Operations at Lockheed Martin. “By facilitating timely maintenance, enhancing collaboration, reducing costs and ensuring compliance, Onsight NOW will ultimately improve readiness for critical missions, ensuring air dominance for America and its allies.” “We are thrilled to partner with Lockheed Martin and Librestream to launch Onsight NOW for Azure GOV,” said Bob Serr, VP of Engineering at Azure Communication Services. “This collaboration exemplifies our commitment to providing secure and innovative solutions that empower defense agencies to maintain mission-critical assets with the highest standards of security and compliance.” Learn more about Lockheed Martin and Librestream on their website or LinkedIn.Public Preview of Teams Phone extensibility for CCaaS ISV solution developers
At Enterprise Connect in March, we introduced Teams Phone extensibility for Dynamics 365 Contact Center and contact center as a service (CCaaS) ISV solutions to help organizations extend their telephony investment with Teams Phone into the contact center. On June 2nd 2025, we are pleased to announce that ISV developers can now access Teams Phone extensibility in public preview for their CCaaS solutions. Background With generative AI, Contact Center as a Service (CCaaS) providers can easily advise human agents so they’re responsive to customer needs, can automate workflows and ultimately improve the overall customer experience. However, workflows are often divided between Unified Communications as a Service (UCaaS) providers like Microsoft Teams and CCaaS systems. This division limits generative AI's potential to streamline operations and deliver a consolidated view of data. Today, organizations want integrated, customizable solutions from their CCaaS providers that unify telephony infrastructure for a complete view of customer interactions and robust data handling. Teams Phone extensibility benefits for CCaaS developers Teams Phone extensibility, which is powered by Azure Communication Services (ACS), enables CCaaS vendors to integrate seamlessly with Teams Phone and deliver several benefits to their customers and end-users, including: Consolidated Telephony for UCaaS and CCaaS: Simplified setup with no need to configure and administer separate phone systems. Customers can use their Teams phone telephony investment for contact center deployments. Conversational AI Integration: Developers can use Call Automation APIs to use AI-powered tools, play personalized greeting messages, and recognize conversational voice inputs. Extend UCaaS Capabilities to CCaaS: Take advantage of Teams Phone enterprise features, including emergency calling and dial plan policies. Agent Notification handling: Enable data segregation between CCaaS persona and UCaaS persona with the choice of ringing either the Teams standard client or a CCaaS application. Cost Efficiency: Enable ISVs to build cost-effective solutions using existing Teams Phone plans, without adding Azure Communication Services numbers or Direct Routing. Broader Geographic Availability: Integration with Teams Calling Plans, Direct Routing, and Operator Connect provides wider telephony options. Key Features Provisioning for Seamless Integration: Empower CCaaS providers to connect their ACS deployments with customers' Teams tenants, enabling the use of Teams telephony features for a cohesive and efficient communication experience. Call Routing and Mid-Call Controls: Advanced call routing capabilities for efficient call management and escalation to agents. Mid-call controls enable adding participants, redirecting calls, and transferring calls seamlessly. Convenience Recording: Integrate call recording capabilities into Microsoft Teams for CCaaS scenarios, enabling customized recording processes controlled by CCaaS admins. For more information, see Call Recording overview. Conversational AI Integration: Developers can use Call Automation APIs to leverage AI-powered tools, play personalized greeting messages, recognize conversational voice inputs, and use sentiment analysis to improve customer service. Get started today with this Call Automation OpenAI sample. On-Behalf-Of (OBO) calling enables applications to initiate and manage voice calls on behalf of a Teams Resource Account, enabling seamless integration with enterprise workflows Leverage Call Automation: Azure Communication Services Call Automation APIs provide call control and enable CCaaS providers to build server-based and intelligent call flows. Leverage Client SDK: Azure Communication Services Client SDK provide the means for a CCaaS provider to develop a custom client for CCaaS persona workflows In this release, we are adding the following new features: Emergency Calling: Powered by Azure Communication Services Calling SDK, we bring enhanced emergency calling support for agents who can dial emergency services, provide their static location, and receive callbacks from public safety answering points with Teams Phone service numbers. Billing: The Teams Phone extensibility business model charges CCaaS vendors for using Azure Communication Services SDKs, including Calling SDK, VoIP consumption, Audio Insights, and Call Recording, while end users must use Teams Calling Plans and enable necessary Teams licenses for agents and resource accounts. More details on Azure Communication Services pricing can be found here. Telemetry: Developers and CCaaS providers can access calling details and logging tools as part of the Teams Phone extensibility. Telemetry enables developers and system admins to monitor call use and debug call quality from the Azure portal either. They can do this by analyzing the Call Summary and Call Diagnostic Logs with a clear Team Phone Extensibility identifier or using the Call Diagnostic Center. We want your feedback We are eager to hear your feedback on the performance, reliability, and overall user experience. Your insights on any missing functionalities or additional scenarios that should be considered are invaluable. Your feedback helps us refine and enhance the feature before general release, ensuring it meets the needs of our customers. We look forward to hearing your thoughts! Get started today Developers can join the Azure Communication Services Technology Adoption Program (TAP) here: Azure Communication Services Technology Adoption Program Registration. We look forward to seeing how partners and customers like you leverage these new capabilities to improve your contact center operations. Concept: https://aka.ms/TPe-Overview FAQ: https://aka.ms/TPe-FAQ Tutorials: https://aka.ms/TPe-Tutorials Support: https://aka.ms/ACS-Support1.7KViews0likes0CommentsMoving Email Traffic from Exchange to Azure Communication Services
This article describes the important steps and considerations for transitioning from Exchange Online or other on-premises solutions to the Azure Communication Services email platform. It is also relevant for customers migrating from other mail solutions, whether on-premises or hybrid, to Azure Communication Services.