Skip to content

Latest commit

 

History

History
113 lines (75 loc) · 4.57 KB

File metadata and controls

113 lines (75 loc) · 4.57 KB
page_type sample
description This sample illustrates how you can use Teams App Installation Life Cycle by calling Microsoft Graph APIs.
products
office-teams
office
office-365
languages
csharp
extensions
contentType createdDate
samples
07-07-2021 13:38:26
urlFragment officedev-microsoft-teams-samples-graph-app-installation-lifecycle-csharp

App Installation

This sample app demonstarte the installation lifecycle for Teams Apps which includes create, update delete Apps

Interaction with app

Prerequisites

  • .NET Core SDK version 6.0

    determine dotnet version

    dotnet --version
  • Ngrok (For local environment testing) Latest (any other tunneling software can also be used)

  • Teams Microsoft Teams is installed and you have an account

Setup

  1. Register a new application in the Azure Active Directory – App Registrations portal.
  • You need to add following permissions mentioned in the below screenshots to call respective Graph API
  1. Setup for Bot
  • Register a AAD aap registration in Azure portal.

  • Also, register a bot with Azure Bot Service, following the instructions here.

  • Ensure that you've enabled the Teams Channel

  • While registering the bot, use https://<your_ngrok_url>/api/messages as the messaging endpoint.

    NOTE: When you create your app registration, you will create an App ID and App password - make sure you keep these for later.

  1. Setup NGROK
  • Run ngrok - point to port 3978
# ngrok http -host-header=rewrite 3978
  1. Setup for code
  • Clone the repository

    git clone https://github.com/OfficeDev/Microsoft-Teams-Samples.git
  • Modify the /appsettings.json and fill in the following details:

    • {{Your Microsoft App Id}} - Generated from Step 1 while doing AAd app registration in Azure portal.
    • {{ Your Microsoft App Password }} - Generated from Step 1, also referred to as Client secret
  • Build your solution

    • Launch Visual Studio
    • File -> Open -> Project/Solution
    • Navigate to samples/graph-app-installation-lifecycle/csharp/AppInstallation folder
    • Select AppInstallation.csproj file
    • Press F5 to run the project
  1. Setup Manifest for Teams
  • This step is specific to Teams.

    • Edit the manifest.json contained in the ./Manifest folder to replace your Microsoft App Id (that was created when you registered your app registration earlier) everywhere you see the place holder string {{Microsoft-App-Id}} (depending on the scenario the Microsoft App Id may occur multiple times in the manifest.json)
    • Edit the manifest.json for validDomains and replace {{domain-name}} with base Url of your domain. E.g. if you are using ngrok it would be https://1234.ngrok.io then your domain-name will be 1234.ngrok.io.
    • Zip up the contents of the Manifest folder to create a manifest.zip (Make sure that zip file does not contains any subfolder otherwise you will get error while uploading your .zip package)
  • Upload the manifest.zip to Teams (in the Apps view click "Upload a custom app")

    • Go to Microsoft Teams. From the lower left corner, select Apps
    • From the lower left corner, choose Upload a custom App
    • Go to your project directory, the ./Manifest folder, select the zip folder, and choose Open.
    • Select Add in the pop-up dialog box. Your app is uploaded to Teams.
  • Upload app manifest file (zip file) to your team

Running the sample

Further Reading

Graph-app-installation