Extending digital personal assistant action providers

US2016155442A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016155442-A1
Application numberUS-201514676603-A
CountryUS
Kind codeA1
Filing dateApr 1, 2015
Priority dateNov 28, 2014
Publication dateJun 2, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An electronic device can receive user input via voice or text that includes tasks to be performed. A digital personal assistant infrastructure service can control to which registered action provider the task is assigned. Per-task action provider preferences can be stored. If a preferred action provider is not able to complete the task, the task can still be performed by a registered action provider that has appropriate capabilities. Machine learning can determine a user's preferences. Resource conservation and effective user interaction can result.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of controlling which action provider out of a plurality of registered action providers performs a task, the method comprising: receiving a spoken utterance detected by a microphone; performing speech recognition on the spoken utterance, the speech recognition recognizing a task in the spoken utterance; and responsive to recognizing the task and based on stored registrations for the registered action providers and stored task-to-provider association preferences, assigning the task to a particular action provider out of the registered action providers, wherein assigning the task comprises choosing the particular action provider to perform the task and sending instructions to perform the task to the particular action provider. 2 . The method of claim 1 further comprising: determining that a prerequisite for an action provider is not satisfied; and responsive to determining that the prerequisite for the action provider is not satisfied, identifying a secondary action provider for the task, and using the secondary action provider as the particular action provider for performing the task. 3 . The method of claim 2 wherein: the prerequisite specifies that a network connection is present. 4 . The method of claim 1 wherein: the task-to-provider association preferences indicate a preferred action provider for the task; and choosing the particular action provider to perform the task comprises choosing the preferred action provider for the task. 5 . The method of claim 1 further comprising: receiving an utterance comprising an explicit indication of a second action provider and the task; and responsive to recognizing the explicit indication of the second action provider, sending instructions to perform the task to the second action provider. 6 . The method of claim 1 further comprising: based on the stored registration for the particular action provider, determining that a parameter slot for the task is missing; and before sending instructions to the particular action provider, prompting for a parameter value to fill the parameter slot; receiving another spoken utterance; performing speech recognition on the other spoken utterance, the speech recognition recognizing a spoken parameter value; and submitting the spoken parameter value to the particular action provider when assigning the task to the particular action provider. 7 . The method of claim 1 wherein: the speech recognition further recognizes a parameter value in the spoken utterance; and assigning the task to the particular action provider further comprises sending the parameter value to the action provider. 8 . The method of claim 1 further comprising: registering the particular action provider with a digital personal assistant infrastructure service, wherein the registering comprises storing an indication of one or more actions supported by the particular action provider. 9 . The method of claim 1 wherein: the registered action providers comprise a non-native action provider and a native action provider. 10 . The method of claim 1 further comprising: via machine learning, determining that the particular action provider is a preferred action provider for the task; and changing the preferred action provider for the task to be the particular action provider. 11 . The method of claim 1 wherein: performing speech recognition on the spoken utterance comprises recognizing, in the utterance, a contact name of a contact; the task comprises a communication task; and assigning the particular action provider to perform the task comprises initiating communication with the contact via the communication task with the particular action provider. 12 . The method of claim 11 further comprising: via machine learning, determining that the particular action provider is a preferred action provider for the task and contact; and changing the preferred action provider for the task and contact to be the particular action provider. 13 . The method of claim 1 further comprising: responsive to determining that no registered action provider supports the task, identifying an action provider that supports the task, installing the action provider that supports the task, and registering the action provider that supports the task. 14 . The method of claim 1 wherein: the stored registration for the particular registered action provider indicates that a message is to be presented when a current location falls within a boundary; and the method further comprises, responsive to determining that the current location falls within the boundary, presenting the message. 15 . The method of claim 1 further comprising: performing the task with the particular action provider. 16 . An electronic device comprising: a processor; memory storing a plurality of stored registrations for registered action providers, wherein the stored registrations comprise a stored registration for a particular registered action provider indicating a task supported by the particular registered action provider; memory storing a plurality of stored preferences for registered action providers, wherein the stored preferences comprise a preference indicating a particular registered action provider as preferred for a particular task; a recognition engine configured to recognize a task in a spoken utterance received by a microphone of the device or a typed command received by text input hardware of the device; and a personal digital assistant infrastructure service configured to control to which action provider the task is directed for completion based on the stored registrations and the stored preferences. 17 . The electronic device of claim 16 wherein: the stored registration for the particular registered action provider comprises a prerequisite condition for the task supported by the particular registered action provider; and the digital personal assistant infrastructure service is configured to evaluate the prerequisite condition and choose a different action provider if the prerequisite is not met. 18 . The electronic device of claim 17 wherein: the prerequisite condition specifies that a data connection is present. 19 . The electronic device of claim 16 wherein: the personal digital assistant infrastructure service supports explicit override of a preferred action provider for the task. 20 . One or more machine-readable media comprising machine-executable instructions causing an electronic device to perform a method controlling which communication action provider out of a plurality of registered communication action providers perform a communication task supported by a digital personal assistant infrastructure service, the method comprising: performing speech recognition on an utterance, the speech recognition comprising recognizing the supported communication task and a contact name in the utterance; and based on stored registrations for the registered communication action providers, stored action-to-provider association preferences, and availability of contact information for initiating the communication task for the contact name, choosing a particular registered communication action provider, and initiating communication with a contact identified by the contact name using the selected particular registered communication action provider via the supported communication task; wherein choosing a particular registered communication action provider comprises initially considering a fir

Assignees

Inventors

Classifications

  • G10L15/22Primary

    Procedures used during a speech recognition process, e.g. man-machine dialogue · CPC title

  • Execution procedure of a spoken command · CPC title

  • Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title

  • the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • Audio in a user interface, e.g. using voice commands for navigating, audio feedback · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016155442A1 cover?
An electronic device can receive user input via voice or text that includes tasks to be performed. A digital personal assistant infrastructure service can control to which registered action provider the task is assigned. Per-task action provider preferences can be stored. If a preferred action provider is not able to complete the task, the task can still be performed by a registered action prov…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G10L15/22. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 02 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).