<実施例1>
以下、本発明の実施例1について添付図面を参照しつつ説明する。
本発明の実施例1に係る提供装置100は、ユーザにコンテンツを提供する、図1の提供システム1を構成する。提供システム1は、提供装置100の他に、通信網10と、端末装置210及び220と、を備える。
提供装置100は、旅行に関連した商品又はサービス(以下、商品等という)の販売に用いられるコンテンツと、当該コンテンツに基づいて重要と判別されたメッセージと、を、端末装置210又は220へ送信する。これにより、提供装置100は、端末装置210又は220のユーザにコンテンツ及びメッセージを提供する。
通信網10は、インターネットであり、提供装置100と、端末装置210及び220と、に接続されている。端末装置210及び220は、ユーザに携帯されるスマートフォンであり、提供装置100から送信されたコンテンツ及びメッセージを受信し、表示する。
提供装置100は、図2に示すようなサーバ機で構成される。提供装置100は、CPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、ハードディスク104、通信回路105、ビデオカード106、表示装置107、及び、入力装置108を備える。
CPU101は、ROM102又はハードディスク104に保存されたプログラムを実行することで、提供装置100の全体制御を行う。RAM103は、CPU101によるプログラムの実行時において、処理対象とするデータを一時的に記憶する。
ハードディスク104は、各種のデータやデータを保存したテーブルを記憶する。尚、提供装置100は、ハードディスク104の代わりに、フラッシュメモリを備えても良い。
通信回路105は、NIC(Network Interface Card)であり、通信網10を介して接続される端末装置210及び220とデータ通信する。
ビデオカード106は、CPU101から出力されたデジタル信号に基づいて画像をレンダリングすると共に、描画された画像を表す画像信号を出力する。表示装置は、LCD(Liquid Crystal Display)であり、ビデオカード106から出力された画像信号に従って画像を表示する。尚、提供装置100は、LCDの代わりに、PDP(Plasma Display Panel)又はEL(Electroluminescence)ディスプレイを備えても良い。
入力装置108は、キーボード、マウス、タッチパッド、及び、タッチパネルのいずれか1つ以上であり、ユーザの操作に応じた信号を入力する。
提供装置100のCPU101は、図2のハードウェアを用いて、端末装置210又は220のユーザに宛てたメッセージを生成し、保管する、図3の保管処理を実行する。これにより、CPU101は、メッセージを生成する、図4の生成部110、及び、生成されたメッセージを保管する保管部120として機能する。また、ハードディスク104は、メッセージを記憶する情報記憶部190として機能する。
情報記憶部190は、複数のメッセージが保存される、図5のメッセージボックステーブルを記憶しており、メッセージボックステーブルには、複数のレコードが保存される。各レコードには、メッセージの宛先とされるユーザを識別するユーザID(IDentification)と、当該メッセージの所在を表すURL(Uniform Resource Locator)と、が対応付けられたデータが保存される。メッセージの件名及び本文は、図6に示すようなウェブページに記載されるため、メッセージのURLとして、当該メッセージが記載されたウェブページのURLが用いられる。
メッセージのURLには、さらに、当該メッセージの件名及び本文と、当該メッセージを説明するキーワードであるタグと、当該本文が当該ユーザに表示された(以下、既読という)か、否(以下、未読という)か、を表すフラグが対応付けられる。
また、メッセージのURLには、当該メッセージと、当該メッセージの宛先とされるユーザが閲覧するコンテンツ(以下、閲覧コンテンツという)と、がどの程度関連しているかを示す関連度と、当該関連度に基づいて算出される表示順位と、が対応付けられる。閲覧コンテンツに関連したメッセージ程、ユーザにとって重要だからである。
また、情報記憶部190は、商品等に関するレコードを複数保存する、不図示の商品テーブルを記憶している。商品テーブルの各レコードには、旅行に関連した商品等と、当該商品等の現在価格と、前日価格と、が対応付けられたデータが保存されている。
図2のCPU101は、予め定められたタイミングで、図5のメッセージボックステーブルにメッセージを保管する、図3の保管処理の実行を開始する。
保管処理を開始すると、図4の生成部110は、ユーザの行動履歴に基づいて、当該ユーザに宛てたメッセージを生成した後に(ステップS01)、生成したメッセージからタグを抽出する(ステップS02)。
行動履歴の一例として、端末装置210のユーザがメキシコ往復航空券をお気に入りリストに追加したことを挙げて、以下の説明を行う。生成部110は、例えば、1日毎といった所定周期で、例えば、午前2時といった所定の時刻が到来したタイミングで、保管処理を実行する。この所定周期の実行において、生成部110は、端末装置210のユーザのお気に入りリストを参照し、当該ユーザがメキシコ往復航空券の予約を検討していると判別する。次に、生成部110は、不図示の商品テーブルを参照し、メキシコ往復航空券と対応付られた現在価格と前日価格とを取得する。その後、生成部110は、当該航空券の現在価格が前日価格よりも低いと判別すると、当該ユーザを宛先として、メキシコ往復航空券の値下げを通知するメッセージの件名と本文とを生成し、これらの件名と本文とが記載されたウェブページを生成する。
その後、生成部110は、メキシコ往復航空券の値下げを通知するメッセージの件名と本文とを形態素解析し、所定個数以上、取得される形態素「メキシコ」、「航空券」、及び、「値下げ」をタグとする。
生成部110が生成するメッセージには、一例として、お気に入りリストに追加された国内ホテルの値下げを通知するメッセージが含まれる。生成部110は、このメッセージが記載されたウェブページを生成し、「国内」、「ホテル」、及び、「値下げ」というタグを抽出する。
さらに、生成部110は、例えば、予約の受け付けが行われたタイミングで保管処理を実行し、一例として、アメリカ往復航空券の予約受け付けを通知するメッセージを生成し、「アメリカ」、「航空券」、「予約」、及び、「受け付け」というタグを抽出する。同様に、例えば、生成部110は、アメリカ往復航空券の予約キャンセルを通知するメッセージを生成し、タグ「アメリカ」、「航空券」、「予約」、及び、「キャンセル」を抽出する。
その後、保管部120は、メッセージの宛先であるユーザのユーザIDと、当該メッセージが記載されたウェブページのURL、件名、本文、及び、タグと、未読であることを表すフラグと、を対応付けたデータを生成する。次に、保管部120は、生成したデータを、メッセージボックステーブルのレコードに保管した後に(ステップS03)、保管処理の実行を終了する。
図3の保管処理で保管されたメッセージの宛先であるユーザは、図1の端末装置210又は220を使用している。ユーザは、例えば、航空券を検索するために用いられるコンテンツを閲覧しようとする場合、端末装置210又は220を操作して、当該コンテンツの提供を求めるコンテンツリクエストを、端末装置210又は220に送信させる。図2に示した提供装置100の通信回路105が、コンテンツリクエストを受信すると、CPU101は、図7のコンテンツ提供処理の実行を開始する。これにより、CPU101は、図4に示すような認証部130、特定部140、及び、提供部150として機能する。
認証部130は、ユーザを認証し、特定部140は、認証を成功させたユーザが閲覧する閲覧コンテンツを特定する。提供部150は、特定されたコンテンツに応じて、図5のメッセージボックステーブルに保管されたメッセージの表示順位を変更し、当該表示順位が変更されたメッセージやコンテンツをユーザに提供する。
図4の情報記憶部190は、ユーザ認証に用いられるレコードが複数保存された、不図示のユーザ認証テーブルを記憶している。ユーザ認証テーブルの各レコードには、ユーザを識別するユーザIDと、当該ユーザのパスワードと、が対応付けられたデータが保存されている。
さらに、情報記憶部190は、コンテンツに関連したレコードが複数保存された、図8のコンテンツテーブルを記憶している。コンテンツテーブルの各レコードには、コンテンツのURLと、当該コンテンツを説明するキーワードであるタグと、が対応付けられて保存されている。
コンテンツのタグは、図2のCPU101が不図示のタグ抽出処理を予め定められたタイミングで実行することで、コンテンツから抽出される。この予め定められたタイミングは、例えば、1日毎といった所定周期で、例えば、午前1時といった所定時刻が到来したタイミングで良い。
タグ抽出処理では、CPU101は、図8のコンテンツテーブルから未処理の1レコードを取得し、取得したレコードに保存されたURLに含まれる拡張子に基づいて、コンテンツの種類を特定する。
次に、CPU101は、コンテンツの種類が静止画や動画であると特定すると、静止画のコンテンツ自体又は動画を構成する各フレームの静止画に対して、OCR(Optical Character Recognition)処理を行うことで、コンテンツから文字情報を抽出する。また、CPU101は、コンテンツが動画又は音声であると特定すると、動画又は音声に音声認識処理を行うことで文字情報を抽出する。さらに、CPU101は、コンテンツがウェブページであると特定すると、マークアップ言語で記載されたソースファイル及びソースファイルで参照される静止画コンテンツ、動画コンテンツ、又は音楽コンテンツから文字情報を抽出する。
その後、CPU101は、コンテンツから抽出された文字情報を形態素解析し、所定個数以上、取得される形態素をタグとする。
一例として、コンテンツが、図9に示すような、ロシア、中国、カナダ、又は、アメリカへの往復航空券を検索するために用いられるウェブページであり、当該コンテンツのURLが「./C001.html」である場合を挙げて説明する。この場合、CPU101は、「./C001.html」に在る当該コンテンツのソースファイルから文字情報を抽出し、抽出した文字情報を形態素解析する。これにより、CPU101は、キーワード「航空券」、「検索」、「ロシア」、「中国」、「カナダ」、及び、「アメリカ」というタグを抽出する。
その後、CPU101は、コンテンツのURL「./C001.html」と、当該コンテンツのタグ「航空券」、「検索」、「ロシア」、「中国」、「カナダ」、及び、「アメリカ」と、を対応付けて、図8のコンテンツテーブルに保存する。
次に、CPU101は、コンテンツテーブルから未処理のレコードが無くなるまで上記処理を繰り返した後に、タグ抽出処理の実行を終了する。
以下、説明を簡単にするため、ユーザID「U001」で識別されるユーザに操作されて、図9のウェブページの提供を求めるコンテンツリクエストを、端末装置210が送信した場合を例に挙げて、以下の説明を行う。このため、コンテンツリクエストには、図9に示したウェブページのURL「./C001.html」が含まれている。
図7のコンテンツ提供処理の実行を開始すると、図4の認証部130は、ユーザ認証を受けるように促すメッセージを、端末装置210を宛先として、図2の通信回路105へ出力する。通信回路105は、当該メッセージを端末装置210へ送信する。
端末装置210は、当該メッセージを受信し、表示した後に、当該メッセージを視認したユーザの操作に従って、ユーザID「U001」とパスワードとを入力する。その後、端末装置210は、入力されたユーザID「U001」とパスワードとを、提供装置100へ返信する。
その後、認証部130は、図2の通信回路105が受信したユーザID「U001」とパスワードとを取得し、取得したユーザID「U001」とパスワードとに基づいてユーザ認証を行う(ステップS11)。
ステップS11において、認証部130は、受信されたユーザID「U001」に対応付けられたパスワードを、不図示のユーザ認証テーブルから検索する。次に、認証部130は、パスワードが検索できない場合、又は、検索により取得したパスワードが受信されたパスワードと異なる場合に、ユーザ認証が失敗したと判別する。その後、認証部130は、ユーザ認証が失敗したことを報告するメッセージを、端末装置210を宛先として通信回路105に出力した後に、コンテンツ提供処理の実行を終了する。
これに対して、認証部130は、パスワードが検索でき、かつ、検索により取得したパスワードが受信されたパスワードと一致する場合に、ユーザ認証が成功したと判別する。その後、認証部130は、ユーザ認証が成功したことを報告するメッセージを、端末装置210を宛先として通信回路105に出力する。
その後、図4の特定部140は、図2の通信回路105からコンテンツリクエストを取得し(ステップS12)、取得されたコンテンツリクエストに含まれるURL「./C001.html」を取得する。その後、特定部140は、取得したURLに在るコンテンツを、端末装置210のユーザが閲覧する閲覧コンテンツであると特定する(ステップS13)。
次に、特定部140は、図8のコンテンツテーブルから、URL「./C001.html」に対応付けられたコンテンツのタグを検索し、「航空券」、「検索」、「ロシア」、「中国」、「カナダ」、及び、「アメリカ」を取得する。閲覧コンテンツは、ロシア、中国、カナダ、又は、アメリカ行きの航空券を検索するために用いられる、図9のウェブページだからである。
次に、提供部150は、図5のメッセージボックステーブルに保存されたメッセージのそれぞれについて、検索されたコンテンツのタグと、メッセージのタグと、に基づいて、コンテンツとメッセージとがどの程度関連するかを表す関連度を算出する(ステップS14)。
ここで、図7のステップS14で検索されたコンテンツのタグは、「航空券」、「検索」、「ロシア」、「中国」、「カナダ」、及び、「アメリカ」の6個である。これに対して、図5のメッセージボックステーブルに保存されたメキシコ往復航空券の値下げを通知するメッセージのタグは、「メキシコ」、「航空券」、及び、「値下げ」の3個である。このため、提供部150は、1個のタグ「航空券」がコンテンツのタグとメッセージのタグとで一致していると判別し、一致するタグの数「1」をコンテンツのタグの総数「6」で除算した値「0.17」を、当該メッセージの関連度として算出する。
また、提供部150は、国内ホテルの値下げを通知するメッセージのタグが、「国内」、「ホテル」、及び、「値下げ」であり、コンテンツのタグと1つも一致しないと判別し、当該メッセージの関連度を「0.00」と算出する。
さらに、提供部150は、アメリカ往復航空券の予約受け付けを通知するメッセージのタグ「アメリカ」、「航空券」、「予約」、及び、「受け付け」の内で、2つのタグ「アメリカ」及び「航空券」がコンテンツのタグと一致すると判別する。このため、提供部150は、一致するタグの数「2」をコンテンツのタグの総数「6」で除算した値「0.33」を、当該メッセージの関連度とする。同様に、提供部150は、アメリカ往復航空券の予約キャンセルを通知するメッセージの関連度を「0.33」と算出する。
ステップS14で関連度を算出した後に、提供部150は、図5のメッセージボックステーブルに保存されたメッセージのそれぞれについて、メッセージの関連度と、当該メッセージの既読又は未読を表すフラグと、に基づいて、当該メッセージの重要度を算出する(ステップS15)。
提供部150は、図5のメッセージボックステーブルにおいて、メキシコ往復航空券の値下げを通知するメッセージが、未読を表すフラグと対応付けられていると判別する。このため、提供部150は、既読メッセージに用いる加算値よりも値が大きい加算値「1.00」を、当該メッセージの関連度「0.17」に加算し、重要度を「1.17」と算出する。通常、未読メッセージの方が、既読メッセージよりもユーザにとって重要であるからである。同様に、提供部150は、国内ホテルの値下げを通知する未読メッセージの関連度「0.00」に加算値「1.00」を加えることで、重要度を「1.00」とする。
ここで、アメリカ往復航空券の予約受け付けを通知するメッセージの関連度と、アメリカ往復航空券の予約キャンセルを通知するメッセージの関連度は、共に「0.33」と算出された。しかし、提供部150は、予約受け付けを通知するメッセージは既読を表すフラグと対応付けられており、予約キャンセルを通知するメッセージは未読を表すフラグと対応付けられていると判別する。このため、提供部150は、予約受け付けを通知するメッセージの関連度「0.33」に加算値「0.00」を加え、予約キャンセルを通知するメッセージの関連度「0.33」に加算値「1.00」を加える。これにより、提供部150は、同じ関連度のメッセージであっても、未読メッセージの重要度を、既読メッセージの重要度よりも高く算出する。
ステップS15で重要度を算出した後に、提供部150は、図5のメッセージボックステーブルにおいて、コンテンツを閲覧するユーザのユーザID「U001」と対応付けられた複数のメッセージそれぞれについて、表示順位を重要度に基づいて算出する。提供部150は、重要度がより高い程、表示順位をより高い順位とするため、最も重要度の高いアメリカ往復航空券の予約キャンセルを通知するメッセージの表示順位を最高の順位である「1」位とする。
その後、提供部150は、メッセージボックステーブルに未だ表示順位が保存されていなければ、算出された表示順位をメッセージの本文や件名と対応付けて保存する。既に表示順位が保存されていれば、提供部150は、メッセージボックステーブルに保存されている表示順位を、算出された表示順位に変更する(ステップS16)。
その後、提供部150は、表示順位又は重要度に基づいて、ユーザID「U001」と対応付けられたメッセージを複数抽出する(ステップS17)。提供部150は、表示順位が所定の順位以上であるという所定条件を満たすメッセージを複数抽出しても良いし、重要度が所定値以上であるという所定条件を満たすメッセージを複数抽出しても良い。
次に、提供部150は、抽出した複数のメッセージの内で、未読のメッセージの件数を計数する(ステップS18)。その後、提供部150は、閲覧コンテンツであると特定された、図9のウェブページに対して、当該コンテンツのヘッダ部分にオブジェクトOBを表示させる編集を行うと共に、計数された未読メッセージの件数をオブジェクトOBに表示させる編集を行う。また、提供部150は、オブジェクトOBを選択する操作(以下、オブジェクト選択操作という)が行われた場合に、図10に示すような吹き出し形式で、抽出された複数のメッセージの件名を、表示順位が高い順に一覧表示させる編集を、編集後のウェブページに対してさらに行う。また、提供部150は、一覧表示されるそれぞれの件名に、それぞれの件名と本文とが記載された、図6のウェブページへのリンクを張る編集を、図9のウェブページに対してさらに行う。
その後、提供部150は、提供を求められたコンテンツであって、抽出された未読メッセージの件数がオブジェクトOBに記載された編集済みのウェブページを、端末装置210を宛先として、通信回路105に出力する(ステップS19)。その後、通信回路105が、出力されたウェブページを端末装置210へ送信した後に、提供部150は、コンテンツ提供処理の実行を終了する。
端末装置210は、ウェブページを受信し、ウェブページを視認したユーザのオブジェクトOBに対する操作に従って、抽出された複数のメッセージの件名を一覧表示する。次に、複数の件名の1つを選択する操作(以下、件名選択操作という)が行われると、端末装置210は、選択された件名に張られたリンクに基づいて、メッセージが記載されたウェブページのURLを特定する。その後、端末装置210は、特定したURLを含み、選択された件名のメッセージが記載されたウェブページの送信を求めるメッセージリクエストを生成し、提供装置100へ送信する。
図2に示した提供装置100の通信回路105がメッセージリクエストを受信すると、提供装置100のCPU101は、図11に示すメッセージ提供処理の実行を開始する。メッセージ提供処理が開始されると、図4の提供部150は、通信回路105からメッセージリクエストを取得する(ステップS21)。次に、提供部150は、メッセージリクエストに含まれるURLを抽出し、当該URLに在る、メッセージが記載されたウェブページを、端末装置210を宛先として通信回路105へ出力する(ステップS22)。
その後、提供部150は、図5のメッセージボックステーブルにおいて、出力したウェブページのURLに対応付けられたフラグを、既読を表すフラグに変更した後に(ステップS23)、メッセージ提供処理の実行を終了する。
提供装置100から送信されたコンテンツやメッセージを表示する端末装置210は、図12に示すようなスマートフォンである。端末装置210は、CPU211、ROM212、RAM213、フラッシュメモリ214、データ通信回路215a、音声通信回路215b、ビデオカード216、表示装置217、入力装置218、スピーカ219a、及び、マイクロフォン219bを備える。
図12のCPU211、ROM212、RAM213、ビデオカード216、及び、表示装置217は、図2のCPU101、ROM102、RAM103、ビデオカード106、及び、表示装置107と同様の構成及び機能を有する。
フラッシュメモリ214は、半導体メモリであり、各種のプログラム及びデータを記憶する。データ通信回路215aは、不図示の基地局と電波を用いたデータ通信を行うことで、提供装置100とデータ通信を行う。
音声通信回路215bは、不図示の基地局と電波を用いた音声通信を行う。入力装置218は、タッチパネルであり、ユーザの操作に応じた信号又は情報を入力する。スピーカ219aは、周囲の音声を表す信号を入力し、マイクロフォン219bはCPU211が出力する信号に従って音声を出力する。
端末装置210の入力装置218が、ユーザの操作に従って、ユーザが提供を求めるコンテンツのURLを表わす信号を入力すると、CPU211は、当該コンテンツの提供を受ける、図13のコンテンツ被提供処理の実行を開始する。
コンテンツ被提供処理の実行を開始すると、CPU211は、入力装置218が入力した信号に基づいてコンテンツのURLを取得する。次に、CPU211は、取得したURLを含んだコンテンツリクエストを、提供装置100を宛先としてデータ通信回路215aへ出力する(ステップS31)。その後、データ通信回路215aは、コンテンツリクエストを提供装置100へ送信する。
その後、データ通信回路215aが、ユーザ認証を受けるように促すメッセージを提供装置100から受信すると、CPU211は、ユーザ認証を受けるユーザ被認証処理を行う(ステップS32)。その後、ユーザ認証が失敗したことを報告するメッセージをデータ通信回路215aが受信すると、CPU211は、コンテンツ被提供処理の実行を終了する。これに対して、ユーザ認証が成功したことを報告するメッセージをデータ通信回路215aが受信すると、CPU211は、コンテンツ被提供処理の実行を継続する。
その後、データ通信回路215aがコンテンツを受信すると、CPU211は、当該コンテンツをデータ通信回路215aから取得する(ステップS33)。次に、CPU211は、当該取得されたコンテンツを表示装置217に表示させた後に(ステップS34)、コンテンツ被提供処理の実行を終了する。
次に、端末装置210のCPU211は、ユーザに操作された入力装置218が信号を入力する度に、コンテンツに基づいて重要と判別されたメッセージの提供をユーザの操作に応じて受ける、図14のメッセージ被提供処理の実行を開始する。
メッセージ被提供処理を開始すると、端末装置210のCPU211は、入力装置218が入力する信号に基づいて、表示させたコンテンツに含まれるオブジェクトOBを選択する操作(つまり、オブジェクト選択操作)が行われたか否かを判別する(ステップS41)。CPU211は、オブジェクト選択操作が行われたと判別すると(ステップS41;Yes)、図10に示す形式でメッセージの件名をリスト表示した後に(ステップS42)、メッセージ被提供処理の実行を終了する。
これに対して、CPU211は、オブジェクト選択操作が行われていないと判別すると(ステップS41;No)、入力装置218が入力する信号に基づいて、ステップS42でリスト表示された件名を選択する操作(つまり、件名選択操作)が行われたか否かを判別する(ステップS43)。CPU211は、件名選択操作が行われていないと判別すると(ステップS43;No)、メッセージ被提供処理の実行を終了する。
これに対して、CPU211は、件名選択操作が行われたと判別すると(ステップS43;Yes)、選択された件名のメッセージの送信を求めるメッセージリクエストを、提供装置100を宛先として、データ通信回路215aに出力する(ステップS44)。
データ通信回路215aは、メッセージリクエストを提供装置100へ送信した後に、ウェブページを提供装置100から受信する。
その後、CPU211は、選択された件名のメッセージが記載された、図6のウェブページをデータ通信回路215aから取得する(ステップS45)。その後、CPU211は、図15に示すように、メッセージが掲載されたウェブページを、コンテンツが掲載されたウェブページよりも手前にポップアップ表示させるように表示装置217を制御する。このように、CPU211は、ユーザが提供を求めたコンテンツに重ねてメッセージを表示装置217に表示させる(ステップS46)。その後、CPU211は、図10のウェブページに表示されたオブジェクトOBが通知する未読メッセージの件数を1件分減少させた後に(ステップS47)、メッセージ被提供処理の実行を終了する。
これらの構成によれば、提供装置100は、端末装置210又は220のユーザが閲覧する閲覧コンテンツに応じて、図5のメッセージボックステーブルに保管されたメッセージの表示順位を変更し、当該表示順位が変更されたメッセージを端末装置210又は220へ送信する。ここで、通常、ユーザが閲覧しているコンテンツには、ユーザにとって重要な内容が含まれているため、ユーザが閲覧しているコンテンツに対応したメッセージには、ユーザにとって重要な内容が記載されている。このため、提供装置100は、表示の必要があるメッセージの数が増えても、端末装置210又は220のユーザが重要なメッセージを読み飛ばす可能性の上昇を抑制できる。
<実施例1の変形例1>
実施例1では、提供装置100は、図10に示す形式で、件名を一覧表示するようにウェブページを編集すると説明したが、これに限定される訳ではない。提供装置100は、件名の代わりに、本文の全部又は一部を一覧表示するようにウェブページを編集しても良い。一覧表示される本文の一部は、本文の先頭から所定文字数の文字列であっても良いし、本文の要約を表す文字列であっても良い。提供装置100は、本文の要約を、例えば、文中に繰り返し出現する単語や表現を用いて生成する従来の要約技術を用いても良い。
<実施例1の変形例2>
実施例1では、提供装置100は、予め定められたタイミングでコンテンツのタグとメッセージのタグとを抽出しておくと説明した。しかし、これに限定される訳では無く、提供装置100は、コンテンツのタグ及びメッセージのタグを予め抽出しておかなくとも良い。例えば、提供装置100は、コンテンツが要求されてから、要求されたコンテンツに含まれるキーワードを抽出しても良い。
<実施例1の変形例3>
実施例1では、提供装置100の提供部150は、関連度として、ユーザが閲覧する「コンテンツ」のタグの総数に対し、メッセージのタグの内で、当該コンテンツのタグと一致するタグの数の割合を算出すると説明した。しかし、これに限定される訳ではなく、提供装置100は、「メッセージ」のタグの総数に対し、メッセージのタグの内で、閲覧コンテンツのタグと一致するタグの数の割合を関連度として算出しても良い。
<実施例1の変形例4>
実施例1では、提供装置100は、図7のステップS14で、メッセージの複数のタグの内で、閲覧コンテンツの複数のタグの少なくとも一つと「同一」のタグの数を、コンテンツのタグの総数で除算した値を、当該メッセージの関連度とすると説明した。
しかし、これに限定されるのでは無く、提供装置100は、メッセージの複数のタグの内で、閲覧コンテンツの複数のタグの少なくとも一つと「同一」又は「類似」のタグの数を、コンテンツのタグの総数で除算した値を、当該メッセージの関連度としても良い。2つのタグが類似であるか否かを判別するために、本変形例に係る提供装置100は、例えば、あるキーワードと、当該あるキーワードに類似した別のキーワードと、を対応付けたデータが保存されたレコードを、複数有する類似定義テーブルを記憶している。互いに類似している2つのキーワードは、例えば、互いに同じ意味内容を表すキーワード、概念的に上位下位の関係にあるキーワード、及び、互いに連想される意味内容を表すキーワードを含む。
<実施例1の変形例5>
実施例1では、提供装置100は、コンテンツから抽出された文字情報を形態素解析し、所定個数以上取得された形態素をタグとすると説明した。
しかし、これらに限定される訳ではなく、提供装置100は、所定個数以上、コンテンツから取得された形態素だけでなく、コンテンツの検索に用いられるメタタグも、コンテンツを説明するタグとして良い。コンテンツのメタタグは、コンテンツの内容を説明するタグとして、コンテンツの公表主体等によって付与されるため、通常、形態素よりも正確にコンテンツの内容を説明するためである。
以下、説明を簡単にするため、実施例1で説明した形態素のタグのみに基づいて算出される関連度が同じ値の二つのメッセージが存在する場合を例に挙げて説明する。本変形例に係る提供装置100の提供部150は、図7のステップS13で特定された閲覧コンテンツに、メタタグである優先タグが予め設定されているか否かを判別する。提供部150は、優先タグが予め設定されていると判別すると、当該優先タグに記載された単語である優先語を含む、又は、図5のメッセージボックステーブルにおいて当該優先タグと対応付けられた一方のメッセージである優先メッセージの関連度を、優先語を含まず、かつ、優先タグと対応付けられていないもう一方のメッセージである非優先メッセージの関連度よりも高い値に算出する。
提供部150は、優先メッセージの関連度を、非優先メッセージの関連度よりも高い値に算出するために、例えば、実施例1で説明した優先メッセージの関連度に対して所定の加算値を加算する。一例として、図5のメッセージボックステーブルに保存されたアメリカ往復航空券の予約受け付けを通知するメッセージが優先メッセージであり、アメリカ往復航空券の予約キャンセルを通知するメッセージが非優先メッセージである場合を挙げて説明する。この場合、提供部150は、非優先メッセージの関連度を、実施例1の関連度「0.33」に対して、例えば、所定の加算値「0.00」を加算した値「0.33」と算出する。これに対し、提供部150は、優先メッセージの関連度を、実施例1の関連度「0.33」に対して、非優先メッセージの加算値「0.00」よりも大きい所定の加算値「1.00」を加算した値「1.33」と算出する。
また、提供部150は、所定の加算値として、優先メッセージと対応付けられた優先タグの数又は優先メッセージに記載された優先語の数が多い程、大きな値を用いても良い。例えば、優先メッセージと対応付けられた優先タグの数又は優先メッセージに記載された優先語の数が「2」であれば、提供部150は、例えば、基本加算値「1.00」を優先タグ又は優先語の数「2」で乗算した値「2.00」を、所定の加算値として用いても良い。
提供部150は、関連度に基づいて重要度を算出し、重要度が高いメッセージ程、表示順位を高く変更する。このため、提供部150は、優先メッセージの関連度を非優先メッセージの関連度よりも高く算出するので、優先メッセージの表示順位を、非優先メッセージの表示順位よりも優先された順位に変更する。
<実施例1の変形例6>
提供装置100は、提供システム1の管理者又は運用者による、図2の入力装置108に対する操作に従って、例えば、優先語の対義語といった、コンテンツの説明として不適切な単語が記載された劣後タグをコンテンツに付与しても良い。
提供装置100は、図7のステップS13で特定された閲覧コンテンツに劣後タグが予め設定されていれば、当該劣後タグに記載された単語である劣後語を含む、又は、図5のメッセージボックステーブルにおいて当該劣後タグと対応付けられたメッセージである劣後メッセージの関連度を、劣後語を含まず、かつ、劣後タグと対応付けられていないメッセージである非劣後メッセージの関連度よりも低い値に算出しても良い。
<実施例1の変形例7>
実施例1では、提供装置100は、旅行に関連する商品等が記載されたコンテンツや当該商品等に関連したメッセージを提供すると説明したが、これに限定される訳ではない。提供装置100が提供するコンテンツ及びメッセージは、どのような内容のものでも良く、商品又はサービスと無関係なものでも良い。
<実施例1の変形例8>
実施例1では、提供装置100は、コンテンツリクエストを送信した端末装置210又は220を使用するユーザを宛先とするメッセージの内で、表示順位又は重要度が所定条件を満たすメッセージを抽出すると説明した。しかし、これに限定される訳ではなく、提供装置100は、関連度が所定値以上であるという所定条件を満たすメッセージを抽出しても良い。また、提供装置100は、関連度が所定条件を満たす既読メッセージのみ、未読メッセージのみ、又は、未読メッセージと既読メッセージとの双方、を抽出しても良い。さらに、提供装置100は、提供システム1のユーザ全員を宛先としているメッセージや、宛先が指定されていないメッセージを抽出しても良い。提供装置100が保管し、抽出し、送信するメッセージは、一般的な電子メールであっても良い。
<実施例1の変形例9>
実施例1では、提供装置100は、表示順位又は重要度が所定条件を満たす複数のメッセージについて、それぞれの件名を一度に一覧表示させるように編集したコンテンツを提供すると説明したが、これに限定される訳ではない。
提供部150は、例えば、表示順位が「1」位から「150」位までの「150」件のメッセージを抽出した場合に、「150」件のメッセージの件名を三度に分けて表示するように編集したコンテンツを提供しても良い。三度に分けた表示は、例えば、表示順位が「1」位から「50」位までのメッセージの件名の一覧表示、表示順位が「51」位から「100」位までのメッセージの件名の一覧表示、及び、表示順位が「101」位から「150」位までのメッセージの件名の一覧表示であって良い。
三度に分けた表示のために、本変形例に係る提供部150は、例えば、表示順位が「1」位から「50」位までのメッセージを第1グループへ分類し、表示順位が「51」位から「100」位までのメッセージを第2グループへ分類し、表示順位が「101」位から「150」位までのメッセージを第3グループへ分類する。
提供部150は、第1グループについて件名の一覧表示を行うため、図7のステップS19において、オブジェクトOBが第1グループに分類された未読メッセージの件数を表示し、かつ、オブジェクト選択操作が行われた場合に第1グループに属する「50」件のメッセージの件名を一覧表示するように、図9のコンテンツを編集する。
また、提供部150は、図11のステップS23の実行後に、第1グループに分類された未読メッセージの件数を計数し、未読メッセージの件数が「0」件となったか否かを判別する。提供部150は、未読メッセージの件数が「0」件となったと判別すると、第2グループに分類された未読メッセージの件数と、第2グループに分類された「50」件のメッセージの件名が保存されたリストと、を、端末装置210又は220を宛先として通信回路105に出力する。端末装置210又は220は、件数とリストとを受信すると、図10のオブジェクトOBに表示させる件数を、受信した件数で更新すると共に、リスト表示させる件名を、受信したリストに含まれる件名に更新する。
同様に、提供部150は、図11のステップS23の実行後に、第2グループの未読メッセージの件数が「0」件となったと判別すると、第3グループの未読メッセージの件数と、第3グループのメッセージの件名が保存されたリストと、を出力する。
尚、提供部150は、「150」件のメッセージを第1グループから第3グループに分類することで、未読メッセージが分類されていないグループが生成された場合には、未読メッセージが分類されていないグループについて、件名の一覧表示を省略しても良い。
<実施例1の変形例10>
実施例1では、提供装置100は、図7のステップS15において、ある未読メッセージと既読メッセージとに同じ関連度が算出された場合、当該未読メッセージの重要度及び表示順位を、当該既読メッセージの重要度及び表示順位よりも高くすると説明した。しかし、これに限定される訳ではない。
提供装置100は、商品の配送状況又はサービスの提供日時について知らせるメッセージである通知メッセージと、配送状況及び提供日時のいずれも知らせない非通知メッセージと、に同じ関連度が算出された場合、当該配送状況又は当該提供日時の確認に用いられるコンテンツがユーザの閲覧するコンテンツとして特定されると、当該通知メッセージの重要度及び表示順位を、非通知メッセージの重要度及び表示順位よりも高くしても良い。
このために、本変形例に係る提供装置100の情報記憶部190は、図8のコンテンツテーブルにおいて、商品等の配送状況又は提供日時の確認に用いられる確認用コンテンツのURLと、当該確認コンテンツで配送状況又は提供日時が確認される商品等の名称と、を予め対応付けて記憶している。
本変形例に係る提供装置100の特定部140は、図7のステップS13で、特定された閲覧コンテンツが確認用コンテンツであるか否かを判別するため、当該コンテンツのURLと対応付けて情報記憶部190が記憶している商品等の名称を検索する。情報記憶部190は、確認用コンテンツのURLに対して、配送状況又は提供日時が確認される商品等の名称を対応付けて記憶しているためである。
特定部140は、検索により商品等の名称を取得できる場合、閲覧コンテンツが確認用コンテンツであると判別し、商品等の名称を取得できない場合、閲覧コンテンツが確認用コンテンツでないと判別する。
本変形例に係る提供装置100の提供部150は、閲覧コンテンツが確認用コンテンツであると判別されると、重要度の算出対象とするメッセージが通知メッセージであるか否かを、例えば、図5のメッセージボックステーブルにおいて、メッセージに対応付けられた1又は複数のタグに基づいて判別する。提供部150は、例えば、「配送状況」又は「提供日時」というタグと、「確認」というタグと、の双方がメッセージに対応付けられている場合に、当該メッセージが通知メッセージであると判別する。
次に、提供部150は、重要度の算出対象とするメッセージが通知メッセージであると判別すると、通知メッセージにより配送状況又は提供日時が通知される商品等を、通知メッセージに対応付けられた1又は複数のタグに基づいて特定する。提供部150は、例えば、通知メッセージに対応付けられた1又は複数のタグの内で、情報記憶部190が記憶する商品等の名称を表わすタグを特定し、当該タグで表される名称の商品等を、当該通知メッセージによって配送状況又は提供日時が通知される商品等であると特定する。
その後、提供部150は、当該通知メッセージで配送状況又は提供日時が通知される商品等の名称と、閲覧コンテンツで配送状況又は提供日時が確認される商品等の名称と、が一致するか否かを判別する。
提供部150は、商品等の名称が一致しないと判別する場合、重要度の算出対象とするメッセージが通知メッセージでないと判別する場合、及び、閲覧コンテンツが確認用コンテンツでないと判別する場合、図7のステップS14で算出された関連度に対して、商品等の名称が一致すると判別する場合に用いられる加算値よりも小さい、例えば、値「0.00」の加算値を加算することで、重要度を算出する。
これに対して、提供部150は、商品等の名称が一致すると判別する場合、関連度に対して、商品等の名称が一致しないと判断した場合等に用いる加算値「0.00」よりも大きい、例えば、値「1.00」の加算値を加算することで、重要度を算出する。
その後、提供部150は、図7のステップS16で、重要度がより高く算出されたメッセージ程、表示順位をより高く変更する。
これらの構成によれば、本変形例に係る提供装置100は、商品等の配送状況又は提供日時の確認に用いられるコンテンツがユーザに閲覧されている場合に、当該商品等の配送状況又は提供日時について知らせる通知メッセージの表示順位を優先された表示順位に変更する。このため、表示の必要があるメッセージの数が増えても、配送状況又は提供日時を確認するユーザにとって重要な通知メッセージを読み飛ばす可能性の上昇を抑制できる。
<実施例1の変形例11>
端末装置210及び220は、スマートフォンであると説明したが、これに限定される訳ではなく、例えば、デスクトップ型、ノートブック型、又は、タブレット型のパーソナルコンピュータであっても良い。
<実施例2>
本実施例に係る端末210又は220は、ユーザに閲覧されているコンテンツを提供装置100に報告し、提供装置100は、報告されたコンテンツに応じて、メッセージの表示順位を変更し、当該表示順位が変更されたメッセージを端末210又は220に提供する。以下、実施例1と同様の構成については、実施例1で用いた符号と同一の符号を用いて説明するが、本実施例と実施例1との相違について主に説明する。
本実施例に係る提供システム1は、図16に示すように、実施例1で説明した通信網10、提供装置100、並びに、端末装置210及び220を備える。本実施例に係る提供装置100、並びに、端末装置210及び220は、通信網10を介して、提供システム1の外部に設置された外部サーバ900と通信可能に接続されている。
外部サーバ900は、図2のCPU101、ROM102、RAM103、ハードディスク104、及び、通信回路105と同様の構成及び機能を有する、不図示のCPU、ROM、RAM、ハードディスク、及び、通信回路を備える。外部サーバ900は、商品等の販売に用いられるコンテンツをハードディスクに記憶しており、通信回路で端末装置210又は220からコンテンツリクエストを受信すると、コンテンツリクエストに応じてコンテンツを端末装置210又は220へ返信する。
端末装置210のユーザが、外部サーバ900が提供するコンテンツを閲覧するために、図12に示した端末装置210の入力装置218を操作すると、入力装置218は、操作に応じた信号を入力する。端末装置210のCPU211は、当該操作に応じた信号を入力されると、図17に示すようなコンテンツ被提供処理の実行を開始する。
コンテンツ被提供処理の実行を開始すると、端末装置210のCPU211は、図18に示すようなウェブブラウザを起動すると共に、ウェブブラウザに追加されたプラグインプログラムを実行する。これにより、ウェブブラウザの画面内に設定されたツールバー領域TBに、メッセージの確認に用いられるオブジェクトOBを配置する。
次に、端末装置210のCPU211は、図13のステップS31、S33、及び、S34と同様の処理を実行する(ステップS51からS53)。これにより、端末装置210のCPU211は、外部サーバ900を宛先としてコンテンツリクエストを出力した後に、外部サーバ900からコンテンツを取得する。また、CPU211は、取得したコンテンツのURLを、図18のツールバー領域TBに配置されるアドレスバーABに表示させると共に、ウェブブラウザの画面内に設定されたコンテンツ領域ACに当該コンテンツを表示させる。CPU211が、図13のユーザ被認証処理(ステップS32)を実行しないのは、外部サーバ900が、ユーザ認証を要求することなく、コンテンツリクエストに応答するためである。
次に、端末装置210のCPU211は、表示されたコンテンツに関連したメッセージの提供を受けるため、表示されたコンテンツを提供装置100へ報告するプラグインプログラムを実行する、図19のプラグインプログラム実行処理を行った後に(ステップS54)、コンテンツ被提供処理の実行を終了する。
プラグインプログラム実行処理を開始すると、CPU211は、図13のステップS32と同様の処理を実行することで、提供装置100によるユーザ認証を受けるユーザ被認証処理を実行する(ステップS61)。
その後、CPU211は、コンテンツ領域ACに表示させたコンテンツのURLを、例えば、アドレスバーABから取得し、取得されたURLを含んだ、表示中のコンテンツの報告を、提供装置100を宛先としてデータ通信回路215aに出力する(ステップS62)。
端末装置210のデータ通信回路215aは、出力された報告を提供装置100に送信した後、報告されたコンテンツに基づいて抽出されたメッセージの件名が保存されたリストと、抽出された未読メッセージの件数と、を提供装置100から受信する。その後、端末装置210のCPU211は、当該リストと件数とをデータ通信回路215aから取得する(ステップS63)。
その後、端末装置210のCPU211は、表示装置217を制御して、図18に示すように、ツールバー領域TBのオブジェクトOBに未読メッセージの件数を表示させた後に(ステップS64)、プラグインプログラム実行処理を終了する。
図19のステップS62で出力された報告を、図2に示した提供装置100の通信回路105が端末装置210から受信すると、提供装置100のCPU101は、報告に応答する、図20に示すような報告応答処理の実行を開始する。
報告応答処理が開始されると、図7のステップS11と同様のユーザ認証処理が実行される(ステップS71)。
次に、図4の特定部140は、通信回路105から報告を取得し(ステップS72)、取得された報告に含まれるURLに在るコンテンツを、端末装置210のユーザが閲覧する閲覧コンテンツとして特定する(ステップS73)。
その後、図7のステップS14からS18と同様の処理が実行されることで(ステップS74からS78)、報告されたコンテンツに基づいてメッセージが複数抽出され、抽出された複数のメッセージの内で未読のメッセージの件数が計数される。
次に、図4の提供部150は、抽出された複数のメッセージの件名が保存されたリストを生成し、生成したリストと、計数された未読メッセージの件数と、を、端末装置210を宛先として、通信回路105に出力する(ステップS79)。その後、提供部150は、通信回路105がリストと未読メッセージの件数とを、端末装置210に送信してから、報告応答処理の実行を終了する。
端末装置210の画面に表示された未読メッセージの件数を視認したユーザの操作に従って、端末装置210の入力装置218が信号を入力すると、CPU211は、図14に示したメッセージ被提供処理を実行する。これにより、端末装置210は、メッセージリクエストを提供装置100へ送信した後に、提供装置100から受信したメッセージを表示する。
図2に示した提供装置100の通信回路105がメッセージリクエストを受信すると、提供装置100のCPU101は、図11に示したメッセージ提供処理を実行する。これにより、提供装置100は、メッセージリクエストに応答してメッセージを返信する。
これらの構成によれば、端末装置210又は220は、図19のステップS62で、図18のコンテンツ領域ACに表示されているコンテンツの報告を出力し、提供装置100の特定部140は、報告されたコンテンツを閲覧コンテンツとして特定する。このため、コンテンツ領域ACに表示されているコンテンツが、提供装置100によって提供されるコンテンツでなくとも、提供装置100は、閲覧コンテンツを特定できる。
<実施例3>
実施例1の提供装置100は、図7のステップS13で、閲覧コンテンツであると特定された「1」つのコンテンツと、メッセージと、がどの程度関連しているかを表わす関連度(以下、単数関連度という)を算出すると説明した。
しかし、本実施例に係る提供装置100は、「複数」の時点でユーザが閲覧するコンテンツと特定された「複数」の閲覧コンテンツと、メッセージと、がどの程度関連しているかを表わす関連度(以下、複数関連度という)を算出する。以下、実施例1と同様の構成については、実施例1で用いた符号と同一の符号を用いて説明するが、本実施例と実施例1との相違について主に説明する。
複数の閲覧コンテンツを記憶するため、本実施例に係る提供装置100の情報記憶部190は、図21に示すような閲覧履歴テーブルを記憶している。閲覧履歴テーブルには、ユーザのユーザIDと、特定された閲覧コンテンツのURLと、当該コンテンツの特定日時と、が対応付けられたデータが複数保存される。
本実施例に係る提供装置100は、図21の閲覧履歴テーブルを用いて複数関連度を算出し、複数関連度に基づいて抽出されたメッセージの件数を通知するコンテンツを提供する、図22に示すようなコンテンツ提供処理を実行する。
提供装置100は、コンテンツ提供処理の実行を開始すると、実施例1で説明した図7のステップS11からステップS13と同様の処理を実行する(ステップS81からS83)。これにより、提供装置100は、端末装置210又は220を使用するユーザを認証した後に、端末装置210又は220からコンテンツリクエストを取得し、コンテンツリクエストで指定されたコンテンツを閲覧コンテンツと特定する。
その後、提供装置100の特定部140は、例えば、OS(Operating System)からシステム日時を取得し、取得されたシステム日時を、コンテンツの特定日時とする。次に、特定部140は、ステップS81で認証されたユーザのユーザIDと、ステップS83で特定された閲覧コンテンツのURLと、当該コンテンツの特定日時と、が対応付けられたデータを生成し、生成されたデータを、図21の閲覧履歴テーブルに保存する(ステップS84)。
その後、提供装置100の提供部150は、閲覧履歴テーブルから、認証されたユーザのユーザIDに対応付けられた閲覧コンテンツのURLを、当該URLに対応付けられた特定日時が新しい順に所定個取得する(ステップS85)。所定回前から今回までに特定された閲覧コンテンツを特定するためである。
次に、提供部150は、図5のメッセージボックステーブルに保管された複数のメッセージのそれぞれについて、ステップS85で取得された複数のURLに在る複数のコンテンツとの複数関連度を算出する、図23に示すような複数関連度算出処理を実行する(ステップS86)。
複数関連度算出処理を開始すると、提供部150は、図5のメッセージボックステーブルから、認証されたユーザのユーザIDに対応付けられた複数のメッセージを特定する。認証されたユーザ宛てのメッセージを特定するためである。
次に、提供部150は、特定された複数のメッセ―ジの内で、未注目のメッセージが存在するか否か判別する(ステップS101)。提供部150は、未注目のメッセージが存在すると判別すると(ステップS101;Yes)、未注目のメッセージの一つに注目して、注目メッセージとする(ステップS102)。
その後、提供部150は、注目メッセージの複数関連度を値「0.00」として初期化する(ステップS103)。
次に、提供部150は、図22のステップS85で取得された所定個のURLにそれぞれ存在する所定個の閲覧コンテンツの内で、未注目の閲覧コンテンツが存在するか否か判別する(ステップS104)。提供部150は、未注目の閲覧コンテンツが存在すると判別すると(ステップS104;Yes)、未注目の閲覧コンテンツの一つに注目して注目閲覧コンテンツとする(ステップS105)。
次に、提供部150は、注目閲覧コンテンツのタグと、注目メッセージのタグと、を、図8のコンテンツテーブルと、図5のメッセージボックステーブルと、からそれぞれ検索し、実施例1で説明した方法で単数関連度を算出する(ステップS106)。
その後、提供部150は、注目閲覧コンテンツの特定日時からシステム日時までの経過時間を算出する(ステップS107)。その後、提供部150は、例えば、経過時間の逆数のような、経過時間が長くなる程、小さい値となる重み付け係数を算出する(ステップS108)。注目閲覧コンテンツが閲覧された日時から時間が経過する程、閲覧コンテンツに記載された内容は、ユーザにとって重要でなくなることが多いためである。
次に、提供部150は、算出された重み付け係数を用いて、ステップS106で算出された単数関連度を重み付けし、注目メッセージの複数関連度に対して重み付けされた関連度を加算する(ステップS109)。その後、提供部150は、ステップS104に戻って上記処理を繰り返す。
ステップS104において、提供部150は、未注目の閲覧コンテンツが存在しないと判別すると(ステップS104;No)、ステップS101に戻って上記処理を繰り返す。
ステップS101において、提供部150は、未注目のメッセージが存在しないと判別すると(ステップS101;No)、複数関連度算出処理の実行を終了する。
図22のステップS86で複数関連度算出処理を実行した後に、提供部150は、図5のメッセージボックステーブルに保管された複数のメッセージそれぞれについて、複数関連度に基づいて、実施例1で説明した方法で重要度を算出する(ステップS87)。その後、提供部150は、図7のステップS16からステップS19と同様の処理を実行する(ステップS88からステップS91)。これにより、提供装置100は、重要度に基づいてメッセージの表示順位を変更し、表示順位に基づいてメッセージを抽出し、抽出されたメッセージの件数が記載されたコンテンツを、端末装置210又は220に送信する。その後、提供部150は、コンテンツ提供処理の実行を終了する。
これらの構成によれば、メッセージと、過去にユーザが閲覧した所定個のコンテンツと、の複数関連度を算出し、算出された複数関連度に基づいてメッセージの表示順位を変更する。通常、過去にユーザが閲覧したコンテンツであってもユーザにとって重要な事項を含むため、メッセージと、直近にユーザが閲覧した一つのコンテンツと、の単数関連度に基づいて表示順位を決定する実施例1よりも正確に、ユーザにとって重要なメッセージの表示順位を変更できる。
<実施例3の変形例1>
実施例3では、提供装置100の提供部150は、メッセージが既読であるか未読であるかに基づいて重要度を算出すると説明した。
しかし、これに限定される訳ではなく、提供部150は、例えば、クーポン券のような、商品等の特典について知らせるメッセージ(以下、特典通知メッセージという)の重要度を、当該特典通知メッセージの送信元のコンテンツが閲覧された日時に基づいて算出しても良い。
このため、本変形例に係る提供部150は、図22に示したコンテンツ提供処理のステップS87に代えて、図24に示すような重要度算出処理を実行する。
重要度算出処理を開始すると、提供部150は、図5のメッセージボックステーブルにおいて、図22のステップS81で認証されたユーザのユーザIDと対応付けられた1又は複数のメッセージを特定する。認証されたユーザ宛ての1又は複数のメッセージを特定するためである。
次に、提供部150は、特定された1又は複数のメッセージ内で、未注目のメッセージが存在するか否かを判別する(ステップS111)。提供部150は、未注目のメッセージが存在すると判別すると(ステップS111;Yes)、未注目のメッセージの一つに注目し、注目メッセージとする(ステップS112)。
次に、提供部150は、注目メッセージの重要度を算出するために、図22のステップS86で算出された複数関連度に加算される加算値を、例えば、値「0.00」で初期化する(ステップS113)。
次に、提供部150は、注目メッセージが特典について知らせる特典通知メッセージであるか否かを判別する(ステップS114)。提供部150は、例えば、図5のメッセージボックステーブルにおいて、注目メッセージの件名と本文と対応付けられた1又は複数のタグのいずれかが、「特典」、「クーポン」、「割引」、及び、「値引」といった特典を表わす単語のいずれかである場合に、当該注目メッセージが特典通知メッセージであると判別する。
提供部150は、注目メッセージが特典通知メッセージであると判別すると(ステップS114;Yes)、注目メッセージの送信元を特定するために、注目メッセージの送信元が用いるドメイン名とサブドメイン名との組み合わせを、例えば、注目メッセージの送信に用いられた電子メールアドレスに基づいて特定する(ステップS115)。提供部150は、ドメイン名とサブドメイン名との組み合わせの代わりに、ドメイン名のみ、サブドメイン名のみ、及び、グローバルIP(Internet Protocol)アドレスのいずれかを用いても良い。
その後、提供部150は、図21の閲覧履歴テーブルにおいて、図22のステップS81で認証されたユーザのユーザIDと対応付けられたURLであって、ステップS115で特定された送信元のドメイン名とサブドメイン名との組み合わせを含むURLを1又は複数特定し、特定された1又は複数のURLとそれぞれ対応付けられた日時を特定する。認証されたユーザが、特典通知メッセージの送信元のコンテンツを閲覧した日時を特定するためである(ステップS116)。
その後、提供部150は、特定された日時の内で、最新の日時を特定し、最新の日時からシステム日時までの経過時間を算出する(ステップS117)。その後、提供部150は、経過時間が短い程、大きい値となる重み付け係数を算出し(ステップS118)、例えば、値「1.00」である基本加算値を、算出された重み付け係数で重み付けする。その後、提供部150は、注目メッセージの加算値を、重み付けされた基本加算値とする(ステップS119)。ユーザがコンテンツを閲覧した日時がより新しい程、通常、ユーザは、当該コンテンツに掲載された商品等に対する興味をより失っていないため、当該コンテンツの公表主体が送信したメッセージ自体及び当該メッセージで知らされる特典は、ユーザにとってより重要だからである。
ステップS119を実行した後に、提供部150は、図22のステップS86で算出された複数関連度に、経過時間に基づいて算出された加算値を加算することで、注目メッセージの重要度を算出する(ステップS120)。その後、提供部150は、ステップS111に戻り上記処理を繰り返す。
ステップS114において、注目メッセージが特典通知メッセージでなく、特典を通知しないメッセージ(以下、特典非通知メッセージ)であると判別した場合(ステップS114;No)も同様に、提供部150は、ステップS120を実行する。この場合、提供部150は、複数関連度に対してステップS113で初期化された値「0」の加算値を加算することで、注目メッセージの重要度を算出する。その後、提供部150は、ステップS111に戻り上記処理を繰り返す。
これにより、提供部150は、特典通知メッセージの複数関連度と、特典非通知メッセージの複数関連度と、が同じ値の場合に、特典通知メッセージの重要度を、特典非通知メッセージの重要度よりも大きい値とする。特典非通知メッセージの加算値は、常に、初期値「0.00」だからである。また、提供部150は、特典通知メッセージの送信元のコンテンツをユーザが閲覧した日時が新しい程、特典通知メッセージの重要度を大きく算出する。
ステップS111において、提供部150は、未注目のメッセージが存在しないと判別すると(ステップS111;No)、重要度算出処理の実行を終了する。
その後、提供部150は、図22のステップS88で、重要度がより高く算出されたメッセージ程、表示順位をより高く変更する。
これらの構成によれば、提供部150は、特典通知メッセージの重要度を、当該特典通知メッセージの送信元のコンテンツが閲覧された日時が新しい程、大きい値とするため、ユーザにとってより重要な特典を確実に通知できる。
<実施例3の変形例2>
実施例3では、提供装置100の提供部150は、メッセージが既読であるか未読であるかに基づいて重要度を算出すると説明した。
しかし、これに限定される訳ではなく、提供部150は、商品等の特典について知らせる特典通知メッセージの重要度を、当該商品等のジャンルと同一又は類似のジャンルに属する商品等を掲載したコンテンツをユーザが閲覧した回数がより多い程、より高く算出しても良い。
コンテンツに掲載された商品等を特定するため、本変形例に係る情報記憶装置190は、図25に示すようなコンテンツテーブルを記憶している。図25のコンテンツテーブルには、コンテンツのURLと、当該コンテンツのタグと、当該コンテンツに掲載された商品等の名称と、当該商品等が属するジャンルを識別するジャンルIDと、が対応付けられた複数のデータが保存されている。
また、商品等のジャンルを特定するため、提供装置100の情報記憶装置190は、図26に示すような商品ジャンルテーブルを記憶している。商品ジャンルテーブルには、ジャンルIDと、当該ジャンルIDで識別されるジャンルに属する1又は複数の商品等の名称と、が対応付けられた複数のデータが保存されている。
さらに、あるジャンルに類似したジャンルを特定するため、情報記憶装置190は、図27に示すような類似ジャンルテーブルを記憶している。類似ジャンルテーブルには、ジャンルIDと、当該ジャンルIDで識別されるジャンルと類似した1又は複数のジャンルのジャンルIDと、が対応付けられた複数のデータが保存されている。あるジャンルに類似したジャンルには、例えば、当該あるジャンルに属する商品等と同時に又は関連して使用される商品等が属するジャンルが含まれる。例えば、「釣り旅行」が属するジャンルに類似したジャンルには、「釣り旅行」で使用される「釣竿」が属するジャンルが含まれる。
提供装置100は、実施例1と同様に、予め定められたタイミングで、不図示のタグ抽出処理を実行する。提供装置100は、タグ抽出処理の実行を開始すると、図25のコンテンツテーブルが有する未注目のレコードの1つに注目し、注目したレコードに保存されたURLにあるコンテンツを注目コンテンツとし、注目コンテンツのタグを1又は複数抽出する。
次に、提供装置100は、抽出された1又は複数のタグの内で、未注目のタグの一つに注目し、注目したタグが商品等の名称を表わすか否かを判別するために、注目したタグで表される単語が、図26の商品ジャンルテーブルに保存されているか否かを判別する。提供装置100は、注目したタグで表される単語が商品ジャンルテーブルに保存されていないと判別すると、未注目のタグが無くなるまで、未注目のタグの一つに注目する処理から上記処理を繰り返す。
提供装置100は、注目したタグで表される単語が商品ジャンルテーブルに保存されていると判別すると、注目したタグで表される単語が商品等の名称であり、当該名称の商品等が注目コンテンツに掲載されていると判別する。また、提供装置100は、掲載された商品等のジャンルを特定するため、図26の商品ジャンルテーブルにおいて、当該名称を含む1又は複数の名称と対応付けられたジャンルIDを特定する。
その後、提供装置100は、図25のコンテンツテーブルに、注目コンテンツのURLと、注目コンテンツのタグと、注目コンテンツに掲載された商品等の名称と、当該商品等が属するジャンルのジャンルIDと、を対応付けたデータを保存する。その後、提供装置100は、図25のコンテンツテーブルが有する未注目のレコードが無くなるまで、未注目のレコードの1つに注目する処理から上記処理を繰り返した後に、タグ抽出処理の実行を終了する。
本変形例に係る提供部150は、特典通知メッセージの重要度をコンテンツの閲覧回数に基づいて算出するために、図22のステップS87に代えて、図28に示すような重要度算出処理を実行する。
重要度算出処理を開始すると、提供部150は、図24のステップS111からS114と同様の処理を実行する(ステップS121からS124)。これにより、提供部150は、図5のメッセージボックステーブルが有する未注目のメッセージの一つに注目して注目メッセージとし、注目メッセージの加算値を値「0.00」で初期化し、注目メッセージが特典通知メッセージであるか否かを判別する。
提供部150は、注目メッセージが特典通知メッセージであると判別すると(ステップS124;Yes)、注目メッセージのタグに基づいて、注目メッセージに記載された商品等の名称及び当該商品等の属するジャンルを特定する(ステップS125)。注目メッセージに記載された商品等の名称及び当該商品等の属するジャンルの特定方法は、コンテンツに掲載された商品等の名称及び当該商品等の属するジャンルの特定方法と同様である。
次に、提供部150は、特定されたジャンルのジャンルIDと、図27の類似ジャンルテーブルにおいて対応付けられた1又は複数のジャンルIDを取得する(ステップS126)。注目メッセージに記載された商品等が属するジャンルと類似した1又は複数のジャンルを特定するためである。
その後、提供部150は、図25のコンテンツテーブルにおいて、注目メッセージに記載された商品等が属するジャンルのジャンルID、及び、ステップS126で特定された類似のジャンルのジャンルIDのいずれかと対応付けられたコンテンツのURLを1又は複数特定する。注目メッセージに記載された商品等のジャンルと同一又は類似のジャンルに属する商品等を掲載したコンテンツを特定するためである。
次に、提供部150は、図21の閲覧履歴テーブルから、特定された1又は複数のURLのいずれかと、図22のステップS81で認証されたユーザのユーザIDと、が保存されているレコードを1又は複数取得し、取得されたレコードの件数を計数する。注目メッセージに記載された商品等のジャンルと同一又は類似のジャンルに属する商品等を掲載したコンテンツが、認証されたユーザによって閲覧された回数を特定するためである(図28のステップS127)。
その後、提供部150は、閲覧された回数が多い程、大きい値となる重み付け係数を算出し(ステップS128)、例えば、値「1.00」である基本加算値を、算出された重み付け係数で重み付けする。その後、提供部150は、加算値を、重み付けされた基本加算値とする(ステップS129)。ユーザがあるコンテンツを閲覧した回数が多い程、通常、ユーザは、当該あるコンテンツに掲載された商品等や当該商品等のジャンルと同一又は類似のジャンルに属する商品等に対して強い興味を持っている。このため、ユーザが興味を有する商品等の特典について知らせる特典通知メッセージはユーザにとって重要だからである。
ステップS129を実行した後に、提供部150は、図22のステップS86で算出された複数関連度に、閲覧回数に基づいて算出された加算値を加算することで、注目メッセージの重要度を算出する(ステップS130)。その後、提供部150は、ステップS121に戻り上記処理を繰り返す。
ステップS124において、注目メッセージが特典非通知メッセージであると判別した場合(ステップS124;No)も同様に、提供部150は、ステップS130を実行する。この場合、提供部150は、複数関連度に対してステップS123で初期化された値「0」の加算値を加算することで、注目メッセージの重要度を算出する。その後、提供部150は、ステップS121に戻り上記処理を繰り返す。
これにより、提供部150は、特典通知メッセージの複数関連度と、特典非通知メッセージの複数関連度と、が同じ値の場合に、特典通知メッセージの重要度を、特典非通知メッセージの重要度よりも大きい値とする。特典非通知メッセージの加算値は、常に、初期値「0.00」だからである。また、提供部150は、特典通知メッセージで特典が通知される商品等のジャンルと同一又は類似のジャンルに属する商品等が掲載されたコンテンツの閲覧回数が多い程、特典通知メッセージの重要度を大きく算出する。
ステップS121において、提供部150は、未注目のメッセージが存在しないと判別すると(ステップS121;No)、重要度算出処理の実行を終了する。
その後、提供部150は、図22のステップS88で、重要度がより高く算出されたメッセージ程、表示順位をより高く変更する。
これらの構成によれば、提供部150は、特典通知メッセージで特典が通知される商品等のジャンルと同一又は類似のジャンルに属する商品等が掲載されたコンテンツの閲覧回数が多い程、特典通知メッセージの重要度を大きい値とするため、ユーザにとってより重要な特典を確実に通知できる。
尚、提供部150は、特典通知メッセージで特典が通知される商品等のジャンルと同一又は類似のジャンルに属する商品等を掲載したコンテンツがユーザの閲覧するコンテンツとして、システム時刻の属する時間帯で特定された回数がより多い程、当該特典通知メッセージの重要度及び表示順位をより高くしても良い。システム時刻の属する時間帯は、例えば、システム時刻よりも30分前の時刻からシステム時刻よりも30分後の時刻までの時間帯であっても良い。ユーザにとって重要なメッセージは、例えば、仕事をしている日中の時間帯と、家族と過ごす就寝前の時間帯と、で相違するためである。
<実施例3の変形例3>
提供部150は、特典通知メッセージで特典が通知される商品等のジャンルと同一又は類似のジャンルに属する商品等が購入された回数がより多い程、当該特典通知メッセージの重要度をより高く算出しても良い。
このため、本実施例に係る提供装置100の情報記憶部190は、図29に示すような購入履歴テーブルを記憶している。購入履歴テーブルには、ユーザIDと、当該ユーザIDで識別されるユーザが商品等を購入するために用いたコンテンツのURLと、当該商品等の購入日時と、が対応付けられたデータが複数保存される。
本実施例に係る提供装置100の提供部150は、商品等の購入回数に基づいて重要度を算出するため、実施例3の変形例2において、図28を参照して説明した重要度算出処理を、図21の閲覧履歴テーブルに代えて、図29の購入履歴テーブルを用いて実行する。これにより、提供部150は、ステップS127からS130において、注目メッセージに記載された商品等のジャンルと同一又は類似のジャンルに属する商品等の購入回数を特定し、特定された回数が多い程、大きい値となるように重要度を算出する。
尚、提供部150は、商品等の特典について知らせるメッセージの重要度及び表示順位を、当該商品等のジャンルと同一又は類似のジャンルに属する商品等が、システム時刻の属する時間帯において購入された回数がより多い程、より高くしても良い。
<実施例3の変形例4>
実施例3では、提供装置100の提供部150は、メッセージが既読であるか未読であるかに基づいて重要度を算出すると説明したが、これに限定される訳ではない。
提供部150は、商品等を販売するイベントの開催について知らせるメッセージ(以下、イベント通知メッセージという)の宛先であるユーザが、当該イベントで当該商品等を購入した履歴があると、当該イベント以外のイベントの開催を通知するイベント通知メッセージ及びいかなるイベントも通知しないメッセージ(以下、イベント非通知メッセージという)の重要度よりも、当該イベント通知メッセージの重要度を高くしても良い。
このために、本変形例に係る提供装置100の情報記憶部190は、図30に示すような購入履歴テーブルを記憶している。購入履歴テーブルには、ユーザのユーザIDと、当該ユーザが参加したイベントの名称と、当該イベントで当該ユーザが購入した商品等の名称と、当該商品等の購入日時と、が対応付けられたデータが複数保存されている。
本変形例に係る提供部150は、イベントにおける購入履歴に基づいて重要度を算出するために、図22のステップS87に代えて、図31に示すような重要度算出処理を実行する。
重要度算出処理を開始すると、提供部150は、図24のステップS111からS113と同様の処理を実行する(ステップS131からS133)。これにより、提供部150は、図5のメッセージボックステーブルが有する未注目のメッセージの一つに注目して注目メッセージとし、注目メッセージの重要度の算出に用いられる加算値を値「0.00」で初期化する。
次に、提供部150は、注目メッセージがイベント通知メッセージであるか否かを判別する(ステップS134)。提供部150は、例えば、「イベント」及び「開催」という二つのタグが注目メッセージのタグに対応付けられている場合に、当該注目メッセージがイベント通知メッセージであると判別する。
提供部150は、注目メッセージが通知メッセージであると判別すると(ステップS134;Yes)、注目メッセージのタグに基づいて、注目メッセージによって開催が通知されるイベントの名称と、イベントで販売される商品等の名称と、を特定する(ステップS135)。
その後、提供部150は、図30の購入履歴テーブルにおいて、図22のステップS81で認証されたユーザのユーザIDと、ステップS135で特定されたイベントの名称及び商品等の名称と、が保存されたレコードを1又は複数特定し、特定したレコードの件数を計数する。その後、提供部150は、計数されたレコードの件数を、注目メッセージの宛先であるユーザが、注目メッセージで開催が通知されるイベントで販売される商品等を購入した回数として特定する(図31のステップS136)。
その後、提供部150は、ステップS136で特定された回数が所定回数以上であるか否かを判別する(ステップS137)。注目メッセージで開催が通知されるイベントで販売される商品等を、所定回数以上、反復して購入しているか否かに基づいて、注目メッセージの宛先とされるユーザが当該イベントに興味を有するか否かを判別するためである。
提供部150は、特定された回数が所定回数以上であると判別すると(ステップS137;Yes)、例えば、「YYYY/MM/DD hh:mm:ss」といった日時を表わす記載規則に基づいて、注目メッセージの件名及び本文に記載されたイベントの開催日時を特定する。次に、提供部150は、イベントの開催日時からシステム日時を減算することで、イベントの開催日時までの猶予時間を算出する(ステップS138)。
その後、提供部150は、猶予時間が短い程、大きい値となる重み付け係数を算出し(ステップS139)、例えば、値「1.00」である基本加算値を算出された重み付け係数で重み付けする。その後、提供部150は、注目メッセージの加算値を、重み付けされた基本加算値で更新する(ステップS140)。但し、イベントの開催日時が既に到来している場合、提供部150は、注目メッセージの加算値を値「0.00」とする。
ユーザがあるイベントで商品等の購入を繰り返している場合、そのユーザは、そのイベントの開催に、通常、興味を有する。また、イベントの開催日時よりも前に、当該イベントの開催を通知するメッセージを確認しなければ、ユーザは、当該イベントに参加できない。このため、イベントの開催日時が近づく程、ユーザにとってイベントの開催を通知するメッセージの重要性が高くなるからである。
ステップS140を実行した後に、提供部150は、図22のステップS86で算出された複数関連度に、猶予時間に基づいて算出された加算値を加算することで、注目メッセージの重要度を算出する(ステップS141)。その後、提供部150は、ステップS131に戻り上記処理を繰り返す。
ステップS134において、注目メッセージがイベント通知メッセージでないと判別した場合(ステップS134;No)、又は、ステップS137において、ユーザがイベントで商品等を購入した回数が所定回数よりも少ないと判別した場合(ステップS137;No)も同様に、提供部150は、ステップS141を実行する。この場合、提供部150は、複数関連度に対してステップS133で初期化された値「0」の加算値を加算することで、注目メッセージの重要度を算出する。その後、提供部150は、ステップS131に戻り上記処理を繰り返す。
これにより、提供部150は、ユーザが所定回数以上商品等を購入しているイベントの開催を知らせる、当該ユーザ宛てのイベント通知メッセージの複数関連度と、当該イベント通知以外のメッセージである他のメッセージの複数関連度と、が同じ値の場合に、当該特典通知メッセージの重要度を、他のメッセージの重要度よりも大きい値とする。他のメッセージの加算値は、常に、初期値「0.00」だからである。また、提供部150は、当該特典通知メッセージで通知されるイベントの開催日時が近づく程、当該特典通知メッセージの重要度を大きく算出する。尚、提供部150は、当該特典通知メッセージで通知されるイベントで商品等が購入された回数が多い程、当該特典通知メッセージの重要度を大きく算出しても良い。
ステップS131において、提供部150は、未注目のメッセージが存在しないと判別すると(ステップS131;No)、重要度算出処理の実行を終了する。
その後、提供部150は、図22のステップS88で、重要度がより高く算出されたメッセージ程、表示順位をより高く変更する。
これらの構成によれば、提供部150は、イベント通知メッセージで通知されるイベントの開催日時が近付く程、当該特典通知メッセージの重要度を大きい値とするため、ユーザにとって重要なイベントの開催をより確実に通知できる。
尚、イベント通知メッセージは、商品等を特集する特集コンテンツの配信について知らせるメッセージであっても良い。提供部150は、イベント通知メッセージの宛先であるユーザが当該特集コンテンツで当該商品等を所定回数以上購入した履歴がある場合、当該イベント通知メッセージの重要度及び表示順位を、履歴がない場合よりも高くして良い。ユーザがある特集コンテンツで商品等の購入を繰り返している場合、そのユーザは、その特集コンテンツの配信に、通常、興味を有するからである。また、提供部150は、イベント通知メッセージで通知される特集コンテンツの配信日時が近付く程、当該イベント通知メッセージの重要度を高く算出しても良い。特集コンテンツの配信日時よりも前に、当該特集コンテンツの配信を通知するメッセージを確認しなければ、ユーザは、当該特集コンテンツを視聴できないため、配信日時が近づく程、配信を通知するメッセージの重要性が高くなるからである。
このために、提供装置100の情報記憶部190は、図30の購入履歴テーブルにおいて、イベントの名称に代えて特集コンテンツのURL又は名称を記憶すれば良い。また、提供装置100の提供部150は、図31の重要度算出処理において、イベントの名称に代えて特集コンテンツのURL又は名称を用いれば良い。
<実施例3の変形例5>
実施例3では、提供装置100の提供部150は、図22のステップS87において、過去にユーザによって閲覧された複数の閲覧コンテンツとメッセージとがどの程度関連しているかを表わす複数関連度に基づいて重要度を算出すると説明したが、これに限定される訳ではない。
提供部150は、最新の閲覧コンテンツとメッセージとの単数関連度に基づいて重要度を算出した後に、当該メッセージに記載された商品等を販売するウェブサイトのコンテンツの閲覧日時がより新しい程、重要度をより高い値に変更しても良い。ユーザが直近に閲覧したコンテンツに含まれる事項は、通常、ユーザにとって重要な事項であるため、そのようなコンテンツにより関連したメッセージ程、ユーザにとってより重要だからである。また同様の理由から、ユーザがより直近に閲覧したウェブサイト程、ユーザにとってより重要な商品等を販売しているため、そのような商品等について記載されたメッセージは、ユーザにとってより重要だからである。
このために、本変形例に係る提供装置100の情報記憶部190は、図32に示すようなウェブサイトテーブルを記憶している。ウェブサイトテーブルには、ウェブサイトで用いられるドメイン名とサブドメイン名との組み合わせと、当該ウェブサイトで販売される1又は複数の商品等の名称と、が対応付けられたデータが予め複数保存されている。情報記憶部190は、ドメイン名とサブドメイン名との組み合わせの代わりに、ドメイン名のみ、サブドメイン名のみ、及び、グローバルIPアドレスのいずれかを記憶しても良い。
また、情報記憶部190は、図33に示すような複数のレコードが保存されたメッセージボックステーブルを記憶している。メッセージボックステーブルの各レコードには、メッセージの宛先とされるユーザのユーザIDと、当該メッセージのURL、件名、本文、タグ、単数関連度、及び、表示順位と、当該メッセージに記載された商品等の名称と、「未読」又は「既読」を表わすフラグと、が対応付けられたデータが保存される。
本変形例に係る提供装置100は、図33のメッセージボックステーブルにメッセージを保管するために、不図示の保管処理を実行する。
保管処理では、図4の生成部110は、ユーザの行動履歴に基づいて、例えば、「釣竿」や「釣り旅行」といった商品等の値下げを通知するメッセージを生成する。その後、保管部120は、釣竿の値下げを通知するメッセージの宛先とされるユーザのユーザID、生成したメッセージのURL、件名、本文、並びに、タグ「釣り」、「釣竿」、及び、「値下げ」と、当該メッセージに記載された商品等の名称「釣竿」と、「未読」を表わすフラグと、が対応付けられたデータを生成する。その後、保管部120は、生成されたデータを、図33のメッセージボックステーブルに保存する。同様に、保管部120は、釣り旅行の値下げを通知するメッセージの宛先とされるユーザのユーザID、生成したメッセージのURL、件名、本文、並びに、タグ「釣り」、「旅行」、及び、「値下げ」と、当該メッセージに記載された商品等の名称「釣り旅行」と、「未読」を表わすフラグと、が対応付けられたデータを生成する。その後、保管部120は、生成されたデータを、メッセージボックステーブルに保存する。
提供装置100は、図34に示すようなコンテンツ提供処理を実行する。コンテンツ提供処理を開始すると、提供装置100は、図22のステップS81からS85と同様の処理を実行する(ステップS151からS155)。これにより、新しい順に所定個の閲覧コンテンツが特定される。
その後、提供装置100の提供部150は、図33のメッセージボックステーブルに保管された複数のメッセージのそれぞれについて、実施例1で説明した方法により、最新の閲覧コンテンツとの単数関連度を、タグに基づいて算出する(ステップS156)。
ここで、説明を簡単にするため、最新の閲覧コンテンツが海釣りについて説明するウェブページであり、「海」及び「釣り」というタグが最新の閲覧コンテンツに付されている場合を例に挙げて、以下説明する。
提供装置100は、図33のメッセージボックステーブルに保管された釣竿の値下げを通知するメッセージについて、当該メッセージのタグ「釣り」、「釣竿」、及び、「値下げ」の内で、タグ「釣り」のみが最新の閲覧コンテンツのタグと一致すると判別する。このため、提供装置100は、一致したタグの数「1」を最新の閲覧コンテンツのタグの総数「2」で除算することで、単数関連度を「0.50」と算出する。同様に、釣り旅行の値下げを通知するメッセージについて、単数関連度を「0.50」と算出する。
その後、提供部150は、メッセージボックステーブルに保管された複数のメッセージのそれぞれについて、実施例1で説明した方法により、単数関連度に基づいて重要度を算出する(図34のステップS157)。釣竿の値下げを通知するメッセージ及び釣り旅行の値下げを通知するメッセージの双方とも未読メッセージであるため、提供部150は、未読メッセージに用いる加算値「1.00」を単数関連度「0.50」に加算することで、重要度を「1.50」と算出する。
その後、提供部150は、それぞれのメッセージに記載された商品等を販売するウェブサイトの閲覧日時に基づいて重要度を変更する、図35の重要度変更処理を実行する(ステップS158)。
重要度変更処理を開始すると、提供部150は、図23のステップS101及びS102と同様の処理を実行する(ステップS171及びS172)。これにより、提供部150は、図33のメッセージボックステーブルに保管された未注目のメッセージの一つを注目メッセージとする。
次に、提供部150は、図33のメッセージボックステーブルで、注目メッセージのURLと対応付けられた商品等の名称を特定する。注目メッセージに記載された商品等の名称を特定するためである(ステップS173)。
その後、提供部150は、図23のステップS104及びS105と同様の処理を実行する(図35のステップS174及びS175)。これにより、提供部150は、図34のステップS155で、図21の閲覧履歴テーブルから取得された所定個のURLに在る閲覧コンテンツの内で、未注目の閲覧コンテンツの一つを注目閲覧コンテンツとする。
その後、提供部150は、注目閲覧コンテンツのURLに基づいて、注目閲覧コンテンツで構成されるウェブサイトのドメインとサブドメインとの組み合わせを特定し、特定された組み合わせに基づいて当該ウェブサイトで販売される商品等群を特定する(図35のステップS177)。
例えば、提供部150は、図21の閲覧履歴テーブルに保存された注目閲覧コンテンツのURL「http://market.xxx.com/C011.html」から「market.xxx.com」を抽出し、図32のウェブサイトテーブルにおいて、抽出された「market.xxx.com」に対応付けられた複数の商品等の名称「釣竿」及び「釣針」を特定する。「market.xxx.com」を用いてコンテンツを公開するインターネットモールが販売する複数の商品等を特定するためである。同様に、例えば、提供部150は、閲覧コンテンツのURL「http://travel.xxx.com/C012.html」から「travel.xxx.com」を抽出し、「travel.xxx.com」を用いてコンテンツを公開する旅行サイトが販売する商品等「釣り旅行」を特定する。
その後、提供部150は、図35のステップS176で特定されたウェブサイトの商品等群に、ステップS173で特定された注目メッセージの商品等が含まれるか否かを判別する(ステップS177)。当該ウェブサイトで、注目メッセージに記載された商品等が販売されているか否かを判別するためである。
このとき、提供部150は、ウェブサイトの商品等群に注目メッセージの商品等が含まれないと判別すると(ステップS177;No)、ステップS174から上記処理を繰り返す。
これに対して、提供部150は、ウェブサイトの商品等群に注目メッセージの商品等が含まれると判別すると(ステップS177;Yes)、図21の閲覧履歴テーブルに保存された注目閲覧コンテンツの特定日時からシステム日時までの経過時間を算出する(ステップS178)。注目閲覧コンテンツが閲覧された日時からの経過時間を算出するためである。
その後、提供部150は、重要度を重み付ける係数であって、値「1.00」以上の重み付け係数を、経過時間が短い程、大きい値となるように算出する(ステップS179)。ユーザがより直近に閲覧したウェブサイト程、ユーザにとってより重要な商品等を販売しているためである。
その後、提供部150は、注目メッセージの重要度を重み付け係数で重み付けすることで、変更前よりも大きい値に変更した後に(ステップS180)、ステップS171から上記処理を繰り返す。
例えば、釣竿の値下げを通知するメッセージの重要度と、釣り旅行の値下げを通知するメッセージの重要度と、は、図34のステップS157で、それぞれ同じ値「1.50」と算出されている。しかし、図21の閲覧履歴テーブルに示すように、「market.xxx.com」を用いて「釣竿」を販売するインターネットモールのウェブサイトは、ユーザID「U001」で識別されるユーザによって2018年1月1日の12時に閲覧された。これに対して、「travel.xxx.com」を用いて「釣り旅行」を販売する旅行サイトは、同ユーザによって同日の1時に閲覧された。すなわち、「釣竿」を販売するインターネットモールの閲覧日時からの経過時間の方が、「釣り旅行」を販売する旅行サイトの閲覧日時からの経過時間よりも11時間短い。このため、釣竿の値下げを通知するメッセージの重要度の方が、釣り旅行の値下げを通知するメッセージの重要度よりも高い値に変更される。
図35のステップS174において、提供部150は、未注目の閲覧コンテンツが存在しないと判別すると(ステップS174;No)、上記ステップS171から上記処理を繰り返す。
ステップS171において、提供部150は、未注目のメッセージが存在しないと判別すると(ステップS171;No)、重要度変更処理の実行を終了する。
図34のステップS158で、重要度変更処理が実行された後に、提供部150は、それぞれのメッセージの重要度に基づいて表示順位を変更する(ステップS159)。このため、提供部150は、変更された重要度に基づいて、釣竿の値下げを通知するメッセージの表示順位を、釣り旅行の値下げを通知するメッセージの表示順位よりも高く変更する。
その後、提供部150は、図22のステップS89からS91と同様の処理を実行した後に(ステップS160からS162)、コンテンツ提供処理の実行を終了する。
実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5は、互いにそれぞれ組み合わせることができる。実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかに係る機能を実現するための構成を備えた提供装置100として提供できることはもとより、複数の装置で構成されるシステムであって、実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかに係る機能を実現するための構成をシステム全体として備えたシステムとして提供することもできる。
また、プログラムの適用により、既存の提供装置100を実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかに係る提供装置100として機能させることもできる。すなわち、実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかで例示した提供装置100による各機能構成を実現させるためのプログラムを、既存の提供装置を制御するコンピュータ(CPUなど)が実行できるように適用することで、実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかに係る提供装置100として機能させることができる。
このようなプログラムの配布方法は任意であり、例えば、メモリカード、CD−ROM(Compact Disc Read Only Memory)、又はDVD−ROM(Digital Versatile Disk Read Only Memory)などの記録媒体に格納して配布できる他、インターネットなどの通信媒体を介して配布することもできる。また、本発明に係る提供方法は、実施例1から3、実施例1の変形例1から11、並びに、実施例3の変形例1から5のいずれかに係る提供装置100を用いて実施できる。
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
(付記)
(付記1)
ユーザ宛てのメッセージをメッセージボックスに保管する保管部、
前記ユーザが閲覧するコンテンツを特定する特定部、
前記特定されたコンテンツに応じて、前記メッセージボックスに保管された前記メッセージの順位を変更し、当該順位が変更された前記メッセージを前記ユーザに提供する提供部、を備える、
提供装置。
(付記2)
前記コンテンツは、端末の画面を介して前記ユーザに閲覧され、
前記画面には、オブジェクトが表示され、
前記ユーザが前記オブジェクトを操作すると、前記順位が変更された前記メッセージが前記ユーザに提供される、
付記1に記載の提供装置。
(付記3)
前記特定部は、前記端末から送信されたコンテンツリクエストに指定されたコンテンツを、前記ユーザが閲覧する前記コンテンツとして特定し、
前記提供部は、前記特定されたコンテンツに前記オブジェクトを含めて提供し、
前記提供されたコンテンツが前記画面に表示され、前記ユーザが前記コンテンツに含まれる前記オブジェクトを操作すると、前記順位が変更された前記メッセージが前記ユーザに提供される、
付記2に記載の提供装置。
(付記4)
前記コンテンツは、前記端末にて動作するブラウザにより前記画面内に設定されたコンテンツ領域に表示され、
前記端末は、前記ブラウザのプラグインプログラムを実行することにより、
前記画面内に設定されたツールバー領域に前記オブジェクトを配置し、
前記コンテンツ領域を介して前記ユーザに閲覧されているコンテンツを前記提供装置に報告し、
前記特定部は、前記報告されたコンテンツを、前記ユーザが閲覧する前記コンテンツとして特定する、
付記2に記載の提供装置。
(付記5)
前記提供されたメッセージは、前記画面内において閲覧される前記コンテンツに重ねて表示される、
付記2に記載の提供装置。
(付記6)
前記提供部は、前記メッセージボックスに保管された前記メッセージのうち、前記特定されたコンテンツとの関連度が所定条件を満たすメッセージであって、前記ユーザに未だ閲覧されていない前記メッセージを抽出し、
前記オブジェクトは、前記抽出されたメッセージの数を前記ユーザに通知する、
付記2に記載の提供装置。
(付記7)
前記順位は、前記特定されたコンテンツ、及び、前記ユーザによって過去に閲覧されたコンテンツに応じて変更される、
付記1に記載の提供装置。
(付記8)
前記特定されたコンテンツに対して、優先タグが予め設定されていれば、前記提供部は、当該優先タグに記載された優先語を含む又は当該優先タグが付与されたメッセージである優先メッセージの順位を、前記メッセージボックスに保管された前記優先メッセージと異なる前記メッセージの前記順位よりも優先された順位に変更する、
付記1に記載の提供装置。
(付記9)
前記特定されたコンテンツに対して、劣後タグが予め設定されていれば、前記提供部は、当該劣後タグに記載された劣後語を含む又は当該劣後タグが付与されたメッセージである劣後メッセージの順位を、前記メッセージボックスに保管された前記劣後メッセージと異なる前記メッセージの前記順位よりも劣後された順位に変更する、
付記1に記載の提供装置。
(付記10)
前記コンテンツは、商品群又はサービス群を販売するウェブサイトを構成するウェブページであって、
前記保管部は、前記メッセージを、前記メッセージに記載された商品又はサービスと対応付けて前記メッセージボックスに保管し、
前記提供部は、前記メッセージと対応付けられた前記商品又は前記サービスを含んだ前記商品群又は前記サービス群を販売する前記ウェブサイトを構成する前記コンテンツの閲覧日時がより新しい程、前記メッセージの前記順位をより高く変更する、
付記1に記載の提供装置。
(付記11)
前記提供部は、
前記メッセージボックスに保管された前記メッセージを、前記メッセージの前記順位に基づいて複数のグループへ分類してから、前記複数のグループの内で未読のメッセージを含むグループの選択、及び、前記選択されたグループに分類されたメッセージの前記ユーザに対する提供、を行い、
前記選択されたグループの前記メッセージが既読になると、前記未読のメッセージを含む前記グループが存在する間、前記選択及び前記提供を繰り返す、
付記1に記載の提供装置。
(付記12)
前記提供部は、前記メッセージボックスに保管された前記メッセージのうちで、商品又はサービスの特典について知らせるメッセージの前記順位を、当該メッセージの送信元のコンテンツが前記ユーザの閲覧する前記コンテンツとして特定された日時がより新しい程、より高く変更する、
付記7に記載の提供装置。
(付記13)
前記提供部は、前記メッセージボックスに保管された前記メッセージのうちで、商品又はサービスの特典について知らせるメッセージの前記順位を、当該商品又は当該サービスのジャンルと同一又は類似のジャンルに属する商品又はサービスを掲載したコンテンツが前記ユーザの閲覧する前記コンテンツとして特定された回数がより多い程、又は、当該同一若しくは類似のジャンルに属する前記商品又は前記サービスが購入された回数がより多い程、より高く変更する、
付記7に記載の提供装置。
(付記14)
前記提供部は、前記特典について知らせる前記メッセージの前記順位を、システム時刻の属する時間帯において特定された前記回数又は購入された前記回数がより多い程、より高く変更する、
付記13に記載の提供装置。
(付記15)
前記提供部は、商品の配送状況又はサービスの提供日時の確認に用いられるコンテンツが前記ユーザの閲覧する前記コンテンツとして特定された場合に、前記メッセージボックスに保管された前記メッセージのうちで、当該商品の配送状況又は当該サービスの提供日時について知らせるメッセージの前記順位を、他のメッセージの前記順位よりも優先された順位に変更する、
付記1に記載の提供装置。
(付記16)
前記提供部は、商品若しくはサービスを販売するイベントで、又は、当該商品若しくは当該サービスを特集するコンテンツで、前記ユーザが当該商品又は当該サービスを購入した回数が所定の回数以上である場合に、前記メッセージボックスに保管された前記メッセージのうちで、当該イベントの開催又は当該コンテンツの配信について知らせるメッセージの前記順位を、他のメッセージの順位よりも優先された順位に変更する、
付記1に記載の提供装置。
(付記17)
前記提供部は、前記イベントの開催又は前記コンテンツの配信について知らせる前記メッセージの前記順位を、前記イベントの開催日時又は前記コンテンツの配信日時がより近付くにつれて、より高く変更する、
付記16に記載の提供装置。
(付記18)
ユーザ宛てのメッセージをメッセージボックスに保管する保管ステップ、
前記ユーザが閲覧するコンテンツを特定する特定ステップ、
前記特定されたコンテンツに応じて、前記メッセージボックスに保管された前記メッセージの順位を変更し、当該順位が変更された前記メッセージを前記ユーザに提供する提供ステップ、を有する、
提供方法。
(付記19)
コンピュータを、
ユーザ宛てのメッセージをメッセージボックスに保管する保管部、
前記ユーザが閲覧するコンテンツを特定する特定部、
前記特定されたコンテンツに応じて、前記メッセージボックスに保管された前記メッセージの順位を変更し、当該順位が変更された前記メッセージを前記ユーザに提供する提供部、として機能させる、
プログラム。
(付記20)
コンピュータを、
ユーザ宛てのメッセージをメッセージボックスに保管する保管部、
前記ユーザが閲覧するコンテンツを特定する特定部、
前記特定されたコンテンツに応じて、前記メッセージボックスに保管された前記メッセージの順位を変更し、当該順位が変更された前記メッセージを前記ユーザに提供する提供部、として機能させる、
プログラムを記録した非一時的なコンピュータ読取可能な情報記録媒体。