IP Library Granted Patent US 12,088,585
Granted Patent B2
US 12,088,585 · App. 16/801,197 · Granted Sep 10, 2024

Voice skill session lifetime management

Inventors: Rohit Pradeep Shetty (Bangalore, IN); Suman Aluvala (Bangalore, IN)
Assignee: VMware LLC
H04L63/0861G10L17/00H04L9/085H04L9/3231
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,088,585
App. No.
16/801,197
Granted
Sep 10, 2024
Kind
B2
Abstract

Disclosed are various aspects of voice skill session lifetime management. In some examples, a session extension request is received. The session extension request extends a voice skill session of a voice-activated device. A personal client device is identified based on the session extension request. A command to emit an ultrasonic pulse is transmitted to the personal client device.

Claims (50)

1. A system, comprising:

at least one computing device comprising at least one processor; and

at least one memory comprising executable instructions, wherein the instructions, when executed by the at least one processor, cause the at least one computing device to at least:

receive, by a workflow service executed by at least one server device, a session extension request from a voice skill on a voice-activated device to extend a voice skill session of the voice-activated device;

identify, by the workflow service, a personal client device based on the session extension request;

transmit, by the workflow service to the personal client device, a command comprising instructions that instruct a workflow application executed by the personal client device to:

generate a session extension code using an expected code generation algorithm expected by the workflow service; and

periodically emit an ultrasonic pulse to extend the voice skill session of the voice-activated device at a specified time period, wherein the specified time period is selected to be shorter than a security time period of an operating system of the voice-activated device, the ultrasonic pulse comprising the session extension code to be extracted by the voice skill on the activated voice-activated device;

receive, by the workflow service from the voice-activated device, the session extension code extracted from the ultrasonic pulse by the voice-activated device;

identify a verification status based on determining that the session extension code is generated using the expected code generation algorithm; and

perform, by the workflow service, an action based on the identified verification status.

2. The system of claim 1 , wherein the session extension request specifies the personal client device to extend the voice skill session.

3. The system of claim 1 , wherein the personal client device is identified further based on a user account that specifies the personal client device to extend the voice skill session.

4. The system of claim 1 , wherein the action comprises at least one of:

incrementing a counter for a number of unverified session extension codes, resetting the counter for the number of unverified session extension codes, transmitting the verification status to the voice-activated device and the personal client device, transmitting a command for the voice-activated device to extend or cancel the voice skill session, and transmitting a command for the personal client device to continue or discontinue emitting ultrasonic pulses.

5. The system of claim 1 , wherein the session extension code is generated based in further part on a shared secret that is shared between

the workflow service and the personal client device, wherein the shared secret is used to encrypt the session extension code.

6. The system of claim 5 , wherein the verification status is determined based on the session extension code extracted from the ultrasonic pulse and the shared secret.

7. The system of claim 1 , wherein the verification status is determined based on the session extension code extracted from the ultrasonic pulse and an expected session extension code.

8. A non-transitory computer-readable medium comprising executable instructions, wherein the instructions, when executed by at least one processor, cause at least one computing device to at least:

receive, by a workflow service executed by at least one server device, a session extension request from a voice skill on a voice-activated device to extend a voice skill session of the voice-activated device;

identify, by the workflow service, a personal client device based on the session extension request;

transmit, by the workflow service to the personal client device, a command comprising instructions that instruct a workflow application executed by the personal client device to:

generate a session extension code using an expected code generation algorithm expected by the workflow service; and

periodically emit an ultrasonic pulse to extend the voice skill session of the voice-activated device at a specified time period selected to be shorter than a security time period of an operating system of the voice-activated device, the ultrasonic pulse comprising the session extension code to be extracted by the voice skill on the activated voice-activated device;

receive, by the workflow service from the voice-activated device, the session extension code extracted from the ultrasonic pulse by the voice-activated device;

identify a verification status based on determining that the session extension code is generated using the expected code generation algorithm; and

perform, by the workflow service, an action based on the identified verification status.

9. The non-transitory computer-readable medium of claim 8 , wherein the session extension request specifies the personal client device to extend the voice skill session.

10. The non-transitory computer-readable medium of claim 8 , wherein the personal client device is identified further based on a user account that specifies the personal client device to extend the voice skill session.

11. The non-transitory computer-readable medium of claim 8 , wherein the action comprises at least one of:

incrementing a counter for a number of unverified session extension codes, resetting the counter for the number of unverified session extension codes, transmitting the verification status to the voice-activated device and the personal client device, transmitting a command for the voice-activated device to extend or cancel the voice skill session, and transmitting a command for the personal client device to continue or discontinue emitting ultrasonic pulses.

12. The non-transitory computer-readable medium of claim 8 , wherein the session extension code is generated based in further part on a shared secret that is shared between the workflow service and the personal client device, wherein the shared secret is used to encrypt the session extension code.

13. The non-transitory computer-readable medium of claim 12 , wherein the verification status is determined based on the session extension code extracted from the ultrasonic pulse and the shared secret.

14. The non-transitory computer-readable medium of claim 8 , wherein the verification status is determined based on the session extension code extracted from the ultrasonic pulse and an expected session extension code.

15. A method performed by at least one computing device based on instructions executed by at least one processor of the at least one computing device, the method comprising:

receiving, by a workflow service executed by at least one server device, a session extension request from a voice skill on a voice-activated device to extend a voice skill session of the voice-activated device;

identifying, by the workflow service, a personal client device based on the session extension request;

transmitting, by the workflow service to the personal client device, a command comprising instructions that instruct a workflow application executed by the personal client device to:

generate a session extension code using an expected code generation algorithm expected by the workflow service; and

periodically emit an inaudible ultrasonic pulse to extend the voice skill session of the voice-activated device at a specified time period selected to be shorter than a security time period of an operating system of the voice-activated device, the inaudible ultrasonic pulse comprising the session extension code to be extracted by the voice skill on the voice-activated device;

receiving, by the workflow service from the voice-activated device, the session extension code extracted from the inaudible ultrasonic pulse by the voice-activated device;

identifying a verification status based on determining that the session extension code is generated using the expected code generation algorithm; and

performing, by the workflow service, an action based on the identified verification status.

16. The method of claim 15 , wherein the session extension request specifies the personal client device to extend the voice skill session.

17. The method of claim 15 , wherein the personal client device is identified further based on a user account that specifies the personal client device to extend the voice skill session.

18. The method of claim 15 , wherein the action comprises at least one of:

incrementing a counter for a number of unverified session extension codes, resetting the counter for the number of unverified session extension codes, transmitting the verification status to the voice-activated device and the personal client device, transmitting a command for the voice-activated device to extend or cancel the voice skill session, and transmitting a command for the personal client device to continue or discontinue emitting inaudible ultrasonic pulses.

19. The method of claim 15 , wherein the session extension code is generated based in further part on a shared secret that is shared between the workflow service and the personal client device, wherein the shared secret is used to encrypt the session extension code.

20. The method of claim 19 , wherein the verification status is determined based on the session extension code extracted from the inaudible ultrasonic pulse and the shared secret.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2020
From: SHETTY, ROHIT PRADEEP; ALUVALA, SUMAN
To: VMWARE, INC.
Reel/Frame 052019/0743 →
Priority Claims (1)
IN 202041000478 · Jan 6, 2020 · national
Continuity (1)
Related Publication 20210211422A1 · Jul 8, 2021