(57)【要約】【課題】情報を受け取る装置側の状態に応じた表示を行うこと。【解決手段】情報処理装置１００は、表示情報と、表示情報を表示する表示条件と、情報処理装置１００に関する情報の取得手順とを受け付ける。情報処理装置１００は、受け付けた取得手順に基づき、自装置に関する情報を取得する。情報処理装置１００は、取得した自装置に関する情報が、受け付けた表示条件を満たすか否かを判定する。情報処理装置１００は、判定した判定結果に基づき、受け付けた表示情報の表示を制御する。【選択図】図１
2018010384.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置が実行する表示制御プログラムにおいて、
表示情報と、前記表示情報を表示する表示条件と、前記情報処理装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
処理を前記情報処理装置のコンピュータに実行させることを特徴とする表示制御プログラム。
【請求項２】
前記取得する処理は、
前記取得手順に基づき、近距離無線通信により自装置と無線接続された周辺デバイスから、前記周辺デバイスによって取得された情報を取得する、ことを特徴とする請求項１に記載の表示制御プログラム。
【請求項３】
前記取得する処理は、
前記取得手順に基づき、自装置が有するセンサによって取得された情報を取得する、ことを特徴とする請求項２に記載の表示制御プログラム。
【請求項４】
前記取得する処理は、
前記取得手順に基づき、ネットワークを介して、前記周辺デバイスまたは前記センサから取得した情報を情報提供サーバに送信することにより、前記情報提供サーバから当該情報に基づき提供される情報を取得する、ことを特徴とする請求項３に記載の表示制御プログラム。
【請求項５】
前記受け付ける処理は、
ネットワークを介して、プッシュ型のサービスを提供するサーバから、スクリプト言語によって記述された、前記表示情報と前記表示条件と前記取得手順とを含むスクリプトデータを受け付ける、ことを特徴とする請求項１〜４のいずれか一つに記載の表示制御プログラム。
【請求項６】
情報処理装置が実行する表示制御方法において、
表示情報と、前記表示情報を表示する表示条件と、前記情報処理装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
処理を前記情報処理装置のコンピュータが実行することを特徴とする表示制御方法。
【請求項７】
表示情報と、前記表示情報を表示する表示条件と、自装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
制御部を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御プログラム、表示制御方法、および情報処理装置に関する。
【背景技術】
【０００２】
従来、スマートフォンや携帯電話機などの端末に情報を通知する手段として、プッシュ通知がある。プッシュ通知は、ユーザの能動的な操作を伴わず、ユーザの端末に情報が自動的に配信される仕組みである。プッシュ通知により送られる情報としては、例えば、電子メール、災害情報、電子クーポンなどがある。
【０００３】
先行技術としては、例えば、それぞれが複数のアトラクションのいずれか１つに関連付けられている複数の無線アクセスポイントを備えたネットワーク内で使用される携帯情報端末がある。この携帯情報端末は、ネットワークの無線アクセスポイントとの無線通信を行う無線通信回路と、携帯情報端末が通信を行う無線アクセスポイントに従って変化をするインタラクティブインターフェースとを備える。
【０００４】
また、情報処理端末が、入力又は検知される情報に基づく識別情報を情報管理装置に送信して、第一のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）と第二のＵＲＬとを情報管理装置から受信し、第一のＵＲＬに係るコンテンツデータを取得して、第二のＵＲＬへの参照情報を挿入する技術がある。第一のＵＲＬは、識別情報に対応付けられて情報管理装置に記憶されているＵＲＬである。第二のＵＲＬは、第一のＵＲＬに係るコンテンツデータに関する処理を情報処理端末に実行させるスクリプトに対する１以上のＵＲＬである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００９−５１２２３９号公報
【特許文献２】特開２０１５−１９１５０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術では、プッシュ通知による情報を受け取った際の端末側の状態（ユーザや端末本体の状態）に応じて、表示の有無を決めたり、表示内容を変更したりすることが難しい。例えば、情報を受け取る側の装置構成によっては、ユーザ等の状態を判断できず、メッセージの表示有無や表示内容を変更するといった制御を行うことができない場合がある。
【０００７】
一つの側面では、本発明は、情報を受け取る装置側の状態に応じた表示を行うことを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、表示情報と、前記表示情報を表示する表示条件と、情報処理装置に関する情報の取得手順とを受け付け、受け付けた前記取得手順に基づき、自装置に関する情報を取得し、取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する表示制御プログラム、表示制御方法、および情報処理装置が提案される。
【発明の効果】
【０００９】
本発明の一側面によれば、情報を受け取る装置側の状態に応じた表示を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態にかかる表示制御方法の一実施例を示す説明図である。
【図２】図２は、情報配信システム２００のシステム構成例を示す説明図である。
【図３】図３は、端末Ｔｉのハードウェア構成例を示すブロック図である。
【図４】図４は、プッシュサーバ２０１等のハードウェア構成例を示すブロック図である。
【図５】図５は、ユーザ情報ＤＢ２２０の記憶内容の一例を示す説明図である。
【図６】図６は、利用可能資源ＤＢ２３０の記憶内容の一例を示す説明図である。
【図７】図７は、送信データＤのデータ構造例を示す説明図（その１）である。
【図８】図８は、送信データＤのデータ構造例を示す説明図（その２）である。
【図９】図９は、送信データＤのデータ構造例を示す説明図（その３）である。
【図１０】図１０は、プッシュサーバ２０１の機能的構成例を示すブロック図である。
【図１１】図１１は、プッシュ通知情報テーブル１１００の記憶内容の一例を示す説明図である。
【図１２】図１２は、フィードバック情報テーブル１２００の記憶内容の一例を示す説明図である。
【図１３】図１３は、端末Ｔｉの機能的構成例を示すブロック図である。
【図１４】図１４は、通知画面の画面例を示す説明図（その１）である。
【図１５】図１５は、通知画面の画面例を示す説明図（その２）である。
【図１６】図１６は、プッシュサーバ２０１の通知処理手順の一例を示すフローチャートである。
【図１７】図１７は、端末Ｔｉの表示制御処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下に図面を参照して、本発明にかかる表示制御プログラム、表示制御方法、および情報処理装置の実施の形態を詳細に説明する。
【００１２】
（実施の形態）
図１は、実施の形態にかかる表示制御方法の一実施例を示す説明図である。図１において、情報処理装置１００は、表示情報の表示を制御するコンピュータである。情報処理装置１００は、例えば、スマートフォン、携帯電話機、タブレットＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などである。
【００１３】
表示情報は、外部のコンピュータから情報処理装置１００に送信される情報である。表示情報は、例えば、プッシュ型のサービスを提供するサーバからプッシュ通知により送信される。表示情報としては、例えば、各種メッセージ、広告情報、災害情報、渋滞情報、運行情報などが挙げられる。
【００１４】
ここで、プッシュ通知では、サーバ側が指定した複数のユーザ（端末）にデータを一斉送信することができる。一方で、端末側でデータを受け取った際の端末やユーザの状態に応じて、メッセージの表示の有無を決めたり、メッセージの表示内容を変更したりすることが望ましい場合がある。
【００１５】
例えば、気温や湿度が高く熱中症の危険が高まっているときに、こまめな水分補給や休憩を促すメッセージをプッシュ通知で送信するとする。このメッセージは、屋外で行動している人には、注意喚起となって有用な情報であるといえる。一方で、屋内などの温度、湿度ともに快適な場所にいる人にとっては、メッセージがわずらわしいものとなることがある。
【００１６】
このため、例えば、端末が有するセンサ（温度センサ、湿度センサ等）の情報をサーバにアップし、サーバ側でセンサの情報をもとに周囲の温度や湿度を判断して、快適な環境下にいる端末へはプッシュ通知しないというやり方が考えられる。ところが、このやり方では、端末からサーバにセンサの情報を送信することになる。サーバ側にユーザの情報を定期的に通知することはセキュリティ面に不安がある。
【００１７】
この問題を解決する方法として、例えば、プッシュ通知のテキストデータを、表示条件を含んだデータとすることが考えられる。具体的には、端末側でデータを受け取った際に、端末の各種センサの情報から特定される状態と表示条件との比較を行い、メッセージの表示有無や表示内容を変更する。プッシュ通知するデータは、例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）のようなスクリプト言語によって記述される。
【００１８】
しかし、この方法では、プッシュ通知によるデータを受信した端末がセンサを有していない場合には、表示条件との比較ができず、メッセージの表示有無や表示内容を変更することができない。また、端末が有するセンサの情報だけでは判断できない表示条件を指定することができない。
【００１９】
そこで、本実施の形態では、装置構成の違いといった、情報を受け取る装置側のばらつきによる表示情報の表示への影響を抑制して、ユーザ等の状態に応じた表示を行う表示制御方法について説明する。以下、情報処理装置１００の処理例について説明する。
【００２０】
（１）情報処理装置１００は、表示情報と、表示情報を表示する表示条件と、情報処理装置１００に関する情報の取得手順とを受け付ける。ここで、表示情報は、例えば、プッシュ型のサービスを提供するサーバからプッシュ通知により送信される表示対象となる情報である。表示条件は、表示情報を表示するか否かを決定するための条件である。
【００２１】
情報処理装置１００に関する情報は、装置本体や周囲の状態を特定する情報であってもよく、また、情報処理装置１００のユーザについての情報（例えば、生体情報）であってもよい。すなわち、情報処理装置１００に関する情報は、装置本体やユーザの状態を特定するための情報である。
【００２２】
取得手順は、情報処理装置１００の周辺デバイスや各種センサ、あるいは、任意のサーバなどから情報を取得する指示（命令、手順）を示す。周辺デバイスは、近距離無線通信により情報処理装置１００と通信可能なデバイスである。各種センサは、情報処理装置１００が有するセンサであり、例えば、温度センサや湿度センサなどである。任意のサーバは、任意に指定可能なサーバであり、例えば、何らかの情報をもとに新たな情報を提供する情報提供サーバである。
【００２３】
図１の例では、情報処理装置１００は、プッシュ型のサービスを提供するサーバから、スクリプトデータ１１０を受け付けた場合を想定する。スクリプトデータ１１０は、スクリプト言語によって記述されており、コンパイラによる機械語への変換をせずに直接実行することができる情報である。
【００２４】
スクリプトデータ１１０は、表示情報１１１と、表示情報１１１を表示する表示条件１１２と、情報処理装置１００に関する情報の取得手順１１３とを含む。ここでは、表示情報１１１は、熱中症を防止するために、こまめな水分補給や休憩を促すメッセージである場合を想定する。
【００２５】
（２）情報処理装置１００は、受け付けた取得手順に基づき、自装置に関する情報を取得する。図１の例では、情報処理装置１００は、受け付けたスクリプトデータ１１０を解析して、取得手順１１３に従って、情報処理装置１００に関する情報を取得する。ここでは、情報処理装置１００が、温度センサ、湿度センサを有しておらず、近距離無線通信により無線接続された周辺デバイス１２０から、周辺デバイス１２０によって取得された温度と湿度の情報を取得した場合を想定する。
【００２６】
（３）情報処理装置１００は、取得した自装置に関する情報が、受け付けた表示条件を満たすか否かを判定する。図１の例では、情報処理装置１００は、周辺デバイス１２０から取得した情報が、表示条件１１２を満たすか否かを判定する。ここでは、表示条件１１２が、温度と湿度がともに閾値以上であるという条件である場合を想定する。温度、湿度それぞれの閾値は、例えば、熱中症の危険性が高くなる温度、湿度に設定される。
【００２７】
（４）情報処理装置１００は、判定した判定結果に基づき、受け付けた表示情報の表示を制御する。図１の例では、情報処理装置１００は、周辺デバイス１２０から取得した情報が表示条件１１２を満たすと判定した場合、表示情報１１１を表示する。すなわち、周辺デバイス１２０から取得した情報が示す温度と湿度がともに閾値以上であれば、熱中症の危険性が高いため、情報処理装置１００は表示情報１１１を表示する。
【００２８】
一方、情報処理装置１００は、周辺デバイス１２０から取得した情報が表示条件１１２を満たさないと判定した場合、表示情報１１１を表示しない。すなわち、周辺デバイス１２０から取得した情報が示す温度と湿度がともに閾値未満であれば、熱中症の危険性が高くないため、情報処理装置１００は表示情報１１１を表示しない。
【００２９】
このように、情報処理装置１００によれば、表示情報と、表示情報を表示する表示条件と、情報処理装置１００に関する情報の取得手順とを受け付けることができる。そして、情報処理装置１００によれば、受け付けた取得手順に基づき、自装置に関する情報を取得し、取得した自装置に関する情報が、受け付けた表示条件を満たすか否かを判定し、判定した判定結果に基づき、受け付けた表示情報の表示を制御することができる。
【００３０】
これにより、装置構成の違いといった、情報を受け取る装置側のばらつきによる表示情報の表示への影響を抑制することができる。このため、装置側で情報を受け付けた際のユーザ等の状態に応じて、表示の有無を決めたり、表示内容を変更したりすることが可能となり、プッシュ通知による効果的な情報提供を行うことができる。
【００３１】
図１の例では、情報処理装置１００が温度センサや湿度センサを有していなくても、周辺デバイス１２０から温度と湿度の情報を取得して表示条件１１２と比較することができ、その結果に応じて表示情報１１１の表示を制御することができる。これにより、気温や湿度が高く熱中症の危険性が高い状態にあるユーザに対して、こまめな水分補給や休憩を促すメッセージを表示して注意喚起することができる。換言すれば、熱中症の危険性が高くない状態にあるユーザに対しては過剰な注意喚起を防いで、情報提供がユーザにとってわずらわしいものとなることを防ぐことができる。
【００３２】
（情報配信システム２００のシステム構成例）
つぎに、実施の形態にかかる情報配信システム２００について説明する。
【００３３】
図２は、情報配信システム２００のシステム構成例を示す説明図である。図２において、情報配信システム２００は、端末Ｔ１〜Ｔｎ（ｎは、２以上の自然数）と、プッシュサーバ２０１と、情報提供サーバ２０２と、を含む。情報配信システム２００において、端末Ｔ１〜Ｔｎ、プッシュサーバ２０１および情報提供サーバ２０２は、有線または無線のネットワーク２１０を介して接続される。ネットワーク２１０は、例えば、インターネット、移動体通信網、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などである。
【００３４】
端末Ｔ１〜Ｔｎは、情報配信システム２００のユーザが使用するコンピュータであり、例えば、スマートフォン、携帯電話機、タブレットＰＣなどである。図１に示した情報処理装置１００は、例えば、端末Ｔ１〜Ｔｎのうちのいずれかに対応する。
【００３５】
以下の説明では、端末Ｔ１〜Ｔｎのうちの任意の端末を「端末Ｔｉ」と表記する場合がある（ｉ＝１，２，…，ｎ）。
【００３６】
端末Ｔｉは、近距離無線通信により周辺デバイスｄｖと通信可能である。周辺デバイスｄｖは、例えば、ｂｌｕｅｔｏｏｔｈ（登録商標）によりペアリングされたウェアラブル端末や、無線ＬＡＮのアクセスポイント、あるいは、ビーコン信号を発信するビーコン装置などである。ウェアラブル端末は、ユーザが身につけて移動したり操作したりできるデバイスである。ウェアラブル端末としては、例えば、時計型デバイス、メガネ型デバイス、ペンダント型デバイスなどがある。
【００３７】
プッシュサーバ２０１は、ユーザ情報ＤＢ（Ｄａｔａｂａｓｅ）２２０、利用可能資源ＤＢ２３０および送信データＤＢ２４０を有し、プッシュ通知により端末Ｔｉに送信データＤを送信するコンピュータである。ユーザ情報ＤＢ２２０および利用可能資源ＤＢ２３０の記憶内容については、図５および図６を用いて後述する。
【００３８】
送信データＤＢ２４０は、送信データＩＤ（ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）と送信データＤとを対応付けて記憶する。送信データＩＤは、送信データＤを一意に識別する識別子である。送信データＤは、スクリプト言語によって記述された、コンパイラによる機械語への変換をせずに直接実行することができるスクリプトデータである。
【００３９】
また、送信データＤＢ２４０において、各送信データＤは、例えば、当該送信データＤがどの利用可能資源に対応するものであるかを示す情報と対応付けて記憶されている。利用可能資源とは、送信データＤの実行時に端末Ｔｉにおいて利用可能な資源であり、例えば、端末Ｔｉが有するセンサ、近距離無線通信により無線接続される周辺デバイスｄｖ、およびネットワーク２１０を介して接続される情報提供サーバ２０２などである。送信データＤのデータ構造例については、図７〜図９を用いて後述する。
【００４０】
情報提供サーバ２０２は、端末Ｔｉから送信される情報をもとに新たな情報を提供するコンピュータである。例えば、情報提供サーバ２０２は、端末Ｔｉの位置情報（例えば、緯度、経度、高度）を受信すると、端末Ｔｉの位置情報に対応する住所を特定して、特定した住所を示す住所情報を端末Ｔｉに送信することができる。これにより、端末Ｔｉの位置情報を住所に変換して提供することができる。
【００４１】
なお、図２の例では、プッシュサーバ２０１と情報提供サーバ２０２とを別々に設けることにしたが、これに限らない。例えば、プッシュサーバ２０１が、情報提供サーバ２０２の機能を有することにしてもよい。
【００４２】
（端末Ｔｉのハードウェア構成例）
つぎに、端末Ｔｉのハードウェア構成例について説明する。
【００４３】
図３は、端末Ｔｉのハードウェア構成例を示すブロック図である。図３において、端末Ｔｉは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、メモリ３０２と、各種センサ３０３と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０４と、ディスプレイ３０５と、入力装置３０６と、を有する。また、各構成部はバス３００によってそれぞれ接続される。
【００４４】
ここで、ＣＰＵ３０１は、端末Ｔｉの全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。
【００４５】
各種センサ３０３は、例えば、温度センサ、湿度センサ、傾きセンサ（加速度センサ）、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）ユニットなどを含む。ＧＰＳユニットは、ＧＰＳ衛星からの電波を受信し、端末Ｔｉの位置情報を出力する。端末Ｔｉの位置情報は、例えば、緯度、経度および高度などの地球上の１点を特定する情報を含む。また、端末Ｔｉは、ＤＧＰＳ（Ｄｉｆｆｅｒｅｎｔｉａｌ  ＧＰＳ）により、ＧＰＳユニットから出力される位置情報を補正することにしてもよい。
【００４６】
Ｉ／Ｆ３０４は、無線通信回路とアンテナを有し、ネットワーク２１０を介して他のコンピュータ（例えば、プッシュサーバ２０１、情報提供サーバ２０２）に接続される。そして、Ｉ／Ｆ３０４は、ネットワーク２１０と自装置内部とのインターフェースを司り、他のコンピュータからのデータの入出力を制御する。
【００４７】
ディスプレイ３０５は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ３０５は、例えば、液晶ディスプレイや有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。
【００４８】
入力装置３０６は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置３０６は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
【００４９】
なお、端末Ｔｉは、上述した構成部のほかに、例えば、ディスクドライブ、ディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等を有することにしてもよい。また、端末Ｔｉは、ＵＳＢメモリ等の補助記憶装置を接続可能であってもよい。
【００５０】
（プッシュサーバ２０１等のハードウェア構成例）
つぎに、プッシュサーバ２０１および情報提供サーバ２０２のハードウェア構成例について説明する。ここでは、プッシュサーバ２０１および情報提供サーバ２０２を「プッシュサーバ２０１等」と表記する。
【００５１】
図４は、プッシュサーバ２０１等のハードウェア構成例を示すブロック図である。図４において、プッシュサーバ２０１等は、ＣＰＵ４０１と、メモリ４０２と、Ｉ／Ｆ４０３と、ディスクドライブ４０４と、ディスク４０５と、を有する。また、各構成部は、バス４００によってそれぞれ接続される。
【００５２】
ここで、ＣＰＵ４０１は、プッシュサーバ２０１等の全体の制御を司る。メモリ４０２は、例えば、ＲＯＭ、ＲＡＭおよびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ４０１のワークエリアとして使用される。メモリ４０２に記憶されるプログラムは、ＣＰＵ４０１にロードされることで、コーディングされている処理をＣＰＵ４０１に実行させる。
【００５３】
Ｉ／Ｆ４０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して外部のコンピュータ（例えば、図２に示した端末Ｔ１〜Ｔｎ）に接続される。そして、Ｉ／Ｆ４０３は、ネットワーク２１０と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。Ｉ／Ｆ４０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００５４】
ディスクドライブ４０４は、ＣＰＵ４０１の制御に従ってディスク４０５に対するデータのリード／ライトを制御する。ディスク４０５は、ディスクドライブ４０４の制御で書き込まれたデータを記憶する。ディスク４０５としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００５５】
なお、プッシュサーバ２０１等は、上述した構成部のほかに、例えば、ＳＳＤ、キーボード、マウス、ディスプレイ等を有することにしてもよい。また、プッシュサーバ２０１等は、ＵＳＢメモリ等の補助記憶装置を接続可能であってもよい。
【００５６】
（ユーザ情報ＤＢ２２０および利用可能資源ＤＢ２３０の記憶内容）
つぎに、図５および図６を用いて、プッシュサーバ２０１が有するユーザ情報ＤＢ２２０および利用可能資源ＤＢ２３０の記憶内容について説明する。なお、プッシュサーバ２０１が有する各種ＤＢ２２０，２３０，２４０は、例えば、図４に示したメモリ４０２、ディスク４０５等の記憶装置により実現される。
【００５７】
図５は、ユーザ情報ＤＢ２２０の記憶内容の一例を示す説明図である。図５において、ユーザ情報ＤＢ２２０は、ユーザＩＤ、ユーザ名、端末ＩＤおよびアドレスのフィールドを有し、各フィールドに情報を設定することで、ユーザ情報５００−１〜５００−ｎをレコードとして記憶する。
【００５８】
ここで、ユーザＩＤは、情報配信システム２００のユーザを一意に識別する識別子である。ユーザ名は、ユーザの名称である。端末ＩＤは、ユーザが使用する端末Ｔｉを一意に識別する識別子である。アドレスは、端末Ｔｉのメールアドレスである。例えば、ユーザ情報５００−１は、ユーザＩＤ「Ｕ１」のユーザのユーザ名「富士太郎」、端末ＩＤ「Ｔ１」およびアドレス「・・・」を示す。
【００５９】
図６は、利用可能資源ＤＢ２３０の記憶内容の一例を示す説明図である。図６において、利用可能資源ＤＢ２３０は、端末ＩＤおよび各種可否フラグのフィールドを有し、各フィールドに情報を設定することで、利用可能資源情報６００−１〜６００−ｎをレコードとして記憶する。各種可否フラグは、ＧＰＳ可否フラグ、ｂｌｕｅｔｏｏｔｈ可否フラグ、温度センサ可否フラグ、湿度センサ可否フラグ、傾きセンサ可否フラグ、マナーモード状態可否フラグ、周辺探索可否フラグ、サーバ通信可否フラグおよびフィードバック可否フラグである。
【００６０】
端末ＩＤは、端末Ｔｉを一意に識別する識別子である。各種可否フラグ（フィードバック可否フラグを除く）は、端末Ｔｉの利用可能資源を示す情報である。ここでは、各種可否フラグが「１」の場合は、利用可能な資源であることを示す。各種可否フラグが「０」の場合は、利用可能な資源ではないことを示す。
【００６１】
具体的には、ＧＰＳ可否フラグは、ＧＰＳユニットの利用を許可するか否かを示す情報である。ｂｌｕｅｔｏｏｔｈ可否フラグは、ｂｌｕｅｔｏｏｔｈ（登録商標）によりペアリングされた周辺デバイスｄｖの利用を許可するか否かを示す情報である。温度センサ可否フラグは、温度センサの利用を許可するか否かを示す情報である。湿度センサ可否フラグは、湿度センサの利用を許可するか否かを示す情報である。
【００６２】
傾きセンサ可否フラグは、傾きセンサの利用を許可するか否かを示す情報である。マナーモード状態可否フラグは、マナーモードの設定状態を示す情報の利用を許可するか否かを示す情報である。周辺探索可否フラグは、無線ＬＡＮにより接続される周辺デバイス（アクセスポイント）の利用を許可するか否かを示す情報である。サーバ通信可否フラグは、情報提供サーバ２０２の利用を許可するか否かを示す情報である。
【００６３】
また、フィードバック可否フラグは、フィードバック情報の送信を許可するか否かを示す情報である。ここでは、フィードバック可否フラグが「１」の場合は、フィードバック情報の送信を許可することを示す。フィードバック可否フラグが「０」の場合は、フィードバック情報の送信を許可しないことを示す。
【００６４】
（送信データＤのデータ構造例）
つぎに、図７〜図９を用いて、送信データＤのデータ構造例について説明する。なお、図７〜図９では、送信データＤを簡略化して示している。
【００６５】
図７は、送信データＤのデータ構造例を示す説明図（その１）である。図７において、送信データＤ１は、ＧＰＳユニットの利用が許可（ＧＰＳ可否フラグ「１」）され、情報提供サーバ２０２の利用が許可（サーバ通信可否フラグ「１」）されている端末向けの送信データＤのデータ構造例を示す。
【００６６】
送信データＤ１は、表示情報（符号７０１）と、表示条件（符号７０３，７０５）と、取得手順（符号７０２，７０４）と、を含む。送信データＤ１は、スクリプト言語によって記述されており、コンパイラによる機械語への変換をせずに直接実行することができる。送信データＤ１を実行時の端末Ｔｉの動作は、以下の通りである。
【００６７】
まず、端末Ｔｉは、送信データＤ１に記述された取得手順（符号７０２）に基づき、ＧＰＳユニットの位置情報の取得を試みる。ここで、ＧＰＳユニットの位置情報を取得できなければ、端末Ｔｉは、表示条件（符号７０３）に従って、表示情報（符号７０１）の１を表示する。一方、ＧＰＳユニットの位置情報を取得できれば、端末Ｔｉは、取得手順（符号７０４）に基づき、ＧＰＳユニットの位置情報をもとに情報提供サーバ２０２からの情報の取得を試みる。
【００６８】
ここで、情報提供サーバ２０２からの情報を取得できなければ、端末Ｔｉは、表示条件（符号７０５）に従って、表示情報（符号７０１）の２を表示する。一方、情報提供サーバ２０２からの情報を取得できれば、端末Ｔｉは、表示条件（符号７０５）に従って、情報提供サーバ２０２から取得した情報を表示する。
【００６９】
図８は、送信データＤのデータ構造例を示す説明図（その２）である。図８において、送信データＤ２は、ＧＰＳユニットの利用が許可（ＧＰＳ可否フラグ「１」）され、情報提供サーバ２０２の利用が不許可（サーバ通信可否フラグ「０」）となっている端末向けの送信データＤのデータ構造例を示す。
【００７０】
送信データＤ２は、表示情報（符号８０１）と、表示条件（符号８０３）と、取得手順（符号８０２）と、を含む。送信データＤ２は、スクリプト言語によって記述されており、コンパイラによる機械語への変換をせずに直接実行することができる。送信データＤ２を実行時の端末Ｔｉの動作は、以下の通りである。
【００７１】
まず、端末Ｔｉは、送信データＤ２に記述された取得手順（符号８０２）に基づき、ＧＰＳユニットの位置情報の取得を試みる。ここで、ＧＰＳユニットの位置情報を取得できなければ、端末Ｔｉは、表示条件（符号８０３）に従って、表示情報（符号８０１）の１を表示する。一方、ＧＰＳユニットの位置情報を取得できれば、端末Ｔｉは、表示条件（符号８０３）に従って、表示情報（符号８０１）の２を表示する。
【００７２】
図９は、送信データＤのデータ構造例を示す説明図（その３）である。図９において、送信データＤ３は、ＧＰＳユニットおよび情報提供サーバ２０２の利用がともに不許可（ＧＰＳ可否フラグ「０」、サーバ通信可否フラグ「０」）となっている端末向けの送信データＤのデータ構造例を示す。
【００７３】
送信データＤ３は、表示情報（符号９０１）と、表示条件（符号９０２）とを含む。送信データＤ３は、スクリプト言語によって記述されており、コンパイラによる機械語への変換をせずに直接実行することができる。送信データＤ３を実行時の端末Ｔｉの動作は、以下の通りである。
【００７４】
端末Ｔｉは、表示条件（符号９０２）に従って、表示情報（符号９０１）の１を表示する。すなわち、送信データＤ３の場合、端末Ｔｉは、プッシュ通知により送信されてきた表示情報を表示するだけである。
【００７５】
なお、図示は省略するが、端末Ｔｉからプッシュサーバ２０１に対してフィードバック情報を送信する場合、各送信データＤ１〜Ｄ３には、フィードバック情報の送信手順が記述される。
【００７６】
（プッシュサーバ２０１の機能的構成例）
つぎに、プッシュサーバ２０１の機能的構成例について説明する。
【００７７】
図１０は、プッシュサーバ２０１の機能的構成例を示すブロック図である。図１０において、プッシュサーバ２０１は、受付部１００１と、決定部１００２と、通信制御部１００３と、を含む構成である。受付部１００１〜通信制御部１００３は制御部となる機能であり、具体的には、例えば、図４に示したメモリ４０２、ディスク４０５などの記憶装置に記憶されたプログラムをＣＰＵ４０１に実行させることにより、または、Ｉ／Ｆ４０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ４０２、ディスク４０５などの記憶装置に記憶される。
【００７８】
受付部１００１は、プッシュ通知の対象となる送信データＤを受け付ける。ここで、送信データＤは、表示情報と、表示情報を表示する表示条件と、端末Ｔｉに関する情報の取得手順とを含む。表示情報は、表示対象となる情報である。表示条件は、表示情報を表示するか否かを決定するための条件である。
【００７９】
端末Ｔｉに関する情報は、端末Ｔｉ本体や周囲の状態を特定する情報や、端末Ｔｉのユーザについての情報（例えば、生体情報）である。端末Ｔｉに関する情報は、例えば、端末Ｔｉが有する各種センサ３０３（図３参照）、近距離無線通信により端末Ｔｉと無線接続される周辺デバイスｄｖ、あるいは、ネットワーク２１０を介して端末Ｔｉと接続される情報提供サーバ２０２から取得される。
【００８０】
取得手順は、各種センサ３０３、周辺デバイスｄｖ、情報提供サーバ２０２等から端末Ｔｉに関する情報を取得する指示（命令、手順）を示す。例えば、送信データＤは、図７〜図９に示したような、スクリプト言語によって記述された、コンパイラによる機械語への変換をせずに直接実行することができるスクリプトデータである。
【００８１】
また、送信データＤは、フィードバック情報の送信手順を含むことにしてもよい。ここで、フィードバック情報とは、送信データＤが送信された端末Ｔｉにおいて表示された表示情報を特定する情報である。送信手順は、プッシュサーバ２０１へフィードバック情報を送信する指示（命令、手順）を示す。
【００８２】
具体的には、例えば、受付部１００１は、Ｉ／Ｆ４０３により、外部のコンピュータから、プッシュ通知の対象となる送信データＤを受け付ける。外部のコンピュータは、例えば、オペレータが使用するＰＣである。また、例えば、受付部１００１は、不図示のキーボードやマウス等を用いたオペレータの操作入力により、プッシュ通知の対象となる送信データＤを受け付けることにしてもよい。
【００８３】
受け付けた送信データＤは、例えば、送信データＩＤと対応付けて、送信データＤＢ２４０（図２参照）に記憶される。
【００８４】
なお、送信データＤは、例えば、端末Ｔｉの利用可能資源を考慮して作成される。具体的には、例えば、作成者は、利用可能資源ＤＢ２３０（図６参照）に記憶された各種可否フラグのうち任意に選んだ可否フラグの組合せごとに、当該可否フラグが全て「１」である、すなわち、全て許可されている場合を想定して送信データＤを作成する。これにより、どの資源の利用を許可しているかによって様々なバリエーションの送信データＤを作成することができる。
【００８５】
決定部１００２は、端末Ｔｉに送信する送信データＤを決定する。具体的には、例えば、まず、決定部１００２は、利用可能資源ＤＢ２３０を参照して、端末Ｔｉの利用可能資源を特定する。そして、決定部１００２は、送信データＤＢ２４０を参照して、特定した利用可能資源に対応する送信データＤを、端末Ｔｉに送信する送信データＤに決定する。
【００８６】
例えば、端末Ｔｉの利用可能資源が、ＧＰＳユニットおよび情報提供サーバ２０２のみであるとする。この場合、ＧＰＳユニットおよび情報提供サーバ２０２の利用が許可されている場合を想定して作成された送信データＤ（例えば、図７に示した送信データＤ１）が、端末Ｔｉに送信する送信データＤに決定される。
【００８７】
決定された決定結果は、例えば、図１１に示すようなプッシュ通知情報テーブル１１００に記憶される。プッシュ通知情報テーブル１１００は、例えば、メモリ４０２、ディスク４０５などの記憶装置により実現される。ここで、プッシュ通知情報テーブル１１００の記憶内容について説明する。
【００８８】
図１１は、プッシュ通知情報テーブル１１００の記憶内容の一例を示す説明図である。図１１において、プッシュ通知情報テーブル１１００は、送信データＩＤおよび端末ＩＤのフィールドを有し、各フィールドに情報を設定することで、プッシュ通知情報（例えば、プッシュ通知情報１１００−１，１１００−２）をレコードとして記憶する。
【００８９】
ここで、送信データＩＤは、端末Ｔｉに送信する送信データＤを一意に識別する識別子である。端末ＩＤは、送信データＤの送信先である端末Ｔｉを一意に識別する識別子である。例えば、プッシュ通知情報１１００−１は、端末Ｔ１に送信する送信データＤの送信データＩＤ「Ｄ１」を示す。
【００９０】
図１０の説明に戻り、通信制御部１００３は、端末Ｔｉに送信データＤを送信する。具体的には、例えば、通信制御部１００３は、プッシュ通知情報テーブル１１００を参照して、各端末Ｔｉに送信する送信データＤを特定し、特定した送信データＤを各端末Ｔｉにプッシュ通知により送信する。なお、送信データＤの宛先として設定される端末Ｔｉのアドレスは、例えば、ユーザ情報ＤＢ２２０から特定される。
【００９１】
通信制御部１００３は、端末Ｔｉからフィードバック情報を受信する。フィードバック情報には、例えば、端末Ｔｉの端末ＩＤ、送信データＤの送信データＩＤ、および表示情報を特定する情報（表示無しを含む）が含まれる。
【００９２】
例えば、端末Ｔｉに送信データＤ１（図７参照）が送信された結果、表示情報（符号７０１）の１が表示されたとする。また、送信データＤ１には、プッシュサーバ２０１に対してフィードバック情報を送信する命令が含まれているとする。この場合、送信データＤ１の表示情報（符号７０１）の１が表示されたことを示すフィードバック情報が、端末Ｔｉからプッシュサーバ２０１に送信される。
【００９３】
受信されたフィードバック情報は、例えば、図１２に示すようなフィードバック情報テーブル１２００に記憶される。フィードバック情報テーブル１２００は、例えば、メモリ４０２、ディスク４０５などの記憶装置により実現される。ここで、フィードバック情報テーブル１２００の記憶内容について説明する。
【００９４】
図１２は、フィードバック情報テーブル１２００の記憶内容の一例を示す説明図である。図１２において、フィードバック情報テーブル１２００は、端末ＩＤ、送信データＩＤおよびフィードバック情報のフィールドを有し、各フィールドに情報を設定することで、フィードバック情報（例えば、フィードバック情報１２００−１）をレコードとして記憶する。
【００９５】
例えば、フィードバック情報１２００−１は、端末Ｔ１において送信データＤ１の表示情報に含まれるｍｅｓｓａｇｅ１が表示されたことを示す。
【００９６】
通信制御部１００３は、端末Ｔｉから受信したフィードバック情報を出力する。具体的には、例えば、通信制御部１００３は、フィードバック情報テーブル１２００内のフィードバック情報を、オペレータ（例えば、情報配信システム２００の管理者）が使用するＰＣなどに送信することにしてもよい。
【００９７】
例えば、フィードバック情報１２００−１によれば、オペレータは、送信データＤ１が端末Ｔ１に送信された結果、端末Ｔ１においてＧＰＳユニットの位置情報を取得できず、送信データＤ１の表示情報（符号７０１）の１が表示されたことがわかる。
【００９８】
（端末Ｔｉの機能的構成例）
図１３は、端末Ｔｉの機能的構成例を示すブロック図である。図１３において、端末Ｔｉは、通信制御部１３０１と、取得部１３０２と、判定部１３０３と、表示制御部１３０４と、を含む構成である。通信制御部１３０１〜表示制御部１３０４は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０４により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２に記憶される。
【００９９】
通信制御部１３０１は、表示情報と、表示情報を表示する表示条件と、自端末に関する情報の取得手順とを含む送信データＤを受信する。送信データＤには、フィードバック情報の送信手順が含まれていてもよい。具体的には、例えば、通信制御部１３０１は、プッシュサーバ２０１からプッシュ通知により送信される送信データＤを受信する。
【０１００】
取得部１３０２は、受信された送信データＤに含まれる取得手順に基づき、自端末に関する情報を取得する。具体的には、例えば、取得部１３０２は、受信された送信データＤを読み込んで解析し、取得手順に従って、自端末に関する情報を取得する。
【０１０１】
より具体的には、例えば、取得部１３０２は、取得手順に基づき、近距離無線通信により自端末と無線接続された周辺デバイスｄｖから、周辺デバイスｄｖによって取得された情報を取得する。周辺デバイスｄｖは、例えば、ｂｌｕｅｔｏｏｔｈ（登録商標）によりペアリングされたウェアラブル端末や、無線ＬＡＮのアクセスポイントなどである。周辺デバイスｄｖから取得される情報としては、例えば、ウェアラブル端末から取得される端末Ｔｉのユーザの体温、血圧、脈拍、心拍数等の生体情報や、アクセスポイントから取得される位置情報（アクセスポイントの設置場所名など）がある。
【０１０２】
また、取得部１３０２は、取得手順に基づき、自端末が有する各種センサ３０３によって取得された情報を取得する。各種センサ３０３から取得される情報としては、例えば、温度センサ、湿度センサ、傾きセンサ、ＧＰＳユニット等の出力値がある。また、例えば、取得部１３０２は、取得手順に基づき、自端末の設定情報を取得する。設定情報は、例えば、端末Ｔｉにおけるマナーモードの設定状況を示す情報である。
【０１０３】
また、取得部１３０２は、取得手順に基づき、ネットワーク２１０を介して、周辺デバイスｄｖまたは各種センサ３０３から取得した情報を情報提供サーバ２０２に送信することにより、情報提供サーバ２０２から当該情報に基づき提供される情報を取得する。情報提供サーバ２０２から取得される情報としては、例えば、ＧＰＳユニットの出力値（例えば、緯度、経度、高度）を情報提供サーバ２０２に送信することにより得られる住所情報や渋滞情報などがある。住所情報は、ＧＰＳユニットの出力値に対応する住所を示す情報である。渋滞情報は、ＧＰＳユニットの出力値に対応する住所付近の渋滞状況を示す情報である。
【０１０４】
また、取得部１３０２は、取得手順に基づき、ネットワーク２１０を介して、メモリ３０２に記憶された端末Ｔｉの情報を情報提供サーバ２０２に送信することにより、情報提供サーバ２０２から当該情報に基づき提供される情報を取得することにしてもよい。端末Ｔｉの情報は、例えば、端末Ｔｉの端末ＩＤや、端末ＴｉのユーザのユーザＩＤなどである。端末Ｔｉの情報に基づき情報提供サーバ２０２から取得される情報としては、例えば、端末Ｔｉのユーザについての飛行機や電車の予約情報がある。
【０１０５】
判定部１３０３は、取得された自端末に関する情報が、送信データＤに含まれる表示条件を満たすか否かを判定する。具体的には、例えば、判定部１３０３は、送信データＤを読み込んで解析し、取得された自端末に関する情報が表示条件を満たすか否かを判定する。表示条件としては、例えば、以下に示すようなものが挙げられる。
【０１０６】
・温度が閾値以上あるいは閾値未満であるか？
・湿度が閾値以上あるいは閾値未満であるか？
・体温が閾値以上あるいは閾値未満であるか？
・血圧が閾値以上あるいは閾値未満であるか？
・脈拍が閾値以上あるいは閾値未満であるか？
・心拍数が閾値以上あるいは閾値未満であるか？
・アクセスポイントの設置場所名が特定の場所名であるか？
・住所情報が特定の住所を示す住所情報であるか？
・マナーモードが設定されていないか？
・周辺デバイスｄｖから情報が取得できたか？
・各種センサ３０３から情報が取得できたか？
・情報提供サーバ２０２から情報が取得できたか？
【０１０７】
表示制御部１３０４は、判定された判定結果に基づき、送信データＤに含まれる表示情報の表示を制御する。具体的には、例えば、表示制御部１３０４は、自端末に関する情報が表示条件を満たす場合に、ディスプレイ３０５（図３参照）に表示情報を表示する。また、表示制御部１３０４は、自端末に関する情報が表示条件を満たさない場合には、表示情報を表示しない。
【０１０８】
例えば、取得部１３０２によって、端末Ｔｉと無線接続された周辺デバイスｄｖから体温を示す生体情報が取得され、判定部１３０３によって、当該生体情報が示す体温が閾値以下であるかという表示条件を満たすと判定されたとする。この場合、表示制御部１３０４は、例えば、後述の図１４に示すような通知画面１４００をディスプレイ３０５に表示する。
【０１０９】
また、例えば、取得部１３０２によって、情報提供サーバ２０２から飛行機の予約情報および渋滞情報が取得され、判定部１３０３によって、当該予約情報および渋滞情報が取得できたかという表示条件を満たすと判定されたとする。この場合、表示制御部１３０４は、例えば、後述の図１５に示すような通知画面１５００をディスプレイ３０５に表示する。
【０１１０】
また、通信制御部１３０１は、送信データＤに含まれる送信手順に基づき、フィードバック情報を送信する。具体的には、例えば、通信制御部１３０１は、送信データＤを読み込んで解析し、表示情報の表示の制御が行われた結果、フィードバック情報をプッシュサーバ２０１に送信する。フィードバック情報には、例えば、端末Ｔｉの端末ＩＤ、送信データＤの送信データＩＤ、および表示情報を特定する情報（表示無しを含む）が含まれる。
【０１１１】
（通知画面の画面例）
つぎに、図１４および図１５を用いて、端末Ｔｉのディスプレイ３０５に表示される通知画面の画面例について説明する。
【０１１２】
図１４は、通知画面の画面例を示す説明図（その１）である。図１４において、端末Ｔｉのディスプレイ３０５に通知画面１４００が表示されている。通知画面１４００は、端末Ｔｉと無線接続された周辺デバイスｄｖにより計測されたユーザの体温が閾値以下である場合に表示される表示情報１４０１を含む。ここでは、登山者であるユーザに対して情報通知を行う場合を想定する。
【０１１３】
通知画面１４００によれば、登山者であるユーザに対して、体温が低下しており、このままでは危険な状態に陥る可能性があるため、山小屋等に早めに避難すべきであることを警告することができる。
【０１１４】
図１５は、通知画面の画面例を示す説明図（その２）である。図１５において、端末Ｔｉのディスプレイ３０５に通知画面１５００が表示されている。通知画面１５００は、端末Ｔｉのユーザが予約している当日の飛行機の予約情報および渋滞情報が取得された場合に表示される表示情報１５０１と、ルート探索ボタン１５０２と、を含む。
【０１１５】
通知画面１５００によれば、ユーザに対して、国道４１号線○×交差点で事故が発生したため、飛行機に搭乗するために車で飛行場に向かっている場合は注意すべきであることを警告することができる。また、通知画面１５００において、例えば、図３に示した入力装置３０６を用いたユーザの操作入力により、ルート探索ボタン１５０２を選択すると、経路探索サービスを提供するサーバにアクセスして、飛行場までの回避ルートを探索することができる。
【０１１６】
（プッシュサーバ２０１の通知処理手順）
つぎに、図１６を用いて、プッシュサーバ２０１の通知処理手順について説明する。
【０１１７】
図１６は、プッシュサーバ２０１の通知処理手順の一例を示すフローチャートである。図１６のフローチャートにおいて、まず、プッシュサーバ２０１は、図５に示したユーザ情報ＤＢ２２０から選択されていない未選択のユーザ情報を選択する（ステップＳ１６０１）。
【０１１８】
そして、プッシュサーバ２０１は、利用可能資源ＤＢ２３０から、選択したユーザ情報の端末ＩＤに対応する利用可能資源情報を取得する（ステップＳ１６０２）。つぎに、プッシュサーバ２０１は、送信データＤＢ２４０を参照して、取得した利用可能資源情報から特定される利用可能資源に対応する送信データＤを、端末Ｔｉに送信する送信データＤに決定する（ステップＳ１６０３）。
【０１１９】
そして、プッシュサーバ２０１は、決定した送信データＤの送信データＩＤと、選択したユーザ情報の端末ＩＤとを対応付けて表すプッシュ通知情報をプッシュ通知情報テーブル１１００に登録する（ステップＳ１６０４）。つぎに、プッシュサーバ２０１は、ユーザ情報ＤＢ２２０から選択されていない未選択のユーザ情報があるか否かを判断する（ステップＳ１６０５）。
【０１２０】
ここで、未選択のユーザ情報がある場合（ステップＳ１６０５：Ｙｅｓ）、プッシュサーバ２０１は、ステップＳ１６０１に戻る。一方、未選択のユーザ情報がない場合（ステップＳ１６０５：Ｎｏ）、プッシュサーバ２０１は、送信データＤＢ２４０から選択されていない未選択の送信データＤを選択する（ステップＳ１６０６）。
【０１２１】
そして、プッシュサーバ２０１は、プッシュ通知情報テーブル１１００を参照して、選択した送信データＤの送信データＩＤに対応する端末ＩＤを特定する（ステップＳ１６０７）。つぎに、プッシュサーバ２０１は、ユーザ情報ＤＢ２２０を参照して、特定した端末ＩＤに対応するアドレスを送信データＤの宛先に設定する（ステップＳ１６０８）。
【０１２２】
そして、プッシュサーバ２０１は、宛先を設定した送信データＤをプッシュ通知により一斉送信する（ステップＳ１６０９）。つぎに、プッシュサーバ２０１は、送信データＤＢ２４０から選択されていない未選択の送信データＤがあるか否かを判断する（ステップＳ１６１０）。
【０１２３】
ここで、未選択の送信データＤがある場合（ステップＳ１６１０：Ｙｅｓ）、プッシュサーバ２０１は、ステップＳ１６０６に戻る。一方、未選択の送信データＤがない場合には（ステップＳ１６１０：Ｎｏ）、プッシュサーバ２０１は、本フローチャートによる一連の処理を終了する。
【０１２４】
これにより、端末Ｔｉの利用可能資源に応じた送信データＤを、端末Ｔｉに対してプッシュ通知により送信することができる。
【０１２５】
（端末Ｔｉの表示制御処理手順）
つぎに、図１７を用いて、端末Ｔｉの表示制御処理手順について説明する。
【０１２６】
図１７は、端末Ｔｉの表示制御処理手順の一例を示すフローチャートである。図１７のフローチャートにおいて、まず、端末Ｔｉは、プッシュサーバ２０１から送信データＤを受信したか否かを判断する（ステップＳ１７０１）。ここで、端末Ｔｉは、送信データＤを受信するのを待つ（ステップＳ１７０１：Ｎｏ）。
【０１２７】
そして、端末Ｔｉは、送信データＤを受信した場合（ステップＳ１７０１：Ｙｅｓ）、受信した送信データＤを解析する（ステップＳ１７０２）。つぎに、端末Ｔｉは、近距離無線通信により自端末と無線接続された周辺デバイスｄｖから情報を取得する指示が含まれるか否かを判断する（ステップＳ１７０３）。
【０１２８】
ここで、周辺デバイスｄｖから情報を取得する指示が含まれていない場合（ステップＳ１７０３：Ｎｏ）、端末Ｔｉは、ステップＳ１７０５に移行する。一方、周辺デバイスｄｖから情報を取得する指示が含まれる場合（ステップＳ１７０３：Ｙｅｓ）、端末Ｔｉは、周辺デバイスｄｖから情報を取得する（ステップＳ１７０４）。
【０１２９】
つぎに、端末Ｔｉは、情報提供サーバ２０２から情報を取得する指示が含まれるか否かを判断する（ステップＳ１７０５）。ここで、情報提供サーバ２０２から情報を取得する指示が含まれていない場合（ステップＳ１７０５：Ｎｏ）、端末Ｔｉは、ステップＳ１７０７に移行する。一方、情報提供サーバ２０２から情報を取得する指示が含まれる場合（ステップＳ１７０５：Ｙｅｓ）、端末Ｔｉは、情報提供サーバ２０２から情報を取得する（ステップＳ１７０６）。
【０１３０】
つぎに、端末Ｔｉは、周辺デバイスｄｖおよび／または情報提供サーバ２０２から取得した情報に基づいて、送信データＤに含まれる表示条件を満たすか否かを判定する（ステップＳ１７０７）。ここで、表示条件を満たさない場合（ステップＳ１７０７：Ｎｏ）、端末Ｔｉは、ステップＳ１７１０に移行する。
【０１３１】
一方、表示条件を満たす場合（ステップＳ１７０７：Ｙｅｓ）、端末Ｔｉは、送信データＤに含まれる表示情報、あるいは、周辺デバイスｄｖおよび／または情報提供サーバ２０２から取得した情報に基づいて、通知画面を作成する（ステップＳ１７０８）。つぎに、端末Ｔｉは、作成した通知画面をディスプレイ３０５に表示する（ステップＳ１７０９）。
【０１３２】
そして、端末Ｔｉは、プッシュサーバ２０１にフィードバック情報を送信して（ステップＳ１７１０）、本フローチャートによる一連の処理を終了する。フィードバック情報には、例えば、端末Ｔｉの端末ＩＤ、送信データＤの送信データＩＤ、および表示情報を特定する情報（表示無しを含む）が含まれる。
【０１３３】
これにより、プッシュサーバ２０１から送信データＤを受信した際のユーザや端末本体の状態に応じて、表示の有無を決めたり、表示内容を変更したりすることができる。
【０１３４】
以上説明したように、実施の形態にかかるプッシュサーバ２０１によれば、スクリプト言語によって記述された、表示情報と、表示情報を表示する表示条件と、端末Ｔｉに関する情報の取得手順とを含む送信データＤを、端末Ｔｉに対してプッシュ通知により送信することができる。
【０１３５】
これにより、サーバ側で様々な表示条件を設定して、端末Ｔｉにおける表示情報の表示を制御させることができる。また、端末側の装置構成の違いなどを想定して、表示条件と比較するための情報の取得手順を定めておくことで、端末側のばらつきによる表示情報の表示への影響を抑制することができる。また、ＪａｖａＳｃｒｉｐｔのようなスクリプト言語を利用することで、送信データＤを比較的簡易に作成でき、表示情報や表示条件の変更、追加等にかかる作業負荷を抑えることができる。
【０１３６】
また、プッシュサーバ２０１によれば、端末Ｔｉの利用可能資源に基づいて、端末Ｔｉに送信する送信データＤを決定することができる。これにより、端末Ｔｉで利用できない資源にかかる記述、例えば、当該資源からの情報の取得手順の記述等を含まない送信データＤを選んで端末Ｔｉに送信することができ、データサイズを削減して通信量を抑えることができる。
【０１３７】
また、プッシュサーバ２０１によれば、端末Ｔｉからフィードバック情報を受信して、受信したフィードバック情報を出力することができる。出力形式としては、例えば、Ｉ／Ｆ４０３による外部のコンピュータへの送信、メモリ４０２、ディスク４０５などの記憶装置への記憶、不図示のディスプレイへの表示などがある。
【０１３８】
これにより、どのような情報が表示されやすく、どのような情報が表示されにくいのかといった特徴を把握しやすくさせることができる。この結果、例えば、地域、時期、時間帯等に応じて異なる傾向を見出すことが可能となり、ユーザにとってより有用な情報となる送信データＤの作成を支援することができる。
【０１３９】
また、実施の形態にかかる端末Ｔｉによれば、プッシュサーバ２０１から、スクリプト言語によって記述された、表示情報と、表示情報を表示する表示条件と、自端末に関する情報の取得手順と、を含む送信データＤを受信することができる。そして、端末Ｔｉによれば、送信データＤに含まれる取得手順に基づき、自端末に関する情報を取得し、取得した自端末に関する情報が、送信データＤに含まれる表示条件を満たすか否かを判定し、判定した判定結果に基づき、送信データＤに含まれる表示情報の表示を制御することができる。
【０１４０】
これにより、送信データＤを受信した際の端末側の状態（ユーザや端末本体の状態）に応じて、表示の有無を決めたり、表示内容を変更したりすることができる。また、送信データＤに表示条件と比較するための情報の取得手順が定められており、装置構成の違いといった、端末側のばらつきによる表示情報の表示への影響を抑制することができる。
【０１４１】
また、端末Ｔｉによれば、取得手順に基づき、自端末が有する各種センサ３０３によって取得された情報を取得することができる。これにより、送信データＤを受信した際のユーザや端末本体の状態を特定するための情報を各種センサ３０３から得ることができる。
【０１４２】
また、端末Ｔｉによれば、取得手順に基づき、近距離無線通信により自端末Ｔｉと無線接続された周辺デバイスｄｖから、周辺デバイスｄｖによって取得された情報を取得することができる。これにより、たとえ端末Ｔｉが各種センサ３０３を有していなくても、送信データＤを受信した際のユーザや端末本体の状態を特定するための情報を周辺デバイスｄｖから得ることができる。
【０１４３】
また、端末Ｔｉによれば、取得手順に基づき、ネットワーク２１０を介して、周辺デバイスｄｖまたは各種センサ３０３から取得した情報を情報提供サーバ２０２に送信することにより、情報提供サーバ２０２から当該情報に基づき提供される情報を取得することができる。
【０１４４】
これにより、各種センサ３０３や周辺デバイスｄｖからの情報だけでは判定できないような表示条件についても、情報提供サーバ２０２からの情報をもとに判定することが可能となる。例えば、ＧＰＳユニットの出力値だけでは、端末Ｔｉがいる住所を特定できず、住所に紐付いた渋滞情報をピンポイントで表示することができない場合がある。このような場合に、ＧＰＳユニットの出力値をもとに情報提供サーバ２０２から住所情報を得ることにより、端末Ｔｉがいる住所に紐付いた渋滞情報の表示を実現することができる。
【０１４５】
また、端末Ｔｉによれば、判定結果に基づき表示した表示情報を特定するフィードバック情報をプッシュサーバ２０１に送信することができる。これにより、どのような情報が表示されやすく、どのような情報が表示されにくいのかといった特徴を把握するための情報を、情報配信側（例えば、情報配信システム２００の管理者）に提供することが可能となる。
【０１４６】
なお、本実施の形態で説明した表示制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本表示制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢメモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本表示制御プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１４７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１４８】
（付記１）情報処理装置が実行する表示制御プログラムにおいて、
表示情報と、前記表示情報を表示する表示条件と、前記情報処理装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
処理を前記情報処理装置のコンピュータに実行させることを特徴とする表示制御プログラム。
【０１４９】
（付記２）前記取得する処理は、
前記取得手順に基づき、近距離無線通信により自装置と無線接続された周辺デバイスから、前記周辺デバイスによって取得された情報を取得する、ことを特徴とする付記１に記載の表示制御プログラム。
【０１５０】
（付記３）前記取得する処理は、
前記取得手順に基づき、自装置が有するセンサによって取得された情報を取得する、ことを特徴とする付記２に記載の表示制御プログラム。
【０１５１】
（付記４）前記取得する処理は、
前記取得手順に基づき、ネットワークを介して、前記周辺デバイスまたは前記センサから取得した情報を情報提供サーバに送信することにより、前記情報提供サーバから当該情報に基づき提供される情報を取得する、ことを特徴とする付記３に記載の表示制御プログラム。
【０１５２】
（付記５）前記受け付ける処理は、
ネットワークを介して、プッシュ型のサービスを提供するサーバから、スクリプト言語によって記述された、前記表示情報と前記表示条件と前記取得手順とを含むスクリプトデータを受け付ける、ことを特徴とする付記１〜４のいずれか一つに記載の表示制御プログラム。
【０１５３】
（付記６）前記コンピュータに、
前記判定結果に基づき表示した表示情報を特定する情報を前記サーバに送信する、処理を実行させることを特徴とする付記５に記載の表示制御プログラム。
【０１５４】
（付記７）情報処理装置が実行する表示制御方法において、
表示情報と、前記表示情報を表示する表示条件と、前記情報処理装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
処理を前記情報処理装置のコンピュータが実行することを特徴とする表示制御方法。
【０１５５】
（付記８）表示情報と、前記表示情報を表示する表示条件と、自装置に関する情報の取得手順とを受け付け、
受け付けた前記取得手順に基づき、自装置に関する情報を取得し、
取得した自装置に関する情報が、受け付けた前記表示条件を満たすか否かを判定し、
判定した判定結果に基づき、受け付けた前記表示情報の表示を制御する、
制御部を有することを特徴とする情報処理装置。
【符号の説明】
【０１５６】
１００  情報処理装置
１１０  スクリプトデータ
１１１，１４０１，１５０１  表示情報
１１２  表示条件
１１３  取得手順
１２０，ｄｖ  周辺デバイス
２００  情報配信システム
２０１  プッシュサーバ
２０２  情報提供サーバ
２１０  ネットワーク
２２０  ユーザ情報ＤＢ
２３０  利用可能資源ＤＢ
２４０  送信データＤＢ
１００１  受付部
１００２  決定部
１００３，１３０１  通信制御部
１１００  プッシュ通知情報テーブル
１２００  フィードバック情報テーブル
１３０２  取得部
１３０３  判定部
１３０４  表示制御部
１４００，１５００  通知画面
【図１】
2018010384.tif 000003
【図２】
2018010384.tif 000004
【図３】
2018010384.tif 000005
【図４】
2018010384.tif 000006
【図５】
2018010384.tif 000007
【図６】
2018010384.tif 000008
【図７】
2018010384.tif 000009
【図８】
2018010384.tif 000010
【図９】
2018010384.tif 000011
【図１０】
2018010384.tif 000012
【図１１】
2018010384.tif 000013
【図１２】
2018010384.tif 000014
【図１３】
2018010384.tif 000015
【図１４】
2018010384.tif 000016
【図１５】
2018010384.tif 000017
【図１６】
2018010384.tif 000018
【図１７】
2018010384.tif 000019