Skip to content
This repository was archived by the owner on Jun 30, 2022. It is now read-only.

Commit 1d2cefa

Browse files
authored
Skill doc updates for 0.6 (#2360)
* Updated events doc * Updated all core skills with same organization (overview, supported scenarios, LUIS, configuration, events) * Address 2332 to clarify when appsettings has escapted chars * Fix numbering on run your assistant steps
1 parent 36448b4 commit 1d2cefa

File tree

8 files changed

+216
-347
lines changed

8 files changed

+216
-347
lines changed

docs/_docs/reference/skills/automotive.md

Lines changed: 26 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Unlike the Productivity and PoI skills that are integrated into existing service
2626

2727
To enable testing and simulation any action identified is surfaced to the calling application as an event, this can easily be seen within the Bot Framework Emulator and will be wired up into the Web Test harness available as part of the Virtual Assistant solution.
2828

29-
## Supported Scenarios
29+
## Supported scenarios
3030

3131
At this time, changes to vehicle settings are supported through the `VEHICLE_SETTINGS_CHANGE` and `VEHICLE_SETTINGS_DECLARATIVE` intents. The former enables questions such as "change the temperature to 21 degrees" whereas the latter intent enables scenarios such as "I'm feeling cold" which require additional processing steps.
3232

@@ -61,7 +61,7 @@ An example transcript file demonstrating the Skill in action can be found [here]
6161

6262
![ Automotive Skill Transcript Example]({{site.baseurl}}/assets/images/skills-auto-transcript.png)
6363

64-
## Language Model
64+
## Language Understanding (LUIS)
6565

6666
LUIS models for the Skill are provided in .LU file format as part of the Skill. These are currently available in English with other languages to follow.
6767

@@ -72,62 +72,15 @@ The following Top Level intents are available with the main `settings` LUIS mode
7272

7373
In addition there are two supporting LUIS models `settings_name` and `settings_value`, these are used for disambiguation scenarios to clarify setting names and values where the initial utterance doesn't provide clear information.
7474

75-
## Event Responses
76-
77-
The Automotive Skill surfaces setting changes for testing purposes through an event returned to the client. This enables easy testing and simulation, all events are prefixed with `AutomotiveSkill.`. The below event is generated as a response to `I'm feeling cold`
78-
79-
```json
80-
{
81-
"name": "AutomotiveSkill.Temperature",
82-
"type": "event",
83-
"value": [
84-
{
85-
"Key": "valueingform",
86-
"Value": "Increasing"
87-
},
88-
{
89-
"Key": "settingname",
90-
"Value": "Temperature"
91-
}
92-
]
93-
}
94-
```
95-
9675
## Configuration
76+
### Deployment
77+
Learn how to [provision your Azure resources]({{site.baseurl}}/tutorials/csharp/create-skill/4_provision_your_azure_resources/) in the Create a Skill tutorial.
9778

98-
### Authentication Connection Settings
79+
### Authentication connection settings
9980

10081
> No Authentication is required for this skill
10182
102-
### Skill Parameters
103-
104-
> No Parameters are required for this skill
105-
106-
### Example Skill Registration Entry
107-
108-
```json
109-
{
110-
"type": "skill",
111-
"id": "automotiveSkill",
112-
"name": "automotiveSkill",
113-
"assembly": "AutomotiveSkill.AutomotiveSkill, AutomotiveSkill, Version=1.0.0.0, Culture=neutral",
114-
"dispatchIntent": "l_Automotive",
115-
"supportedProviders": [],
116-
"luisServiceIds": [
117-
"settings",
118-
"settings_name",
119-
"settings_value",
120-
"general"
121-
],
122-
"parameters": []
123-
],
124-
"configuration": {
125-
"ImageAssetLocation": "http://tempuri.org"
126-
}
127-
}
128-
```
129-
130-
### Customizing Vehicle Settings
83+
### Customizing vehicle settings
13184

13285
Available vehicle settings are defined in a supporting metadata file which you can find in this location: `automotiveskill/Dialogs/VehicleSettings/Resources/available_settings.yaml`.
13386

@@ -264,3 +217,23 @@ Follow the instructions below to add the Automotive Skill to an existing Virtual
264217
6. Add a project reference from your Virtual Assistant project to the Automotive Skill, this will ensure the DLL housing the skill can be found at runtime for skill activation.
265218

266219
7. In order for Adaptive Cards to render images associated with the Automotive skill you will need to take the Image assets located in the `wwwroot/images` folder of the Automotive skill and place in a HTTP location (potentially your Bot deployment) and place the base URI path in the skill configuration `ImageAssetLocation` property. If you skip this step, Adaptive Cards will not render with images correctly.
220+
221+
## Events
222+
The Automotive Skill surfaces setting changes for testing purposes through an event returned to the client. This enables easy testing and simulation, all events are prefixed with `AutomotiveSkill.`. The below event is generated as a response to `I'm feeling cold`
223+
224+
```json
225+
{
226+
"name": "AutomotiveSkill.Temperature",
227+
"type": "event",
228+
"value": [
229+
{
230+
"Key": "valueingform",
231+
"Value": "Increasing"
232+
},
233+
{
234+
"Key": "settingname",
235+
"Value": "Temperature"
236+
}
237+
]
238+
}
239+
```

docs/_docs/reference/skills/pointofinterest.md

Lines changed: 30 additions & 127 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@ order: 11
1717

1818
## Overview
1919
The Point of Interest Skill provides point of interest and navigation related capabilities to a Virtual Assistant.
20-
The most common scenarios have been implemented in this beta release, with additional scenarios in development.
21-
22-
## Supported Scenarios
2320

21+
## Supported scenarios
2422
The following scenarios are currently supported by the Skill:
2523

2624
- Get Directions to a Point of Interest
@@ -35,14 +33,9 @@ The following scenarios are currently supported by the Skill:
3533
- _What's nearby?_
3634
- _Are there any pharmacies in town?_
3735
- _Can you recommend an affordable restaurant in Seattle?_
38-
- Cancel an Active Route
39-
- _I don't want to go to the shop anymore_
40-
- _Would you cancel my route?_
41-
- _On second thought, forget going to the airport_
42-
43-
## Language Model
4436

45-
LUIS models for the Skill are provided in .LU file format as part of the Skill. Further languages are being prioritized.
37+
## Language Understanding (LUIS)
38+
LUIS models are provided in `.LU` file format to support the scenarios used in this Skill.
4639

4740
|Supported Languages|
4841
|-|
@@ -57,139 +50,49 @@ LUIS models for the Skill are provided in .LU file format as part of the Skill.
5750

5851
|Name|Description|
5952
|-|-|
60-
|NAVIGATION_ROUTE_FROM_X_TO_Y| Matches queries navigating to a point of interest |
61-
|NAVIGATION_FIND_POINTOFINTEREST| Matches queries searching for a point of interest |
62-
|NAVIGATION_FIND_PARKING| Matches queries searching for a parking space |
63-
|NAVIGATION_CANCEL_ROUTE| Matches queries to cancel a route |
53+
|GetDirections| Matches queries navigating to a point of interest |
54+
|FindPointOfInterest| Matches queries searching for a point of interest |
55+
|FindParking| Matches queries searching for a parking space |
6456

6557
### Entities
6658

6759
|Name|Description|
6860
|-|-|
69-
|ADDRESS| Simple entity matching addresses |
70-
|KEYWORD| Simple entity matching point of interest keywords and categories |
71-
|ROUTE_TYPE| Phrase list entity mapping route descriptors to `eco`,`fastest`,`shortest`,`thrilling`|
61+
|Address| Simple entity matching addresses |
62+
|Keyword| Simple entity matching point of interest keywords and categories |
63+
|RouteDescription| Phrase list entity mapping route descriptors to "eco","fastest","shortest","thrilling"|
64+
|PoiDescription| Phrase list entity mapping descriptors like "nearest" or "closest"|
65+
|Keyword_brand| Common point of interest brands |
66+
|Keyword_cuisine| Common point of interest cuisines|
67+
|Keyword_category| Common point of interest categories|
7268
|number| Prebuilt entity|
7369

74-
## Event Responses
75-
76-
The Point of Interest Skill surfaces a users request to navigate to a new destination through an event returned to the client. The event is called `ActiveRoute.Directions" has contains a series of Points for the Route along with a summary of the route information. A simplified example is shown below
77-
78-
```json
79-
{
80-
"name": "ActiveRoute.Directions",
81-
"type": "event",
82-
"value": [
83-
{
84-
"points": [
85-
{
86-
"latitude": 47.64056,
87-
"longitude": -122.129372
88-
},
89-
{
90-
"latitude": 47.64053,
91-
"longitude": -122.129387
92-
},
93-
94-
...
95-
96-
],
97-
"summary": {
98-
"arrivalTime": "2018-09-18T04:17:25Z",
99-
"departureTime": "2018-09-18T03:54:35Z",
100-
"lengthInMeters": 20742,
101-
"trafficDelayInSeconds": 0,
102-
"travelTimeInSeconds": 1370
103-
}
104-
}
105-
]
106-
}
107-
```
108-
10970
## Configuration
71+
### Deployment
72+
Learn how to [provision your Azure resources]({{site.baseurl}}/tutorials/csharp/create-skill/4_provision_your_azure_resources/) in the Create a Skill tutorial.
11073

111-
### Supported Sources
112-
74+
### Supported content providers
11375
> **Mandatory**: [Azure Maps](https://azure.microsoft.com/en-us/services/azure-maps/) is supported for finding Points of Interest and getting route directions to a selected location.
11476
> As this is the only supported provider to get directions, this provider is required.
11577
11678
> [Foursquare](https://developer.foursquare.com/docs/api) is supported for finding Points of Interest and related details (rating, business hours, price level, etc.).
11779
118-
### Auth Connection Settings
119-
120-
> No Authentication is required for this skill
121-
122-
### Skill Parameters
123-
124-
The following Parameters are accepted by the Skill and enable additional personalization of responses to a given user:
125-
126-
- `IPA.Location` (*The skill will fail without this as it is missing a user's current coordinates*)
127-
- To ease testing scenarios you can send the following message to pass a location enabling you to test the POI skill and adjust the location
128-
- `/event:{ "Name": "IPA.Location", "Value": "34.05222222222222,-118.24277777777778" }`
80+
### Authentication connection settings
81+
> No authentication is required for this skill
12982
130-
Read [Handling Events With Your Virtual Assistant]({{site.baseurl}}/reference/virtual-assistant/events) to learn how to manage events within a Skill.
83+
## Events
84+
Learn how to use [events]({{site.baseurl}}/reference/virtual-assistant/events) to send backend data to a Skill, like a user's location.
13185

132-
### Configuration File Information
133-
134-
The following Configuration entries are required to be passed to the Skill and are provided through the Virtual Assistant appSettings.json file. These should be updated to reflect your LUIS deployment.
135-
136-
- `LuisAppId`
137-
- `LuisSubscriptionKey`
138-
- `LuisEndpoint`
139-
- `AzureMapsKey`
140-
- `FoursquareClientId` *(optional)*
141-
- `FoursquareClientSecret` *(optional)*
142-
- `ImageAssetLocation`
143-
- `Radius` *(in meters)*
144-
- `LimitSize`
145-
146-
### Example Skill Registration Entry
86+
### From assistant to user
87+
This Skill supports an outgoing `OpenDefaultApp` Event Activity that provides a Geo URI for chat clients to determine how to handle navigation to a user's selected point of interest.
88+
The [Virtual Assistant Client (Android) sample]({{ site.baseurl }}/howto/samples/vaclient_android/) demonstrates how a client may navigate to a destination using a user's preferred map application.
14789

14890
```json
149-
{
150-
"Name": "PointOfInterest",
151-
"DispatcherModelName": "l_PointOfInterest",
152-
"Description": "The Point of Interest Skill adds PoI related capabilities to your Custom Assitant",
153-
"Assembly": "PointOfInterestSkill.PointOfInterestSkill, PointOfInterestSkill, Version=1.0.0.0, Culture=neutral",
154-
"AuthConnectionName": "",
155-
"Parameters": [
156-
"IPA.Timezone"
157-
],
158-
"Configuration": {
159-
"LuisAppId": "YOUR_LUIS_APP_ID",
160-
"LuisSubscriptionKey": "YOUR_LUIS_SUBSCRIPTION_KEY",
161-
"LuisEndpoint": "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/"
162-
"AzureMapsKey": "YOUR_AZURE_MAPS_KEY",
163-
"FoursquareClientId": "YOUR_FOURSQUARE_CLIENT_ID",
164-
"FoursquareClientSecret": "YOUR_FOURSQUARE_CLIENT_SECRET",
165-
"Radius": "SEARCH_RADIUS_FROM_LOCATION",
166-
"ImageAssetLocation": "http://www.contoso.com/images/",
167-
"LimitSize": "POI_SEARCH_LIMIT"
168-
}
91+
{
92+
"type":"event",
93+
"name":"OpenDefaultApp",
94+
"value":{
95+
"GeoUri":"geo:{LONGITUDE},{LATITUDE}"
96+
}
16997
}
170-
```
171-
172-
### Image Assets
173-
174-
In order for Adaptive Cards to render images associated with the Point of Interest skill you will need to take the image assets located in the wwwroot/images folder of the PointOfInterestSkill project and place in a HTTP location (potentially your Bot deployment) and place the base URI path in the skill configuration ImageAssetLocation property.
175-
If you skip this step, Adaptive Cards will not render with images correctly.
176-
177-
### Deploying the Skill
178-
179-
1. Run **PowerShell Core** (pwsh.exe) and **change directory to the project directory** of your project.
180-
2. Run the following command:
181-
182-
```shell
183-
./Deployment/Scripts/deploy.ps1
184-
```
185-
186-
### What do these parameters mean?
187-
188-
Parameter | Description | Required
189-
--------- | ----------- | --------
190-
`name` | **Unique** name for your bot. By default this name will be used as the base name for all your Azure Resources and must be unique across Azure so ensure you prefix with something unique and **not** *MyAssistant* | **Yes**
191-
`location` | The region for your Azure Resources. By default, this will be the location for all your Azure Resources | **Yes**
192-
`appPassword` | The password for the [Azure Active Directory App](https://ms.portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview) that will be used by your bot. It must be at least 16 characters long, contain at least 1 special character, and contain at least 1 numeric character. If using an existing app, this must be the existing password. | **Yes**
193-
`luisAuthoringKey` | The authoring key for your LUIS account. It can be found at https://www.luis.ai/user/settings or https://eu.luis.ai/user/settings | **Yes**
194-
195-
You can find more detailed deployment steps including customization in the [Virtual Assistant and Skill Template deployment]({{site.baseurl}}/reference/virtual-assistant/deploymentscripts) page.
98+
```

0 commit comments

Comments
 (0)