Git Product home page Git Product logo

microsoft-teams-apps-adopt-bot's Introduction

Adoption Bot

Adoption Bot is a user care Chatbot built with Power Virtual Agents for Microsoft Teams (PVA). Out of the box, Adoption Bot answers 100+ common questions about Microsoft 365 and Teams. You can edit the included topics, add your own topics, and ingest existing FAQs. If users need additional help, Adoption Bot can connect them to experts or even be extended to open service tickets with premium Flow connectors.

Demo animated GIF

Benefits:

*Use of bots to handle employee questions reduces the number of IT and HR support tickets by 10% to 15%. Source: Forrester Consulting Total Economic Impact™ Of using Microsoft Teams as a platform and Teams with Power Platform

Adoption Bot Overview and Demo on YouTube

Adoption Bot QnA Pairs for hosted in 41+ languages

If you would rather build the Adoption Bot from scratch, follow this Step by Step guide

Cost

Free for most Enterprise customers. Adoption Bot and Power Virtual Agents app in Microsoft Teams are available as part of most Microsoft 365 subscriptions and use standard connectors.

Prerequisites

  • Subscription that includes Power Virtual Agents for Teams. Most plans except GCC, A1 and SUB SKUs Get access to Power Virtual Agents - Power Virtual Agents | Microsoft Docs
  • Power Virtual Agents for Teams App (Important: dont use Power Virtual Agents web app as you will have to start Power Apps Trial)
  • Microsoft Teams Team to host the Bot/Dataverse
  • Microsoft Teams Team for Ask an Expert and Submit Feedback Escalation to land in
  • Teams Admin rights to upload custom app and set Teams App Setup Policy
  • IMPORTANT: This solution uses seeded licensing and does not require Power App licenses. Do not use PVA for Web (powerva.microsoft.com) as it will require you to start a 30 day trial.

Deployment Guide

Create Teams to host the Dataverse for Teams environment You can skip this step if you already have a Team for the team that will be developing and managing the Adoption Bot.

  1. Create a new Team in Microsoft Teams to host your Dataverse. Open Microsoft Teams and Click Join or Create a Team.
  2. Choose Create a Team from scratch.
  3. Team can be public or private.
  4. We don’t need to add any users currently. Any owner of this team will have authoring rights to your Adoption Bot.

Create a Teams where Submit Feedback and Ask An Expert escalations land You can skip this step if you already have a Team for Champions or support personal who will monitor bot esclations.

  1. Create a new Team in Microsoft Teams to host esclations. Open Microsoft Teams and Click Join or Create a Team.
  2. Choose Create a Team from scratch.
  3. Team can be public or private.
  4. Add members who will have access to Bot escalations. You can create seperate channels for Submit Feedback and Asn An Export or have them both go to the same channel.

image

Prepare to import

  1. Search for Power Apps Teams app in Microsoft Teams app store.

image

  1. Click Add to open Power Apps for Teams app in Microsoft Teams and will land you in the homepage.

  2. Select Home Tab. If you don’t see any Recent Apps or any Apps Under Start Now, we need to create a dummy app to get access to Solution Explorer.

image

If you do see Apps listed skip to 7.

image

  1. Click Start now and select the team you created in Step one to create the dummy app.

image

  1. Click Create, this step will take a few minutes as it hydrates the Dataverse environment.

image

  1. Provide a name for the dummy app and click Save.

image

Import PVA Chatbot and Flows

  1. Click Home Tab at the top of Power Apps for Teams App.

  2. Below Recent Apps Click See More ->.

image

  1. Click See All Under Items Created for TEAM_NAME.

image

  1. Click Import at top of Solution Explorer.

image

  1. Choose the Zip file you downloaded from the Adoption Bot GitHub Repro.

  2. Click Next.

image

  1. You should see confirmation we are importing 2 Flows and 1 Chatbot.

image

  1. Click Next.

  2. Next we need to specify Connections for Teams and Office 365 user connectors used in the Flows.

Create or select connections for Flows

  1. If you have existing connections choose them now. A connection is the security context (account) the Flow runs under. To create new connections, Click dropdown next to Microsoft Teams and + New Connection.

image

  1. It's recommended you use a generic or service for the Flow connections. Flow notifications will orginate from this account. The service account requires Teams License and Exchange Online Mailbox/license.

image

  1. In the Microsoft Teams New Connections Click Create.

image

  1. Specify and sign into the the account you want to use for the connection. E.g. [email protected].

image

  1. You should see the new connection for Teams Listed.

image

  1. Go back to Power App for Teams App and Hit Refresh button on screen. You should see Teams now has a valid connection – in my example using a service account.

  2. Do the same steps for the Office 365 Users Connection: Drop Down Select a Connection, Click New Connection, Create, Sign in with account.

  3. Now back in Power Apps for Teams you should see 2 valid connections for the Flows being imported.

