IP Library › Granted Patent US 11,763,343
Granted Patent B2
US 11,763,343 · App. 15/344,246 · Granted Sep 19, 2023

Systems and methods for validating interaction with third-party interactive media

Inventors: Pasha Nahass (San Francisco, CA); Arunkumar Balaraman (Cupertino, CA); Tuna Toksoz (Mountain View, CA)
Assignee: GOOGLE LLC
G06Q30/0248A63F13/352A63F13/49A63F13/69A63F13/79H04L65/1063H04L67/53H04L67/535H04L65/61H04L67/01
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 11,763,343
App. No.
15/344,246
Granted
Sep 19, 2023
Kind
B2
Abstract

A client system presents, within an execution environment of an application, a third-party media stream distinct from the application, received from a remote host server via a network. The client system detects interaction events during presentation of the third-party media stream, and transmits descriptions of the detected interaction events to the remote host server. The client system updates a data set with data corresponding to detected interaction events and generates, by application of an interaction heuristic to the data set, an interaction score indicative of a likelihood of engagement with the third-party media stream. The interaction score is provided to the application, which may then provide a reward based on the likelihood of engagement. In some implementations, the interaction heuristic is based on a number or frequency of interaction events, e.g., button utilization, screen taps, device motion, or screen changes detected during presentation of the received third-party media stream.

Claims (55)

1. A method comprising:

presenting, by a client device, within an execution environment of an application, the execution environment being a sandboxed environment within the application, a third-party media stream, wherein the application cannot verify whether a user actually engages with the third-party media stream, wherein the third-party media stream comprises an interactive preview session of the third-party media stream received by the client device from a remote host server via a network;

detecting, by the client device during presentation of the third-party media stream, a plurality of interaction events with the client device;

transmitting, to the remote host server via the network, a description of the plurality of detected interaction events;

updating, by the client device, a data set with data corresponding to the plurality of detected interaction events;

generating, by applying an interaction heuristic to the data set, an interaction score indicative of a likelihood of engagement with the third-party media stream, wherein the likelihood of engagement is indicative of interaction with the third-party media stream during the interactive preview session;

providing the interaction score to the application, and

performing, by the application, an action based upon the interaction score, wherein the action is determined based on the interaction score.

2. The method of claim 1 , comprising detecting the interaction event by intercepting the interaction event.

3. The method of claim 1 , wherein the interaction event is one of:

a device movement event detected by a motion sensor on the client device, or

a tactile input event that is one of a screen tap, a button depression, a button release, or a mouse click.

4. The method of claim 1 , wherein the interaction heuristic is based on a number or frequency of tactile input events detected during presentation of the received third-party media stream.

5. The method of claim 1 , wherein the interaction heuristic is based on a number or frequency of device movement events detected during presentation of the received third-party media stream.

6. The method of claim 1 , comprising:

capturing a first sample of pixel states for a set of display pixels on the client device at a first time during presentation of the received third-party media stream;

capturing a second sample of pixel states for the set of display pixels on the client device at a second time during presentation of the received third-party media stream;

determining that at least a portion of the set of display pixels changed state between the first sample and the second sample; and

updating the data set with data corresponding to the portion of the set of display pixels changed.

7. The method of claim 6 , wherein the set of display pixels is a set of pixels initially selected at random.

8. The method of claim 6 , wherein the set of display pixels is a set of display pixels allocated to presentation of the third-party media stream.

9. The method of claim 6 , further comprising selecting the interaction heuristic responsive to the portion of the set of display pixels changed.

10. The method of claim 1 , comprising transmitting the data set to a remote computing device via a network, wherein the remote computing device applies the interaction heuristic.

11. The method of claim 1 , wherein the indicator of engagement with the third-party media stream is one of a Boolean value or a value within a predefined range.

12. The method of claim 1 , wherein the application being agnostic to the content of the third-party media stream comprises the application having no internal information regarding the content or interface of the third-party media stream.

13. The method of claim 1 , wherein the application being agnostic to the content of the third-party media stream comprises the application having no internal information regarding the location of the interactive elements of the third-party media stream.

14. The method of claim 1 , wherein the interaction score is generated without knowledge of content presented in the third-party media stream.

15. A system comprising a client device comprising a processor and memory, the memory storing instructions that, when executed by the processor, cause the processor to:

present, within an execution environment of an application, the execution environment being a sandboxed environment within the application, a third-party media stream, wherein the application cannot verify whether a user actually engages with the third-party media stream, wherein the third-party media stream comprises an interactive preview session of the third-party media stream received by the client device from a remote host server via a network;

detect, during presentation of the third-party media stream, a plurality of interaction events with the client device;

transmit, to the remote host server via the network, a description of the plurality of detected interaction events;

update a data set with data corresponding to the plurality of detected interaction events;

generate, by applying an interaction heuristic to the data set, an interaction score indicative of a likelihood of engagement with the third-party media stream, wherein the likelihood of engagement is indicative of interaction with the third-party media stream during the interactive preview session;

provide the interaction score to the application; and

perform an action based upon the interaction score, wherein the action is determined based on the interaction score.

16. The system of claim 15 , the client device further comprising a motion sensor, wherein the interaction event is one of:

a device movement event detected by the motion sensor.

17. The system of claim 15 , wherein the interaction event is a tactile input event that is one of a screen tap, a button depression, a button release, or a mouse click.

18. The system of claim 15 , wherein the interaction heuristic is based on a number or frequency of interaction events detected during presentation of the received third-party media stream.

19. The system of claim 15 , the client device further comprising a screen divided into pixels, the memory further storing instructions that, when executed by the processor, cause the processor to:

capture a first sample of pixel states for a set of display pixels on the client device at a first time during presentation of the received third-party media stream;

capture a second sample of pixel states for the set of display pixels on the client device at a second time during presentation of the received third-party media stream;

determine that at least a portion of the set of display pixels changed state between the first sample and the second sample; and

update the data set with data corresponding to the portion of the set of display pixels changed.

20. The system of claim 19 , wherein the set of display pixels is a set of display pixels allocated to presentation of the third-party media stream.

21. The system of claim 19 , the memory further storing instructions that, when executed by the processor, cause the processor to select the interaction heuristic responsive to the portion of the set of display pixels changed.

22. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to:

present, within an execution environment of an application, the execution environment being a sandboxed environment within the application, a third-party media stream, wherein the application cannot verify whether a user actually engages with the third-party media stream, wherein the third-party media stream comprises an interactive preview session of the third-party media stream received by a client device from a remote host server via a network;

detect, during presentation of the third-party media stream, a plurality of interaction events with the client device;

transmit, to the remote host server via the network, a description of the plurality of detected interaction events;

update a data set with data corresponding to the plurality of detected interaction events;

generate, by applying an interaction heuristic to the data set, an interaction score indicative of a likelihood of engagement with the third-party media stream, wherein the likelihood of engagement is indicative of interaction with the third-party media stream during the interactive preview session;

provide the interaction score to the application; and

perform an action based upon the interaction score, wherein the action is determined based on the interaction score.

23. The non-transitory computer-readable medium of claim 22 , wherein the interaction heuristic is based on a number or frequency of interaction events detected during presentation of the received third-party media stream.

Assignments (2)
CHANGE OF NAME Recorded Oct 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044567/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2016
From: NAHASS, PASHA; TOKSOZ, TUNA; BALARAMAN, ARUNKUMAR
To: GOOGLE INC.
Reel/Frame 040231/0878 →
Continuity (1)
Related Publication 20180130092A1 · May 10, 2018