weixin_39537680
weixin_39537680
2020-11-24 22:22

Botskill connect add all the utterance sources even are not defined in the manifest

What project is affected?

Virtual Assistant

What language is this in?

TS

What happens?

When I connect a skill via cli all the Utterance Sources are added to the dispatcher.

What are the steps to reproduce this issue?

Connect a skill to the VA and then check the Dispatcher, the skill has to have multiple utterance sources, but in the manifest of the skill we want to add just one of them, this means that in the manifest under triggers and utterancesSources we define one source only.

What were you expecting to happen?

In the Dispatcher should be added only the utterances from the sources I defined. As a "work around" I put the other sources inside the general luis file but then I don't see the point to have the utterance sources definition in the Manifest.

Any screenshots or additional context?

Here the manifest of the skill :

 
{
  "id": "meeting",
  "name": "meeting-skill",
  "description": "Skill capable of creating meetings and booking rooms for the user",
  "iconUrl": "http://meeting.azurewebsites.net/",
  "authenticationConnections": [],
  "actions": [
    {
      "id": "meeting_createMeeting",
      "definition": {
        "description": "Create a new meeting",
        "slots": [
          {
            "name": "subject",
            "types": [
              "string"
            ]
          },
          {
            "name": "body",
            "types": [
              "string"
            ]
          },
          {
            "name": "requiredAttendees",
            "types": [
              "string"
            ]
          },
          {
            "name": "startDate",
            "types": [
              "string"
            ]
          },
          {
            "name": "startTime",
            "types": [
              "string"
            ]
          },
          {
            "name": "duration",
            "types": [
              "string"
            ]
          },
          {
            "name": "location",
            "types": [
              "string"
            ]
          },
          {
            "name": "roomName",
            "types": [
              "string"
            ]
          },
          {
            "name": "timezone",
            "types": [
              "string"
            ]
          }
        ],
        "triggers": {
          "utteranceSources": [
            {
              "locale": "en",
              "source": [
                "meeting#CreateCalendarEntry"
              ]
            },
            {
              "locale": "de",
              "source": [
                "meeting#CreateCalendarEntry"
              ]
            }
          ]
        }
      }
    }
  ]
}

该提问来源于开源项目:microsoft/botframework-solutions

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

7条回答

  • weixin_39853968 weixin_39853968 5月前

    Hi and ! We started implementing the inline trigger utterances feature in Botskills CLI Tool.

    We added the --inlineUtterances argument in the connect and update commands in order to manage the possibility to have a manifest with utterances.

    image

    Currently, we are working in the consumption of the manifest for this scenario (updating processManifest() method. To accomplish this, we took into account the following steps: 1. Read the array of utterances from the manifest 2. Generate a temporal .lu file in the Skill 3. Add the array of utterances into the temporal .lu file 4. Return the .lu files corresponding to a locale

    We will be analyzing if it's possible to avoid the temporal .lu file and handle the array of utterances directly in the external commands.

    点赞 评论 复制链接分享
  • weixin_39605347 weixin_39605347 5月前

    Hey , I think that the original question was regarding the possibility of specifying which intents to pickup from the .lu file when calling the botskills connect. This can be either by only using the intents specified in the manifest file, or by allowing the user to specify them manually through a CLI parameter (same way the dispatch add does it using the --includedIntents parameter). Is there any plan to introduce this change to the botskills tool?

    点赞 评论 复制链接分享
  • weixin_39605347 weixin_39605347 5月前

    I think that the original issue was about enabling the botskills connect command to extract utterances from some specific intents from the passed in .lu file. This can be done in two ways: 1- Reading from the .lu file and only extracting the utterances for the intents referenced in the utteranceSources in the manifest file 2- Adding a CLI parameter --includedIntents which allows the user to specify which intents to extract from the .lu file. This parameter would then be passed through to the dispatch add call which already supports this parameter.

    I would maybe prefer option 1 as it automates the whole process of connecting the skills to the VA, but I do realize that option 2 would be much easier to implement as it's just about adding a CLI parameter and passing it through the dispatch add which will do the work of parsing and extracting the intents from the .lu file.

    Would it be possible to re-open this ticket and consider either of those solutions?

    点赞 评论 复制链接分享
  • weixin_39640762 weixin_39640762 5月前

    Yeah.. currently it only cares the name before #..

    点赞 评论 复制链接分享
  • weixin_39834205 weixin_39834205 5月前

    Correct - botskills should only pull in the intents referenced. We'll see if we can get this change into the next release of botskills

    点赞 评论 复制链接分享
  • weixin_39778106 weixin_39778106 5月前

    This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days

    点赞 评论 复制链接分享
  • weixin_39834205 weixin_39834205 5月前

    can you provide an update as per our iteration planning earlier this week? Thanks

    点赞 评论 复制链接分享

相关推荐