US20190332648A1 - Method and apparatus for delivering third party content to webpages and tracking interactive content - Google Patents
Method and apparatus for delivering third party content to webpages and tracking interactive content Download PDFInfo
- Publication number
- US20190332648A1 US20190332648A1 US16/396,154 US201916396154A US2019332648A1 US 20190332648 A1 US20190332648 A1 US 20190332648A1 US 201916396154 A US201916396154 A US 201916396154A US 2019332648 A1 US2019332648 A1 US 2019332648A1
- Authority
- US
- United States
- Prior art keywords
- content
- digital content
- layout
- designated website
- website
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
- 
        - G06F17/2247—
 
- 
        - H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
 
- 
        - G06F17/212—
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
 
- 
        - G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
 
- 
        - H04L67/20—
 
- 
        - H04L67/22—
 
- 
        - H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
 
- 
        - H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
 
Definitions
- the embodiments of the invention generally relate to a method and apparatus for delivering third party content to webpages and tracking interactive content.
- a method and apparatus for building and delivering a HTML (Hypertext Markup Language) construction representing digital content layout are disclosed herein.
- the method includes constructing the digital content layout by selecting a delivery method, selecting subwidgets, and using the selected subwidgets to build and represent the digital content layout.
- the method further includes integrating the digital content layout with a designated website using a unique number that is mapped to a specific website identifier (SPID) that identifies the designated website.
- SPID website identifies the designated website.
- the method also includes delivering third-party content to the designated website by maintaining a Javascript Object Notation (JSON) map for each web page on the designated website and streaming the JSON map for the web page on to a browser upon initial request.
- the method includes tracking interactive content on the designated website by capturing interaction with content in the digital content layout, wherein the interaction with content includes content loads and/or clicks on.
- JSON Javascript Object Notation
- FIG. 1 shows an exemplary network in which one embodiment of the invention may be implemented.
- FIG. 2 illustrates an example of a basic configuration for a computing device on which one embodiment of the invention may be implemented.
- FIG. 3 is a flow chart in accordance with one embodiment of the invention.
- FIG. 4A illustrates a user screen to select a build process in accordance with one embodiment of the invention.
- FIG. 4B illustrates an exemplary container widget with several subwidgets in accordance with one embodiment of the invention.
- FIGS. 5-11 show exemplary successive steps in building a display experience in accordance with one embodiment of the invention.
- FIG. 12 shows the exemplary HTML output for the display image shown in FIG. 11 in accordance with one embodiment of the invention.
- FIG. 13 shows exemplary HTML source code of a web page where a unique page identifier is displayed in accordance with one embodiment of the invention.
- FIG. 14 illustrates an exemplary web page with inline content in accordance with one embodiment of the invention.
- FIG. 15 illustrates an exemplary web page with a “call to action” in accordance with one embodiment of the invention.
- FIGS. 16A and 16B illustrate exemplary web pages with overlay in accordance with one embodiment of the invention.
- FIG. 17 is a flow chart that generally outlines the operation of an overlay method in accordance with one embodiment of the invention.
- FIG. 18 shows an exemplary JSON (JavaScript Object Notation) for a web page in accordance with one embodiment of the invention.
- JSON JavaScript Object Notation
- FIG. 19 illustrates an example of a first widget JSON map being delivered to a web page in accordance with one embodiment of the invention.
- FIG. 20 shows an example of a second widget JSON map being delivered to a web page in accordance with one embodiment of the invention.
- FIG. 21 shows an example of multiple CSS files being streamed to the web page in accordance with one embodiment of the invention.
- FIG. 22 shows exemplary identifiers in accordance with one embodiment of the invention.
- FIG. 23 shows exemplary classifiers in accordance with one embodiment of the invention.
- FIG. 24 illustrates exemplary values in accordance with one embodiment of the invention.
- FIG. 25 is a flow chart in accordance with one embodiment of the invention.
- source computing devices refer to the device that initiates the communication, or that first composes and sends a message
- destination computing devices refer to the device that receives the message.
- a destination computing device may at some point during a session act as a sender of messages, and a source computing device can at times act as the recipient of messages.
- systems and methods of the invention may be embodied in traditional source computing devices as well as destination computing devices, regardless of their respective hardware, software or network configurations. Indeed, the systems and methods of the invention may be practiced in a variety of environments that require or desire the performance enhancements provided by the invention. These enhancements are set forth in greater detail in subsequent paragraphs.
- FIG. 1 shows an exemplary network 100 in which one embodiment of the invention may be implemented.
- the exemplary network 100 includes several computing devices 110 communicating with one another over a network 120 , such as the Internet, as represented by a cloud.
- Network 120 may include many well-known components (such as routers, gateways, hubs, etc.) to allow the computing devices 110 to communicate via wired and/or wireless media.
- FIG. 2 illustrates an example of a basic configuration for a computing device 200 on which one embodiment of the invention may be implemented.
- Computing device 200 typically includes at least one processing unit 205 and memory 210 .
- the memory 210 may be volatile (such as RAM) 215 , non-volatile (such as ROM or flash memory) 220 or some combination of the two.
- computing device 200 may also have additional features/functionality.
- computing device 200 may also include additional storage (removable 225 and/or non-removable 230 ) including, but not limited to, magnetic or optical disks or tape.
- Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data.
- Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to stored the desired information and which can be accessed by computing device 200 . Any such computer storage media may be part of computing device 200 .
- Computing device 200 may also contain one or more communication devices 235 that allow the device to communicate with other devices.
- a communication connection is an example of a communication medium.
- Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
- communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
- the term computer readable media as used herein includes both storage media and communication media.
- Computing device 200 may also have one or more input devices 240 such as a keyboard, mouse, pen, voice input device, touch input device, etc.
- Output devices 240 such as a display 250 , speakers, a printer, etc. may also be included. All these devices are well known in the art and need not be discussed at length here.
- the process of constructing complex and interactive web pages is difficult and requires web design and web development skills.
- the widget paradigm simplifies this process, removing the need for design and development skills by programmatically handling all HTML creation and manipulation to deliver HTML content that is responsive, adaptive and accessible.
- FIG. 3 is a block diagram 300 showing the general steps of the widget paradigm in accordance with one embodiment.
- Block 305 involves HTML construction using the widget paradigm.
- Block 310 involves integration with web sites.
- Block 315 involves delivering third-party content to web pages.
- Block 320 involves tracking interactive content.
- pages and interactive content constructed in the inventive system utilize the widget paradigm which is a general framework for constructing HTML in a scalable and repeatable way using building blocks or widgets.
- the widget paradigm generally consists of various widgets which can be seamlessly built into and on top of one another to create a variety of page layouts and experiences.
- the building blocks of the widget paradigm could include:
- the core methods of delivery include:
- the page or experience creation process begins by selecting the method of delivery or layout.
- the below example showcases the build process for inline content.
- the user can begin to design the contents of the layout, as shown in FIG. 4A .
- Selecting the row 402 would trigger the option to select what should go in the row.
- Exemplary subwidgets illustrated in FIG. 4B include Image 405 , Slider 410 , Video 415 , Product Slider 420 , Product Comparison 425 , etc.
- asset subwidgets there could be two different kinds of subwidgets, including: asset subwidgets and container subwidgets.
- Asset Subwidgets are directly associated with media, data, or a URL to render content.
- Container subwidgets include image containers, text or HTML containers, video players, document viewers, etc. The subwidgets handle the HTML construction and properties in order to render the assets or media appropriately.
- the contents can be used as the canvas for overlay based CTAs.
- container widgets can be rendered within container widgets to make unique and interactive layouts and experiences: inline grid layouts, CTAs, overlays on top of images, etc.
- the overlay method can be utilized to display CTAs on an image which is within an inline layout, as shown in successive steps illustrated in exemplary FIGS. 5-12 .
- FIG. 5 illustrates an exemplary Inline layout that showcases a featured pairs of headphones using an image 505 .
- FIG. 6 illustrates that within the Image widget settings, the user can add an overlay (such as Text 605 or Callout(s) 610 to the image.
- FIG. 7 the user is presented with a canvas 710 to place CTAs on the headphones.
- the user can select from a variety of subwidgets (e.g., shown as elements 405 , 410 , 415 , 420 , and 425 in FIG. 4 ) to show behind the CTA.
- the selected module i.e., a video subwidget 910 in the example shown in FIG. 9
- FIG. 10 shows exemplary asset(s) to be displayed in the widget are selected.
- FIG. 11 the entire experience 1100 is rendered, and the CTA is displayed on the Image within the inline display method.
- FIG. 12 includes the HTML output 1200 for the Featured Headphones image shown in FIG. 11 .
- the content builder can combine various widgets by referencing the appropriate DIV and/or class depending on the desired experience. Once a particular experience is packaged in widget form, the experience becomes part of the widget paradigm.
- the process of constructing complex and interactive web pages is difficult and requires web design and web development skills.
- the widget paradigm simplifies this process, removing the need for design and development skills by programmatically handling all HTML creation and manipulation to deliver HTML content that is responsive, adaptive and accessible.
- OMNI Content Delivery requires integration with a website. Delivering content to a specific webpage requires two unique pieces of information: the website and the webpage.
- the website is identified by providing each integrated website with a unique Javascript tag (OmniTag) referencing a specific website ID.
- OmniTag Javascript tag
- An exemplary OmniTag template is shown below:
- the spid (or specific website ID) above is replaced with a unique number (e.g., 12345) specific to each website integrated with the OMNI service.
- the web page can be identified through one of four following methods:
- the token “12345” is replaced by the unique page identifier for any given page.
- the integrator can place the relevant ⁇ div> tags found below within their page(s).
- the OMNI service will immediately recognize these DIVs and deliver content in the appropriate location.
- An exemplary ⁇ div> tag for inline content could be:
- An exemplary ⁇ div> tag for a “call to action” could be:
- a CTA is generally a “button” which triggers an overlay, and can be placed anywhere.
- the OmniTag can also be configured to dynamically inject the required ⁇ div> tags.
- Overlay content requires a unique integration method because the target location, an element on a web page, can change or be replaced due to responsive or adaptive behaviors.
- the overlay delivery method could act as a transparent overlay of an existing image enabling placement of one of more CTA icons or buttons on top of the element to make it interactive.
- FIG. 17 is an exemplary flow chart that illustrates the general processing steps in an overlay method.
- the HTML DIV/Class of the desired target location must be flagged in OMNI.
- the process of flagging can either be done manually or by utilizing the OMNI integration application.
- SPWORLD (the OMNI javascript framework) calculates the size of the target location and nests the transparent overlay in the absolute position over the element. SPWORLD then requests optimized content from the Content Service based on the resolution and size of the browser to be delivered to the webpage.
- SPWORLD could recalculate the size of the target DIV/Class and dynamically adjusts the location of CTAs based on the relative position relative to the top left corner of the element.
- OMNI solves the logistical process of delivering third party content to a webpage through a structured sequence of requests and files which ensure the correct, optimized content is delivered. Furthermore, OMNI minimizes the likelihood of collisions in JavaScript and CSS by limiting the introduction of global variables and utilizing highly specific CSS selectors.
- OMNI maintains a single JSON file for each web page which houses a map for all content published to the webpage.
- the response is to stream the JSON map to the browser.
- FIG. 18 shows an exemplary JSON for a web page.
- OMNI also maintains a single JSON (JavaScript Object Notation) file for each widget built in the Content Builder which houses a map of the structure and all assets required to render the content. Following the initial JSON map, a specific widget map for each published experience is streamed to the browser.
- FIG. 19 illustrates an example of a first widget JSON map being delivered to a web page.
- FIG. 20 shows an example of a second widget JSON map being delivered to a web page.
- HTML requires CSS to format content.
- OMNI delivers all required CSS for the content to look native and render appropriately. CSS is defined at the website level but can also be customized on a per widget basis.
- FIG. 21 shows an example of multiple CSS files being streamed to the web page.
- widgets request all relevant assets to be streamed to the browser.
- SPWORLD the OMNI javascript framework, calculates the size of the browser and requests assets optimized for the available space. Assets are placed into structured HTML which is constructed in real time based on the content of the JSON files.
- OMNI has a proprietary event based tracking system to create relevant and meaningful data to be analyzed.
- the tracking system consists of several trackers, each of which captures a variety of events.
- All event trackers are built on a common tracking framework. As a result, share common attributes such as user IDs, session IDs, and visit IDs. Some event trackers are used for basic web analytics such as the pageview and transaction trackers. However, one of the event trackers, the Action tracker, captures data which is unique to the OMNI ecosystem.
- the Action tracker could be designed to capture events specific to any interaction with content created and delivered by OMNI.
- Examples of content can be interactive callouts, videos, 360s, documents, etc.
- Interactions with content could include:
- the Action tracker includes an organizational structure and classification mechanisms which connect disparate data to makes sense out of an event. There are three parts to the Action tracker:
- identifiers flag what content has loaded, in what context, on which page. For example, a unique set of identifiers can differentiate the same video being loaded via different display methods (inline, as a modal, or behind a callout). Identifiers could include:
- FIG. 22 shows exemplary identifiers.
- the set of identifiers (shown in FIG. 22 ) is the minimum information required to map metadata stored in the application database to identify all relevant information about the content involved in the event.
- classifiers catalog the event which is being logged—load, open, close, click, play, pause, update, etc.
- the event is meaningless, however, when coupled with the identifiers, the classifier brings context to the event.
- FIG. 23 shows exemplary classifiers.
- Values are generally sub-context to a classifier.
- a value is introduced to make clear some aspect of the event. For example, if the event is a “callout click”, a value (or “clickcount”) can be introduced to clarify the number of clicks which have occurred and add order to the events.
- FIG. 24 illustrates exemplary values.
- FIG. 25 is a flow chart 2500 according to one exemplary embodiment.
- Step 2505 involves constructing a digital content layout by selecting a delivery method, selecting subwidgets, and using the selected subwidgets to build and represent the digital content layout, wherein the delivery method is an inline, and wherein the subwidgets include images, texts, or videos.
- Step 2510 involves integrating the digital content layout with a designated website using a unique number that is mapped to a specific website identifier (SPID) that identifies the designated website.
- Step 2515 involves delivering third-party content to the designated website by maintaining a Javascript Object Notation (JSON) map for each web page on the designated website and streaming the JSON map for the web page on to a browser upon initial request.
- Step 2520 involves tracking interactive content on the designated website by capturing interaction with content in the digital content layout, wherein the interaction with content includes content loads and/or clicks on.
- JSON Javascript Object Notation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
-  The present application claims the benefit of U.S. Provisional Patent Application Ser. Nos. 62/663,795, 62/663,822, 62/663,850, and 62/663,870 filed on Apr. 27, 2018, the entire disclosures of which are incorporated herein in its entirety by reference.
-  The embodiments of the invention generally relate to a method and apparatus for delivering third party content to webpages and tracking interactive content.
-  Constructing complex and interactive web pages is difficult and requires web design and web development skills. There is generally a need for a framework for constructing HTML in a scalable and repeatable way using existing or pre-built building blocks. There is also a need for integrating the constructed HTML with websites, delivering third party content to webpages, and tracking interactive content.
-  A method and apparatus for building and delivering a HTML (Hypertext Markup Language) construction representing digital content layout are disclosed herein. In one embodiment, the method includes constructing the digital content layout by selecting a delivery method, selecting subwidgets, and using the selected subwidgets to build and represent the digital content layout. The method further includes integrating the digital content layout with a designated website using a unique number that is mapped to a specific website identifier (SPID) that identifies the designated website. The method also includes delivering third-party content to the designated website by maintaining a Javascript Object Notation (JSON) map for each web page on the designated website and streaming the JSON map for the web page on to a browser upon initial request. In addition, the method includes tracking interactive content on the designated website by capturing interaction with content in the digital content layout, wherein the interaction with content includes content loads and/or clicks on.
-  FIG. 1 shows an exemplary network in which one embodiment of the invention may be implemented.
-  FIG. 2 illustrates an example of a basic configuration for a computing device on which one embodiment of the invention may be implemented.
-  FIG. 3 is a flow chart in accordance with one embodiment of the invention.
-  FIG. 4A illustrates a user screen to select a build process in accordance with one embodiment of the invention.
-  FIG. 4B illustrates an exemplary container widget with several subwidgets in accordance with one embodiment of the invention.
-  FIGS. 5-11 show exemplary successive steps in building a display experience in accordance with one embodiment of the invention.
-  FIG. 12 shows the exemplary HTML output for the display image shown inFIG. 11 in accordance with one embodiment of the invention.
-  FIG. 13 shows exemplary HTML source code of a web page where a unique page identifier is displayed in accordance with one embodiment of the invention.
-  FIG. 14 illustrates an exemplary web page with inline content in accordance with one embodiment of the invention.
-  FIG. 15 illustrates an exemplary web page with a “call to action” in accordance with one embodiment of the invention.
-  FIGS. 16A and 16B illustrate exemplary web pages with overlay in accordance with one embodiment of the invention.
-  FIG. 17 is a flow chart that generally outlines the operation of an overlay method in accordance with one embodiment of the invention.
-  FIG. 18 shows an exemplary JSON (JavaScript Object Notation) for a web page in accordance with one embodiment of the invention.
-  FIG. 19 illustrates an example of a first widget JSON map being delivered to a web page in accordance with one embodiment of the invention.
-  FIG. 20 shows an example of a second widget JSON map being delivered to a web page in accordance with one embodiment of the invention.
-  FIG. 21 shows an example of multiple CSS files being streamed to the web page in accordance with one embodiment of the invention.
-  FIG. 22 shows exemplary identifiers in accordance with one embodiment of the invention.
-  FIG. 23 shows exemplary classifiers in accordance with one embodiment of the invention.
-  FIG. 24 illustrates exemplary values in accordance with one embodiment of the invention.
-  FIG. 25 is a flow chart in accordance with one embodiment of the invention.
-  In the following detailed description of the embodiments of the invention, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the invention. However, it will be obvious to one skilled in the art that the embodiments of the invention may be practiced without these specific details. In other instances well known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of the embodiments of the invention.
-  In the context of a networked environment, general reference will also be made to real-time communication between a “source” device and a “destination” device. The term device includes any type of computing apparatus, such as a PC, laptop, handheld device, or server that is capable of sending and receiving messages over a network according to a standard network protocol. Source computing devices refer to the device that initiates the communication, or that first composes and sends a message, while destination computing devices refer to the device that receives the message. Those skilled in the art will recognize that the operation of the source computing device and destination computing device are interchangeable. Thus, a destination computing device may at some point during a session act as a sender of messages, and a source computing device can at times act as the recipient of messages. For this reason, the systems and methods of the invention may be embodied in traditional source computing devices as well as destination computing devices, regardless of their respective hardware, software or network configurations. Indeed, the systems and methods of the invention may be practiced in a variety of environments that require or desire the performance enhancements provided by the invention. These enhancements are set forth in greater detail in subsequent paragraphs.
-  FIG. 1 shows anexemplary network 100 in which one embodiment of the invention may be implemented. Theexemplary network 100 includesseveral computing devices 110 communicating with one another over a network 120, such as the Internet, as represented by a cloud. Network 120 may include many well-known components (such as routers, gateways, hubs, etc.) to allow thecomputing devices 110 to communicate via wired and/or wireless media.
-  FIG. 2 illustrates an example of a basic configuration for acomputing device 200 on which one embodiment of the invention may be implemented.Computing device 200 typically includes at least oneprocessing unit 205 andmemory 210. Depending on the exact configuration and type of thecomputing device 200, thememory 210 may be volatile (such as RAM) 215, non-volatile (such as ROM or flash memory) 220 or some combination of the two. Additionally,computing device 200 may also have additional features/functionality. For example,computing device 200 may also include additional storage (removable 225 and/or non-removable 230) including, but not limited to, magnetic or optical disks or tape. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to stored the desired information and which can be accessed bycomputing device 200. Any such computer storage media may be part ofcomputing device 200.
-  Computing device 200 may also contain one ormore communication devices 235 that allow the device to communicate with other devices. A communication connection is an example of a communication medium. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
-  Computing device 200 may also have one ormore input devices 240 such as a keyboard, mouse, pen, voice input device, touch input device, etc.Output devices 240 such as adisplay 250, speakers, a printer, etc. may also be included. All these devices are well known in the art and need not be discussed at length here.
-  The process of constructing complex and interactive web pages is difficult and requires web design and web development skills. The widget paradigm simplifies this process, removing the need for design and development skills by programmatically handling all HTML creation and manipulation to deliver HTML content that is responsive, adaptive and accessible.
-  FIG. 3 is a block diagram 300 showing the general steps of the widget paradigm in accordance with one embodiment.Block 305 involves HTML construction using the widget paradigm.Block 310 involves integration with web sites.Block 315 involves delivering third-party content to web pages.Block 320 involves tracking interactive content.
-  I. HTML Construction Using the Widget Paradigm (Step 305 ofFIG. 3 )
-  In general, pages and interactive content constructed in the inventive system utilize the widget paradigm which is a general framework for constructing HTML in a scalable and repeatable way using building blocks or widgets. The widget paradigm generally consists of various widgets which can be seamlessly built into and on top of one another to create a variety of page layouts and experiences. In one embodiment, the building blocks of the widget paradigm could include:
-  - Method of Delivery/Layout
- Players and containers to render assets/media
- Assets
 
-  In one embodiment, there could be three core methods of delivery (referred to as container widgets) because they serve as the layout or container for other widgets which display assets. The core methods of delivery include:
- 1. Inline—Content rendered directly inline in a webpage.
- 2. Call To Action (CTA)—A button displayed inline which, when clicked, triggers a modal window with content.
- 3. Overlay—One or more CTAs rendered on top of an existing element on a webpage.
-  The page or experience creation process begins by selecting the method of delivery or layout. The below example showcases the build process for inline content. Once selected, the user can begin to design the contents of the layout, as shown inFIG. 4A . Selecting therow 402 would trigger the option to select what should go in the row. There are several widget types which are used to house, play, or render assets. These widget types are referred to as subwidgets because they reside within a container widget as shownFIG. 4B . Exemplary subwidgets illustrated inFIG. 4B includeImage 405,Slider 410,Video 415,Product Slider 420,Product Comparison 425, etc.
-  In one embodiment, there could be two different kinds of subwidgets, including: asset subwidgets and container subwidgets. Asset Subwidgets are directly associated with media, data, or a URL to render content. Container subwidgets include image containers, text or HTML containers, video players, document viewers, etc. The subwidgets handle the HTML construction and properties in order to render the assets or media appropriately. Depending on the type of asset subwidget, the contents can be used as the canvas for overlay based CTAs.
-  In one embodiment, container widgets can be rendered within container widgets to make unique and interactive layouts and experiences: inline grid layouts, CTAs, overlays on top of images, etc. For example, the overlay method can be utilized to display CTAs on an image which is within an inline layout, as shown in successive steps illustrated in exemplaryFIGS. 5-12 .
-  In particular,FIG. 5 illustrates an exemplary Inline layout that showcases a featured pairs of headphones using animage 505.FIG. 6 illustrates that within the Image widget settings, the user can add an overlay (such asText 605 or Callout(s) 610 to the image. InFIG. 7 , the user is presented with acanvas 710 to place CTAs on the headphones. As shown in theFIG. 8 , the user can select from a variety of subwidgets (e.g., shown aselements FIG. 4 ) to show behind the CTA. As illustrated inFIG. 9 , after widget selection, the selected module (i.e., a video subwidget 910 in the example shown inFIG. 9 ) is displayed on the canvas.FIG. 10 shows exemplary asset(s) to be displayed in the widget are selected. As shown inFIG. 11 , theentire experience 1100 is rendered, and the CTA is displayed on the Image within the inline display method.
-  In general, the widget paradigm produces highly structured HTML which is responsive, adaptive, and accessible.FIG. 12 includes theHTML output 1200 for the Featured Headphones image shown inFIG. 11 .
-  Because the HTML is programmatically structured, using the same logical approach for constructing rows, zones, and holders, the content builder can combine various widgets by referencing the appropriate DIV and/or class depending on the desired experience. Once a particular experience is packaged in widget form, the experience becomes part of the widget paradigm.
-  II. Integration with Websites (Step 310 ofFIG. 3 )
-  The process of constructing complex and interactive web pages is difficult and requires web design and web development skills. The widget paradigm simplifies this process, removing the need for design and development skills by programmatically handling all HTML creation and manipulation to deliver HTML content that is responsive, adaptive and accessible.
-  A. Placing the OmniTag—
-  In general, OMNI Content Delivery requires integration with a website. Delivering content to a specific webpage requires two unique pieces of information: the website and the webpage.
-  The website is identified by providing each integrated website with a unique Javascript tag (OmniTag) referencing a specific website ID. An exemplary OmniTag template is shown below:
-  <script type=“text/javascript”> (function (se,ll,p,oin,ts) { oin = se.createElement(ll); oin.type = ‘text/java’+ll; oin.async = true; oin.src = p + Math.floor(Date.now( ) / 86400000); ts = se.getElementsByTagName(ll)[0]; ts.parentNode.insertBefore(oin,ts); } (document,‘script’,‘//a.sellpoint.net/c/spid/sp.js?cv=’)); </script> 
-  In one embodiment, the spid (or specific website ID) above is replaced with a unique number (e.g., 12345) specific to each website integrated with the OMNI service.
-  In one embodiment, the web page can be identified through one of four following methods:
- 1. Referencing the URL path—For example, “ip/Nautilus-T618-Treadmill-MY17/54199664” would be URL path in the example “https://www.walmart.com/ip/Nautilus-T618-Treadmill-MY17/54199664.”
- 2. Referencing a subsection of the URL path—For example, “5419964” would be the relevant subsection of the URL path in https://www.walmart.com/ip/Nautilus-T618-Treadmill-MY17/54199664
- 3. Identifying an object on the web page which shows a unique page identifier—The screengrab 1300 (shown in FIG. 13 ) shows an example of an object in the HTML source code of a webpage where the unique page identifier is displayed.
- 4. Having the webpage “push” the unique page identifier using the following code:
-  <script type=“text/javascript”> var SPWORLD = SPWORLD ∥ [ ]; SPWORLD.push(‘12345’); </script> 
-  In one embodiment, the token “12345” is replaced by the unique page identifier for any given page.
-  B. Determining where to Place Content—
-  In one embodiment, there could be the following methods of delivering content to a webpage:
- 1. Inline—Content 1405 renders natively in the page as though it is part of the webpage as shown in exemplaryFIG. 14 .
- 2. Call To Action (CTA)—A button 1505 is rendered on the page which, when clicked, displays the desired experience, as illustrated in exemplaryFIG. 15 .
- 3. Overlay—One or more CTAs are overlaid on images creating an interactive effect, as shown in FIGS. 16A and 16B .
-  In one embodiment, to control exactly where inline or CTA content renders on the page, the integrator can place the relevant <div> tags found below within their page(s). The OMNI service will immediately recognize these DIVs and deliver content in the appropriate location.
-  An exemplary <div> tag for inline content (or inline type) could be:
-  - <div id=“sp_inline”></div>
 
-  An exemplary <div> tag for a “call to action” could be:
-  - <div id=“sp_cta”></div>
 
-  In one embodiment, a CTA is generally a “button” which triggers an overlay, and can be placed anywhere.
-  The overlay method requires a custom integration which will be addressed below. In one embodiment, if the integrator cannot support DIV placement on their website, the OmniTag can also be configured to dynamically inject the required <div> tags.
-  C. Overlay Method—
-  Overlay content requires a unique integration method because the target location, an element on a web page, can change or be replaced due to responsive or adaptive behaviors. When configured, the overlay delivery method could act as a transparent overlay of an existing image enabling placement of one of more CTA icons or buttons on top of the element to make it interactive.
-  FIG. 17 is an exemplary flow chart that illustrates the general processing steps in an overlay method. In order for content delivered via the overlay method to display properly, the HTML DIV/Class of the desired target location must be flagged in OMNI. The process of flagging can either be done manually or by utilizing the OMNI integration application.
-  In one embodiment, for pages that have been configured to receive content via the overlay method to an element on the page, on page load, SPWORLD (the OMNI javascript framework) calculates the size of the target location and nests the transparent overlay in the absolute position over the element. SPWORLD then requests optimized content from the Content Service based on the resolution and size of the browser to be delivered to the webpage.
-  Anytime the browser window is adjusted (e.g., rotating a mobile device or tablet from portrait to landscape, or resizing a browser window on a laptop), SPWORLD could recalculate the size of the target DIV/Class and dynamically adjusts the location of CTAs based on the relative position relative to the top left corner of the element.
-  III. Delivering Third-Party Content to Webpage (Step 320 ofFIG. 3 )
-  In general, delivering third party content to a web page presents several problems. Between loading quickly in the right place, appearing native, and minimizing collisions in the code, there are numerous places to go wrong. In one embodiment, OMNI solves the logistical process of delivering third party content to a webpage through a structured sequence of requests and files which ensure the correct, optimized content is delivered. Furthermore, OMNI minimizes the likelihood of collisions in JavaScript and CSS by limiting the introduction of global variables and utilizing highly specific CSS selectors.
-  A. The Service Request and Structured Response—
-  When a page is loaded on a website which has integrated with the OMNI service, a request is made. In one embodiment, OMNI maintains a single JSON file for each web page which houses a map for all content published to the webpage. Upon the initial request, the response is to stream the JSON map to the browser.FIG. 18 shows an exemplary JSON for a web page.
-  In one embodiment, OMNI also maintains a single JSON (JavaScript Object Notation) file for each widget built in the Content Builder which houses a map of the structure and all assets required to render the content. Following the initial JSON map, a specific widget map for each published experience is streamed to the browser.FIG. 19 illustrates an example of a first widget JSON map being delivered to a web page.FIG. 20 shows an example of a second widget JSON map being delivered to a web page.
-  B. Making it Look Right—
-  HTML requires CSS to format content. Following the JSON maps, OMNI delivers all required CSS for the content to look native and render appropriately. CSS is defined at the website level but can also be customized on a per widget basis.FIG. 21 shows an example of multiple CSS files being streamed to the web page.
-  C. Loading Content—
-  Once the structure is defined and styling applied, widgets request all relevant assets to be streamed to the browser. SPWORLD, the OMNI javascript framework, calculates the size of the browser and requests assets optimized for the available space. Assets are placed into structured HTML which is constructed in real time based on the content of the JSON files.
-  IV. Tracking Interactive Content (Step 320 ofFIG. 3 )
-  In general, content rendered by a third party on a webpage is unique in that interactions with the content are not trackable by the owner of the webpage. As a result, in order to capture data and provide analytics regarding content interactions, OMNI has a proprietary event based tracking system to create relevant and meaningful data to be analyzed. The tracking system consists of several trackers, each of which captures a variety of events.
-  All event trackers are built on a common tracking framework. As a result, share common attributes such as user IDs, session IDs, and visit IDs. Some event trackers are used for basic web analytics such as the pageview and transaction trackers. However, one of the event trackers, the Action tracker, captures data which is unique to the OMNI ecosystem.
-  In one embodiment, the Action tracker could be designed to capture events specific to any interaction with content created and delivered by OMNI. Examples of content can be interactive callouts, videos, 360s, documents, etc. Interactions with content could include:
-  - Content loads
- Clicks on/interactions with content
- Navigation through content
- Open and closing of CTAs/callouts
 
-  In one embodiment, the Action tracker includes an organizational structure and classification mechanisms which connect disparate data to makes sense out of an event. There are three parts to the Action tracker:
-  - 1. Identifiers
- 2. Classifiers
- 3. Values
 
-  In general, identifiers flag what content has loaded, in what context, on which page. For example, a unique set of identifiers can differentiate the same video being loaded via different display methods (inline, as a modal, or behind a callout). Identifiers could include:
-  - Widget types
- Widget hash
- Version
- Website ID
- Page ID
 
-  FIG. 22 shows exemplary identifiers. The set of identifiers (shown inFIG. 22 ) is the minimum information required to map metadata stored in the application database to identify all relevant information about the content involved in the event.
-  In general, classifiers catalog the event which is being logged—load, open, close, click, play, pause, update, etc. In isolation, the event is meaningless, however, when coupled with the identifiers, the classifier brings context to the event.FIG. 23 shows exemplary classifiers.
-  Values are generally sub-context to a classifier. When a classifier requires additional context to become actionable, a value is introduced to make clear some aspect of the event. For example, if the event is a “callout click”, a value (or “clickcount”) can be introduced to clarify the number of clicks which have occurred and add order to the events.FIG. 24 illustrates exemplary values.
-  FIG. 25 is a flow chart 2500 according to one exemplary embodiment.Step 2505 involves constructing a digital content layout by selecting a delivery method, selecting subwidgets, and using the selected subwidgets to build and represent the digital content layout, wherein the delivery method is an inline, and wherein the subwidgets include images, texts, or videos.Step 2510 involves integrating the digital content layout with a designated website using a unique number that is mapped to a specific website identifier (SPID) that identifies the designated website.Step 2515 involves delivering third-party content to the designated website by maintaining a Javascript Object Notation (JSON) map for each web page on the designated website and streaming the JSON map for the web page on to a browser upon initial request.Step 2520 involves tracking interactive content on the designated website by capturing interaction with content in the digital content layout, wherein the interaction with content includes content loads and/or clicks on.
-  While the method and apparatus for HTML construction using the widget paradigm are disclosed by reference to the various embodiments and examples detailed above, it should be understood that these examples are intended in an illustrative rather than limiting sense, as it is contemplated that modifications will readily occur to those skilled in the art which are intended to fall within the scope of the embodiments of the invention.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| US16/396,154 US20190332648A1 (en) | 2018-04-27 | 2019-04-26 | Method and apparatus for delivering third party content to webpages and tracking interactive content | 
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| US201862663870P | 2018-04-27 | 2018-04-27 | |
| US201862663850P | 2018-04-27 | 2018-04-27 | |
| US201862663795P | 2018-04-27 | 2018-04-27 | |
| US201862663822P | 2018-04-27 | 2018-04-27 | |
| US16/396,154 US20190332648A1 (en) | 2018-04-27 | 2019-04-26 | Method and apparatus for delivering third party content to webpages and tracking interactive content | 
Publications (1)
| Publication Number | Publication Date | 
|---|---|
| US20190332648A1 true US20190332648A1 (en) | 2019-10-31 | 
Family
ID=68291195
Family Applications (3)
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| US16/393,412 Abandoned US20190332362A1 (en) | 2018-04-27 | 2019-04-24 | Method and apparatus for implementing integration with websites | 
| US16/396,130 Active US11553029B2 (en) | 2018-04-27 | 2019-04-26 | Method and apparatus for HTML construction using the widget paradigm | 
| US16/396,154 Abandoned US20190332648A1 (en) | 2018-04-27 | 2019-04-26 | Method and apparatus for delivering third party content to webpages and tracking interactive content | 
Family Applications Before (2)
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| US16/393,412 Abandoned US20190332362A1 (en) | 2018-04-27 | 2019-04-24 | Method and apparatus for implementing integration with websites | 
| US16/396,130 Active US11553029B2 (en) | 2018-04-27 | 2019-04-26 | Method and apparatus for HTML construction using the widget paradigm | 
Country Status (1)
| Country | Link | 
|---|---|
| US (3) | US20190332362A1 (en) | 
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US20190332358A1 (en) * | 2018-04-30 | 2019-10-31 | MphasiS Limited | Method and system for automated creation of graphical user interfaces | 
| US11263386B1 (en) * | 2020-01-31 | 2022-03-01 | Splunk Inc. | Optimizing the display of hierarchically organized data in a web application | 
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US12353493B2 (en) * | 2023-05-02 | 2025-07-08 | firmly Inc | System and method to inject navigation elements with static content of a website for electronic-commerce | 
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US7024633B1 (en) * | 2001-03-16 | 2006-04-04 | Sun Microsystems, Inc. | Methods and apparatus for creating and transforming graphical constructs | 
| US20070061704A1 (en) * | 2005-09-14 | 2007-03-15 | Microsoft Corporation | Dynamic anchoring of annotations to editable content | 
| US20130198609A1 (en) * | 2012-01-20 | 2013-08-01 | Vistaprint Limited | Digital image editing | 
| US8745027B1 (en) * | 2011-04-11 | 2014-06-03 | Google Inc. | Jslayout cascading style sheets optimization | 
| US20150128162A1 (en) * | 2013-11-01 | 2015-05-07 | Adobe Systems Incorporated | Real-time tracking collection for video experiences | 
| US20160283460A1 (en) * | 2013-12-03 | 2016-09-29 | Sharethrough Inc. | Dynamic native content insertion | 
| US20170031907A1 (en) * | 2013-12-18 | 2017-02-02 | Google Inc. | Indentifying and/or recommending relevant media content | 
| US20170046531A1 (en) * | 2015-08-14 | 2017-02-16 | Strong Bear Llc | Data encryption method and system for use with cloud storage | 
| US9621428B1 (en) * | 2014-04-09 | 2017-04-11 | Cisco Technology, Inc. | Multi-tiered cloud application topology modeling tool | 
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US20070078963A1 (en) * | 2005-10-05 | 2007-04-05 | Woodard Scott E | Method of remote management of the look and functionality of a website by a third party service provider with the aid of scripting technology | 
| US9569230B2 (en) * | 2007-05-25 | 2017-02-14 | Nokia Technologies Oy | Network entity, terminal, computer-readable storage medium and method for providing widgets including advertisements for associated widgets | 
| US8271878B2 (en) * | 2007-12-28 | 2012-09-18 | Amazon Technologies, Inc. | Behavior-based selection of items to present on affiliate sites | 
| US20090288021A1 (en) * | 2008-05-13 | 2009-11-19 | Dimitry Ioffe | System and method to support dynamic widget distribution | 
| US20110154200A1 (en) * | 2009-12-23 | 2011-06-23 | Apple Inc. | Enhancing Media Content with Content-Aware Resources | 
| US9009152B2 (en) * | 2010-02-04 | 2015-04-14 | Yahoo! Inc. | Smart widgets | 
| US8438150B2 (en) * | 2010-05-21 | 2013-05-07 | Matthew David WELLS | System and method for presenting events | 
| US20120036048A1 (en) * | 2010-08-06 | 2012-02-09 | Diy Media, Inc. | System and method for distributing multimedia content | 
| US9069814B2 (en) * | 2011-07-27 | 2015-06-30 | Wolfram Alpha Llc | Method and system for using natural language to generate widgets | 
| US9665349B2 (en) * | 2012-10-05 | 2017-05-30 | Box, Inc. | System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform | 
| US10534851B1 (en) * | 2014-12-19 | 2020-01-14 | BloomReach Inc. | Dynamic landing pages | 
| US20190138162A1 (en) * | 2017-11-07 | 2019-05-09 | Facebook, Inc. | Systems and methods for providing calls-to-action and related content associated with virtual media content | 
- 
        2019
        - 2019-04-24 US US16/393,412 patent/US20190332362A1/en not_active Abandoned
- 2019-04-26 US US16/396,130 patent/US11553029B2/en active Active
- 2019-04-26 US US16/396,154 patent/US20190332648A1/en not_active Abandoned
 
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US7024633B1 (en) * | 2001-03-16 | 2006-04-04 | Sun Microsystems, Inc. | Methods and apparatus for creating and transforming graphical constructs | 
| US20070061704A1 (en) * | 2005-09-14 | 2007-03-15 | Microsoft Corporation | Dynamic anchoring of annotations to editable content | 
| US8745027B1 (en) * | 2011-04-11 | 2014-06-03 | Google Inc. | Jslayout cascading style sheets optimization | 
| US20130198609A1 (en) * | 2012-01-20 | 2013-08-01 | Vistaprint Limited | Digital image editing | 
| US20150128162A1 (en) * | 2013-11-01 | 2015-05-07 | Adobe Systems Incorporated | Real-time tracking collection for video experiences | 
| US20160283460A1 (en) * | 2013-12-03 | 2016-09-29 | Sharethrough Inc. | Dynamic native content insertion | 
| US20170031907A1 (en) * | 2013-12-18 | 2017-02-02 | Google Inc. | Indentifying and/or recommending relevant media content | 
| US9621428B1 (en) * | 2014-04-09 | 2017-04-11 | Cisco Technology, Inc. | Multi-tiered cloud application topology modeling tool | 
| US20170046531A1 (en) * | 2015-08-14 | 2017-02-16 | Strong Bear Llc | Data encryption method and system for use with cloud storage | 
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| US20190332358A1 (en) * | 2018-04-30 | 2019-10-31 | MphasiS Limited | Method and system for automated creation of graphical user interfaces | 
| US10824401B2 (en) * | 2018-04-30 | 2020-11-03 | MphasiS Limited | Method and system for automated creation of graphical user interfaces | 
| US11263386B1 (en) * | 2020-01-31 | 2022-03-01 | Splunk Inc. | Optimizing the display of hierarchically organized data in a web application | 
| US11809810B1 (en) * | 2020-01-31 | 2023-11-07 | Splunk Inc. | Dynamically displaying portions of a hierarchically organized data file in a web application | 
Also Published As
| Publication number | Publication date | 
|---|---|
| US20190332362A1 (en) | 2019-10-31 | 
| US11553029B2 (en) | 2023-01-10 | 
| US20190332643A1 (en) | 2019-10-31 | 
Similar Documents
| Publication | Publication Date | Title | 
|---|---|---|
| US20180143950A1 (en) | Interactive communication via online video systems | |
| JP7457800B2 (en) | Image replacement repair | |
| US11842142B2 (en) | Systems and methods for co-browsing | |
| US10412142B2 (en) | Video-production system with social-media features | |
| CN104219559B (en) | Unobvious superposition is launched in video content | |
| US20210092187A1 (en) | Dynamic content and cloud based content within collaborative electronic content creation and management tools | |
| US11095577B2 (en) | Conversation-enabled document system and method | |
| US8843360B1 (en) | Client-side localization of network pages | |
| US20140245196A1 (en) | User interface generation and preview | |
| CN113157157B (en) | Live broadcast-based interactive image management method, device, equipment and storage medium | |
| US11553029B2 (en) | Method and apparatus for HTML construction using the widget paradigm | |
| CN103838842A (en) | Method and device for loading new tab page | |
| CN109271557B (en) | Method and apparatus for outputting information | |
| US20170097749A1 (en) | Integrating applications in a portal | |
| US20140325349A1 (en) | Real-time Representations of Edited Content | |
| CN110968314B (en) | Page generation method and device | |
| US9876879B2 (en) | Distributed network page generation | |
| US20180293610A1 (en) | Methods and systems for integrating applications into a content recommendation network | |
| CN114339363B (en) | Picture switching processing method and device, computer equipment and storage medium | |
| US20110161325A1 (en) | System, method and computer-readable storage medium for generation and remote content management of compiled files | |
| CN113220381A (en) | Click data display method and device | |
| CN106233284B (en) | Generate the method and system of the stabilization identifier for main contents | |
| CN109684565A (en) | The generation of Webpage correlation video and methods of exhibiting, device, system and electronic equipment | |
| US20220028425A1 (en) | System and Method to Customizing Video | |
| US10628500B2 (en) | Providing hyperlinks in presentations viewed remotely | 
Legal Events
| Date | Code | Title | Description | 
|---|---|---|---|
| AS | Assignment | Owner name: SELLPOINTS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DEJANOVIC, IVAN;BLUM, BENJAMIN;REEL/FRAME:049012/0700 Effective date: 20190426 | |
| AS | Assignment | Owner name: TWIN BROOK CAPITAL PARTNERS, LLC, AS COLLATERAL AGENT, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNOR:SELLPOINTS INC.;REEL/FRAME:050733/0470 Effective date: 20191016 Owner name: TWIN BROOK CAPITAL PARTNERS, LLC, AS COLLATERAL AG Free format text: SECURITY INTEREST;ASSIGNOR:SELLPOINTS INC.;REEL/FRAME:050733/0470 Effective date: 20191016 | |
| STPP | Information on status: patent application and granting procedure in general | Free format text: NON FINAL ACTION MAILED | |
| STCB | Information on status: application discontinuation | Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION | |
| AS | Assignment | Owner name: SELLPOINTS INC., ILLINOIS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 050733/0470;ASSIGNOR:TWIN BROOK CAPITAL PARTNERS, LLC;REEL/FRAME:054766/0515 Effective date: 20201215 Owner name: JEFFERIES FINANCE LLC, NEW YORK Free format text: FIRST LIEN SECURITY AGREEMENT;ASSIGNORS:SYNDIGO LLC;SELLPOINTS INC.;REEL/FRAME:054766/0599 Effective date: 20201215 Owner name: JEFFERIES FINANCE LLC, NEW YORK Free format text: SECOND LIEN SECURITY AGREEMENT;ASSIGNORS:SYNDIGO LLC;SELLPOINTS INC.;REEL/FRAME:054766/0617 Effective date: 20201215 | |
| AS | Assignment | Owner name: SYNDIGO LLC, ILLINOIS Free format text: MERGER;ASSIGNOR:SELLPOINTS INC.;REEL/FRAME:061195/0956 Effective date: 20211227 |