Sample library for Dynamics 365 Customer Service

Applies to: Dynamics 365 Customer Service

This collection of sample code, components (solutions), and documents has been created to help your Customer Service projects with tasks such as customization, configuration, and operation of the platform. The library offers reusable and easy-to-follow resources for Customer Service developers and users.

Some of the components are hosted in the GitHub repo https://github.com/microsoft/Dynamics-365-FastTrack-Implementation-Assets/. You can contribute to this project by reporting issues, suggesting features, or submitting pull requests.

Important

Sample codes, components (solutions), and documents created by the community aren't supported by Microsoft. If you have questions or issues with community tools, contact the tool's publisher.

Areas

The following sections outline the content of the collection. Each section includes links to the corresponding articles and samples.

Unified routing

  • Channel-based presence

    A core feature of this scenario is the flexibility of channel presence management for agents. Depending on the volume and urgency of different types of customer inquiries, agents can adjust the flow of incoming channel requests to suit their preferences and availability. For instance, an agent can pause the incoming calls channel if they want to focus on chats or cases, or the other way around. This way, agents can optimize their productivity and customer satisfaction.

    This sample approach is to use a channel-centric solution by setting up a separate Advanced Queue for each relevant channel. This allows for the use of the native Assignment MethodAssignment Ruleset functionality and reduces latency between Agent Channel selection and assignments. Learn more at Overview of unified routing and Channel-based presence.

  • Set up agent capacity for custom entities

    In Dynamics 365 Customer Service, you can configure capacity-based routing for entities to supplement the case (incident) entity. Learn more at Set up agent capacity for custom entities, where we provide two approaches—one no-code and one low-code—to perform the previously mentioned actions.

Omnichannel

  • Custom record identification

    To identify a customer in the contact center, you might have to apply custom search criteria, based on the information that the customer provides. This approach will help you quickly and efficiently find the customer's profile and access their records. In OOB, you can search by name, phone number, and email address. However, you might want to search by account number or other relevant data. This article explains how to customize the search criteria.

    Learn more at Custom Record Identification.

  • Sample context parsing in JavaScript

    Context variables play a crucial role in optimizing customer service workflows and enhancing agent productivity. They provide essential context for effective communication and decision-making.

    If you're working with web resources, you can access context variables from custom JavaScript code. This allows you to enhance the user experience by dynamically adjusting behavior based on the context.

    Learn more at JavaScript Sample Context parsing.

  • LiveChat Widget customization samples

    This is a collection of ready-to-use JavaScript code examples for customizing the Omnichannel LiveChat Widget.

    Learn more at LiveChat Widget customization samples.

  • AgentScript and macro samples

    Agent scripts are essential tools for minimizing human errors during customer interactions. They provide structured guidance to agents, ensuring consistent and efficient resolution processes. These scripts come in two main forms: text-based guidance and macros. Macros simplify repetitive tasks, allowing agents to handle complex actions with a single click. By incorporating these elements, teams can optimize workflows and improve overall operational efficiency.

    Learn more at AgentScript and Macro samples.

AI

  • AI case deflection

    Emails have unstructured content. Routing rules based on subject/body text aren't effective.

    Human intervention is required for proper categorization. The case would need to be re-assigned to the right owner. The customer might want to implement a custom AI model before engaging Unified Routing.

    This content describes a proposal approach by using ARC rules and AI Builder.

    Learn more at Route or deflect cases using AI Builder.

  • Summarize Dynamics 365 Knowledge Base articles with ChatGPT

    The current integration of Copilot Studio with Knowledge Base articles only offers article links without providing a summary that can be used in chat conversations.

    By integrating ChatGPT with Copilot Studio, the gap is bridged. This way, knowledge articles are summarized directly within the chat conversation.

    Learn more at Summarize Dynamics 365 Knowledge Base with ChatGPT for efficient customer support.

  • Copilot onboarding guide for digital contact centers

    The onboarding guide describes best practices, strategies, and key milestones to ensure a successful deployment process. Use this guide to evaluate your current operations and create a plan to smoothly integrate Copilot capabilities in your digital contact center.

    Learn more at Copilot onboarding guide for digital contact centers.

Microsoft Copilot Studio

Important

Power Virtual Agents capabilities and features are now part of Microsoft Copilot Studio following significant investments in generative AI and enhanced integrations across Microsoft Copilot.

Some articles and screenshots may refer to Power Virtual Agents while we update documentation and training content.

Application Insights

Dynamics 365 Channel Integration Framework 2.0

  • CIF simulator

    The simulator is a collection of samples that we built using Dynamics 365 Channel Integration Framework.

    Learn more at Simulator for Channel Integration Framework v. 2.0 .

  • Set up Click to Outbound call

    This article outlines the steps to use a custom control so that users can make outbound calls from a Customer Interaction Center (CIF) provider in Omnichannel for Customer Service. The sample solution is a resource that helps optimize the Dynamics 365 implementation. It includes a custom control that provides the capability to format a phone number and initiate an outbound call from a text or phone number field.

    Learn more at Set up outbound call.

  • Sample Adaptor for Channel Integration Framework

    This article outlines guide on configuring and setting up an adaptor for Channel Integration Framework to receive notifications from external applications.

    The sample adaptor included in this guide demonstrates how an external application can notify a user about incoming notifications using the Channel Integration Framework API V2.0. By showcasing the adaptor code as a sample, this document offers insights into integrating an existing application seamlessly with the Channel Integration Framework, making it easier for developers to understand a one of the patterns to integrate with Channel Integration Framework.

    Learn more at Sample Adaptor.

Automation

  • Automate agent tasks with Power Automate

    This sample shows how to run a Power Automate desktop flow from Customer Service workspace to automate tasks on a customer service representative's workstation.

    Learn more at Automate agent tasks with Power Automate Desktop.