(57)【要約】      （修正有）【課題】端末装置の表示の更新を完了するまでに行う通信の回数を減らす表示制御方法、表示制御装置及び表示制御プログラムを提供する。【解決手段】本表示制御方法は、他の装置から単方向通信で送信された通知を受信し、受信した通知に含まれる識別情報に基づき、通知からデータを取得し、取得したデータで、端末装置の表示を更新する処理を含む。【選択図】図６
2018060400.tif 000002
【特許請求の範囲】
【請求項１】
他の装置との通信を行う端末装置に、
前記他の装置から単方向通信で送信された通知を受信し、
受信した前記通知に含まれる識別情報に基づき、前記通知からデータを取得し、
取得した前記データで、前記端末装置の表示を更新する、
処理を実行させる表示制御プログラム。
【請求項２】
前記端末装置に、
前記表示に含まれる入力データを記憶装置に格納し、
取得した前記データで前記表示を更新した後、前記記憶装置に格納された前記入力データを更新後の前記表示に反映する、
処理をさらに実行させる請求項１記載の表示制御プログラム。
【請求項３】
前記端末装置に、
前記識別情報に基づき、更新後の前記表示を行う条件を前記通知から取得する、
処理をさらに実行させ、
前記端末装置の表示を更新する処理において、
前記条件が満たされた場合、取得した前記データで前記表示を更新する、
処理をさらに実行させる請求項１又は２記載の表示制御プログラム。
【請求項４】
前記端末装置に、
前記識別情報に基づき、更新後の前記表示を行う第１の時間の情報を前記通知から取得する
処理をさらに実行させ、
前記端末装置の表示を更新する処理において、
取得した前記データでキャッシュを更新し、
更新後の前記キャッシュを用いて前記表示を更新し、
更新後の前記表示を開始してから前記第１の時間が経過した場合、更新後の前記キャッシュを更新前の前記キャッシュに戻し、
更新前の状態に戻された前記キャッシュを用いて、更新後の前記表示を更新前の前記表示に戻す、
請求項１乃至３のいずれか１つ記載の表示制御プログラム。
【請求項５】
前記データを取得する処理において、
前記識別情報と、前記端末装置のユーザに関する情報とに基づき、前記通知から前記データを取得する、
請求項１乃至４のいずれか１つ記載の表示制御プログラム。
【請求項６】
取得された前記データは、ＨＴＭＬ（HyperText Markup Language）のスクリプトを含む、
請求項１乃至５のいずれか１つ記載の表示制御プログラム。
【請求項７】
他の装置との通信を行う端末装置が、
前記他の装置から単方向通信で送信された通知を受信し、
受信した前記通知に含まれる識別情報に基づき、前記通知からデータを取得し、
取得した前記データで、前記端末装置の表示を更新する、
処理を実行する表示制御方法。
【請求項８】
他の装置との通信を行う端末装置であって、
前記他の装置から単方向通信で送信された通知を受信する受信部と、
受信された前記通知に含まれる識別情報に基づき、前記通知からデータを取得する取得部と、
取得された前記データで、前記端末装置の表示を更新する更新部と、
を有する端末装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示の更新技術に関する。
【背景技術】
【０００２】
スマートフォン或いはタブレットなどの端末装置で動作するアプリケーションの中には、コンテンツを配信するサーバからダウンロードしたコンテンツを端末装置の画面に表示するアプリケーションがある。例えば、店舗が販売する商品のセールの情報を提供するアプリケーション等である。
【０００３】
端末装置に表示されるコンテンツの更新は、更新が可能であることをプッシュ通知によってコンテンツサーバから通知された後、端末装置のユーザが更新のための指示（例えばタップ）をすることで開始される。
【０００４】
ユーザからの指示を受け付けた端末装置は、コンテンツのダウンロード要求をコンテンツサーバに送信し、コンテンツサーバはコンテンツを端末装置に送信する。このように、コンテンツを更新するまでにはプッシュ通知以外に複数回の通信が発生する。スマートフォンやタブレットなどの端末装置は無線通信を行うため、通信の状態が不安定になりやすい。通信が失敗した場合には再試行が行われるため、更新が完了するまでに時間がかかる。
【０００５】
コンテンツの更新に関して、或る文献はサーバからダウンロードしたコンテンツでローカルキャッシュ内のコンテンツを更新する技術を開示するが、ローカルキャッシュ内のコンテンツを更新したとしても端末装置の表示は即座には更新されない。そのため、端末装置の表示を更新するためにユーザがさらに操作を行うことになる場合がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−３３４０３３号公報
【特許文献２】特表２０１０−５２２９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、１つの側面では、端末装置の表示の更新を完了するまでに行う通信の回数を減らす技術を提供することである。
【課題を解決するための手段】
【０００８】
本発明に係る表示制御方法は、他の装置から単方向通信で送信された通知を受信し、受信した通知に含まれる識別情報に基づき、通知からデータを取得し、取得したデータで、端末装置の表示を更新する処理を含む。
【発明の効果】
【０００９】
１つの側面では、端末装置の表示の更新を完了するまでに行う通信の回数を減らすことができるようになる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施の形態のネットワーク構成を示す図である。
【図２】図２は、アプリケーション提供サーバの機能ブロック図である。
【図３】図３は、ユーザ端末の機能ブロック図である。
【図４】図４は、アプリケーション提供サーバが実行する処理の処理フローを示す図である。
【図５】図５は、プッシュ通知の一例を示す図である。
【図６】図６は、ユーザ端末が実行する処理の処理フローを示す図である。
【図７】図７は、ユーザ端末が実行する処理の処理フローを示す図である。
【図８】図８は、コンテンツの一例を示す図である。
【図９】図９は、コンテンツの一例を示す図である。
【図１０】図１０は、プッシュ通知の一例を示す図である。
【図１１】図１１は、コンテンツの一例を示す図である。
【図１２】図１２は、コンテンツの一例を示す図である。
【図１３】図１３は、プッシュ通知の一例を示す図である。
【図１４】図１４は、表示されるコンテンツの一例を示す図である。
【図１５】図１５は、ユーザ端末が実行する処理の処理フローを示す図である。
【図１６】図１６は、プッシュ通知の一例を示す図である。
【図１７】図１７は、ユーザ端末が実行する処理の処理フローを示す図である。
【図１８】図１８は、ユーザ端末が実行する処理の処理フローを示す図である。
【図１９】図１９は、プッシュ通知の一例を示す図である。
【図２０】図２０は、ユーザ端末が実行する処理の処理フローを示す図である。
【図２１】図２１は、ユーザ端末が実行する処理の処理フローを示す図である。
【図２２】図２２は、表示されるコンテンツの一例を示す図である。
【図２３】図２３は、ユーザ端末が実行する処理の処理フローを示す図である。
【図２４】図２４は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１１】
図１に、本実施の形態のネットワーク構成を示す。例えばインターネットであるネットワーク７には、アプリケーション提供サーバ１と、プッシュサービスシステム３と、ユーザ端末５ａ乃至５ｃとが接続される。図１においてアプリケーション提供サーバ１及びプッシュサービスシステム３はネットワーク７に有線で接続されているが、無線で接続されてもよい。ユーザ端末の数は３であるが、数に限定は無い。
【００１２】
アプリケーション提供サーバ１は、例えば物理サーバであり、ユーザ端末５ａ乃至５ｃにおいて動作するアプリケーションを配信する。プッシュサービスシステム３は、ユーザ端末５ａ乃至５ｃのＯＳ（Operating System）を提供する組織のシステムである。ユーザ端末５ａ乃至５ｃは、例えばスマートフォン或いはタブレットなどのモバイル端末であり、アプリケーション提供サーバ１から提供されるアプリケーションがインストールされている。
【００１３】
ユーザ端末５ａ乃至５ｃに対するプッシュ通知を配信する場合、プッシュサービスシステム３とユーザ端末５ａ乃至５ｃとの間およびプッシュサービスシステム３とアプリケーション提供サーバ１との間において認証が行われる。その後、アプリケーション提供サーバ１は、送信先が指定されたデータをプッシュサービスシステム３に送信する。プッシュサービスシステム３は、受信したデータを指定された送信先にプッシュ通知で配信する。プッシュ通知とは、単方向通信で送信される通知であり、ユーザ端末５ａ乃至５ｃがプッシュサービスシステム３にアクセスすることなく通知がユーザ端末５ａ乃至５ｃに配信される。
【００１４】
図２に、アプリケーション提供サーバ１の機能ブロック図を示す。アプリケーション提供サーバ１は、生成部１１と、通信部１２とを含む。生成部１１は、プッシュ通知を生成する。通信部１２は、生成部１１により生成されたプッシュ通知をプッシュサービスシステム３に送信する。
【００１５】
図３に、ユーザ端末５ａの機能ブロック図を示す。ユーザ端末５ａは、通信部５１と、データ処理部５２と、更新部５３と、ユーザデータ格納部５４と、一時データ格納部５５と、コンテンツ格納部５６と、キャッシュ格納部５７と、状態データ取得部５８とを含む。通信部５１は、プッシュサービスシステム３からプッシュ通知を受信する処理及びその他の通信処理を実行する。データ処理部５２は、受信したプッシュ通知からデータを抽出する処理を実行する。更新部５３は、データ処理部５２により抽出されたデータ、ユーザデータ格納部５４に格納されているデータ、一時データ格納部５５に格納されているデータ、コンテンツ格納部５６に格納されているデータ、キャッシュ格納部５７に格納されているデータ及び状態データ取得部５８により取得されたデータに基づき、ユーザ端末５ａの表示を更新する処理を実行する。状態データ取得部５８は、状態についてのデータ（例えば、ユーザ端末の物理的な位置のデータ又は気象データなど）を取得する。なお、ユーザ端末５ｂ及び５ｃの機能ブロックは、ユーザ端末５ａの機能ブロックと同様である。
【００１６】
次に、図４及び図５を用いて、アプリケーション提供サーバ１が実行する処理とユーザ端末５ａ乃至５ｃとが実行する処理を説明する。本実施の形態においては、コンテンツを更新するためのデータ（例えば、更新後のコンテンツ又は更新前のコンテンツと更新後のコンテンツとの差分）をプッシュ通知に含ませることで、コンテンツを更新する際にアプリケーション提供サーバ１とユーザ端末５ａ乃至５ｃとの間で実行させる通信の回数を１回に減らす。また、プッシュ通知に応じて自動的に表示を更新することで、ユーザの操作を要求することなく更新後のコンテンツを閲覧することを可能にする。
【００１７】
まず、図４を用いて、アプリケーション提供サーバ１が実行する処理を説明する。アプリケーション提供サーバ１の生成部１１は、ユーザ端末５ａ乃至５ｃに配信するプッシュ通知を生成する（図４：ステップＳ１）。
【００１８】
図５に、ステップＳ１において生成されるプッシュ通知の一例を示す。プッシュ通知においては、角括弧が付された文字（以下、識別情報と呼ぶ）によって、情報の種類が識別される。［ＩＤ］は、更新されるコンテンツの情報（例えばＨＴＭＬ（HyperText Markup Language）ファイルのパス）に付される。複数の［ＩＤ］によって複数のコンテンツデータブロックが指定されてもよい。［ｍｓｇ］は、ダイアログによって表示されるメッセージに付される。［ｅｖｅｎｔ］は、プッシュ通知に基づく処理を規定する情報に付される。［ｄｏ］は、プッシュ通知に基づく処理で用いられるパラメータ（例えば引数）に付される。［ＨＴＭＬ］は、ＨＴＭＬのデータ（図５における破線の矩形５０１の部分）に付される。なお、図５には示されていないが、［ＨＴＭＬ］ではなく［ｓｃｒｉｐｔ］がプッシュ通知に含まれていてもよい。［ｓｃｒｉｐｔ］は、更新されるコンテンツが保持するＪａｖａＳｃｒｉｐｔ（登録商標）ファイル又はＨＴＭＬファイル内の＜ｓｃｒｉｐｔ＞部分のデータに対して付される。図５に示したプッシュ通知によって、更新されたコンテンツが１時間だけ表示されるようになる。
【００１９】
なお、プッシュ通知には図５に示した項目以外の項目の情報が含まれていてもよい。例えば、会員の種別（例えば、一般会員、シルバー会員、上級会員など）を示す情報が含まれ、ユーザデータ格納部５４に格納され且つ会員の種別を示す情報と一致する場合には、ユーザ端末においてコンテンツの更新を行ってもよい。これにより、アプリケーション提供サーバ１は同じプッシュ通知を各送信先に送信できるようになり、送信先ごとにプッシュ通知を生成しなくてもよいので、アプリケーション提供サーバ１の処理負荷を減らすことができるようになる。
【００２０】
アプリケーション提供サーバ１の通信部１２は、ステップＳ１において生成されたプッシュ通知を、プッシュサービスシステム３に送信する（ステップＳ３）。そして処理は終了する。プッシュサービスシステム３は、アプリケーション提供サーバ１から受信したプッシュ通知を、指定された送信先であるユーザ端末５ａ乃至５ｃに送信する。
【００２１】
以上のような処理を実行すれば、ユーザ端末５ａ乃至５ｃは、プッシュ通知を受け取ることができる。ユーザは、コンテンツを更新するためのデータをアプリケーション提供サーバ１からダウンロードするために入力操作などを実行することがない。
【００２２】
次に、図６乃至図２３を用いて、ユーザ端末５ａ乃至５ｃが実行する処理を説明する。但し、各ユーザ端末が実行する処理は同じであるので、ここではユーザ端末５ａが実行する処理を例として説明する。
【００２３】
まず、ユーザ端末５ａの通信部５１は、プッシュサービスシステム３から配信されたプッシュ通知を受信する（図６：ステップＳ１１）。通信部５１は、受信したプッシュ通知をデータ処理部５２に出力する。
【００２４】
データ処理部５２は、プッシュ通知に含まれる識別情報に基づき、各項目の情報をプッシュ通知から取得する（ステップＳ１３）。データ処理部５２は、取得した情報を更新部５３に出力する。
【００２５】
更新部５３は、［ｅｖｅｎｔ］として「ｕｐｄａｔｅ１」が設定されているか判定する（ステップＳ１５）。［ｅｖｅｎｔ］として「ｕｐｄａｔｅ１」が設定されている場合（ステップＳ１５：Ｙｅｓルート）、処理は端子Ａを介して図７のステップＳ３１に移行する。端子Ａ以降の処理については後で説明する。
【００２６】
［ｅｖｅｎｔ］として「ｕｐｄａｔｅ１」が設定されていない場合（ステップＳ１５：Ｎｏルート）、更新部５３は、［ｅｖｅｎｔ］として「ｕｐｄａｔｅ２」が設定されているか判定する（ステップＳ１７）。［ｅｖｅｎｔ］として「ｕｐｄａｔｅ２」が設定されている場合（ステップＳ１７：Ｙｅｓルート）、処理は端子Ｂを介して図１５のステップＳ５１に移行する。端子Ｂ以降の処理については後で説明する。
【００２７】
［ｅｖｅｎｔ］として「ｕｐｄａｔｅ２」が設定されていない場合（ステップＳ１７：Ｎｏルート）、更新部５３は、［ｅｖｅｎｔ］として「ｕｐｄａｔｅＭｏｍｅｎｔ」が設定されているか判定する（ステップＳ１９）。［ｅｖｅｎｔ］として「ｕｐｄａｔｅＭｏｍｅｎｔ」が設定されている場合（ステップＳ１９：Ｙｅｓルート）、処理は端子Ｃを介して図１７のステップＳ７１に移行する。端子Ｃ以降の処理については後で説明する。
【００２８】
［ｅｖｅｎｔ］として「ｕｐｄａｔｅＭｏｍｅｎｔ」が設定されていない場合（ステップＳ１９：Ｎｏルート）、更新部５３は、［ｅｖｅｎｔ］として「ｃｏｎｄｉｔｉｏｎｓＤｉｓｐｌａｙ」が設定されているか判定する（ステップＳ２１）。［ｅｖｅｎｔ］として「ｃｏｎｄｉｔｉｏｎｓＤｉｓｐｌａｙ」が設定されている場合（ステップＳ２１：Ｙｅｓルート）、処理は端子Ｄを介して図２０のステップＳ１０１に移行する。端子Ｄ以降の処理については後で説明する。
【００２９】
［ｅｖｅｎｔ］として「ｃｏｎｄｉｔｉｏｎｓＤｉｓｐｌａｙ」が設定されていない場合（ステップＳ２１：Ｎｏルート）、更新部５３は、［ｅｖｅｎｔ］として「ｄｏｗｎｌｏａｄ」が設定されているか判定する（ステップＳ２３）。［ｅｖｅｎｔ］として「ｄｏｗｎｌｏａｄ」が設定されている場合（ステップＳ２３：Ｙｅｓルート）、処理は端子Ｅを介して図２３のステップＳ１３１に移行する。端子Ｅ以降の処理については後で説明する。一方、［ｅｖｅｎｔ］として「ｄｏｗｎｌｏａｄ」が設定されていない場合（ステップＳ２３：Ｎｏルート）、処理は終了する。
【００３０】
次に、図７乃至図１４を用いて、端子Ａ以降の処理について説明する。［ｅｖｅｎｔ］として「ｕｐｄａｔｅ１」が設定されている場合、ダウンロード済みのコンテンツが更新され、そのコンテンツを表示中である場合には表示も更新される。
【００３１】
更新部５３は、［ＩＤ］によって指定されたコンテンツ（以下、対象のコンテンツと呼ぶ）をユーザ端末５ａにダウンロード済みであるか判定する（図７：ステップＳ３１）。なお、ステップＳ３１において、ユーザデータ格納部５４に格納され且つ会員種別を示す情報に基づき、ユーザが対象の会員であるかについても判定してもよい。
【００３２】
対象のコンテンツをダウンロード済みではない場合（ステップＳ３１：Ｎｏルート）、処理は端子Ｆを介して図６の処理に戻り終了する。
【００３３】
対象のコンテンツをダウンロード済みである場合（ステップＳ３１：Ｙｅｓルート）、更新部５３は、以下の処理を実行する。具体的には、更新部５３は、コンテンツ格納部５６に格納されている対象のコンテンツを、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータで更新する（ステップＳ３３）。
【００３４】
例えば、更新前のコンテンツが図８に示すコンテンツであり、このコンテンツについて、ボタンを追加し且つボタンをタップした際にダイアログを表示するような更新を行うとする。この場合、例えば図９に示すようなコンテンツに更新される。プッシュ通知としては、例えば図１０に示すようなデータが用いられる。図１０の例では、更新の内容が［ＨＴＭＬ］として規定されている。
【００３５】
例えば、更新前のコンテンツが図１１に示すコンテンツであり、このコンテンツについて、ボタンのタップ時に表示されるダイアログの更新を行うとする。この場合、例えば図１２に示すようなコンテンツに更新される。プッシュ通知としては、例えば図１３に示すようなデータが用いられる。図１３の例では、更新の内容が［ｓｃｒｉｐｔ］として規定されている。
【００３６】
更新部５３は、対象のコンテンツを表示中であるか判定する（ステップＳ３５）。対象のコンテンツを表示中ではない場合（ステップＳ３５：Ｎｏルート）、ステップＳ４３の処理に移行する。
【００３７】
対象のコンテンツを表示中である場合（ステップＳ３５：Ｙｅｓルート）、更新部５３は、表示中のコンテンツに関係するデータ（例えば、ウェブページのフォームに入力されたデータ）を一時データ格納部５５に格納する（ステップＳ３７）。
【００３８】
更新部５３は、ステップＳ３３において更新されたコンテンツを、例えばリロードによって表示する（ステップＳ３９）。なお、アプリケーション提供サーバ１から提供されるアプリケーションとは別のアプリケーションとしてブラウザがインストールされている場合、ブラウザのプロセスに更新後のコンテンツを表示させてもよい。
【００３９】
更新部５３は、一時データ格納部５５に格納したデータを、表示中のコンテンツに反映する（ステップＳ４１）。
【００４０】
更新部５３は、プッシュ通知において［ｍｓｇ］が付されたメッセージを、ダイアログで表示する（ステップＳ４３）。そして処理は終了する。ステップＳ３９と同様に、ブラウザのプロセスにメッセージを表示させてもよい。
【００４１】
以上のような処理によって、対象のコンテンツを表示中であっても、入力されたデータ等を失うことなく更新をすることができ、更新後のコンテンツをユーザが早期に閲覧することができるようになる。例えば、ユーザ端末５ａの画面に更新前のコンテンツとして図１４（ａ）に示すコンテンツが表示されている場合、更新によって図１４（ｂ）に示すようなコンテンツが表示されるようになる。
【００４２】
次に、図１５を用いて、端子Ｂ以降の処理について説明する。［ｅｖｅｎｔ］として「ｕｐｄａｔｅ２」が設定されている場合、ダウンロード済みのコンテンツが更新され、そのコンテンツを表示中ではない場合には表示が開始される。
【００４３】
更新部５３は、対象のコンテンツをユーザ端末５ａにダウンロード済みであるか判定する（図１５：ステップＳ５１）。なお、ステップＳ５１において、ユーザデータ格納部５４に格納され且つ会員種別を示す情報に基づき、ユーザが対象の会員であるかについても判定してもよい。
【００４４】
対象のコンテンツをダウンロード済みではない場合（ステップＳ５１：Ｎｏルート）、処理は端子Ｆを介して図６の処理に戻り終了する。
【００４５】
対象のコンテンツをダウンロード済みである場合（ステップＳ５１：Ｙｅｓルート）、更新部５３は、以下の処理を実行する。具体的には、更新部５３は、コンテンツ格納部５６に格納されている対象のコンテンツを、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータで更新する（ステップＳ５３）。
【００４６】
更新部５３は、対象のコンテンツを表示中であるか判定する（ステップＳ５５）。対象のコンテンツを表示中ではない場合（ステップＳ５５：Ｎｏルート）、更新部５３は、コンテンツ格納部５６に格納されたコンテンツをロードしコンテンツを表示する（ステップＳ５７）。そしてステップＳ６５の処理に移行する。なお、アプリケーション提供サーバ１から提供されるアプリケーションとは別のアプリケーションとしてブラウザがインストールされている場合、ブラウザのプロセスに更新後のコンテンツを表示させてもよい。
【００４７】
対象のコンテンツを表示中である場合（ステップＳ５５：Ｙｅｓルート）、更新部５３は、表示中のコンテンツに関係するデータ（例えば、ウェブページのフォームに入力されたデータ）を一時データ格納部５５に格納する（ステップＳ５９）。
【００４８】
更新部５３は、ステップＳ５３において更新されたコンテンツを、例えばリロードによって表示する（ステップＳ６１）。ステップＳ５７と同様に、ブラウザのプロセスに更新後のコンテンツを表示させてもよい。
【００４９】
更新部５３は、一時データ格納部５５に格納したデータを、表示中のコンテンツに反映する（ステップＳ６３）。
【００５０】
更新部５３は、プッシュ通知において［ｍｓｇ］が付されたメッセージを、ダイアログで表示する（ステップＳ６５）。そして処理は終了する。ステップＳ５７及びＳ６１と同様に、ブラウザのプロセスにメッセージを表示させてもよい。
【００５１】
以上のような処理を実行すれば、更新前のコンテンツを表示していない場合においても更新後のコンテンツを表示できるようになるので、例えば、特に重要な更新などの場合に有効である。
【００５２】
次に、図１６乃至図１８を用いて、端子Ｃ以降の処理について説明する。［ｅｖｅｎｔ］として「ｕｐｄａｔｅＭｏｍｅｎｔ」が設定されている場合、ダウンロード済みのコンテンツの表示が一時的に更新される。ここでは、例えば図５に示すようなプッシュ通知又は図１６に示すようなプッシュ通知を受信したとする。図１６において、ＨＴＭＬデータは破線の矩形１６１の部分に記述される。
【００５３】
更新部５３は、対象のコンテンツをユーザ端末５ａにダウンロード済みであるか判定する（図１７：ステップＳ７１）。なお、ステップＳ７１において、ユーザデータ格納部５４に格納され且つ会員種別を示す情報に基づき、ユーザが対象の会員であるかについても判定してもよい。
【００５４】
対象のコンテンツをダウンロード済みではない場合（ステップＳ７１：Ｎｏルート）、処理は端子Ｆを介して図６の処理に戻り終了する。
【００５５】
対象のコンテンツをダウンロード済みである場合（ステップＳ７１：Ｙｅｓルート）、更新部５３は、対象のコンテンツを表示中であるか判定する（ステップＳ７３）。対象のコンテンツを表示中ではない場合（ステップＳ７３：Ｎｏルート）、処理は端子Ｆを介して図６の処理に戻り終了する。
【００５６】
対象のコンテンツを表示中である場合（ステップＳ７３：Ｙｅｓルート）、更新部５３は、表示中のコンテンツに関係するデータ（例えば、ウェブページのフォームに入力されたデータ）を一時データ格納部５５に格納する（ステップＳ７５）。
【００５７】
更新部５３は、キャッシュ格納部５７に格納されているキャッシュのうち更新前のコンテンツのキャッシュを、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータで更新する（ステップＳ７７）。そして、更新部５３は、更新後のコンテンツをユーザ端末５ａの画面に表示する。ここで、更新部５３は、更新後のコンテンツをブラウザのプロセスに表示させてもよい。
【００５８】
更新部５３は、一時データ格納部５５に格納したデータを、表示中のコンテンツに反映する（ステップＳ７９）。
【００５９】
更新部５３は、プッシュ通知において［ｍｓｇ］が付されたメッセージを、ダイアログで表示する（ステップＳ８１）。そして処理は端子Ｇを介して図１８のステップＳ８３に移行する。ステップＳ８１において、ブラウザのプロセスにメッセージを表示させてもよい。
【００６０】
図１８の説明に移行し、更新部５３は、プッシュ通知において［ｄｏ］が付された引数が示す時間又は時刻まで待機する（図１８：ステップＳ８３）。例えば図５に示すようなプッシュ通知の場合、更新部５３は１時間待機する。例えば図１６に示すようなプッシュ通知の場合、更新部５３は特定の日付の１３時まで待機する。
【００６１】
更新部５３は、表示中のコンテンツに関係するデータ（例えば、ウェブページのフォームに入力されたデータ）を一時データ格納部５５に格納する（ステップＳ８５）。
【００６２】
更新部５３は、キャッシュ格納部５７に格納されているキャッシュのうち表示中のコンテンツのキャッシュを、コンテンツ格納部５６に格納されているコンテンツ（すなわち、更新前のコンテンツ）で更新する（ステップＳ８７）。そして、更新部５３は、ステップＳ８７において更新されたキャッシュに基づきコンテンツをユーザ端末５ａの画面に表示する。ここで、更新部５３は、コンテンツをブラウザのプロセスに表示させてもよい。
【００６３】
更新部５３は、一時データ格納部５５に格納したデータを、表示中のコンテンツに反映する（ステップＳ８９）。そして処理は端子Ｆを介して図６の説明に戻り終了する。
【００６４】
以上のような処理を実行すれば、更新されたコンテンツを指定された時間又は指定された時刻まで表示し、その後は元のコンテンツを表示できるようになる。
【００６５】
次に、図１９乃至図２２を用いて、端子Ｄ以降の処理について説明する。［ｅｖｅｎｔ］として「ｃｏｎｄｉｔｉｏｎｓＤｉｓｐｌａｙ」が設定されている場合、表示条件が満たされた場合にコンテンツが表示される。ここでは、例えば図１９に示すようなプッシュ通知を受信したとする。図１９において、表示条件が満たされた場合に表示されるコンテンツのＨＴＭＬは破線の矩形１９１の部分に記述される。
【００６６】
更新部５３は、対象のコンテンツをユーザ端末５ａにダウンロード済みであるか判定する（図２０：ステップＳ１０１）。なお、ステップＳ１０１において、ユーザデータ格納部５４に格納され且つ会員種別を示す情報に基づき、ユーザが対象の会員であるかについても判定してもよい。
【００６７】
対象のコンテンツをダウンロード済みではない場合（ステップＳ１０１：Ｎｏルート）、処理は端子Ｆを介して図６の処理に戻り終了する。
【００６８】
対象のコンテンツをダウンロード済みである場合（ステップＳ１０１：Ｙｅｓルート）、更新部５３は、コンテンツ格納部５６に格納されている対象のコンテンツを、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータで更新する（ステップＳ１０３）。なお、対象のコンテンツは、表示中のコンテンツとは別のコンテンツであるとする。
【００６９】
更新部５３は、［ｄｏ］が付されたデータが示す表示条件が満たされるか判定する処理を定期処理として登録する（ステップＳ１０５）。これにより、［ｄｏ］が付されたデータが示す表示条件が満たされるか判定する処理が、所定時間ごとに実行されるようになる。
【００７０】
更新部５３は、状態データ取得部５８により取得されたデータに基づき、表示条件が満たされるか判定する（ステップＳ１０７）。表示条件が満たされない場合（ステップＳ１０７：Ｎｏルート）、更新部５３は所定時間待機し、処理はステップＳ１０７に戻る。
【００７１】
表示条件が満たされる場合（ステップＳ１０７：Ｙｅｓルート）、更新部５３は、ステップＳ１０５において登録された定期処理を削除する（ステップＳ１０９）。これにより、［ｄｏ］が付されたデータが示す表示条件が満たされるか定期的に判定する処理が実行されなくなる。
【００７２】
更新部５３は、表示中のコンテンツに関係するデータ（例えば、ウェブページのフォームに入力されたデータ）を一時データ格納部５５に格納する（ステップＳ１１１）。
【００７３】
更新部５３は、ステップＳ１０３において更新されたコンテンツを表示する（ステップＳ１１３）。ここでは、ブラウザのプロセスに更新後のコンテンツを表示させてもよい。
【００７４】
更新部５３は、プッシュ通知において［ｍｓｇ］が付されたメッセージを、ダイアログで表示する（ステップＳ１１５）。そして処理は端子Ｈを介して図２１のステップＳ１１７に移行する。ステップＳ１１５においては、ブラウザのプロセスにメッセージを表示させてもよい。
【００７５】
更新部５３は、更新されたコンテンツを表示するウィンドウが閉じられたことを検出する（図２１：ステップＳ１１７）。
【００７６】
更新部５３は、もともと閲覧していたコンテンツ（すなわち、対象のコンテンツとは別のコンテンツ）をコンテンツ格納部５６から読み出して表示する（ステップＳ１１９）。
【００７７】
更新部５３は、ステップＳ１１１において一時データ格納部５５に格納されたデータを、表示中のコンテンツに反映する（ステップＳ１２１）。そして処理は端子Ｆを介して図６の説明に戻り終了する。
【００７８】
以上のような処理を実行すれば、適切なタイミングで適切なコンテンツを表示することができるようになる。例えば、気温が所定温度以上であり且つ照度が所定値以上であるという表示条件が満たされた場合、図２２に示すように、アイスクリームのコンテンツが表示される。
【００７９】
次に、図２３を用いて、端子Ｅ以降の処理について説明する。［ｅｖｅｎｔ］として「ｄｏｗｎｌｏａｄ」が設定されている場合、コンテンツがダウンロードされる。
【００８０】
まず、更新部５３は、対象のコンテンツをユーザ端末５ａにダウンロード済みであるか判定する（図２３：ステップＳ１３１）。なお、ステップＳ１３１において、ユーザデータ格納部５４に格納され且つ会員種別を示す情報に基づき、ユーザが対象の会員であるかについても判定してもよい。
【００８１】
対象のコンテンツをダウンロード済みではない場合（ステップＳ１３１：Ｎｏルート）、更新部５３は、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータ（すなわちコンテンツ）をコンテンツ格納部５６に格納する（ステップＳ１３３）。そしてステップＳ１３７の処理に移行する。
【００８２】
対象のコンテンツをダウンロード済みである場合（ステップＳ１３１：Ｙｅｓルート）、更新部５３は、コンテンツ格納部５６に格納されている対象のコンテンツを、プッシュ通知において［ＨＴＭＬ］又は［ｓｃｒｉｐｔ］が付されたデータで更新する（ステップＳ１３５）。
【００８３】
更新部５３は、プッシュ通知において［ｍｓｇ］が付されたメッセージを、ダイアログで表示する（ステップＳ１３７）。そして処理は端子Ｆを介して図６の説明に戻り終了する。
【００８４】
以上のような処理を実行すれば、表示は更新されることなく、新コンテンツのダウンロードのみが行われる。
【００８５】
以上のように、本実施の形態によれば、表示の更新を完了するまでに行う通信の回数が削減されるようになる。なお、本実施の形態を使用しない場合、更新を通知するためのプッシュ通知と、ユーザ端末からアプリケーション提供サーバ１へのダウンロード要求と、ダウンロードのための通信とが行われるが、３回の通信のうち１回でも失敗すると更新が完了しない。しかし、本実施の形態によれば、プッシュ通知によって表示の更新を完了させることができるようになる。よって、更新が失敗する可能性を低くすることができるようになる。
【００８６】
また、ユーザ端末５ａ乃至５ｃからアプリケーション提供サーバ１へのダウンロード要求が行われないので、アプリケーション提供サーバ１の処理負荷を減らすことができるようになる。
【００８７】
また、プッシュ通知の受信に応じコンテンツが自動更新されるので、ユーザは更新作業を行わなくて済み、操作性が向上する。
【００８８】
また、スクリプトを用いていることで、コンテンツ本体を変更することなく表示を一時的に変更することができるようになる。
【００８９】
また、［ＩＤ］の使用によって、複数のコンテンツデータブロックを一度に更新することができるようになる。
【００９０】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明したアプリケーション提供サーバ１及びユーザ端末５ａ乃至５ｃの機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
【００９１】
また、上で説明したデータ構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００９２】
なお、上で述べたアプリケーション提供サーバ１及びユーザ端末５ａ乃至５ｃは、コンピュータ装置であって、図２４に示すように、ＲＡＭ（Random Access Memory）２５０１とＣＰＵ（Central Processing Unit）２５０３とフラッシュメモリ２５０５と表示装置２５０９に接続される表示制御部２５０７と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーションプログラムは、フラッシュメモリ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはフラッシュメモリ２５０５からＲＡＭ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーションプログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてＲＡＭ２５０１に格納されるが、フラッシュメモリ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーションプログラムは、インターネットなどのネットワーク及び通信制御部２５１７を経由して、フラッシュメモリ２５０５にインストールされる。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、ＲＡＭ２５０１などのハードウエアとＯＳ及びアプリケーションプログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００９３】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【００９４】
本実施の形態の第１の態様に係る表示制御方法は、（Ａ）他の装置から単方向通信で送信された通知を受信し、（Ｂ）受信した通知に含まれる識別情報に基づき、通知からデータを取得し、（Ｃ）取得したデータで、端末装置の表示を更新する処理を含む。
【００９５】
表示を更新するまでに行う通信の回数を減らすことができるようになる。これにより、更新が失敗するリスクを減らすことができるようになる。
【００９６】
また、本表示制御方法は、（Ｄ）表示に含まれる入力データを記憶装置に格納し、（Ｅ）取得したデータで表示を更新した後、記憶装置に格納された入力データを更新後の表示に反映する処理をさらに含んでもよい。入力が無駄になることを防げるようになる。
【００９７】
また、本表示制御方法は、（Ｅ）識別情報に基づき、更新後の表示を行う条件を通知から取得する処理をさらに含んでもよい。そして、端末装置の表示を更新する処理において、（ｃ１）条件が満たされた場合、取得したデータで表示を更新してもよい。適切なタイミングで表示を更新できるようになる。
【００９８】
また、本表示制御方法は、（Ｆ）識別情報に基づき、更新後の表示を行う第１の時間の情報を通知から取得する処理をさらに含んでもよい。そして、端末装置の表示を更新する処理において、（ｃ２）取得したデータでキャッシュを更新し、（ｃ３）更新後のキャッシュを用いて表示を更新し、（ｃ４）更新後の表示を開始してから第１の時間が経過した場合、更新後のキャッシュを更新前のキャッシュに戻し、（ｃ５）更新前の状態に戻されたキャッシュを用いて、更新後の表示を更新前の表示に戻してもよい。第１の時間だけ表示を変更することができるようになる。
【００９９】
また、データを取得する処理において、（ｂ１）識別情報と、端末装置のユーザに関する情報とに基づき、通知からデータを取得してもよい。端末装置のユーザに適したデータを取得できるようになる。
【０１００】
また、取得されたデータは、ＨＴＭＬ（HyperText Markup Language）のスクリプトを含んでもよい。ＨＴＭＬファイルそのものではなくスクリプトを利用すれば、通信データ量を減らせることができるようになる。
【０１０１】
また、端末装置の表示を更新する処理において、（ｃ６）取得したデータで、記憶装置に格納され且つ更新前の表示に対応する表示データを更新し、（ｃ７）記憶装置に格納され且つ更新された表示データを表示してもよい。
【０１０２】
また、端末装置の表示を更新する処理において、（ｃ８）取得したデータで、記憶装置に格納され且つ更新前の表示に対応する表示データを更新し、（ｃ９）記憶装置に格納され且つ更新された表示データを表示する処理を、ウェブブラウザのプロセスに実行させてもよい。
【０１０３】
また、本表示制御方法は、（Ｇ）識別情報に基づき、端末装置に表示させるメッセージのデータを取得し、（Ｈ）取得したメッセージのデータを表示してもよい。例えば、端末装置のユーザに表示の更新を通知することができるようになる。
【０１０４】
また、通知はプッシュ通知であってもよい。
【０１０５】
本実施の形態の第２の態様に係る端末装置は他の装置との通信を行う。そして、端末装置は、（Ｉ）他の装置から単方向通信で送信された通知を受信する受信部（例えば、実施の形態における通信部５１）と、（Ｊ）受信された通知に含まれる識別情報に基づき、通知からデータを取得する取得部（例えば、実施の形態におけるデータ処理部５２）と、取得されたデータで、端末装置の表示を更新する更新部（例えば、実施の形態における更新部５３）とを有する。
【０１０６】
なお、上記方法による処理をプロセッサに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【０１０７】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０８】
（付記１）
他の装置との通信を行う端末装置に、
前記他の装置から単方向通信で送信された通知を受信し、
受信した前記通知に含まれる識別情報に基づき、前記通知からデータを取得し、
取得した前記データで、前記端末装置の表示を更新する、
処理を実行させる表示制御プログラム。
【０１０９】
（付記２）
前記端末装置に、
前記表示に含まれる入力データを記憶装置に格納し、
取得した前記データで前記表示を更新した後、前記記憶装置に格納された前記入力データを更新後の前記表示に反映する、
処理をさらに実行させる付記１記載の表示制御プログラム。
【０１１０】
（付記３）
前記端末装置に、
前記識別情報に基づき、更新後の前記表示を行う条件を前記通知から取得する、
処理をさらに実行させ、
前記端末装置の表示を更新する処理において、
前記条件が満たされた場合、取得した前記データで前記表示を更新する、
処理をさらに実行させる付記１又は２記載の表示制御プログラム。
【０１１１】
（付記４）
前記端末装置に、
前記識別情報に基づき、更新後の前記表示を行う第１の時間の情報を前記通知から取得する
処理をさらに実行させ、
前記端末装置の表示を更新する処理において、
取得した前記データでキャッシュを更新し、
更新後の前記キャッシュを用いて前記表示を更新し、
更新後の前記表示を開始してから前記第１の時間が経過した場合、更新後の前記キャッシュを更新前の前記キャッシュに戻し、
更新前の状態に戻された前記キャッシュを用いて、更新後の前記表示を更新前の前記表示に戻す、
付記１乃至３のいずれか１つ記載の表示制御プログラム。
【０１１２】
（付記５）
前記データを取得する処理において、
前記識別情報と、前記端末装置のユーザに関する情報とに基づき、前記通知から前記データを取得する、
付記１乃至４のいずれか１つ記載の表示制御プログラム。
【０１１３】
（付記６）
取得された前記データは、ＨＴＭＬ（HyperText Markup Language）のスクリプトを含む、
付記１乃至５のいずれか１つ記載の表示制御プログラム。
【０１１４】
（付記７）
前記端末装置の表示を更新する処理において、
取得した前記データで、記憶装置に格納され且つ更新前の前記表示に対応する表示データを更新し、
前記記憶装置に格納され且つ更新された前記表示データを表示する、
付記１記載の表示制御プログラム。
【０１１５】
（付記８）
前記端末装置の表示を更新する処理において、
取得した前記データで、記憶装置に格納され且つ更新前の前記表示に対応する表示データを更新し、
前記記憶装置に格納され且つ更新された前記表示データを表示する処理を、ウェブブラウザのプロセスに実行させる、
付記１記載の表示制御プログラム。
【０１１６】
（付記９）
前記端末装置に、
前記識別情報に基づき、前記端末装置に表示させるメッセージのデータを取得し、
取得した前記メッセージのデータを表示する、
処理をさらに実行させる付記１乃至８のいずれか１つ記載の表示制御プログラム。
【０１１７】
（付記１０）
前記通知はプッシュ通知である、
付記１乃至９のいずれか１つ記載の表示制御プログラム。
【０１１８】
（付記１１）
他の装置との通信を行う端末装置が、
前記他の装置から単方向通信で送信された通知を受信し、
受信した前記通知に含まれる識別情報に基づき、前記通知からデータを取得し、
取得した前記データで、前記端末装置の表示を更新する、
処理を実行する表示制御方法。
【０１１９】
（付記１２）
他の装置との通信を行う端末装置であって、
前記他の装置から単方向通信で送信された通知を受信する受信部と、
受信された前記通知に含まれる識別情報に基づき、前記通知からデータを取得する取得部と、
取得された前記データで、前記端末装置の表示を更新する更新部と、
を有する端末装置。
【符号の説明】
【０１２０】
１  アプリケーション提供サーバ    ３  プッシュサービスシステム
５ａ，５ｂ，５ｃ  ユーザ端末    ７  ネットワーク
１１  生成部    １２  通信部
５１  通信部    ５２  データ処理部
５３  更新部    ５４  ユーザデータ格納部
５５  一時データ格納部    ５６  コンテンツ格納部
５７  キャッシュ格納部    ５８  状態データ取得部
【図１】
2018060400.tif 000003
【図２】
2018060400.tif 000004
【図３】
2018060400.tif 000005
【図４】
2018060400.tif 000006
【図５】
2018060400.tif 000007
【図６】
2018060400.tif 000008
【図７】
2018060400.tif 000009
【図８】
2018060400.tif 000010
【図９】
2018060400.tif 000011
【図１０】
2018060400.tif 000012
【図１１】
2018060400.tif 000013
【図１２】
2018060400.tif 000014
【図１３】
2018060400.tif 000015
【図１４】
2018060400.tif 000016
【図１５】
2018060400.tif 000017
【図１６】
2018060400.tif 000018
【図１７】
2018060400.tif 000019
【図１８】
2018060400.tif 000020
【図１９】
2018060400.tif 000021
【図２０】
2018060400.tif 000022
【図２１】
2018060400.tif 000023
【図２２】
2018060400.tif 000024
【図２３】
2018060400.tif 000025
【図２４】
2018060400.tif 000026