IP Library › Granted Patent US 8,484,315
Granted Patent B2
US 8,484,315 · App. 13/332,066 · Granted Jul 9, 2013

Optimizing server delivery of content by selective inclusion of optional data based on optimization criteria

Inventor: Taylor S. Gautier (Oakland, CA)
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 8,484,315
App. No.
13/332,066
Granted
Jul 9, 2013
Kind
B2
Abstract

Optimization constraints are used to select an appropriate content item from an available group of content items which are ordered in a specific manner to facilitate the proper selection of the content item, even if the exact item desired is not present. The server is then able to insert the selected content item into the outgoing content page requested by the client. The optimization constraints can be, but are not limited to, anyone of the following: communication channel performance (bandwidth), client operating system, client processor, client display capabilities, client installed software (video or audio codecs for example), and/or user preferences. A software product and method enable selective delivery of content to client devices of varying performance characteristics, including varying bandwidth, by selective filtering and inclusion of markup language content using tags demarcating optional content. An optimization constraint is used to select one of the items.

Claims (45)

1. A method of optimizing content delivery to a client device, said method comprising:

storing content that includes a first plurality of selectable content items and a second plurality of selectable content items, wherein said first plurality of selectable content items are configured for a first subset of a plurality of classes of client devices but not a second subset of said plurality of classes of client devices, and wherein said second plurality of selectable content items are configured for said first subset of classes of client devices and said second subset of classes of client devices, said first subset of classes of client devices having different performance capabilities than said second subset of classes of client devices; and

in response to a request received from a client device over a communications network, said client device belonging to one of said plurality of classes of client devices, performing:

determining a class of client devices to which said client device belongs;

automatically selecting said one or more of said first plurality of selectable content items and one or more of said second plurality of selectable content items for said client device if said client device belongs to said first subset of said plurality of classes of client devices;

automatically selecting said one or more of said second plurality of selectable content items if said client device belongs to said second subset of said plurality of classes of client devices; and

transmitting said selectable content items having been selected to said client device.

2. The method as in claim 1 , wherein said first plurality of selectable content items comprise a plurality of non-optional selectable content items.

3. The method as in claim 2 , wherein said transmitting includes sending one or more of said plurality of non-optional selectable content items to said client device.

4. The method as in claim 2 , wherein said second plurality of selectable content items comprise a plurality of optional selectable content items.

5. The method as in claim 4 , wherein said transmitting includes sending one or more of said plurality of non-optional selectable content items to said client device and sending one or more of said plurality of optional selectable content items to said client device.

6. The method as in claim 1 , wherein said performance capabilities comprise a type of client device operating system.

7. The method as in claim 1 , wherein said determining includes (i) employing one or more selection rules mapping said plurality of classes of client devices to said plurality of selectable content items and (ii) selecting which of said plurality of selectable content items to deliver to said client device based on said class of said client device determined and said one or more selection rules.

8. The method as in claim 1 , wherein said client device is a mobile device.

9. The method as in claim 1 , wherein said classes of client devices are classes of mobile devices.

10. The method as in claim 1 , wherein said first subset of said plurality of classes of client devices includes higher performance client devices than said second subset of said plurality of classes of client devices.

11. A system for optimizing content delivery, said system comprising:

a server communicating with a plurality of client devices over a communications network, said server including:

a storage interface module configured to access storage for storing content that includes a first plurality of selectable content items and a second plurality of selectable content items, said first plurality of selectable content items being configured for a first subset of a plurality of classes of client devices but not a second subset of said plurality of classes of client devices, said second plurality of selectable content items being configured for said first subset of classes of client devices and said second subset of classes of client devices, said first subset of classes of client devices having different performance capabilities than said second subset of classes of client devices;

a receiving module configured to receive a request over said communications network from a client device belonging to one of a plurality of classes of client devices;

a determination module configured to determine, in response to said request received, a class of client devices to which said client device belongs;

a selection module configured to automatically select said one or more of said first plurality of selectable content items and one or more of said second plurality of selectable content items for said client device if said client device belongs to said first subset of said plurality of classes of client devices, and further configured to automatically select said one or more of said second plurality of selectable content items if said client device belongs to said second subset of said plurality of classes of client devices; and

a transmitting module configured to transmit said selectable content items having been selected to said client device over said communications network.

12. The system as in claim 11 , wherein said client device is a mobile device and said plurality of classes of client devices are associated with different performance capabilities, and further wherein said receiving and transmitting modules are further configured to communicate with a transceiver of said mobile device via said communications network.

