IP Library Granted Patent US 10,785,641
Granted Patent B2
US 10,785,641 · App. 16/353,321 · Granted Sep 22, 2020

Systems and methods for real-time remote control of mobile applications

Inventors: Reto Stuber (Karlsruhe, DE); Christian Thum (Mannheim, DE); Stefan Seedorf (Mannheim, DE); Yossi Levin (Ein Vered, IL)
Assignee: LIVEPERSON, INC.
H04W8/245G06F9/452H04M1/72522
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 10,785,641
App. No.
16/353,321
Granted
Sep 22, 2020
Kind
B2
Abstract

Systems and methods for real-time, remote-control of mobile applications are provided. A communication session between a network device and a terminal device can be established. The network device can be configured to execute a mobile application. For example, the mobile application can include an input element at an initial state. The mobile application can be remotely controlled by the terminal device. Further, a data stream including content data can be received and transmitted during the communication session. For example, the content data can include an object presented by the mobile application. The content data can be displayed on the terminal device. An input event associated with the content data can be detected. Control data can be generated based on the detected input event. The control data can be received at the network device and the initial state of the input element can be modified.

Claims (46)

1. A computer-implemented method comprising:

establishing a communication session between a mobile device and a terminal device, wherein the communication session is associated with a communication server, and wherein the mobile device is associated with a mobile application;

facilitating communication between the mobile device and the terminal device, wherein the communication corresponds to the mobile application, and wherein the communication facilitates a display at the terminal device of an image corresponding to a screen display presented by the mobile application at the mobile device;

detecting performance of an action associated with the terminal device, wherein the action corresponds to the display of the image at the terminal device; and

transmitting control data corresponding to the display of the image in real-time, wherein when the control data is received at the mobile device, the control data replicates the action within the mobile application at the mobile device.

2. The method of claim 1 , further comprising:

monitoring for one or more actions at the mobile device, wherein the communication corresponding to the mobile application is based on an action detected at the mobile device in real-time.

3. The method of claim 1 , further comprising:

detecting a change to the screen display at the mobile device in real-time, wherein the communication corresponding to the mobile application includes the detected change.

4. The method of claim 1 , wherein the image includes a screenshot captured at the mobile device in real-time during execution of the mobile application, and wherein the display of the image at the terminal device is based on the screenshot.

5. The method of claim 1 , further comprising capturing data periodically during execution of the mobile application and transmitting the captured data to the terminal device.

6. The method of claim 1 , further comprising:

generating the control data based on a location within the image upon which the action is performed at the terminal device.

7. The method of claim 6 , wherein generating the control data comprises:

identifying the location within the image upon which the action is performed at the terminal device.

8. The method of claim 6 , wherein generating the control data comprises:

identifying a set of coordinates for the location within the image, wherein the control data is generated based on the set of coordinates.

9. The method of claim 6 , wherein generating the control data comprises:

identifying that the location is within a set of pixels of the image, wherein the control data is generated based on the location being within the set of pixels.

10. The method of claim 6 , wherein generating the control data comprises:

identifying the location relative to a boundary within the image, wherein the control data is generated based on the location relative to the boundary.

11. The method of claim 1 , wherein the control data further includes metadata describing a type of the action performed at the terminal device.

12. The method of claim 1 , wherein transmitting the control data to the mobile device comprises:

identifying that the control data includes an identifier associated with the mobile device, wherein the communication server transmits the control data to the mobile device based on the identifier.

13. The method of claim 1 , wherein the mobile device replicates the action within the mobile application by transforming the control data based on a difference between the mobile device and the terminal device.

14. The method of claim 13 , wherein the difference includes a difference in orientation of a display screen of the mobile device and a display screen of the terminal device, wherein transforming the control data is based on the difference in orientation.

15. The method of claim 13 , wherein the difference includes a difference in dimensions of a display screen of the mobile device and a display screen of the terminal device, wherein transforming the control data is based on the difference in dimensions.

16. The method of claim 1 , further comprising:

storing an identifier of the mobile device and an identifier of the terminal device in memory of the communication server, wherein the communication session is associated with the identifier of the mobile device and the identifier of the terminal device.

17. The method of claim 16 , further comprising:

identifying that an unknown device has joined the communication session, the unknown device identified as not having a corresponding identifier stored at the communication server; and

terminating the communication session in relation to at least the unknown device.

18. The method of claim 16 , further comprising:

identifying that the terminal device is no longer associated with the stored identifier of terminal device; and

sending a notification to the mobile device, the notification including an option to terminate the communication session.

19. An apparatus comprising:

a network interface that:

establishes a communication session between a mobile device and a terminal device, wherein the mobile device is associated with a mobile application, and

facilitates communication between the mobile device and the terminal device, wherein the communication corresponds to the mobile application, and wherein the communication facilitates a display at the terminal device of an image corresponding to a screen display presented by the mobile application at the mobile device; and

a processor that executes instructions stored in memory, wherein execution of the instructions by the processor detects performance of an action associated with the terminal device, wherein the action corresponds to the display of the image at the terminal device; and

the network interface transmitting control data corresponding to the display of the image, wherein when the control data is received at the mobile device, the control data facilitates replication of the action within the mobile application at the mobile device.

20. A non-transitory, computer-readable storage medium, having embodied thereon a program executable by a processor to perform a computer-implemented method for real-time remote control of mobile applications, comprising:

establishing a communication session between a mobile device and a terminal device, wherein the communication session is associated with a communication server, and wherein the mobile device is associated with a mobile application;

facilitating communication between the mobile device and the terminal device, wherein the communication corresponds to the mobile application, and wherein the communication facilitates a display at the terminal device of an image corresponding to a screen display presented by the mobile application at the mobile device;

detecting performance of an action associated with the terminal device, wherein the action corresponds to the display of the image at the terminal device; and

transmitting control data corresponding to the display of the image in real-time, wherein when the control data is received at the mobile device, the control data facilitates replication of the action within the mobile application at the mobile device.

Assignments (3)
SECURITY INTEREST Recorded Sep 13, 2025
From: LIVEPERSON, INC.; VOICEBASE, INC.; LIVEPERSON AUTOMOTIVE, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 072891/0627 →
PATENT SECURITY AGREEMENT Recorded Jun 3, 2024
From: LIVEPERSON, INC.; LIVEPERSON AUTOMOTIVE, LLC; VOICEBASE, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 067607/0073 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2020
From: STUBER, RETO; THUM, CHRISTIAN; SEEDORF, STEFAN; LEVIN, YOSSI
To: LIVEPERSON, INC.
Reel/Frame 053433/0318 →
Continuity (3)
Continuation 15675443 · Aug 11, 2017
Provisional Application 62374892 · Aug 14, 2016
Related Publication 20190342749A1 · Nov 7, 2019