GroupNames { get; set; }
34 |
35 | ///
36 | /// Gets or sets a value indicating whether the All Users option is selected.
37 | ///
38 | public bool AllUsers { get; set; }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Models/ExportRequest.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator.Models
7 | {
8 | ///
9 | /// Export request model class.
10 | ///
11 | public class ExportRequest
12 | {
13 | ///
14 | /// Gets or sets the notification id.
15 | ///
16 | public string Id { get; set; }
17 |
18 | ///
19 | /// Gets or sets the Team Id.
20 | ///
21 | public string TeamId { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Models/GroupData.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator.Models
7 | {
8 | ///
9 | /// Group data model class.
10 | ///
11 | public class GroupData
12 | {
13 | ///
14 | /// Gets or sets group Id.
15 | ///
16 | public string Id { get; set; }
17 |
18 | ///
19 | /// Gets or sets name.
20 | ///
21 | public string Name { get; set; }
22 |
23 | ///
24 | /// Gets or sets mail.
25 | ///
26 | public string Mail { get; set; }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Models/TeamData.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator.Models
7 | {
8 | ///
9 | /// Teams data model class.
10 | ///
11 | public class TeamData
12 | {
13 | ///
14 | /// Gets or sets team Id.
15 | ///
16 | public string Id { get; set; }
17 |
18 | ///
19 | /// Gets or sets name.
20 | ///
21 | public string Name { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Pages/Error.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @model ErrorModel
3 | @{
4 | ViewData["Title"] = "Error";
5 | }
6 |
7 | Error.
8 | An error occurred while processing your request.
9 |
10 | @if (Model.ShowRequestId)
11 | {
12 |
13 | Request ID: @Model.RequestId
14 |
15 | }
16 |
17 | Development Mode
18 |
19 | Swapping to Development environment will display more detailed information about the error that occurred.
20 |
21 |
22 | Development environment should not be enabled in deployed applications, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the ASPNETCORE_ENVIRONMENT environment variable to Development, and restarting the application.
23 |
24 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Pages/Error.cshtml.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator.Pages
7 | {
8 | using System.Diagnostics;
9 | using Microsoft.AspNetCore.Mvc;
10 | using Microsoft.AspNetCore.Mvc.RazorPages;
11 |
12 | ///
13 | /// Error model class.
14 | ///
15 | [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
16 | #pragma warning disable SA1649 // File name should match first type name
17 | public class ErrorModel : PageModel
18 | #pragma warning restore SA1649 // File name should match first type name
19 | {
20 | ///
21 | /// Gets or sets the request id.
22 | ///
23 | public string RequestId { get; set; }
24 |
25 | ///
26 | /// Gets a value indicating whether the request id is null or empty.
27 | ///
28 | public bool ShowRequestId => !string.IsNullOrEmpty(this.RequestId);
29 |
30 | ///
31 | /// Sets the request id.
32 | ///
33 | public void OnGet()
34 | {
35 | this.RequestId = Activity.Current?.Id ?? this.HttpContext.TraceIdentifier;
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using CompanyCommunicator
2 | @namespace Microsoft.Teams.Apps.CompanyCommunicator.Pages
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/Source/CompanyCommunicator/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator
7 | {
8 | using Microsoft.AspNetCore.Hosting;
9 | using Microsoft.Extensions.Hosting;
10 |
11 | ///
12 | /// Program class of the company communicator application.
13 | ///
14 | public class Program
15 | {
16 | ///
17 | /// Main function of the company communicator application.
18 | /// It builds a web host, then launches the company communicator into it.
19 | ///
20 | /// Arguments passed in to the function.
21 | public static void Main(string[] args)
22 | {
23 | CreateHostBuilder(args).Build().Run();
24 | }
25 |
26 | ///
27 | /// Create the web host builder.
28 | ///
29 | /// Arguments passed into the main function.
30 | /// A web host builder instance.
31 | public static IHostBuilder CreateHostBuilder(string[] args) =>
32 | Host.CreateDefaultBuilder(args)
33 | .ConfigureWebHostDefaults(webBuilder =>
34 | {
35 | webBuilder.UseStartup();
36 | });
37 | }
38 | }
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Common.Test/Microsoft.Teams.App.CompanyCommunicator.Common.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | all
21 | runtime; build; native; contentfiles; analyzers; buildtransitive
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Common.Test/Services/Mock/MockAuthenticationHelper.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.App.CompanyCommunicator.Common.Test.Services.Mock
7 | {
8 | using System.Net.Http;
9 | using System.Threading.Tasks;
10 | using Microsoft.Graph;
11 |
12 | ///
13 | /// Mocking Authentication Provider.
14 | ///
15 | public class MockAuthenticationHelper : IAuthenticationProvider
16 | {
17 | ///
18 | /// Mock authenticate request.
19 | ///
20 | /// Represents a HttpRequestMessage.
21 | /// asynchronous operation.
22 | public Task AuthenticateRequestAsync(HttpRequestMessage request)
23 | {
24 | return Task.CompletedTask;
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Common.Test/stylecop.json:
--------------------------------------------------------------------------------
1 | {
2 | // ACTION REQUIRED: This file was automatically added to your project, but it
3 | // will not take effect until additional steps are taken to enable it. See the
4 | // following page for additional information:
5 | //
6 | // https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/main/documentation/EnableConfiguration.md
7 |
8 | "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/main/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
9 | "settings": {
10 | "documentationRules": {
11 | "companyName": "Microsoft",
12 | "copyrightText": "Copyright (c) {companyName} Corporation.\nLicensed under the MIT License."
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Prep.Func.Test/Microsoft.Teams.Apps.CompanyCommunicator.Prep.Func.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | all
17 | runtime; build; native; contentfiles; analyzers; buildtransitive
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Send.Func.Test/Microsoft.Teams.Apps.CompanyCommunicator.Send.Func.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | all
16 | runtime; build; native; contentfiles; analyzers; buildtransitive
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Test/Controllers/HealthControllerTest.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Microsoft Corporation.
3 | // Licensed under the MIT License.
4 | //
5 |
6 | namespace Microsoft.Teams.Apps.CompanyCommunicator.Test.Controllers
7 | {
8 | using Microsoft.AspNetCore.Mvc;
9 | using Microsoft.Teams.Apps.CompanyCommunicator.Controllers;
10 | using Xunit;
11 |
12 | ///
13 | /// HealthController test class.
14 | ///
15 | public class HealthControllerTest
16 | {
17 | ///
18 | /// Test method to verify status code 200 for IndexAction.
19 | ///
20 | [Fact]
21 | public void Call_IndexAction_ReturnsStausCodeOk()
22 | {
23 | // Arrage
24 | var controller = this.GetHealthControllerInstance();
25 | var statusCodeOk = 200;
26 |
27 | // Act
28 | var result = controller.Index();
29 | var statusCode = ((StatusCodeResult)result).StatusCode;
30 |
31 | // Assert
32 | Assert.Equal(statusCode, statusCodeOk);
33 | }
34 |
35 | private HealthController GetHealthControllerInstance()
36 | {
37 | return new HealthController();
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Test/Microsoft.Teams.Apps.CompanyCommunicator.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | all
22 | runtime; build; native; contentfiles; analyzers; buildtransitive
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Source/Test/CompanyCommunicator.Test/stylecop.json:
--------------------------------------------------------------------------------
1 | {
2 | // ACTION REQUIRED: This file was automatically added to your project, but it
3 | // will not take effect until additional steps are taken to enable it. See the
4 | // following page for additional information:
5 | //
6 | // https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/main/documentation/EnableConfiguration.md
7 |
8 | "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/main/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
9 | "settings": {
10 | "documentationRules": {
11 | "companyName": "Microsoft",
12 | "copyrightText": "Copyright (c) {companyName} Corporation.\nLicensed under the MIT License."
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/Source/nuget.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Source/stylecop.json:
--------------------------------------------------------------------------------
1 | {
2 | // ACTION REQUIRED: This file was automatically added to your project, but it
3 | // will not take effect until additional steps are taken to enable it. See the
4 | // following page for additional information:
5 | //
6 | // https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/main/documentation/EnableConfiguration.md
7 |
8 | "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/main/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
9 | "settings": {
10 | "documentationRules": {
11 | "companyName": "Microsoft",
12 | "copyrightText": "Copyright (c) {companyName} Corporation.\nLicensed under the MIT License."
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Support/readme.md:
--------------------------------------------------------------------------------
1 | ## Why
2 | This folder is created to aid in the troubleshooting when deploying this application into your tenant/environment.
3 |
4 | # **Start-ChatWithUser.ps1**
5 | This script is designed for the purpose of testing the chat functionality of the bot within the Teams App. Some modifications are needed before you can start using this. In the "Variables need to be replaced to start using the script" section, there are a couple of variables you will need to replace:
6 |
7 | * $tenantId = "tenant.onmicrosoft.com" #or in GUID format "00000000-0000-0000-0000-000000000000"
8 | * $teamsAppId = "00000000-0000-0000-0000-000000000000" # AppId of the Teams App Manifest
9 | * $graphAppId = "00000000-0000-0000-0000-000000000000"
10 | * $userAppId = "00000000-0000-0000-0000-000000000000"
11 |
12 | For the secrets, I recommend to an extra secret per App which you can delete after using this script. This way, it won't interfere with the configuration of the application. And as an added bonus, it's more secure because the script will only run with the newly created secrets.
13 |
14 | # **Check-AppRegistrations.ps1**
15 | This script is meant to retrieve the provisioned App Registrations and the secrets which are stored in the KeyVault are working together correctly or not. If an access token is being returned, it means that the combinations of AppId + AppSecrets are working.
16 |
17 | # **Check-GraphApp.ps1**
18 | This a simplified version of the Check-AppRegistrations script. If you just want to see if the AppId + AppSecret is working correctly, please use this one. It is meant to use if the App registration of the Graph App (e.g. the main App) is working correctly (e.g. combination of AppId + AppSecret) and also if the API Permissions are set correct to retrieve Groups and Users
--------------------------------------------------------------------------------
/Wiki/Home.md:
--------------------------------------------------------------------------------
1 | # Company Communicator
2 |
3 | Company Communicator is a custom Teams app that enables corporate teams to create and send messages intended for multiple teams or large number of employees over chat allowing organization to reach employees right where they collaborate. Utilize this template for multiple scenarios such as new initiative announcements, employee onboarding, modern learning and development or organization-wide broadcasts.
4 |
5 | The app provides an easy interface for designated users to create, preview, collaborate and send messages.
6 |
7 | It provides a foundation to build custom targeted communication capabilities such as custom telemetry on how many users acknowledged or interacted with a message.
8 |
9 | 
10 |
11 | * [Solution overview](Solution-overview)
12 | * [Data stores](Data-stores)
13 | * [Cost estimate](Cost-estimate)
14 | * [Known limitations](Known-limitations)
15 | * [Localization](Localization)
16 | * Deploying the app
17 | * [Deployment guide](Deployment-guide)
18 | * [Deployment guide certificate](Deployment-guide-certificate)
19 | * [Deployment guide powershell](Deployment-guide-powershell)
20 | * [Troubleshooting](Troubleshooting)
21 | * Migrating to newer version
22 | * [v5](v5-migration-guide)
23 | * [v4](v4-migration-guide)
24 | * [v3](v3-migration-guide)
25 | * [v2](v2-migration-guide)
26 | * [Scaling Company Communicator](Scale-app)
27 | * [Extending Company Communicator](Taking-it-further)
28 | * [Release Notes](Release-notes)
--------------------------------------------------------------------------------
/Wiki/Known-limitations.md:
--------------------------------------------------------------------------------
1 | # Known Limitations
2 | ## 1. Author/publishing experience is not supported on Mobile
3 |
4 | The tab where authors/creators of messages create a message is currently not supported on mobile. The recommended approach is to create the messages on desktop only.
5 |
6 | ## 2. Adaptive card doesn't support RTL
7 |
8 | The app supports localization. Only the adaptive card currently doesn't support RTL.
--------------------------------------------------------------------------------
/Wiki/Localization.md:
--------------------------------------------------------------------------------
1 | # Localization
2 | The App currently supports the below locales.
3 |
4 | 1. ar-SA
5 | 2. de-DE
6 | 3. en-US
7 | 4. es-ES
8 | 5. fr-FR
9 | 6. he-IL
10 | 7. ja-JP
11 | 8. ko-KR
12 | 9. pt-BR
13 | 10. ru-RU
14 | 11. zh-CN
15 | 12. zh-TW
16 |
17 | You can find the translations in `Source/CompanyCommunicator/ClientApp/public/locales` and
18 | the resource strings can be found in `Source/CompanyCommunicator.Common/Resources`.
19 |
20 | **NOTE:** You can add/update the resources for other locales and update the configuration.
--------------------------------------------------------------------------------
/Wiki/Scale-app.md:
--------------------------------------------------------------------------------
1 | # Scale
2 | If you need to scale the app for large number of users(greater than 200K), please follow the below steps.
3 |
4 | ## 1. Create new Storage Account for Durable function.
5 |
6 | 1. Find and goto the resource group which is used for the Company Communicator app deployment.
7 | 1. Click on **+ Create**.
8 | 1. Then, search for **Storage Account** and click on **Create**.
9 | 1. Now, fill in the fields such as **Storage account name** and click on **Review + Create**.
10 | 1. Once the resource is created, then goto Storage Account.
11 | 1. Under **Security + networking**, click on access keys.
12 | 1. Then, click on **Show keys** and copy the key1 connection string.
13 | 1. Now, goto the Company Communicator prep function and click on **Configuration**.
14 | 1. Update the value of **Azure.WebJobsStorage** with the connection string from step 7.
15 | 1. Click on **Save** to commit changes.
16 |
17 | > Please make sure to keep the below value less than 50rps, as going over this rate can get the bot blocked.
18 | ```
19 | "serviceBus": {
20 | "messageHandlerOptions": {
21 | "maxConcurrentCalls": 30
22 | }
23 | }
24 | ```
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Wiki/Taking-it-further.md:
--------------------------------------------------------------------------------
1 | Want to take a stab at extending Company Communicator? Here are some ideas:
2 |
3 | ## Extend the compose experience
4 | * Allow file attachments in the message. The app currently provides basic rich formatting of message body.
5 | * Allow existing messages as templates for new message creation.
6 |
7 | ## Message metrics
8 | Export actionable data on message replies, acknowledgments, reactions in detail.
9 |
10 | ## New message types
11 | * **Surveys/polls:** Send surveys and polls for employees to gather NPS on new initiatives or gather quick feedback on organization activities.
--------------------------------------------------------------------------------
/Wiki/Telemetry.md:
--------------------------------------------------------------------------------
1 | The Company Communicator app logs telemetry to [Azure Application Insights](https://azure.microsoft.com/en-us/services/monitor/). You can go to the Application Insights blade of the Azure App Service to view basic telemetry about your services, such as requests, failures, and dependency errors.
2 |
3 | The Teams Bot integrates with Application Insights to gather bot activity analytics, as described [here](https://blog.botframework.com/2019/03/21/bot-analytics-behind-the-scenes/).
4 |
5 | The app logs a few kinds of events:
6 |
7 | `Trace` logs keeps the track of application events.
8 |
9 | `Exceptions` logs keeps the records of exceptions tracked in the application.
10 |
--------------------------------------------------------------------------------
/Wiki/images/ARM-Deployment-Timeout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/ARM-Deployment-Timeout.png
--------------------------------------------------------------------------------
/Wiki/images/CompanyCommunicatorCompose.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/CompanyCommunicatorCompose.png
--------------------------------------------------------------------------------
/Wiki/images/admin_consent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/admin_consent.png
--------------------------------------------------------------------------------
/Wiki/images/admin_consent_error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/admin_consent_error.png
--------------------------------------------------------------------------------
/Wiki/images/admin_consent_url.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/admin_consent_url.png
--------------------------------------------------------------------------------
/Wiki/images/appinsights-migration-execution.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/appinsights-migration-execution.png
--------------------------------------------------------------------------------
/Wiki/images/appservice-dotnet-version.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/appservice-dotnet-version.png
--------------------------------------------------------------------------------
/Wiki/images/appservice_sync_deployment_error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/appservice_sync_deployment_error.png
--------------------------------------------------------------------------------
/Wiki/images/appservice_sync_error_fix.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/appservice_sync_error_fix.png
--------------------------------------------------------------------------------
/Wiki/images/architecture_overview_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/architecture_overview_v1.png
--------------------------------------------------------------------------------
/Wiki/images/architecture_overview_v2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/architecture_overview_v2.png
--------------------------------------------------------------------------------
/Wiki/images/architecture_overview_v4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/architecture_overview_v4.png
--------------------------------------------------------------------------------
/Wiki/images/authorization_fail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/authorization_fail.png
--------------------------------------------------------------------------------
/Wiki/images/azure-config-app-step3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/azure-config-app-step3.png
--------------------------------------------------------------------------------
/Wiki/images/azure_cli.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/azure_cli.png
--------------------------------------------------------------------------------
/Wiki/images/azurefunctions_runtime_version.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/azurefunctions_runtime_version.png
--------------------------------------------------------------------------------
/Wiki/images/botchanneldod_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/botchanneldod_1.png
--------------------------------------------------------------------------------
/Wiki/images/botchannelgovernment_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/botchannelgovernment_1.png
--------------------------------------------------------------------------------
/Wiki/images/botchannelgovernment_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/botchannelgovernment_2.png
--------------------------------------------------------------------------------
/Wiki/images/botchannelgovernment_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/botchannelgovernment_3.png
--------------------------------------------------------------------------------
/Wiki/images/check_modules.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/check_modules.png
--------------------------------------------------------------------------------
/Wiki/images/company-communicator-compose.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/company-communicator-compose.png
--------------------------------------------------------------------------------
/Wiki/images/create-certificate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/create-certificate.png
--------------------------------------------------------------------------------
/Wiki/images/create-log-analytics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/create-log-analytics.png
--------------------------------------------------------------------------------
/Wiki/images/delete_application_uri.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/delete_application_uri.png
--------------------------------------------------------------------------------
/Wiki/images/deploybutton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/deploybutton.png
--------------------------------------------------------------------------------
/Wiki/images/deployment_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/deployment_success.png
--------------------------------------------------------------------------------
/Wiki/images/disable_routing_rule.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/disable_routing_rule.png
--------------------------------------------------------------------------------
/Wiki/images/dotnet_upgrade_execution.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/dotnet_upgrade_execution.png
--------------------------------------------------------------------------------
/Wiki/images/draft-message.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/draft-message.png
--------------------------------------------------------------------------------
/Wiki/images/export-cert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/export-cert.png
--------------------------------------------------------------------------------
/Wiki/images/file-explorer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/file-explorer.png
--------------------------------------------------------------------------------
/Wiki/images/frontdoor_designer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/frontdoor_designer.png
--------------------------------------------------------------------------------
/Wiki/images/go_back_main_window.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/go_back_main_window.png
--------------------------------------------------------------------------------
/Wiki/images/graph_permissions_access.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/graph_permissions_access.png
--------------------------------------------------------------------------------
/Wiki/images/import-app-service-cert-finished.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/import-app-service-cert-finished.png
--------------------------------------------------------------------------------
/Wiki/images/import-key-vault-cert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/import-key-vault-cert.png
--------------------------------------------------------------------------------
/Wiki/images/log-analytics-overview-page.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/log-analytics-overview-page.png
--------------------------------------------------------------------------------
/Wiki/images/log_folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/log_folder.png
--------------------------------------------------------------------------------
/Wiki/images/login_screen_first.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/login_screen_first.png
--------------------------------------------------------------------------------
/Wiki/images/login_screen_second.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/login_screen_second.png
--------------------------------------------------------------------------------
/Wiki/images/manifest_folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/manifest_folder.png
--------------------------------------------------------------------------------
/Wiki/images/migrate-appinsights.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/migrate-appinsights.png
--------------------------------------------------------------------------------
/Wiki/images/migrated-appinsights-overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/migrated-appinsights-overview.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_creation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_creation.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_overview_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_overview_1.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_overview_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_overview_2.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_permissions_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_permissions_1.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_permissions_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_permissions_2.png
--------------------------------------------------------------------------------
/Wiki/images/multitenant_app_secret.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/multitenant_app_secret.png
--------------------------------------------------------------------------------
/Wiki/images/param_file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/param_file.png
--------------------------------------------------------------------------------
/Wiki/images/postdeployment_output.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/postdeployment_output.png
--------------------------------------------------------------------------------
/Wiki/images/powershell_deployment_error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/powershell_deployment_error.png
--------------------------------------------------------------------------------
/Wiki/images/remove_permission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/remove_permission.png
--------------------------------------------------------------------------------
/Wiki/images/resource_availability.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/resource_availability.png
--------------------------------------------------------------------------------
/Wiki/images/send-options.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/send-options.png
--------------------------------------------------------------------------------
/Wiki/images/sent-messages.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/sent-messages.png
--------------------------------------------------------------------------------
/Wiki/images/set_application_uri.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/set_application_uri.png
--------------------------------------------------------------------------------
/Wiki/images/single_tenant_app_creation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/single_tenant_app_creation.png
--------------------------------------------------------------------------------
/Wiki/images/single_tenant_app_overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/single_tenant_app_overview.png
--------------------------------------------------------------------------------
/Wiki/images/single_tenant_app_secret.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/single_tenant_app_secret.png
--------------------------------------------------------------------------------
/Wiki/images/support-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/support-banner.png
--------------------------------------------------------------------------------
/Wiki/images/sync_changes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/sync_changes.png
--------------------------------------------------------------------------------
/Wiki/images/tab_name_change_cc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/tab_name_change_cc.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_appservicesyncerror_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_appservicesyncerror_1.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_appservicesyncerror_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_appservicesyncerror_2.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_appservicesyncerror_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_appservicesyncerror_3.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_deltalinkerror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_deltalinkerror.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_permissionerror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_permissionerror.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_roleassignmenterror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_roleassignmenterror.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_sourcecontrols.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_sourcecontrols.png
--------------------------------------------------------------------------------
/Wiki/images/troubleshooting_teamsnamesemptyerror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/troubleshooting_teamsnamesemptyerror.png
--------------------------------------------------------------------------------
/Wiki/images/update_ad_app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/update_ad_app.png
--------------------------------------------------------------------------------
/Wiki/images/update_author_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/update_author_list.png
--------------------------------------------------------------------------------
/Wiki/images/update_banner_title_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/update_banner_title_logo.png
--------------------------------------------------------------------------------
/Wiki/images/upload_certificate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/upload_certificate.png
--------------------------------------------------------------------------------
/Wiki/images/version_app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/version_app.png
--------------------------------------------------------------------------------
/Wiki/images/warning_message.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OfficeDev/microsoft-teams-apps-company-communicator/dcf3b169084d3fff7c1e4c5b68718fb33c3391dd/Wiki/images/warning_message.png
--------------------------------------------------------------------------------
/deploy.cmd:
--------------------------------------------------------------------------------
1 | :: Copyright (c) Microsoft Corporation.
2 | :: Licensed under the MIT License.
3 |
4 | @if "%SCM_TRACE_LEVEL%" NEQ "4" @echo off
5 |
6 | IF "%SITE_ROLE%" == "app" (
7 | deploy.app.cmd
8 | ) ELSE (
9 | IF "%SITE_ROLE%" == "function" (
10 | deploy.function.cmd
11 | ) ELSE (
12 | echo You have to set SITE_ROLE setting to either "app" or "function"
13 | exit /b 1
14 | )
15 | )
--------------------------------------------------------------------------------
/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "version": "6.0.100",
4 | "rollForward": "latestFeature"
5 | }
6 | }
--------------------------------------------------------------------------------