IP Library Granted Patent US 9,479,343
Granted Patent B2
US 9,479,343 · App. 14/929,651 · Granted Oct 25, 2016

Engine for processing content rules associated with locations in a page

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,479,343
App. No.
14/929,651
Granted
Oct 25, 2016
Kind
B2
Abstract

A device, system, and method are directed towards enabling a network application to process and respond to requests from client devices. A rules engine receives a page, evaluates a set of rules, and performs actions based on the rules. Actions may modify the page or perform other actions affecting the environment. A rules engine may also process rules prior to processing pages, in order to optimize subsequent evaluation of the rules.

Claims (55)

1. A computing device comprising:

a processor;

a non-transitory computer-readable storage medium for tangibly storing thereon program logic for execution by the processor, the program logic comprising:

receiving logic executed by the processor for receiving, over an electronic communications network, a client request for a response to be transmitted to a client computing device over the electronic communications network;

determining logic executed by the processor for determining a location of the client computing device, the determined location being used in at least one of a request for data to be retrieved from a network application and in making at least one modification to the response received from the network application;

requesting logic executed by the processor for requesting, from the network application and using a network application request, the data for responding to the received client request, the network application request comprising a request for the network application to retrieve data from a number of web services in accordance with user preferences;

receiving logic executed by the processor for receiving the response from the network application, the network application's response comprising the requested data in a common presentation used by the network application for each request received by the network application;

enhancing logic executed by the processor for enhancing the response received from the network application, the enhancing comprising generating an enhanced response specifically for use by the client computing device, the generating using the response received from the network application;

transmitting logic executed by the processor for transmitting the enhanced response to the client computing device over the electronic communications network in response to the client request, the transmitting causing the enhanced response to be displayed on a display at the client computing device.

2. The computing device of claim 1 , the enhancing logic further comprising:

changing logic executed by the processor for changing a first link contained in the common presentation to a second link, the first link for use in accessing a first content item and the second link for accessing a second content item other than the first content item, the modifying causing the client computing device to access the second content item instead of the first content item.

3. The computing device of claim 1 , the enhancing logic further comprising:

modifying logic executed by the processor for modifying the common presentation to include content selected based on the determined location of the client computing device.

4. The computing device of claim 1 , further comprising:

determining logic executed by the processor for determining a client application of the client computing device to receive the enhanced response; and

the enhancing logic further comprising generating logic executed by the processor for generating the enhanced response for use by the client application.

5. The computing device of claim 4 , the client application is one of an electronic mail client application, instant messaging client, browser application and social networking client application.

6. The computing device of claim 1 , the client computing device to which the enhanced response is transmitted is a first client computing device different from a second client computing device from which the client request is received, the client request comprising information for use in identifying the first client computing device.

7. The computing device of claim 1 , further comprising:

accessing logic executed by the processor for accessing a property realm data store to identify the network application to direct a request for the data for responding to the received client request.

8. The computing device of claim 1 , further comprising:

accessing logic executed by the processor for accessing a device realm data store to retrieve at least one device-specific capability to be used in generating, using the response received from the network application, the enhanced response specifically for use by the client computing device.

9. The computing device of claim 1 , further comprising:

managing logic executed by the processor for managing session information for use in managing a user's session with the network application;

the requesting logic further comprising transmitting the session information to the network application with a request for the data for responding to the received client request.

10. The computing device of claim 1 :

the receiving logic executed by the processor for receiving the response from the network application comprising receiving the network application's response in a web page comprising the requested data and having the common presentation used by the network application for each request received by the network application, the web page comprising a plurality of page elements;

the enhancing logic executed by the processor for enhancing the response received from the network application further comprising making a determination, for each page element of the plurality, whether or not to modify the page element in generating the enhanced response specifically for use by the client computing device.

11. A method comprising:

receiving, over an electronic communications network, a client request for a response to be transmitted to a client computing device over the electronic communications network;

determining a location of the client computing device, the determined location being used in at least one of a request for data to be retrieved from a network application and in making at least one modification to the response received from the network application;

requesting, from the network application and using a network application request, the data for responding to the received client request, the network application request comprising a request for the network application to retrieve data from a number of web services in accordance with user preferences;

receiving the response from the network application, the network application's response comprising the requested data in a common presentation used by the network application for each request received by the network application;

enhancing the response received from the network application, the enhancing comprising generating an enhanced response specifically for use by the client computing device, the generating using the response received from the network application;

transmitting the enhanced response to the client computing device over the electronic communications network in response to the client request, the transmitting causing the enhanced response to be displayed on a display at the client computing device.

12. The method of claim 11 , the enhancing further comprising:

changing a first link contained in the common presentation to a second link, the first link for use in accessing a first content item and the second link for accessing a second content item other than the first content item, the modifying causing the client computing device to access the second content item instead of the first content item.

13. The method of claim 11 , the enhancing further comprising:

modifying the common presentation to include content selected based on the determined location of the client computing device.

14. The method of claim 11 , further comprising:

determining a client application of the client computing device to receive the enhanced response; and

the enhancing further comprising generating the enhanced response for use by the client application.

15. The method of claim 14 , the client application is one of an electronic mail client application, instant messaging client, browser application and social networking client application.

16. The method of claim 11 , further comprising:

accessing a device realm data store to retrieve at least one device-specific capability to be used in generating, using the response received from the network application, the enhanced response specifically for use by the client computing device.

17. The method of claim 11 , further comprising:

managing session information for use in managing a user's session with the network application;

the requesting further comprising transmitting the session information to the network application with a request for the data for responding to the received client request.

18. A non-transitory computer-readable storage medium tangibly encoded with computer-executable instructions, that when executed by a processor associated with a computing device, performs a method comprising:

receiving, over an electronic communications network, a client request for a response to be transmitted to a client computing device over the electronic communications network;

determining a location of the client computing device, the determined location being used in at least one of a request for data to be retrieved from a network application and in making at least one modification to the response received from the network application;

requesting, from the network application and using a network application request, the data for responding to the received client request, the network application request comprising a request for the network application to retrieve data from a number of web services in accordance with user preferences;

receiving the response from the network application, the network application's response comprising the requested data in a common presentation used by the network application for each request received by the network application;

enhancing the response received from the network application, the enhancing comprising generating an enhanced response specifically for use by the client computing device, the generating using the response received from the network application;

transmitting logic executed by the processor for transmitting the enhanced response to the client computing device over the electronic communications network in response to the client request, the transmitting causing the enhanced response to be displayed on a display at the client computing device.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2021
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 055283/0483 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →