cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
rvalli
Level: Powered On

Addon Skill

Hello

I am trying to add a Skill to test PVA.

I built and deployed the experimental WeatherSkill: it works when testing in Azure Web Chat (returns the current weather).

But when I try to add it to the PVA following the instructions at https://docs.microsoft.com/en-us/power-virtual-agents/configuration-add-skills

 

1) I don't know what to do with the PVA application id in the Skill...

2) if I don't do anything and try validate the skill manifest it returns two errors

-----------------------

 Currently, skills are only supported in English.
 There's a mismatch in your skill endpoints.
----------------------
 
But: the skill *is* in english (en-us), as I just built the sample from the repository.
And I entered the manifest url as it is linked by the Azure Bot:
 
So, what am I missing?
 
here is the manifest:
 
{
  "id": "WeatherSkill",
  "msaAppId": "xxxxxx-xxxxx-xxx-xxxx-xxxxxxxx",
  "name": "WeatherSkill",
  "endpoint": "https://myskillname.azurewebsites.net/api/skill/messages",
  "description": "The weather skill provides an example of displaying the current weather using AccuWeather.",
  "authenticationConnections": [],
  "actions": [
    {
      "id": "WeatherSkill_getForecast",
      "definition": {
        "description": "Showing the weather forecast.",
        "slots": [
          {
            "name": "location",
            "types": [
              "string"
            ]
          }
        ],
        "triggers": {
          "utteranceSources": [
            {
              "locale": "en-us",
              "source": [
                "WeatherSkill#CheckWeatherValue"
              ]
            }
          ]
        }
      }
    }
  ]
}
 
It isn't also strange the endpoint in the manifest points to https://myskillname.azurewebsites.net/api/skill/messages
while the Messaging endpoint in the bot Settings points to https://myskillname.azurewebsites.net/api/messages  ?
7 REPLIES 7
Microsoft pawan-msft
Microsoft

Re: Addon Skill

@rvalli - Wow! Amazing to see that you've already built a Skill and attempting to register it with Power Virtual Agents. Could you please answer a few questions,

 

1) What Bot Framework SDK have you built your SDK on? Power Virtual Agents only supports Skills built using Virtual Assistant templates 4.5 at this time.

2) Have you authorized your bot to call the Skill endpoint? I believe you need to copy the bot ID and add it to the Skill's allowlist.

 

Thank you,

Pawan

rvalli
Level: Powered On

Re: Addon Skill

 

@pawan-msft

My answers:

 

1) See the attached screenshot for the SDK version...I just cloned the repository from here: 

 

https://github.com/microsoft/botframework-solutions

 

Then built the Skill under skills/csharp/experimental/weatherskill  then deployed on Azure. It works. It looks like it's using 4.6.1, but 4.5.4 for Microsoft.Bot.Builder.Skill.

 

2) I don't know how to authorize the bot to call the skill endpoint, I mean I don't see mention of an "allow list" anywhere...

 

Highlighted
Microsoft pawan-msft
Microsoft

Re: Addon Skill

@rvalli - Thank you for your patience while we investigate further. Here are recommendations,

 

1) For the language issue - please update your Skill manifest to emit "en" for the locale property. We have a bug where we expect the locale property to only contact language code.

 

2) For the endpoint issue - there is a known issue in Bot Framework Solutions repo (see solution) that may be causing the issue. You need to set the Skill's homepage using the 'az' command, AAD cmdlets or https://aad.portal.azure.com

 

Let us know how you fare.

 

-Pawan

rvalli
Level: Powered On

Re: Addon Skill

Thank you @pawan-msft  for the workaround suggestion, I have been able to add the skill to the PVA and add it in the flow of a topic. 

The same skill works in Azure as a standalone bot.

Basically I added some trigger phrases like

 

tell me the weather in Boston

is it raining in London?

etc...

 

then added a question with a variable mapped to a City entity

and passing it to the weather skill that expects a location text variable as input.

 

Issues: 

sometimes  the trigger phrases work, sometimes not (for example it may work for "London" but not for "Boston" etc)

When it works the town is mapped to the variable correctly but then when it reaches the Skill block it returns an error.

So I flagged an issue in the conversation.

 

Still I don't know what to do about the "allow list" you mentioned and for which I need to set the PVA AppId somewhere in the skill...may this cause the issue? where do I put the AppId? I mean where do I find this "Allow list"?

 

 

Microsoft rggammon
Microsoft

Re: Addon Skill

Re: calling the skill fails intermittently - Does it always work for London? Does it always fail for Boston? If these are intermittent failures & not related to the specific city, it may be necessary to look at the App Insights logs from the skill. Turning on "always on" may help

 

Re: Allow List - this refers to what is called "Whitelist Authentication" in the bot framework solutions documentation . You would plug the "allow list" id from bot designer into AppsWhitelist in the skill to secure the skill. I don't think this is related to your issue.

 

Hope this helps!

muges01
Level: Powered On

Re: Addon Skill

I also having same issue when i add a skill. 

"Currently, skills are only supported in English. Contact your skill developer."

 

I have change the "locale": "en-us" to "locale": "en" but still not working. How did you manage to make it work.

I'm trying to add the calendar skill to my PVA - "https://github.com/microsoft/botframework-solutions/tree/master/skills/csharp/calendarskill

 

 

Microsoft rggammon
Microsoft

Re: Addon Skill

Removing calendarskill_summary from manifestTemplate.json should solve the "English" issue at import time, as the English check wants all actions in a skill to have triggers.utteranceSources.locale set to English, and calendarskill_summary does not have utterance triggers.

 

You will likely encounter other issues with this particular skill. For example, Power Virtual Agent will not pass tokens related to authenticationConnections in the manifest to the skill. eg: The skill would need to get its own tokens via OAuthCard.

 

https://microsoft.github.io/botframework-solutions/skills/samples/restaurant-booking/ is a simple skill with no authenticationConnections for example.

Helpful resources

Announcements
thirdimage

Power Apps Community User Group Member Badge

Fill out a quick form to claim your user group badge now!

sixthImage

Power Platform World Tour

Find out where you can attend!

Power Platform 2019 release wave 2 plan

Power Platform 2019 release wave 2 plan

Features releasing from October 2019 through March 2020

SecondImage

Difinity Conference

The largest Power BI, Power Platform, and Data conference in New Zealand

Top Solution Authors
Top Kudoed Authors (Last 30 Days)
Users online (5,633)