{"id":27290030,"url":"https://github.com/matsft/microsoftteamslearningapp","last_synced_at":"2025-04-11T21:27:10.228Z","repository":{"id":135112403,"uuid":"146531452","full_name":"MatSFT/MicrosoftTeamsLearningApp","owner":"MatSFT","description":null,"archived":false,"fork":false,"pushed_at":"2018-08-29T08:56:24.000Z","size":45,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2024-02-27T18:03:23.275Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatSFT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-08-29T02:05:18.000Z","updated_at":"2024-02-27T18:03:29.609Z","dependencies_parsed_at":"2024-02-27T18:13:29.933Z","dependency_job_id":null,"html_url":"https://github.com/MatSFT/MicrosoftTeamsLearningApp","commit_stats":null,"previous_names":["matsft/microsoftteamslearningapp"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatSFT%2FMicrosoftTeamsLearningApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatSFT%2FMicrosoftTeamsLearningApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatSFT%2FMicrosoftTeamsLearningApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatSFT%2FMicrosoftTeamsLearningApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatSFT","download_url":"https://codeload.github.com/MatSFT/MicrosoftTeamsLearningApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248482070,"owners_count":21111275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-11T21:27:09.630Z","updated_at":"2025-04-11T21:27:10.212Z","avatar_url":"https://github.com/MatSFT.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Steps to run this app and use it in Microsoft Teams\n\n1. Begin your tunneling service to get an https endpoint (we recommend [ngrok](https://ngrok.com/)).\n\n\t* Open a new **Command Prompt** window. \n\n\t* Change to the directory that contains the ngrok.exe application. \n\n\t* Run the command `ngrok http [port] --host-header=localhost` (you'll need the https endpoint for the bot registration) e.g.\u003cbr\u003e\n\t\t```\n\t\tngrok http 3979 --host-header=localhost\n\t\t```\n\n\t* The ngrok application will fill the entire prompt window. Make note of the Forwarding address using https. This address is required in the next step. \n\n\t* Minimize the ngrok Command Prompt window. It must remain running to tunnel properly but can be kept in the background.\n\n2. Register a new bot (or update an existing one) with Bot Framework by using the https endpoint started by ngrok and the extension \"/api/messages\" as the full endpoint for the bot's \"Messaging endpoint\". e.g. \"https://####abcd.ngrok.io/api/messages\" - Bot registration can be done through the [App Studio for Microsoft Teams](https://docs.microsoft.com/en-us/microsoftteams/platform/get-started/get-started-app-studio) app.\n\n    \u003e **NOTE**: When you create your bot you will create an App ID and App password - make sure you keep these for later.\n\n3. Your project needs to run with a configuration that matches your registered bot's configuration. To do this, you will need to update the Web.config file:\n\n\t* In Visual Studio, open the Web.config file. Locate the `\u003cappSettings\u003e` section. \n \n\t* Enter the MicrosoftAppId. The MicrosoftAppId is the app ID from the **Configuration** section of the bot registration. \n \n\t* Enter the MicrosoftAppPassword. The MicrosoftAppPassword is the auto-generated app password displayed in the pop-up during bot registration.\n\n\tHere is an example for reference:\n\t\n\t\t\u003cadd key=\"MicrosoftAppId\" value=\"88888888-8888-8888-8888-888888888888\" /\u003e\n\t\t\u003cadd key=\"MicrosoftAppPassword\" value=\"aaaa22229999dddd0000999\" /\u003e\n\n4. In Visual Studio click the play button\n\n5. Once the bot is running, you will need to create a manifest file and sideload it into a team or personal scope to test. All of this can be done in [App Studio for Microsoft Teams](https://docs.microsoft.com/en-us/microsoftteams/platform/get-started/get-started-app-studio).\n\n# Contributing\n\nThis project welcomes contributions and suggestions.  Most contributions require you to agree to a\nContributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\nthe rights to use your contribution. For details, visit https://cla.microsoft.com.\n\nWhen you submit a pull request, a CLA-bot will automatically determine whether you need to provide\na CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions\nprovided by the bot. You will only need to do this once across all repos using our CLA.\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or\ncontact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsft%2Fmicrosoftteamslearningapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatsft%2Fmicrosoftteamslearningapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsft%2Fmicrosoftteamslearningapp/lists"}