US11778082B2ExpiredUtilityA1

Voice application network platform

78
Assignee: XTONE INCPriority: Sep 1, 2005Filed: Apr 26, 2023Granted: Oct 3, 2023
Est. expirySep 1, 2025(expired)· nominal 20-yr term from priority
H04M 1/2478H04M 1/2477H04M 3/42221H04M 3/4936H04M 1/2535H04M 1/72445H04M 3/493H04M 2250/74
78
PatentIndex Score
0
Cited by
202
References
30
Claims

Abstract

A distributed voice applications system includes a voice services instruction rendering agent and at least one voice services software client that is configured to provide voice applications to an individual user. A management system may control and direct the voice services rendering agent to create voice applications that are personalized for individual users based on user characteristics, information about the environment in which the voice applications will be performed, prior user interactions and other information. The voice services software client may be resident on a local user device which includes a voice browser and speech recognition capabilities. The local device, voice services instruction rendering agent and the management system may be interconnected via a communications network.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A non-transitory computer-readable medium bearing instructions which, when performed by one or more processors of a local device, cause the local device to perform a method of providing voice services, the method comprising:
 sending, to one or more servers of a voice services provider (VSP), one or more messages that include information regarding an event, setting, state and/or variable associated with at least one component of the local device, wherein the local device includes a memory, one or more processors, an operating system, a network interface, an audio and signaling layer with at least one audio I/O device interface, one or more configuration materials and/or settings configured to be controlled by the VSP and a voice services software client configured to run on the one or more processors and to communicate with one or more servers of the VSP, wherein the voice services software client also is configured to start and manage one or more processes and/or threads, wherein each process and/or thread is configured to perform or respond to a voice service instruction that is either received from a server of the VSP or that is based on information received from a server of the VSP, wherein each voice service instruction relates to one or more voice services, and wherein the voice services software client is configured to manage connectivity between the at least one audio I/O device interface and one or more processes and/or threads; 
 receiving, from one or more servers of the VSP, voice service instructions relating to one or more voice services, where the voice service instructions are based on events, settings, states and/or variables associated with components of the local device; and 
 managing one or more processes and/or threads as the one or more processes and/or threads perform or respond to voice service instructions relating to one or more voice services. 
 
     
     
       2. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include information regarding an event, setting, state and/or variable associated with the voice services software client. 
     
     
       3. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include information regarding an event, setting, state and/or variable associated with a process and/or thread managed by the voice services software client. 
     
     
       4. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include information regarding an event, setting, state and/or variable associated with a voice service instruction relating to a voice service. 
     
     
       5. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include information regarding an event, setting, state and/or variable relating to a plurality of voice services. 
     
     
       6. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include information regarding an event, setting, state and/or variable relating to a plurality of voice services that are being performed concurrently. 
     
     
       7. The non-transitory computer-readable medium of  claim 1 , wherein the at least one audio I/O device interface comprises a first audio I/O device interface, and wherein managing one or more processes and/or threads comprises the voice services software client controlling which of the one or more processes and/or threads is connected to the first audio I/O device interface. 
     
     
       8. The non-transitory computer-readable medium of  claim 7 , wherein the at least one audio I/O device interface further comprises a second audio I/O device interface that is functionally coupled to an audio device that is separate from the local device, and wherein managing one or more processes and/or threads comprises the voice services software client controlling which of the one or more processes and/or threads is connected to the second audio I/O device interface. 
     
     
       9. The non-transitory computer-readable medium of  claim 1 , wherein at least one of the one or more processes and/or threads is configured by the voice services software client to perform a predetermined function or set of functions. 
     
     
       10. The non-transitory computer-readable medium of  claim 1 , wherein the voice services software client also is configured to start a plurality of processes and/or threads when the voice services software client starts. 
     
     
       11. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending update messages, with the voice services software client, to one or more servers of the VSP as the voice services software client manages at least one of the one or more processes and/or threads as the at least one process and/or thread performs or responds to a voice service instruction, wherein each update message includes information regarding an event, setting, state and/or variable associated with a component of the local device. 
     
     
       12. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises:
 sending, to a server of the VSP, information about a capability or characteristic of the local device; and 
 receiving at least one voice service instruction rendered based on the information about a capability or characteristic of the local device that was sent to a server of the VSP. 
 
     
     
       13. The non-transitory computer-readable medium of  claim 1 , wherein receiving voice service instructions comprises receiving at least one voice service instruction rendered based on a capability or characteristic of a data network connection of the local device. 
     
     
       14. The non-transitory computer-readable medium of  claim 1 , wherein receiving voice service instructions comprises receiving at least one voice service instruction rendered based on a characteristic of a user of the local device. 
     
     
       15. The non-transitory computer-readable medium of  claim 1 , wherein the voice services software client is configured to manage the one or more processes and/or threads as the one or more processes and/or threads perform or respond to voice service instructions relating to first and second voice services such that the first and second voice services are provided concurrently. 
     
     
       16. The non-transitory computer-readable medium of  claim 15 , wherein managing comprises managing the one or more processes and/or threads as the one or more processes and/or threads perform or respond to voice service instructions relating to the first and second voice services such that the one or more processes and/or threads are connected to and utilize the same audio I/O device interface. 
     
     
       17. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises:
 determining that a new process and/or thread is needed to perform or respond to a particular voice service instruction; and 
 starting a new process and/or thread that is to be used to perform or respond to the particular voice service instruction, and wherein managing further comprises the voice services software client managing the new process and/or thread as the new process and/or thread performs or responds to the particular voice service instruction. 
 
     
     
       18. The non-transitory computer-readable medium of  claim 17 , wherein determining that a new process and/or thread is needed to perform or respond to the particular voice service instruction comprises determining that none of the processes and/or threads currently being managed by the voice services software client are available for and/or are capable of performing or responding to the particular voice service instruction. 
     
     
       19. The non-transitory computer-readable medium of  claim 1 , wherein managing the one or more processes and/or threads comprises the voice services software client:
 pausing performance of or responses to one or more voice service instructions relating to a first voice service upon occurrence of a trigger event; 
 causing performance of or responses to one or more voice service instructions relating to a second voice service to commence once performance of or responses to the one or more voice service instructions relating to the first voice service have been paused; and 
 resuming performance of or responses to the one or more voice service instructions relating to the first voice service when performance of or responses to the one or more voice service instructions relating to the second voice service are completed. 
 
     
     
       20. The non-transitory computer-readable medium of  claim 1 , wherein the at least one audio I/O device interface comprises first and second audio I/O device interfaces, and wherein managing the one or more processes and/or threads comprises the voice services software client causing a first process and/or thread that is connected to the first audio I/O device interface to perform or respond to a first voice service instruction and also causing a second process and/or thread that is connected to the second audio I/O device interface to perform or respond to a second voice service instruction. 
     
     
       21. The non-transitory computer-readable medium of  claim 20 , wherein the first voice service instruction relates to a first voice service, wherein the second voice service instruction relates to a second voice service, and wherein managing the one or more processes and/or threads comprises the voice services software client causing the first process and/or thread to perform or respond to the first voice service instruction concurrently with the second process and/or thread performing or responding to the second voice service instruction. 
     
     
       22. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises:
 continuously monitoring sounds received via a microphone coupled to the at least one audio I/O device interface; 
 determining when the received sounds include a keyword or phrase; and 
 taking a predetermined action when received sounds are determined to include the keyword or phrase. 
 
     
     
       23. The non-transitory computer-readable medium of  claim 22 , wherein taking a predetermined action comprises:
 receiving audio input after detection of the keyword or phrase; and 
 sending the received audio input to a speech recognition interface resident on the local device or to a server of the VSP. 
 
     
     
       24. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending to a server of the VSP a setting, state or variable of one or more configuration materials or settings of a component of the local device. 
     
     
       25. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending to a server of the VSP device log messages relating to operations of the local device in real time or near real time. 
     
     
       26. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending to a server of the VSP log messages and/or error messages relating to operations of the voice services software client. 
     
     
       27. The non-transitory computer-readable medium of  claim 1 , wherein the method performed by one or more processors of the local device comprises managing the one or more processes and/or threads as the one or more processes and/or threads perform or respond to a voice service instruction contemporaneously with receiving the voice service instruction from a server of the VSP. 
     
     
       28. The non-transitory computer-readable medium of  claim 1 , wherein the one or more messages include values of multiple variables as of a specific time, and wherein the values of multiple variables relate to at least one of a component of the local device and performance of or responses to a voice service instruction. 
     
     
       29. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending to a server of the VSP at least one credential of the voice services software client, and wherein the server of the VSP is configured to use the at least one credential to uniquely identify the voice services software client, to uniquely identify the local device, to obtain information associated with the voice services software client and/or to obtain information associated with the local device. 
     
     
       30. The non-transitory computer-readable medium of  claim 1 , wherein the method further comprises sending to a server of the VSP at least one credential of the voice services software client, and wherein the server of the VSP is configured to use the at least one credential to identify a user account associated with the local device and to obtain information associated with that user account.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.