Skip to content

Latest commit

 

History

History
170 lines (109 loc) · 8.18 KB

TEAMS_EXTENSION.md

File metadata and controls

170 lines (109 loc) · 8.18 KB

Back to Chat with your data README

Teams extension

USER STORY | ONE-CLICK DEPLOY | SUPPORTING DOCUMENTATION

User Story

User story

This extension enables users to experience Chat with your data within Teams, without having to switch platforms. It allows them to stay within their existing workflow and get the answers they need. Instead of building the Chat with your data solution accelerator from scratch within Teams, the same underlying backend used for the web application is leveraged within Teams.

One-click Deploy

One-click deploy

IMPORTANT: Before you proceed, installation and configuration of the Chat with your data with speech-to-text deployment is required.

Pre-requisites

Deploy backend Azure Function

Deploy to Azure

Note: The (p) suffix on the App Setting (below) means that you should use the same resources and services deployed during the Chat with your data with speech-to-text deployment

App Setting Note
Resource group The resource group that will contain the resources for this accelerator. You can select Create new to create a new group or use the existing resource group created with Speech-to-text deployment.
Resource prefix A text string that will be appended to each resource that gets created, and used as the website name for the web app. This name cannot contain spaces or special characters.
App Insights Connection String (p) The Application Insights connection string to store the application logs.
Azure Cognitive Search (p) The name of your Azure Cognitive Search resource. e.g. https://<name>.search.windows.net.
Azure Search Index (p) The name of your Azure Cognitive Search Index.
Azure Search Key (p) An admin key for your Azure Cognitive Search resource.
Azure OpenAI resource (p) The name of your Azure OpenAI resource. This resource must have already been created previously.
Azure OpenAI key (p) The access key is associated with your Azure OpenAI resource.
Orchestration strategy (p) Use Azure OpenAI Functions (openai_functions) or LangChain (langchain) for messages orchestration. If you are using a new model version 0613 select "openai_functions" (or "langchain"), if you are using a model version 0314 select "langchain".
Azure Form Recognizer Endpoint (p) The name of the Azure Form Recognizer for extracting the text from the documents.
Azure Form Recognizer Key (p) The key of the Azure Form Recognizer for extracting the text from the documents.
Azure Blob Account Name (p) The name of the Azure Blob Storage for storing the original documents to be processed.
Azure Blob Account Key (p) The key of the Azure Blob Storage for storing the original documents to be processed.
Azure Blob Container Name (p) The name of the Container in the Azure Blob Storage for storing the original documents to be processed.

You can find the ARM template used, along with a Bicep file for deploying this accelerator in the /infrastructure directory.

Deploy Teams application

  1. Clone this GitHub repo.
  2. Open the “extensions/teams” folder with Visual Studio Code

Teams

  1. Open the file env\.env.test

ENV

  1. Locate the environment variable AZURE_FUNCTION_URL.
  2. Replace the with the name of your Function App resource (created in previous section)
  3. Save the file.
  4. Select Teams Toolkit from the navigation panel.

Teams Toolkit in VS Code

  1. Within the Teams Toolkit panel, login to the following accounts:

Sign in to Microsoft 365: Use your Microsoft 365 work or school account with a valid E5 subscription for building your app. If you don't have a valid account, you can join Microsoft 365 developer program to get a free account before you start.

Sign in to Azure: Use your Azure account for deploying your app on Azure. You can create a free Azure account before you start.

Teams Toolkit Accounts

  1. Under Environment, select test.

Teams Toolkit Environment

  1. Under Lifecycle, select Provision.

Teams Toolkit Lifecycle Provision

  1. Within the command palette, select test for the environment.

Select an Environment

  1. Select the resource group created earlier in the installation

Select a Resource Group

  1. When prompted about Azure charges, select Provision.

Azure Charges Prompt

  1. Verify that the provisioning was successful.

Provision Successful

  1. Under Lifecycle, select Deploy.

Teams Toolkit Lifecycle Deploy

  1. Within the command palette, select test for the environment.

Select an Environment

  1. When prompted, select Deploy.

VS Code Prompt to Deploy

  1. Verify that the Deployment was successful.

Deployment successful

  1. Under Lifecycle, select Publish.

Teams Toolkit Lifecycle Publish

  1. Within the command palette, select test for the environment.

Select an Environment

  1. Verify that the Publish was successful.

Publishing successful

  1. Select Go to admin portal.

Go to Admin Portal

  1. On the Manage apps page within the Teams Admin portal, you should see one submitted custom app pending approval.

Pending Approval

  1. In the search by name input box, enter: enterprise chat

Filtered app

  1. Select the app and then select Allow.

Selected app

  1. Select the app name.

Select app name

  1. Select Publish.

Publish app

  1. When prompted, select Publish.

Prompt to publish

  1. Depending on your environment, it may take several hours to publish.

Teams Publish Success

To customize the accelerator or run it locally, first, copy the .env.sample file to your development environment's .env file, and edit it according to environment variable values table. Learn more about deploying locally here.

Supporting documentation

Supporting documentation

Resource links for Teams extension

This solution accelerator deploys the following resources. It's crucial to comprehend the functionality of each. Below are the links to their respective documentation: