Botframework-composer: [Customer concerned] Auto-fill msAppId when publishing a remote skill

Created on 18 Dec 2020  路  3Comments  路  Source: microsoft/BotFramework-Composer

Is your feature request related to a problem? Please describe.

cc: @cwhitten @luhan2017

We already see some customer complaints regarding creating a remote skill:

One of the reasons is that our current flow to create a remote skill needs two Microsoft appIds from two different registration resources. In my humble opinion, we can improve our current flow to create a remote skill by filling the skill-related msAppId automatically when publishing a local skill to a remote host.

Our current flow to create a remote skill needs two Microsoft appIds from two different registration resources:

  • MsAppId 1:
    Users must enter a Microsoft appId in the skill creation wizard as the field is required.
    image
  • MsAppId 2:
    User must update the Microsoft appId in the remote skill manifest with the value of the skill-associated Bot Channels Registration. Otherwise, the connection will not be established.
    image

[!Note]
MsAppId 1 and MsAppId 2 are different values of two different Bot Channels Registration resources in the creation of one remote skill.

Describe the solution you'd like

We might consider auto-fill the skill-related msAppId value when publishing a local skill to a remote host. This means that when users publish a local skill to a remote host, the msAppId value associated with the skill can be filled automatically in their remote manifest. This will reduce customer confusion and anxiety.

Additional text

If we can even auto-fill the endpoint URL with the messaging endpoint of the skill-associated bot channel registration resource, users do not need to update these two values in the remote skill manifest. This will greatly improve the user experience.

Bot Services Platform customer-replied-to customer-reported feature-request

Most helpful comment

@srinaath Yes, this is exactly what I thought. Let's just create new endpoint for each publish profile. We just don't need step 3, because during the publish process, the appid and password in appsettings.json will be overwrote by the values in the publish profile.

All 3 comments

@zxyanliu I like it. @srinaath @luhan2017 any comments?

I agree that we need to use the same msappid that was created with our Composer publishing workflow. This would avoid the need of multiple pairs of msappid/pwds. Is the workflow being prescribed here basically on聽

  1. When publishing inside composer we pick the msappid of the newly created Bot Channels registration resource and the newly deployed endpoint of the bot.
  2. Create a manifest if not available/append a new endpoint to the existing manifest.
  3. Update the msAppId in the appsettings,json
  4. Add this new msAppId to the allowedCallers list of the Root bot if we are deploying a skill
  5. In this way we have 1 pair of ms app id per bot.

@luhan2017 i haven't dug deep into the azure apis but im assuming this should be possible?

@srinaath Yes, this is exactly what I thought. Let's just create new endpoint for each publish profile. We just don't need step 3, because during the publish process, the appid and password in appsettings.json will be overwrote by the values in the publish profile.

Was this page helpful?
0 / 5 - 0 ratings