IP Library › Granted Patent US 9,560,113
Granted Patent B2
US 9,560,113 · App. 13/912,939 · Granted Jan 31, 2017

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

Inventor: Taylor S. Gautier (San Francisco, CA)
H04L67/04G06F17/30896G06F17/30905H04L29/06H04L67/2804H04L67/2819H04L67/2842H04L67/306H04L67/42H04L69/24H04L69/329Y10S707/99931Y10S707/99932
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 9,560,113
App. No.
13/912,939
Granted
Jan 31, 2017
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 (51)

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

automatically determining a type of client device software that is associated with an electronic request received from a corresponding client device over a communications network;

automatically selecting one or more of a first plurality of selectable content items and one or more of a second plurality of selectable content items for said client device if said electronic request is associated with a first type of client device software, wherein said first plurality of selectable content items are configured for said first type but not a second type of client device software, and wherein said second plurality of selectable content items are configured for said first type and said second type of client device software;

automatically selecting said one or more of said second plurality of selectable content items if said electronic request is associated with said second type of client device software; and

transmitting via the communications network 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 first type of client device software is a first type of browser software and further wherein said second type of client device software is a second type of browser software.

7. The method as in claim 1 , wherein said first type of client device software is a first type of operating system and further wherein said second type of client device software is a second type of operating system.

8. The method as in claim 1 , wherein said first type of client device software is a first type of rendering software and further wherein said second type of client device software is a second type of rendering software.

9. The method as in claim 1 , wherein said selectable content items include web pages, images, text, audio, or video, or a combination thereof.

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

11. The method as in claim 1 , further comprising:

accessing stored content including said first plurality of selectable content items and said second plurality of selectable content items.

12. The method as in claim 11 , further including storing said stored content.

13. The method as in claim 1 , wherein the automatic selecting is further performed as a function of a communications bandwidth associated with said device.

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

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

a determination module configured to automatically determine a type of client device software associated with an electronic request received from a corresponding client device over said communications network;

a selection module configured to automatically select one or more of a first plurality of selectable content items and one or more of a second plurality of selectable content items for said client device if said electronic request is associated with a first type of client device software, wherein said first plurality of selectable content items are configured for said first type but not a second type of client device software, and wherein said second plurality of selectable content items are configured for said first type and said second type of client device software, and automatically select said one or more of said second plurality of selectable content items if said electronic request is associated with said second type of client device software; and

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

15. The system as in claim 14 , wherein said client device is a mobile device and further wherein said receiving and transmitting modules are further configured to communicate with a transceiver of said mobile device via said communications network.

16. The system as in claim 14 , wherein said first type of client device software is a first type of operating system software and further wherein said second type of client device software is a second type of operating system software.

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

18. The system as in claim 14 , wherein said at least one server is a server computer.

19. The system as in claim 14 , wherein said selectable content items include web pages, images, text, audio, or video, or a combination thereof.

20. The system as in claim 14 , wherein the at least one server further includes a storage interface module configured to access stored content that includes said first plurality and said second plurality of selectable content items.

21. The system as in claim 20 , wherein said storage interface module is further configured to store said stored content.

22. The system as in claim 14 , wherein the at least one server further includes a receiving module configured to receive said electronic request over said communications network from said corresponding client device.

23. The system as in claim 14 , wherein the selection module is further configured to automatically select as a function of a communications bandwidth associated with said device.

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

a processor;

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

automatically determine a type of client device software associated with an electronic request received from a corresponding client device over said communications network;

automatically select one or more of a first plurality of selectable content items and one or more of a second plurality of selectable content items for said client device if said electronic request is associated with a first type of client device software, wherein said first plurality of selectable content items are configured for said first type but not a second type of client device software, and wherein said second plurality of selectable content items are configured for said first type and said second type of client device software, and automatically select said one or more of said second plurality of selectable content items if said electronic request is associated with said second type of client device software; and

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

25. The system as in claim 24 wherein said first type of client device software is a first type of operating system software and further wherein said second type of client device software is a second type of operating system software.

26. The system as in claim 24 , wherein said sequence of instructions further causes said processor to access stored content including said first plurality of selectable content items and said second plurality of selectable content items.

27. The system as in claim 26 , wherein said sequence of instructions further causes said processor to store said stored content.

28. The system as in claim 24 , wherein said sequence of instructions further causes said processor to automatically select as a function of a communications bandwidth associated with said device.

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

automatically determine a type of client device software associated with an electronic request received from a corresponding client device over a communications network;

automatically select one or more of a first plurality of selectable content items and one or more of a second plurality of selectable content items for said client device if said electronic request is associated with said first type of client device software, wherein said first plurality of selectable content items are configured for said first type but not a second type of client device software, and wherein said second plurality of selectable content items are configured for said first type and said second type of client device software;

automatically select said one or more of said second plurality of selectable content items if said electronic request is associated with said second type of client device software; and

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

30. The non-transitory computer-readable medium as in claim 29 , wherein said first type of client device software is a first type of operating system software and further wherein said second type of client device software is a second type of operating system software.

31. The non-transitory computer-readable medium as in claim 29 , wherein said sequence of instructions further causes said processor to access stored content including said first plurality of selectable content items and said second plurality of selectable content items.

32. The non-transitory computer-readable medium as in claim 31 , wherein said sequence of instructions further causes said processor to store said stored content.

33. The non-transitory computer-readable medium as in claim 29 , wherein said sequence of instructions further causes said processor to automatically select as a function of a communications bandwidth associated with said device.

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 (6)
Continuation 13332066 · Dec 20, 2011
Continuation 12057711 · Mar 28, 2008
Continuation 11533312 · Sep 19, 2006
Continuation 09312586 · May 14, 1999
Provisional Application 60097333 · Aug 20, 1998
Related Publication 20130275499A1 · Oct 17, 2013