Device and system for accessing multiple virtual assistant services
Abstract
A listening device that identifies, based on receiving the digitized voice stream, a first keyword of a plurality of keywords in the digitized voice stream. For example, the keyword may be a name associated with a service provider (e.g., “Google”). In response to identifying the first keyword of the plurality of keywords in the digitized voice stream the listening device identifies a first communication address of a first communication server of a first service provider associated with the first keyword of the plurality of keywords in the digitized voice stream. The listening server then routes the digitized voice stream and/or information associated with the digitized voice stream to the first communication server of the first service provider using the first communication address.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A device comprising:
a microprocessor; a microphone; a codec that converts an analog voice stream from the microphone to a digitized voice stream; and a computer readable medium, coupled with the microprocessor and comprising microprocessor readable and executable instructions that program the microprocessor to:
identify, based on receiving the digitized voice stream, a first keyword of a plurality of keywords in the digitized voice stream; and
in response to identifying the first keyword of the plurality of keywords in the digitized voice stream:
identify a first communication address of a first communication server of a first service provider associated with the first keyword of the plurality of keywords in the digitized voice stream; and
route the digitized voice stream and/or information associated with the digitized voice stream to the first communication server of the first service provider using the first communication address.
2 . The device of claim 1 , wherein identifying the first keyword of the plurality of keywords in the digitized voice stream comprises identifying a second keyword of the plurality of keywords in the digitized voice stream that is spoken together with the first keyword of the plurality of keywords in the digitized voice stream and wherein the microprocessor readable and executable instructions further program the microprocessor to:
identify a second communication address of a second communication server of a second service provider associated with a second keyword of the plurality of keywords in the digitized voice stream; and route the digitized voice stream and/or the information associated with the digitized voice stream to the second communication server of the second service provider using the second communication address.
3 . The device of claim 1 , wherein the microprocessor readable and executable instructions further program the microprocessor to:
identify a second keyword of the plurality of keywords in the digitized voice stream; and in response to identifying the second keyword of the plurality of keywords in the digitized voice stream:
identify a second communication address of a second communication server of a second service provider associated with the second keyword of the plurality of keywords in the digitized voice stream; and
switching the routing of the digitized voice stream and/or the information associated with the digitized voice stream to the second communication server of the second service provider using the second communication address.
4 . The device of claim 3 , wherein in response to identifying the first keyword of the plurality of keywords in the digitized voice stream causes the device to only route first information associated with the digitized voice stream to the first service provider and the first communication server until identifying the second keyword of the plurality of keywords in the digitized voice stream.
5 . The device of claim 1 , further comprising a timer that is based on a time period for not receiving voice in the digitized voice stream and wherein when the timer expires, the microprocessor readable and executable instructions further program the microprocessor to enter a listening mode to identify the first keyword and at least a second keyword of the plurality keywords in the digitized voice stream.
6 . The device of claim 1 , wherein in response to identifying the first keyword of the plurality of keywords in the digitized voice stream further comprises:
automatically, based on a profile, identify a second communication address of a second communication server of a second service provider; and route the digitized voice stream and/or the information associated with the digitized voice stream to the second communication server of the second service provider using the second communication address.
7 . The device of claim 1 , wherein the microprocessor readable and executable instructions further program the microprocessor to:
receive, from the first communication server of the first service provider a first response, wherein the first response indicates that a first inquiry was not answered; in response to the first response indicating that the first inquiry was not answered, asking a user if the user wants to receive a second response from a second service provider; and in response to the user wanting to receive the second response from the second service provider, route the digitized voice stream and/or the information associated with the digitized voice stream to a second communication server of the second service provider using a second communication address.
8 . The device of claim 1 , wherein routing the digitized voice stream and/or the information associated with the digitized voice stream is routing the digitized voice stream.
9 . The device of claim 1 , wherein routing the digitized voice stream and/or the information associated with the digitized voice stream is routing the information associated with the digitized voice stream and wherein the information associated with the digitized voice stream is voice-to-text conversion of the digitized voice stream.
10 . The device of claim 1 , wherein routing the digitized voice stream and/or information associated with the digitized voice stream does include routing the first keyword in the digitized voice stream or in the information associated with the digitized voice stream.
11 . A processing server comprising:
a microprocessor; and a computer readable medium, coupled with the microprocessor and comprising microprocessor readable and executable instructions that program the microprocessor to:
receive, via a network from a first listening device, a first digitized voice stream and/or information associated with the first digitized voice stream;
identify a first keyword of a plurality of keywords in the first digitized voice stream and/or the information associated with the first digitized voice stream; and
in response to identifying the first keyword of the plurality of keywords in the first digitized voice stream and/or the information associated with the first digitized voice stream:
identify a first communication address of a first communication server of a first service provider associated with the first keyword of the plurality of keywords; and
route the first digitized voice stream and/or the information associated with the first digitized voice stream using the first communication address of the first communication server of the first service provider.
12 . The processing server of claim 11 , wherein microprocessor readable and executable instructions further program the microprocessor to:
receive, from a second listening device, a second keyword in a second digitized voice stream and/or second information associated with the second digitized voice stream; identify a second keyword of a plurality of keywords in the second digitized voice stream and/or the information associated with the second digitized voice stream; and in response to identifying the second keyword of the plurality of keywords in the second digitized voice stream and/or the second information associated with the second digitized voice stream:
identify a second communication address of a second communication server of a second service provider associated with the second keyword of the plurality of keywords; and
route the second digitized voice stream and/or the second information associated with the second digitized voice stream using the second communication address of the second communication server of the second service provider.
13 . A caching server comprising:
a microprocessor; and a computer readable medium, coupled with the microprocessor and comprising microprocessor readable and executable instructions that program the microprocessor to:
receive, via a network, from a plurality of listening devices, a plurality of digitized voice streams and/or information associated with the plurality of digitized voice streams; and
identify a first keyword in a first digitized voice stream and/or first information associated with a first digitized voice stream of the plurality of digitized voice streams; and
in response to identifying the first keyword:
identify a first service provider associated with the first keyword;
identify a first inquiry in the first digitized voice stream and/or the first information associated with the first digitized voice stream;
in response identifying the first service provider and the first inquiry, searching a first cache of the first service provider to identify a first response to the first inquiry;
in response to identifying the first response to the first inquiry in the first cache of the first service provider, sending the first response to a first listening device that originated the first digitized voice stream; and
in response to not identifying the first response to the first inquiry in the first cache of the first service provider, identify a first communication address of a first communication server of the first service provider and route the first inquiry to the first communication server of the first service provider.
14 . The caching server of claim 13 , wherein searching the first cache of the first service provider to identify the first response to the first inquiry further comprises searching a second cache of a second service provider to identify the first response to the first inquiry.
15 . The caching server of claim 14 , wherein the first cache and the second cache are searched for inquiries that are not identical to the first inquiry, but are similar to the first inquiry.
16 . The caching server of claim 13 , wherein the first response to the first inquiry in the first cache of the first service provider was stored in the first cache of the first service provider based on a received response to the first inquiry by a second listening device.
17 . The caching server of claim 13 , wherein identifying the first keyword comprises identifying a second keyword that is spoken together with the first keyword of the plurality of keywords, wherein identifying the first service provider comprises identifying a second service provider, wherein searching the first cache of the first service provider comprises searching a second cache of a second service provider.
18 . The caching server of claim 17 , wherein sending the first response to the first listening device comprises sending a second response from the second cache of the second service provider to the first listening device.
19 . The caching server of claim 13 , wherein microprocessor readable and executable instructions further program the microprocessor to identify a second keyword in a second digitized voice stream and/or second information associated with the second digitized voice stream of the plurality of digitized voice streams from a second listening device.
20 . The caching server of claim 13 , wherein identifying the first response to the first inquiry in the first cache of the first service provider and sending the first response to the first listening device provides a faster overall response time.
21 . The processing server of claim 11 , wherein identifying the first keyword of the plurality of keywords in the first digitized voice stream comprises identifying a second keyword of the plurality of keywords in the first digitized voice stream that is spoken together with the first keyword of the plurality of keywords in the first digitized voice stream and wherein the microprocessor readable and executable instructions further program the microprocessor to:
identify a second communication address of a second communication server of a second service provider associated with the second keyword of the plurality of keywords in a second digitized voice stream; and route the second digitized voice stream and/or the information associated with the second digitized voice stream to the second communication server of the service provider using the second communication address.
22 . The processing server of claim 11 , wherein the microprocessor readable and executable instructions further program the microprocessor to:
identify a second keyword of the plurality of keywords in a second digitized voice stream; and in response to identifying the second keyword of the plurality of keywords in the second digitized voice stream:
identify a second communication address of a second communication server of a second service provider associated with the second keyword of the plurality of keywords in the second digitized voice stream; and
switching the routing of the second digitized voice stream and/or the information associated with the second digitized voice stream to the second communication server of the second service provider using the second communication address.
23 . The processing server of claim 11 , wherein in response to identifying the first keyword of the plurality of keywords in the first digitized voice stream causes the first listening device to only route the first information associated with the first digitized voice stream to the first communication server of the first service provider until identifying a second keyword of the plurality of keywords in the first digitized voice stream.
24 . The processing server of claim 11 , further comprising a timer that is based on a time period for not receiving voice in the first digitized voice stream and wherein when the timer expires, the microprocessor readable and executable instructions further program the microprocessor to enter a listening mode to identify the first keyword and at least a second keyword of the plurality of keywords in the first digitized voice stream.
25 . The processing server of claim 11 , wherein in response to identifying the first keyword of the plurality of keywords in the first digitized voice stream further comprises:
automatically, based on a profile, identify a second communication address of a second communication server of a second service provider; and route the first digitized voice stream and/or the information associated with the first digitized voice stream to the second communication server of the second service provider using the second communication address.
26 . The processing server of claim 11 , wherein the microprocessor readable and executable instructions further program the microprocessor to:
receive, from the first communication server of the first service provider a first response, wherein the first response indicates that a first inquiry was not answered; and in response to the first response indicating that the first inquiry was not answered, asking a user if the user wants to receive a second response from a second service provider; and in response to the user wanting to receive the second response from the second service provider, route the first digitized voice stream and/or the information associated with the first digitized voice stream to a second communication server of the second service provider using a second communication address.
27 . A method of operating a listening device, the method comprising:
using a codec to convert an analog voice stream to a digitized voice stream; identifying, based on the digitized voice stream, a first keyword of a plurality of keywords in the digitized voice stream; and in response to identifying the first keyword of the plurality of keywords in the digitized voice stream:
identifying a first communication address of a first communication server of a first service provider associated with the first keyword of the plurality of keywords in the digitized voice stream; and
routing the digitized voice stream and/or information associated with the digitized voice stream to the first communication server of the first service provider using the first communication address.
28 . The method of claim 27 , further comprising:
identifying a second keyword of the plurality of keywords in the digitized voice stream that is spoken together with the first keyword of the plurality of keywords in the digitized voice stream; identifying a second communication address of a second communication server of a second service provider associated with the second keyword of the plurality of keywords in the digitized voice stream; and routing the digitized voice stream and/or the information associated with the digitized voice stream to the second communication server of the second service provider using the second communication address.Join the waitlist — get patent alerts
Track US2019311710A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.