Almanac

Consultant-focused KB for Microsoft Dynamics 365 Contact Center: implementation notes, gotchas, and configuration decisions beyond the official docs — across voice and digital channels, routing, agent and supervisor experience, Copilot & AI, workforce engagement, analytics, administration and security.

feature-proactive-messaging-sms-mms-whatsapp.mdv2 · history
CurrentApplies to Contact CenterUpdated 2 weeks agoSource Microsoft Learn ↗

Status: Public Preview (MMS and WhatsApp) — behaviour may change. SMS is generally available.

What it does

The setup path for proactive outbound messaging in Contact Center: an outbound messaging workstream, then the Create new proactive engagement wizard (Audience, Details, Preferences, Message template, Frequency limits, Summary, plus File upload if that's your intake method). It covers SMS, MMS and WhatsApp. Audiences come from file upload, the CCaaS API, MCP (preview), or a Customer Insights journey.

Key facts

  • Create the workstream as Outbound, type Messaging, and pick SMS (also used for MMS) or WhatsApp. It needs a default queue. Routing rules are generated for you under Auto generated rules (advanced).
  • SMS messages run to 1,000 characters with personalisation. MMS allows up to 1,600 characters of text and up to 10 attachments, text and media or media only.
  • MMS needs a Twilio or Infobip number that supports it. Azure Communication Services doesn't support MMS. There's no separate MMS workstream.
  • MMS media is served from a public CDN. Anything you upload is publicly reachable.
  • WhatsApp goes through Azure Communication Services and needs an approved template from WhatsApp Manager. Free-form outbound WhatsApp isn't supported, and saving the engagement doesn't submit or change the template's approval.
  • The engagement defines WhatsApp content inline and ignores the templates set in the workstream Behaviors.
  • API and MCP triggered SMS still needs a template configured; the Message parameter can override the rendered text but doesn't replace the template.
  • Preferences: first response timeout (default 5 minutes), priority (Normal, High, Critical), message order, and optional throttling rules on average wait time, escalation count and open concurrent escalations.
  • Delivery windows and expiry can't extend more than 30 days out. With no window, you get 24 hours from now, or from the requested earliest date.
  • Frequency limits cap engagements per day and per week per contact across all channels. Time zones are never inferred: supply them explicitly, as a Windows time zone name or a Dataverse code string.
  • Messaging takes one contact per request. Contact chaining and configurable reattempts are voice only.

When to use / skip

Use it for appointment reminders, collections nudges and notifications where replies should land with an agent or AI agent with the original context. Skip it if the flow is simple one-way notifications with no conversation, where a lighter tool may be cheaper to run. Hold off on MMS and WhatsApp for production until they leave preview.

Configuration decisions

  • SMS provider per use case, driven by MMS needs: Twilio or Infobip rather than ACS.
  • Whether an AI agent on the workstream handles replies. The wizard has no separate AI-agent picker.
  • Intake method: file upload for campaigns, API for event-driven sends, journeys where Customer Insights is already in play.
  • Frequency limits and time-zone basis, set against the client's quiet-hours policy.
  • Message order, and how to prioritise competing engagements on the same queue.

Gotchas

  • Deprecated 30 September 2028: WhatsApp through Azure Communication Services is deprecated (announced 23 September 2026), so the only WhatsApp route this preview supports is on a retirement path. Existing channels keep working until removal. See deprecation page.
  • A reply arriving after the first response timeout may be handled as a plain inbound message without the proactive context. Five minutes is short for a postal-code-sized campaign.
  • Missing WhatsApp delivery status updates point at Event Grid setup on the ACS channel, not at the engagement.
  • Time zones left off default to UTC, so a "9am local" campaign goes out at the wrong hour for everyone outside the UK.
  • Consent and opt-out are your responsibility. Check the channel support matrix in the consent page before you promise a client opt-out handling on a given channel.

Consultant notes

  • Sort the provider and number type before design sign-off. Discovering at UAT that the chosen ACS number can't send MMS means a procurement cycle.
  • Get legal to look at public-CDN MMS media early. Nobody remembers it's public until the first screenshot is shared.
  • Build the opt-out and consent feed as its own workstream. The messaging maths is easy; the compliance plumbing is what delays go-live.
  • Load test the reply path with an AI agent, not only the send path. Replies arrive in bursts right after a campaign fires.

Revisit when MMS or WhatsApp proactive engagement reaches GA.

Was this accurate?