image

  1. Click Import.

image

  1. After a few minutes you should see this.

image

Configure Team and Channels for Ask An Expert and Submit Feedback Flows

  1. Back in Power App for Teams App Build Tab, Click See all.

  2. Click Cloud Flows – you should have 2 flows listed.

image

  1. Click on the First Flow Adoption Bot Share Feedback.

  2. Click Edit.

  3. Open the Flow Action – Post your own adaptive card as the Flow bot to a channel (Preview) action.

  4. Change the Team and Channel where you want to Submit Feedback escalations to land. In My Case I created a Team called M365 Champs | Adoption Bot Feedback. Note: if using a service account, the service accounts needs to be a member of this Team to show up here.

image

  1. Click Save to Save the Flow.

  2. Click Back arrow and now edit the Adoption Bot Ask An Expert: Edit Flow, Open Post your own adaptive card as the Flow bot to a channel action, change Team and Channel, Click Save.

image

Test the bot in Power Virtual Agents for Teams

  1. Back in Power Apps for Teams App, Build tab, Click Chatbots in left rail.

image

  1. Click on Adoption Bot PVA 2021 which will launch Power Virtual Agents for Teams App.

image

  1. Chat with your AdoptBot in PVA embedded authoriing - Test bot pane. Ask common questions like "Guests in Teams".

Note: You may want to turn off topics, edit topics or add new topics using Power Virtual Agents App in Teams. Create and edit topics in your Power Virtual Agents bot.

Note: You can also extract topics from webpages or online files Extract content from webpages or online files

Test the Flows for Ask an Expert and Submit feedback

  1. Type "Agent" in Power Virtual Agents for Teams Test Bot.

  2. Choose Ask An Expert.

  3. Enter a title for your request.

  4. Enter a description for your request.

  5. Check the Team and channel you configured in Step 31 and 33 for new Ask An Expert notification.

image

  1. Type Agent again and test Submit Feedback flow as per instructions above.

Brand Adoption Bot for your organization

Optionally, you can give the bot a name that makes sense to your organization. To change the Bot name and icon, click Manage and Details. Click save at the top.

image

Publish the bot to your end users

Now that you have tried out the bot and is satisfied with its content, it’s time to make it available to your employees.

  1. Go to Publish from the left navigation panel. Select the Publish button and proceed with the confirmation dialog to make the bot content live.

image

  1. Select Share the bot and select Turn on Teams so end users can chat with the bot in Microsoft Teams.

image

  1. Select Submit for admin approval on the panel.

image

  1. Select Download manifest and provide the description and other information relevant to your bot.

image

  1. Once you have downloaded the Teams app manifest for your bot, extract the teamsApp.zip file on your computer and edit the manifest.json file.

  2. Replace AppID with 6c8c0828-bd30-4c89-900b-5656ac58683c and save the manifest.json

  3. Rezip the 3 files (Manifest and two icons)

Upload the bot to your tenant app store

When you publish a custom Teams app, it's available to users in your organization's app store.

Note: adding Apps to your tenant requires upload custom apps to be enabled in policy. See this article for details Publish a custom app by uploading an app package

  1. Launch Microsoft Teams admin center.

  2. In the left navigation of the Microsoft Teams admin center, go to Teams apps > Manage apps.

  3. Click Upload, click Select the zip file you edited in the prior step.

image

Pin and install the app for users to discover

By default, for users to find the app they have to go to your organization's app store and browse or search for it. To make it easy for users to get to the app, you can pin the app to the app bar in Teams.

  1. In the left navigation of the Microsoft Teams admin center, go to Teams apps > Setup policies.

  2. Select the policy by clicking to the left of the policy name, and then select Edit.

  3. Under Pinned apps, select Add apps.

  4. In the Add pinned apps pane, search for the apps you want to add, and then select Add. You can also filter apps by app permission policy. When you've chosen your list of apps to pin, select Add.

image

  1. Arrange the apps in the order that you want them to appear in Teams, and then select Save.

image

See this article for additional details: Manage app setup policies in Microsoft Teams

Make Adoption Bot your own

  • Rename the Bot to something that makes sense to your organization. See Brand Adoption Bot for your organization section above.
  • Review the included topics and remove or edit as you see fit.
  • Add your own topics. A best practice is to look at top help desk tickets and craft topics that map to top use questions.
  • Use Create topics from existing online support content to automatically extract topics from your existing support documentation.

Contributing

Special thanks to contributors Aditya Challapally, Michael Chow, Jong Hoon Moon, Belinda Parker and Nidhi Shandilya who helped create and launch this app template.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

microsoft-teams-apps-adopt-bot's People

Contributors

hickey77 avatar microsoft-github-operations[bot] avatar microsoftopensource avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.