(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023103229
(43)【公開日】2023-07-26
(54)【発明の名称】関連アイテムを識別しウェブページに提示するための統合プラグイン
(51)【国際特許分類】
H04L 67/02 20220101AFI20230719BHJP
G06Q 30/06 20230101ALI20230719BHJP
【FI】
H04L67/02
G06Q30/06
【審査請求】有
【請求項の数】23
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023065185
(22)【出願日】2023-04-12
(62)【分割の表示】P 2021078776の分割
【原出願日】2021-05-06
(31)【優先権主張番号】62/189,671
(32)【優先日】2015-07-07
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/199,762
(32)【優先日】2015-07-31
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVASCRIPT
2.SWIFT
3.PYTHON
4.Java
(71)【出願人】
【識別番号】518005562
【氏名又は名称】シンプルシュアランス ゲーエムベーハー
【氏名又は名称原語表記】SIMPLESURANCE GMBH
【住所又は居所原語表記】Am Karlsbad 16, D-10785 Berlin, Germany
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】ヴォン ヘイン, ロビン
(72)【発明者】
【氏名】ヴォン ボニン, ヨアキム
(72)【発明者】
【氏名】アスキー, イスメイル
(72)【発明者】
【氏名】ケスター, マニュエル
(57)【要約】 (修正有)
【課題】テンプレートブロックの見た目が適合的であり、プロセスの1つ以上の段階でリモート構成及び最適化を有するカートアイテムとのアイテムの自動合致方法、カスタマイズされたテンプレートブロックの生成方法及びレンダリング方法を提供する。
【解決手段】ウェブサイト110及び統合システム120において、統合プラグイン118は、共通技術を用いて様々なブラウザにわたって動作し、ウェブサイトのタイプに基づく個別のカスタマイズを必要とせず、テンプレートブロック114の簡単な表示、ユーザデータの転送及びアイテム合致を可能にし、ユーザが追加アイテムを選択すると、追加アイテムに関連した情報を統合システム120のコアアプリケーション122へ送信する。コアアプリケーションは、追加アイテムに関連した情報を追跡のためにリアルタイム性能追跡モジュール134へ転送する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
クライアントコンピュータでオンライン環境を提供する方法であって、前記方法は、前記クライアントコンピュータによって実行する、
プラグインモジュールと第1アイテムの識別情報とを含むウェブページをウェブサイトから受信することと、
前記クライアントコンピュータで前記プラグインモジュールを実行することと、
前記プラグインモジュールを用いて、統合サーバコンピュータからの統合スクリプトを求めるスクリプトリクエストを送信することと、
前記スクリプトリクエストに応答して、前記統合サーバコンピュータから第1統合スクリプトを受信することと、
前記クライアントコンピュータで前記第1統合スクリプトを実行することと、
前記第1統合スクリプトを用いて、前記統合サーバコンピュータからの前記第1アイテムに関連したアイテムを求めるアイテムリクエストを送信することと、
前記アイテムリクエストに応答して、第2アイテムに関連した情報を前記統合サーバコンピュータから受信することであって、前記統合サーバコンピュータは複数のアイテムから前記第2アイテムを識別し、前記第2アイテムは前記第1アイテムに関連する、ことと、
前記統合スクリプトを用いて、前記第2アイテムに関連した前記情報の少なくとも一部を含むように前記ウェブページを更新することと、
前記第2アイテムに関連した前記含まれた情報に基づいて前記更新されたウェブページを前記クライアントコンピュータで表示することと、を有する、方法。
【請求項2】
請求項1に記載の方法であって、
前記第1統合スクリプトを用いて、前記第1アイテムに関連したアイテムが前記統合サーバコンピュータから受信されていないことを判定することであって、前記判定は前記アイテムリクエストの前に生じる、ことを更に有する方法。
【請求項3】
請求項1に記載の方法であって、
前記第1統合スクリプトを用いて、前記ウェブページが1つ以上のウェブページのうちの1つであることを判定することであって、前記1つ以上のウェブページの識別情報は、前記第2アイテムに関連した前記情報に含まれ、前記判定は前記ウェブページが更新される前に生じる、ことを更に有する方法。
【請求項4】
請求項1に記載の方法であって、
前記第2アイテムに関連した選択を受信することと、
前記選択が受信された後に、前記ウェブサイトからの第2ウェブページを求めるウェブページリクエストを送信することと、
前記ウェブサイトから前記第2ウェブページを受信することであって、前記第2ページは第2プラグインモジュールを含む、ことと、
前記クライアントコンピュータで前記第2プラグインモジュールを実行することと、
前記第2プラグインモジュールを用いて、前記統合サーバコンピュータへ統合スクリプトを求める別のスクリプトリクエストを送信することと、
前記統合サーバコンピュータから第2統合スクリプトを受信することと、
前記クライアントコンピュータで前記第2統合スクリプトを実行することと、
前記第2統合スクリプトを用いて、前記選択に関連した情報を前記統合サーバコンピュータへ送信することと、
前記選択に関連した前記情報を送信したことに応答して、前記第2ページに表示する情報を前記統合サーバコンピュータから受信することと、
前記第2統合スクリプトを用いて、前記第2ウェブページで表示する前記情報の少なくとも一部を含むように前記第2ウェブページを更新することと、
前記更新された第2ウェブページを前記クライアントコンピュータで表示することと、を更に有する方法。
【請求項5】
請求項1に記載の方法であって、前記プラグインモジュールは前記ウェブページの不可視コンポーネントであり、前記第2プラグインモジュールは前記第2ウェブページの不可視コンポーネントである、方法。
【請求項6】
請求項1に記載の方法であって、前記第2アイテムに関連した前記情報は、ウェブページで前記第2アイテムを表示するためのフォーマットと、前記第2アイテムの識別情報と、前記第2アイテムに関連した前記情報の少なくとも一部を前記ウェブページに置く位置と、を含む、方法。
【請求項7】
請求項6に記載の方法であって、前記第2アイテムに関連した前記情報は、前記第2アイテムの変形を更に含み、前記変形は、前記クライアントコンピュータに関連したユーザのための前記第2アイテムのカスタマイズを含む、方法。
【請求項8】
クライアントコンピュータでオンライン環境を提供する方法であって、前記方法は、サーバコンピュータシステムによって実行する、
統合スクリプトを求める第1リクエストを前記クライアントコンピュータから受信することと、
前記第1リクエストに応答して前記クライアントコンピュータへ第1統合スクリプトを送信することと、
第1アイテムに関連したアイテムを求めるリクエストを、前記第1統合スクリプトを用いて前記クライアントコンピュータから受信することであって、前記第1アイテムの識別情報は前記クライアントコンピュータで表示されるウェブページに含まれる、ことと、
前記第1アイテムに関連したアイテムを求めてデータベースにクエリすることによって第2アイテムを識別することであって、前記データベースは複数のアイテムを含み、前記第2アイテムは前記第1アイテムに関連する、ことと、
前記第2アイテムに関連した情報を生成することであって、前記情報は前記第2アイテムの識別情報を含む、ことと、
前記第2アイテムに関連した前記情報を前記クライアントコンピュータへ送信することと、を有する方法。
【請求項9】
請求項8に記載の方法であって、
前記第2アイテムに関連した前記情報の少なくとも一部を表示するためのフォーマットを決定することであって、前記第2アイテムに関連した前記情報は前記フォーマットを更に含む、ことを更に有する方法。
【請求項10】
請求項9に記載の方法であって、
表示される前記第2アイテムに関連した前記情報の少なくとも前記一部について1つ以上のウェブページを決定することであって、前記第2アイテムに関連した前記情報は前記1つ以上のウェブページの識別情報を更に含む、ことを更に有する方法。
【請求項11】
請求項9に記載の方法であって、前記第2アイテムに関連した前記情報は、前記第2アイテムに関連した前記情報をウェブページに置く位置を含む、方法。
【請求項12】
請求項8に記載の方法であって、
前記クライアントコンピュータに関連したユーザに基づいて前記第2アイテムの変形を決定することであって、前記第2アイテムに関連した前記情報は前記変形を更に含む、ことを更に有する方法。
【請求項13】
請求項8に記載の方法であって、
前記統合スクリプトを求める第2スクリプトリクエストを前記クライアントコンピュータから受信することと、
前記第2スクリプトリクエストに応答して前記クライアントコンピュータへ前記統合スクリプトを送信することと、
前記統合スクリプトを用いて前記クライアントコンピュータから成功メッセージを受信することであって、前記成功メッセージは前記第2アイテムの選択を示す、ことと、
前記第2アイテムの前記選択に関連した情報を前記クライアントコンピュータへ送信することと、
を更に有する方法。
【請求項14】
請求項8に記載の方法であって、前記第2アイテムの前記選択に関連した前記情報は前記第2アイテムに関する確認を含む、方法。
【請求項15】
命令を含む非一時的な機械可読記憶媒体を備えるコンピュータ製品であって、前記命令は、1つ以上のプロセッサによって実行された場合に、前記1つ以上のプロセッサに、
プラグインモジュールと第1アイテムの識別情報とを含むウェブページをウェブサイトから受信することと、
クライアントコンピュータで前記プラグインモジュールを実行することと、
前記プラグインモジュールを用いて、統合サーバコンピュータからの統合スクリプトを求めるスクリプトリクエストを送信することと、
前記スクリプトリクエストに応答して、前記統合サーバコンピュータから第1統合スクリプトを受信することと、
前記クライアントコンピュータで前記第1統合スクリプトを実行することと、
前記第1統合スクリプトを用いて、前記統合サーバコンピュータからの前記第1アイテムに関連したアイテムを求めるアイテムリクエストを送信することと、
前記アイテムリクエストに応答して、第2アイテムに関連した情報を前記統合サーバコンピュータから受信することであって、前記統合サーバコンピュータは複数のアイテムから前記第2アイテムを識別し、前記第2アイテムは前記第1アイテムに関連する、ことと、
前記統合スクリプトを用いて、前記第2アイテムに関連した前記情報の少なくとも一部を含むように前記ウェブページを更新することと、
前記第2アイテムに関連した前記含まれた情報に基づいて前記更新されたウェブページを前記クライアントコンピュータで表示することと、を実行させる、コンピュータ製品。
【請求項16】
請求項15に記載のコンピュータ製品であって、前記1つ以上のプロセッサによって実行された場合に、前記1つ以上のプロセッサに、
前記第1統合スクリプトを用いて、前記第1アイテムに関連したアイテムが前記統合サーバコンピュータから受信されていないことを判定することであって、前記判定は前記アイテムリクエストの前に生じる、ことを実行させる命令を更に有するコンピュータ製品。
【請求項17】
請求項15に記載のコンピュータ製品であって、前記1つ以上のプロセッサによって実行された場合に、前記1つ以上のプロセッサに、
前記第1統合スクリプトを用いて、前記ウェブページが1つ以上のウェブページのうちの1つであることを判定することであって、前記1つ以上のウェブページの識別情報は、前記第2アイテムに関連した前記情報に含まれ、前記判定は前記ウェブページが更新される前に生じる、ことを更に有するコンピュータ製品。
【請求項18】
請求項15に記載のコンピュータ製品であって、前記1つ以上のプロセッサによって実行された場合に、前記1つ以上のプロセッサに、
前記第2アイテムに関連した選択を受信することと、
前記選択が受信された後に、前記ウェブサイトからの第2ウェブページを求めるウェブページリクエストを送信することと、
前記ウェブサイトから前記第2ウェブページを受信することであって、前記第2ウェブページは第2プラグインモジュールを含む、ことと、
前記クライアントコンピュータで前記第2プラグインモジュールを実行することと、
前記第2プラグインモジュールを用いて、前記統合サーバコンピュータからの第2統合スクリプトを求める第2スクリプトリクエストを送信することと、
前記統合サーバコンピュータから第2統合スクリプトを受信することと、
前記クライアントコンピュータで前記第2統合スクリプトを実行することと、
前記第2統合スクリプトを用いて、前記選択に関連した情報を前記統合サーバコンピュータへ送信することと、
前記選択に関連した前記情報を送信したことに応答して、前記第2ページに表示する情報を前記統合サーバコンピュータから受信することと、
前記第2統合スクリプトを用いて、前記第2ウェブページで表示する前記情報の少なくとも一部を含むように前記第2ページを更新することと、
前記更新された第2ページを前記クライアントコンピュータで表示することと、を更に有するコンピュータ製品。
【請求項19】
請求項15に記載のコンピュータ製品であって、前記1つ以上のプロセッサによって実行された場合に、前記1つ以上のプロセッサに、前記第2アイテムに関連した前記情報は、ウェブページで前記第2アイテムを表示するためのフォーマットと、前記第2アイテムの識別情報と、前記第2アイテムに関連した前記情報の少なくとも一部を前記ウェブページに置く位置と、を含む、コンピュータ製品。
【請求項20】
請求項15に記載のコンピュータ製品であって、前記第2アイテムに関連した前記情報は、前記第2アイテムの変形を含み、前記変形は、前記クライアントコンピュータに関連したユーザのための前記第2アイテムのカスタマイズを含む、コンピュータ製品。
【請求項21】
請求項1乃至14の何れか1項に記載の方法の動作を実行するようにコンピュータシステムを制御するための複数の命令を格納するコンピュータ可読媒体を備えるコンピュータ製品。
【請求項22】
請求項21に記載のコンピュータ製品と、
前記コンピュータ可読媒体に格納された命令を実行するための1つ以上のプロセッサと、を備えるシステム。
【請求項23】
請求項22に記載のシステムであって、請求項1乃至14の何れか1項に記載の方法を実行するための手段を更に備えるシステム。
【請求項24】
請求項1乃至14の何れか1項に記載の方法を実行するように構成されたシステム。
【請求項25】
請求項1乃至14の何れか1項に記載の方法のステップをそれぞれ実行するモジュールを備えるシステム。
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本願は、2015年7月7日に出願された「チェックアウト統合プラグイン」という名称のフォン・ハインらに米国仮出願第62/189,671号に優先権を主張し、この全体の内容がすべての目的のために参照によって本書に組み込まれる。この出願は、2015年7月31日に出願された「ウェブサイト環境の最適化」という名称の米国特許出願第62/199,762号にも関し、この全体がすべての目的のために参照によって本書に組み込まれる。
【0002】
<分野>
本書の開示は一般に、ウェブページに既にあるベースアイテムに関連している1つ以上の追加アイテムをウェブページに提供することに関する。具体的に、本開示は、ウェブページに既に表示されているベースアイテムに関する追加アイテムを識別し提供する能力をウェブページが統合できるようにすることに関する。本書の開示において、アイテムはオンラインストアで販売される製品又はサービスでありうる。
【背景技術】
【0003】
従来、ウェブページに既に表示されているベースアイテムに関連している追加のアイテムを識別しウェブページに提示することは、非常に時間がかかる試みである。一部の場合に、ユーザは自分自身で追加アイテムを配置しなればならない。他の場合に、ウェブサイトは追加アイテムをベースアイテムに相互に関連付けなければならない。さらに、追加アイテムを提示することは、ウェブサイトが変化するごとにウェブサイトがそのレイアウトを再プログラムすることを必要とする。よって、追加アイテムの統合は、ウェブサイトに多量のプログラミングを必要としうる。本書の開示の実施形態は、これら又は他の問題に個別に又は全体的に対処する。
【発明の概要】
【0004】
本書の実施形態は、ウェブページに表示されたベースアイテムに関連した1つ以上の追加アイテムの自動又は半自動の提示を提供しうる。例えば、システムは、1つ以上の追加アイテムに関連した情報をウェブページが表示するためのカスタマイズされたテンプレートブロックを生成及びレンダリングしうる。一部の例で、カスタマイズされたテンプレートブロックは、リモートで構成及び最適化されうる。
【0005】
一部の例で、統合プラグインは、統合システムがウェブサイトのウェブページに1つ以上の追加アイテムを含めることを可能にでき、1つ以上の追加アイテムの提示はウェブページを閲覧するユーザのためにリモートでカスタマイズされる。一部の例では、統合プラグインは、様々なウェブサイトとの互換性を有しうる。統合プラグインはプラグアンドプレイでもあり、迅速及び/又はシームレスなインストールを可能にしうる。一部の例で、統合プラグインは、ウェブサイトからの追加アイテムを自動的に又は半自動的に提供するようにウェブサイトを大規模にプログラムする必要を除去しうる。
【0006】
実施形態はまた、ウェブサイトを修正する必要なく、ウェブサイトとのやり取り中に追加アイテムを提供するためのカスタマイズされたテンプレートブロックのリモート構成及び最適化を提供しうる。一部の例で、ウェブサイトが統合プラグインを統合するために必要な大幅なプログラミングは必要ないだろう。
【0007】
実施形態はまた、ウェブサイトに関連したプロセスの1つ以上のステップについての統合を提供し、第1アイテムと第2アイテムとの組み合わせを可能にし、ここで第2アイテムは第1アイテムに関連する。実施形態はまた、どこにテンプレートブロックが表示されるべきか、及びテンプレートブロックが表示されるべきかどうかに関するリモート制御を提供しうる。実施形態はまた、テンプレートブロックの様々な状態を提供でき、各状態はユーザによって取られた以前の動作を反映する。
【0008】
実施形態はまた、追加アイテムに関連したやり取りについて入力される必要があるデータの低減を提供しうる。このような実施形態で、ベースアイテムからのデータ及び/又はユーザデータ(例えば、名前、住所等)が、ユーザに再度クエリする必要なく、追加アイテムについてウェブサイトから読み出されうる。実施形態はまた、監視及び最適化のためのテンプレートブロックのリアルタイム性能追跡を提供しうる。
【0009】
実施形態はまた、ウェブサイトによる動作を全くなしに、1つの場所でリモートから、アイテム合致、アイテム構成、性能追跡及びテンプレートブロック構成を管理するための複合ユーザインタフェースを提供しうる。実施形態はまた、本書に記載された方法に関連したシステム、ポータブル又はモバイルコンシューマデバイス、及びコンピュータ可読媒体を対象とする。
【0010】
他の実施形態は、本書に記載された方法に関連したシステム、ポータブルコンシューマデバイス及びコンピュータ可読媒体を対象とする。
【0011】
以下の詳細な説明及び添付の図面を参照して、本発明の実施形態の特性及び利点のより良い理解が得られるだろう。
【図面の簡単な説明】
【0012】
【
図1】ウェブサイト及び統合システムの例を説明する。
【0013】
【
図2】ユーザがウェブサイトから受け取れる様々なウェブページを説明するフローチャートである。
【0014】
【
図3】統合プラグインを用いてベースアイテムに関連した1つ以上の追加アイテムを提示するためのシーケンスの例を説明する。
【0015】
【
図4】クライアントコンピュータの観点からクライアントコンピュータ上のオンライン環境を提供するための方法のフローチャートである。
【0016】
【
図5】サーバコンピュータシステムの観点からクライアントコンピュータ上のオンライン環境を提供するための方法のフローチャートである。
【0017】
【
図6】コンピュータシステムのブロック図の例を説明する。
【発明を実施するための形態】
【0018】
統合プラグインは、プロセスが1つ以上の追加アイテムをユーザに提供するためにウェブサイトに統合されうる。統合プラグインは、ウェブサイトのウェブページに既に表示されているベースアイテムに関連した追加アイテムの自動識別を可能にしうる。識別は、1つ以上のアイテムを含むデータベースを用いて生じうる。統合プラグインは、クライアントコンピュータでウェブページに表示されるカスタマイズされたテンプレートブロックの生成及びレンダリングも可能にしうる。一部の例で、カスタマイズされたテンプレートブロックの外観は、統合システムによってウェブサイトからリモートで構成及び最適化されうる。統合システムは、ウェブサイトによって送信されたウェブページに配置された統合プラグインと通信するコアアプリケーションを含みうる。統合システムは、アイテム合致、アイテム構成、性能追跡、カスタマイズされたテンプレートブロックの生成及び他のサービスも提供しうる。
【0019】
統合プラグインはウェブサイトに統合されてもよく、ウェブページに表示されたベースアイテムに関連した1つ以上の追加アイテムをウェブサイトが提供することを可能にしうる。ウェブサイトから受け取ったウェブページをユーザがナビゲートする場合に、統合プラグインは、ウェブページに第1スクリプトを自動的にロードしうる。第1スクリプトは、統合システムがウェブページに(例えば、買い物カートに)表示されたベースアイテムを1つ以上の追加アイテムと合致するようにさせうる。追加アイテムが統合サーバによって識別されたならば、統合プラグインは、追加アイテムの識別情報で、カスタマイズされたテンプレートブロックをレンダリングしうる。
【0020】
ユーザは、カスタマイズされたテンプレートブロックから購入へ追加アイテムを追加し、チェックアウトに進みうる。追加アイテムが追加された場合に、ユーザは、ベースアイテム(例えば、ウェブページに既に表示されたアイテム)と追加アイテムとを一度に確認できる。追加アイテムを求めるリクエストがウェブサイトへ送信される場合に、追加アイテムの選択に関連した情報がクライアントコンピュータによって格納されうる。
【0021】
ウェブサイトから成功ページが返送された場合に、第2統合プラグインは、購入に関連した情報を統合システムのコアアプリケーションへ送信する第2スクリプトをインストールさせうる(例えば、情報は、追加アイテムが購入されたか否かを示しうる)。一部の例で、第2スクリプトは第1スクリプトを同じでありうる。統合システムのコアアプリケーションは、ウェブサイトの関与なしに、ウェブページに表示された将来のアイテムに使用される、購入に関連した情報を格納しうる。
【0022】
追加アイテムを提示するテンプレートブロックは、ウェブサイトからの試みなしに、任意の時点で構成、再構成及び最適化されうる。(以下に記載される)A/Bテストの複数の反復を通じて、コンバージョン率を増加するためにテンプレートブロックが最適化されうる。本書の開示で説明されるように、アイテムは製品又はサービスを含みうる。
【0023】
一部の例で、統合プラグインは、幅広い互換性を有し、様々なウェブサイトに容易にインストールできる。一部の例で、統合プラグインは、プラグアンドプレイ方式でウェブサイトにインストールされうる。一部の例で、統合プラグインは、短い時間枠(例えば、数分)内にインストールされてもよく、ウェブサイトからの著しいプログラミングエフォートを必要としないかもしれない。1つの実施形態で、ウェブサイトによるプログラミングエフォートを全く必要としなくてもよい。多くの先行システムは、追加アイテムを提供するためにウェブサイトから多量のプログラミングを必要とするという障害を有し、これはウェブサイトについて情報技術(IT)リソースのボトルネックとなりうる。
【0024】
一部の例で、コンバージョン率は統合システムの性能を示しうる。コンバージョン率は、ベースアイテムとともに追加アイテムが選択された回数を、ベースアイテムが選択された総回数で割ったものでありうる。
【0025】
I.統合プラグインの例示の使用
統合プラグインが使用されうる1つの文脈を提供するために、ウェブサイトでの購入プロセスが以下に記載される。1つの例で、統合プラグインは、ウェブサイトが他のアイテム(例えば、コンピュータ、電話、又は任意の他の製品又はサービス)とともにアイテム(例えば、製品保険、保証延長)を抱き合わせ販売(cross sell)又は上乗せ販売(up sell)できるようにしうる。
【0026】
1つの説明的な例で、統合プラグインは、スマートフォンのような電子機器のための保険の提供に関連して用いられうる。例えば、ユーザがスマートフォンを購入中の場合に、ユーザがスマートフォンの購入を確認する前に、スマートフォン保険のオファーが表示されうる。統合プラグインを用いて、スマートフォンの購入及び保険は、購入プロセスを乱すことなく、ワンクリックでユーザがスマートフォン保険を買い物かごに付加しその後にトランザクションをシームレスに終了できるようなワンクリックソリューションでありうる。購入プロセスを乱さないことによって、オンラインショップについての1つ以上の抱き合わせ販売及び/又は上乗せ販売のアイテムのコンバージョン率が向上しうる。
【0027】
別の説明的な例で、ユーザはオンラインでバイクを購入し、購入プロセスで盗難保険をバイクに付加できる。他の例は、様々な電子機器(例えば、皿洗い機、冷蔵庫及び時計)、楽器、アイウェア、車用タイヤ及びオンラインで購入・販売されうる任意のもののための保険及び保証延長を含むがこれに限定されない。他の抱き合わせ販売及び/又は上乗せ販売のアイテムは、テレビ加入権、購入者保護サービス又は任意の他の無料アイテムでありうる。
【0028】
一部の例で、統合プラグインは、購入プロセスの間に使用される共通情報を利用しうる。例えば、追加アイテムを追加する際に、ユーザは追加情報の入力を求められなくてもよい。統合プラグインは、ユーザによって既に入力された情報又はウェブサイトに既知の情報を使用しうる。例えば、追加アイテムは、電子メールアドレスと、追加アイテムに関連したアイテムの一意識別子とを必要としうる。電子デバイスについて、一意識別子は電子デバイスのシリアルナンバーでありうる。例えば、ユーザが統合プラグインを用いて保険を購入することを選んだならば、統合プラグインはユーザの電子メールアドレスと、ウェブサイトから購入中のスマートフォンのシリアルナンバーとを取得しうる。
【0029】
1つの説明的な例で、統合システムの最適化モジュールは、アイテム(例えば、バイク)を購入中のユーザ数と、販売された抱き合わせ販売及び/又は上乗せ販売のアイテム(例えば、バイクのための盗難保険)の数とをリアルタイムで測定しうる。ユーザ数及び販売された抱き合わせ販売及び/又は上乗せ販売のアイテム数を用いて、最適化モジュールはコンバージョン率を算出しうる。
【0030】
統合プラグイン及び最適化モジュールは、ウェブサイトの追加についてのコンバージョン率を増加するために用いられうる。一部の例で、追加アイテムの提示はコンバージョン率に基づいて適合されうる。提示はまた、関与するアイテム、ウェブサイト、典型的にウェブサイトから買い物及び/又は購入するユーザ、及びアイテムを購入する潜在的な顧客に関連した任意の他の要因に依存しうる。例えば、廉価なアイテムを販売するローエンドショップは、より高価なアイテムを販売するプレミアムショップと比較して全く異なるターゲットグループを有しうる。異なるショップは異なる追加アイテムを必要とするだけでなく、追加アイテムの異なるタイプのコミュニケーション又は提示を必要としうる。
【0031】
一部の例で、統合プラグインは、統合システムから受け取った1つ以上の追加アイテムとともにオファーを表示するために用いられいる。オファーは、様々な表示特徴(例えば、メッセージテキスト、ヘッダ、色、ロゴ、構造、ユーザフローなど)で提示されうる。さらに、追加アイテムの1つ以上の属性が変更されうる。例えば、保険の有効期間は保険の価格に依存して変更されうる。別の例で、保険でカバーされるものが変更されうる。1つ以上の属性を変更することによって、抱き合わせ販売又は上乗せ販売のアイテムの価格がユーザの予算に収まるようにされうる。
【0032】
II.統合システム
図1は、ウェブサイト110及び統合システム120の例を説明する。ウェブサイト110は、クライアントコンピュータとウェブサイトとの間のやり取りの間にクライアントコンピュータへ1つ以上のウェブページを送信しうる。一部の例で、1つ以上のウェブページのうちのウェブページ112は、アイテム(例えば、ベースアイテム)を含みうる。ウェブページ112は、テンプレートブロック114を含んでもよく、これはベースアイテムに関連している1つ以上の追加アイテムを含みうる。ウェブサイト110は、ウェブサイト116のコアアプリケーションおよび統合プラグイン118を更に含みうる。ウェブサイト116のコアアプリケーションは、ウェブサイト110の制御及び機能を提供しうる。統合プラグイン118は、ウェブサイト110と統合システム120との間のコネクションを提供しうる。一部の例で、ウェブサイト110と統合システム120との間の通信を容易にするために、アプリケーションプログラミングインタフェース(API)(例えば、リプレゼンテイショナルステートトランスファーAPI(REST-API))が用いられうる。
【0033】
統合システム120は、追加アイテムをユーザへ提示するためのフォーマットを決定しうる。フォーマットは、テンプレートブロック114の形式でありうる。テンプレートブロック114は、追加アイテムに関連した情報を含みうる。ウェブページ112へテンプレートブロック114を追加するために、ウェブページ112は、1つ以上のフック(例えば、ウェブフック)を含みうる。1つ以上のフックは、テンプレートブロック114が様々な部分に挿入されることを可能にするように、ウェブページ112の様々な部分に配置されうる。1つ以上のフックを用いて、統合プラグイン118は、テンプレートブロック114をウェブページ112へ挿入しうる。テンプレートブロック114のコンテンツは、統合システム120に関連した1つ以上のサーバから送信されうる。データ及びコンテンツをリモートに格納することによって、統合システム120は、ウェブサイト110を修正する必要なしに、迅速かつ自動的な変更をできるようになりうる。
【0034】
統合システム120はまた、テンプレートブロック114とのやり取り(例えば、ユーザが追加アイテムを選択すること)を分析しうる。統合システム120は、コアアプリケーション(例えば、統合システム122のコアアプリケーション)を含んでもよく、これは統合システム120の制御及び機能を提供しうる。
【0035】
統合システムは最適化モジュール124を含んでもよく、これは、追加アイテムを識別し、追加アイテムをどのようにユーザへ提示するかを識別し、追加アイテムをウェブページにいつ表示するかを決定し、追加アイテムへのユーザの応答を分析することによって全体プロセスの最適化を実行し、又はこれらの任意の組み合わせを行いうる。一部の例で、最適化モジュール124は、同一のユーザ又は異なるユーザに対して以前の追加アイテムがどれくらい上手く機能したかに基づいて、テンプレートブロック114内の追加アイテムの提示及び/又はコンテンツを変更しうる。一部の例で、最適化モジュール124は、ウェブサイト110のウェブページに表示されたベースアイテムが、追加アイテムが表示されるべきものであるかどうかを判定しうる。判定は、ウェブサイト110によって必要とされる更なる定義なしに、統合プラグイン118がインストールされた後に生じうる。一部の例で、最適化モジュール124はまた、追加アイテムがユーザへ表示されるべき購入プロセスにおける1つ以上のウェブページを識別しうる。
【0036】
最適化モジュール124は、プラグイン管理ユーザインタフェース126を含みうる。プラグイン管理インタフェース126は、最適化モジュール124とやり取りするために統合システム120に関連したユーザインタフェースをユーザに提供しうる。最適化モジュール124は、アイテム合致モジュール128と、アイテム構成モジュール130と、ユーザ体験(UX)構成モジュール132と、リアルタイム性能追跡モジュール134と、これらの任意の組み合わせとのうちの少なくとも1つ以上を用いうる。
【0037】
アイテム合致モジュール128は、ユーザへ表示されたウェブページのベースアイテムを1つ以上の追加アイテムと合致しうる。アイテム構成モジュール130は、ユーザのための追加アイテムの1つ以上の属性を決定しうる。UX構成モジュール132は、追加アイテムのユーザへの提示を最適化するために用いられうる。リアルタイム性能追跡モジュール134は、ユーザによるテンプレートブロックとのやり取りを追跡しうる。
【0038】
統合プラグイン118は、共通技術(例えば、JavaScript)を用いて様々なブラウザにわたって動作しうる。統合プラグイン118は、ウェブサイトのタイプに基づく個別のカスタマイズを必要とせず、テンプレートブロック114の簡単な表示、ユーザデータの転送、及びアイテム合致を可能にする。さらに、ユーザが追加アイテムを選択したならば、統合プラグイン118は追加アイテムに関連した情報を統合システム122のコアアプリケーションへ送信し、コアアプリケーションは追跡のためにリアルタイム性能追跡モジュール134へ転送するだろう。
【0039】
統合プラグイン118はまた、ウェブサイト116のコアアプリケーションからウェブページの(例えば、買い物カート内の又はユーザによって選択された)ベースアイテムに関連した情報を受信しうる。他の例で、統合プラグイン118は、ウェブサイト110のためのアプリケーションプログラムインタフェース(API)コールの特定のタグ及び/又は特定の種類を用いてベースアイテムに関連した情報を要求しうる。その後、統合プラグイン118は、最適化モジュール124による分析のためにベースアイテムに関連した情報を統合プラグイン118へ送信しうる。ベースアイテムに関連した情報はウェブサイトにわたって正規化されていないので、統合プラグイン118は、ベースアイテムに関連した情報を、最適化モジュール124によって用いられる共通フォーマットにフォーマットしうる。統合システム122のコアアプリケーションは、統合プラグイン118からベースアイテムに関連した情報を受信し、アイテムのデータベースから1つ以上の追加アイテムを決定するために最適化モジュール124へ情報を送信しうる。
【0040】
一部の例で、ウェブサイトとのやり取りの間にユーザによって入力された情報が統合プラグイン118から統合システム122のコアアプリケーションへ送信されうる。ユーザによって入力された情報は、(例えば、保険又は将来の通信のために要求された情報について)追加アイテムと関連して用いられうる。統合システム122のコアアプリケーションへ送信されうるユーザ又はウェブページからの他の情報が統合システム120によって格納されうる。
【0041】
統合システム122のコアアプリケーションがユーザへ表示されるベースアイテムについての合致を識別すると、ベースアイテムに関連した追加アイテムがデータベースから選択されうる。選択は、ランダムに選択されてもよく、又は、あるベースアイテムについて12か月の期間を有する製品保険だけが表示されるような所定のルールによって選択されてもよい。
【0042】
一部の例で、アイテム構成モジュール130は、アイテム合致モジュール128によって識別された追加アイテムの1つ以上の属性(例えば、保険の費用及び期間)を識別しうる。その後、アイテム構成モジュール130は、ユーザのための追加アイテムをどのように構成するかを決定しうる。UX構成モジュール132は、レイアウト、フォーマット、又は追加アイテムのための任意の組み合わせを決定しうる。
【0043】
統合システム122のコアアプリケーションは、カスタマイズされたテンプレートブロックと、カスタマイズされたテンプレートブロックをどこに表示するかに関する命令とで統合プラグイン118に応答しうる。命令は、2つ以上の事前構成されたページ要素識別子を含みうる。事前構成されたページ要素識別子のうちの1つは、テンプレートブロック144をフックするためのページ要素でありうる。他の事前構成されたページ要素識別子は、任意の他のページに導くことができ、それによって特定のページとのやり取りの終了を決定しうる1つ以上のページ要素でありうる。2つ以上の事前構成されたページ要素識別子を用いて、追加アイテムに関連した情報は、ユーザとウェブサイトとの間のやり取りの任意の段階でテンプレートブロック114に表示されうる。よって、ユーザがやり取りを終了する前であっても、ユーザは追加アイテムを示されうる。ユーザは、ワンクリックでそれを選択し、それを買い物かごに追加しうる。ユーザはまた、追加アイテムの購入を確認しうる。
【0044】
上述のように、リアルタイム性能追跡134は、以下のうちの少なくとも1つ以上を含むデータのリアルタイム性能追跡を提供しうる。(1)ユーザが追加アイテムを含めてやり取りを完了したかどうか、(2)ユーザが追加アイテムを含めないでやり取りを完了したかどうか、(3)ユーザが追加アイテムをクリックしたかどうか、(4)又はこれらの任意の組み合わせ。
【0045】
上述のデータを用いて、リアルタイム性能追跡モジュール134は、ウェブサイト110に関連したベースアイテム及び追加アイテムの合致率及び/又はコンバージョン率を追跡しうる。リアルタイム性能追跡モジュール134は、コンバージョン率を測定するためにウェブサイトから情報を収集しうる。例えば、ショップが100台のバイクを販売し、これら100台のバイクについて10件の製品保険が購入されたならば、10%のコンバージョン率が存在しうる。完了した情報は、コンバージョン率の監視及び最適化で用いられうる。
【0046】
リアルタイム性能追跡モジュール134はまた、ウェブサイト110についての未完了の販売数と、追加アイテムが何回表示されたかと、追加アイテムについての拒絶率とを追跡しうる。拒絶率は、例えば、潜在的なユーザがウェブサイトとのやり取りを開始したが、ユーザがやり取りを実際に終了するためにやり取りの最後に一度も到達しなかった場合を示す。
【0047】
さらに、コンバージョン率を最大化するためにいくつかの最適化サイクルが存在しうる。リアルタイム性能追跡134は、ユーザのインプレッションを追跡でき、これはユーザがウェブサイトとのやり取りを進行中であるごとに追跡しうることを意味する。例えば、リアルタイム性能追跡134は、テンプレートブロックが表示されるごとに追跡しうる。リアルタイム性能追跡134は、追加アイテムを表示するかどうか(例えば、追加アイテムが保険に適するかどうか、又はアイテム合致モジュール128が、表示されている時間について追加アイテムを識別したかどうか)を判定できる。リアルタイム性能トラッキング134は、ユーザによって完了した販売を追跡し、選択された販売(追加アイテムがベースアイテムとともに選択される)と、非選択の販売(追加アイテムがベースアイテムとともに選択されない)と、非合致の販売(追加アイテムがベースアイテムとともに示されない)との間の差を識別しうる。
【0048】
選択又は非選択の情報は、ウェブサイト110の合致率を決定するために重要でありうる。ウェブサイト110で可能な限り多くのベースアイテムに対して追加アイテムを合致することが望ましくてもよい。新たなベースアイテムがウェブサイト110に追加されたならば、新たなベースアイテムは識別され、1つ以上の追加アイテムと合致されうる。
【0049】
一部の例で、ウェブサイト110は、追加アイテムとともに提示することが望ましくない1つ以上のベースアイテムを含みうる。例えば、スタンドアロンアイテムであるラップトップのための充電器のような予備部品は、保険と合致することが望ましくないかもしれない。コンバージョン率を追跡することによって、最適化モジュール124は、ウェブページに表示されたベースアイテムについて追加アイテムをユーザに提示しないことを決定しうる。
【0050】
アイテム合致モジュール128についてのレビュープロセスを自動化又は半自動化することによって、最適化モジュール124はまた、手動レビューを解決し、他のシステムに存在する問題を更新しうる。例えば、人が合致を承認する、ウェブサイトからすべてのベースアイテムの半自動化アイテム合致が存在しうる。別の例で、リアルタイム性能追跡モジュール134は、レビューのために、合致率又はコンバージョン率の変化にフラグを立てうる。一部の例で、人はフラグをレビューしうる。新たなベースアイテムについて上述された同一のプロセスは、ウェブサイト110のすべてのベースアイテムをレビューするためにやり直されうる。プロセスは、ウェブページに表示されたベースアイテムに関連した追加アイテムを変更するため、及び以前のやり取りに基づいて追加アイテムの提示を変更するために生じうる。
【0051】
III.ウェブサイトとのやり取りの間のデータフロー
上述の統合システムはウェブサイトで実施されうる。一部の例で、ウェブサイトは、1つ以上のウェブページをユーザへ送信しうる。このような例で、ウェブページは、ウェブページでの追加アイテムの提示を容易にするために統合システムへのリンクを含みうる。
【0052】
図2は、ユーザがウェブサイトから受け取ることができる様々なウェブページを説明するフローチャートである。ユーザは企業に関連したウェブサイト(例えば、ウェブサイト110)から第1ウェブページを受け取りうる。第1ウェブページはホームページ210でありうる。ホームページ210は、第1ウェブページを第2ウェブページに進めさせうる様々なリンクを含みうる。ホームページ210の第1リンクは、ユーザをアイテムカテゴリページ220へ連れていける。アイテムカテゴリページ220は、アイテムカテゴリに含まれる1つ以上のベースアイテムを表示しうる。ホームページ210の第2リンクは、ユーザをアイテム詳細ページ230へ連れていける。アイテム詳細ページ230は、ベースアイテムに関連した情報を表示しうる。一部の例で、アイテムカテゴリページ220は、第2リンクと同様にユーザをアイテム詳細ページ230へ連れて行くためのリンクを含みうる。
【0053】
ホームページ210、アイテムカテゴリページ220又はアイテム詳細ページ230のうちの1つ以上に、ベースアイテムをカートに追加させるリンクが含まれうる。一部の例で、カートはウェブサイトに格納されうる。買い物カートは、ユーザが興味を示したアイテムのリストを含みうる。カートは、カートページ(例えば、カートページ240)へのリンクを含む当業者に既知の様々な方法でアクセスされうる。一部の例で、カートは現在のウェブページのポップアップウィンドウでありうる。他の例で、カートは現在のウェブページに含まれうる。
【0054】
ユーザはカートページ240又は任意の他の形式のカートに進みうる。カートページ240はさらに、ユーザが興味を示さなかった追加アイテムを含みうる。追加アイテムは、上述のように、テンプレートブロックでカートページ240に表示されうる。ユーザは、ユーザが追加アイテムのうちの1つ以上を好むかどうかを示しうる。リンクを用いてチェックアウト確認ページ250へ進むことによって、1つ以上のアイテム(1つ以上のベースアイテム及び0個以上の追加アイテムを含む)の確認が生じうる。チェックアウト確認ページ250から購入が完結した又は確認された後に成功ページ260が表示されうる。
【0055】
上述のプロセスにおいて、ユーザは、(ユーザを成功ページ260へ連れていける)やり取りを完結しない限り、いつでも以前のページに戻ることができ、複数のステップを繰り返すことさえもできる。一部の例で、(上述の)統合プラグインは、テンプレートブロックの状態を格納しうる。テンプレートブロックを格納することによって、統合プラグインは、テンプレートブロックが様々なウェブページを通じて継続的で一様な方法で提示されうることを保証しうる。例えば、ユーザがウェブページを前後にナビゲートしている場合に同一又は同様のテンプレートブロックがユーザへ与えられうる。
【0056】
図3は、統合プラグインを用いてベースアイテムに関連した1つ以上の追加アイテムを提示するためのシーケンスの例を説明する。シーケンスは、上述のようにユーザがウェブページを進むことに関連しうる。動作1で、ユーザは、インターネットに接続された電子デバイス(例えば、コンピュータ、セルフォンなど)を用いてウェブサイトのウェブページへナビゲートしうる。ウェブページは、ウェブサイトに関連した最初のウェブページ(例えば、ホームページ210)を含む上述の任意のページでありうる。
【0057】
動作2で、電子デバイスはウェブサイトからウェブページを受信しうる。ウェブページは統合プラグインを含みうる。統合プラグインは、電子デバイスで実行されうる。実行されると、統合プラグインは、統合システム(例えば、統合システム120)と通信しうる。
【0058】
動作3で、統合プラグインは、統合システムからのスクリプトを要求しうる。スクリプトは、電子デバイスによってロードされる1つのロジック(例えば、JavaScriptコード)でありうる。
【0059】
動作4で、統合システムからスクリプトが受信されると、電子デバイスは、ユーザのブラウザを用いてスクリプトを実行するか、これがユーザのブラウザによって行われることを要求しうる。スクリプトに含まれるロジックは、ウェブサイトと統合システムとの間のコネクションを管理するために用いられうる。
【0060】
一部の例で、スクリプト及び統合プラグインは、アイテム情報及びユーザ情報が各ウェブサイトによってどのように格納され提示されるかに基づいて、各ウェブサイトで異なりうる。一部の例で、アイテム情報及びユーザ情報は、各ウェブサイトで提示及びフォーマットの面で異なりうる。さらに、スクリプトによって制御される命令セットは、各ウェブサイトで異なりうる。
【0061】
スクリプトはウェブページのベースアイテムを識別しうる。一部の例で、識別されるベースアイテムは、(1)ユーザによって選択されるか、(2)ユーザに関連したカートに含まれるか、又は(3)現在表示されているウェブページに配置されるかでありうる。
【0062】
動作5及び6で、スクリプトは、電子デバイスのローカルストレージが(1)識別されたベースアイテムについての追加アイテムと、(2)追加アイテムについてのテンプレートブロックと、を含むかどうかを判定しうる。一部の例で、ローカルストレージは、電子デバイスに保存されたクッキーでありうる。他の例で、ローカルストレージは、電子デバイスにインストールされたウェブブラウザに関連したストレージを含む、電子デバイスのメモリ位置でありうる。
【0063】
動作7で、ローカルストレージが追加アイテムを含まないならば、スクリプトは統合システムからの追加アイテムの識別情報を要求し、ここで追加アイテムは識別されたベースアイテムに関連しうる。一部の例で、ベースアイテムについて追加アイテムがまだ識別されていないので、又はアイテムの合致が生じてから、識別されたベースアイテムが変更されたので、ローカルストレージは空でありうる。スクリプトは、識別されたベースアイテムに関連した情報を統合システムへ送信しうる。
【0064】
動作8で、統合システムは、ベースアイテムを1つ以上の追加アイテムに合致させようとしうる。合致が見つかるかどうかの判定は、統合システムからスクリプトへ送信されうる。合致したアイテムに関連したデータも、統合システムからスクリプトへ送信されうる。
【0065】
動作9で、ローカルストレージ310がベースアイテムについての合致を含むならば、又は統合プロバイダ350から合致が受信されるならば、ユーザのブラウザにロードされる現在のページに追加アイテムが提示されうる。
【0066】
動作10で、ユーザは追加アイテムを選択しうる(例えば、ユーザに関連したカートへ追加アイテムを追加する)。ユーザはまた、追加アイテムあり又は追加アイテムなしで進むことを選択しうる。
【0067】
動作11で、現在のページを離れる前に、スクリプトは、現在のページから追加アイテムの選択の状態に関連した情報を受信しうる。
【0068】
動作12で、スクリプトが選択の状態に関連した情報を受信した場合に、スクリプトは、選択に関連した情報と追加アイテムとを電子デバイスのローカルストレージに格納しうる。
【0069】
上記のプロセスの動作は、ユーザがやり取りを完結するまで無限回数、繰り返されうる。各追加ページで、追加の又は異なる統合プラグインがページ内に含まれてもよく、これは統合システムからの追加スクリプトを要求しうる。電子デバイスによって受信された追加スクリプトはスクリプトと同じでありうるが、追加スクリプトはなおも新たな各ページに関して要求されうる。
【0070】
動作13で、ユーザはやり取りを完結しうる。一部の例で、ユーザがやり取りを完結する場合に、ウェブサイトはユーザを確認ページ(例えば、チェックアウト確認ページ250)へ連れていき、その後に成功ページ(例えば、成功ページ260)へ連れていける。他の例で、ウェブサイトは(動作14に示されるように)ユーザを直接に成功ページに連れていける。
【0071】
動作15で、(例えば、確認又は成功ページへ進むことによって)ユーザがやり取りを完結し始めると、統合システムからの第2スクリプトが要求されうる。第2スクリプトは、やり取りを要約するために統合システムへ送信する情報を決定しうる。一部の例で、第2スクリプトはスクリプトを同一でありうる。第2スクリプトを命名することは、電子デバイスによって新たなページが受信された場合に、追加スクリプトが受信され電子デバイスで実行されることをシグナリングすることでありうる。
【0072】
動作16で、第2スクリプトは、ウェブページ(例えば、確認ページ又は成功ページ)から実行されうる。
【0073】
動作17で、第2スクリプトは、追加アイテムが選択されたかどうかを含む、やり取りの現在の状態を決定しうる。一部の例で、スクリプトは、電子デバイスのローカルストレージを閲覧することによって、追加アイテムが選択されたかどうかを識別しうる。
【0074】
動作18で、第2スクリプトは、やり取りの現在の状態に関連した情報を送信しうる。
【0075】
動作19で、第2スクリプトは、統合システムから応答を受信しうる。応答は、やり取りの現在の状態に基づいて現在のウェブページに表示される情報を含みうる。例えば、追加アイテムが選択されたならば、現在のウェブページに表示される情報は、追加アイテムに関する情報を含みうる。
【0076】
動作20で、統合システムからの応答を用いてウェブページでユーザにウェブページが表示されうる。
【0077】
IV.オンライン環境を提供するための方法
上述のオンライン環境は、クライアントデバイスの観点から及び統合システムの観点から見ることができる。各観点に関連した方法は同様であるが、以下に説明するようにそれぞれに特有なステップが存在する。
【0078】
A.クライアントデバイスの観点
図4は、クライアントコンピュータの観点からクライアントコンピュータ上のオンライン環境を提供するための方法400のフローチャートである。方法400はクライアントコンピュータシステムによって実行されてもよく、これは統合プラグインをロード及び実行できるインターネットブラウザを含みうる。
【0079】
410で、クライアントコンピュータはウェブページを受信しうる。ウェブページはプラグインモジュールを含みうる。ウェブページは、第1アイテムの識別情報も含みうる。第1アイテムは、ユーザが興味があると特定したものでありうる。他の例で、第1アイテムは、上述のベースアイテムでありうる。ウェブページは、クライアントコンピュータを用いてクライアントコンピュータシステムのブラウザにロードされうる。
【0080】
420で、クライアントコンピュータはプラグインモジュールを実行しうる。プラグインモジュールは、統合サーバコンピュータと通信するために用いられうる。一部の例で、プラグインモジュールは、ウェブページの不可視コンポーネントでありうる。
【0081】
430で、プラグインモジュールは、統合サーバコンピュータからの統合スクリプトを要求するために用いられうる。プラグインモジュールは、統合サーバコンピュータから第1アイテムに関連した追加アイテムを取得するために統合スクリプトを用いうる。
【0082】
440で、クライアントコンピュータは、統合スクリプトを求めるリクエストに応答して第1統合スクリプトを受信しうる。応答において、統合スクリプトを求めるリクエストのおかげで、第1統合スクリプトが統合サーバコンピュータから送信され、クライアントコンピュータによって受信されることを意味しうる。一部の例で、第1統合スクリプトは、統合スクリプトを求めるリクエストを統合サーバコンピュータが受信するとすぐに送信されうる。
【0083】
450で、プラグインモジュールは、ユーザのブラウザへ第1統合スクリプトをロードすることによって第1統合スクリプトを実行するか、これがブラウザによって行われることを要求しうる。第1統合スクリプトは、第1アイテムに関連した追加アイテムがクライアントコンピュータ又はブラウザのローカルストレージに含まれるかどうかを判定しうる。第1統合スクリプトはまた、ローカルストレージがテンプレートブロック、やり取りの状態又はこれらの任意の組み合わせを含むかどうかを判定しうる。これらのオブジェクトが存在するならば、第1統合スクリプトは490へ進み、その他の場合に460へ進みうる。
【0084】
460で、第1統合スクリプトは、第1アイテムに関連したアイテムを求めるアイテムリクエストを送信しうる。アイテムリクエストは統合サーバへ送信されうる。その後、統合サーバは、第1アイテムに関連付けられている追加アイテムを検索しうる。
【0085】
470で、クライアントコンピュータは第2アイテムに関連した情報を受信しうる。第2アイテムは、統合サーバコンピュータによって識別された追加アイテムでありうる。第2アイテムは第1アイテムに関連しうる。第2アイテムに関連した情報は、アイテムリクエストに応答して受信されうる。一部の例で、第2アイテムに関連した情報は、アイテムリクエストが受信される前に、統合サーバコンピュータに既に保存されうる。他の例で、統合サーバコンピュータは、アイテムリクエストが受信された場合に、第1アイテムに関連したアイテムをデータベースで検索しうる。一部の例で、第2アイテムに関連した情報は、ウェブページに第2アイテムを表示するためのフォーマットと、第2アイテムの識別情報と、ウェブページの第2アイテムに関連した情報の少なくとも一部分を置くための位置と、第2アイテムの変形とを含みうる。変形は、クライアントコンピュータに関連したユーザについての第2アイテムのカスタマイズを含みうる。
【0086】
480で、ウェブページは、第2アイテムに関連した情報の少なくとも一部を含むように更新されうる。一部の例で、ウェブページが更新される前に、第1統合スクリプトは、ウェブページが、第2アイテムに関連した情報に含まれる1つ以上のウェブページを含むことを判定しうる。ウェブページが1つ以上のウェブページのうちの1つでないならば、ウェブページは更新されなくてもよい。
【0087】
490で、更新されたウェブページは、クライアントコンピュータのブラウザで提示されうる。一部の例で、ユーザが現在のページを離れる場合に、フォーマット、第2アイテム、位置、変形又はこれらの任意の組み合わせを含む、ウェブページに関連した情報がブラウザのローカルストレージに格納されうる。情報は、クライアントコンピュータのローカルストレージにも格納されうる。
【0088】
一部の例で、方法400は、クライアントコンピュータが第2アイテムに関連したユーザから選択を受け取ることを更に含みうる。例えば、ユーザは第2アイテムをクリックしうる。選択に応答して、ウェブサイトからの第2ページ(例えば、成功ページ)を求めるウェブページリクエストが送信されうる。
【0089】
一部の例で、クライアントコンピュータはウェブサイトから第2ページを受信しうる。第2ページは第2プラグインモジュールを含みうる。第2プラグインモジュールがクライアントコンピュータで実行された後に、第2プラグインモジュールは、第2統合スクリプトを求める第2リクエスト(又は別のリクエスト)を統合サーバコンピュータへ送信しうる。一部の例で、第2統合スクリプトは第1統合スクリプトを同一でありうる。第2統合スクリプトは、クライアントコンピュータによって受信され、クライアントコンピュータで実行されうる。一部の例で、第2プラグインモジュール及び第2統合スクリプトは、第2ウェブページの不可視コンポーネントでありうる。第2プラグインモジュール及び第2統合スクリプトはそれぞれ、第1プラグインモジュール及び第1統合スクリプトのコピーでありうる。異なるページがロードされ、ウェブページが変化する前に第1統合スクリプトが完了するので第2統合スクリプトを求めるリクエストが要求されてもよい。
【0090】
一部の例で、第2統合スクリプトは、選択に関連した情報を統合サーバコンピュータへ送信しうる。応答において、クライアントコンピュータは、統合サーバコンピュータから成功ページに表示する情報を受信しうる。
【0091】
一部の例で、第2ウェブページは、第2ウェブページに表示する情報の少なくとも一部を含むように更新されうる。その後、クライアントコンピュータは、更新された第2ウェブページを表示しうる。
【0092】
B.統合サーバの観点
図5は、サーバコンピュータシステム(例えば、統合システム120)の観点からクライアントコンピュータ上のオンライン環境を提供するための方法500のフローチャートである。方法500は、サーバコンピュータシステムによって実行されうる。
【0093】
510で、サーバコンピュータは、統合スクリプトを求める第1スクリプトリクエストを受信しうる。第1スクリプトリクエストは、プラグインモジュールを用いてクライアントコンピュータから送信されうる。520で、サーバコンピュータシステムは、第1スクリプトリクエストに応答して第1統合スクリプトを送信しうる。第1統合スクリプトは、クライアントコンピュータへ送信されうる。
【0094】
530で、サーバコンピュータシステムは、第1アイテムに関連したアイテムを求めるアイテムリクエストを受信しうる。第1アイテムは、クライアントコンピュータによって表示されるウェブページに配置されうる。アイテムを求めるアイテムリクエストは、第1統合スクリプトを用いてクライアントコンピュータによって送信されうる。
【0095】
540で、サーバコンピュータシステムは、第1アイテムに関連したアイテムについてデータベースにクエリすることによって第2アイテムを識別しうる。データベースは複数のアイテムを含みうる。第2アイテムは第1アイテムに関連しうる。
【0096】
一部の例で、サーバコンピュータシステムは、第2アイテムに関連した情報の少なくとも一部を表示するためのフォーマットを決定しうる。このような例で、第2アイテムに関連した情報は、フォーマットと、第2アイテムに関連した情報をウェブページに配置する位置とを含みうる。サーバコンピュータシステムはまた、表示される第2アイテムに関連した情報についての1つ以上のページを決定しうる。このような例で、第2アイテムに関連した情報は、1つ以上のページの識別情報を含みうる。サーバコンピュータシステムはまた、クライアントコンピュータに関連したユーザに基づいて第2アイテムの変形を決定しうる。第2アイテムに関連した情報は、変形を更に含みうる。
【0097】
550で、サーバコンピュータシステムは、第2アイテムに関連した情報を生成しうる。560で、サーバコンピュータシステムは、第2アイテムに関連した情報をクライアントコンピュータへ送信しうる。
【0098】
一部の例で、方法500は、サーバコンピュータシステムが、統合スクリプトを求める第2スクリプトリクエスト(又は別のスクリプトリクエスト)をクライアントコンピュータから受信することを更に含みうる。サーバコンピュータシステムは、第2スクリプトリクエストに応答して第2統合スクリプトをクライアントコンピュータへ送信しうる。一部の例で、第2統合スクリプトは第1統合スクリプトを同一でありうる。
【0099】
一部の例で、方法500は、サーバコンピュータシステムが、成功メッセージをクライアントコンピュータから受信することを更に含みうる。成功メッセージは第2アイテムの選択を示しうる。応答において、サーバコンピュータシステムは、第2アイテムの選択に関連した情報をクライアントコンピュータへ送信しうる。
【0100】
V.コンピュータシステム
本書で説明されるコンピュータシステムの何れもが任意の適切な数のサブシステムを利用してもよい。コンピュータシステム10におけるこのようなサブシステムの例が
図6に示される。一部の実施形態で、コンピュータシステムは、単一のコンピュータ装置を含み、ここでサブシステムはコンピュータ装置のコンポーネントでありうる。他の実施形態で、コンピュータシステムは、内部コンポーネントを有する複数のコンピュータ装置を含み、それぞれがサブシステムでありうる。
【0101】
図6に示されるサブシステムは、システムバス75を介して相互接続される。プリンタ74、キーボード78、ストレージデバイス(群)79、ディスプレイアダプタ82に結合されたモニタ76、その他の物のような追加のサブシステムが示される。I/Oコントローラ71に結合された周辺入出力(I/O)デバイスが、入出力(I/O)ポート77(例えば、USB、ファイヤワイヤ(登録商標))のような既知の任意の個数の手段によってコンピュータシステムに接続されうる。例えば、インターネットのような広域ネットワーク、マウス入力デバイス、又はスキャナへコンピュータシステム10を接続するために、I/Oポート77又は外部インタフェース81(例えば、イーサネット(登録商標)、WiFi(登録商標)など)が用いられうる。システムバス75を介した相互接続は、中央プロセッサ73が各サブシステムと通信し、システムメモリ72又はストレージデバイス(群)79(例えば、ハードドライブ又は光学ディスクのような固定ディスク)からの命令の実行を制御するだけでなく、サブシステム間の情報の交換を制御することを可能にする。システムメモリ72及び/又はストレージデバイス(群)79は、コンピュータ可読媒体を実施してもよい。本書で説明されるデータの何れもが、あるコンポーネントから別のコンポーネントへ出力されてもよく、ユーザへ出力されてもよい。
【0102】
コンピュータシステムは、例えば外部インタフェース81又は内部インタフェースによって互いに接続された複数の同一のコンポーネント又はサブシステムを含みうる。一部の実施形態で、コンピュータシステム、サブシステム又は装置は、ネットワークを通じて通信しうる。このような例で、1つのコンピュータがクライアントとみなされ、別のコンピュータがサーバとみなされ、これらはそれぞれ同一のコンピュータシステムの一部でありうる。クライアント及びサーバはそれぞれ、複数のシステム、サブシステム又はコンポーネントを含みうる。
【0103】
本発明の実施形態の何れもがハードウェア(例えば、特定用途向け集積回路又はフィールドプログラマブルゲートアレイ)を用いた及び/又はモジュラ又は集積方式の汎用プログラマブルプロセッサとともにコンピュータソフトウェアを用いたコントロールロジックの形式で実施されうる。本書で用いられるように、プロセッサは、単一コアプロセッサ、同一の集積チップ上のマルチコアプロセッサ、又は単一回路基板上の又はネットワーク接続された複数の処理ユニットを含む。本書で与えられる開示及び教示に基づいて、当業者はハードウェア及びハードウェアとソフトウェアとの組み合わせを用いて本発明の実施形態を実装する他のやり方及び/又は方法を知り理解するだろう。
【0104】
この出願に記載されるソフトウェアコンポーネント又は機能の何れもが、例えばJava、C、C++、C#、オブジェクティブC、Swiftのような任意の適切なコンピュータ言語、又はPerlやPythonのようなスクリプト言語や、従来の又はオブジェクト指向技術を用いてプロセッサによって実行されるソフトウェアコードとして実施されてもよい。ソフトウェアコードは、格納及び/又は伝送のためのコンピュータ可読媒体上の一連の命令又はコマンドとして格納されてもよく、適切な媒体は、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、ハードドライブ又はフロッピーディスクのような磁気媒体、コンパクトディスク(CD)又はDVD(デジタル多目的ディスク)のような光学媒体、フラッシュメモリなどを含む。コンピュータ可読媒体は、このような格納又は伝送デバイスの任意の組み合わせであってもよい。
【0105】
このようなプログラムはまた、インターネットを含む様々なプロトコルに準拠する有線、光及び/又は無線のネットワークを介した送信に適合したキャリア信号を用いて符号化及び送信されてもよい。このようなものとして、本発明の実施形態に係るコンピュータ可読媒体は、このようなプログラムに符号化されたデータ信号を用いて生成されてもよい。プログラムコードに符号化されたコンピュータ可読媒体は、互換デバイスにパッケージ化されてもよいし、(例えばインターネットダウンロードを介して)他のデバイスから別個に提供されてもよい。任意のこのようなコンピュータ可読媒体は、単一のコンピュータ製品(例えば、ハードドライブ、CD、又はコンピュータシステム全体)に存在してもよく、システム又はネットワーク内の様々なコンピュータ製品に存在してもよい。コンピュータシステムは、モニタ、プリンタ、又は本書に説明される任意の結果をユーザに提供するための他の適切なディスプレイを含んでもよい。
【0106】
本書に記載される方法のいずれもが、ステップを実行するように構成されうる1つ以上のプロセッサを含むコンピュータシステムで全体的に又は部分的に実行されてもよい。よって、実施形態は、本書に記載された任意の方法のステップを、場合によっては個別のステップ又は個別のグループのステップを実行する異なるコンポーネントとともに実行するように構成されたコンピュータシステムを対象としうる。番号付けされたステップとして提示されたが、本書の方法のステップは、同時に又は異なる順序で実行されうる。さらに、これらのステップの一部は、他の方法からの他のステップの部分とともに用いられてもよい。また、ステップのすべて又は一部はオプションであってもよい。さらに、任意の方法の任意のステップは、モジュール、回路、又はこれらのステップを実行するための他の手段で実行されうる。
【0107】
特定の実施形態の具体的な詳細は、本発明の実施形態の精神及び範囲から逸脱することなく任意の適切なやり方で組み合わされてもよい。しかし、本発明の他の実施形態は、各個別の側面、又はこれらの個別の側面の特定の組み合わせに関する特定の実施形態を対象としてもよい。
【0108】
本発明の例示の実施形態の上記説明は、説明及び記載のために提示される。包括的であり、記載された正確な形式に限定することは意図しておらず、上記教示に照らして多くの修正及び変形が可能である。本発明の原理及びその実際の用途を最良に説明し、それによって当業者が予期される特定の用途に適した様々な実施形態及び様々な修正で本発明を最良に利用できるように実施形態が選択され記載された。
【0109】
“a”、“an”又は“the”の記載は、そうでないことが明示されない限り、“1つ以上”を意味することを意図する。“or”の使用は“包括的or”を意味することが意図され、そうでないことが明示されない限り、“排他的or”を意味することを意図しない。
【0110】
本書に記載されるすべての特許、特許出願、公開及び明細書は、参照によってその全体が本書に組み込まれる。自認する先行技術はない。
【手続補正書】
【提出日】2023-04-26
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
クライアントコンピュータでオンライン環境を提供する方法であって、前記方法は、サーバコンピュータシステムによって実行する、
統合スクリプトを求める第1リクエストを前記クライアントコンピュータから受信することと、
前記第1リクエストに応答して前記クライアントコンピュータへ第1統合スクリプトを送信することと、
第1アイテムに関連したアイテムを求めるリクエストを、前記第1統合スクリプトを用いて前記クライアントコンピュータから受信することであって、前記第1アイテムの第1識別情報は前記クライアントコンピュータで表示されるウェブサイトのウェブページに含まれる、ことと、
前記第1アイテムに関連したアイテムを求めてデータベースにクエリすることによって第2アイテムを識別することであって、前記データベースは複数のアイテムを含み、前記第2アイテムは前記第1アイテムに関連する、ことと、
前記第2アイテムに関連した情報を生成することであって、前記情報は前記第2アイテムの第2識別情報と前記ウェブページの特定の部分に配置された1つ以上のウェブフックの要素識別子とを含む、ことと、
前記第2アイテムに関連した前記情報を前記クライアントコンピュータへ送信することであって、前記ウェブページは前記ウェブページの前記特定の部分に配置された前記1つ以上のウェブフックを含む、ことと、を有する方法。
【請求項2】
請求項1に記載の方法であって、前記要素識別子は第1要素識別子であり、前記情報は、1つ以上のページ要素のための第2要素識別子を含み、前記第1要素識別子及び前記第2要素識別子は、前記第2アイテムを表示するためのテンプレートブロックの複数の段階を示す、方法。
【請求項3】
請求項2に記載の方法であって、前記1つ以上のページ要素は、ユーザによるやり取りの後に前記ウェブサイトの別のウェブページへ導き、それによって前記第2アイテムが前記ウェブサイトの複数のウェブページに表示される、方法。
【請求項4】
請求項2又は3に記載の方法であって、前記1つ以上のページ要素は、前記ウェブページとのユーザのやり取りの終了を決定する、方法。
【請求項5】
請求項1乃至4の何れか1項に記載の方法であって、
前記第2アイテムに関連した前記情報の少なくとも一部を表示するためのフォーマットを決定することであって、前記第2アイテムに関連した前記情報は前記フォーマットを更に含む、ことを更に有する方法。
【請求項6】
請求項5に記載の方法であって、
表示される前記第2アイテムに関連した前記情報の少なくとも前記一部について1つ以上のウェブページを決定することであって、前記第2アイテムに関連した前記情報は前記1つ以上のウェブページを識別する、ことを更に有する方法。
【請求項7】
請求項5又は6に記載の方法であって、前記第2アイテムに関連した前記情報は、前記第2アイテムに関連した前記情報を前記ウェブページに置く位置を含み、前記位置は、前記ウェブページの前記特定の部分に配置された前記1つ以上のウェブフックの1つに関連する、方法。
【請求項8】
請求項1乃至7の何れか1項に記載の方法であって、
前記クライアントコンピュータに関連したユーザに基づいて前記第2アイテムの変形を決定することであって、前記第2アイテムに関連した前記情報は前記変形を更に含む、ことを更に有する方法。
【請求項9】
請求項1乃至8の何れか1項に記載の方法であって、
前記統合スクリプトを求める第2スクリプトリクエストを前記クライアントコンピュータから受信することと、
前記第2スクリプトリクエストに応答して前記クライアントコンピュータへ前記統合スクリプトを送信することと、
前記統合スクリプトを用いて前記クライアントコンピュータから成功メッセージを受信することであって、前記成功メッセージは前記第2アイテムの選択を示す、ことと、
前記第2アイテムの前記選択に関連した情報を前記クライアントコンピュータへ送信することと、
を更に有する方法。
【請求項10】
請求項9に記載の方法であって、前記第2アイテムの前記選択に関連した前記情報は前記第2アイテムに関する確認を含む、方法。
【請求項11】
クライアントコンピュータでオンライン環境を提供する方法であって、前記方法は、前記クライアントコンピュータによって実行する、
第1アイテムを含むウェブページをウェブサイトから受信することと、
前記ウェブページで実行されるプラグインモジュールを介して、統合サーバコンピュータへ統合スクリプトを求めるスクリプトリクエストを送信することと、
前記スクリプトリクエストに応答して、前記統合サーバコンピュータから第1統合スクリプトを受信することと、
前記クライアントコンピュータで前記第1統合スクリプトを実行することと、
前記第1統合スクリプトを使用して、前記クライアントコンピュータのローカルストレージが、前記第1アイテムに関連した1つ以上のアイテムを含まないことを判定することと、
前記第1統合スクリプトを用いて、前記統合サーバコンピュータへアイテムリクエストを送信することであって、前記アイテムリクエストの前記送信は、前記ローカルストレージが、前記第1アイテムに関連した前記1つ以上のアイテムを含まないことの判定に応答して行われる、ことと、
前記アイテムリクエストに応答して、第2アイテムに関連した情報を前記統合サーバコンピュータから受信することであって、前記第2アイテムは前記第1アイテムに関連し、前記第2アイテムに関連した前記情報はテンプレートブロックを含み、前記ウェブページは、前記ユーザと前記ウェブサイトとの間のやり取りの前記複数の段階にしたがって前記テンプレートブロックを更新することによって更新される、ことと、
前記統合スクリプトを用いて、前記第2アイテムに関連した前記情報の少なくとも一部を含むように前記ウェブページを更新することと、
前記更新されたウェブページを前記クライアントコンピュータで表示することと、を有する、方法。
【請求項12】
請求項11に記載の方法であって、前記ウェブページは、ユーザと前記ウェブサイトとの間のやり取りの複数の段階で前記第2アイテムに関連した前記情報の前記一部を含むように更新される、方法。
【請求項13】
請求項12に記載の方法であって、前記ユーザと前記ウェブサイトとの間のやり取りの前記複数の段階は、前記第2アイテムの選択と前記第2アイテムの購入とを含む、方法。
【請求項14】
請求項12又は13に記載の方法であって、
前記ユーザによって行われた相異なる動作を反映する前記テンプレートブロックの相異なる状態を格納することを更に有する、方法。
【請求項15】
請求項14に記載の方法であって、
相異なるウェブページにわたって前記第2アイテムに関連した前記情報の前記一部を表示するために前記テンプレートブロックの格納された状態を使用することを更に有する、方法。
【請求項16】
請求項11乃至15の何れか1項に記載の方法であって、
前記第1統合スクリプトを用いて、前記第1アイテムに関連したアイテムが前記統合サーバコンピュータから受信されていないことを判定することであって、前記判定は前記アイテムリクエストの前に生じる、ことを更に有する方法。
【請求項17】
請求項11乃至16の何れか1項に記載の方法であって、
前記第1統合スクリプトを用いて、前記ウェブページが1つ以上のウェブページのうちの1つであることを判定することであって、前記1つ以上のウェブページの識別情報は、前記第2アイテムに関連した前記情報に含まれ、前記判定は前記ウェブページが更新される前に生じる、ことを更に有する方法。
【請求項18】
請求項11乃至17の何れか1項に記載の方法であって、
前記第2アイテムに関連した選択を受信することと、
前記選択が受信された後に、前記ウェブサイトからの第2ウェブページを求めるウェブページリクエストを送信することと、
前記ウェブサイトから前記第2ウェブページを受信することと、
前記統合サーバコンピュータへ別のスクリプトリクエストを送信することと、
前記統合サーバコンピュータから第2統合スクリプトを受信することと、
前記クライアントコンピュータで前記第2統合スクリプトを実行することと、
前記第2統合スクリプトを用いて、前記選択に関連した情報を前記統合サーバコンピュータへ送信することと、
前記選択に関連した前記情報を送信したことに応答して、前記第2ウェブページに表示する情報を前記統合サーバコンピュータから受信することと、
前記第2統合スクリプトを用いて、前記第2ウェブページで表示する前記情報の少なくとも一部を含むように前記第2ウェブページを更新することと、
前記更新された第2ウェブページを前記クライアントコンピュータで表示することと、を更に有する方法。
【請求項19】
請求項18に記載の方法であって、前記スクリプトリクエストは、前記ウェブページの不可視のコンポーネントであるプラグインモジュールを使用して送信され、前記別のスクリプトリクエストは、前記第2ウェブページの不可視のコンポーネントである第2プラグインモジュールを使用して送信される、方法。
【請求項20】
請求項11乃至18の何れか1項に記載の方法であって、前記第2アイテムに関連した前記情報は、前記ウェブページで前記第2アイテムを表示するためのフォーマットと、前記第2アイテムの識別情報と、前記第2アイテムに関連した前記情報の少なくとも一部を前記ウェブページに置く位置と、を含む、方法。
【請求項21】
請求項20に記載の方法であって、前記第2アイテムに関連した前記情報は、前記第2アイテムの変形を更に含み、前記変形は、前記クライアントコンピュータに関連したユーザのための前記第2アイテムのカスタマイズを含む、方法。
【請求項22】
1つ以上のプロセッサによって実行された場合に、請求項1乃至21の何れか1項に記載の方法を前記1つ以上のプロセッサに実行させる命令を含むコンピュータプログラム。
【請求項23】
請求項1乃至21の何れか1項に記載の方法を実行するように構成された1つ以上のプロセッサを備えるシステム。
【外国語明細書】