You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 30, 2022. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,26 +8,26 @@ This repository is the home for a set of templates and solutions to help build c
8
8
9
9
| Name | Description |
10
10
|:------------:|------------|
11
-
|[<imgsrc="https://raw.githubusercontent.com/Microsoft/AI/4.4/docs/media/vatemplateintrocard.png"width="1250">](https://microsoft.github.io/botframework-solutions/overview/virtualassistant/)|[**Virtual Assistant.**](https://microsoft.github.io/botframework-solutions/overview/virtualassistant/) Customers and partners have a significant need to deliver a conversational assistant tailored to their brand, personalized to their users, and made available across a broad range of canvases and devices. <br/><br/> This brings together all of the supporting components and greatly simplifies the creation of a new bot project including: basic conversational intents, Dispatch integration, QnA Maker, Application Insights and an automated deployment.|
12
-
|[<imgsrc="https://raw.githubusercontent.com/Microsoft/AI/4.4/docs/media/calendarskillcardexample.png"width="1250">](https://microsoft.github.io/botframework-solutions/overview/skills/)|[**Skills.**](https://microsoft.github.io/botframework-solutions/overview/skills/) A library of re-usable conversational skill building-blocks enabling you to add functionality to a Bot. We currently provide: Calendar, Email, Task, Point of Interest, Automotive, Weather and News skills. Skills include LUIS models, Dialogs, and integration code delivered in source code form to customize and extend as required.|
11
+
|[<imgsrc="https://raw.githubusercontent.com/Microsoft/AI/4.4/docs/media/vatemplateintrocard.png"width="1250">](https://microsoft.github.io/botframework-solutions/overview/virtualassistant/)|[**Virtual Assistant (Preview).**](https://microsoft.github.io/botframework-solutions/overview/virtualassistant/) Customers and partners have a significant need to deliver a conversational assistant tailored to their brand, personalized to their users, and made available across a broad range of canvases and devices. <br/><br/> This brings together all of the supporting components and greatly simplifies the creation of a new bot project including: basic conversational intents, Dispatch integration, QnA Maker, Application Insights and an automated deployment.|
12
+
|[<imgsrc="https://raw.githubusercontent.com/Microsoft/AI/4.4/docs/media/calendarskillcardexample.png"width="1250">](https://microsoft.github.io/botframework-solutions/overview/skills/)|[**Skills (Preview).**](https://microsoft.github.io/botframework-solutions/overview/skills/) A library of re-usable conversational skill building-blocks enabling you to add functionality to a Bot. We currently provide: Calendar, Email, Task, Point of Interest, Automotive, Weather and News skills. Skills include LUIS models, Dialogs, and integration code delivered in source code form to customize and extend as required.|
13
13
|[<imgsrc="https://raw.githubusercontent.com/Microsoft/AI/4.4/docs/media/powerbi-conversationanalytics-luisintents.png"width="1250">](https://microsoft.github.io/botframework-solutions/overview/analytics/)|[**Analytics.**](https://microsoft.github.io/botframework-solutions/overview/analytics/) Gain key insights into your bot’s health and behavior with the Bot Framework Analytics solutions, which includes: sample Application Insights queries, and Power BI dashboards to understand the full breadth of your bot’s conversations with users.|
Copy file name to clipboardExpand all lines: docs/_docs/howto/skills/addingskills.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,7 +52,7 @@ Run the following command to add each Skill to your Virtual Assistant. This assu
52
52
The `--luisFolder` parameter can be used to point the Skill CLI at the source LU files for trigger utterances. For Skills provided within this repo these can be found in the `Deployment/Resources/LU` folder of each Skill. The CLI will automatically traverse locale folder hierarchies. This can be omitted for any of the skills we provide as the LU files are provided locally. Also, you have to specify the `--cs` (for C#) or `--ts` (for TypeScript) argument for determining the coding language of your assistant, since each language takes different folder structures that need to be taken into consideration.
See the [Skill CLI documentation]({{site.baseurl}}/reference/botskills) for detailed CLI documentation.
@@ -96,7 +96,7 @@ Run the following command to update a Skill to your Virtual Assistant. This assu
96
96
The `--luisFolder` parameter can be used to point the Skill CLI at the source LU files fortrigger utterances. For Skills provided within this repo these can be foundin the `Deployment/Resources/LU` folder of each Skill. The CLI will automatically traverse locale folder hierarchies. This can be omitted for any of the skills we provide as the LU files are provided locally. Also, you have to specify the `--cs` (for C#) or `--ts` (for TypeScript) argument for determining the coding language of your assistant, since each language takes different folder structures that need to be taken into consideration.
Copy file name to clipboardExpand all lines: docs/_docs/howto/skills/manualauthsteps.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ order: 3
8
8
9
9
# {{ page.title }}
10
10
11
-
If you wish to make use of the Calendar, Email, Phone, and Task Skills standalone to the Virtual Assistant (local mode) you need to configure an Authentication Connection enabling use of your Assistant to authenticate against services such as Office 365 and securely store a token which can be retrieved by your assistant when a user asks a question such as *"What does my day look like today"* to then use against an API like Microsoft Graph.
11
+
If you wish to make use of the Calendar, Email and Task Skills standalone to the Virtual Assistant (local mode) you need to configure an Authentication Connection enabling use of your Assistant to authenticate against services such as Office 365 and securely store a token which can be retrieved by your assistant when a user asks a question such as *"What does my day look like today"* to then use against an API like Microsoft Graph.
12
12
13
13
> These steps are not required if you plan to use the productivity skills as part of the Virtual Assistant, these steps are performed automatically when you add a Skill to your assistant.
Copy file name to clipboardExpand all lines: docs/_docs/overview/virtualassistant.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ In addition, Language Understanding support is provided by the LUIS Cognitive Se
59
59
60
60
The Virtual Assistant architecture is flexible and can be integrated with existing investments you have made into device-based Speech or Natural Language processing capabilities and integrate existing back-end systems and APIs.
61
61
62
-
Not only does the Virtual Assistant enable you to deliver your own unique experience, but you can also also handoff a user's query to their chosen Digital Assistant for certain types of questions.
62
+
Not only does the Virtual Assistant enable you to deliver your own unique experience, but you can also handoff a user's query to their chosen Digital Assistant for certain types of questions.
63
63
64
64
Your Virtual Assistant can be integrated into your device and ecosystem to enable a truly intelligent experience.
65
65
Through this contextual awareness your Virtual Assistant can deliver a further personalized conversation than otherwise possible.
@@ -83,4 +83,4 @@ Productivity scenarios are a great example where each organization would need to
83
83
This is then further complicated by the need to support multiple languages and results in a large amount of work required for any organization building their own assistant.
84
84
Our Virtual Assistant solution includes a new Skill capability enabling new capabilities to be plugged into an existing Virtual Assistant through configuration only.
85
85
86
-
All aspects of each Skill are completely customizable by developers as the full source code is provided on GitHub along with the Virtual Assistant.
86
+
All aspects of each Skill are completely customizable by developers as the full source code is provided on GitHub along with the Virtual Assistant.
So, to avoid this, it's highly recommended to use `PowerShell 6` to execute the CLI tool commands. Also, you can remove the trailing backslash of the argument.
Copy file name to clipboardExpand all lines: docs/_docs/reference/skills/architecture.md
+33-2Lines changed: 33 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,15 +48,46 @@ All communication between a Virtual Assistant and a Skill is performed through a
48
48
49
49
The `SkillManifest` provides the endpoint for the SkillDialog to communicate with along with action and slot information. Slots are optional and a way to pass parameters to a Skill.
50
50
51
-
When a Skill wants to terminate an ongoing dialog, it sends back an Activity with `Handoff` type to signal the completion of the current dialog.
51
+
A `skill/begin` event is sent at the beginning of each Skill Dialog and the end of a Skill Dialog is marked by the sending of a `endOfConversation` event. This event contains a `SkillContext` object that contains matched Slot information, if the Virtual Assistant has populated matching data into it's SkillContext object then it's retrieved and passed across to the Skill.
52
+
53
+
For example, if there is a `Location` data item in Virtual Assistant SkillContext object and the Skill being invoked has a `Location` slot it will be matched and passed.
54
+
55
+
An example of a `skill/begin` event is shown below:
56
+
57
+
```json
58
+
{
59
+
"type": "event",
60
+
"channelId": "test",
61
+
"from": {
62
+
"id": "user1",
63
+
"name": "User1"
64
+
},
65
+
"conversation": {
66
+
"id": "Conversation1"
67
+
},
68
+
"recipient": {
69
+
"id": "bot",
70
+
"name": "Bot"
71
+
},
72
+
"value": {
73
+
"param1": "TEST",
74
+
"param2": "TEST2"
75
+
},
76
+
"name": "skill/begin"
77
+
}
78
+
```
79
+
80
+
This dialog remains active on the Virtual Assistant's `DialogStack`, ensuring that subsequent utterances are routed to your Skill.
81
+
82
+
When an `EndOfConversation` event is sent from the Skill, it tears down the `SkillDialog` and returns control back to the Virtual Assistant.
52
83
53
84
See the [SkillAuthentication]({{site.baseurl}}/reference/skills/skillauthentication) section for information on how Bot->Skill invocation is secured.
54
85
55
86
## Skill Middleware
56
87
57
88
The `SkillMiddleware` is used by each Skill and is configured automatically if you use the Skill Template.
58
89
59
-
The middleware consumes the `skill/cancelallskilldialogs` event, when the Skill receives it it clears out the active dialog stack on that active Skill. This is useful in interruptions - i.e. if a user asks to cancel, a Virtual Assistant can send this event to the Skill and cancel the active dialog.
90
+
The middleware consumes the `skill/begin` event and populates SkillContext on the Skill side making slots available.
Copy file name to clipboardExpand all lines: docs/_docs/reference/skills/automotive.md
+6-1Lines changed: 6 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -120,7 +120,10 @@ The Automotive Skill surfaces setting changes for testing purposes through an ev
120
120
"general"
121
121
],
122
122
"parameters": []
123
-
]
123
+
],
124
+
"configuration": {
125
+
"ImageAssetLocation": "http://tempuri.org"
126
+
}
124
127
}
125
128
```
126
129
@@ -259,3 +262,5 @@ Follow the instructions below to add the Automotive Skill to an existing Virtual
259
262

260
263
261
264
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.
265
+
266
+
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.
0 commit comments