IP Library Granted Patent US 11,334,224
Granted Patent B2
US 11,334,224 · App. 16/261,402 · Granted May 17, 2022

Determining variations of single-page applications

Inventors: Whelan Jefferson Boyd (San Francisco, CA); Zachary Leach (San Francisco, CA); James Frazier Fox (San Francisco, CA)
Assignee: Optimizely, Inc.
G06F3/0483H04L67/146H04L67/32
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 11,334,224
App. No.
16/261,402
Granted
May 17, 2022
Kind
B2
Abstract

A single-page application of a content provider is associated with a smart page established on an experiment system to allow a variation test to be performed on the single-page application. The smart page is associated with a trigger that determines when one or more corresponding conditions of the single-page application should be evaluated. Responsive to one or more of the conditions of the single-page application being satisfied, either an original version of the single-page web page or a variant of the single-page web page may be displayed.

Claims (59)

1. A computer-implemented method of determining a variation of a web page to display on a client device, the method comprising:

displaying the web page received from a content provider on the client device, wherein the web page comprises a plurality of content items;

displaying, via a graphical user interface (GUI), a plurality of conditions to control a display of the variation of the web page, a trigger event defining when to evaluate the plurality of conditions for the web page, and a condition setting specifying how many of the plurality of conditions are to be met for the variation of the web page to be displayed,

wherein one or more of the plurality of conditions comprises conditional logic describing a state of the web page that causes the client device to select the variation of the web page, and

wherein the conditional logic comprises executable code to be executed by the client device to determine if the one or more of the plurality of conditions has been met;

receiving a user interaction, via the GUI, with the web page;

determining, by the client device, a content update of the web page responsive to the user interaction, the content update determined without the client device requesting the content update from the content provider; and

based on the trigger event being activated to cause at least one of the plurality of conditions to be evaluated and responsive to detecting that a uniform resource locator (URL) of the web page at least partially matches a URL string specified in the at least one of the plurality of conditions, displaying the variation of the web page,

wherein the variation of the web page comprises the determined content update, and

wherein the determined content update comprises an update to an attribute of at least one of the plurality of content items of the web page.

2. The method of claim 1 ,

wherein the GUI comprises a matching method for determining whether the URL of the web page at least partially matches the URL string specified in the at least one of the plurality of conditions.

3. The method of claim 1 , wherein the one or more of the plurality of conditions comprises an element condition that a graphical element of the plurality of content items of the web page matches a predetermined graphical element specified by the element condition.

4. The method of claim 1 ,

wherein the GUI comprises an input field configured to receive input providing the conditional logic.

5. The computer-implemented method of claim 1 , wherein a second condition of the plurality of conditions is selected from a second list of conditions via the GUI.

6. The computer-implemented method of claim 1 , further comprising:

receiving the web page from the content provider, the web page including code specifying instructions for the client device to request experiment instructions from an experiment system that is distinct from the content provider;

requesting the experiment instructions from the experiment system responsive to execution of the code; and

receiving the experiment instructions from the experiment system, the experiment instructions defining the one or more of the plurality of conditions.

7. The computer-implemented method of claim 6 , wherein the experiment instructions further define the trigger event that is indicative of when to evaluate whether the one or more of the plurality of conditions has been met.

8. The method of claim 7 , further comprising:

monitoring the web page for the activation of the trigger event; and

responsive to identifying the activation of the trigger event, begin monitoring the web page to detect the plurality of conditions.

9. The computer-implemented method of claim 8 , wherein the trigger event is execution of the code specifying instructions for the client device to request experiment instructions from an experiment system.

10. The computer-implemented method of claim 8 , wherein the trigger event is at least a portion of the URL of the web page changing.

11. The computer-implemented method of claim 8 , wherein the trigger event is execution of a function associated with the web page.

12. The computer-implemented method of claim 8 , wherein the trigger event is a change in a document object model (DOM) of the web page.

13. A computer system for determining a variation of a web page to display on the computer system, the computer system comprising:

a computer processor; and

a non-transitory computer-readable storage medium storing executable code, the code when executed by the computer processor causes the computer processor to perform operations comprising:

displaying the web page received from a content provider on the computer system, wherein the web page comprises a plurality of content items;

displaying, via a graphical user interface (GUI) a plurality of conditions to control a display of the variation of the web page, a trigger event defining when to evaluate the plurality of conditions for the web page, and a condition setting specifying how many of the plurality of conditions are to be met for the variation of the web page to be displayed,

wherein one or more of the plurality of conditions comprises conditional logic describing a state of the web page that causes the computer system to select the variation of the web page, and

wherein the conditional logic comprises executable code to be executed by the computer system to determine if the one or more of the plurality of conditions has been met;

receiving a user interaction, via the GUI, with the web page;

determining a content update of the web page responsive to the user interaction, the content update determined without the computer system requesting the content update from the content provider; and

