1

I'm designing the architecture for a Microsoft Teams app.

This app is an integration to a multitenancy platform that the customer can set up their own URL to access the system, i.e: https://app.customer.com/

I was wondering if there is a standard way to have a step on the app installation to set up the instance URL.

I understand I could design an app generator that would reside inside each customer instance and then deliver the manifest.zip to the customer to install it, but I feel we would lose all marketing and partnership opportunities that having it on the store would provide.

Felipe Plets
  • 7,230
  • 3
  • 36
  • 60
  • I've added a suggestion also to Microsoft Teams UserVoice: https://microsoftteams.uservoice.com/forums/555103-public/suggestions/38972791-have-a-setup-step-on-app-installation-to-ask-for-e – Felipe Plets Nov 06 '19 at 18:28

1 Answers1

1

I couldn't find a standard way so I designed a proposed solution and wanted to validate it with the community.

I came with a list of issues and workarounds to work with a single app for the multiple instances based on what we've seen so far on Microsoft Teams documentation.

Issue 1: Accessible domains should be explicitly set on the manifest.json

Workaround: have a middleware in a fixed URL that handles all requests made by the app and route to the customer site

Issue 2: There is no standard step on an app installation to set up the instance URL

Workaround: Design a static tab that would handle the configuration, so in that tab, the admin would need to set up any configuration like instance URL

Issue 3: After installation, the feature will be available for the users even before admin did the setup to define the customer instance URL to be used.

Workaround: Make all designed interactions (i.e.: Tabs configuration page, bot response, actions, cards, etc... ) have a response to the user saying there are pending configurations in case the admin did not set the URL yet

Felipe Plets
  • 7,230
  • 3
  • 36
  • 60