IP Library Patent Application 14208464
Patent Application
App. No. 14/208,464

Dynamic Batching

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 None
App. No.
14/208,464
Abstract

An application running on a user device may communicate with a server application. The server application may track user actions on the device. The user actions may be transmitted from the user device to the server application using data packets. Each data packet may include header information and information regarding one or more user actions (the “batch”). The number of user actions to include in each batch may be determined by the OS, by the application, by the user, by the network, the number of actions in the batch, the size of the data in the batch, the time elapsed between the first and last action in the batch, or any suitable combination thereof. A communication server may recognize a batch data packet and divide it into individual data packets.

Claims (56)

1 . A system comprising:

one or more modules configured to:

identify a first plurality of user actions on a device;

for each first user action of the first plurality of user actions:

create a first data packet including data regarding the device and the first user action, and

transmit the first data packet to a server;

identify a second plurality of user actions on the device;

create a second data packet including data regarding the device and each second user action of the second plurality of user actions;

transmit the second data packet to the server.

2 . The system of claim 1 , wherein the data regarding the device includes a device identifier and an operating system version.

3 . The system of claim 1 , wherein each second user action of the second plurality of user actions occurs within a predetermined time span.

4 . The system of claim 1 , wherein the one or more modules are further configured to:

identify a third user action on the device; and

add the third user action to the second plurality of user actions based on a type of the third user action.

5 . The system of claim 4 , wherein the one or more modules are further configured to:

identify a fourth user action on the device; and

add the fourth user action to the first plurality of user actions based on a type of the fourth user action.

6 . The system of claim 1 , wherein the second plurality of user actions has a size and the size of the second plurality of user actions equals a predetermined size.

7 . The system of claim 6 , wherein the predetermined size is a measure of memory consumption.

8 . The system of claim 6 , wherein the predetermined size is a quantity of user actions.

9 . The system of claim 1 , wherein the one or more modules are further configured to:

identify a third user action on the device, the user action being an interaction with a first application;

add the third user action to the second plurality of user actions based on a configuration of the first application.

10 . The system of claim 9 , wherein the one or more modules are further configured to:

identify a fourth user action on the device, the user action being an interaction with a second application;

add the fourth user action to the second plurality of user actions based on a configuration of the second application.

11 . A method comprising:

identifying a first plurality of user actions on a device;

for each first user action of the first plurality of user actions:

creating a first data packet including data regarding the device and the first user action, and

transmitting the first data packet to a server;

identifying a second plurality of user actions on the device;

creating a second data packet including data regarding the device and each second user action of the second plurality of user actions;

transmitting the second data packet to the server.

12 . The method of claim 11 , wherein the data regarding the device includes a device identifier and an operating system version.

13 . The method of claim 11 , wherein each second user action of the second plurality of user actions occurs within a predetermined time span.

14 . The method of claim 11 , further comprising:

identifying a third user action on the device; and

adding the third user action to the second plurality of user actions based on a type of the third user action.

15 . The method of claim 14 , further comprising:

identifying a fourth user action on the device; and

adding the fourth user action to the first plurality of user actions based on a type of the fourth user action.

16 . The method of claim 11 , wherein the second plurality of user actions has a size and the size of the second plurality of user actions equals a predetermined size.

17 . The method of claim 16 , wherein the predetermined size is a measure of memory consumption.

18 . The method of claim 16 , wherein the predetermined size is a quantity of user actions.

19 . The method of claim 11 , further comprising:

identifying a third user action on the device, the user action being an interaction with a first application;

adding the third user action to the second plurality of user actions based on a configuration of the first application.

20 . A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

identifying a first plurality of user actions on a device;

for each first user action of the first plurality of user actions:

creating a first data packet including data regarding the device and the first user action, and

transmitting the first data packet to a server;

identifying a second plurality of user actions on the device;

creating a second data packet including data regarding the device and each second user action of the second plurality of user actions;

transmitting the second data packet to the server.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2015
From: EBAY INC.
To: PAYPAL, INC.
Reel/Frame 036171/0144 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2014
From: NICKENS, DAVID ANTHONY; JAYANTHI, MURTHY; SINGH, JOGENDAR; YANG, ZHENYIN; SHARMA, DEEPAK
To: EBAY INC.
Reel/Frame 032428/0842 →