based on the trigger event being activated to cause at least one of the plurality of conditions to be evaluated and responsive to detecting that a uniform resource locator (URL) of the web page at least partially matches a URL string specified in the at least one of the plurality of conditions, displaying the variation of the web page,

wherein the variation of the web page comprises the determined content update, and

wherein the determined content update comprises an update to an attribute of at least one of the plurality of content items of the web page.

14. The computer system of claim 13 , wherein operations further comprise:

receiving the web page from the content provider, the web page including code specifying instructions for the computer system to request experiment instructions from an experiment system that is distinct from the content provider;

requesting the experiment instructions from the experiment system responsive to execution of the code; and

receiving the experiment instructions from the experiment system, the experiment instructions defining the one or more of the plurality of conditions.

15. The computer system of claim 14 , wherein the experiment instructions further define the trigger event that is indicative of when to evaluate whether the one or more of the plurality of conditions has been met.

16. A computer program product comprising a non-transitory computer-readable storage medium storing executable code for determining a variation of a web page to display on a computer system, the code when executed by a computer processor causes the computer processor to perform operations comprising:

displaying the web page received from a content provider on the computer system, wherein the web page comprises a plurality of content items;

displaying, via a graphical user interface (GUI) a plurality of conditions to control a display of the variation of the web page, a trigger event defining when to evaluate the plurality of conditions for the web page, and a condition setting specifying how many of the plurality of conditions are to be met for the variation of the web page to be displayed,

wherein one or more of the plurality of conditions comprises conditional logic describing a state of the web page that causes the computer system to select the variation of the web page, and

wherein the conditional logic comprises executable code to be executed by the computer system to determine if the one or more of the plurality of conditions has been met;

receiving a user interaction, via the GUI, with the web page;

determining a content update of the web page responsive to the user interaction, the content update determined without the computer system requesting the content update from the content provider; and

based on the trigger event being activated to cause at least one of the plurality of conditions to be evaluated and responsive to detecting that a uniform resource locator (URL) of the web page at least partially matches a URL string specified in the at least one of the plurality of conditions, displaying the variation of the web page,

wherein the variation of the web page comprises the determined content update, and

wherein the determined content update comprises an update to an attribute of at least one of the plurality of content items of the web page.

17. The computer program product of claim 16 , wherein the operations further comprise:

receiving the web page from the content provider, the web page including code specifying instructions for the computer system to request experiment instructions from an experiment system that is distinct from the content provider;

requesting the experiment instructions from the experiment system responsive to execution of the code; and

receiving the experiment instructions from the experiment system, the experiment instructions defining the one or more of the plurality of conditions and a trigger event that is indicative of when to evaluate whether the attribute of the web page matches the one or more of the plurality of conditions.

Assignments (10)
TERMINATION AND RELEASE OF SECURITY INTEREST Recorded Oct 31, 2024
From: GOLUB CAPITAL MARKETS LLC
To: OPTIMIZELY NORTH AMERICA INC.
Reel/Frame 069285/0225 →
SECURITY INTEREST Recorded Oct 31, 2024
From: OPTIMIZELY NORTH AMERICA, INC.
To: GOLUB CAPITAL MARKETS LLC
Reel/Frame 069089/0588 →
MERGER Recorded Jul 3, 2023
From: OPTIMIZELY OPERATIONS HOLDCO INC.
To: OPTIMIZELY NORTH AMERICA INC.
Reel/Frame 064139/0628 →
MERGER Recorded Jun 20, 2023
From: OPTIMIZELY OPERATIONS INC.
To: OPTIMIZELY OPERATIONS HOLDCO INC.
Reel/Frame 063995/0874 →
CHANGE OF NAME Recorded Jun 8, 2023
From: OPTIMIZELY, INC.
To: OPTIMIZELY OPERATIONS INC.
Reel/Frame 063939/0656 →
CORRECTIVE ASSIGNMENT TO CORRECT THE UNDERLYING DOCUMENT PREVIOUSLY RECORDED ON REEL 056588 FRAME 0075. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL. Recorded Jul 22, 2021
From: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
To: OPTIMIZELY, INC.
Reel/Frame 056958/0064 →
PATENT SECURITY AGREEMENT Recorded Jul 6, 2021
From: OPTIMIZELY, INC.
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 056768/0917 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Jun 14, 2021
From: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
To: OPTIMIZELY, INC.
Reel/Frame 056588/0075 →
SECURITY INTEREST Recorded Oct 19, 2020
From: OPTIMIZELY, INC.
To: HERCULES CAPITAL, INC., AS COLLATERAL AGENT
Reel/Frame 054093/0019 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2019
From: BOYD, WHELAN JEFFERSON; LEACH, ZACHARY; FOX, JAMES FRAZIER
To: OPTIMIZELY, INC.
Reel/Frame 048193/0989 →