13. The system as in claim 11 , wherein said classes of client devices are classes of mobile devices.

14. The system as in claim 11 , further comprising a database coupled to said server, wherein said database is configured to store said content accessible by said server.

15. The system as in claim 11 , wherein said server is a server computer.

16. The method as in claim 11 , wherein said determination module is further configured to (i) employ one or more selection rules mapping said plurality of classes of client devices to said plurality of selectable content items and (ii) select which of said plurality of selectable content items to deliver to said client device based on said class of said client device determined and said one or more selection rules.

17. A server for optimizing content delivery, said server configured to communicate with a plurality of client devices over a communications network, said server comprising:

a processor;

a computer-readable medium having encoded thereon a sequence of instructions which, when executed by said processor, causes said processor to:

access storage for storing content that includes a first plurality of selectable content items and a second plurality of selectable content items, said first plurality of selectable content items being configured for a first subset of a plurality of classes of client devices but not a second subset of said plurality of classes of client devices, said second plurality of selectable content items being configured for said first subset of classes of client devices and said second subset of classes of client devices, said first subset of classes of client devices having different performance capabilities than said second subset of classes of client devices;

receive a request over said communications network from a client device belonging to one of a plurality of classes of client devices;

determine, in response to said request received, a class of client devices to which said client device belongs;

automatically select said one or more of said first plurality of selectable content items and one or more of said second plurality of selectable content items for said client device if said client device belongs to said first subset of said plurality of classes of client devices, and further configured to automatically select said one or more of said second plurality of selectable content items if said client device belongs to said second subset of said plurality of classes of client devices, and

transmit said selectable content items having been selected to said client device over said communications network.

18. The server as in claim 17 wherein to determine includes said processor being further caused to (i) employ one or more selection rules mapping said plurality of classes of client devices to said plurality of selectable content items and (ii) select which of said plurality of selectable content items to deliver to said client device based on said class of said client device determined and said one or more selection rules.

19. A non-transitory computer-readable medium having encoded thereon a sequence of instructions which, when executed by a processor, causes said processor to:

store content that includes a first plurality of selectable content items and a second plurality of selectable content items, wherein said first plurality of selectable content items are configured for a first subset of a plurality of classes of client devices but not a second subset of said plurality of classes of client devices, and wherein said second plurality of selectable content items are configured for said first subset of classes of client devices and said second subset of classes of client devices, said first subset of classes of client devices having different performance capabilities from said second subset of classes of client devices; and

in response to a request received from a client device over a communications network, said client device belonging to one of said plurality of classes of client devices, said sequence of instructions further causes said processor to:

determine a class of client devices to which said client device belongs;

automatically select said one or more of said first plurality of selectable content items and one or more of said second plurality of selectable content items for said client device if said client device belongs to said first subset of said plurality of classes of client devices;

automatically select said one or more of said second plurality of selectable content items if said client device belongs to said second subset of said plurality of classes of client devices; and

transmit said selectable content items having been selected to said client device.

20. The non-transitory computer-readable medium as in claim 19 , wherein to determine includes said processor being further caused to (i) employ one or more selection rules mapping said plurality of classes of client devices to said plurality of selectable content items and (ii) select which of said plurality of selectable content items to deliver to said client device based on said class of said client device determined and said one or more selection rules.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2017
From: IDL CONCEPTS, LLC
To: SILVER MAPLE, SERIES 86 OF ALLIED SECURITY TRUST I
Reel/Frame 041002/0811 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2015
From: H-CHIP HOLDINGS, LLC
To: IDL CONCEPTS, LLC
Reel/Frame 034829/0404 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2014
From: GAUTIER, TAYLOR S
To: GEOWORKS CORPORATION
Reel/Frame 034145/0663 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2014
From: GEOWORKS CORPORATION
To: MOUNT HAMILTON PARTNERS, LLC
Reel/Frame 034145/0805 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2013
From: MOUNT HAMILTON PARTNERS, LLC
To: H-CHIP HOLDINGS, LLC
Reel/Frame 031743/0234 →
Continuity (5)
Continuation 12057711 · Mar 28, 2008
Continuation 11533312 · Sep 19, 2006
Continuation 09312586 · May 14, 1999
Provisional Application 60097333 · Aug 20, 1998
Related Publication 20120096117A1 · Apr 19, 2012