Skip to content

Commit 287c324

Browse files
committed
Feedback round 2
1 parent 92a2d8a commit 287c324

File tree

4 files changed

+8
-20
lines changed

4 files changed

+8
-20
lines changed

articles/cognitive-services/Speech-Service/toc.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -436,8 +436,6 @@
436436
href: windows-voice-assistants-implementation-guide.md
437437
- name: Resources
438438
items:
439-
- name: 'Voice Activation Walkthrough'
440-
href: windows-voice-assistants-voice-activation.md
441439
- name: 'Privacy requirements and guidelines'
442440
href: windows-voice-assistants-automatic-enablement-guidelines.md
443441
- name: 'Best practices for assistant experiences'

articles/cognitive-services/Speech-Service/windows-voice-assistants-automatic-enablement-guidelines.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ ms.author: travisw
1414

1515
# Privacy guidelines for voice assistants on Windows
1616

17-
## About voice activation privacy
18-
1917
It's important that users are given clear information about how their voice data is collected and used and important that they are given control over if and how this collection happens. These core facets of privacy -- *disclosure* and *consent* -- are especially important for voice assistants integrated into Windows given the always-listening nature of their use.
2018

2119
Developers creating voice assistants on Windows must include clear user interface elements within their applications that reflect the listening capabilities of the assistant.

articles/cognitive-services/Speech-Service/windows-voice-assistants-implementation-guide.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,4 @@ To properly close the application programmatically while above or below lock, us
137137
## Next steps
138138

139139
> [!div class="nextstepaction"]
140-
> [Visit the UWP Voice Assistant Sample app for examples and code walk-throughs](windows-voice-assistants-sample-info.md)
140+
> [Visit the UWP Voice Assistant Sample app for examples and code walk-throughs](windows-voice-assistants-faq.md#the-uwp-voice-assistant-sample.md)

articles/cognitive-services/Speech-Service/windows-voice-assistants-overview.md

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -27,35 +27,27 @@ After voice activation, Windows will manage multiple active agents properly and
2727

2828
## How does voice activation work?
2929

30-
### Agent Activation Runtime
31-
3230
The Agent Activation Runtime (AAR) is the ongoing process in Windows that manages application activation on a spoken keyword or button press. It starts with Windows as long as there is at least one application on the system that is registered with the system. Applications interact with AAR through the ConversationalAgent APIs in the Windows SDK.
3331

32+
When the user speaks a keyword, the software or hardware keyword spotter on the system notifies AAR that a keyword has been detected, providing a keyword ID. AAR in turn sends a request to BackgroundService to start the application with the corresponding application ID.
33+
3434
### Registration
3535

3636
The first time a voice activated application is run, it registers its app id and keyword information through the ConversationalAgent APIs. AAR registers all configurations in the global mapping with the hardware or software keyword spotter on the system, allowing them to detect the application's keyword. The application also [registers with the Background Service](https://docs.microsoft.com/windows/uwp/launch-resume/register-a-background-task).
3737

3838
Note that this means an application cannot be activated by voice until it has been run once and registration has been allowed to complete.
3939

40-
### Activation
41-
42-
When the user speaks a keyword, the software or hardware keyword spotter on the system notifies AAR that a keyword has been detected, providing a keyword ID. AAR in turn sends a request to BackgroundService to start the application with the corresponding application ID.
43-
4440
### Receiving an activation
4541

46-
Upon receiving the request from AAR, the Background Service launches the application. The application receives a signal through the OnBackgroundActivated life cycle method in `App.xaml.cs` with a unique event argument. This tells the application that it was activated by AAR and should act accordingly.
42+
Upon receiving the request from AAR, the Background Service launches the application. The application receives a signal through the OnBackgroundActivated life cycle method in `App.xaml.cs` with a unique event argument. This tells the application that it was activated by AAR and should start keyword verification.
4743

48-
### Keyword verification
49-
50-
The keyword spotter that triggered the application to start has achieved low power consumption by simplifying the keyword model. This allows the keyword spotter to be "always on" without a high power impact, but it also means the keyword spotter will likely have a high number of "false accepts" where it detects a keyword even though no keyword was spoken. This is why the voice activation system launches the application in the background: to give the application a chance to verify that the keyword was spoken before interrupting the user's current session. AAR saves the audio since a few seconds before the keyword was spotted and makes it accessible to the application. The application can use this to run a more reliable keyword spotter on the same audio.
51-
52-
### Foreground Activation
44+
If the application successfully verifies the keyword, it can make a request to be shown in the foreground. When this request succeeds, the application displays UI and continue its interaction with the user.
5345

54-
If the application successfully verifies the keyword, it can make a request to be shown in the foreground and display UI.
46+
AAR still signals active applications when their keyword is spoken. Rather than signalling through the life cycle method in `App.xaml.cs`, though, it signals through an event in the ConversationalAgent APIs.
5547

56-
### Voice activation while app is active
48+
### Keyword verification
5749

58-
AAR still signals active applications when their keyword is spoken. Rather than signalling through the life cycle method in `App.xaml.cs`, though, it signals through an event in the ConversationalAgent APIs.
50+
The keyword spotter that triggers the application to start has achieved low power consumption by simplifying the keyword model. This allows the keyword spotter to be "always on" without a high power impact, but it also means the keyword spotter will likely have a high number of "false accepts" where it detects a keyword even though no keyword was spoken. This is why the voice activation system launches the application in the background: to give the application a chance to verify that the keyword was spoken before interrupting the user's current session. AAR saves the audio since a few seconds before the keyword was spotted and makes it accessible to the application. The application can use this to run a more reliable keyword spotter on the same audio.
5951

6052
## Next steps
6153

0 commit comments

Comments
 (0)