IP Library Granted Patent US 10,558,948
Granted Patent B2
US 10,558,948 · App. 12/211,078 · Granted Feb 11, 2020

Targeted instant messenger behaviors employed for optimization of a client

Inventors: Richard Sinn (Milpitas, CA); Takchun Tse (Sunnyvale, CA); Bing Yuan (Pacifica, CA); Kingston Choy (Fremont, CA)
Assignee: OATH INC.
G06Q10/10G06F8/61G06F8/658G06F8/71
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,558,948
App. No.
12/211,078
Granted
Feb 11, 2020
Kind
B2
Abstract

A system and method are disclosed for selectively updating software and sending other information, such as advertisements, to an IM client device based on client-side behavior vectors collected from the IM client. Behavior vectors are information related to a software component, such as IM client messenger, client device, and a user of the client device, including, but not limited to core software, optional software, advertisements displayed, usage data, performance data, and client meta data.

Claims (63)

1. A client device comprising:

a processor; and

a storage medium for tangibly storing thereon program logic for execution by the processor, the stored program logic comprising:

collecting logic executed by the processor for collecting, at the client device, behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application, advertisements running on the client device and statistics about the advertisements, and client device information, the client device information comprising a physical location of the client device;

sending logic executed by the processor for sending a message comprising the collected behavior vectors to a remote update service of a server computing device, the collected behavior vectors including the client device information comprising the physical location of the client device being provided for use, by the remote update service of the server computing device, to selectively determine updates for the client device, the updates comprising one or more software updates, for the application, determined by the remote update service of the server computing device using the behavior vectors comprising the information about the core and optional application program components installed on the client device and the client device information, the updates further comprising updated advertisements;

receiving logic executed by the processor for receiving, from the remote update service of the server computing device, the updates determined by the remote update service of the server computing device using the behavior vectors, the updates comprising the one or more software updates for the application and updated advertisements; and

installing logic executed by the processor for installing the received one or more software updates on the client device.

2. The client device of claim 1 , the stored program logic further comprising:

displaying logic executed by the processor for displaying the received advertisement on a display of the client device.

3. The client device of claim 1 , the sending logic executed by the processor for sending further comprising sending usage data for the application included in the behavior vectors, the usage data being provided for use in selectively determining the updated advertisements.

4. The client device of claim 1 , wherein the behavior vectors include information about one or more of usage data, client device performance data, and client device meta data.

5. The client device of claim 1 , wherein the behavior are related to an instant messaging system and the application is an instant messaging application.

6. A system comprising:

an update system server comprising a processor and a storage medium for tangibly storing thereon program logic for execution by the processor, the stored program logic comprising:

receiving logic executed by the processor for receiving, from a client device over a computer network, a message comprising behavior vectors, the behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application and statistics about the advertisements, advertisements running on the client device, and client device information, the client device information comprising a physical location of the client device; and

providing logic executed by the processor for selectively providing download information to the client device over the computer network, comprising:

determining logic executed by the processor for determining updates for the client device using the behavior vectors comprising the information about the core and optional application program components installed on the client device and the client device information, the updates comprising one or more software updates for the application, determined using the information about the core and optional application program components installed on the client device, the updates further comprising updated advertisements determined using the behavior vectors;

generating logic executed by the processor for generating download information comprising the determined updates for the client device; and

sending logic executed by the processor for sending the download information to the client device over the computer network.

7. The system of claim 6 , the stored program logic further comprising:

ad servicing logic executed by the processor for receiving the behavior vectors and selectively providing updated advertisements for download to the client device; and

data mining logic executed by the processor for mining the behavior vectors to extract data patterns for use with the selection and download rules.

8. The system of claim 6 , wherein the behavior vectors include information about one or more of client device performance data and client device meta data.

9. The system of claim 6 , receiving logic executed by the processor further comprising receiving logic executed by the processor for receiving usage data for the application included in the behavior vectors, the generating logic executed by the processor using the usage data in generating the download information identifying the updated advertisements.

10. The system of claim 6 , wherein the behavior vectors are associated with an instant messaging system, and the application is an instant messaging application.

11. The system of claim 6 , the stored program logic further comprising:

analyzing logic executed by the processor for analyzing the received behavior vectors including usage patterns of software to be updated to identify a time period when availability for updating the software is high compared to another time period; and

providing logic executed by the processor for providing the one or more software updates for the application and updated advertisements to the client device based on the determined update availability.

12. The system of claim 6 , the application comprising office software applications comprising a word processing application and a spreadsheet application and the one or more software updates comprising one or more software updates to the office software applications comprising the word processing application and the spreadsheet application.

13. The system of claim 6 , the sending instructing the client device to install the download information.

14. A method comprising:

