(58)【調査した分野】(Int.Cl.,DB名)
コンテンツ情報を出力するか否かを判定するための情報であって、送信先の端末装置において端末装置の状態を示す情報と比較される出力条件情報を生成する条件生成部と、
前記出力条件情報及び前記コンテンツ情報を対応付けて送信する通信部と、
を備え、
前記条件生成部は、前記端末装置の操作を示す変数情報と前記端末装置の移動情報とのうち少なくとも一つと比較される前記出力条件情報を生成することを特徴とするサーバ装置。
前記通信部は、端末装置の全体集合に定められた部分集合に含まれる前記送信先の端末装置に、前記出力条件情報及び前記コンテンツ情報を送信することを特徴とする請求項3に記載のサーバ装置。
【発明を実施するための形態】
【0016】
[第1実施形態]
本発明の第1実施形態について図面を参照して詳細に説明する。
図1には、プッシュ型配信システムの構成例が、ブロック図により示されている。プッシュ型配信システムは、サーバ装置100aと、端末装置200−n(符号nは、1以上の整数)とを備える。サーバ装置100a、端末装置200−n、プッシュ型配信システム及びプッシュ型配信プログラムは、サーバ装置100aが、端末装置200−nの状態(プレゼンス)を監視(トラッキング)することなく、配信サービスを利用するユーザに情報を適応的に通知することができる。
【0017】
まず、サーバ装置100aの構成例を説明する。
サーバ装置100aは、通信回線300を介して、端末装置200−1〜200−nのそれぞれと接続されている。サーバ装置100aは、生成装置110と、配信装置120aとを有する。生成装置110及び配信装置120aは、所定のプログラムに基づいて、所定の演算処理をそれぞれ実行する。なお、生成装置110及び配信装置120aは、概念的に区別されている場合でも、物理的には一体で構成されてもよい。
【0018】
以下、説明を簡便にするため、端末装置200−1〜200−nは、同構成を有するものとする。また、以下、端末装置200−1〜200−nに共通する事項については、符号nを省略して、端末装置200と表記する。
【0019】
生成装置110は、指定部111と、設定部112と、条件生成部113と、コンテンツ生成部114と、結合部115とを有する。
指定部111は、端末装置の状態を示す情報との一致が端末装置200において判定される情報として、状態情報(プレゼンス情報)を定める。つまり、状態情報は、端末装置200において、当該端末装置の状態を示す情報と比較され、当該端末装置の状態を示す情報との一致が判定される情報である。端末装置の状態には、例えば、端末装置の位置情報、端末装置の操作を示す変数情報、及び、端末装置の移動情報がある。状態情報の詳細については、
図2を用いて後述する。
【0020】
なお、端末装置の状態には、例えば、時刻情報、配信サービスを利用するユーザの趣味趣向情報、配信サービスを利用するユーザの所有物情報、及び、通信回線(ネットワーク)の種別情報があってもよい。
【0021】
設定部112は、コンテンツ情報(
図3を用いて後述する)を端末装置200がユーザに通知するか否かを定めるための可否条件を定める。可否条件は、例えば、値又は関数を用いて表現される。
【0022】
図2には、状態情報と可否条件情報との対応例が、表により示されている。状態情報及び可否条件情報は、比較演算子、算術演算子又は論理演算子を用いて、組み合わされる。以下、状態情報と可否条件情報とが組み合わされた情報を「一次情報」という。状態情報は、端末装置200が取得する各種情報と対応付けられている。状態情報の要素には、例えば、位置、操作及び移動がある。
【0023】
状態情報の要素「位置」は、端末装置200の位置情報と対応付けられている。
図2では、位置情報は、「Location」と表記されている。また、状態情報の要素「操作」は、端末装置200の変数情報と対応付けられている。この変数情報は、例えば、オペレーティングシステムのAPI(Application Programming Interface)による関数の返り値を示す情報である。
図2では、変数情報は、「Action」と表記されている。また、状態情報の要素「移動」は、端末装置200の加速度情報と対応付けられている。
図2では、加速度情報は、「Situation」と表記されている。
【0024】
状態情報の要素「位置」に対応付けられている可否条件情報は、例えば、所定座標系における座標(x,y)を中心とする半径rの領域を示す情報である。
図2では、この領域を示す情報は、「area(x,y,r)」と表記されている。なお、状態情報の要素「位置」に対応付けられている可否条件情報は、座標面上に定められた領域を示す情報であれば、どのような情報でもよい。例えば、状態情報の要素「位置」に対応付けられている可否条件情報は、3点以上の座標に囲まれた領域を示す情報でもよい。
【0025】
状態情報の要素「操作」に対応付けられている可否条件情報は、整数値を用いたコード体系により識別されてもよい。例えば、状態情報の要素「操作」に対応付けられている可否条件情報は、非操作中を示す情報「値0」と、操作中を示す情報「値1」と、通話中を示す情報「値2」とを用いて識別されてもよい。
図2では、これら操作を示す情報は、整数値であることを意味する「int」と表記されている。
【0026】
状態情報の要素「移動」に対応付けられている可否条件情報は、整数値を用いたコード体系により識別されてもよい。例えば、状態情報の要素「移動」に対応付けられている可否条件情報は、停止を示す情報「値0」と、歩行を示す情報「値1」と、走行を示す情報「値2」とを用いて識別されてもよい。
図2では、これら操作を示す情報は、整数値であることを意味する「int」と表記されている。
【0027】
図1に戻り、サーバ装置100aの構成例の説明を続ける。条件生成部113は、論理演算子を用いて、複数の一次情報を結合する(組み合わせる)ことにより、これら複数の一次情報から構成される採択条件情報(出力条件情報)を生成する。なお、条件生成部113は、一つの一次情報から構成される採択条件情報を生成してもよい。つまり、この場合、採択条件情報は、一次情報と同じ情報である。
【0028】
採択条件情報(出力条件情報)を構成する一次情報は、端末装置200の状態を示す情報との一致が判定された場合に、真偽を判定可能であれば、どのような情報でもよい。例えば、採択条件情報は、端末装置200の測位センサが取得した位置情報としての一次情報と、その端末装置200の加速度センサが取得した移動情報としての一次情報とが、AND演算子により結合された情報でもよい。
【0029】
コンテンツ生成部114は、端末装置200のユーザ、すなわち、配信サービスを利用するユーザに通知するコンテンツ情報を生成する。コンテンツ情報には、例えば、テキストデータ、画像データ、及び、音データが含まれていてもよい。コンテンツ生成部114は、コンテンツ情報を指定及び編集するための入出力インタフェースを有していてもよい。
【0030】
結合部115は、採択条件情報とコンテンツ情報とが一対一で結合された(組み合わされた)一次メッセージ情報を生成する。また、結合部115は、複数の一次メッセージ情報を一つに結合する(組み合わせる)ことにより、これら複数の一次メッセージ情報から構成されるメッセージ情報を生成し、生成したメッセージ情報を配信装置120aに出力する。ここで、一次メッセージ情報は、割り振られた識別子(ラベル)に基づいて識別される。複数の一次メッセージ情報は、割り振られた識別子を引数とする関数(選出条件)に基づいて結合されることにより、メッセージ情報を構成する。
【0031】
なお、結合部115は、一つの一次メッセージ情報から構成されるメッセージ情報を生成してもよい。つまり、この場合、メッセージ情報は、一次メッセージ情報と同じ情報である。
【0032】
配信装置120aは、ユーザ情報記憶部121と、宛先記憶部122と、アプリ記憶部123と、通信部124とを有する。
ユーザ情報記憶部121は、端末装置200の識別情報(以下、「端末ID」という。)と、セグメント情報(区分情報)とを対応付けて記憶するデータベース部である。ここで、セグメント情報とは、端末装置200のユーザを区分する情報である。セグメント情報は、例えば、ユーザの年齢を示す情報、ユーザの性別を示す情報、ユーザの居住地を示す情報、又は、ユーザの趣味趣向を示す情報である。端末装置200のユーザは、セグメント情報毎に分類される。ここで、セグメント情報は、端末IDの集合として管理される。なお、セグメント情報は、端末IDの集合から部分集合を切り出すことが可能な情報であれば、どのような情報でもよい。
【0033】
宛先記憶部122は、ネットワークアドレスと端末IDとを対応付けて記憶するデータベース部である。端末IDは、例えば、端末装置200毎に割り当てられた電話番号である。なお、端末IDは、端末装置200を識別することが可能な情報であれば、どのような情報でもよい。
【0034】
アプリ記憶部123は、ネットワークアドレスと、端末装置200上で動作するアプリケーションソフトウェア(プログラム)の識別情報(以下、「アプリID」という。)とを対応付けて記憶するデータベース部である。アプリIDは、例えば、GCM(Google Cloud Messaging)に定義された「Registration ID」、又は、APNs(Apple Push Notification service)に定義された「device Token」である。なお、アプリIDは、端末装置200上で動作するアプリケーションソフトウェアを識別することが可能な情報であれば、どのような情報でもよい。
【0035】
以下、ネットワークアドレスとメッセージ情報とが組み合わされた情報を「通知情報」という。なお、ネットワークアドレスは、端末装置200に通知情報を到達させることが可能な情報であれば、どのような情報でもよい。例えば、ネットワークアドレスは、IP(Internet Protocol)アドレスでもよい。
【0036】
通信部124は、結合部115が生成したメッセージ情報を含む通知情報を、通信回線300を介して、配信する対象とされた端末装置200に配信する。ここで、通信部124は、端末ID又はアプリIDに対応付けられているネットワークアドレスを、メッセージ情報に対応付けることにより、通知情報を生成する。通信部124は、共通のメッセージ情報に、異なるネットワークアドレスを対応付けて、複数の通知情報を生成してもよい。また、通信部124は、異なるメッセージ情報に、共通のネットワークアドレスを対応付けて、複数の通知情報を生成してもよい。
【0037】
図3には、通知情報の例が、表により示されている。
図3に示す例1では、端末装置200−1に割り当てられたネットワークアドレス「172.19.70.162」と、一次メッセージ情報の採択条件情報「Location < area(35.39,139.44,200)」及びコンテンツ情報「“クーポン差し上げます!店舗はすぐ近く!!”」と、が対応付けられている。また、
図3に示す例2では、端末装置200−2に割り当てられたネットワークアドレス「172.19.70.163」と、一次メッセージ情報の採択条件情報「(Location < area(35.39,139.44,200)) && (Action==1)」及びコンテンツ情報「“リンク先へどうぞ”」と、が対応付けられている。
【0038】
ここで、採択条件情報(条件式)は、コンテンツ情報をユーザに通知するか否かを定めるための一つ以上の可否条件情報を含む論理情報(論理式)である。
図3に示す例1では、緯度35.39、経度139.44を中心とする半径200[m]の領域に位置している端末装置200のみが、コンテンツ情報をユーザに通知することになる。また、
図3に示す例2では、緯度35.39、経度139.44を中心とする半径200[m]の領域に位置し、且つ、操作中の状態(
図2を参照)である端末装置200のみが、コンテンツ情報をユーザに通知することになる。
【0039】
ここで、所定領域の部分領域「area(x,y,r)」に位置している端末装置200であることが可否条件(
図2を参照)とされているにもかかわらず、当該所定領域に位置している全ての端末装置200に通知情報が一斉にプッシュ配信されてしまうと、コンテンツ情報をユーザに通知させる必要のない端末装置200にまで、通知情報がプッシュ配信されてしまうことになる。
【0040】
そこで、通信部124は、当該所定領域に位置している端末装置200の全体集合に対して、粗いクラスタリングをセグメント情報に基づいて予め実行した上で、クラスタリング結果が示す部分集合を、通知情報をプッシュ配信する対象としてもよい。ここで、通信部124は、論理演算子を用いて、セグメント情報を結合する。例えば、通信部124は、セグメント情報「居住地=東京都内」と、セグメント情報「年齢=20代」と、セグメント情報「性別=女性」とを、AND演算子を用いて結合することにより、東京都内在住の20代の女性が所有している端末装置200を、通知情報をプッシュ配信する対象としてもよい。
【0041】
図3に示す例3では、端末装置200−3に割り当てられたネットワークアドレス「172.19.70.164」と、一次メッセージ情報の選出条件「min(A,B)」と、一次メッセージ情報のラベル情報「A」と、一次メッセージ情報の採択条件情報「Location==area(35.39,139.44,0)」及びコンテンツ情報「画像α」とが、対応付けられている。
【0042】
さらに、
図3に示す例3では、端末装置200−3に割り当てられたネットワークアドレス「172.19.70.164」と、一次メッセージ情報の選出条件「min(A,B)」と、一次メッセージ情報のラベル情報「B」と、一次メッセージ情報の採択条件情報「Location==area(35.39,139.45,0)」及びコンテンツ情報「画像β」とが、対応付けられている。
【0043】
ここで、選出条件とは、ラベル情報を選出するための条件である。選出条件は、比較関数によって表現されてもよい。
図3に示す例3のように、同一のネットワークアドレスに複数の一次メッセージ情報が対応付けられ、かつ、採択条件が満たされる一次メッセージ情報が複数存在する場合、端末装置200−3により選出されたラベル情報に対応付けられた一次メッセージ情報に含まれるコンテンツ情報が、ユーザに通知される。
【0044】
図3に示す例3では、ラベル情報「A」に対応付けられた第1位置(緯度35.39、経度139.44)から、端末装置200−3の位置までの距離は、「Location−area(35.39,139.44,0)」と表記されている。また、ラベル情報「B」に対応付けられた第2位置(緯度35.40、経度139.45)から、端末装置200−3の位置までの距離までの距離は、「Location−area(35.40,139.45,0)」と表記されている。
【0045】
図3に示す例3では、前記第1位置から端末装置200−3の位置までの距離と、前記第2位置から端末装置200−3の位置までの距離とのうち、最も距離が短いほう(min(A,B))のラベル情報に対応付けられた一次メッセージ情報が、端末装置200により選出される。これにより、コンテンツ情報「画像α」又は「画像β」は、端末装置200の位置が前記第1位置又は前記第2位置のいずれに近いかに応じて選出され、選出されたコンテンツ情報がユーザに通知されることになる。
【0046】
次に、
図1に戻り、端末装置200の構成例を説明する。
端末装置200は、所定のプログラムに基づいて、所定の演算処理を実行する。例えば、端末装置200は、ユーザに保持されて移動が可能な小型の端末装置(例えば、スマートフォン)である。また、例えば、端末装置200は、車両に搭載されて移動が可能な車載器でもよい。端末装置200は、受信部210と、抽出部220と、取得部230と、判定部240と、出力部250とを有する。
【0047】
受信部210は、サーバ装置100aの配信装置120aの通信部124から、通信回線300を介して、通知情報を受信し、受信した通知情報を抽出部220に転送する。ここで、受信部210は、無線通信により通知情報を受信してもよい。
【0048】
抽出部220は、通知情報のメッセージ情報から採択条件情報を抽出し、抽出した採択条件情報を、判定部240に出力する。また、抽出部220は、通知情報のメッセージ情報からコンテンツ情報を抽出し、抽出したコンテンツ情報を、出力部250に出力する。また、抽出部220は、抽出した採択条件情報の一次情報の状態情報に対応付けられている、自端末装置の状態を示す情報の取得を、取得部230に要求する。
【0049】
取得部230は、少なくとも一つのセンサを有する。ここで、センサとは、空間の状態を時系列で取得するセンサ(例えば、測位センサ、加速度センサ)だけでなく、例えば、ソフトウェアの変数値を取得するセンサ(以下、「変数値センサ」という。)でもよい。取得部230は、抽出部220により抽出された採択条件情報の一次情報の状態情報に対応する、自端末装置の状態を示す情報を、抽出部220を介して判定部240に出力する。
【0050】
取得部230の測位センサは、例えば、人工衛星からの電波に基づいて位置情報を取得するセンサ、又は、複数の基地局による電波強度に基づいて位置情報を取得するセンサでもよい。測位センサは、取得した自端末装置の座標値を示す情報を、自端末IDに対応付けて、抽出部220に出力する。また,取得部230の加速度センサは、例えば、静電容量の変化に基づいて自端末装置の移動による半可動部の位置変化の情報を取得する導体式静電容量型センサ、又は、電気抵抗値の変化に基づいて自端末装置の移動によるガスの移動の情報を取得するセンサでもよい。また、取得部230の変数値センサは、例えば、オペレーティングシステムのAPIによる関数の返り値を取得するセンサでもよい。
【0051】
判定部240は、自端末装置の状態を示す情報と、通知情報のメッセージ情報の採択条件情報との一致を、当該採択条件情報の一次情報毎に判定し、自端末装置の状態が採択条件(出力条件)を満たしているか否かを判定する。自端末装置の状態が採択条件を満たしている場合、判定部240は、通知情報のコンテンツ情報を、出力部250に出力する。一方、自端末装置の状態が採択条件を満たしていない場合、判定部240は、通知情報を棄却(例えば、自端末装置の記憶部から消去)する。
【0052】
また、判定部240は、同一のネットワークアドレスに複数の一次メッセージ情報が対応付けられ、かつ、採択条件が満たされる一次メッセージ情報が複数存在する場合(
図3に示す例3を参照)、選出条件情報に基づいてラベル情報を選出し、選出したラベル情報に対応付けられた一次メッセージ情報のコンテンツ情報を、出力部250に出力する。
【0053】
なお、判定部240は、同一のネットワークアドレスに複数の一次メッセージ情報が対応付けられ、かつ、採択条件が満たされる一次メッセージ情報が一つも存在しない場合でも、選出条件情報に基づいてラベル情報を選出し、選出したラベル情報に対応付けられた一次メッセージ情報のコンテンツ情報を、出力部250に出力してもよい。
【0054】
出力部250は、通知情報のコンテンツ情報を、判定部240による判定結果に基づいて出力することで、そのコンテンツ情報をユーザに通知する。出力部250は、例えば、振動子、スピーカー及び表示画面を有する。
【0055】
出力部250は、コンテンツ情報に含まれる文字列(テキストデータ)について、その書体の色及び大きさを加工し、加工した文字列を表示画面に表示する。ここで、文字列は、ダイアログボックス又はバナーに表示されてもよい。また、出力部250は、所定の音又は振動を予め出力してから、文字列を表示画面に表示してもよい。これにより、出力部250は、コンテンツ情報の通知を、ユーザに気づかせ易くすることができる。
【0056】
次に、プッシュ型配信システムの動作手順例を説明する。
図4は、プッシュ型配信システムの動作手順の例を示すシーケンス図である。
(ステップS1)サーバ装置100aの生成装置110(
図1を参照)は、配信サービスを利用するユーザに通知したいメッセージ情報を生成し、生成したメッセージ情報を含む通知情報の配信を、配信装置120aに要求する。
【0057】
(ステップS2)サーバ装置100aの配信装置120aは、メッセージ情報を含む通知情報を生成し、生成した通知情報を、配信する対象とされた端末装置200に配信する。
(ステップS3)端末装置200の受信部210は、サーバ装置100aの配信装置120aの通信部124が配信した通知情報を受信し、受信した通知情報を抽出部220に転送する。抽出部220は、通知情報のメッセージ情報から、採択条件情報を抽出する。取得部230は、抽出部220により抽出された採択条件情報の一次情報の状態情報に対応付けられている、自端末装置の状態を示す情報を、抽出部220に出力する。
【0058】
(ステップS4)判定部240は、自端末装置の状態(プレゼンス)を示す情報と、通知情報のメッセージ情報の採択条件情報との一致を、当該採択条件情報の一次情報毎に判定し、自端末装置の状態が採択条件(出力条件)を満たしているか否かを判定する。自端末装置の状態が採択条件を満たしている場合、判定部240は、通知情報のコンテンツ情報を、出力部250に出力する。一方、自端末装置の状態が採択条件を満たしていない場合、判定部240は、通知情報を棄却(例えば、自端末装置の記憶部から消去)する。
【0059】
図5は、生成装置の動作手順の例を示すフローチャートである。
(ステップSa1)指定部111(
図1を参照)は、端末装置の状態を示す情報との一致が判定される状態情報(プレゼンス情報)を定める。ここで、状態情報は、端末装置200が有する取得部230のセンサと、必ずしも一対一で対応していなくてもよい。状態情報がセンサと一対一で対応していない場合、その状態情報を含む採択条件は満たされていない、と判定されてもよい。
【0060】
(ステップSa2)設定部112は、コンテンツ情報を端末装置200がユーザに通知するか否かを定めるための可否条件を定める。
(ステップSa3)設定部112は、複数の一次情報を生成するか否かを判定する。複数の一次情報を生成する場合(ステップSa3:Yes)、設定部112は、ステップSa1に処理を戻す。一方、複数の一次情報を生成しない場合(ステップSa3:No)、設定部112は、ステップSa4に処理を進める。
【0061】
(ステップSa4)条件生成部113は、設定部112により生成された一次情報を、論理演算子を用いて結合することで、採択条件情報を生成する。ここで、条件生成部113は、端末装置200の取得部230の同一のセンサにより取得された、当該端末装置の状態を示す情報に対応付けられた複数の一次情報に基づいて、採択条件情報が生成してもよい。例えば、条件生成部113は、第1の位置情報に対応する一次情報と、第2の位置情報に対応する一次情報とを結合することで、採択条件情報を生成してもよい。
【0062】
また、採択条件情報は、それ自身が、論理演算子を用いて結合される被演算子(オペランド)とされてもよい。例えば、条件生成部113は、第1の採択条件情報と、第3の位置情報に対応する一次情報とを結合することで、第2の採択条件情報を生成してもよい。 結合部115は、採択条件情報とコンテンツ情報とが一対一で結合された(組み合わされた)メッセージ情報を生成し、生成したメッセージ情報を配信装置120aに出力する。
【0063】
図6は、端末装置の動作手順の例を示すフローチャートである。
(ステップSb1)受信部210は、サーバ装置100aの配信装置120aの通信部124から、通信回線300を介して、通知情報を受信したとする。抽出部220は、通知情報のメッセージ情報から採択条件情報を抽出し、抽出した採択条件情報を、判定部240に出力する。また、抽出部220は、通知情報のメッセージ情報からコンテンツ情報を抽出し、抽出したコンテンツ情報を、出力部250に出力する。また、取得部230は、抽出部220により抽出された採択条件情報の一次情報の状態情報に対応付けられた、自端末装置の状態を示す情報を、抽出部220を介して判定部240に出力する。
【0064】
(ステップSb2)判定部240は、自端末装置の状態を示す情報と、通知情報のメッセージ情報の採択条件情報との一致を、当該採択条件情報の一次情報毎に判定し、自端末装置の状態が採択条件を満たしているか否かを判定する。自端末装置の状態が採択条件を満たしている場合(ステップSb2:Yes)、判定部240は、ステップSb3に処理を進める。一方、自端末装置の状態が採択条件を満たしていない場合(ステップSb2:No)、判定部240は、ステップSb4に処理を進める。
【0065】
(ステップSb3)出力部250は、通知情報のコンテンツ情報を、判定部240による判定結果に基づいて出力することで、そのコンテンツ情報をユーザに通知する。出力部250は、コンテンツ情報に含まれる文字列(テキスト)の書体の色及び大きさを加工して、その文字列を表示画面に表示する。ここで、文字列は、ダイアログボックス又はバナーに表示されてもよい。出力部250は、所定の音又は振動を予め出力してから、文字列を表示画面に表示してもよい。
(ステップSb4)出力部250は、出力したコンテンツ情報を、一定時間が経過した後に棄却(例えば、自端末装置の記憶部から消去)する。
【0066】
<適用例1>
以下、パーラーチェーンの広告配信システムに、第1実施形態のプッシュ型配信システムを適用する例を説明する。
【0067】
図7には、通知情報の適用例が、表により示されている。また、
図8には、プッシュ型配信システムの適用例が、ブロック図により示されている。本適用例におけるパーラーチェーンは、東京都内の店舗を対象として、女性を対象とした期間限定の電子クーポン広告を、プッシュ型配信システムにより配信するものとする。ここで、サーバ装置100aは、パーラーチェーンが自社で用意している装置であるものとする。また、パーラーチェーンは、スマートフォンなどの端末装置200上で動作するアプリケーションソフトウェアを、端末装置200に別途提供しているものとする。このアプリケーションソフトウェアのアプリIDは、一例として、値1であるものとする。端末装置200は、このアプリケーションソフトウェアにより、電子クーポン広告をユーザに通知する。
【0068】
サーバ装置100aの生成装置110の指定部111(
図1を参照)は、端末装置の状態を示す情報との一致が判定される状態情報として、位置情報を定める。
サーバ装置100aの生成装置110の設定部112は、電子クーポン広告を端末装置200がユーザに通知するか否かを定めるための可否条件(
図2を参照)を定める。具体的には、設定部112(
図1を参照)は、指定部111が状態情報として位置情報を定めたため、店舗Aの座標(x,y,r)を中心とする半径r=100[m]の領域500−Aを示す一次情報A「Location<areaA」を定めたものとする。一次情報B及び一次情報Cについても同様である。また、設定部112は、東京都内を示す領域600−Dを示す一次情報D「Location<areaD」を定める。
【0069】
条件生成部113は、OR演算子を用いて一次情報A〜Cを結合することにより、採択条件情報ACを生成する。また、条件生成部113は、AND演算子を用いて採択条件情報ACと一次情報Dとを結合することにより、採択条件情報ADを生成する。これにより、採択条件情報ADは、東京都内を示す領域600−Dのうち、店舗Aから半径100[m]の領域500−A、店舗Bから半径100[m]の領域500−B、及び、店舗Cから半径100[m]の領域500−Cを示す情報となる。
【0070】
サーバ装置100aの生成装置110のコンテンツ生成部114(
図1を参照)は、文字列「クーポン差し上げます!店舗はすぐ近く!!」が、電子クーポン広告にアクセス可能なURL(Uniform Resource Locator)タグにより囲まれたコンテンツ情報を生成する。
【0071】
結合部115は、採択条件情報ADと、コンテンツ情報の文字列「クーポン差し上げます!店舗はすぐ近く!!」と、が一対一で結合されたメッセージ情報(
図7を参照)を生成し、生成したメッセージ情報を配信装置120a(
図1を参照)に出力する。
【0072】
サーバ装置100aの配信装置120aのアプリ記憶部123(
図1を参照)は、アプリIDと、ネットワークアドレスとを対応付けて記憶するデータベース部である。東京都内を示す領域600−Dに位置している全ての端末装置200に対して、サーバ装置100aの配信装置120aの通知情報をプッシュ配信してしまうと、その通知情報を通知せずに棄却することになる端末装置200が多い。
【0073】
そこで、通信部124は、東京都内を示す領域600−Dに位置している端末装置200の全体集合に対して、粗いクラスタリングをセグメント情報に基づいて予め実行した上で、クラスタリング結果が示す部分集合を、通知情報をプッシュ配信する対象としてもよい。例えば、通信部124は、セグメント情報「居住地=東京都内」と、セグメント情報「年齢=20代」と、セグメント情報「性別=女性」とを、AND演算子を用いて結合することにより、東京都内在住の20代の女性の端末装置200を、通知情報をプッシュ配信する対象としてもよい。
【0074】
通信部124は、セグメント情報に基づくクラスタリング結果が示す部分集合と、電子クーポン広告を配信するアプリケーションソフトウェアを示すアプリIDの集合との論理積を、通知情報をプッシュ配信する対象の集合と定める。通信部124は、通知情報をプッシュ配信する対象の集合を、宛先記憶部122(
図1を参照)に記憶されているネットワークアドレスと端末IDとの対応付けに基づいて、ネットワークアドレスの集合に変換する。
【0075】
通信部124は、変換したネットワークアドレスの集合を構成するネットワークアドレスのそれぞれに、共通のメッセージ情報(
図7を参照)を結合させることにより複数の通知情報を生成し、生成した複数の通知情報を、通信回線300及び無線通信装置400を介して、端末装置200に送信する。
【0076】
無線通信装置400は、東京都内を示す領域600−Dに位置している端末装置200のうち、アプリID「1」が示すアプリケーションソフトウェアがバックエンドで動作している端末装置200−1及び200−2に、通知情報に含まれているネットワークアドレスに基づいて、その通知情報を配信する。
【0077】
端末装置200の受信部210(
図1を参照)は、サーバ装置100aの配信装置120aの通信部124から、通信回線300及び無線通信装置400を介して、通知情報を受信したとする。
【0078】
端末装置200の抽出部220(
図1を参照)は、通知情報のメッセージ情報から採択条件情報ADを抽出し、抽出した採択条件情報ADを、判定部240に出力する。また、抽出部220は、通知情報のメッセージ情報から、コンテンツ情報としての文字列「クーポン差し上げます!店舗はすぐ近く!!」を抽出し、抽出したコンテンツ情報を、出力部250に出力する。
【0079】
抽出部220は、抽出した採択条件情報ADの一次情報の状態情報としての位置情報に対応付けられた、自端末装置の位置を示す情報の取得を、取得部230に要求する。
取得部230の測位センサは、抽出部220により抽出された採択条件情報ADの一次情報A〜Dの状態情報としての位置情報に対応付けられた、自端末装置の位置を示す情報を、抽出部220を介して判定部240に出力する。
【0080】
端末装置200の判定部240(
図1を参照)は、採択条件情報ADを示す論理式(
図7を参照)の真偽に基づいて、自端末装置の位置が採択条件情報ADを満たしているか否かを判定する。より具体的には、判定部240は、自端末装置の位置を示す情報と、通知情報のメッセージ情報の採択条件情報ADとの一致を、採択条件情報ADの一次情報A〜D毎に判定し、自端末装置の位置が採択条件情報ADを満たしているか否かを判定する。
【0081】
自端末装置の位置が採択条件情報ADを満たしている場合、判定部240は、通知情報のコンテンツ情報を、出力部250に出力する。一方、自端末装置の位置が採択条件情報ADを満たしていない場合、判定部240は、通知情報を棄却(例えば、自端末装置の記憶部から消去)する。
【0082】
端末装置200の出力部250は、通知情報のコンテンツ情報を、判定部240による判定結果に基づいて出力することで、そのコンテンツ情報をユーザに通知する。出力部250は、コンテンツ情報に含まれる文字列(テキスト)について、その書体の色及び大きさを加工し、加工した文字列を表示画面に表示する。ここで、文字列は、ダイアログボックス又はバナーに表示されてもよい。出力部250は、所定の音又は振動を予め出力してから、文字列を表示画面に表示してもよい。
【0083】
これにより、アプリID「1」が示すアプリケーションソフトウェアがバックエンドで動作している端末装置200のうち、東京都内を示す領域600−Dに位置し、且つ、店舗を中心とする半径100[m]の領域500−A〜500−Cのいずれかに位置する端末装置200(
図8では、端末装置200−1)は、通知情報のコンテンツ情報としての電子クーポン広告を表示することができる。
【0084】
以上のように、端末装置200(
図1を参照)は、コンテンツ情報を出力するか否かを判定するための出力条件情報(採択条件情報)と、前記出力条件情報に対応付けられた前記コンテンツ情報と、を受信する受信部210(
図1を参照)と、前記出力条件情報に応じて、自端末装置の状態を示す情報を取得する取得部230(
図1を参照)と、前記出力条件情報と、前記自端末装置の状態を示す情報と、を比較し、前記自端末装置の状態が前記出力条件を満たすか否かを判定する判定部240(
図1を参照)と、前記自端末装置の状態が前記出力条件を満たすと判定部240により判定された場合、前記コンテンツ情報を出力する出力部250(
図1を参照)と、を備える。
【0085】
また、プッシュ型配信プログラムは、端末装置200のコンピュータに、コンテンツ情報を出力するか否かを判定するための出力条件情報(採択条件情報)に応じて、自端末装置の状態を示す情報を取得する手順と、前記出力条件情報と、前記自端末装置の状態を示す情報と、を比較し、前記自端末装置の状態が前記出力条件を満たすか否かを判定する手順と、前記自端末装置の状態が前記出力条件を満たすと判定された場合、前記出力条件情報に対応付けられた前記コンテンツ情報を出力する手順と、を実行させる。
【0086】
この構成により、判定部240は、前記出力条件情報と、前記自端末装置の状態を示す情報と、を比較し、前記自端末装置の状態が前記出力条件を満たすか否かを判定する。出力部250は、前記自端末装置の状態が前記出力条件を満たすと前記判定部により判定された場合、前記コンテンツ情報を出力する。
【0087】
これにより、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、配信サービスを利用するユーザに、サーバ装置が端末装置の状態を監視することなく、情報を適応的に通知することができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、サーバ装置における処理負荷を減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、トラフィックを減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、サーバ装置の構築、管理及び運用コストを減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、端末装置の状態を示す情報を端末装置がアップロードする必要がないため、端末装置の消費電力を低減させることができる。
【0088】
受信部210(
図1を参照)は、自端末装置において動作するプログラムに対応付けられた前記出力条件情報及び前記コンテンツ情報を受信し、出力部250(
図1を参照)は、前記プログラムに対応付けられた前記コンテンツ情報を出力してもよい。
【0089】
取得部230(
図1を参照)は、前記自端末装置の状態を示す情報として、位置情報、変数情報及び移動情報のうち少なくとも一つを取得してもよい。
【0090】
サーバ装置100a(
図1を参照)は、コンテンツ情報を出力するか否かを判定するための情報であって、送信先の端末装置において端末装置の状態を示す情報と比較される出力条件情報(採択条件情報)を生成する条件生成部113(
図1を参照)と、前記出力条件情報及び前記コンテンツ情報を対応付けて送信する通信部124(
図1を参照)と、を備える。
【0091】
プッシュ型配信プログラムは、サーバ装置のコンピュータに、コンテンツ情報を出力するか否かを判定するための情報であって、送信先の端末装置において端末装置の状態を示す情報と比較される出力条件情報(採択条件情報)を生成する手順と、前記出力条件情報及び前記コンテンツ情報を対応付けて送信する手順と、を実行させる。
【0092】
プッシュ型配信システム(
図1を参照)は、端末装置200と、サーバ装置100aと、を備える。
【0093】
この構成により、条件生成部113は、コンテンツ情報を出力するか否かを判定するための情報であって、送信先の端末装置において端末装置の状態を示す情報と比較される出力条件情報(採択条件情報)を生成する。
【0094】
これにより、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、配信サービスを利用するユーザに、サーバ装置が端末装置の状態を監視することなく、情報を適応的に通知することができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、サーバ装置における処理負荷を減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、トラフィックを減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、サーバ装置の構築、管理及び運用コストを減少させることができる。また、プッシュ型配信システムの端末装置、サーバ装置、及びプッシュ型配信プログラムは、端末装置の状態を示す情報を端末装置がアップロードする必要がないため、端末装置の消費電力を低減させることができる。
【0095】
通信部124は、端末装置200の全体集合に定められた部分集合に含まれる前記送信先の端末装置200に、前記出力条件情報及び前記コンテンツ情報を送信してもよい。
通信部124は、端末装置200のユーザを区分する情報(セグメント情報)に基づいて、前記部分集合(粗いクラスタリングの結果)を定めてもよい。
【0096】
[第2実施形態]
第2実施形態では、宛先記憶部及びユーザ情報記憶部が外部サーバ装置に備えられる点が、第1実施形態と相違する。以下では、第1実施形態との相違点についてのみ説明する。
【0097】
図9には、プッシュ型配信システムの構成例が、ブロック図により示されている。プッシュ型配信システムは、サーバ装置100bと、外部サーバ装置700と、端末装置200−nとを備える。サーバ装置100b、外部サーバ装置700、端末装置200−n、プッシュ型配信システム及びプッシュ型配信プログラムは、サーバ装置100bが、端末装置200−nの状態(プレゼンス)を監視(トラッキング)することなく、配信サービスを利用するユーザに情報を適応的に通知することができる。
【0098】
サーバ装置100bは、生成装置110と、配信装置120bとを有する。生成装置110及び配信装置120bは、所定のプログラムに基づいて、所定の演算処理をそれぞれ実行する。なお、生成装置110及び配信装置120bは、概念的に区別されている場合でも、物理的には一体で構成されてもよい。
【0099】
配信装置120bは、アプリ記憶部123と、通信部124とを有する。通信部124は、結合部115が生成したメッセージ情報を、外部サーバ装置700に出力する。ここで、通信部124は、アプリID「1」をメッセージ情報に対応付けることにより、メッセージ情報を生成する。
【0100】
外部サーバ装置700は、サーバ装置100bを運用する事業者とは異なる事業者(以下、「外部事業者」という。)によって運用されているものとする。したがって、通知情報を配信する責任は、外部事業者が負っている。すなわち、アプリIDに基づいて通知情報を端末装置200に到達させることは、外部事業者(例えば、広告を配信する広告ネットワーク事業者(アドネットワーク事業者))が運用する外部サーバ装置700によって担保される。
【0101】
外部サーバ装置700は、ユーザ情報記憶部721と、宛先記憶部722と、通信部723とを有する。ユーザ情報記憶部721は、第1実施形態のサーバ装置100aの配信装置120aのユーザ情報記憶部121(
図1を参照)に相当する。宛先記憶部722は、第1実施形態のサーバ装置100aの配信装置120aの宛先記憶部122(
図1を参照)に相当する。
【0102】
通信部723は、配信装置120bの通信部124が出力したメッセージ情報に含まれているアプリIDに対応付けられているネットワークアドレスを、配信装置120bの通信部124が出力したメッセージ情報に対応付けることにより、通知情報を生成する。また、通信部723は、端末IDに対応付けられているネットワークアドレスを、配信装置120bの通信部124が出力したメッセージ情報に対応付けることにより、通知情報を生成する。通信部723は、生成した通知情報を、通信回線300を介して、配信する対象とされた端末装置200に配信する。
【0103】
<適用例2>
以下、広告主のウェブサイトにユーザを誘導する誘導型の広告コンテンツ情報を配信する広告制作システムに、第2実施形態のプッシュ型配信システムを適用する例を説明する。
【0104】
図10には、通知情報の適用例が、表により示されている。また、
図11には、プッシュ型配信システムの適用例が、ブロック図により示されている。本適用例におけるサーバ装置100bは、広告主によって運用されているものとする。
【0105】
広告主のウェブサイトにユーザを効果的に誘導するため、当該広告主は、移動体800としての電車に乗っているユーザによって操作されている端末装置200に対して、広告コンテンツ情報を外部サーバ装置700から配信させるものとする。この場合、広告コンテンツ情報は、端末装置の操作を示す変数情報、及び端末装置の移動情報に基づいて、外部サーバ装置700から配信される。
【0106】
サーバ装置100bの生成装置110の指定部111(
図9を参照)は、端末装置200において端末装置の状態を示す情報との一致が判定される状態情報として、位置情報及び移動情報を定める。
【0107】
サーバ装置100bの生成装置110の設定部112(
図9を参照)は、指定部111が状態情報として移動情報を定めたため、コンテンツ情報(
図10を参照)を端末装置200がユーザに通知するか否かを定めるための可否条件として、端末装置の移動情報「走行」(
図2を参照)を定めたものとする。この場合、一次情報Siは、「Situation=2」と表記される。また、設定部112は、コンテンツ情報(
図10を参照)を端末装置200がユーザに通知するか否かを定めるための可否条件として、端末装置の操作を示す変数情報「操作中」(
図2を参照)を定めたものとする。この場合、一次情報Acは、「Action=1」と表記される。
【0108】
条件生成部113は、AND演算子を用いて、一次情報Si及び一次情報Acを結合する(組み合わせる)ことにより、一次情報Si及び一次情報Acから構成される採択条件情報SAを生成する。
【0109】
当該広告主は、ウェブサイトにユーザを誘導することを主たる目的として、サーバ装置100bの生成装置110のコンテンツ生成部114(
図9を参照)の入出力インタフェースを用いて、広告コンテンツ情報を生成する。コンテンツ生成部114は、画像を用いた広告コンテンツ情報を生成してもよい。
【0110】
サーバ装置100bの生成装置110の結合部115(
図9を参照)は、採択条件情報SAとコンテンツ情報(
図10を参照)とが一対一で結合された(組み合わされた)メッセージ情報を生成し、生成したメッセージ情報を配信装置120bに出力する。
配信装置120bの通信部124(
図9を参照)は、結合部115が生成したメッセージ情報を、外部サーバ装置700に出力する。ここで、通信部124は、アプリID「1」を対応付けたメッセージ情報を生成する。
【0111】
外部サーバ装置700の通信部723(
図9を参照)は、配信装置120bの通信部124が出力したメッセージ情報に含まれているアプリIDに対応付けられているネットワークアドレスを、配信装置120bの通信部124が出力したメッセージ情報に対応付けることにより、通知情報を生成する。また、通信部723は、端末IDに対応付けられているネットワークアドレスを、配信装置120bの通信部124が出力したメッセージ情報に対応付けることにより、通知情報を生成する。通信部723は、生成した通知情報を、通信回線300及び無線通信装置400を介して、配信する対象とされた端末装置200に配信する。
【0112】
無線通信装置400は、所定の領域900−Dに位置している端末装置200のうち、アプリID「1」が示すアプリケーションソフトウェアがバックエンドで動作している端末装置200−1及び200−2に、通知情報に含まれているネットワークアドレスに基づいて、その通知情報を配信する。
【0113】
端末装置200の受信部210(
図9を参照)は、外部サーバ装置700の通信部723から、通信回線300及び無線通信装置400を介して、通知情報を受信したとする。
端末装置200の抽出部220(
図9を参照)は、通知情報のメッセージ情報から採択条件情報SAを抽出し、抽出した採択条件情報SAを、判定部240に出力する。また、抽出部220は、通知情報のメッセージ情報から、コンテンツ情報としての文字列「リンク先へどうぞ」を抽出し、抽出したコンテンツ情報を、出力部250に出力する。
【0114】
抽出部220は、抽出した採択条件情報SAの一次情報の状態情報としての操作情報に対応付けられた、自端末装置の操作を示す変数情報の取得を、取得部230に要求する。また、抽出部220は、抽出した採択条件情報SAの一次情報の状態情報としての移動情報に対応付けられた、自端末装置の移動情報の取得を、取得部230に要求する。
【0115】
取得部230の変数値センサは、抽出部220により抽出された採択条件情報SAの一次情報Acの状態情報としての変数情報に対応付けられた、自端末装置の操作を示す変数情報を、抽出部220を介して判定部240に出力する。また、取得部230の加速度センサは、抽出部220により抽出された採択条件情報SAの一次情報Siの状態情報としての加速度情報に対応付けられた、自端末装置の加速度を示す情報を、抽出部220を介して判定部240に出力する。
【0116】
端末装置200の判定部240(
図9を参照)は、採択条件情報SAを示す論理式(
図10を参照)の真偽に基づいて、自端末装置の加速度及び操作が採択条件情報SAを満たしているか否かを判定する。より具体的には、判定部240は、自端末装置の加速度を示す情報と、自端末装置の操作を示す変数情報と、通知情報のメッセージ情報の採択条件情報SAとの一致を、採択条件情報SAの一次情報Si及び一次情報Ac毎に判定し、自端末装置の加速度及び操作が採択条件情報SAを満たしているか否かを判定する。
【0117】
自端末装置の位置が採択条件情報SAを満たしている場合、判定部240は、通知情報のコンテンツ情報を、出力部250に出力する。一方、自端末装置の位置が採択条件情報ADを満たしていない場合、判定部240は、通知情報を棄却(例えば、自端末装置の記憶部から消去)する。
【0118】
端末装置200の出力部250は、通知情報のコンテンツ情報を、判定部240による判定結果に基づいて出力することで、そのコンテンツ情報をユーザに通知する。出力部250は、コンテンツ情報に含まれる文字列(テキスト)について、その書体の色及び大きさを加工し、加工した文字列を表示画面に表示する。ここで、文字列は、ダイアログボックス又はバナーに表示されてもよい。出力部250は、所定の音又は振動を予め出力してから、文字列を表示画面に表示してもよい。
【0119】
これにより、アプリID「1」が示すアプリケーションソフトウェアがバックエンドで動作している端末装置200のうち、所定の領域900−Dに位置し、且つ、移動体800としての電車に乗っているユーザによって操作されている端末装置200(
図11では、端末装置200−1)は、通知情報のコンテンツ情報としての広告コンテンツ情報を表示することができる。
【0120】
プッシュ型配信システム(
図9を参照)は、端末装置200と、サーバ装置100bと、外部サーバ装置700と、を備える。
【0121】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0122】
なお、上記に説明したプッシュ型配信システムの端末装置及びサーバ装置を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、実行処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
【0123】
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0124】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。