(57)【特許請求の範囲】
【請求項１】
携帯端末のコンピュータに所定の処理を実行させるプログラムであって、
前記携帯端末にインストールされたタイミングで、常駐モードで起動して第１サーバと通信し、前記第１サーバから、前記プログラムを識別するプログラム識別情報を取得し、
取得した前記プログラム識別情報を、前記携帯端末のユーザを識別するユーザ識別情報とともに第２サーバに送信し、
前記プログラムが前記ユーザによって起動指示された後の実行状態において、前記プログラムに対する前記ユーザの操作履歴データを前記第２サーバに送信し、
前記プログラムが前記携帯端末のユーザによって起動指示されていない状態の所定のタイミングで、前記第２サーバが前記プログラム識別情報を指定して前記第１サーバに送信指示することにより前記第１サーバから送信されてきた、前記操作履歴データに基づいて前記第２サーバによって特定されたユーザ向けのメッセージを受信し、
受信した前記メッセージに基づいて、ダイアログ表示、ステータスバー表示、または、前記プログラムの起動のいずれかを実行する
処理を実行させるプログラム。
【請求項２】
前記第２サーバによって特定されたユーザは、前記プログラムをインストール後、１度も起動していないユーザであり、
受信した前記メッセージに基づいて、前記プログラムの使用を勧める表示を行う
請求項１に記載のプログラム。
【請求項３】
前記プログラムのバージョン情報も前記第２サーバに送信し、
受信した前記メッセージに基づいて、前記プログラムの最新バージョンのリリースを知らせる表示を行う
請求項１または２に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムに関し、特に、確実かつ即時にユーザに認識されるように情報を提供するプログラムに関する。
【背景技術】
【０００２】
近年、スマートフォンと呼ばれる、携帯電話と携帯情報端末を融合させた高機能の携帯端末が注目されている。スマートフォンでは、アプリケーションプログラム（Application Program）（以下、単にアプリと称する。）を、マーケット等から簡単にインストールして、端末上で実行することができる。アプリには、ゲーム、音楽や映像の視聴に関するもの、辞書、地図、勉強などに関するものなど、様々な種類のものがあり、所望のアプリを利用することがスマートフォンを利用する目的の一つにもなっている。
【０００３】
従来、アプリ製作者から、例えば、アプリをインストールしたユーザへ、アプリのバージョンアップ情報などを連絡する方法は、ユーザがアプリ製作者側に登録している電子メールアドレスを用いて、電子メールにより通知するものが一般的であった（例えば、特許文献１参照）。
【０００４】
従来の電子メールを配信する技術としては、例えば、所定の対象物の利用者の電子メールアドレス等の利用履歴を蓄積し、その対象物に関係する送信相手の電子メールアドレスが不明であっても、蓄積された利用履歴に基づいて、所定条件に合致する利用者を検索し、送信相手の電子メールアドレスを取得して、電子メールを送信する方法がある（例えば、特許文献２参照）。また、電子メールは、一般的には、クライアントであるユーザ端末からのリクエストに応じて、サーバが保持しておいたユーザ宛ての電子メールを送信するものであるが、クライアントの電力消費を抑えつつ、通知のリアルタイム性を向上させた通知方法も提案されている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３４２０９８号公報（特に、０００２段落）
【特許文献２】特開２０１１−１０８０９４号公報
【特許文献３】特開２０１０−１４１８５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、電子メールによる情報の提供は、ユーザが端末上で電子メールアプリ（メーラ）を起動し、受信したメッセージを開く（閲覧する）まで、提供された情報がユーザに伝わらない。従って、例えば、図１に示すように、友達からのメールではないメッセージは開かれず、送信したメッセージが読まれないということもあった。また、受信したメッセージをユーザが開くまで時間が空いてしまい、有効な期限が過ぎてしまうなど、提供されるメッセージが無意味になってしまうこともあった。即ち、従来の電子メールによる情報の提供は、提供される情報の確実性、即時性に欠けるものであった。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、確実かつ即時にユーザに認識されるように情報を提供するものである。
【課題を解決するための手段】
【０００８】
本発明の一側面のプログラムは、携帯端末のコンピュータに所定の処理を実行させるプログラムであって、前記携帯端末にインストールされたタイミングで、常駐モードで起動して第１サーバと通信し、前記第１サーバから、前記プログラムを識別するプログラム識別情報を取得し、取得した前記プログラム識別情報を、前記携帯端末のユーザを識別するユーザ識別情報とともに第２サーバに送信し、前記プログラムが前記ユーザによって起動指示された後の実行状態において、前記プログラムに対する前記ユーザの操作履歴データを前記第２サーバに送信し、前記プログラムが前記携帯端末のユーザによって起動指示されていない状態の所定のタイミングで、前記第２サーバが前記プログラム識別情報を指定して前記第１サーバに送信指示することにより前記第１サーバから送信されてきた、前記操作履歴データに基づいて前記第２サーバによって特定されたユーザ向けのメッセージを受信し、受信した前記メッセージに基づいて、ダイアログ表示、ステータスバー表示、または、前記プログラムの起動のいずれかを実行する処理を実行させるものである。
【発明の効果】
【０００９】
本発明の一側面によれば、確実かつ即時にユーザに認識されるように情報を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】従来の問題を説明する図である。
【図２】本発明を適用した通信システムの一実施の形態の構成例を示す図である。
【図３】プッシュ通知を行う場合の処理全体の流れを示す図である。
【図４】アプリ情報テーブルの例を示す図である。
【図５】行動履歴管理テーブルの例を示す図である。
【図６】プッシュ通知として選択可能な３つのアクションそれぞれの表示例を示す図である。
【図７】プッシュ通知の詳細なフローチャートである。
【図８】アプリの機能的構成例を示すブロック図である。
【図９】携帯端末のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１１】
［本発明を適用した通信システムの構成例］
図２は、本発明を適用した通信システムの一実施の形態の構成例を示している。
【００１２】
図２の通信システムは、所定のアプリケーションプログラム（Application Program；以下、単に、アプリという。）をインストールしたユーザの携帯端末１に、そのインストールされたアプリが起動されていない状態でもメッセージ送信を可能としたシステムである。
【００１３】
図２の通信システムは、携帯端末１、PC(パーソナルコンピュータ)２、アプリ提供サーバ３、管理サーバ４、及びメッセージ（MSG）サービスサーバ５を有し、それらは、移動体電話通信網やインターネットなどで構成されるネットワーク６に必要に応じて接続され、相互に所定の情報が授受される。
【００１４】
携帯端末１は、一般にスマートフォンと呼ばれる、携帯電話と携帯情報端末を融合させた高機能の端末（携帯電話機）であり、所有者であるユーザによって使用される。携帯端末１には、１以上のアプリ１０やアプリ１１がアプリ提供サーバ３からダウンロードされ、インストールされる。
【００１５】
ここで、アプリ１０およびアプリ１１は、いずれも、携帯端末１上で実行されるアプリケーションプログラムであるが、アプリ１０は、ユーザの起動操作によって起動されていない状態におけるメッセージの送受信に非対応のアプリであるのに対して、アプリ１１は、ユーザの起動操作によって起動されていない状態でもメッセージの送受信が可能なアプリである。アプリ１０は、通常のアプリと同様のものであるため、以下では、アプリ１１に注目して説明する。
【００１６】
PC２は、アプリ１１のアプリ製作者によって使用されるコンピュータである。アプリ１１のアプリ製作者によって製作（生成）されたアプリ１１は、PC２から、ネットワーク６を介してアプリ提供サーバ３に送信され、アプリ提供サーバ３で保持される。
【００１７】
また、アプリ１１のアプリ製作者は、PC２から管理サーバ４にアクセスして、アプリ１１をインストールしたユーザへのメッセージの送信を、管理サーバ４に依頼することができる。アプリ１１をインストールしたユーザへのメッセージの内容としては、例えば、アプリ１１のバージョンアップ情報などがある。
【００１８】
アプリ提供サーバ３は、ユーザが携帯端末１からマーケットにアクセスし、アプリ１１をインストール指示したときにアクセスされるサーバであり、アプリ１１のプログラムデータを保持している。ユーザが、携帯端末１でアクセスしたマーケットにおいて、アプリ１１のインストールを指示すると、指示されたアプリ１１のプログラムデータが、アプリ提供サーバ３から、ユーザの携帯端末１にインストールされる。
【００１９】
管理サーバ４は、携帯端末１にインストールされたアプリ１１を管理する。即ち、携帯端末１にアプリ１１がインストールされた場合に、管理サーバ４は、インストールされたアプリ１１のアプリ情報を、携帯端末１から取得して記憶する。具体的には、管理サーバ４は、アプリ１１を識別するアプリID、アプリ１１のバージョンを示すバージョン情報、アプリ１１がインストールされた日付を示す日付情報などを、ユーザを識別するユーザIDに対応付けて、アプリ情報として記憶する。
【００２０】
また、管理サーバ４は、携帯端末１にインストールされたアプリ１１の使用状況も解析することができる。アプリ１１の使用状況とは、例えば、インストールされたアプリ１１が起動されたか否か、起動されたアプリ１１においてどのような画面が閲覧されたか、などである。このようなアプリ１１の使用状況は、アプリ１１に対するユーザの行動履歴であるということができる。管理サーバ４は、ユーザのアプリ１１に対する行動履歴（アプリ１１の使用状況）を解析し、行動履歴データとして内部に記憶する。このような解析の機能は、アプリ１１のアクセス解析の機能であるともいうことができる。
【００２１】
管理サーバ４が内部に記憶するアプリ１１のアプリ情報およびユーザの行動履歴データは、アプリ１１のアプリ製作者からアプリ１１のユーザ（使用者）へのメッセージの送信に使用される。即ち、管理サーバ４は、アプリ製作者（のPC２）からのメッセージ送信の要求を受け付け、内部に保持するユーザの行動履歴データおよびアプリ情報に基づいて、アプリ製作者により指定された条件に合致するユーザを検索し、検索の結果得られた通知対象ユーザへのメッセージの送信を、メッセージサービスサーバ５に依頼する。
【００２２】
メッセージサービスサーバ５は、アプリ１１をインストールしたユーザの携帯端末１に対して、プッシュ型のメッセージ送信を行う。ここで、プッシュ型のメッセージ送信とは、クライアントである携帯端末１から特段のリクエストを必要とせず、所定のタイミングで自発的にメッセージを送信することであり、以下では、プッシュ通知ともいう。
【００２３】
具体的には、メッセージサービスサーバ５は、携帯端末１に固有の端末IDと、アプリ１１ごとに発行される登録IDとを携帯端末１ごとに保有し、どの携帯端末１に何のアプリ１１がインストールされているかを把握している。メッセージサービスサーバ５は、管理サーバ４から、メッセージの送信要求を受信する。メッセージの送信要求には、登録IDと、送信すべきメッセージの内容とが含まれる。メッセージサービスサーバ５は、登録IDに基づいて、送信すべき携帯端末１を特定し、特定した携帯端末１の、登録IDに対応するアプリ１１に、管理サーバ４から依頼されたメッセージの内容を送信する。
【００２４】
なお、本実施の形態において、アプリ提供サーバ３、管理サーバ４、及びメッセージサービスサーバ５それぞれが実現する機能を１つまたは２つのサーバに集約し、１つまたは２つのサーバで実現してもよい。
【００２５】
［プッシュ通知の処理全体の概要］
図３は、所定のアプリ１１をインストールしたユーザの携帯端末１にプッシュ通知を行う場合の処理全体の流れを示す図である。
【００２６】
プッシュ通知を行う場合の処理フローは、大きくは４つのステップにより実行される。以下の第１ないし第４のステップは、図３の（１）ないし（４）の表示に対応する。
【００２７】
第１のステップは、メッセージサービスサーバ５および管理サーバ４が、プッシュ通知のための情報を取得するステップである。
【００２８】
アプリ１１が携帯端末１にインストールされると、アプリ１１は、メッセージサービスサーバ５と通信を行う。メッセージサービスサーバ５は、アプリ１１が携帯端末１にインストールされたタイミングでアプリ１１と通信を行い、携帯端末１にアプリ１１がインストールされたことを認識するとともに、携帯端末１にインストールされたアプリ１１を一意に識別可能な登録IDを発行し、携帯端末１に送信する。
【００２９】
携帯端末１のアプリ１１は、登録IDをメッセージサービスサーバ５から取得した後で、管理サーバ４と通信を行い、自身（アプリ１１）のアプリ情報を送信する。管理サーバ４は、携帯端末１のアプリ１１から取得したアプリ情報をアプリ情報テーブルに記憶する。
【００３０】
［アプリ情報テーブルの例］
図４は、管理サーバ４内のアプリ情報テーブルの例を示している。
【００３１】
アプリ情報テーブルでは、ユーザを識別するユーザID、携帯端末１のアプリ１１に対してメッセージサービスサーバ５により付与された登録ID、アプリ１１を示すアプリID、アプリ１１のバージョン情報、及び、アプリ１１が携帯端末１にインストールされた日付を示す日付情報が、対応付けて記憶されている。なお、ユーザを識別するユーザIDには、携帯端末１に固有の端末IDや、管理サーバ４の運営業者や通信サービス事業者が割り当てた携帯端末１に固有の識別情報を採用することができる。
【００３２】
アプリ情報テーブルにおいて、ユーザID、バージョン情報、および日付情報は、インストールされた日付やバージョン等によってプッシュ通知の対象ユーザを絞るためのものであり、全ユーザを通知対象とする場合には、登録IDとアプリIDのみがあればよい。即ち、ユーザID、バージョン情報、および日付情報は、省略することができる。
【００３３】
以上の第１のステップは、アプリ１１が携帯端末１にインストールされると、アプリ１１がユーザによって起動されない場合であっても、バックグラウンドで実行される。
【００３４】
第２のステップは、管理サーバ４が、アプリ１１に対するユーザの行動履歴を取得するステップである。
【００３５】
管理サーバ４は、ユーザがアプリ１１を起動実行中で、かつ、所定のアクションを行ったとき、そのユーザが行ったアクションを示すアクションIDを、ユーザID、アプリIDとともに携帯端末１のアプリ１１から取得する。ここでアプリ１１から送信されるアクションID、ユーザID、及びアプリIDが、上述した行動履歴データに相当する。携帯端末１のアプリ１１から送信されてきた行動履歴データは、管理サーバ４内の行動履歴管理テーブルに格納される。
【００３６】
ユーザがアプリ１１に対してどのようなアクションを行ったときに、換言すれば、アプリ１１でどのようなアクションが発生したときに、行動履歴データを管理サーバ４に送信するかは、アプリ１１内で予めプログラミングされている。
【００３７】
［行動履歴管理テーブルの例］
図５は、管理サーバ４内の行動履歴管理テーブルの例を示している。
【００３８】
行動履歴管理テーブルでは、通知されたアクションごとに、ユーザID、アプリID、アクションID、およびアクション発生日時が、対応付けて記憶されている。なお、アクションIDのみで、どのアプリ１１のアクションであるかが識別可能である場合には、アプリIDは省略することができる。
【００３９】
第３のステップは、管理サーバ４が、アプリ製作者のPC２から、プッシュ通知の依頼を受け付けるステップである。
【００４０】
プッシュ通知のアクション（表示形態）としては、（ａ）ダイアログ表示、（ｂ）ステータスバー表示、（ｃ）アプリ１１の自動起動（強制起動）の３つのうちのいずれかを指定することができる。
【００４１】
［プッシュ通知の表示例］
図６は、プッシュ通知として指定可能な３つのアクションそれぞれの表示例を示している。図６では、アプリ１１のアプリ名が「ＡＢアプリ」である。
【００４２】
図６Ａは、プッシュ通知のアクションとして（ａ）ダイアログ表示が指定された場合の表示例を示している。
【００４３】
図６Ａに示されるダイアログ２１には、タイトルとして「ＡＢアプリからのお知らせ」が表示されている。そして、携帯端末１においてアプリ１１がインストールされてはいるが、ユーザにより未だ１度も起動されていないユーザに対するメッセージとして、「ＡＢアプリを使うと商品を５０％〜９０％割引で購入することができます！  ぜひ使ってみませんか？」の内容が表示されている。このダイアログ２１は、アプリ１１が（１回も）起動されていない状態でも、携帯端末１にインストールがされてさえいれば、表示することができる。このダイアログ２１は、アプリ１１の一画面を所定の画面サイズに小さくリサイズして作成される。
【００４４】
図６Ｂは、プッシュ通知のアクションとして（ｂ）ステータスバー表示が指定された場合の表示例を示している。
【００４５】
携帯端末１のディスプレイには、携帯端末１の状態（例えば、電波の受信状態や充電状態）を表示したり、不在着信やメール着信をユーザに知らせるステータスバー２２ａが常時表示されている。管理サーバ４は、このステータスバー２２ａに、指定されたメッセージを表示させることができる。
【００４６】
また、ステータスバー２２ａに対して、ユーザによる画面下方向のドラッグまたはフリック操作が検出されると、携帯端末１は、ステータスバー２２ａの詳細画面２２ｂを表示することができる。図６Ｂは、ステータスバー２２ａの詳細画面２２ｂに、「ＡＢアプリ」からのメッセージであることを示す「ＡＢアプリ」のタイトルと、最新バージョンがリリースされたことをお知らせする「最新バージョンが公開されています。」の内容を表示した例を示している。
【００４７】
図６Ｃは、プッシュ通知のアクションとして（ｃ）アプリ１１の自動起動が指定された場合の表示例を示している。
【００４８】
図６Ｃの携帯端末１のディスプレイには、「ＡＢアプリ」の起動画面２３が表示されている。
【００４９】
図３の第４のステップは、上述した第３のステップによる、アプリ製作者からのプッシュ通知の依頼内容に基づいて、管理サーバ４が、プッシュ通知を実行するステップである。
【００５０】
具体的には、管理サーバ４は、プッシュ通知の依頼内容に基づいて、図４のアプリ情報テーブルと、必要に応じて図５の行動履歴管理テーブルも検索し、該当するユーザを検索する。
【００５１】
そして、管理サーバ４は、プッシュ通知の対象者であるユーザの登録IDと、プッシュ通知のメッセージ内容を、メッセージサービスサーバ５に送信する。メッセージサービスサーバ５は、登録IDに基づいて、送信すべき携帯端末１とアプリ１１を特定し、特定した携帯端末１のアプリ１１にメッセージ内容を送信する。
【００５２】
［プッシュ通知の詳細処理フロー］
次に、図７のフローチャート（シーケンス図）を参照して、図２の通信システムの各装置の処理の詳細について説明する。
【００５３】
初めに、ステップＳ１において、携帯端末１は、ユーザの操作に基づいて、マーケットに対応するアプリ提供サーバ３からアプリ１１をインストールする。
【００５４】
ステップＳ２において、携帯端末１にインストールされたアプリ１１は、インストールが終了すると、常駐モードで自動起動する。アプリ１１には、ユーザによって起動指示された場合の実行モードである本起動モードの他に、バックグラウンドで動作する常駐モードによる実行モードがある。アプリ１１は、携帯端末１の電源がオンされていて、本起動モードによる実行中以外は、携帯端末１から削除されない限り、常駐モードで実行されている。
【００５５】
常駐モードのアプリ１１は、ステップＳ３において、携帯端末１（のユーザ）を識別するための情報であるユーザIDとともに、登録IDのリクエストを、メッセージサービスサーバ５に送信し、メッセージサービスサーバ５は、それを受信する。
【００５６】
メッセージサービスサーバ５は、ステップＳ４において、登録IDのリクエストに応じて、携帯端末１のアプリ１１に割り当てる登録IDを発行する。そして、メッセージサービスサーバ５は、発行した登録IDを、携帯端末１のアプリ１１に送信し、常駐モードのアプリ１１は、それを受信する。
【００５７】
ステップＳ５において、常駐モードのアプリ１１は、受信した登録IDを、ユーザID、アプリ１１を示すアプリID、及びアプリ１１のバージョン情報とともに、管理サーバ４に送信し、管理サーバ４は、それを受信する。
【００５８】
ステップＳ６において、管理サーバ４は、受信した、登録ID、ユーザID、アプリID、及びバージョン情報を、受信した日付の情報である日付情報とともに、アプリ情報として、アプリ情報テーブル（図４）に記憶する。なお、日付情報についても、携帯端末１のアプリ１１が送信するようにしてもよい。
【００５９】
以上のステップＳ１乃至Ｓ６までの処理が、図３で説明した第１のステップに対応する。
【００６０】
次に、携帯端末１において、ユーザによりアプリ１１を起動する操作が行われると、ステップＳ７において、携帯端末１のアプリ１１は、本起動モードで起動する。
【００６１】
ステップＳ８において、本起動モードのアプリ１１は、管理サーバ４に通知すべき所定のアクションが発生したか否かを判定し、所定のアクションが発生したと判定されるまで待機する。
【００６２】
そして、ステップＳ８で、管理サーバ４に通知すべき所定のアクションが発生したと判定された場合、処理はステップＳ９に進み、本起動モードのアプリ１１は、発生したアクションを示すアクションIDを、ユーザIDおよびアプリIDとともに管理サーバ４に送信し、管理サーバ４は、それを受信する。
【００６３】
ステップＳ１０において、管理サーバ４は、受信したアクションID、ユーザID、及びアプリIDを、アクション発生日時としての受信した日時情報とともに、行動履歴データとして、行動履歴管理テーブルに記憶する。
【００６４】
ステップＳ８乃至Ｓ１０の一連の処理は、アプリ１１が本起動で実行され、かつ、管理サーバ４に通知すべき所定のアクションが発生する度に、繰り返し実行される。そして、ユーザによりアプリ１１を終了する操作が行われると、ステップＳ１１において、アプリ１１は、本起動モードを終了し、常駐モードに戻る。
【００６５】
以上のステップＳ７乃至Ｓ１１までの処理が、図３で説明した第２のステップに対応する。
【００６６】
アプリ１１のアプリ製作者のPC２は、ステップＳ１２において、アプリ製作者の操作に基づいて、管理サーバ４にログインし、プッシュ通知を設定する設定画面（不図示）のページデータを要求する。
【００６７】
ステップＳ１３において、管理サーバ４は、PC２からのプッシュ通知の設定画面のページデータの要求に基づいて、プッシュ通知の設定画面のページデータをPC２に送信し、PC２は、それを受信する。
【００６８】
ステップＳ１４において、PC２は、受信したページデータに基づいて、プッシュ通知の設定画面をディスプレイに表示し、アプリ製作者による設定画面内の各項目への入力を受け付ける。
【００６９】
ここで、プッシュ通知の設定画面で入力可能な項目について説明する。
【００７０】
プッシュ通知の設定画面では、まず、プッシュ通知を行うアプリ１１を指定することができる。ここで指定されたアプリ１１を、以下では、指定アプリ１１という。
【００７１】
設定画面では、指定アプリ１１に対して、大きく、「１．アクション選択」、「２．時刻設定」、「３．対象ユーザ」、「４．通知内容」の４つの項目が設定される。
【００７２】
「１．アクション選択」の項目では、プッシュ通知のアクションを指定することができる。すなわち、「１．アクション選択」の項目では、図６を参照して説明した「ダイアログ表示」、「ステータスバー表示」、「アプリ自動起動」のいずれかのアクション（表示形態）が指定される。
【００７３】
「２．時刻設定」の項目では、プッシュ通知を行う時刻が指定される。具体的には、設定画面の入力を終えた時点で即座にプッシュ通知を行う「即時」か、または、入力指定された日時にプッシュ通知を行う「日時指定」のいずれかを指定することができる。
【００７４】
「３．対象ユーザ」の項目では、指定アプリ１１が携帯端末１にインストールされているユーザのなかでも、特に、どのようなユーザにプッシュ通知を行うかを指定することができる。
【００７５】
具体的には、指定アプリ１１がインストールされている全ユーザ、指定アプリ１１を起動したことが[ある]または[ない]ユーザ、所定のバージョンの指定アプリ１１を利用しているユーザ、などのユーザ指定が可能である。なお、ユーザID（端末ID）等により直接、ユーザを指定することもできる。
【００７６】
「４．通知内容」の項目では、プッシュ通知において表示されるメッセージの内容を入力することができる。なお、「４．通知内容」の項目は、「１．アクション選択」の項目において「アプリ自動起動」が指定された場合には省略される。
【００７７】
上述したような設定画面によるプッシュ通知の設定条件の入力（指定）が終了すると、ステップＳ１５において、PC２は、入力されたプッシュ通知の設定条件を管理サーバ４に送信し、管理サーバ４はそれを受信する。
【００７８】
以上のステップＳ１２乃至Ｓ１５までの処理が、図３で説明した第３のステップに対応する。
【００７９】
ステップＳ１６において、管理サーバ４は、ステップＳ１５で受信したプッシュ通知の設定条件で指定された時刻となったか否かを判定し、指定された時刻となるまで待機する。具体的には、上述した設定画面において「即時」が指定された場合は、ステップＳ１５の処理後、すぐのステップＳ１６の処理において、指定された時刻となったと判定される。一方、設定画面において「日時指定」が指定された場合には、指定された日時となったときのステップＳ１６の処理において、指定された時刻となったと判定される。
【００８０】
ステップＳ１６で、指定された時刻となったと判定された場合、処理はステップＳ１７に進み、管理サーバ４は、設定画面で指定された各種の条件に基づいて、行動履歴管理テーブル及びアプリ情報テーブルのデータを検索し、通知対象のユーザを特定する。例えば、アプリ情報テーブルに基づいて、指定アプリ１１がインストールされている携帯端末１であって、指定アプリ１１のバージョンが所定のバージョンより古いバージョンであるなどの条件に該当するユーザが特定される。あるいはまた、ユーザの所定の行動履歴が条件となっている場合には、行動履歴管理テーブルが参照され、例えば、一回も起動していないユーザなどが、通知対象のユーザとして特定される。
【００８１】
そして、ステップＳ１８において、管理サーバ４は、設定画面で指定された各種の条件に基づいて、通知の内容を決定する。即ち、管理サーバ４は、設定画面の「１．アクション選択」の項目に基づいて、ダイアログ表示、ステータスバー表示、または、アプリ自動起動のいずれかのアクションを決定する。また、管理サーバ４は、設定画面の「４．通知内容」の項目に基づいて、表示させるメッセージを決定する。
【００８２】
ステップＳ１９において、管理サーバ４は、ステップＳ１７で特定されたユーザの登録IDと、ステップＳ１８で決定された通知内容を、メッセージサービスサーバ５に送信し、メッセージサービスサーバ５はそれを受信する。
【００８３】
ステップＳ２０において、メッセージサービスサーバ５は、受信した登録IDに基づいて、携帯端末１の指定アプリ１１に対して、管理サーバ４から受信した通知内容を送信し、携帯端末１の常駐モードのアプリ１１は、それを受信する。
【００８４】
ステップＳ２１において、常駐モードのアプリ１１は、受信した通知内容を解析し、通知内容で指定されているアクションを実行する。
【００８５】
具体的には、通知内容で指定されているアクションがダイアログ表示である場合、常駐モードのアプリ１１は、設定画面の「４．通知内容」の項目で入力されたメッセージを取得し、ダイアログを模した画面に表示させる。
【００８６】
通知内容で指定されているアクションがステータスバー表示である場合、常駐モードのアプリ１１は、設定画面の「４．通知内容」の項目で入力されたメッセージをステータスバー２２ａに表示させる。
【００８７】
通知内容で指定されているアクションがアプリ自動起動である場合、常駐モードのアプリ１１は、本起動モードで実行する。
【００８８】
以上のステップＳ１６乃至Ｓ２１までの処理が、図３で説明した第４のステップに対応する。
【００８９】
以上説明した処理により、指定アプリ１１がインストールされた携帯端末１において、仮に、指定アプリ１１がインストール後、一度も起動されていなかったとしても、プッシュ通知が可能となる。
【００９０】
［アプリ１１の機能構成ブロック図］
図８は、上述したプッシュ通知機能に関するアプリ１１の機能的構成例を示すブロック図である。
【００９１】
アプリ１１は、常駐モード実行部３１と本起動モード実行部３２とを備える。常駐モードでは、常駐モード実行部３１のみが実行され、本起動モードでは、常駐モード実行部３１と本起動モード実行部３２の両方が実行される。
【００９２】
常駐モード実行部３１は、メッセージ送受信制御部４１、登録ID制御部４２、通知内容解析部４３、および通知内容表示制御部４４を有する。
【００９３】
メッセージ送受信制御部４１は、常駐モードにおける、管理サーバ４およびメッセージサービスサーバ５とのメッセージの送受信を制御する。
【００９４】
登録ID制御部４２は、図３で説明した第１のステップにおける処理、即ち、登録IDをメッセージサービスサーバ５にリクエストして取得し、取得した登録IDを、ユーザIDやアプリIDとともに管理サーバ４に通知するための処理を制御する。
【００９５】
通知内容解析部４３は、図３で説明した第４のステップにおいて、メッセージサービスサーバ５を介して管理サーバ４から送信されてくる通知内容を解析する処理を行う。
【００９６】
通知内容表示制御部４４は、通知内容解析部４３による解析結果に基づいて、ダイアログ表示、メッセージ表示、および本起動の制御を行う。
【００９７】
本起動モード実行部３２は、行動履歴制御部５１とメッセージ送受信制御部５２を有する。
【００９８】
行動履歴制御部５１は、本起動モードにおいて、プログラミング時に予め決定されている所定のアクションが発生したか否かを判定し、所定のアクションが発生したときに、行動履歴データ（ユーザID、アプリID、及びアクションID）を生成する。
【００９９】
メッセージ送受信制御部５２は、行動履歴制御部５１が生成した行動履歴データを管理サーバ４に送信する制御を行う。メッセージ送受信制御部４１とメッセージ送受信制御部５２は、モジュールとしては同一であってもよい。
【０１００】
［携帯端末１の構成ブロック図］
図９は、携帯端末１のハードウェア構成例を示すブロック図である。
【０１０１】
図９において、CPU（Central Processing Unit）７１は、各種の処理を実行する演算処理部である。CPU７１は、アプリ１０やアプリ１１等も実行する。CPU７１は、バス７５を介してROM（Read Only Memory）７２、RAM（Random Access Memory）７３、およびNVRAM（Non Volatile RAM）７４と相互に接続される。このバス７５にはまた、入出力インタフェース７６も接続され、入出力インタフェース７６には、記憶部７７およびドライブ７８が接続される。
【０１０２】
ROM７２には予めOS(Operating System)などの基本プログラムやデータが格納される。RAM７３およびNVRAM７４には、ROM７２や記憶部７７に格納されているアプリケーションプログラムやデータがロードされる。RAM７３およびNVRAM７４にはまた、CPU７１が各種の処理を実行する上において必要なデータなども適宜記憶される。記憶部７７は、フラッシュメモリなどにより構成され、アプリ１１を少なくとも記憶する。
【０１０３】
ドライブ７８は、必要に応じて装着される、半導体メモリなどのリムーバブルメディア７９からのデータを読み出し、入出力インタフェース７６等を介してCPU７１に供給したり、CPU７１から供給されるデータをリムーバブルメディア７９に書き込む。読み書きされるデータには、インストールされるアプリケーションプログラムのデータが含まれていてもよい。
【０１０４】
入出力インタフェース７６には、入力部８０、音声入出力部７１、タッチスクリーン８２、無線通信部８３、電話回線網通信部８４、および撮影部８５が接続される。
【０１０５】
入力部８０は、キーボード、操作ボタン等により構成され、ユーザの操作による入力を受け付けて、CPU７１等に供給する。音声入出力部８１は、スピーカ、マイクロホン等により構成され、通話のための音声を入出力する。
【０１０６】
タッチスクリーン８２は、表示部８２Aと位置検出部８２Bとを有し、各種の表示と、指等を近接、又は、接触（タッチ）することによる操作入力とが可能になっている。
【０１０７】
表示部８２Aは、液晶パネル等のデバイス（表示装置）で構成され、入出力インタフェース８６を介して供給されるデータに応じて、画像を表示する。
【０１０８】
位置検出部８２Bは、例えば、静電式等のタッチパネル等の、外部からの入力（近接・接触）を受け付ける（検知する）機能を有するデバイスで構成される。
【０１０９】
タッチスクリーン８２は、以上のような表示部８２Aと位置検出部８２Bとが一体的になっており、表示部８２Aにおいて画像を表示し、位置検出部８２Bにおいて、表示部８２Aに表示された画像に対する外部からの操作入力（タッチや近接）を受け付けることができる。
【０１１０】
位置検出部８２Bが出力する位置信号は、入出力インタフェース８６を介して、CPU７１に供給され、CPU７１では、位置検出部８２Bからの位置信号に基づき、どのような操作入力があったかが認識され、その操作入力に応じて、各種の処理が行われる。
【０１１１】
無線通信部８３は、WiFi方式等による無線通信を行う。電話回線網通信部８４は、移動体電話通信網を介して他の装置と音声通信、または、パケット通信を行う。撮影部８５は、CCD(Charge Coupled Device)やCMOS（Complementary Mental Oxide Semiconductor）センサ等の撮影素子などにより構成される。撮影部８５は、被写体を撮影し、撮影した被写体の画像データを、入出力インタフェース７６を介してCPU７１等に供給する。
【０１１２】
以上のように構成される携帯端末１において、コンピュータ（CPU７１）に、アプリ１１が携帯端末１のユーザによって起動指示されていない状態の所定のタイミングで、アプリ１１が、サーバから送信されてくるメッセージ（プッシュ通知）を受信し、受信したメッセージに基づいて、所定の内容を通知するダイアログを表示させる処理を実行させるようにした。これにより、確実かつ即時にユーザに認識されるように情報（メッセージ）を提供することができる。
【０１１３】
なお、携帯端末１には、数cm程度の近接距離で電磁誘導を利用した非接触通信を行う非接触通信部、ブルートゥース（Bluetooth（登録商標））方式による無線通信部、赤外線による通信を行う赤外線通信部などの、その他の構成をさらに備えるようにしてもよい。
【０１１４】
また、上述した実施形態では、携帯端末１がスマートフォンであるとして説明したが、携帯端末１は、スマートフォンに限らず、PND(Portable Navigation Device)、電子書籍リーダーなどのタブレット端末でもよく、アプリケーションプログラムをダウンロードして実行可能な携帯型の情報処理端末であればよい。
【０１１５】
アプリ提供サーバ３、管理サーバ４、およびメッセージサービスサーバ５それぞれのハードウェア構成の図示は省略するが、それらの各サーバは、CPU、ROM、RAM、ハードディスク等の記憶部を有している。そして、各サーバは、記憶部またはROM等に記憶されているプログラムからRAMにロードされたプログラムに従って、上述した一連の処理を含む各種の処理を実行することができる。また、各サーバは、LANやインターネット等に接続してデータ通信を行う通信部、キーボード、マウスなどよりなる入力部、スピーカ、ディスプレイなどよりなる出力部も備える。
【０１１６】
上述した実施の形態では、アプリ製作者がプッシュ通知を利用して、アプリ１１をインストールしたユーザに対して所定のメッセージを発信する例について説明した。しかし、プッシュ通知の利用者は、上述したようなアプリ製作者に限られない。
【０１１７】
例えば、アプリ１１のアクセス解析などを行う管理サーバ４の運営業者が、アプリ製作者などの依頼に応じて、プッシュ通知実行の設定を行うことも可能である。あるいは、管理サーバ４のプッシュ通知実行プログラムに、例えば、「月の最初の日曜日に送信する」などのように定期的または不定期にプッシュ通知が自動的に実行されるように組み込んでおいてもよい。このような場合、アプリ製作者のPC２は不要となる。
【０１１８】
また例えば、友達どうしなどで、互いに、アプリ１１をインストールしていること、及び、相手のユーザIDなどの情報が既知である場合に、友達Aが管理サーバ４にアクセスして、プッシュ通知を利用して友達Bに所定のメッセージを送信する、などのコミュニケーションツールとして利用することも可能である。この場合、アプリ１１自身が、確実性および即時性を備えたコミュニケーションアプリであると捉えることもできる。
【０１１９】
本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる場合はもちろん、必ずしも時系列的に処理されなくとも、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで実行されてもよい。
【０１２０】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１２１】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１２２】
１  携帯端末
３  アプリ提供サーバ
４  管理サーバ
５  メッセージ（MSG）サービスサーバ
１１  アプリケーションプログラム（アプリ）
３１  常駐モード実行部
３２  本起動モード実行部
４１  メッセージ送受信制御部
４２  登録ID制御部
４３  通知内容解析部
４４  通知内容表示制御部
５１  行動履歴制御部
５２  メッセージ送受信制御部
【図１】
0005832807.tif 000002
【図２】
0005832807.tif 000003
【図３】
0005832807.tif 000004
【図４】
0005832807.tif 000005
【図５】
0005832807.tif 000006
【図６】
0005832807.tif 000007
【図７】
0005832807.tif 000008
【図８】
0005832807.tif 000009
【図９】
0005832807.tif 000010