receiving, by an update system server and from a client device over a computer network, a message comprising behavior vectors, the behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application and statistics about the advertisements, advertisements running on the client device, and client device information, the client device information comprising a physical location of the client device;

selectively providing, by the update system server, download information to the client device over the computer network, comprising:

determining updates for the client device using the behavior vectors comprising the information about the core and optional application program components installed on the client device and the client device information, the updates comprising one or more software updates for the application, determined using the information about the core and optional application program components installed on the client device, the updates further comprising updated advertisements determined using the behavior vectors;

generating, using the behavior vectors, download information comprising the determined updates for the client device; and

sending the download information to the client device over the computer network.

15. The method of claim 14 , further comprising:

storing behavior vectors in a data warehouse;

mining the behavior vectors for data patterns; and

applying the selection and download rules for the data patterns.

16. The method of claim 14 , the receiving further comprising receiving usage data for the application included in the behavior vectors, the generating further comprising using the usage data in generating the download information identifying the updated advertisements.

17. The method of claim 14 , wherein the software updates include less than all software updates available for download to the client.

18. The method of claim 14 , the sending instructing the client device to install the download information.

19. A non-transitory computer readable storage medium tangibly storing computer program instructions capable of being executed by a computer processor, the computer program instructions defining code for:

collecting, at a client device, behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application, advertisements running on the client device and statistics about the advertisements, and client device information, the client device information comprising a physical location of the client device;

sending, by the client device, a message comprising the collected behavior vectors to a remote update service, the collected behavior vectors including the client device information comprising the physical location of the client device being provided for use, by the remote update service of the server computing device, to selectively determine updates for the client device, the updates comprising one or more software updates, for the application, determined by the remote update service of the server computing device using the behavior vectors comprising the information about the core and optional application program components installed on the client device and the client device information, the updates further comprising updated advertisements;

receiving, from the remote update service of the server computing device, the updates comprising the one or more software updates determined by the remote update service of the server computing device using the behavior vectors, the updates for the application and updated advertisements; and

installing the received one or more software updates on the client device.

20. The computer readable storage medium of claim 19 , wherein the behavior vectors are associated with an instant messaging system and the application is an instant messaging application.

21. The processor readable storage medium of claim 19 , wherein the behavior vectors include information about one or more of usage data, client device performance data, and client device meta data.

22. The processor readable storage medium of claim 19 , wherein the behavior vectors are sent to a data store for use by a mining component to extract data patterns.

23. A method comprising:

collecting, at a client device, behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application, advertisements running on the client device and statistics about the advertisements, and client device information, the client device information comprising a physical location of the client device;

sending, by the client device, a message comprising the collected behavior vectors to a remote update service of a server computing device, the collected behavior vectors including the client device information comprising the physical location of the client device being provided for use, by the remote update service of the server computing device, to selectively determine updates for the client device, the updates comprising one or more software updates, for the application, determined by the remote update service of the server computing device using the behavior vectors comprising the information about the core and optional application program components installed on the client device and the client device information, the updates further comprising updated advertisements;

receiving, by the client device from the remote update service of the server computing device, the updates determined by the remote update service of the server computing device using the behavior vectors, the updates comprising the one or more software updates for the application and updated advertisements; and

installing, by the client device, the received one or more software updates on the client device.

24. A non-transitory computer readable storage medium tangibly storing computer program instructions capable of being executed by a computer processor of an update system server, the computer program instructions defining code for:

receiving, from a client device over a computer network, a message comprising behavior vectors, the behavior vectors comprising user behavior information representing a user's past use of an application, information about core application program components installed on the client device for the application, information about optional application program components installed on the client device for the application and statistics about the advertisements, advertisements running on the client device, and client device information, the client device information comprising a physical location of the client device;

selectively providing download information to the client device over the computer network, comprising:

determining updates for the client device using the behavior vectors comprising the information about the core and optional application program components and the client device information, the updates comprising one or more software updates for the application, determined using the information about the core and optional application program components installed on the client device, the updates further comprising updated advertisements determined using the behavior vectors;

generating download information comprising the determined updates for the client device; and

sending the download information to the client device over the computer network.

25. The non-transitory computer readable storage medium of claim 24 , the sending instructing the client device to install the download information.

Assignments (6)
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Sep 29, 2022
From: YAHOO ASSETS LLC
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 061571/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: YAHOO AD TECH LLC (FORMERLY VERIZON MEDIA INC.)
To: YAHOO ASSETS LLC
Reel/Frame 058982/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2008
From: SINN, RICHARD; TSE, TAKCHUN; YUAN, BING; CHOY, KINGSTON
To: YAHOO! INC.
Reel/Frame 021566/0926 →
Continuity (1)
Related Publication 20100070962A1 · Mar 18, 2010