Patrick Madden Patrick Madden

Guide for Creating Links in FAQ Articles and Tips to Make Sure They Open in Teams Correctly

Creating Links

To create a link in an FAQ article, you can get started in one of two ways:

1. Use the Create Link button to have a link created for you.

2. Type out the Link format inline.

[Link Text](URL) — Used if you want the user to navigate to the link in the same page.

[Link Text](URL){target="_blank"} — Used if you want the user to navigate to the link in a new tab.

Replace Link Text with the text you want to display for the link, and replace URL with the actual URL you want to link to.

The target="_blank" attribute tells the browser to open the linked document in a new tab or window. So, for example, if you want to create a link to Google that opens in a new tab with the text "Google", you would write:

[Google](https://www.google.com){target="_blank"}

Formatting Notes for Links Displayed in Teams

If you want links within FAQs to work well in Teams, there are a few formatting properties to consider:

  • If you are linking to page hosted in Chime (FAQ article, page, chat history, etc…) you just need to use [Link Text](URL) format

  • If you are linking to a page outside of Chime (SharePoint page, Knowledgebase article, video, etc…) you will need to use the specific [Link Text](URL){target="_blank"} format as they will either not be whitelisted to display, or the content provider will not allow the page to be displayed in Iframes which is what Teams uses to show links.

  • Here is some additional documentation on markdown syntax to help if you have any additional questions: Markdown Guide: Links Syntax

Example

This is what it will look like in the Teams client if you have a link to an outside source:

To fix this issue, we will want to update the links to all include the {target="_blank"} attribute to them. This is how it will look for users once that is updated:

Read More
Patrick Madden Patrick Madden

How to have a Teams Admin push the Chime V5 app to pilot groups or org-wide

If you are in the process of onboarding, please make sure you have gone through and considered or completed these two steps:

Authorize Chime V5 Teams App in Microsoft Teams Admin Center >>

Steps to Customize (Apply Branding) Teams App in Teams Admin >>


Once you are ready to start deploying the Chime V5 app either for your small pilot testing or when pushing to it to your organization, this guide will help to lay out the steps to follow to get the app pushed as well as cover some of the customization options to consider before pushing to groups of users.


Teams Admin configures user group permissions

Navigate to Permission Policies in the Teams Admin Center. You will now need to configure policies to allow the Chime V5 Teams app to only to be accessible for the small group that is to take part in the small pilot group. Typically, this is a new custom App Permission policy that you will create and name to indicate it is for the Chime pilot testing.

Additionally, you may want to automatically install and pin the Chime V5 app in the Teams client for users in the pilot. To do this you would want to update the app setup policies in the Setup Policies tab of Teams Admin Center and create a new policy for the Chime V5 pilot.

Here is some additional documentation from Microsoft on managing permission policies and setup policies:

Use app permission policies to control user access to apps

Use app setup policies to pin and auto install apps for users


Once you are happy with the testing in a small POC group, you will want to test adding additional members to the pilot group. In this stage you will want to test out applying the pilot policies to a broader set of users and ensure that you can properly scale up the app to more users.

Here is some Microsoft documentation on best practices for assigning policies:

Assign policies to users and groups

Teams Admin pushes Chime V5 app org-wide or to specific user groups

At this point you will want to know if Chime V5 is an app that you will want to add into the Global (Org-wide default) permission group, or if only certain user groups are going to have access to use the app, and if you want the app to be installed and pinned for all users in your organization. When you are done with POC testing, push the app to all end users who will be supported by Chime V5.

Before pushing the app to the whole tenant, here are a few things to consider for the end user experience:

  • Users may have the app install and pinned to the left side of their Teams client. If there are any branding updates you want to make for this app icon or name, it is better to make them before pushing the app.

  • All users will receive a message from the app when it is first installed for them. To customize this message, navigate to Admin > Chime Settings > Tenant Settings > Chat Commands and Events and update the adaptive card for Guest Install Welcome Message

Read More
Patrick Madden Patrick Madden

Graph API permission needed to enable Azure AD/Entra login for the Chime V5 web application

When initially onboarding Chime V5 you will need an Azure AD/Entra Admin to approve the use of some Graph API permissions for Chime V5 web application to enable Azure AD/Entra login. In this article we will cover the list of API permissions you will need and details of what each of them do and are used for. Below are the specific Graph API permissions Chime V5 will request when you are prompted to approve Azure AD/Entra login:

email - Delegated

Allows the app to read your users' primary email address. Microsoft Documentation >>

openid - Delegated

Allows users to sign in to the app with their work accounts and allows the app to see basic user profile information. Microsoft Documentation >>

profile - Delegated

Allows the app to see your users' basic profile (e.g., name, picture, user name, email address). Microsoft Documentation >>

User.Read - Delegated

Allows users to sign-in to the app, and allows the app to read the profile of signed-in users. It also allows the app to read basic company information of signed-in users. Microsoft Documentation >>

As the Azure administrator, we may request the Tenant Id of your org before this next step so that we are able to associate the Chime V5 instance stood up by Instant Tech team. Once the instance is ready to be linked to your AD/Entra login, the Instant Tech team will send across a link for you to approve the requested permissions. In this permissions request it will detail the permissions we are using and allow you to consent on behalf or your organization.

Once you have accepted the permissions, the log in option for Chime V5 will associate users logging in with their Office 365 accounts and will require users to login with their org accounts.

Read More
Patrick Madden Patrick Madden

Set up Chat Routing Notifications for your Agents Using a Teams Channel

When employing Chime V5 pipeline workflows, agents can now receive notifications directly on their dashboard when new chat sessions arrive. By integrating Webhooks with Teams, these V5 workflows can be linked to a designated Teams channel, providing improved accessibility through broadcast notifications.


Add Incoming Webhook to Your Teams Channel

Navigate to Your Teams Channel

  • Begin by navigating to the Teams channel where you want to receive broadcast notifications.

Select More Options Menu

  • In the chosen channel, click on the more options menu (three dots) located at the top-right corner.

Navigate to Connectors

  • Depending on your Teams version there will be two different ways to get to the Connectors menu.

    • (Old Teams) From the dropdown menu, select Connectors.

    • (New Teams) From the dropdown menu, select Manage Channel, then under the Connectors section, click Edit.

Add Incoming Webhook

  • Click on the Add button next to the Incoming Webhook option.

  • On the Incoming Webhook page, click Add again to configure the webhook.

Configure Incoming Webhook

Navigate Back to Connectors

  • Return to the Connectors menu.

Configure Incoming Webhook

  • Click on the Configure button next to the Incoming Webhook option.

Fill Out Webhook Name

  • Provide a meaningful name for the Incoming Webhook to easily identify its purpose.

Create Webhook

  • Click on the Create button to generate the Webhook URL.

Copy Webhook URL

  • Once the URL is generated, click on the Copy button or manually highlight and copy the link.


Configure In Chime V5 Tenant

Navigate to Chime V5 Tenant

  • Open your Chime V5 tenant and access the chat pipeline.

Edit Chat Pipeline

  • Select the Edit option in the chat pipeline.

Connect to Agent Pipeline Item

  • Open the details for the Connect to Agent pipeline item.

Enable Webhook

  • Toggle the Webhook Enabled option to activate the webhook functionality.

Paste Webhook URL

  • In the Webhook URL field, paste the previously copied URL from Teams.

Agent Experience

  • When a Guest/End User works through a chat session to start routing to agent, a broadcast notification is sent to the connected Teams channel and all Agents will have the ability to accept the chat session.

Read More
Patrick Madden Patrick Madden

Setting Up Real-time Agent Notifications with Teams Integration

This feature allows agents to receive instant notifications in their Teams client when a chat is routed to them, directly from the bot. In this guide, we'll walk you through the setup process to ensure a seamless integration into your workflow.

Prerequisites

Before diving into the setup, ensure that you have the latest version of Chime V5 installed. If not, make sure to update your Chime application to access the latest features and improvements.

Integration with Teams

Chime V5's real-time agent notifications are tied into the same Orchard Feature as the Teams channel webhook notification feature. This ensures a consistent and streamlined experience for administrators and agents alike.

Agents can now receive notifications in their Teams client when a chat is routed to them, in addition to the existing webhook method for routing into a Teams Channel.

User Settings Management

To enable these notifications, user settings must be configured to store the Teams ID and conversation ID reference for each agent. This information is added to the Orchard User record, similar to the setup for the Agent Profile.

User Settings in the Admin Area

In the Admin section, navigate to the user record, where a new "Teams Notifications" tab has been added. Here, administrators can manage Teams addresses for each user.

User Settings in Manager Area

For the Manager dashboard, a new section in the user page displays Teams notification settings. Managers can easily view and update this information when managing agents.

User Settings for Agents

Agents can access their Teams notification settings on their Agent Dashboard Settings page. Additionally, buttons are available to Install Chime in Teams and Start Chat in Teams, facilitating the capture of Teams address information.

Tenant-level Configuration

At the tenant level, administrators can configure additional settings to customize the Teams integration experience.

  • Tenant-wide enable/disable toggle: Easily enable or disable the feature for the entire tenant.

  • Override for the Teams App Id: Specify the App Id based on the installation method, ensuring seamless integration.

  • Adaptive Card Template: Customize the notification's appearance using an Adaptive Card Template.

Sending Agent Notifications

With the setup complete, agents, having their Teams Addresses captured, will receive notifications in their Teams client when a chat is routed to them.

The implementation of this feature is seamlessly integrated into the Orchard Workflow events, requiring no changes to the chat pipeline. While it's not tied to Teams presence, agents need to have a Chime browser window open and be available to receive notifications.

Read More
Fikri Ghazi Fikri Ghazi

How to Authorize Chime V5 Teams App in Microsoft Teams Admin Center

Step 1: Go to the Teams Admin Center

  • URL: Teams Admin Center

  • Description: Start by navigating to the Microsoft Teams admin center using the provided link. This dashboard allows you to manage all settings related to Microsoft Teams.

Microsoft Teams Admin Center Dashbaord

Step 2: Navigate to App Setup Policies

  • Path: Teams apps > Setup policies

  • Description: Once in the Teams admin center, find the sidebar menu. Click on "Teams apps," then select "Setup policies." This section lets you manage app setup policies for your organization.

Microsoft Teams Admin Center Setup Policies Navigation

Step 3: Select the Global (Org-wide default) Policy

  • Action: Click on "Global (Org-wide default)"

  • Description: In the "Setup policies" section, locate and click on the "Global (Org-wide default)" policy. This will allow you to manage and edit the default settings that apply organization-wide.

Step 4: Add the Chime V5 App

  • Action:

    • Click "+ Add apps" (this will render a sidebar on the right side of the page)

    • Search “Chime V5“ and add “Chime V5”

    • Click Add (to save)

Add apps button in Teams Global policies

Search “Chime V5” then click “Add“

Step 5: Confirm Addition of Chime V5

  • Description: Ensure that Chime V5 appears in the list of apps under the policy after adding it. This confirms that it has been authorized for use within your organization.

Step 6: Save and Apply Changes

  • Action: Click "Save"

  • Description: After adding Chime V5 to your app policy, make sure to save the changes to update the policy settings across your organization’s Microsoft Teams setup.

Read More
Fikri Ghazi Fikri Ghazi

6 Steps to Customize (Apply Branding) Teams App in Teams Admin

Step 1: Go to the Teams Admin Center

  • URL: Teams Admin Center

  • Description: Navigate to the Microsoft Teams admin center using the link provided. This is the dashboard from where you can manage all settings related to Microsoft Teams.

Microsoft Teams Admin Center

Step 2: Navigate to Manage Apps

  • Path: Teams apps > Manage apps

  • Description: Once you are in the Teams admin center, locate the sidebar menu. Click on "Teams apps," and then select "Manage apps." This section allows you to view and manage all the Teams apps available to your organization.

Teams Admin Manage Apps navigation menu

Step 3: Select the App to Customize

  • Action: Find the app you need to customize and click the app name.

  • Description: In the "Manage apps" list, search for the app you wish to customize. You can use the search bar to find the app quickly. Click on the name of the app to open its specific settings and customization options. For example, search “Chime V5” and click on “Chime V5“.

Select Teams app to customize

Step 4: Enter Customization Mode

  • Action: Click the customize icon.

  • Description: After selecting the app, look for the customize icon, which typically appears as a pencil icon. Click this icon to enter the customization mode for the selected app.

Teams app customization icon

Step 5: Make Your Changes

  • Description: In the customization mode, you can modify settings of the app. Depending on the app, you may be able to change visuals, and other settings to better suit your team's branding.

Edit Teams app customization

Step 6: Apply Changes

  • Action: Click "Apply".

  • Description: After making the necessary changes, make sure to save and apply them by clicking the "Apply" button. This will update the app with your custom settings across your organization’s Teams platform.

Please contact us at support@instant-tech.com if you have any questions.

Read More
Fikri Ghazi Fikri Ghazi

How to Create a Markdown Link on an FAQ That Opens on a New Tab

To create a Markdown link in an FAQ that opens in a new tab, you can use the following format:

[Link Text](URL){target="_blank"}

Replace Link Text with the text you want to display for the link, and replace URL with the actual URL you want to link to.

Here's a breakdown of the attributes used:

  • target="_blank": This attribute tells the browser to open the linked document in a new tab or window.

So, for example, if you want to create a link to Google that opens in a new tab with the text "Google", you would write:

[Google](https://www.google.com){target="_blank"}
Read More
Ben Morris Ben Morris

Streamline Customer Support: Optimizing Agent AI Assist for Success

This article outlines the configuration setup and usage of the Agent AI Assist feature. This feature allows for the creation of generated responses utililizing a custom Chat GPT bot. This allows agents to generate responses based on guest input mid-chat and referencing of knowledge base content (FAQs) for streamlined responses.

Configuration

To configure this feature configuration page navigate from the Admin menu to Chime Settings > Agent AI Chat Assist. This is were custom Chat GPT bot parameters can be set as well as cognitive search (the searching of indexed FAQ content).

Parameters

  • System Message Prompt - This will instruct the AI about how it should respond to the user.
  • Number of Previous Messages to Include - Number of previous messages to send as context for the AI to use in its response.

Advanced Settings

  • Choice Count - Number of alternates responses to return for a prompt
  • Max Tokens - Maximum number of tokens to generate in the response
  • Temperature - Sampling temperature to use that controls the apparent creativity of generated completions. Higher values will make output more random while lower values will make results more focused and deterministic
  • Top P - Controls randomness of response. Lower values are more deterministic.
  • Frequency Penalty - Controls repetition in response. Positive values will make tokens less likely to appear as their frequency increases and decrease the model's likelihood of repeating the same statements verbatim.
  • Precense Penalty - Controls repetition in response. Positive values will make tokens less likely to appear when they already exist and increase the model's likelihood to output new topics.

Knowledge Base Search Extension Settings - Options for Knowledge Base Integration

  • Use Cognitive Search - Allow chatbot to access indexed knowledge base resources (FAQs, etc) to enrich responses
  • Restrict Bot Responses to Knowledge Base - When enabled, the chatbot will only suggest responses based on information recovered from knowledge base resources (FAQs, etc). If it cannot find any relevant resources, it will inform the user. When disabled, the chatbot will suggest responses based on information recovered from knowledge base resources (FAQs, etc) but can also respond using data from its base model if no relevant information is found. NOTE: Information generated may not always be correct.
  • Strictness - Strictness controls how closely the chatbot will match searched documents to the user's query. Raising the value means a higher threshold for relevance and filters out less-relevant documents for responses. Setting this value too high might cause the model to fail to generate responses due to limited available documents.
  • Maximum Retrieved Documents - The maximum number of top-scoring documents to provide the chatbot as background to generate a response. Increasing this value may improve the quality of responses if there are many short documents in the knowledge base.
  • Search Query Type - Users can choose between 'Simple' and 'Semantic' search query types.
  • FAQ Citation Link Options - Users can opt to display cited documents as footnotes, where URLs are included at the end of the message, inline within the response, or choose not to link the source documents at all.

Agent Experience

  1. As an Agent, upon connecting to a chat navigate to the 'AI Assist' tab of the agent context window
  2. Select the 'Suggest Response' button to prompt the Chat GPT bot to create a response or multiple responses
  3. After the responses are generated, the agent has the ability to edit them before sending. If multiple responses are generated the agent can pick which one answers the query best or has the most accurate reference content

Guest Experience

On the Guest side the AI Assist response will match the settings that were configured on the Admin menu (maximum retrieved documents, FAQ citation link options, etc.) which will change how it is displayed.

Read More
Ben Morris Ben Morris

Maximizing SharePoint Site Importer Efficiency for Chime V5 FAQs

This article outlines how to setup and use the SharePoint site importer feature. This feature allows you to register your azure ad app registration and select SharePoint sites/document libraries to import into Chime V5 FAQs.

Configure Your Azure AD App Registration

Note: If you have not already setup your Azure AD App Registration refer here for the steps: Setup Azure Graph API

  1. Navigate to Chime Settings > SharePoint Importer > Settings in the Admin menu

  2. Fill out the fields for the Azure AD App Registration Settings (Display Name, Tenant ID, Client ID, Client Secret, Client Secret Expiration Date)

  3. Select the 'Save' button

  4. Fill in the Client Secret once again and select the 'Test Credentials' button to confirm that they are valid

Select Your SharePoint Sites

  1. On the SharePoint Importer Settings page select the 'Pick Sites' button under 'Selected SharePoint Sites'

  2. Enter the URL of your sharepoint site in the search bar of the pop up window

  3. Select the 'Add' button for any sites listed that you would like to add

Select Your Document Libraries

  1. On the SharePoint Import Settings page select the 'Pick Libraries' button under 'Selected Document Libraries' Note: Make sure that you have selected a site first

  2. Enter the URL of your sharepoint site in the search bar of the pop up window

  3. Select the 'Add' button for any document libraries that you would like to add

Select & Import Sites As FAQs

  1. Navigate to the Chime Settings > SharePoint Importer > Import FAQs page

  2. The content that is listed will be from the selected sharepoint sites/document libraries. Pick a site page from the list and select the 'Import FAQ' button

  3. After the edit FAQ window displays with the imported content make any edits needed and select the 'Publish' button

Update Imported Content To Latest SharePoint Version

  1. Navigate to the SharePoint imported FAQ you would like to update

  2. Select the 'Edit' button and navigate to the SharePoint tab

  3. At the bottom of the page select the 'Check for Updates' button

  4. If there is a new version of the document available on SharePoint an 'Update' button will display. Select the button to update the FAQ to the latest version

SharePoint FAQ Listings

When the SharePoint Content has been imported into Chime V5, there are unique tags for the FAQs that identify them as well as if their up-to-date status.

SharePoint Content In A Live Chat

After the SharePoint content has been indexed it can be surfaced in a live chat using the FAQlookup, ChatGPT AI Bot, and Agent AI Assist features.

Read More
Ben Morris Ben Morris

Configure Azure Graph API for Chime V5 SharePoint Import Integration

This article is intended to assist with the setup of Azure Graph API for Chime v5 SharePoint Importer feature.

As part of this setup, we will need to do the following steps to have this feature fully configured:

  1. Add the SharePoint (Site) Application Permission onto your Chime App Registration and have it approved by an Azure Admin.

  2. Setup the SharePoint Importer Setting in Chime Admin area.

  3. Have an Azure Admin consent to the application changes that were made.

Important Roles

As part of this setup and configuration process, a tenant administrator for the Microsoft Office 365 tenant will need to perform several actions in order to provide the necessary authorization for the SharePoint connector.

  • Azure Admin with permissions to grant consent on App Registration Permission updates

  • Chime Admin

App Registration

From the app registration, save the following values:

  • The application ID (referred to as Object ID on the Microsoft Entra admin center) assigned by the app registration portal

  • A client secret (application password)

Azure Graph API SharePoint (Site) Permission

Steps for Azure Admin for setting up permissions:

  1. Navigate to https://portal.azure.com/ and then Microsoft Entra ID (previously Azure Active Directory)
  2. Click on the App Registrations option on the left-side menu.
  3. Select the application that is used for your Chime deployment.
  4. In this new view, click the API Permissions button.
  1. Click the Add a Permission button in the API Permissions window.
  1. Select Microsoft Graph from the list of Microsoft API’s listed.
  1. Select Application permissions.
  2. Use the search bar to find and add the following required permissions:
    • Sites.Read.All
  1. Click the Add Permissions button.

  2. It is necessary to grant administrator consent for this permission. Click the Grant admin consent button.

  1. For creating Client Secret click the Certificates & secrets button.
  1. Click the New client secret button.
  2. Enter a description for your client secret.
  3. Click **Add **to create a new API key.
  4. Copy the newly created API secret key somewhere you can retrieve it. You will need this API secret key when configuring the SharePoint Importer feature.
Read More
peyton mcmanus peyton mcmanus

February 2024 Updates -

I’d like to share a few updates from our team as well as some of the news that we are following from Microsoft.

 

First, we have continued to update Chime V4 and we have recently made some improvements to the way that the application tracks the agent’s presence.  We are now using some recently released updates to the Microsoft Teams presence API and this may only be important if you sometimes encounter sporadic presence changes across your list of agents in Chime.

 

Here is the Chime V4 landing page with release notes: https://www.addchime.com/teams-release-notes.html

With Chime V5, we are continuing to add additional features around our chat pipelines, the FAQ area, AI features, and agent tools. 

 

With our chat pipelines, we have created a modular (Orchard) approach to the pipeline service.  This allows us to easily add additional pipeline actions (such as ChatPGT) and add support for additional ticketing providers (we currently support SolarWinds, ServiceNow, Cherwell, and Invgate).  Our ticketing integration is designed to help deflect inbound chats by displaying active tickets, provide the agent with a list of the tickets when the agent accepts the chat, or create a ticket after the chat is completed.  

 

Fikri provides a nice demo of some of this integration – as well as some integration with ChatGPT. 

https://www.youtube.com/watch?v=wmDWstfAmsU

 

As some background, Chime V5 is built ‘on top of’ an enterprise CMS (Orchard) platform.  We built on a CMS in order to create and manage content (FAQs, KB articles, Reports) that would be helpful as part of employee self-service.  Currently, these FAQs can be used during inbound chat sessions, as well as to help create a searchable index that could be integrated with AI based services (models).  The opportunity here is that a custom conversational experience can be ‘seeded’ with FAQs and the conversational experience can be improved by creating, or updating, FAQs and other content.  These FAQs and KB articles can also help agents resolve questions.

 

Our FAQs now include the following features that we know will be beneficial:

1 FAQs can be created and stored at part of a department (your tenant).  These FAQs can be searched as part of an inbound chat session and provided to agents.

 

2 We have created a new synchronization service to automatically index Chime based FAQs against an AI Cognitive Service.  Once indexed, the content from these FAQs can be combined with a ChatGPT base model to create an excellent custom conversational chat experience.   We’ve also created a ChatGPT pipeline service to integrate this functionality into chat.

 

3 We are also developing a SharePoint integration layer to import content from a SharePoint library into our FAQ system.  Once imported, this content can also be indexed and used as part of a conversational chat experience. 

Please contact us if you’d like to provide feedback, or test, this SharePoint integration feature.

 

Here is some information on our FAQ system: https://www.chimev5.com/ai-help-desk-faq-articles

 

Here is a link to our Chime V5 release notes: https://www.chimev5.com/teams-integrated-azure-ai-powered-help-desk-release-notes

 

Today, Microsoft announced the general available of ‘On Your Data’ which is now available in the Azure Open AI Service: https://techcommunity.microsoft.com/t5/ai-azure-ai-services-blog/on-your-data-is-now-generally-available-in-azure-openai-service/ba-p/4059514

 

We are using these same techniques, as well as the Azure AI service to index and overlay Chime content against common models GPT 35 and GPT-4.  With Chime, we also add routing to agents, live dashboards, reporting on every chat session and interaction, and configurable chat routing.   Service desk agents will also have access to these tools after they accept a chat conversation – in addition to real time language translation.

 

Chime V5 is available from the Microsoft Teams Store: https://appsource.microsoft.com/en-us/product/office/WA200005569

As well as the Microsoft AppSource: https://appsource.microsoft.com/en-us/product/web-apps/invitrixllcdbainstanttechnologies1588961047387.instant_chime_v5_july_2023

 

Please reach out with any questions or contact me with questions or feedback.

 

We are very interested in learning about your ideas (and strategies) around employee self-service and leveraging chat, AI, and content to help employees quickly resolve issues.

 

Peyton

 

Read More
Ben Morris Ben Morris

Integrating Microsoft Teams Bot Framework into Your Webpage

Are you looking to enhance your help desk landing page or support webpage by integrating your Microsoft Teams Bot Framework application? Look no further – this guide will walk you through the process of creating an HTML button that opens your Teams bot, allowing your end users to access it without leaving your webpage.

Step 1: Get your Chime Dispatcher Bot ID (Bot Framework ID)

  1. Navigate to Chime > Admin > Dispatcher.
  2. Locate the queue dispatcher that you want to expose to your webpage.
  3. Copy the Bot ID associated with the chosen dispatcher.

Step 2: Create the Button HTML Element

Replace the BOT_ID string in the template below with the Bot ID obtained in Step 1.

<button onclick="window.open('msteams:/l/chat/0/0?users=28:'+'BOT_ID', '_parent')">IT Service Desk</button>

Step 3: Add the HTML Button to Your Webpage and Test

  1. After updating the HTML button template, copy and paste the button element into your webpage.
  2. Click on the button.
  1. If you are using Chrome, click on Open Microsoft Teams.
  2. The Microsoft Teams desktop client should now direct you to your bot conversation.

Now, your users can access your Microsoft Teams Bot Framework application through your webpage, enhancing the overall user experience.

Read More
Ben Morris Ben Morris

AI Agent Translation: Bridging Communication Across Languages

Overview

In the ever-evolving landscape of communication tools, ChimeV5.AI takes a leap forward with its latest update. This update introduces a groundbreaking feature – ChimeV5.AI.AgentTranslation, designed to facilitate seamless communication between agents and guests, breaking down language barriers in real-time.

Feature: ChimeV5.AI.AgentTranslation

This new feature is a game-changer for Premium and Enterprise tier Chime tenants, offering translation services when agents and guests are connected. However, please note that this feature is not available for Standard tier tenants. To utilize ChimeV5.AI.AgentTranslation, the ChimeV5.AI.Translation feature must be enabled and configured.

Changes to Azure Translation Service Settings

The ChimeV5.AI.Translation feature has undergone a refinement to enhance user experience. The "Test Connection" button now seamlessly tests Azure service settings without reloading the entire settings page. This improvement prevents the loss of recently tested values and resolves issues with the Azure SignalR service.

New Features for ChimeV5.AI.AgentTranslation

Tenant-level Language Selection

ChimeV5.AI.AgentTranslation introduces tenant-level language selection, allowing administrators to control language options available to agents. The toggle for "Select Available Languages" empowers administrators to either permit agents to choose from all Azure Translation-supported languages or restrict them to a predefined list.

Agent Language Selection

Agents now have a "Translation Settings" tab in their user profile, enabling them to set their preferred language. Administrators can also manage this preference from the Manager Dashboard or the Agent Dashboard.

Guest Webclient Changes

The guest's preferred language is automatically detected based on their browser language settings. For testing purposes, this can be overridden through Chrome Dev Tools.

Agent Web Client Changes

Translation Tab

The agent web client now boasts a "Translation" tab when connected to a guest. Agents can set their preferred language, and this locale is tagged to their connection for the duration of the chat session.

Real-time Translation

Messages between the guest and the agent are translated in real-time. Whether the language is the same or different, ChimeV5.AI.AgentTranslation ensures clear communication.

Chat Transcript

The chat transcript provides a comprehensive record, showcasing the guest's experience with translated messages received and the original text sent by agents.

Architectural Details

ChimeV5.AI.AgentTranslation takes a server-side approach for translation, enhancing simplicity and security. By handling translations on the server engine side, the system avoids exposing API keys to the client, ensuring a more secure environment.

The decision to implement server-side translation simplifies the process of translating plain-text messages exchanged between agents and guests. This approach also maintains a secure environment for API keys, eliminating potential risks associated with client-side exposure.

Read More
Patrick Madden Patrick Madden

All Metadata Values Available in Chime

This will cover all available metadata variables that are usable for reporting, adaptive cards, standard replies, and outages.

Guest Variables

Variable Name Description Example Values
Guest.AadObjectId Guest user's Active Directory/Entra User Object ID e6a2b68c-2cdf-4b83-abea-f29f710aea0c
Guest.ChannelId Channel Guest is coming in on (directline or msteams) msteams
Guest.Email Email of the Guest bsmith@example.com
Guest.GivenName First/Given name of the Guest Bob
Guest.Id Chime ID of the Guest dl_bsmith@00000000-0000-0000-0000-000000000000
Guest.IsNew True or False for if this is the first time the Guest is using Chime true
Guest.Locale Location and Language settings of the Guest en-US
Guest.Name Full name of the Guest Bob Smith
Guest.Question Question of the Guest Hi I need to reset my email password
Guest.Surname Last/Surname of the Guest Smith
Guest.TenantId Tenant ID for the organization of the Guest
Guest.TenantName Tenant name that the Guest is coming into Example Inc
Guest.UserPrincipleName Active Directory/Entra UPN of the Guest (username and domain in an email address format) bsmith@example.com
Guest.Country Country of the Guest US
Guest.Timezone Timezone of the Guest America/New_York
Guest.Platform Operating system/platform the Guest is using Windows

Session Variables

Variable Name Description Example Values
Session.EndedUtc Date and time that the chat session ended in UTC timezone 01/04/2024 17:42:47
Session.ChatID Directline Chat ID for the current session 8bVNRWxnMRvFBiUj7VhFAB-us
Session.State State name that the chat session is in Completed
Session.Status.IsResolved Boolean for if the chat session was resolved or not True
Session.Status.ResolutionNotes Can be used to provide notes about the chat resolution by the pipeline or by Agents after the chat ended Guest was able to use ChatGPT assist to answer their questions and resolve this chat
Session.Status.ResolvedByAgentId Agent Id for agent that resolved the chat session 47ab169g1vp5hzm09914stk55g
Session.Status.ResolvedByAgentName Lists out the name/names of Agents that were in the chat when it was resolved John Doe, Jane Doe
Session.Status.ResolvedByType Describes which Pipeline Item the chat was at when it was resolved Agent, ChatGPT, AI Assist
Session.WasConnectedWithAgent Boolean for if the Guest was connected to an Agent in the chat session true
Session.deflected Boolean for if the chat session was deflected True
Session.deflectedBy Describes which Pipeline Item the chat was at when it deflected FAQ Lookup
Session.SessionId Chime's internal Session ID for the chat session 3b810491-a2d3-4a2a-95e9-fc75e7107819
Session.StartedUtc Date and time that the chat session started in UTC timezone 05/27/2022 133429
Session.ReferrerUrl If the chat was started from webclient, this is the URL of the page it came from https://example.com/
Session.EntryPoint Method the Guest used to start the chat session, Teams or Webclient Webclient
Session.CurrentPipelineStage.Name Name of the Pipeline Item that the chat session is on currently connectToAgent
Session.CurrentPipelineStage.Type Type of Pipeline Item that the chat session is on ConnectedToAgentState
Session.PipelinePath List of JSON objects that cover each Pipeline Item the chat has routed through [ { "ToState": "welcomeMessage", "ToStateType": "SendCardState", "FromState": "StartChat", "Timestamp": "2024-01-04T18:18:11.3745466+00:00" }, { "ToState": "connectToAgent", "ToStateType": "ConnectedToAgentState", "FromState": "welcomeMessage", "FromStateType": "SendCardState", "Timestamp": "2024-01-04T18:19:11.3745508+00:00" }]
Session.SkillTags Comma seperated list of any Skill Tags that are linked to the chat session Office365, Email
Session.SkillTagList List format of any Skill Tags that are linked to the chat session [ "Office365", "Email" ]
Session.PickChatUrl URL the Agent can use to pick/accept the chat session https://app.imchime.com/Example/Session/00000000-0000-0000-0000-000000000000?connectToSession=true
Session.IsConnectedToAgent Dynamic boolean for if the Guest is connected with one or more Agents true
Session.IsWaiting Dynamic boolean for if the Guest is currently in the "Conect to Agent" Pipeline Item and waiting for an Agent to accept their chat session false
Session.StartedWaitingAt Date and time the chat session went into the Waiting state (Guest is routing to an Agent) 2024-01-04T18:20:05.1769764+0000
Session.ConnectedToAgentAt Date and time the chat session went into the Connected state (Agent picked up Guest's chat) 2024-01-04T18:20:11.3769773+0000
Session.WaitTime The current ammount of time the chat session has been in the Waiting state (JSON object) { "String": "0:00:06.2", "Seconds": 6, "Minutes": 0, "TotalSeconds": 6.2, "TotalMinutes": 0.10333333333333333 }
Session.WaitTime.String Wait time as a string 0:00:06.2
Session.WaitTime.Seconds Number of seconds the chat has been waiting (not total seconds) 6
Session.WaitTime.Minutes Number of minutes the chat has been waiting 0
Session.WaitTime.TotalSeconds Total number(decimal) of seconds the chat session has been waiting 6.2
Session.WaitTime.TotalMinutes Total number(decimal) of minutes the chat session has been waiting 0.10333333333333333
Session.ConnectedTime The current ammount of time the chat session has been connected to an Agent (JSON object) { "String": "0:03:42", "Seconds": 42, "Minutes": 3, "TotalSeconds": 222, "TotalMinutes": 3.7 }
Session.ConnectedTime.String Connected time as a string 0:03:42
Session.ConnectedTime.Seconds Number of seconds the chat has been connected (not total seconds) 42
Session.ConnectedTime.Minutes Number of minuntes the chat has been connected 3
Session.ConnectedTime.TotalSeconds Total number(decimal) of seconds the chat session has been connected 222
Session.ConnectedTime.TotalMinutes Total number(decimal) of minutes the chat session has been connected 3.7
Session.AverageWaitTime The average wait time of all sessions over the last 24 hours [Total wait time / number of sessions] (JSON object) { "String": "0:01:11", "Seconds": 11, "Minutes": 1, "TotalSeconds": 71, "TotalMinutes": 1.1833333333333333 }
Session.AverageWaitTime.String Average wait time as a string 0:01:11
Session.AverageWaitTime.Seconds Number of seconds for the chats average wait time (not total seconds) 11
Session.AverageWaitTime.Minutes Number of minutes for the chats average wait time 1
Session.AverageWaitTime.TotalSeconds Total number(decimal) of seconds for the chats average wait time 71
Session.AverageWaitTime.TotalMinutes Total number(decimal) of minutes for the chats average wait time 1.1833333333333333
Session.AverageWaitTimeLastHour The average wait time of all sessions over the last hour [Total wait time / number of sessions] (JSON object) { "String": "0:01:14", "Seconds": 14, "Minutes": 1, "TotalSeconds": 74, "TotalMinutes": 1.2333333333333334 }
Session.AverageWaitTimeLastHour.String Average wait time from the last hour as a string 0:01:14
Session.AverageWaitTimeLastHour.Seconds Number of seconds for the chats average wait time from the last hour (not total seconds) 14
Session.AverageWaitTimeLastHour.Minutes Number of minutes for the chats average wait time from the last hour 1
Session.AverageWaitTimeLastHour.TotalSeconds Total number(decimal) of seconds for the chats average wait time from the last hour 74
Session.AverageWaitTimeLastHour.TotalMinutes Total number(decimal) of minutes for the chats average wait time from the last hour 1.2333333333333334
Session.ExpectedWaitTime How much longer the Guest is expected to wait [AverageWaitTime - WaitTime] (JSON object) { "String": "0:01:04.8", "Seconds": 4, "Minutes": 1, "TotalSeconds": 64.8, "TotalMinutes": 1.08 }
Session.ExpectedWaitTime.String Expected wait time as a string 0:01:04.8
Session.ExpectedWaitTime.Seconds Number of seconds the chat is expected to wait (not total seconds) 4
Session.ExpectedWaitTime.Minutes Number of minutes the chat is expected to wait 1
Session.ExpectedWaitTime.TotalSeconds Total number(decimal) of seconds the chat is expected to wait 64.8
Session.ExpectedWaitTime.TotalMinutes Total number(decimal) of minuntes the chat is expected to wait 1.08
Session.ExpectedWaitTimeLastHour How much longer the Guest is expected to wait [AverageWaitTimeLastHour - WaitTime] (JSON object) { "String": "0:01:07.8", "Seconds": 7, "Minutes": 1, "TotalSeconds": 67.8, "TotalMinutes": 1.13 }
Session.ExpectedWaitTimeLastHour.String Expected wait time from the last hour as a string 0:01:07.8
Session.ExpectedWaitTimeLastHour.Seconds Number of seconds the chat is expected to wait from the last hour (not total seconds) 7
Session.ExpectedWaitTimeLastHour.Minutes Number of minutes the chat is expected to wait from the last hour 1
Session.ExpectedWaitTimeLastHour.TotalSeconds Total number(decimal) of seconds the chat is expected to wait from the last hour 67.8
Session.ExpectedWaitTimeLastHour.TotalMinutes Total number(decimal) of minuntes the chat is expected to wait from the last hour 1.13
Session.WaitMessageCount Number of wait messages that have been sent to the Guest while looking for an Agent 2
Session.ConnectedAgents List of JSON objects for the Agents that connected to the chat session [ { "Name": "Jim Jones", "FirstName": "Jim", "LastName": "Jones", "Email": "jjones@example.com", "Connected": "05/27/2022 13:34:56", "ID": "47ab169g1vp5hzm09914stk55g", "ProfileImageUrl": "https://app.imchime.com/Example/media/media/_branding/default_profile.jpg"},{ "Name": "Carol Johnson", "FirstName": "Carol", "LastName": "Johnson", "Email": "cjohnson@example.com", "Connected": "05/27/2022 13:37:56", "ID": "47ab169g1vp5hzm09914stk44g", "ProfileImageUrl": "https://app.imchime.com/Example/media/media/_branding/default_profile.jpg"} ]
Session.NumberOfConnectedAgents The number of Agents currently connected to the chat session 2
Session.AvailableAgentCount The number of Agents who are currently online and able to accept the chat session 3
Session.WaitingGuestCount The number of Guests who are currently waiting for an Agent to accept their chat session 4
Session.PositionInQueue The position in queue that the current chat session is in (how many Guests will get connected to an Agent before this Guests chat session) 1

Agent Variables

Variable Name Description Example Values
Agent.Name Full name of the current Agent Jim Jones
Agent.FirstName First name/Given name of the current Agent Jim
Agent.LastName Last name/Surname of the current Agent Jones
Agent.Email Email of the current Agent jjones@example.com
Agent.ProfileImageUrl Media library URL location of the Agent's profile image /media/_branding/default_profile.jpg
Agent.Connected Date and time that the Agent connected to the Guest's chat session 05/27/2022 13:34:56
Agent.ID Agent ID for the current Agent 47ab169g1vp5hzm09914stk55g

Sender Variables

Variable Name Description Example Values
Sender.Name Full name of the current Agent Jim Jones
Sender.FirstName First name/Given name of the current message sender Jim
Sender.LastName Last name/Surname of the current message sender Jones
Sender.Email email of the current message sender jjones@example.com
Sender.ProfileImageUrl Media library URL location of the message sender's profile image /media/_branding/default_profile.jpg
Sender.Locale Locale of the current message sender en-US

Routing Variables

Variable Name Description Example Values
Routing.AgentList.Name Name of the agent list Service Desk
Routing.AgentList.Id ContentItemId of the agent list 4m49qcqycbygv3m88g80r7aw51
Routing.AgentList.Type Type of the agent list => [All, Tagged, Selected] Selected
Routing.Mode Which routing mode is configured for the agent list RoundRobin

Chatbot Variables

Variable Name Description Example Values
Chatbot.ConnectedAt Date and time when the AI chatbot connected with the guest 2024-01-17T09:37:11.3745267Z
Chatbot.DisconnectedAt Date and time when the AI chatbot disconnected from the guest 2024-01-17T16:41:53.3578965Z
Chatbot.Escalated True or false if the chat was escalated to a live agent false
Chatbot.Deflected True of false if the chat was deflected by the chatbot true

AI Summary Metrics

Variable Name Description Example Values
AI.Summary.Title AI generated title summarizing the chat session Installation and configuration of AI-Enabled Help Desk Instant Chiume V5
AI.Summary.Issue AI generated summary of the initial issue the guest comes in with The customer wants to know how to install the AI-enabled help desk, Chime V5.
AI.Summary.Resolution AI generated summary of how the chat was resolved between the Agent and Guest The agent informed the customer that they can install the application from the Microsoft Teams App Store and configure the tenant. No custom Azure resources are required as all necessary resources are included in the deployment. The customer successfully installed the application.
AI.Summary.Narrative AI generated summary of the main important points covered in the chat session The transcript is about how to install the AI-enabled help desk, Chime V5, from the Microsoft Teams App Store. It explains that the tenant can be configured with a unique database instance, tenant URL, and tenant administrator, and that no custom Azure resources are required. The Web Visitor successfully installed the software.

Outages

Variable Name Description Example Values
Session.OutageId Content ID of the Outage the guest selected 43mbkc86gc1vjtvt6427cd0jw9
Session.OutageTitle Title of the Outage the guest selected Email services down from 5:30 to 7:15 for maintenance
Session.SubscribeToOutage Did the guest subscribe to receive update notifications about the outage? true

Ticketing

Variable Name Description Example Values
Ticket.Id (GUID) ID of the ticket created efed3b82-6d83-46fd-b80e-1da34d9a90ff
Ticket.Number Ticket number created in the ticketing system 0938479538
Ticket.CreatedByChime Was the ticket created by Chime? (true or false) true
Ticket.URL URL of the ticket https://ticketingsystem.com/tickets/0938479538
Ticket.ITSM Name of the ticketing platform the ticket is on (JIRA, SERVICE-NOW, SOLARWINDS, JIRA or CHERWELL)

System Variables

Variable Name Description Example Values
System.CurrentTimeUTC Current date and time in UTC time zone 2024-01-04T18:20:11.3745267Z
System.CurrentTime Current time in local time zone 14:20:11+0000
System.CurrentDate Current date in your local time zone 2024-01-04
System.CurrentDateTime Current date and time in your local time zone DATE(2024-01-04) TIME(14:20:11+0000)
System.BaseUrl Base URl of your Chime V5 tenant https://app.imchime.com/Example
System.Tenant Name of your Chime V5 tenant Example
System.PipelineName Name of the Pipeline you are routing in Self Service Pipeline
System.MediaUrl URL of your tenant's Media Library https://app.imchime.com/Example/media/
Read More
Ben Morris Ben Morris

Optimizing Incident Management with Invgate Ticketing Integration - and Chat

The Invgate Ticket Listing Pipeline Action is a powerful feature designed to fetch open incidents for a seeker and associate them with ongoing chat sessions. This integration enhances collaboration and simplifies issue tracking for support teams.

Configuration

To get started, your tenant admin needs to specify the Invgate instance URL and login credentials under Chime Configuration -> Invgate.

Invgate Ticketing Features

To leverage the Invgate ticketing integration, ensure the following features are enabled:

  • Invgate.Ticketing

  • Invgate.Pipeline.TicketListing

Pipeline Configuration

  • Prompt: Define the title that appears on the ticket listing card.

  • Button Associated With Card: Specify what is written on the button to display on card.

  • No Result State: Specify the pipeline key for seekers if no incidents are found.

  • Lookup tickets using Session Meta Data Field: Configure the field for searching incidents, commonly the seeker's email address.

  • Next Stage: Set the pipeline key for seekers after associating an incident with the session.

  • Options: Customize additional pipeline navigation options as needed.

Seeker Experience

The pipeline displays open incidents, allowing seekers to click on an option to reveal essential details such as links, descriptions, and last updated timestamps.

Seekers can seamlessly associate incidents with chat sessions by selecting the relevant option, progressing to the next stage as configured in the pipeline.

Invgate Create or Update Ticket Pipeline Action

The Invgate Create or Update Ticket Pipeline Action empowers users to create new tickets or update existing ones. It assigns tickets to advisors and pushes chat transcripts to ticket records.

Invgate Ticketing Features

  • Invgate.Ticketing

  • Invgate.Pipeline.CreateTicket

Pipeline Configuration

  • Notify seeker Invgate ticket is about to get created/updated: Customize the message to notify the seeker when a ticket is about to be created or updated.

  • Provide seeker Invgate ticket details: Configure the message to send seekers, including ticket number, ID, and URL.

  • Provide incident category: Configure the incident category Id

  • Provide incident type: Configure the incident type Id

Evaluate JavaScript for Accessing Invgate Tickets

The Evaluate JavaScript action in the pipeline allows for versatile methods to access Invgate ticketing API calls, providing a convenient way to interact with tickets directly from Invgate chat sessions.

Invgate Ticketing Features

Before getting started, ensure the following feature is enabled:

  • Invgate.Ticketing

Script Method - getInvgateTickets('seekerEmailAddress'): To retrieve a list of Invgate tickets, utilize the getInvgateTickets script call, passing the seeker's email address as a parameter.

// Get tickets
var tickets = getInvgateTickets("${Guest.Email}");
var ticketsArray = JSON.parse(tickets);

// Perform operations on ticket records
sendReply("Count of tickets: " + ticketsArray.length);

Script Methods for Ticket Manipulation: Leverage JavaScript Invgate helper calls to create and update tickets:

  • getInvgateTicket(seekerEmailAddress)
  • updateInvgateTicketDescription(ticketId, description)
  • assignInvgateTicket(agentEmailAddress)
  • updateInvgateTicketTitle(ticketId, title)

Seeker Experience

The pipeline notifies seekers about impending ticket actions and provides them with necessary details, ensuring a transparent and user-friendly experience.

Conclusion

Invgate's ticketing integration simplifies incident management, allowing organizations to easily handle and respond to incidents. It enables support teams to access, manage, and respond to tickets seamlessly, facilitating efficient communication and streamlining the support experience for users. By integrating Invgate into your workflow, you can optimize ticket management and enhance your incident management capabilities. Discover these features to fully leverage Invgate on your platform.

Related Items

To further enhance your understanding and utilization of the Invgate integration in Chime, here are some related resources:

Read More
Ben Morris Ben Morris

Enhancing Content Security: A Closer Look at Role-Based Security in Chime V5

In today's environment, where safeguarding data is crucial, implementing effective access control for sensitive information is essential. Chime V5 offers a role-based authorization feature to address this need. This way, you make sure only the right people can access sensitive information.

Step 1: Navigate To A Content Item

First you will want to navigate to the content item you would like to set up role based access for. Common content items include FAQs, Pages, etc.

Step 2: Select the 'Security' Tab

When you open the 'Edit' content page navigate to the 'Security' tab at the top of the screen

Step 3: Enabling Content Item Access Control

On the 'Security' tab select the check box to enable the content item access control. When selected it will show a list of roles.

Step 4: Choosing Roles for Access Control

From the list of displayed roles, make a selection.Choose the specific role that aligns with your security requirements. Once selected, only individuals with that role will have the privilege to view the content.

Common Roles in Chime V5:

  • Anonymous - Open access for anyone
  • Authenticated - Limited to individuals who have logged in or been authenticated
  • Agent - Exclusive access for agents only
  • Manager - Exclusive access for managers only
  • Administrator - Exclusive access for admins only

Role Hierarchy Clarification: When a Agent, Manager, or Admin role has been assigned it does not follow any role heirarchy. For example Admins will be unable to view content assigned exclusively to Agents or Managers.

Read More
Ben Morris Ben Morris

Simplifying Login Domain Restrictions in Chime: A Step-by-Step Setup Guide

This feature is designed to help you to control which Azure AD tenant can authenticate to your specified Chime tenant. When logging in using Azure authorization, any Microsoft account user can log in, but only those within the designated 'Domains' will be able to authenticate and gain access to the tenant. Our step-by-step guide will provide you with all the necessary information to set up this feature and ensure that your tenant is secure and protected from unauthorized access.

Step 1: Accessing Login Domain Restrictions

Begin by navigating to the Chime User Management section. Look for the 'Login Domain Restrictions' option within the Admin menu. This is the starting point for configuring domain-specific access controls.

Step 2: Choosing Domain Access Options

Once in the 'Login Domain Restrictions' section, select the 'Allow Users From Only These Domains' option. This choice will enable you to specify the domains from which users are allowed to log in.

Step 3: Defining Allowed Domains

In the 'Allowed Domains' field, input the domains that should have access to your Chime tenant. Refer to the provided JSON data for the correct format. You can include multiple domains, each associated with a unique TenantId.

[
  {
    "DomainName": "Instant",
    "TenantId": "00000000-0000-0000-0000-00000000000"
  },
  {
    "DomainName": "Sandbox",
    "TenantId": "00000000-0000-0000-0000-00000000000"
  }
]

Step 4: Configuring Azure Active Directory

Move to Chime Settings > Azure Active Directory. Confirm that the TenantId is listed as 'common.' This setting is crucial for allowing users from other tenants to sign in, ensuring a broader scope of collaboration.

Frequently Asked Questions (FAQs)

Can I add multiple domains in the 'Allowed Domains' field?

Yes, you can include multiple domains in the 'Allowed Domains' field. Ensure each domain follows the format specified in the JSON data provided in the setup guide.

How do I find my TenantId for Chime?

Refer to the JSON data provided in the setup guide. The TenantId is associated with each domain. Copy the relevant TenantId for configuration in Chime Settings > Azure Active Directory.

Note: If you face issues related to the redirect URL, follow the recommendation to add a new user from the tenant and register the user. This often resolves redirect URL concerns. In case issues persist, head to your Azure Portal and navigate to the Chime V5 app registration's redirect URL section. If the redirect URL for the specified tenant is not listed, manually add it for a comprehensive solution.

Read More
Ben Morris Ben Morris

Configuring Chime V5 for Seamless Real-time Agent Notifications and Teams Integration

This feature allows agents to receive instant notifications in their Teams client when a chat is routed to them, directly from the bot. In this guide, we'll walk you through the setup process to ensure a seamless integration into your workflow.

Prerequisites

Before diving into the setup, ensure that you have the latest version of Chime V5 installed. If not, make sure to update your Chime application to access the latest features and improvements.

Integration with Teams

Chime V5's real-time agent notifications are tied into the same Orchard Feature as the Teams channel webhook notification feature. This ensures a consistent and streamlined experience for administrators and agents alike.

Agents can now receive notifications in their Teams client when a chat is routed to them, in addition to the existing webhook method for routing into a Teams Channel.

User Settings Management

To enable these notifications, user settings must be configured to store the Teams ID and conversation ID reference for each agent. This information is added to the Orchard User record, similar to the setup for the Agent Profile.

User Settings in the Admin Area

In the Admin section, navigate to the user record, where a new "Teams Notifications" tab has been added. Here, administrators can manage Teams addresses for each user.

User Settings in Manager Area

For the Manager dashboard, a new section in the user page displays Teams notification settings. Managers can easily view and update this information when managing agents.

User Settings for Agents

Agents can access their Teams notification settings on their Agent Dashboard Settings page. Additionally, buttons are available to Install Chime in Teams and Start Chat in Teams, facilitating the capture of Teams address information.

Tenant-level Configuration

At the tenant level, administrators can configure additional settings to customize the Teams integration experience.

  • Tenant-wide enable/disable toggle: Easily enable or disable the feature for the entire tenant.

  • Override for the Teams App Id: Specify the App Id based on the installation method, ensuring seamless integration.

  • Adaptive Card Template: Customize the notification's appearance using an Adaptive Card Template.

Sending Agent Notifications

With the setup complete, agents, having their Teams Addresses captured, will receive notifications in their Teams client when a chat is routed to them.

The implementation of this feature is seamlessly integrated into the Orchard Workflow events, requiring no changes to the chat pipeline. While it's not tied to Teams presence, agents need to have a Chime browser window open and be available to receive notifications.

Read More
Ben Morris Ben Morris

Harness the Power of Webhooks: Notify Agents Using Pipeline Integration into A Teams Channels and Broadcast Notifications

When employing Chime V5 pipeline activities, agents can receive notifications directly on their dashboard when new chat sessions arrive. By integrating Webhooks with Teams, these V5 workflows can be linked to a designated Teams channel, providing improved accessibility through broadcast notifications to Microsoft Teams.

Add Incoming Webhook to Your Teams Channel

Navigate to Your Teams Channel

Begin by navigating to the Teams channel where you want to receive broadcast notifications.

Select More Options Menu

In the chosen channel, click on the more options menu (three dots) located at the top-right corner.

Select Connectors

From the dropdown menu, select Connectors

Add Incoming Webhook

Click on the Add button next to the Incoming Webhook option.

On the Incoming Webhook page, click Add again to configure the webhook.

Configure Incoming Webhook

Navigate Back to Connectors

Return to the Connectors menu by following steps 1-3.

Configure Incoming Webhook

Click on the Configure button next to the Incoming Webhook option.

Fill Out Webhook Name

Provide a meaningful name for the Incoming Webhook to easily identify its purpose.

Create Webhook

Click on the Create button to generate the Webhook URL.

Copy Webhook URL

Once the URL is generated, click on the Copy button or manually highlight and copy the link.

Configure In Chime V5 Tenant

Navigate to Chime V5 Tenant

Open your Chime V5 tenant and access the chat pipeline.

Edit Chat Pipeline

Select the Edit option in the chat pipeline.

Connect to Agent Pipeline Item

Open the details for the Connect to Agent pipeline item.

Enable Webhook

Toggle the "Webhook Enabled" option to activate the webhook functionality.

Paste Webhook URL

In the Webhook URL field, paste the previously copied URL from Teams.

User Experience for the Agent in MS Teams

Upon an incoming chat session, a broadcast notification is sent to the connected Teams channel

Read More