WO2008052280A1 - Personalised interactive content generation - Google Patents

Personalised interactive content generation Download PDF

Info

Publication number
WO2008052280A1
WO2008052280A1 PCT/AU2007/001677 AU2007001677W WO2008052280A1 WO 2008052280 A1 WO2008052280 A1 WO 2008052280A1 AU 2007001677 W AU2007001677 W AU 2007001677W WO 2008052280 A1 WO2008052280 A1 WO 2008052280A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
user
profile data
interactive
client device
Prior art date
Application number
PCT/AU2007/001677
Other languages
French (fr)
Inventor
Scott Mcauley Thomson
Danny Gruber
Yon Aran Rhee
Original Assignee
Qdc Technologies Pty Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from AU2006906092A external-priority patent/AU2006906092A0/en
Application filed by Qdc Technologies Pty Ltd filed Critical Qdc Technologies Pty Ltd
Publication of WO2008052280A1 publication Critical patent/WO2008052280A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • the present invention relates to a content generation system for generating personalised content in a client/server environment.
  • Internet based server systems are able to access previously stored profile data for a user when the user selects a URL on a web site, and a cookie is available for the user, or the user has previously logged onto a server hosting the site.
  • the response returned to the user can include content (e.g. video, image, audio, text etc.) selected or adjusted based on the stored profile data.
  • targeted advertising on the Internet can include an advertisement that is selectively placed on a webpage (e.g. of a newspaper).
  • the advertisement is customised each time the webpage is selected (i.e. loaded, or viewed) by a user (i.e. a visitor to the webpage). This customisation may include inserting different items of content based on data that is known by the webpage host, or that is provided by the user.
  • An advertisement on the Internet may provide for interaction by the user viewing the page. This interaction may involve altering a display when a cursor is moved relative to the advertisement on the webpage, and linking to another webpage of a different site (commonly corresponding to the advertised product or service) when the cursor is clicked on the advertisement. Linking to another site may be undesirable for the owner or author of the original webpage that includes the advertisement, as the other website may, for example, lead the user to cease viewing or interacting with the original site. Also the level of customisation that can be delivered for the user is currently constrained by the content generation technology used by existing systems. It is desired to address this or at least to provide a useful alternative.
  • a personalised interactive content generation system including: a dialogue agent for generating interactive profile data based on interaction between a user of a client device and a part of a content sequence served by a site to the client device; and a generation system for dynamically generating another part of the content sequence based on profile data for the user of said client device, said profile data including the interactive profile data.
  • the present invention also provides a content generation process, including: generating interactive profile data for a user whilst said user accesses a site; processing at least one content selection rule to generate a content stage of a content sequence, based on profile data including said interactive profile data; generating said content stage with content for said user; and serving said content stage for said user.
  • the present invention further provides a process for generating interactive content for a user of a client device, including: receiving interactive profile data generated by interaction by the user with a first content stage of a content sequence served to the client device; and generating a second content stage of the sequence using profile data associated with the user, said profile data including the interactive profile data.
  • Figure 1 is a schematic of a preferred embodiments of a personalised interactive content generation system in use
  • Figure 2 is a component schematic of the personalised interactive content generation system
  • Figure 3 is a schematic of a hardware arrangement of the personalised interactive content generation system
  • Figure 4 is a software architecture of the personalised interactive content generation system
  • Figure 5 is a flow chart of a process performed by the personalised interactive content generation system
  • Figure 6 is a flow chart of an example of the process in Figure 5;
  • Figure 7 is a flow chart of a process performed by the personalised interactive content generation system and a dialogue agent served by the system.
  • Figure 8 is a UML diagram of components of the personalised interactive content generation system.
  • a personalised interactive content generation system 102 generates an interactive content sequence 104, for example an interactive video advertisement, for display to a user 106.
  • the user 106 may, for example, be viewing a webpage using an Internet browser (e.g. running a personal computer or a mobile telephone), where the webpage includes an animated advertisement (i.e. a first interactive content stage 108), that when clicked on by a user displays a fill-in form (i.e. a second interactive content stage 108) for entering credit card information and completing an online transaction.
  • Each interactive content stage 108 is included in the interactive content sequence 104 generated by the personalised interactive content generation system 102.
  • the interactive content in each interactive content stage 108 is selected by the personalised interactive content generation system 102 based on profile data 110 associated with the user 106 and selection rules 112 associated with a marketing or communications message
  • the interactive content sequence 104 is also selected based on the profile data 110 and the selection rules 112. Accordingly, the profile data 110 and the selected rules 112 may determine a different interactive content sequence 104 of the interactive content stages 108 for each user 106.
  • the profile data 110 associated with the user 106, includes interactive profile data 116 generated by an interaction 118 by the user 106 with any interactive content displayed in the interactive content sequence 104.
  • the combination of the two types of profile data allows the system to execute an automated, but dynamic, conversation or dialogue with the user. By conducting this conversation the content sequence can be adjusted to engage the user. For example, if the user 106 is shown an animated sequence delivering a marketing message in a first interactive content stage 108, the second interactive content stage 108 is selected depending on profile data, including data derived from the response of the user 106 to the animation.
  • a user may indicate having had a bad experience with a certain product in a first interactive content stage 108, therefore leading to a second interactive content stage 108 representing a complaints procedure.
  • the personalised interactive content generation system 102 includes a generation engine 202 for transmitting the interactive content sequence 104 to the user
  • the selection rules 112 are procedural rules executed by the generation engine 202 to process the available profile data and generate one or more templates for processing by the render engine 204.
  • the rules may be referenced in a campaign or message template that is used to provide a basis for the templates generated by the generation engine 202.
  • the templates are intermediary XML files or video project files.
  • the render engine 204 generates each interactive content stage 108 based on a template from the generation engine 202, and incorporates items of content from the content manager 206.
  • the interactive content stage 108 can be an interactive video sequence.
  • the content manager 206 manages and distributes items of content, including video files, text files, still image files, interactive files, digital games, e-commerce interfaces, etc.
  • the render engine 204 handles receipt of templates from the generation engine 202 and automatically attends to rendering and production of the video data in a format appropriate for display to the user 106 (e.g. within the web browser 216).
  • the render engine 204 communicates with the content manager 206 to access the content referenced in a template directly or selected by a selection rule referenced in the template.
  • the interactive content sequence 104 after being generated by the personalised interactive content generation system 102, is provided via a network 210 to a webpage 212 where the interactive content is displayed by a remote agent in the form of a dialogue agent 214 on the webpage 212 (e.g. by URL reference).
  • the user 106 using a web-enabled browser 216, accesses the webpage 212 and views the interactive content as displayed by the dialogue agent 214.
  • the profile data 110 used to select interactive content, includes interactive profile data 116 and static profile data 218.
  • Interactive profile data 116 is profile data that can be updated over time depending on how a person interacts with the application.
  • An example of interactive profile data 116 might be a purchase or catalogue browsing data trail, or data arising from a response of a user to an earlier interactive content stage 108.
  • Static profile data 218 includes gathered data 220, history data 222 and third party data 224.
  • the gathered data 220 includes profile data generated by the dialogue agent 214 interacting with the browser 216 to extract relevant profile information from passive data accessed by the browser 216, including profile data stored in Internet cookies.
  • the history data 222 includes any interactive profile data 116 stored from a past interaction 118 of the user 106 with a relevant past interactive content sequence 104.
  • the third party data 224 includes data associated with the user supplied by third parties, for example profile data associated with the specific contents or subject matter of the webpage 212, profile data associated with a known geographical location of the browser 216, and/or profile data provided by the user 106 in a third party data gathering process (e.g.
  • a personal homepage associated with the user 106 including name, data of birth, gender, ethnicity, body type, height, homepage purpose for dating/friends/networking/friendship, address, occupation, diary topics, interest, music, films, television, books, heroes, marital status, sexual orientation, home town, religion, smoking habits, drinking habits, children, education, income, places of education, places of work, areas of interest for networking, and favourite song/music).
  • the profile data 110 may be stored in a database, directory, flat file system, XML or tab delimited text or equivalent format.
  • the selection rules 112 associated with a message 114 are stored as XML, for example as shown in Appendix A, to select content items or assets based on the profile data.
  • the items of content managed by a content manager 206 include still images, moving images, sound, voice, text, interactive agents, ecommerce agents, and place holders or tags for local content, and other content assets.
  • the generation engine 202, the render engine 204 and the content manager 206 may be embodied in separate computer servers, or combined on a single computer machine, which may be combined with a web server. It will be understood that any software components of the generation engine 202, the render engine 204 and the content manager 206, or any other software components described herein, can be replaced or substituted at least in part by hardware components, such as dedicated ASICs (application specific integrated circuits) or FPGAs (field programmable gate arrays), to perform at least part of the processes performed by the software components.
  • ASICs application specific integrated circuits
  • FPGAs field programmable gate arrays
  • the generation engine 202 resides on a generation server 302, which may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003 or Apple OS X.
  • the rules processing in the generation engine 202 may be based on Microsoft SQL server commands.
  • the generation server 302 may be distributed, clustered and replicated to scale generation capabilities, provide load balancing and failover.
  • the render engine 204 is implemented on one or more render servers 304, e.g. G5 computers from Apple Corp with video rending software such as Final Cut Pro, or PC servers running ActiveSWF by CPS Labs Ltd, or Kinetic Fusion server software by Kinesis Software Ltd. ActiveSWF and Kinetic Fusion are able to generate SWF files from intermediary XML project file languages.
  • the render servers 304 each include render engine components for controlling the respective video rendering tool, i.e. File Cut Pro or ActiveSWF.
  • the render engine 204 handles receipt of the templates (e.g. video project files) from the generation engine 202 and automatically attends to rendering and production of the content data in a format appropriate for the required server 314 and client 310 (e.g. SWF or video for a cell phone).
  • the render engine 204 communicates with the content server 206 to access content.
  • the render engine components may be written in Java computer program code.
  • the content manager 206 is implemented on one or more content servers 306, provides content, which have access to one or more content stores 308.
  • the content server 306 is implemented using a digital asset manager (DAM) which is based on the MySQL database.
  • DAM digital asset manager
  • the content server 306 may support other databases, for example Oracle,
  • the content server 306 may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003 or Apple OS X.
  • the DAM provides access to a plurality of file servers via the content stores 308.
  • the content stores 308 may include one or more NASs, network attached storage devices (NASDs) or storage area networks
  • the DAM may store any data directly for the content manager 206 or data merely associated with remote data that is required by the content manager 206. This may include digital moving or static images, audio files, movie images, sound, voice, text, markup languages (e.g. HTML or XML).
  • the content server 306 may also be linked to another party's DAM data source.
  • the webpage 212 is accessed by the browser 216 on a client machine 310, which may be for example a personal computer (e.g. from Lenovo Group Ltd or Apple Corporation) attached to a network 312 (e.g. the Internet), a mobile telephone, a PDA, or any computer device capable of communicating with a web server 314 which serves the interactive content sequence 104.
  • the webpage 212, and the interactive content sequence 104 associated therewith, are processed by the browser 216 running on the client machine 310 such that displays are generated within the browser 216 and no installation process is required on the client machine 310.
  • the browser 216 may be any browser that supports active executable or scripting functions (e.g. Java or Flash), such as FireFox, Safari, or Internet Explorer.
  • the web server 314 may include for example an Apache web server running on a Linux computer, together with Java Server Pages (JSP) written to trigger the dialogue agent 214 and deliver the interactive content sequence 104.
  • JSP Java Server Pages
  • the generation server 302 communicates with the web server 314 over a network 316, for example the Internet, so that the generation of the interactive content sequence 104 can occur at a site remote from the web server 314.
  • a plurality of interactive content sequences 104 may be generated and provided to a plurality of web servers 314.
  • the profile data 110 and the selection rules 112 may include data and rules — for example the third party data 224 — accessible on a third party server 318 in communication with the generation server 312 via the network 316.
  • the third party server 318 in communication with the generation server 302, may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003, or a CRM system such as PeopleSoft, SAP or Seibel. Connection and exchange of information may involve a proprietary connection between the generation server 312 and the third party server 318, or be via batch CSV or tab delimited exports and imports.
  • the profile data 110 may be generated at least in part by data fusion of data collected from a variety of sources, e.g. Internet cookie data and credit card usage data corresponding to the same user may be fused together.
  • the personalised interactive content generation system 102 communicates with multiple remote agents 402, as shown in Figure 4, via a web services interface 406.
  • the remote agents 402 include:
  • a data entry agent 408 for storing the profile data 110 and delivering it to the personalised interactive content generation system 102 on request;
  • a campaign manager agent 410 accessible by a third party, for example an advertising corporation, wishing to manage a campaign of marketing or communications messages 114, including one or more sequences of interactive content 104, and associated templates and selection rules 112;
  • a content creation agent 412 for creating new content items, or editing existing content items, as managed by the content manager 206;
  • a customer relationship management (CRM) rules agent to allow third parties to create new rules in the selection rules 112, and to edit exiting rules; and (vi) an approvals agent 416 for accessing part of the system to approve of work content or a campaign message (eg template) for release.
  • CRM customer relationship management
  • the various remote agents 402 communicate via the web services interface 406 and a internationalisation and localisation interface 417, with respective local components 404 of the personalised interactive content generation system 102.
  • the internationalisation part of the interface 417 allows code to run on non-English computer systems, and the localisation part of the interface 417 allows the code to run in a foreign language.
  • the local components 404 include: (i) a data entry module 418 in the generation engine 202 for receiving data from the data entry agent 408;
  • a CRM rules module 424 in the generation engine 202 in communication with the CRM rules agent 414, for receiving and applying the selection rules 112 in the generation of interactive content
  • a rendering module 426 in the render engine that renders the content using templates and rules from the generation engine 202 in conjunction with a flash render module 428, a video render module 430, and an audio render module 432
  • a distribution module 434 of the generation engine for distributing the interactive content sequences 104 to the dialogue agent 214
  • a backup/recovery module 436 for periodically backing up the data in the generation engine 202, the render engine 204 and the content manager 206, and data in the selection rules 112 and profile data 110;
  • a high availability module 438 for providing server clustering, load balancing, fail- over and fail-back services to ensure that the system 102 is available for and responsive to requests received from a client device of a user;
  • a reporting module 440 in the render engine 202 for storing, processing and generating reporting data indicative of the performance of the various aspects of the personalised interactive content generation system 102, including for example the details of the interaction 118 between the interactive content sequence 104 and the user 106.
  • the local components 404 are based on the hardware of the personalised interactive content generation system (i.e. the generation server 302, the render server 304, the content server 306 and the content stores 308 as described above) via a data access layer 442.
  • the client 310 In a personalised interactive process, shown in Figure 5, the client 310, directed by the user 106, requests from the web server 314, at step 502, the webpage 212 of interest.
  • the dialogue agent 214 on the webpage 212 detects activity between the client 310 and the web server 314 (step 504).
  • the dialogue agent 214 When triggered, the dialogue agent 214 generates gathered data 220 from data on the client 310 (e.g. Internet cookies) at step 506, and requests an interactive content stage 108 (at step 508) from the generation engine 202 of the personalised interactive content generation system 102.
  • the generation engine 202 gathers other available profile data 110 (including third party data 224 and history data 222) at step 510, then generates a template using the profile data 110, and the selection rules 112 which process the profile data 110.
  • the template may be expressed in terms of a Business Process Execution Language (BPEL) or as an XML document. If this is the first time the generation engine 202 has been triggered in this interactive content sequence 104, the generation engine 202 establishes a new interactive content sequence 104, using the selection rules 112 and the profile data 1 10, and furthermore generates the template as a first template in the sequence.
  • the template is tagged with references and commands to access content files or elements.
  • the contents of the template are selected corresponding to a marketing and communications message 114, (e.g.
  • the render engine 204 parses the template at step 514 to request content from the content manager 206 and/or the content stores 308.
  • the requested content is provided at step 516 by the content manager 206 to the render engine 204, which collates and renders the requested content in accordance with the template to produce an interactive content stage 108 at step 518.
  • the template may be a non-linear video project file in order to produce a render video providing the interactive control stage 108.
  • the dialogue agent 214 receives the interactive content stage 108 from the render engine 204, via the generation engine 202, at step 520.
  • the dialogue agent 214 transmits the interactive content stage 108 to the client 310 via the web server 314 at step 522.
  • the web server 314 may also serve other data associated with the webpage 212, such HTML data supporting delivery of the content stage 108.
  • the user 106 views the interactive content stage 108 and may interact with the stage 108.
  • the interactive content stage 108 may include still images, moving images, sound, voice, text, interactive agents, e-commerce agents, and place holders or tags for local content; the local content is generated from data already in residence on the client 310 and is inserted dynamically by the dialogue agent 214.
  • the user 106 in interacting with the interactive content stage 108 at step 526, may enter further personal data (e.g. contact details) or commence an e-commerce transaction. If an interaction or transaction is commenced, the dialogue agent 214 participates in the interaction or transaction (step 528) and subsequently generates updates to the interactive profile data 116 regarding the proceedings and outcome of the interaction or transaction (step 530).
  • the interaction in step 528 may form part of a dialogue between the user 106 and the personalised interactive content generation system 102, consisting of interactive content stage 108, which creates states in the dialogue that are stepped through by the user 106 depending on the nature of each interaction 118.
  • the dialogue agent 214 queries (step 532) the generation engine 202 (step 534) to determine the current stage in the interactive content sequence 104.
  • the generation engine 202 keeps track of each interactive content stage 108 in the interactive content sequence 104 (e.g. as states in the dialogue). If a further interactive content stage 108 is to be followed in the current interactive content sequence 104 (i.e.
  • the dialogue agent 214 submits a further request to the generation engine 202 to generate the next interactive content stage 108 in the current interactive content sequence 104 at step 508, and the process repeats through steps 508 to 534. If no further stage 108 exists in the interactive content sequence 104, then the process 500 terminates. In this way, the interactive content sequence 104 progresses through different interactive content stages 108 depending on conduct of the user 106 and any other relevant profile data 110. For example, the user 106 may indicate in a check box in the interactive content stage 108 that he or she is severely dissatisfied with customer service relevant to the present marketing or communications message 114.
  • the interactive profile data 116 is updated after the interaction 118 flagging the dissatisfaction of the user 106.
  • the personalised interactive content generation system 102 will then, taking this newly gathered data into account, in accordance with the predefined selection rules 112, generate a further interactive content stage 118 specifically directed to gathering information about or otherwise responding to the dissatisfaction of the user 106.
  • the user 106 selects a product to purchase, including quantity, size, features, etc., via an interaction with the dialogue agent 214 on the webpage 212 viewed by the user 106 in step 602.
  • the dialogue agent 214 gathers passive profile data, if available, and submits this gathered data with a request for an interactive content stage 108 representing a purchase dialogue.
  • the generation engine 202 Upon receiving the data and request from the dialogue agent 214, the generation engine 202, at step 604, applies a selection rule 112 to determine whether the user 106 is a VIP member of a selected club or society; the determination in step 604 is performed with reference to the profile data 110 which presents information indicating whether the user is a VIP member, therefore the generation engine 202 accesses profile data 110 at step 606. If the user 106 is determined to be a VIP member at step 604, the generation engine 202 prepares and delivers an interactive content stage 108 representing a dialogue with an offer to a VIP member (at step 608).
  • the generation engine 202 returns an interactive content stage 108 representing an offer made to a non-member (i.e. a "cold call offer") at step 610.
  • the cold call offer interactive content stage 108 allows the user 106 the option of requesting more information from the personalised interactive content generation system 102, which is then received and responded to by the generation engine 202 at step 612, with access to information represented in data managed by the content manager 206 (product information is accessed and delivered by the content manager 206 at step 614).
  • the user may also submit a request to purchase the item, thus allowing the personalised interactive content generation system 102 to carry out an e-commerce transaction at step 616 on behalf of the user 106.
  • the e-commerce transaction in step 616 requires the personalised interactive content generation system 102 to interact with third party systems to carry out the transaction.
  • the generation engine 212 also updates the profile data 110 (and specifically the history data 222) to record the responses of the user 106.
  • the generation engine 202 determines whether the user 106 is eligible to join the VIP member program, at step 620, by processing the profile data 110. If the user is not eligible, the generation engine 202 presents an interactive content stage 106 representing a checkout process at step 634. If the user 106, as determined in step 620, is eligible to join the VIP program, an interactive content stage 108 representing a member sign-up process is presented to the user 106 at step 624. The user 106 then carries out an interaction 118 with the generation engine 202 at step 624, in which the generation engine 202 saves information (at step 626) and stores it in the profile data 110 at step 628.
  • the user is presented with a check-out system in step 634. If the user 106 was determined to be a VEP member at step 604, and was subsequently offered an interactive content stage 108 representing a member offer at step 608, the generation engine 202 steps into a VIP buy process (i.e. an e-commerce process) at step 630, similar to that in step 616 above, however as the profile data 110 indicates that the user 106 in this case is part of the VD? member program, the details of the e-commerce interaction will be slightly different (e.g. the price may change).
  • the e-commerce process of step 630 uses profile data 110, including interactive profile data 116 (i.e. joined VIP member program) at step 632.
  • step 634 the e-commerce interaction of either step 616 or step 630 is concluded, including communication with third party financial institutions, and use of cryptographic protocols.
  • step 636 the user 106 is presented with an interactive content stage 108 representing a goodbye or "ta ta for now" (TTFN) dialogue (which may lead to further interaction 118, and amendments to the interactive profile data 116).
  • TTFN ta ta for now
  • an independent party may interact in the process, for example the TTFN dialogue can activate or send information to a third party via the campaign manager agent 410.
  • An action in any given dialogue message e.g. message 114) can cause a change in state (e.g. the interactive content stage 108) and a change in the flow of a dialogue (e.g. the interactive content sequence 104), under the control of the generation engine 202.
  • the user 106 commences an interaction that is detected by the dialogue agent 214; for example the user 106 may select to engage in a particular dialogue from a number of options displayed by the dialogue agent 214.
  • the dialogue agent 214 determines whether the state of the interaction, i.e. profile data 1 10 relating to the current interactive content stage 108, or passive profile data residing on the client 310, needs to be gathered.
  • the dialogue agent 214 gathers the gathered data 220 and if new data was gathered (determined at step 708) this new data is stored in the profile data 110 in the personalised interactive content generation system 102 at step 710. If it was determined that no data needed to be collected at step 704, or no data was in fact collected at step 708, or after the gathered data 220 has been updated at step 710, the dialogue agent 214 requests the next interactive content stage 108 (i.e. the next state in the dialogue) at step 712, at which point the generation engine 202 queries the profile data 110 and the selection rules 112 in accordance with the current state (i.e. stage) of the current template.
  • the next interactive content stage 108 i.e. the next state in the dialogue
  • this rule is processed against the profile data 110 which includes the updated gathered data 220 (i.e. the data relates to the current state of the dialogue agent 214 and other profile data 110).
  • the outcome of a processed rule, or a direction in the template to include an item of content will be a request for either an asset or a text item of content, the outcome of which is determined in step 718.
  • the dialogue agent 214 is updated to reflect this new item of content (i.e. the interactive content sequence 104 passes into the next interactive content stage 108 with a new text-based item of content) at step 720.
  • the template requires a non-text-based item of content
  • this is provided by the content manager 206 and incorporated via the render engine 204 and the dialogue agent 214 in steps 722 and 724.
  • the dialogue agent 214 also determines whether the new non-text content requires only an amendment to the existing interactive content stage 108, in which case the updated interactive content stage 108 will be generated based on the pre-existing interactive content stage 108 that was available to the user 106 at the start of process 700; on the other hand, if the dialogue agent 214 determines that the new content requires a wholly different interactive content stage 108, this new interactive content stage 108, being a new dialogue, is loaded in step 726.
  • the flow of the interactive content sequence 104 is dynamically adjusted depending on the interaction 118 of the user 106 and the first interactive content stage 108 (i.e. in step 702), thereby not only leading to alterations in the displayed content (i.e. at step 720) but also leading to a completely new stage in the interactive content sequence 104, which may be different for each user 106, and for each time the interactive content sequence 104 is followed.
  • the components of the personalised interactive content generation system 102 can be realised using J2EE based on the Cairngorm framework from Adobe Labs (http://labs.adobe.com).
  • the dialogue agent 214 can invoke a credit card check and purchasing process that is included in a rendered flash video being delivered to the client, as shown in Figure 8.
  • the dialogue agent 214 activates the Execute command in the class ValidateCreditCardCommand 802, when the user 106 selects a part of the video, to activate the credit check and purchasing process.
  • the Execute command calls a ValidateCreditCardCommand in the CreditCardDelegate class 804 also in the dialogue agent 214.
  • the validateCreditCard process initiates an interaction with the personalised interactive content generation system 102 where the validateCreditCard command in the Purchases ervice class 806 commences an interaction with a third party financial institution which provides information determining whether the credit card information entered by the user 106 is valid.
  • the validateCreditCard process then returns a response to the dialogue agent 214, which activates an onResult function (in the ValidateCreditCardCommand 802) which processes the information returned from the personalised interactive content generation system 102 and if true executes the executeNextCommand function which is the Execute function in the CompletePurchaseCommand class 808, i.e.
  • the dialogue agent 214 proceeds to carry out a purchasing process using the purchase information entered by the user 106 regarding what they want to buy.
  • the Execute command in the CompletePurchaseCommand class 808 activates the completePurchase function in the PurchaseDelegate class 810 on the dialogue agent 214, which in turn communicates with and activates the completePurchase function in the PurchaseService class 806.
  • the completePurchase function commences communication with a third-party vendor of goods and services, which receives the information concerning the product to be purchased, and the validity of the financial details.
  • the completePurchase function carries out the corresponding e-commerce task, and returns information to the personalised interactive content generation system 102 that the purchase was a success or failure. Other information, for example regarding shipping, may also be provided to the personalised interactive content generation system 102, which returns the purchasing information to the dialogue agent 214, thereby activating the onResult function in the CompletePurchaseCommaiid class 808 of the dialogue agent 214.
  • the onResult function discloses information to the user regarding the outcomes of the purchasing process.
  • the ValidateCreditCardCommand class 802 and the CompletePurchaseCommand class 808 include onFault functions to deal with any faults (i.e. procedure errors) in the credit card check or purchasing processes.
  • the onResult function in the CompletePurchaseCommand class 808 finally returns the program flow in the dialogue agent 214 to a ModelLocator class 812 where at least part of the profile data 110 is stored locally in the dialogue agent 214.
  • the purchasing process uses in-built cryptographic functionality in the browser 216 and the webpage 212 to conduct any credit card check and purchasing process in a secure manner.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A personalised interactive content generation system, including: (i) a dialogue agent for generating interactive profile data based on interaction between a user of a client device and a part of a content sequence served by a site to the client device; and (ii) a generation system for dynamically generating another part of the content sequence based on profile data for the user of the client device, the profile data including the interactive profile data. The site can serve the dialogue agent to the client device, and the dialogue agent is able to dynamically adjust and insert data into the content sequence based on client data accessed from the client device. The generation system includes: a generation engine for generating templates for the parts of the content sequence using selection rules referenced in a message template representing an advertising or messaging campaign; and a render engine for parsing the templates and rendering the parts, which can include interactive video, for delivery to the client device.

Description

PERSONALISED INTERACTIVE CONTENT GENERATION
FIELD
The present invention relates to a content generation system for generating personalised content in a client/server environment.
BACKGROUND
Systems have been developed for dynamically adjusting and delivering content to consumers. For example, Internet based server systems are able to access previously stored profile data for a user when the user selects a URL on a web site, and a cookie is available for the user, or the user has previously logged onto a server hosting the site. The response returned to the user can include content (e.g. video, image, audio, text etc.) selected or adjusted based on the stored profile data. Also, targeted advertising on the Internet can include an advertisement that is selectively placed on a webpage (e.g. of a newspaper). The advertisement is customised each time the webpage is selected (i.e. loaded, or viewed) by a user (i.e. a visitor to the webpage). This customisation may include inserting different items of content based on data that is known by the webpage host, or that is provided by the user.
An advertisement on the Internet may provide for interaction by the user viewing the page. This interaction may involve altering a display when a cursor is moved relative to the advertisement on the webpage, and linking to another webpage of a different site (commonly corresponding to the advertised product or service) when the cursor is clicked on the advertisement. Linking to another site may be undesirable for the owner or author of the original webpage that includes the advertisement, as the other website may, for example, lead the user to cease viewing or interacting with the original site. Also the level of customisation that can be delivered for the user is currently constrained by the content generation technology used by existing systems. It is desired to address this or at least to provide a useful alternative.
SUMMARY
In accordance with the present invention, there is provided a personalised interactive content generation system, including: a dialogue agent for generating interactive profile data based on interaction between a user of a client device and a part of a content sequence served by a site to the client device; and a generation system for dynamically generating another part of the content sequence based on profile data for the user of said client device, said profile data including the interactive profile data.
The present invention also provides a content generation process, including: generating interactive profile data for a user whilst said user accesses a site; processing at least one content selection rule to generate a content stage of a content sequence, based on profile data including said interactive profile data; generating said content stage with content for said user; and serving said content stage for said user.
The present invention further provides a process for generating interactive content for a user of a client device, including: receiving interactive profile data generated by interaction by the user with a first content stage of a content sequence served to the client device; and generating a second content stage of the sequence using profile data associated with the user, said profile data including the interactive profile data.
DESCRIPTION OF THE DRAWINGS
Preferred embodiments of the invention are hereinafter described, by way of non-limiting example only, with reference to the accompanying drawings in which: Figure 1 is a schematic of a preferred embodiments of a personalised interactive content generation system in use;
Figure 2 is a component schematic of the personalised interactive content generation system; Figure 3 is a schematic of a hardware arrangement of the personalised interactive content generation system;
Figure 4 is a software architecture of the personalised interactive content generation system;
Figure 5 is a flow chart of a process performed by the personalised interactive content generation system;
Figure 6 is a flow chart of an example of the process in Figure 5;
Figure 7 is a flow chart of a process performed by the personalised interactive content generation system and a dialogue agent served by the system; and
Figure 8 is a UML diagram of components of the personalised interactive content generation system.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
A personalised interactive content generation system 102, as shown in Figures 1 and 2, generates an interactive content sequence 104, for example an interactive video advertisement, for display to a user 106. The user 106 may, for example, be viewing a webpage using an Internet browser (e.g. running a personal computer or a mobile telephone), where the webpage includes an animated advertisement (i.e. a first interactive content stage 108), that when clicked on by a user displays a fill-in form (i.e. a second interactive content stage 108) for entering credit card information and completing an online transaction. Each interactive content stage 108 is included in the interactive content sequence 104 generated by the personalised interactive content generation system 102.
The interactive content in each interactive content stage 108 is selected by the personalised interactive content generation system 102 based on profile data 110 associated with the user 106 and selection rules 112 associated with a marketing or communications message
114 (e.g. the message 114 may be an advertising message to be conveyed as part of an advertising campaign for sale of a product, such as a good or service). The interactive content sequence 104 is also selected based on the profile data 110 and the selection rules 112. Accordingly, the profile data 110 and the selected rules 112 may determine a different interactive content sequence 104 of the interactive content stages 108 for each user 106.
The profile data 110, associated with the user 106, includes interactive profile data 116 generated by an interaction 118 by the user 106 with any interactive content displayed in the interactive content sequence 104. The combination of the two types of profile data allows the system to execute an automated, but dynamic, conversation or dialogue with the user. By conducting this conversation the content sequence can be adjusted to engage the user. For example, if the user 106 is shown an animated sequence delivering a marketing message in a first interactive content stage 108, the second interactive content stage 108 is selected depending on profile data, including data derived from the response of the user 106 to the animation. In another example, a user may indicate having had a bad experience with a certain product in a first interactive content stage 108, therefore leading to a second interactive content stage 108 representing a complaints procedure.
The personalised interactive content generation system 102, as shown in Figure 2, includes a generation engine 202 for transmitting the interactive content sequence 104 to the user
106, for requesting and managing the profile data 110 and the selection rules 112, and for coordinating the generation of the interactive content with a render engine 204 and a content manager 206. The selection rules 112 are procedural rules executed by the generation engine 202 to process the available profile data and generate one or more templates for processing by the render engine 204. The rules may be referenced in a campaign or message template that is used to provide a basis for the templates generated by the generation engine 202. The templates are intermediary XML files or video project files. The render engine 204 generates each interactive content stage 108 based on a template from the generation engine 202, and incorporates items of content from the content manager 206. The interactive content stage 108 can be an interactive video sequence. The content manager 206 manages and distributes items of content, including video files, text files, still image files, interactive files, digital games, e-commerce interfaces, etc.
The render engine 204 handles receipt of templates from the generation engine 202 and automatically attends to rendering and production of the video data in a format appropriate for display to the user 106 (e.g. within the web browser 216). The render engine 204 communicates with the content manager 206 to access the content referenced in a template directly or selected by a selection rule referenced in the template.
The interactive content sequence 104, after being generated by the personalised interactive content generation system 102, is provided via a network 210 to a webpage 212 where the interactive content is displayed by a remote agent in the form of a dialogue agent 214 on the webpage 212 (e.g. by URL reference). The user 106, using a web-enabled browser 216, accesses the webpage 212 and views the interactive content as displayed by the dialogue agent 214.
The profile data 110, used to select interactive content, includes interactive profile data 116 and static profile data 218. Interactive profile data 116 is profile data that can be updated over time depending on how a person interacts with the application. An example of interactive profile data 116 might be a purchase or catalogue browsing data trail, or data arising from a response of a user to an earlier interactive content stage 108. Static profile data 218 includes gathered data 220, history data 222 and third party data 224. The gathered data 220 includes profile data generated by the dialogue agent 214 interacting with the browser 216 to extract relevant profile information from passive data accessed by the browser 216, including profile data stored in Internet cookies. The history data 222 includes any interactive profile data 116 stored from a past interaction 118 of the user 106 with a relevant past interactive content sequence 104. The third party data 224 includes data associated with the user supplied by third parties, for example profile data associated with the specific contents or subject matter of the webpage 212, profile data associated with a known geographical location of the browser 216, and/or profile data provided by the user 106 in a third party data gathering process (e.g. a personal homepage associated with the user 106 including name, data of birth, gender, ethnicity, body type, height, homepage purpose for dating/friends/networking/friendship, address, occupation, diary topics, interest, music, films, television, books, heroes, marital status, sexual orientation, home town, religion, smoking habits, drinking habits, children, education, income, places of education, places of work, areas of interest for networking, and favourite song/music). The profile data 110 may be stored in a database, directory, flat file system, XML or tab delimited text or equivalent format.
The selection rules 112 associated with a message 114 are stored as XML, for example as shown in Appendix A, to select content items or assets based on the profile data.
The items of content managed by a content manager 206 include still images, moving images, sound, voice, text, interactive agents, ecommerce agents, and place holders or tags for local content, and other content assets.
The generation engine 202, the render engine 204 and the content manager 206 may be embodied in separate computer servers, or combined on a single computer machine, which may be combined with a web server. It will be understood that any software components of the generation engine 202, the render engine 204 and the content manager 206, or any other software components described herein, can be replaced or substituted at least in part by hardware components, such as dedicated ASICs (application specific integrated circuits) or FPGAs (field programmable gate arrays), to perform at least part of the processes performed by the software components.
In a typical arrangement, shown in Figure 3, the generation engine 202 resides on a generation server 302, which may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003 or Apple OS X. The rules processing in the generation engine 202 may be based on Microsoft SQL server commands. The generation server 302 may be distributed, clustered and replicated to scale generation capabilities, provide load balancing and failover. The render engine 204 is implemented on one or more render servers 304, e.g. G5 computers from Apple Corp with video rending software such as Final Cut Pro, or PC servers running ActiveSWF by CPS Labs Ltd, or Kinetic Fusion server software by Kinesis Software Ltd. ActiveSWF and Kinetic Fusion are able to generate SWF files from intermediary XML project file languages. The render servers 304 each include render engine components for controlling the respective video rendering tool, i.e. File Cut Pro or ActiveSWF. The render engine 204 handles receipt of the templates (e.g. video project files) from the generation engine 202 and automatically attends to rendering and production of the content data in a format appropriate for the required server 314 and client 310 (e.g. SWF or video for a cell phone). The render engine 204 communicates with the content server 206 to access content. The render engine components may be written in Java computer program code.
The content manager 206 is implemented on one or more content servers 306, provides content, which have access to one or more content stores 308. The content server 306 is implemented using a digital asset manager (DAM) which is based on the MySQL database. The content server 306 may support other databases, for example Oracle,
SQLServer or Ingres. The content server 306 may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003 or Apple OS X. The DAM provides access to a plurality of file servers via the content stores 308. The content stores 308 may include one or more NASs, network attached storage devices (NASDs) or storage area networks
(SANs). The DAM may store any data directly for the content manager 206 or data merely associated with remote data that is required by the content manager 206. This may include digital moving or static images, audio files, movie images, sound, voice, text, markup languages (e.g. HTML or XML). The content server 306 may also be linked to another party's DAM data source.
The webpage 212 is accessed by the browser 216 on a client machine 310, which may be for example a personal computer (e.g. from Lenovo Group Ltd or Apple Corporation) attached to a network 312 (e.g. the Internet), a mobile telephone, a PDA, or any computer device capable of communicating with a web server 314 which serves the interactive content sequence 104. The webpage 212, and the interactive content sequence 104 associated therewith, are processed by the browser 216 running on the client machine 310 such that displays are generated within the browser 216 and no installation process is required on the client machine 310. The browser 216 may be any browser that supports active executable or scripting functions (e.g. Java or Flash), such as FireFox, Safari, or Internet Explorer. The web server 314 may include for example an Apache web server running on a Linux computer, together with Java Server Pages (JSP) written to trigger the dialogue agent 214 and deliver the interactive content sequence 104. The generation server 302 communicates with the web server 314 over a network 316, for example the Internet, so that the generation of the interactive content sequence 104 can occur at a site remote from the web server 314. Furthermore, a plurality of interactive content sequences 104 may be generated and provided to a plurality of web servers 314.
The profile data 110 and the selection rules 112 may include data and rules — for example the third party data 224 — accessible on a third party server 318 in communication with the generation server 312 via the network 316. The third party server 318, in communication with the generation server 302, may be an IBM PC server running MySQL on Linux, Microsoft Windows Server 2003, or a CRM system such as PeopleSoft, SAP or Seibel. Connection and exchange of information may involve a proprietary connection between the generation server 312 and the third party server 318, or be via batch CSV or tab delimited exports and imports. The profile data 110 may be generated at least in part by data fusion of data collected from a variety of sources, e.g. Internet cookie data and credit card usage data corresponding to the same user may be fused together.
The personalised interactive content generation system 102 communicates with multiple remote agents 402, as shown in Figure 4, via a web services interface 406. The remote agents 402 include:
(i) the dialogue agent 214;
(ii) a data entry agent 408 for storing the profile data 110 and delivering it to the personalised interactive content generation system 102 on request;
(iiϊ) a campaign manager agent 410 accessible by a third party, for example an advertising corporation, wishing to manage a campaign of marketing or communications messages 114, including one or more sequences of interactive content 104, and associated templates and selection rules 112;
(iv) a content creation agent 412 for creating new content items, or editing existing content items, as managed by the content manager 206;
(v) a customer relationship management (CRM) rules agent to allow third parties to create new rules in the selection rules 112, and to edit exiting rules; and (vi) an approvals agent 416 for accessing part of the system to approve of work content or a campaign message (eg template) for release.
The various remote agents 402 communicate via the web services interface 406 and a internationalisation and localisation interface 417, with respective local components 404 of the personalised interactive content generation system 102. The internationalisation part of the interface 417 allows code to run on non-English computer systems, and the localisation part of the interface 417 allows the code to run in a foreign language. The local components 404 include: (i) a data entry module 418 in the generation engine 202 for receiving data from the data entry agent 408;
(ii) a dialogue module 420 in the generation engine 202 for communicating with the dialogue agent 214;
(iii) an approvals module 422, residing on the generation engine 202 and in communication with the approvals agent 416 for approving content in the design/creative phase;
(iv) a CRM rules module 424 in the generation engine 202, in communication with the CRM rules agent 414, for receiving and applying the selection rules 112 in the generation of interactive content; (v) a rendering module 426 in the render engine, that renders the content using templates and rules from the generation engine 202 in conjunction with a flash render module 428, a video render module 430, and an audio render module 432; (vi) a distribution module 434 of the generation engine for distributing the interactive content sequences 104 to the dialogue agent 214; (vii) a backup/recovery module 436 for periodically backing up the data in the generation engine 202, the render engine 204 and the content manager 206, and data in the selection rules 112 and profile data 110;
(viii) a high availability module 438 for providing server clustering, load balancing, fail- over and fail-back services to ensure that the system 102 is available for and responsive to requests received from a client device of a user; and
(ix) a reporting module 440 in the render engine 202 for storing, processing and generating reporting data indicative of the performance of the various aspects of the personalised interactive content generation system 102, including for example the details of the interaction 118 between the interactive content sequence 104 and the user 106.
The local components 404 are based on the hardware of the personalised interactive content generation system (i.e. the generation server 302, the render server 304, the content server 306 and the content stores 308 as described above) via a data access layer 442.
In a personalised interactive process, shown in Figure 5, the client 310, directed by the user 106, requests from the web server 314, at step 502, the webpage 212 of interest. In response to the page request (step 502), the dialogue agent 214 on the webpage 212 detects activity between the client 310 and the web server 314 (step 504). When triggered, the dialogue agent 214 generates gathered data 220 from data on the client 310 (e.g. Internet cookies) at step 506, and requests an interactive content stage 108 (at step 508) from the generation engine 202 of the personalised interactive content generation system 102.
The generation engine 202 gathers other available profile data 110 (including third party data 224 and history data 222) at step 510, then generates a template using the profile data 110, and the selection rules 112 which process the profile data 110. The template may be expressed in terms of a Business Process Execution Language (BPEL) or as an XML document. If this is the first time the generation engine 202 has been triggered in this interactive content sequence 104, the generation engine 202 establishes a new interactive content sequence 104, using the selection rules 112 and the profile data 1 10, and furthermore generates the template as a first template in the sequence. The template is tagged with references and commands to access content files or elements. The contents of the template are selected corresponding to a marketing and communications message 114, (e.g. as an advertisement in a car advertising campaign). The render engine 204 parses the template at step 514 to request content from the content manager 206 and/or the content stores 308. The requested content is provided at step 516 by the content manager 206 to the render engine 204, which collates and renders the requested content in accordance with the template to produce an interactive content stage 108 at step 518. The template may be a non-linear video project file in order to produce a render video providing the interactive control stage 108. The dialogue agent 214 receives the interactive content stage 108 from the render engine 204, via the generation engine 202, at step 520. The dialogue agent 214 transmits the interactive content stage 108 to the client 310 via the web server 314 at step 522. The web server 314 may also serve other data associated with the webpage 212, such HTML data supporting delivery of the content stage 108.
At step 524, the user 106 views the interactive content stage 108 and may interact with the stage 108. The interactive content stage 108 may include still images, moving images, sound, voice, text, interactive agents, e-commerce agents, and place holders or tags for local content; the local content is generated from data already in residence on the client 310 and is inserted dynamically by the dialogue agent 214. The user 106, in interacting with the interactive content stage 108 at step 526, may enter further personal data (e.g. contact details) or commence an e-commerce transaction. If an interaction or transaction is commenced, the dialogue agent 214 participates in the interaction or transaction (step 528) and subsequently generates updates to the interactive profile data 116 regarding the proceedings and outcome of the interaction or transaction (step 530).
The interaction in step 528 may form part of a dialogue between the user 106 and the personalised interactive content generation system 102, consisting of interactive content stage 108, which creates states in the dialogue that are stepped through by the user 106 depending on the nature of each interaction 118. After any interaction or transaction with the client 310 (in step 526, 528) is complete, and the interactive profile data 116 has been updated (step 530), the dialogue agent 214 queries (step 532) the generation engine 202 (step 534) to determine the current stage in the interactive content sequence 104. The generation engine 202 keeps track of each interactive content stage 108 in the interactive content sequence 104 (e.g. as states in the dialogue). If a further interactive content stage 108 is to be followed in the current interactive content sequence 104 (i.e. a subsequent state in the dialogue), as determined by the existing selection rules 112 and the profile data 110 (including any updated interactive profile data 116 from step 530), the dialogue agent 214 submits a further request to the generation engine 202 to generate the next interactive content stage 108 in the current interactive content sequence 104 at step 508, and the process repeats through steps 508 to 534. If no further stage 108 exists in the interactive content sequence 104, then the process 500 terminates. In this way, the interactive content sequence 104 progresses through different interactive content stages 108 depending on conduct of the user 106 and any other relevant profile data 110. For example, the user 106 may indicate in a check box in the interactive content stage 108 that he or she is severely dissatisfied with customer service relevant to the present marketing or communications message 114. In this case, the interactive profile data 116 is updated after the interaction 118 flagging the dissatisfaction of the user 106. The personalised interactive content generation system 102 will then, taking this newly gathered data into account, in accordance with the predefined selection rules 112, generate a further interactive content stage 118 specifically directed to gathering information about or otherwise responding to the dissatisfaction of the user 106.
In an example 600 of the personalised interactive process 500, shown in Figure 6, the user 106 selects a product to purchase, including quantity, size, features, etc., via an interaction with the dialogue agent 214 on the webpage 212 viewed by the user 106 in step 602. The dialogue agent 214 gathers passive profile data, if available, and submits this gathered data with a request for an interactive content stage 108 representing a purchase dialogue. Upon receiving the data and request from the dialogue agent 214, the generation engine 202, at step 604, applies a selection rule 112 to determine whether the user 106 is a VIP member of a selected club or society; the determination in step 604 is performed with reference to the profile data 110 which presents information indicating whether the user is a VIP member, therefore the generation engine 202 accesses profile data 110 at step 606. If the user 106 is determined to be a VIP member at step 604, the generation engine 202 prepares and delivers an interactive content stage 108 representing a dialogue with an offer to a VIP member (at step 608).
If the user 106 is determined to lack VIP membership at step 604, the generation engine 202 returns an interactive content stage 108 representing an offer made to a non-member (i.e. a "cold call offer") at step 610. The cold call offer interactive content stage 108 allows the user 106 the option of requesting more information from the personalised interactive content generation system 102, which is then received and responded to by the generation engine 202 at step 612, with access to information represented in data managed by the content manager 206 (product information is accessed and delivered by the content manager 206 at step 614). At step 610, during the cold call offer, the user may also submit a request to purchase the item, thus allowing the personalised interactive content generation system 102 to carry out an e-commerce transaction at step 616 on behalf of the user 106. The e-commerce transaction in step 616 requires the personalised interactive content generation system 102 to interact with third party systems to carry out the transaction. During the purchase process at step 616, the generation engine 212 also updates the profile data 110 (and specifically the history data 222) to record the responses of the user 106.
After the e-commerce transaction in step 616, the generation engine 202, following the relevant selection rules 112, determines whether the user 106 is eligible to join the VIP member program, at step 620, by processing the profile data 110. If the user is not eligible, the generation engine 202 presents an interactive content stage 106 representing a checkout process at step 634. If the user 106, as determined in step 620, is eligible to join the VIP program, an interactive content stage 108 representing a member sign-up process is presented to the user 106 at step 624. The user 106 then carries out an interaction 118 with the generation engine 202 at step 624, in which the generation engine 202 saves information (at step 626) and stores it in the profile data 110 at step 628. Following the sign-up process 624, the user is presented with a check-out system in step 634. If the user 106 was determined to be a VEP member at step 604, and was subsequently offered an interactive content stage 108 representing a member offer at step 608, the generation engine 202 steps into a VIP buy process (i.e. an e-commerce process) at step 630, similar to that in step 616 above, however as the profile data 110 indicates that the user 106 in this case is part of the VD? member program, the details of the e-commerce interaction will be slightly different (e.g. the price may change). The e-commerce process of step 630 uses profile data 110, including interactive profile data 116 (i.e. joined VIP member program) at step 632.
In a check-out system at step 634, the e-commerce interaction of either step 616 or step 630 is concluded, including communication with third party financial institutions, and use of cryptographic protocols. Finally, at step 636 the user 106 is presented with an interactive content stage 108 representing a goodbye or "ta ta for now" (TTFN) dialogue (which may lead to further interaction 118, and amendments to the interactive profile data 116).
In the example of the personalised interactive process 500 described with reference to Figure 6, an independent party may interact in the process, for example the TTFN dialogue can activate or send information to a third party via the campaign manager agent 410. An action in any given dialogue message (e.g. message 114) can cause a change in state (e.g. the interactive content stage 108) and a change in the flow of a dialogue (e.g. the interactive content sequence 104), under the control of the generation engine 202.
In an example 700 of the interaction 118 between the user 106 and the interactive content sequence 104, the user 106, at step 702, commences an interaction that is detected by the dialogue agent 214; for example the user 106 may select to engage in a particular dialogue from a number of options displayed by the dialogue agent 214. At step 704, the dialogue agent 214 determines whether the state of the interaction, i.e. profile data 1 10 relating to the current interactive content stage 108, or passive profile data residing on the client 310, needs to be gathered. If data needs to be gathered, the dialogue agent 214 at step 706 gathers the gathered data 220 and if new data was gathered (determined at step 708) this new data is stored in the profile data 110 in the personalised interactive content generation system 102 at step 710. If it was determined that no data needed to be collected at step 704, or no data was in fact collected at step 708, or after the gathered data 220 has been updated at step 710, the dialogue agent 214 requests the next interactive content stage 108 (i.e. the next state in the dialogue) at step 712, at which point the generation engine 202 queries the profile data 110 and the selection rules 112 in accordance with the current state (i.e. stage) of the current template.
If the template includes a rule, as determined in step 714, this rule is processed against the profile data 110 which includes the updated gathered data 220 (i.e. the data relates to the current state of the dialogue agent 214 and other profile data 110). The outcome of a processed rule, or a direction in the template to include an item of content, will be a request for either an asset or a text item of content, the outcome of which is determined in step 718. If the template, or a process rule in the template, requests a text-based item of content, the dialogue agent 214 is updated to reflect this new item of content (i.e. the interactive content sequence 104 passes into the next interactive content stage 108 with a new text-based item of content) at step 720. If, at step 718, it is determined that the template requires a non-text-based item of content, this is provided by the content manager 206 and incorporated via the render engine 204 and the dialogue agent 214 in steps 722 and 724. At 724, the dialogue agent 214 also determines whether the new non-text content requires only an amendment to the existing interactive content stage 108, in which case the updated interactive content stage 108 will be generated based on the pre-existing interactive content stage 108 that was available to the user 106 at the start of process 700; on the other hand, if the dialogue agent 214 determines that the new content requires a wholly different interactive content stage 108, this new interactive content stage 108, being a new dialogue, is loaded in step 726. In this process 700, the flow of the interactive content sequence 104 is dynamically adjusted depending on the interaction 118 of the user 106 and the first interactive content stage 108 (i.e. in step 702), thereby not only leading to alterations in the displayed content (i.e. at step 720) but also leading to a completely new stage in the interactive content sequence 104, which may be different for each user 106, and for each time the interactive content sequence 104 is followed.
In one implementation, the components of the personalised interactive content generation system 102 can be realised using J2EE based on the Cairngorm framework from Adobe Labs (http://labs.adobe.com). For example, the dialogue agent 214 can invoke a credit card check and purchasing process that is included in a rendered flash video being delivered to the client, as shown in Figure 8. In this instance, the dialogue agent 214 activates the Execute command in the class ValidateCreditCardCommand 802, when the user 106 selects a part of the video, to activate the credit check and purchasing process. The Execute command calls a ValidateCreditCardCommand in the CreditCardDelegate class 804 also in the dialogue agent 214. The validateCreditCard process initiates an interaction with the personalised interactive content generation system 102 where the validateCreditCard command in the Purchases ervice class 806 commences an interaction with a third party financial institution which provides information determining whether the credit card information entered by the user 106 is valid. The validateCreditCard process then returns a response to the dialogue agent 214, which activates an onResult function (in the ValidateCreditCardCommand 802) which processes the information returned from the personalised interactive content generation system 102 and if true executes the executeNextCommand function which is the Execute function in the CompletePurchaseCommand class 808, i.e. once the credit card information of the user 106 has been validated, the dialogue agent 214 proceeds to carry out a purchasing process using the purchase information entered by the user 106 regarding what they want to buy. The Execute command in the CompletePurchaseCommand class 808 activates the completePurchase function in the PurchaseDelegate class 810 on the dialogue agent 214, which in turn communicates with and activates the completePurchase function in the PurchaseService class 806. The completePurchase function commences communication with a third-party vendor of goods and services, which receives the information concerning the product to be purchased, and the validity of the financial details. The completePurchase function carries out the corresponding e-commerce task, and returns information to the personalised interactive content generation system 102 that the purchase was a success or failure. Other information, for example regarding shipping, may also be provided to the personalised interactive content generation system 102, which returns the purchasing information to the dialogue agent 214, thereby activating the onResult function in the CompletePurchaseCommaiid class 808 of the dialogue agent 214. The onResult function discloses information to the user regarding the outcomes of the purchasing process. The ValidateCreditCardCommand class 802 and the CompletePurchaseCommand class 808 include onFault functions to deal with any faults (i.e. procedure errors) in the credit card check or purchasing processes. The onResult function in the CompletePurchaseCommand class 808 finally returns the program flow in the dialogue agent 214 to a ModelLocator class 812 where at least part of the profile data 110 is stored locally in the dialogue agent 214.
The purchasing process uses in-built cryptographic functionality in the browser 216 and the webpage 212 to conduct any credit card check and purchasing process in a secure manner.
Many modifications will be apparent to those skilled in the art without departing from the scope of the present invention as herein described with reference to the accompanying drawings.
APPENDIX A
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> z <crmRuleSet> J1 <crmRule>
J1 <crmRuleClause> J1 <crmRuleElement>
<category>ALPHA</category>
<attribute>gender</attribute> <operator>EQUALS</operator>
<attrval>male</attrval>
</crmRuleElement>
</crmRuleClause>
<assetID>96</assetID> </crmRule> J1 <crmRule> J1 <crmRuleClause> J1 <crmRuleElement>
<category>ALPHA</category> <attribute>gender</attribute>
<operator>EQUALS</operator>
<attrval>female</attrval>
</crmRuleElement>
</crmRuleClause> <assetID>98</assetID>
</crmRule>
<assetID>97</assetID>
</crmRuleSet>

Claims

THE CLAIMS DEFINING THE INVENTION ARE AS FOLLOWS:
1. A personalised interactive content generation system, including: a dialogue agent for generating interactive profile data based on interaction between a user of a client device and a part of a content sequence served by a site to the client device; and a generation system for dynamically generating another part of the content sequence based on profile data for the user of said client device, said profile data including the interactive profile data.
2. A personalised interactive content generation system as claimed in claim 1, wherein said site serves said dialogue agent to said client device.
3. A personalised interactive content generation system as claimed in claim 1 or 2, wherein said dialogue agent dynamically adjusts said content sequence based on client data accessed from said client device.
4. A personalised interactive content generation system as claimed in claim 3, wherein said dialogue agent inserts content in said sequence based on said client data.
5. A personalised interactive content generation system as claimed in claim 1 , wherein said generation system accesses at least one content selection rules to operate on said profile data and generate at least said another part of said content sequence.
6. A personalised interactive content generation system as claimed in claim 5, wherein said generation system includes: a generation engine for generating at least one template for the parts of said content sequence using said at least one selection rule referenced in a message template; and render engine for parsing said at least on template and rendering said parts for delivery to said client device.
7. A personalised interactive content generation system as claimed in claim 6, wherein said parts of the content sequence are respective interactive content stages.
8. A personalised interactive content generation system as claimed in claim 7, wherein at least one of said stages include video which the user can interact with using the client device.
9. A content generation process, including: generating interactive profile data for a user whilst said user accesses a site; processing at least one content selection rule to generate a content stage of a content sequence, based on profile data including said interactive profile data; generating said content stage with content for said user; and serving said content stage for said user.
10. A process as claimed in claim 9, including serving a dialogue agent to a client device used by said user to generate and send said interactive profile data.
11. A process as claimed in claim 9, including dynamically adjusting said content sequence on a client device of said user based on data accessed from said client device.
12. A process as claimed in claim 11, including inserting content in said content sequence based on said data accessed from said client device.
13. A process as claimed in claim 9, including generating at least one template for the said content stage using said at least one selection rule referenced in a message template; and parsing said at least on template and rendering said stage for delivery to said user.
14. A process as claimed in any one of claims 9 to 13, wherein said content stage includes video.
15. A process for generating interactive content for a user of a client device, including: receiving interactive profile data generated by interaction by the user with a first content stage of a content sequence served to the client device; and generating a second content stage of the sequence using profile data associated with the user, said profile data including the interactive profile data.
16. A process as claimed in claim 15, wherein said interactive data is provided by a dialogue agent operating on the client device.
17. A process as claimed in claim 16, wherein the dialogue agent monitors activity between the client device and a server for serving the content sequence to trigger generation of at least one of the content stages.
18. A process as claimed in claim 17, wherein the dialogue agent adjusts said content sequence on said client device based on data obtained from said client device.
19. A process as claimed in any one claims 15 to 18, wherein at least the second content stage is generated based on at least one selection rule which uses the profile data.
20. A process as claimed in any one claims 15 to 18, wherein at least the second content stage is generated using a template with references to content and at least one selection rule.
21. A process as claimed in any one of claims 9 to 20, wherein the profile data includes static profile data
22. A process as claimed in claim 21, wherein the static profile data includes history data representing past interactions with the user,
23. A process as claimed in claim 21, wherein the static profile data includes personal profile data relating to the user in a CRM database.
24. A process as claimed in any one of claims 9 to 20, wherein the content sequence completes a payment transaction with the user.
25. A process as claimed in any one of claims 9 to 20, wherein the content sequence includes a communications message as part of an advertising campaign.
26. A process in anyone of claims 15 to 25, wherein the content stages include rendered video.
27. Computer program instructions stored on storage media for use in performing a process as claimed in any one of claims 9 to 26.
PCT/AU2007/001677 2006-11-01 2007-11-01 Personalised interactive content generation WO2008052280A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU2006906092A AU2006906092A0 (en) 2006-11-01 Personalised interactive content generation
AU2006906092 2006-11-01

Publications (1)

Publication Number Publication Date
WO2008052280A1 true WO2008052280A1 (en) 2008-05-08

Family

ID=39343708

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2007/001677 WO2008052280A1 (en) 2006-11-01 2007-11-01 Personalised interactive content generation

Country Status (1)

Country Link
WO (1) WO2008052280A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014001744A1 (en) * 2012-06-26 2014-01-03 Cm Online Limited Interactive system
WO2014176682A1 (en) * 2013-05-01 2014-11-06 Lumo Play, Inc. Content generation for interactive video projection systems
US9993733B2 (en) 2014-07-09 2018-06-12 Lumo Interactive Inc. Infrared reflective device interactive projection effect system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020049783A1 (en) * 2000-08-09 2002-04-25 Berk Steven N. Interactive multimedia content builder
US7047209B2 (en) * 1988-07-15 2006-05-16 International Business Machines Method for presenting advertising in an interactive service

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047209B2 (en) * 1988-07-15 2006-05-16 International Business Machines Method for presenting advertising in an interactive service
US20020049783A1 (en) * 2000-08-09 2002-04-25 Berk Steven N. Interactive multimedia content builder

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014001744A1 (en) * 2012-06-26 2014-01-03 Cm Online Limited Interactive system
US20150180946A1 (en) * 2012-06-26 2015-06-25 CM Online LlIMITED Interactive System
WO2014176682A1 (en) * 2013-05-01 2014-11-06 Lumo Play, Inc. Content generation for interactive video projection systems
US9241124B2 (en) 2013-05-01 2016-01-19 Lumo Play, Inc. Content generation for interactive video projection systems
CN105359546A (en) * 2013-05-01 2016-02-24 乐盟普雷公司 Content generation for interactive video projection systems
CN105359546B (en) * 2013-05-01 2018-09-25 乐盟交互公司 Content for interactive video optical projection system generates
US9993733B2 (en) 2014-07-09 2018-06-12 Lumo Interactive Inc. Infrared reflective device interactive projection effect system

Similar Documents

Publication Publication Date Title
US11295321B2 (en) System and method for interacting with a web portal
US10503386B2 (en) Messaging window overlay for a browser
US20210406922A1 (en) System and method for word-of-mouth advertising
JP5735480B2 (en) Method and system for searching, selecting and displaying content
US20190130473A1 (en) Systems and methods for distributed commerce, shoppable advertisements and loyalty rewards
US20140279050A1 (en) Dynamic chatbot
US20110202377A1 (en) Method and system for providing a segment based differentiated customer experience solution
CN101689264A (en) Contextual content publishing system and method
EP2943923A1 (en) Reporting mobile application actions
US20020087412A1 (en) Method for post-sales customer retention
WO2008052280A1 (en) Personalised interactive content generation
US20070226275A1 (en) System and method for transferring media
US9298779B1 (en) Combining content with a search result
WO2014123505A1 (en) Method and system for group purchase of on-line advertising
US20140279170A1 (en) Systems and methods for an online fashion design marketplace
US11734733B2 (en) Conversational mapping of web items for mediated group decisions
WO2015171567A1 (en) Crediting ecommerce entities for conversions
US20140067532A1 (en) Use of personal preferences to control presentation of advertisements
US10482469B2 (en) Systems and methods for providing information from multiple sources
JP2023550360A (en) Video ad augmentation using dynamic web content
WO2009035625A2 (en) Advertising system - revenue sharing

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07815481

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07815481

Country of ref document: EP

Kind code of ref document: A1