IP Library Granted Patent US 11,481,199
Granted Patent B2
US 11,481,199 · App. 17/063,270 · Granted Oct 25, 2022

Dynamic code management

Inventors: Grant Lawrence Miller (Los Angeles, CA); Marc Campbell (Los Angeles, CA)
Assignee: LIVEPERSON, INC.
G06F8/447G06F16/958G06F16/9577G06F16/972
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,481,199
App. No.
17/063,270
Granted
Oct 25, 2022
Kind
B2
Abstract

Systems and methods for performing dynamic code management, such as dynamic management of JavaScript tags in webpages or code segments in native applications, are disclosed. A user device loading a web or native application can access a factor, such as a user device-specific attribute or a piece of content of the webpage or native application being loaded. That factor can be applied to a rule that is evaluated (e.g., by the user device or a code server) to select one or more desired segments of code (e.g., JavaScript tags or native application code) to be executed by the user device from a pool of available code (e.g., pre-embedded code or dynamically injected code).

Claims (44)

1. A computer-implemented method, comprising:

accessing a webpage, wherein the webpage includes a static tag;

executing the static tag, wherein execution of the static tag causes dynamic code to be injected into the webpage, wherein the dynamic code includes enabling code and available code, and wherein the available code includes multiple pieces of web code that are executable while the webpage is being loaded;

accessing a factor, wherein the factor is accessed using the enabling code, and wherein the factor corresponds to visible and non-visible information included in the webpage;

using the factor to identify a rule, wherein the rule corresponds to one or more pieces of web code from the multiple pieces of web code that are executable while the webpage is being loaded;

selecting a piece of web code from the one or more pieces of web code, wherein the piece of web code is selected based on the factor and the rule; and

dynamically executing a portion of the dynamic code, wherein the portion of the dynamic code includes the piece of web code, and wherein the portion of dynamic code is dynamically executed while the webpage is being loaded.

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

transmitting the factor, wherein when the factor is received by a code server, the code server identifies the rule based on the factor.

3. The computer-implemented method of claim 1 , wherein the piece of web code is selected based on application of the factor to the rule.

4. The computer-implemented method of claim 1 , wherein the static tag includes the factor and the rule.

5. The computer-implemented method of claim 1 , wherein the piece of web code is a JavaScript tag.

6. The computer-implemented method of claim 1 , wherein the factor includes customer identification information, and wherein the piece of web code is selected based on the customer identification information.

7. The computer-implemented method of claim 1 , wherein the multiple pieces of web code correspond to different versions of a web application executable on the webpage.

8. A system, comprising:

one or more processors; and

memory storing thereon instructions that, as a result of being executed by the one or more processors, cause the system to:

access a webpage, wherein the webpage includes a static tag;

execute the static tag, wherein execution of the static tag causes dynamic code to be injected into the webpage, wherein the dynamic code includes enabling code and available code, and wherein the available code includes multiple pieces of web code that are executable while the webpage is being loaded;

access a factor, wherein the factor is accessed using the enabling code, and wherein the factor corresponds to visible and non-visible information included in the webpage;

use the factor to identify a rule, wherein the rule corresponds to one or more pieces of web code from the multiple pieces of web code that are executable while the webpage is being loaded;

select a piece of web code from the one or more pieces of web code, wherein the piece of web code is selected based on the factor and the rule; and

dynamically execute a portion of the dynamic code, wherein the portion of the dynamic code includes the piece of web code, and wherein the portion of dynamic code is dynamically executed while the webpage is being loaded.

9. The system of claim 8 , wherein the instructions further cause the system to:

transmit the factor, wherein when the factor is received by a code server, the code server evaluates the rule based on the factor.

10. The system of claim 8 , wherein the piece of web code is selected based on application of the factor to the rule.

11. The system of claim 8 , wherein the static tag includes the factor and the rule.

12. The system of claim 8 , wherein the piece of web code is a JavaScript tag.

13. The system of claim 8 , wherein the factor includes customer identification information, and wherein the piece of web code is selected based on the customer identification information.

14. The system of claim 8 , wherein the multiple pieces of web code correspond to different versions of a web application executable on the webpage.

15. A non-transitory, computer-readable storage medium storing thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to:

access a webpage, wherein the webpage includes a static tag;

execute the static tag, wherein execution of the static tag causes dynamic code to be injected into the webpage, wherein the dynamic code includes enabling code and available code, and wherein the available code includes multiple pieces of web code that are executable while the webpage is being loaded;

access a factor, wherein the factor is accessed using the enabling code, and wherein the factor corresponds to visible and non-visible information included in the webpage;

use the factor to identify a rule, wherein the rule corresponds to one or more pieces of web code from the multiple pieces of web code that are executable while the webpage is being loaded;

select a piece of web code from the one or more pieces of web code, wherein the piece of web code is selected based on the factor and the rule; and

dynamically execute a portion of the dynamic code, wherein the portion of the dynamic code includes the piece of web code, and wherein the portion of dynamic code is dynamically executed while the webpage is being loaded.

16. The non-transitory, computer-readable storage medium of claim 15 , wherein the executable instructions further cause the computer system to:

transmit the factor, wherein when the factor is received by a code server, the code server evaluates the rule based on the factor.

17. The non-transitory, computer-readable storage medium of claim 15 , wherein the piece of web code is selected based on application of the factor to the rule.

18. The non-transitory, computer-readable storage medium of claim 15 , wherein the static tag includes the factor and the rule.

19. The non-transitory, computer-readable storage medium of claim 15 , wherein the piece of web code is a JavaScript tag.

20. The non-transitory, computer-readable storage medium of claim 15 , wherein the factor includes customer identification information, and wherein the piece of web code is selected based on the customer identification information.

21. The non-transitory, computer-readable storage medium of claim 15 , wherein the multiple pieces of web code correspond to different versions of a web application executable on the webpage.

Assignments (3)
SECURITY INTEREST Recorded Sep 13, 2025
From: LIVEPERSON, INC.; VOICEBASE, INC.; LIVEPERSON AUTOMOTIVE, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 072891/0627 →
PATENT SECURITY AGREEMENT Recorded Jun 3, 2024
From: LIVEPERSON, INC.; LIVEPERSON AUTOMOTIVE, LLC; VOICEBASE, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 067607/0073 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2022
From: MILLER, GRANT LAWRENCE; CAMPBELL, MARC
To: LIVEPERSON, INC.
Reel/Frame 059265/0569 →
Continuity (4)
Continuation 15595492 · May 15, 2017
Continuation 14849396 · Sep 9, 2015
Provisional Application 62048022 · Sep 9, 2014
Related Publication 20210157557A1 · May 27, 2021
Cited By (1)
US 12,210,856