以下、本発明の一実施形態について、図面を参照して説明する。
<第1の実施形態>
〔相互送客システムの概要〕
まず、本実施形態による相互送客システムの概要を説明する。この相互送客システムは、ユーザ端末に既にインストールされて利用されている元のアプリケーション(以下、「送客元アプリ」とも称する)から、そのユーザ端末にまだインストールされていないアプリケーション(以下、「送客先アプリ」とも称する)をインストールさせるようにアプリケーション間で相互送客するシステムである。しかしながら、アプリケーション毎に登録されるユーザ自身のユーザ情報は異なる場合があるため、アプリケーション間でユーザ情報の整合がとれず、同一のユーザのユーザ端末において送客元アプリから送客先アプリへの送客が行われたか容易に判定できないことがある。そこで、本実施形態では、同一ユーザであって異なるユーザ情報で管理されているアプリケーション間である場合も、相互送客が可能な相互送客システムを提供することを目的とし、アプリケーション間でユーザ情報が異なる場合であっても容易にアプリケーション間の相互送客を行うことができるように構成する。
ここで、送客元アプリから送客先アプリへの送客とは、送客元アプリを利用しているユーザがまだ利用していない送客先アプリを利用するように、当該ユーザを送客先アプリへ送客することをいう。また、相互送客とは、各アプリケーションがそれぞれ送客元と送客先とのいずれにもなりうるため、アプリケーション間で互いに送客を行うことができることを示している。例えば、送客元アプリから送客先アプリへの送客が行われた場合、この送客先アプリは、ユーザ端末にまだインストールされていない他の送客先アプリへの送客を行う送客元アプリになることができる。
また、送客先アプリがインストールされた場合に報酬が付与される相互送客システムでは、報酬獲得だけを目的として送客先アプリが利用されない可能性もある。そこで、本発明ではインストールされた送客先アプリが所定の成果地点に到達した場合に報酬が付与されるようにしている。さらに、異なる複数の成果地点を設けるようにすれば、達成した成果地点毎に報酬を得られるようにしている。このような成果達成型の報酬とすることで送客先アプリの利用を高めることが可能となる。
本実施形態では、送客元アプリに基づいて送客先アプリがインストールされた場合の報酬(リワード)の付与を、通常時期と特定の期間(以下、「キャンペーン期間」と称する)とのそれぞれで異なるリワード処理とする。なお、キャンペーンとは、複数のアプリケーションの間で、特定の期間だけ相互送客を高めるために実施する施策(特定の期間を有するイベント)のことである。
具体的には、本実施形態の相互送客システムは、通常時期(即ち、キャンペーン期間以外の時期)では、送客先アプリがインストールされたときに報酬(リワード)が付与され、キャンペーン期間では、送客先アプリにおける成果達成時に報酬(リワード)が付与されるようにした複数のアプリケーションどうしでの相互送客を可能にするシステムを提供する。以下、通常時期に行われるリワードを「通常リワード」と称し、キャンペーン期間に行われるリワード(キャンペーンリワード)を「CPリワード」と称する。
CPリワードは、キャンペーン期間にキャンペーンに参加する特定のアプリケーション間での相互送客であるのに対して、通常リワードは、同システムに対応するアプリケーションの全てを対象とする任意のアプリケーション間での相互送客となる。
図1は、本実施形態の相互送客システムの概要を説明する説明図である。この図では、本実施形態の相互送客システムに対応するアプリケーションとして、「アプリA」、「アプリB」、「アプリC」、及び「アプリD」の4種類のアプリケーションを例としている。「アプリA」は、ユーザ端末にインストールされている送客元アプリである。「アプリB」、「アプリC」、及び「アプリD」は、ユーザ端末にインストールされていないアプリケーションであって、「アプリA」(送客元アプリ)に対して送客先アプリとなり得るアプリケーションである。なお、「アプリB」は、「アプリA」との間でキャンペーン期間中にあり、「アプリC」及び「アプリD」は、「アプリA」との間でキャンペーン期間中ではない通常時期にある。
ユーザ端末は、送客元アプリである「アプリA」に対して送客先アプリとして選択可能な対象アプリケーションの一覧LTを、ユーザ端末の表示画面に表示する。ここでは、「アプリB」、「アプリC」、及び「アプリD」のそれぞれのアプリ名と報酬内容とが表示されたラベルL1、L2、L3が送客先アプリとして選択可能な操作子として並べて表示されている。ラベルL1には、「アプリB」のアプリ名、キャンペーン期間中であることを示す情報、及びCPリワードによる報酬内容が掲載されているサイトのリンク先が表示されている。ラベルL2には、「アプリC」のアプリ名、及び通常リワードによる報酬内容が表示されている。ラベルL3には、「アプリD」のアプリ名、及び通常リワードによる報酬内容が表示されている。
ここでは、通常リワードの場合、送客元アプリで自ユーザが利用可能なポイントの付与が報酬内容として表示されている。一方、CPリワードの場合には、例えば、ゲームにおいて報酬付与条件となる成果地点とその成果地点を達成したときの報酬内容(ポイントの付与やアイテムの付与等)は、アプリケーション側で管理しているため、リンク先のサイトに掲載するようにしている。なお、成果地点は、例えば、ゲームにおけるチュートリアルの終了、またはゲーム進行における所定のステージの終了や所定のポイントの獲得などアプリケーション側で任意に設定することができる。
送客先アプリとして「アプリC」または「アプリD」が選択された場合には、選択された「アプリC」または「アプリD」がインストールされて実行可能になったとき又は実行された(起動した)ときに送客元である「アプリA」に対する通常リワードによる報酬付与が行われる。一方、送客先アプリとして「アプリB」が選択された場合には、キャンペーン期間中に「アプリB」がユーザ端末にインストールされて実行可能になったことを条件として、「アプリB」が起動した後、そのキャンペーンに対応して予め設定された成果地点を達成(報酬付与条件を充足)した場合、送客元である「アプリA」に対するCPリワードによる報酬付与が行われる。なお、例えば、キャンペーン期間の最初又は途中から開始し、キャンペーン期間の最後より後に終了する報酬付与期間が設定されており、この報酬付与期間内に成果地点の達成がなされた場合にCPリワードによる報酬付与が行われ、報酬付与期間を過ぎた後では成果地点が達成されてもCPリワードによる報酬付与が行われない。成果地点が複数設定されている場合には、成果地点の達成毎にCPリワードによる報酬付与が行われる。このように報酬付与期間の終了時点をキャンペーン期間の終了時点より後に設定するようにして、キャンペーン期間の最後の方でインストールしたユーザに対して、成果地点に達成するまでの期間を考慮するようにしている。
また、ユーザ端末にインストールされた複数のアプリケーションのユーザが同一であっても、アプリケーション毎に登録されるユーザ情報(例えば、ユーザを一意に識別する識別情報であるユーザID)が異なる場合がある。そこで本実施形態の相互送客システムでは、ユーザ端末毎に一意に識別可能な情報である固有識別情報であって、ユーザ端末を特定可能な(当該ユーザ端末を利用しているユーザを特定可能な)固有識別情報(以下、「リワードユーザID」と称する)を用いて管理するようにした。これにより、アプリケーション間でユーザIDが異なる場合であっても、リワードユーザIDを用いてユーザ端末を特定することができ、容易にアプリケーション間の相互送客が可能となる。
さらに、本実施形態の相互送客システムでは、リワードユーザIDと各アプリケーションにおいて登録されたユーザID(以下、「アプリユーザID」と称する)とを関連付けて管理するようにした。これにより、アプリケーション間でユーザIDが異なる場合であっても、アプリケーション間のアプリユーザIDがリワードユーザIDを介して関連付けられるため、送客元アプリのユーザを容易に特定して報酬を付与することも可能である。なお、以下の記述において、アプリケーションを一意に識別する識別情報を「アプリID」と称する。
また、送客元アプリから送客先アプリへの送客が行われると、その送客先アプリは、送客元アプリになることができる。例えば、「アプリA」から「アプリB」への送客が行われると、「アプリB」は、まだ送客が行われていない「アプリC」又は「アプリD」を送客先アプリとして、「アプリC」又は「アプリD」への送客を行う送客元アプリとなることができる。このとき、「アプリC」又は「アプリD」は、「アプリB」との間でキャンペーン期間中にない場合には通常リワードの対象となり、「アプリB」との間でキャンペーン期間中にある場合にはCPリワードの対象となる。また、例えば「アプリA」から「アプリC」への送客が行われた場合も同様に、送客が行われた「アプリC」は、まだ送客が行われていない「アプリB」又は「アプリD」への送客を行う送客元アプリとなることができる。
なお、アプリケーションの状態の一例として、非動作状態(Not running)と、何らかの処理を実行している通常動作状態(Active)と、何らかの処理を実行しているが画面に非表示とするバックグラウンド状態(BackGround)と、いずれの処理も実行せずに中断しているサスペンド状態(Suspended)がある。ここで、「対象アプリケーションの起動」とは、非動作状態(Not running)、サスペンド状態(Suspended)、またはサスペンド状態(Suspended)から通常動作状態(Active)に移行することをいう。また、「対象アプリケーションの終了」とは、通常動作状態(Active)から、非動作状態(Not running)、サスペンド状態(Suspended)、またはサスペンド状態(Suspended)に移行することをいう。また、複数のアプリケーションが同時に通常動作状態に成り得る場合には、「対象アプリケーションの起動」とは、例えば、対象アプリケーションが画面の最前面に表示されるなどして、ユーザに対して操作可能な状態に移行することをいう。
また、アプリケーションのインストールとは、ユーザ端末に導入されていないアプリケーションのプログラムを新規に導入することだけでなく、相互送客システムに対応するようにアプリケーションのプログラムをアップデート(更新)することを含む。すなわち、ユーザ端末に搭載しているアプリケーションに対して、相互送客システムに対応するための更新プログラムをダウンロードして更新することを含む。
〔ネットワークシステムの構成〕
図2は、相互送客システムを実現する本発明の第1の実施形態によるネットワークシステム1の構成の一例を示す概略構成図である。ネットワークシステム1は、複数のユーザ端末100−N(Nは正の整数。ユーザ端末100−1、ユーザ端末100−2、・・・)と、管理サーバ200と、複数のアプリサーバ300(アプリサーバ310、アプリサーバ320、・・・)と、アプリストア400とのコンピュータ装置を備えており、これらのコンピュータ装置はネットワークNWを介して通信可能に接続される。ここで、複数のユーザ端末100−Nは同様の構成であるので、特に区別しない場合には、「−1」、「−2」等の記載を省略してユーザ端末100として説明する。
アプリサーバ300は、ユーザ端末100にインストール可能なアプリケーションに対応するサーバ装置である。ここでは、ユーザ端末100にインストールされるアプリケーションがゲームである場合を例として、ゲームAに対応するアプリサーバ310と、ゲームBに対応するアプリサーバ320とが、ネットワークNWを介してユーザ端末100と接続されることを示している。なお、ネットワークシステム1には、アプリサーバ310及びアプリサーバ320に限らず、ユーザ端末100にインストールされてプレイすることができるゲームに対応して複数のアプリサーバ300が備えられる。ここで、ユーザ端末100にインストールされるアプリケーションとは、アプリケーションのプログラムがユーザ端末100にインストールされることにより、インストールされたプログラムに基づいてユーザ端末100がアプリケーションに関する処理(例えば、ゲームの処理)を行う、所謂ネイティブ型のアプリケーションである。ユーザ端末100は、ゲームをプレイするユーザに対応したユーザ情報をアプリサーバ300に送信したり、ゲームのプレイ中に必要な情報をアプリサーバ300から取得したりする。
アプリストア400は、ユーザ端末100にインストール可能なアプリケーションをダウンロード可能なストアサイト(ダウンロードサービスサイト)を提供するサーバ装置である。ユーザは、自身のユーザ端末100からネットワークNWを介してアプリストア400に接続して所望のアプリケーションを有料または無料で購入することにより、購入したアプリケーションを自身のユーザ端末100にダウンロードしてインストールすることができる。
ここで、アプリケーション(ゲーム)の提供者からすると、提供するアプリケーションをより多くのユーザに購入してもらえるように、購入の動機付けとなるようなサービスの提供が望まれる。
例えば、ユーザ端末100にインストールされているアプリケーションの利用中に表示される表示画面やユーザの操作により遷移した表示画面に、まだインストールされていないアプリケーションの広告(バナー)を表示させ、その広告(バナー)が選択されると上述のストアサイトに誘導され、その後、選択されたアプリケーションがダウンロードされてユーザ端末100にインストールされて実行可能になった又は実行された場合、ダウンロードのきっかけとなった広告(バナー)が表示された元のアプリケーションのユーザ自身の利用に対して報酬が付与されるようなサービスの提供が考えられる。この場合、元のアプリケーションで利用可能な報酬(例えば、ゲームで利用可能なアイテムやゲームポイント等)がユーザ自身に付与されるため、報酬を得たいユーザにとって新なアプリケーションを購入する動機付けとなる。これにより、アプリケーションの販売の促進に繋げることが可能となる。
管理サーバ200は、本実施形態の相互送客システムに対応するアプリケーションに関する情報や通常リワードまたはCPリワードに関する情報を管理するとともに、ユーザ端末100と通信することにより、アプリケーション間の送客情報の管理やリワードの処理を制御する管理装置である。具体的には、管理サーバ200は、送客元アプリから送客先アプリに対する送客情報として、例えば、送客元アプリのアプリID、送客先アプリのアプリID、及びリワードユーザIDを関連付けて管理する。
ユーザ端末100は、ユーザによって使用される端末装置であり、例えば、携帯電話やスマートフォン、タブレット端末、パーソナルコンピュータ、通信機能付きゲーム機などが用いられる。ここでは、ユーザ端末100はスマートフォンであるとして説明する。
図3は、本実施形態によるユーザ端末100の構成の一例を示す概略構成図である。この図に示すように、ユーザ端末100は、入力部110と、表示部120と、端末通信部130と、端末記憶部140と、端末制御部150とを備えている。
入力部110は、ユーザからの操作に応じてユーザの指示を受付けて、指示内容に応じた入力指示情報を生成する入力デバイスである。入力部110には、例えば、キーボードやボタン、タッチパネル、マウス、マイクロホン等を適用できる。
表示部120は、画像や文字等の情報を表示する表示デバイスであり、例えば、LCD(Liquid Crystal Display)、有機EL(Electro Luminescence)ディスプレイ等を適用できる。入力部110と表示部120とは一体に構成されてユーザからの操作入力を受け付けるタッチパネルとして適用することもできる。
端末通信部130は、ネットワークNWを介して管理サーバ200またはアプリサーバ300と通信する。
端末記憶部140は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュROM、HDD(Hard Disk Drive)等の記録媒体またはこれらの組合せを用いて構成され、ユーザ端末100が備える各部を制御するためのプログラム(例えば、端末制御部150に基本動作を行わせるためのOS(Operating System))、インストールされたアプリケーションのプログラム、各種情報等を記憶する。
端末制御部150は、ユーザ端末100の制御中枢として機能するCPU(Central Processing Unit)等の情報処理装置を備えており、ユーザ端末100が備える各部を制御する。例えば、端末制御部150は、端末記憶部140に記憶されているOSに基づく基本動作の処理を実行するとともに、アプリケーションのプログラム(ゲームのプログラム)に基づく処理を実行する。また、端末制御部150は、OS上で動作可能な各種のアプリケーション(Webブラウザや、アプリストア400が提供するストアサイトのストアページを表示させるアプリケーション等)の機能をOSを介して実行する処理を行う。
ネットワークNWは、例えば、携帯電話網、PHS(Personal Handy-phone System)網、VPN(Virtual Private Network)網、専用通信回線網、WAN(Wide Area Network)、LAN(Local Area Network)、PSTN(Public Switched Telephone Network;公衆交換電話網)など、またはこれらの組み合わせによって構成される情報通信ネットワークである。
〔相互送客システムの構成及び処理〕
次に、図4を参照して、相互送客システムの構成及び処理について説明する。
図4は、本実施形態のネットワークシステム1における相互送客システムの構成及び処理の一例を説明する説明図である。
ここでは、ユーザXが利用するユーザ端末100に送客元アプリ10(ゲームA)が既にインストールされており、送客元アプリ10(ゲームA)が実行されてユーザXの操作に基づいて、送客先アプリ20(ゲームB)がユーザ端末100にインストールされて実行された場合、送客元アプリ10(ゲームA)におけるユーザXに対して報酬(リワード)が付与される例を説明する。なお、送客元アプリ10(ゲームA)はインストールされた時点では、まだ送客元となっていないが、便宜上送客元アプリ10と称して説明する。
この図では、ユーザ端末100には、端末制御部150の制御により実行されるインストールされた送客元アプリ10(ゲームA)と、送客処理中に起動されるストア30(ストアサイトのストアページを表示するアプリケーション)と、新にインストールされて実行される送客先アプリ20(ゲームB)とを模式的に示している。
送客元アプリ10(ゲームA)は、ゲームAをプレイするユーザXに対応したユーザIDをアプリサーバ310(ゲームA)に送信したり、ゲームAのプレイ中に必要な情報をアプリサーバ310(ゲームA)から取得したりする。同様に、送客先アプリ20(ゲームB)がユーザ端末100にインストールされた場合には、送客先アプリ20(ゲームB)は、ゲームBをプレイするユーザXに対応したユーザIDをアプリサーバ320(ゲームB)に送信したり、ゲームBのプレイ中に必要な情報をアプリサーバ320(ゲームB)から取得したりする。
また、本実施形態の相互送客システムに対応するアプリケーションには、相互送客処理用のソフトウェア(以下、SDK(Software Development Kit)11と称する)が組み込まれている。このSDK11は、例えば、ユーザ端末100にインストールされた相互送客システムに対応する各アプリケーションと管理サーバ200とを仲介するためのAPI(Application Programming Interface)の集合体で構成されている。この図では、送客元アプリ10(ゲームA)にはSDK11Aが組み込まれ、送客先アプリ20(ゲームB)にはSDK11Bが組み込まれている。SDK11AとSDK11Bとのそれぞれは、送客元アプリ10と送客先アプリ20とのそれぞれに対応する機能を実行する構成を備えており、各アプリケーションに応じて必要な機能が実行される。なお、相互送客システムに対応するアプリケーションは、送客元アプリ10と送客先アプリ20のどちらにもなり得るので、SDK11AとSDK11Bの両方の構成を備えたSKD11が組み込まれている。
つまり、上述のSDK11を組み込み可能なようにアプリケーションを構成すれば、当該アプリケーションは、本実施形態の相互送客システムに対応するアプリケーションとなる。なお、上述のSDK11が予め組み込まれているアプリケーションがダウンロード可能に提供されてもよいし、インストールされているアプリケーションに対して後から組込み可能なSDK11が提供されてもよい。
なお、相互送客システムに対応するアプリケーションの中には、送客先アプリ20にのみに対応するアプリケーションがあってもよい。その場合には、SDK11Bのみが組み込まれているようにしてもよいし、SDK11を組み込んでSDK11Aを機能させないようにしてもよい。また、送客先アプリ20にのみに対応するアプリケーションの場合は、アプリケーションに対応するアプリサーバを具備する必要がないため、例えばユーザ端末100においてスタンドアローンで動作するアプリケーションを相互送客システムに対応するアプリケーションの対象とすることができる。
また、相互送客システムに対応するアプリケーションの中には、送客元アプリ10にのみに対応するアプリケーションがあってもよい。その場合には、SDK11Aのみが組み込まれているようにしてもよいし、SDK11を組み込んでSDK11Bを機能させないようにしてもよい。例えば、アプリケーションによるサービスの提供が終了することが決まって新たなユーザの登録を受け付けないようなアプリケーションは、送客先アプリ20としての機能を具備しないようにしてもよい。
上述のSDK11(この図ではSDK11A、SDK11B)と管理サーバ200とを備えた構成が本実施形態の相互送客システムの主要な構成であり(符号500参照)、以下、相互送客システム500と符号を付して記述する。
管理サーバ200は、ユーザ端末100にインストールされた相互送客システム500に対応するアプリケーションに組み込まれたSDK11と通信することにより、相互送客処理を実行する。また、管理サーバ200は、送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対してリワードに関する情報を送信する。これにより、アプリサーバ310(ゲームA)から送客元アプリ10(ゲームA)におけるユーザXに対して報酬が付与される。
この図に示すように管理サーバ200は、通信部210と、管理部220と、記憶部230と、制御部240と、を備えている。通信部210は、ネットワークNWを介してユーザ端末100、アプリサーバ310(ゲームA)、またはアプリサーバ320(ゲームB)と通信する。管理部220は、相互送客システム500に対応するアプリケーションに関する情報、キャンペーンに参加しているアプリケーションの情報、アプリケーション間の送客情報、通常リワード及びCPリワードに関する情報等を記憶部230に記憶させて管理する。記憶部230は、管理部220または制御部240の制御により各種情報を記憶する。制御部240は、ユーザ端末100またはアプリサーバ310(ゲームA)との相互送客処理に関する情報の授受の制御やリワードに関する処理の制御を行う。
なお、以下の記述において、管理部220の管理の対象となる相互送客システム500に対応するアプリケーションのことを「対象アプリケーション」とも称し、この対象アプリケーションのうちのキャンペーンに参加する特定のアプリケーションのことを「特定アプリケーション」とも称する。
続いて、相互送客処理の概略の流れについて説明する。
ここでは、相互送客システム500に対応する対象アプリケーションの情報が、管理サーバ200に予め管理されているものとする。また、ユーザ端末100は、このユーザ端末100に対応する固有識別情報であるユーザXのリワードユーザIDを取得済みで、取得したリワードユーザIDがこのユーザ端末100にインストールされる相互送客システム500に対応するアプリケーションから参照可能なように端末記憶部140の所定の領域(アプリ間共有エリア)に記憶されているものとする。
(1)ユーザ端末100に送客元アプリ10(ゲームA)がインストールされた場合、送客元アプリ10(ゲームA)に組み込まれているSDK11Aは、送客元アプリ(ゲームA)がインストールされたことを示すインストール通知情報を管理サーバ200に対して送信する(REQ11)。ここで、インストール通知情報には、例えば、送客元アプリ10(ゲームA)のアプリIDと、リワードユーザIDとが含まれる。
(2)管理サーバ200は、ユーザ端末100(SDK11A)から送信されたインストール通知情報を取得すると、取得したことを示す応答情報(通知結果)を、ユーザ端末100(SDK11A)に対して送信する(RES11)。また、管理サーバ200は、取得したインストール通知情報に含まれる送客元アプリ10(ゲームA)のアプリIDと、リワードユーザIDとを関連付けて管理する。
(3)ユーザ端末100(SDK11A)は、相互送客システム500に対応する対象アプリケーションの少なくとも一の対象アプリケーションのアプリケーションリスト(送客先アプリ20の候補となる対象アプリケーションを示す情報)を要求するリスト要求通知情報を管理サーバ200に対して送信する(REQ12)。
(4)管理サーバ200は、ユーザ端末100(SDK11A)からリスト要求通知情報を取得すると、管理の対象となる複数の対象アプリケーションのうちのユーザ端末100からインストール通知情報を取得していない(即ち、ユーザ端末100にインストールされたことがない)少なくとも一の対象アプリケーションのアプリケーションリストをユーザ端末100(SDK11A)に対して送信する(RES12)。このとき、管理サーバ200は、キャンペーンに参加している特定アプリケーションにはそのキャンペーンに関する情報を関連付けて送信する。
ユーザ端末100(SDK11A)は、管理サーバ200からアプリケーションリストを取得すると、取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示する。
(5)表示部120に表示された対象アプリケーションの一覧LTの中からいずれかの対象アプリケーションがユーザXにより選択されると、ユーザ端末100(SDK11A)は、送客元アプリ10(ゲームA)から、選択された対象アプリケーション(ここでは、送客先アプリ20(ゲームB))へ送客されたことを示す送客情報を管理サーバ200に対して送信する(REQ13)。ここで、送客情報には、例えば、送客元アプリ10(ゲームA)のアプリIDと、送客先アプリ20(ゲームB)のアプリIDと、リワードユーザIDとが含まれる。
(6)管理サーバ200は、ユーザ端末100(SDK11A)から送客情報を取得すると、取得した送客情報に基づいて、送客先アプリ20(ゲームB)をインストール可能な画面に誘導する指示情報(例えば、当該画面をユーザ端末100の表示部120に表示させる指示情報)をユーザ端末100(SDK11A)に対して送信する(RES13)。また、管理サーバ200は、取得した送客情報に含まれる送客元アプリ10(ゲームA)のアプリIDと、送客先アプリ20(ゲームB)のアプリIDと、リワードユーザIDとを関連付けて管理する。
(7)ユーザ端末100は、管理サーバ200から上述の指示情報を取得すると、送客先アプリ20(ゲームB)をインストール可能(ダウンロード可能)なストアサイトのストアページを表示するアプリケーションであるストア30を起動させる。このストア30は、アプリストア400から、送客先アプリ20(ゲームB)をインストール可能なストアページを取得して表示部120に表示させる。ユーザXの操作により送客先アプリ20(ゲームB)がユーザ端末100にダウンロードされてインストールされた後、引き続きユーザXの操作によりインストールされた送客先アプリ20(ゲームB)が起動される。
(8)ユーザ端末100(SDK11B)は、送客先アプリ20(ゲームB)がインストールされたことを示すインストール通知情報を管理サーバ200に対して送信する(REQ14)。ここで、インストール通知情報には、例えば、送客先アプリ20(ゲームB)のアプリIDと、リワードユーザIDとが含まれる。
(9)管理サーバ200は、ユーザ端末100(SDK11B)から送信されたインストール通知情報を取得すると、取得したことを示す応答情報を、ユーザ端末100(SDK11B)に対して送信する(RES14)。また、管理サーバ200は、この取得したインストール通知情報と管理している送客情報とに基づいて、この送客先アプリ20(ゲームB)が、ユーザ端末100において送客元アプリ10(ゲームA)から送客されたものであると判定する。
(10)ここで、送客先アプリ20(ゲームB)が特定アプリケーションであって、送客元アプリ10(ゲームA)との間でキャンペーン中であるとする。この場合には、送客先アプリ20(ゲームB)において、キャンペーンに対応して予め設定された報酬付与条件が充足された(成果地点に到達した)ことに基づいて、ユーザ端末100(SDK11B)は、報酬付与条件が充足されたことを示す報酬付与通知情報(成果地点到達を示す情報)を管理サーバ200に対して送信する(REQ15)。成果地点が複数ある場合には、ユーザ端末100(SDK11B)は、各成果地点に到達したことに基づいてその数分の報酬付与通知情報(成果地点到達を示す情報)を管理サーバ200に対して送信する。
(11)管理サーバ200は、ユーザ端末100(SDK11B)から報酬付与通知情報を取得すると、取得した報酬付与通知情報に基づく報酬付与情報であって、送客先アプリ20(ゲームB)において成果地点に到達したことを示す報酬付与情報を、送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して送信する(CPリワードの処理)。成果地点が複数ある場合には、管理サーバ200は、その数分の報酬付与通知情報に基づく報酬付与情報をアプリサーバ310(ゲームA)に対して送信する。
ここで、管理サーバ200は、送客先アプリ20(ゲームB)での成果地点到達を示す情報を送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して送信することを仲介するだけであって、送客先アプリ20(ゲームB)での成果地点の設定内容、及びそれぞれの成果地点到達した場合に送客元アプリ10(ゲームA)に付与される報酬内容については関与しない。ユーザ端末100の表示画面に対象アプリケーションの一覧LTを表示する場合に、CPリワードによる報酬内容を表示画面に表示せずに、CPリワードによる報酬内容が掲載されているサイトのリンク先を表示しているのは、管理サーバ200が報酬内容について関与しないからである。
なお、送客先アプリ20(ゲームB)が特定アプリケーションではない対象アプリケーションである場合(或いは、特定アプリケーションであってもキャンペーン期間外の場合)には、管理サーバ200は、ユーザ端末100(SDK11B)から送信された送客先アプリ20(ゲームB)がインストールされたことを示すインストール通知情報を取得すると、通常リワードによる成果地点に到達したことを示す報酬付与情報をアプリサーバ310(ゲームA)に対して送信する(通常リワードの処理)。
このような処理の流れにより、送客元アプリ10(ゲームA)から送客先アプリ20(ゲームB)に対して送客がなされる。ここで、相互送客システム500においては、SDK11A及びSDK11Bと管理サーバ200との間で授受される各情報が、ユーザ端末100に対応するリワードユーザIDにより、直接またはいずれかの情報を介して関連付けされている。これにより、相互送客システム500は、送客元アプリ10(ゲームA)と送客先アプリ20(ゲームB)とにおいてアプリユーザIDが異なる場合であっても、アプリケーション間の相互送客処理やリワード処理を容易に行うことができる。
次に、相互送客システム500が備えるSDK11(SDK11A及びSDK11B)と、管理サーバ200との各構成の詳細について説明する。
〔ユーザ端末100(SDK11)の機能構成〕
図5は、本実施形態によるユーザ端末100において、端末制御部150がSDK11に基づいて実行する相互送客処理の機能構成の一例を示す構成図である。この図5を参照して、相互送客システム500においてユーザ端末100(SDK11)が実行する相互送客処理の機能構成について説明する。
SDK11は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106と、報酬付与通知部107とを備えている。
初期化処理部101は、SDK11の組み込み先のアプリケーションがユーザ端末100インストールされると、初回起動時の処理として、当該アプリケーションに関する情報(例えば、アプリID、アプリユーザID等)を取得する。また、初期化処理部101は、固有識別情報取得部102と、インストール通知部103とを備えている。
固有識別情報取得部102は、ユーザ端末100毎に固有に設定される固有識別情報であって、そのユーザ端末100を利用するユーザを一意に識別可能な固有識別情報であるリワードユーザIDを取得する。例えば、固有識別情報取得部102は、擬似乱数列を生成し、生成した擬似乱数列を用いて他のユーザ端末100のリワードユーザIDとは重複しないようにユーザ端末100に対応するリワードユーザIDを生成して取得する。また、固有識別情報取得部102は、取得したリワードユーザIDを、ユーザ端末100にインストールされたいずれの対象アプリケーションからも参照可能なように端末記憶部140のアプリ間共有エリアに記憶させる。
ここで、固有識別情報取得部102は、インストールされた対象アプリケーションが複数の対象アプリケーションのうちの最初にユーザ端末100にインストールされた対象アプリケーションである場合、リワードユーザIDを取得する。つまり、端末記憶部140のアプリ間共有エリアにリワードユーザIDが記憶されていない場合、リワードユーザIDを取得する。そして、この取得されたリワードユーザIDは、それ以降にインストールされた対象アプリケーションにおいても利用される。
インストール通知部103は、ユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報を管理サーバ200に対して送信する。ここで、上述のインストール通知情報には、当該インストールされた対象アプリケーションのアプリIDと、このユーザ端末100に対応するリワードユーザIDとが含まれる。なお、相互送客システム500による送客処理を介さずにユーザがストアサイトからダウンロードして対象アプリケーションがインストールされた場合と、相互送客システム500による送客処理を介してインストールされた場合(単に対象アプリケーションがインストールされた場合)とのいずれでも、ユーザ端末100からインストール通知情報が送信される。また、インストールされた対象アプリケーションが特定アプリケーションの場合、インストール通知部103は、ユーザ端末100にインストールされた特定アプリケーションの当該インストールされたことを示すインストール通知情報を管理サーバ200に対して送信することとなる。
また、インストール通知部103は、インストールされた対象アプリケーションをインストールしたユーザのインストールされた対象アプリケーションにおけるアプリユーザIDをさらに含めたインストール通知情報を管理サーバ200に対して送信してもよい。これにより、このインストール通知情報を取得した管理サーバ200は、インストールされた対象アプリケーションにおけるアプリユーザIDとリワードユーザIDとを関連付けて管理することができる。なお、アプリユーザIDの送信タイミングは、このインストール通知情報に含ませずに他の情報に含ませるようにしてもよい。
ここで、このインストール通知部103がインストール通知情報を管理サーバ200に対して送信する処理は、送客元アプリ10のSDK11Aであっても、送客先アプリ20のSDK11Bであっても同様に、それぞれのインストールされたアプリケーションが起動した場合に実行される。
リスト要求部104は、送客元アプリ10における所定の操作(第1の操作)に基づいて、複数の対象アプリケーションの少なくとも一の対象アプリケーション(或いは特定アプリケーション)のアプリケーションリストを要求するリスト要求通知情報を管理サーバ200に対して送信する。ここで、上述の所定の操作とは、送客元アプリ10において、対象アプリケーション(或いは特定アプリケーション)のアプリケーションリストを管理サーバ200から取得するための例えば入力部110に対するユーザの操作である。また、上述のリスト要求通知情報には、例えば、送客元アプリ10(対象アプリケーション(或いは特定アプリケーション))のアプリID(送客元情報)と、このユーザ端末100に対応するリワードユーザIDとが含まれる。
また、リスト要求部104は、送信したリスト要求通知情報に基づいて管理サーバ200から送信されたアプリケーションリストを取得する。
なお、リスト要求部104は、送客元アプリ10との間でキャンペーンが設定されている特定アプリケーションを含む対象アプリケーションのアプリケーションリストを要求するリスト要求通知情報を管理サーバ200に対して送信してもよいし、当該特定アプリケーションを含まない対象アプリケーションのアプリケーションリストを要求するリスト要求通知情報を管理サーバ200に対して送信してもよい。また、リスト要求部104は、送客元アプリ10との間でキャンペーンが設定されている特定アプリケーションのみのアプリケーションリストを要求するリスト要求通知情報を管理サーバ200に対して送信してもよい。
表示制御部105は、リスト要求部104が取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示させる。例えば、表示制御部105は、送客元アプリ10により表示部120に表示されていた表示画面に重ねたり切替えたりして対象アプリケーションの一覧LTを表示させる。
送客情報通知部106は、送客元アプリ10から選択された対象アプリケーション(或いは特定アプリケーション)へ送客されたことを示す送客情報を管理サーバ200に対して送信する。ここで、送客元アプリ10から選択された対象アプリケーション(或いは特定アプリケーション)とは、表示部120に表示されたアプリケーションリストに含まれる一または複数の対象アプリケーション(或いは特定アプリケーション)からユーザの操作(第2の操作)に基づいて選択されたいずれかのアプリケーションのことをいう。
また、上述の送客情報には、例えば、送客元アプリ10のアプリID(送客元情報)、選択された対象アプリケーション(或いは特定アプリケーション)即ち送客先アプリ20のアプリID、及びこのユーザ端末100に対応するリワードユーザIDが含まれる。
例えば、キャンペーン期間に上述の第2の操作に基づいて、対象アプリケーションの一覧LTの中から当該キャンペーン期間中の特定アプリケーションが選択された場合には、送客情報通知部106は、例えば、送客元アプリ10のアプリID(送客元情報)、選択された特定アプリケーション即ち送客先アプリ20のアプリID、及びこのユーザ端末100に対応するリワードユーザIDを含む送客情報を管理サーバ200に対して送信する。
報酬付与通知部107は、キャンペーン期間中の特定アプリケーションにおいて、キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて、当該報酬付与条件を充足したことを示す報酬付与通知情報を管理サーバ200に対して送信する。ここで、上述の報酬付与通知情報には、例えば、当該キャンペーン期間中の特定アプリケーション(送客先アプリ20)のアプリID(送客先情報)と、このユーザ端末100に対応するリワードユーザIDとが含まれる。
なお、図5に示すSDK11に基づく機能構成のうち、例えば、初期化処理部101(固有識別情報取得部102、インストール通知部103)と、リスト要求部104と、表示制御部105と、送客情報通知部106とが、送客元アプリ10に対応するSDK11Aの機能構成(すなわち、送客元の機能構成)に対応する。また、例えば、初期化処理部101(固有識別情報取得部102、インストール通知部103)と、報酬付与通知部107とが、送客先アプリ20に対応するSDK11Bの機能構成(すなわち、送客先の機能構成)に対応する。
〔管理サーバ200の構成〕
次に、図6を参照して、管理サーバ200の構成の詳細について説明する。
図6は、本実施形態による管理サーバ200の構成の一例を示す構成図である。管理サーバ200は、図4を参照して説明したように、通信部210と、管理部220と、記憶部230と、制御部240とを備えており、ここでは、管理部220と、記憶部230と、制御部240とのそれぞれの構成について詳しく説明する。
管理部220は、アプリケーション管理部221と、インストール情報管理部222と、送客情報管理部223とを備えている。なお、管理部220は、管理する各情報を関連付けて記憶部230に記憶させて管理する。
アプリケーション管理部221は、相互送客システム500に対応する複数の対象アプリケーションに関する情報(対象アプリケーション情報)を管理する。また、アプリケーション管理部221は、複数の特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)を有するキャンペーンに関する情報を管理する。例えば、アプリケーション管理部221は、キャンペーンを示す情報(キャンペーンの名称等)とキャンペーンに関する情報(キャンペーン期間、報酬を示す情報の掲載場所のリンク先を示す情報等)とを関連付けて管理する。
インストール情報管理部222は、ユーザ端末100から取得したインストール通知情報に基づいて、インストール通知情報に含まれるリワードユーザIDと、インストールされた対象アプリケーションのアプリIDとを関連付けてインストール情報として管理する。
なお、インストール情報管理部222は、インストール通知情報に含まれるリワードユーザIDと、対象アプリケーションのアプリIDと、対象アプリケーションのアプリユーザIDとを関連付けてインストール情報として管理してもよい。
送客情報管理部223は、ユーザ端末100から送信されて管理サーバ200が取得した送客情報に含まれるリワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDを関連付けて送客情報の記録として管理する。
なお、送客情報管理部223は、送客元アプリ10と送客先アプリ20とにキャンペーンが設定されている場合、さらにキャンペーンを示す情報を関連付けた送客情報の記録として管理してもよい。
記憶部230は、管理部220または制御部240により管理される各種情報を記憶する。
記憶部230は、対象アプリ情報記憶部231と、通常リワード情報記憶部232と、アプリ間フィルタ記憶部233と、キャンペーン情報記憶部234と、キャンペーン参加アプリ情報記憶部235と、インストール情報記憶部236と、送客情報記憶部237と、リワード成立情報記憶部238とを備えている。なお、各種情報は、データベースのテーブル形式やJSON(JavaScript(登録商標)Object Notation)形式など、その情報の利用に適した形式で格納されていればよい。
対象アプリ情報記憶部231は、相互送客システム500に対応する対象アプリケーションに関する対象アプリケーション情報を記憶する。図7は、対象アプリ情報記憶部231に記憶される対象アプリケーション情報の一例を示す図である。対象アプリケーション情報には、対象アプリケーションのアプリID(ApID)と、通知先URL(NoticeURL)と、ストアURL(ApStoreURL)と、当該対象アプリケーションの名称を示すアプリ名称(ApNAME)と、当該対象アプリケーションに関する説明情報であるアプリ説明(ApDOC)と、当該対象アプリケーションを示すアイコン画像であるアプリアイコン画像(ApICO)と、アプリ価格(ApPRICE)とが関連付けられている。
通知先URL(NoticeURL)は、リワードの通知先のURL(Uniform Resource Locator)であって、例えば、当該対象アプリケーションに対応するアプリサーバ300のURLが設定される。ストアURL(ApStoreURL)は、当該対象アプリケーションをダウンロード可能な販売サイト(アプリストア400)のページのURLである。アプリ価格(ApPRICE)は、当該対象アプリケーションの販売価格である。これらの対象アプリケーション情報は、例えば、ユーザ端末100に表示される対象アプリケーションの一覧LTで利用される。
なお、これらの対象アプリケーション情報は、例えば、アプリストア400からダウンロード可能になる前に予め設定されて対象アプリ情報記憶部231に記憶され、アプリケーション管理部221によって管理される。
通常リワード情報記憶部232は、対象アプリケーション毎の通常リワードに関する情報(通常リワード情報)を記憶する。図8は、通常リワード情報記憶部232に記憶される通常リワード情報の一例を示す図である。通常リワード情報には、対象アプリケーションで通常リワードとして付与されるアイテムを識別するアイテムID(ItemID)と、当該対象アプリケーションのアプリID(ApID)と、最低価格(min_price)と、当該アイテムの名称を示す報酬アイテム名称(ItemName)と、当該アイテムの報酬として付与される数を示す報酬アイテム数(ItemNum)とが関連付けられている。最低価格(min_price)には、通常リワードの対象となる対象アプリケーションの価格が設定される。これらの通常リワード情報は、例えば、ユーザ端末100に表示される対象アプリケーションの一覧LTで利用される。
なお、これらの通常リワード情報は、例えば、対象アプリケーション情報が対象アプリ情報記憶部231に記憶される際に設定されて通常リワード情報記憶部232に記憶され、アプリケーション管理部221によって管理される。
アプリ間フィルタ記憶部233は、相互送客可能な対象アプリケーションを制限するためのアプリケーション間におけるフィルタ情報(アプリ間フィルタ情報)を記憶する。この相互送客可能な対象アプリケーションを制限する処理については、第2の実施形態において詳しく説明する。
キャンペーン情報記憶部234は、対象アプリケーションのうちのキャンペーンに参加する特定アプリケーションのキャンペーンに関する情報(キャンペーン情報)を記憶する。図9は、キャンペーン情報記憶部234に記憶されるキャンペーン情報の一例を示す図である。キャンペーン情報には、キャンペーンID(CpID)と、キャンペーン名(CpNAME)と、キャンペーン開始日時(CpStartDATE)と、キャンペーン終了日時(CpEndDATE)と、報酬付与開始日時(RewardStartDATE)と、報酬付与終了日時(RewardEndDATE)とが関連付けられている。
キャンペーンID(CpID)は、キャンペーンを識別する識別情報である。キャンペーン名(CpNAME)はキャンペーンの名前を示す。キャンペーン開始日時(CpStartDATE)及びキャンペーン終了日時(CpEndDATE)のそれぞれは、キャンペーン期間の開始日時及び終了日時をそれぞれ示している。ここで、キャンペーン開始日時とキャンペーン終了日時で規定されるキャンペーン期間に、送客先アプリ20がインストールされた場合に、CPリワード付与の資格が得られる。
また、CPリワードでは、例えば、複数の成果地点が設定され、キャンペーン期間中に送客先アプリ20の利用を開始したユーザが、いつまでに成果地点に到達すべきかを規定するのが、報酬付与開始日時(RewardStartDATE)と報酬付与終了日時(RewardEndDATE)で規定される報酬付与期間である。例えば、キャンペーン期間(第1の期間の一例)に対して、キャンペーン期間の開始又は途中から開始し、キャンペーン期間より後に終了する報酬付与期間(第2の期間の一例)が設定される。一例としては、キャンペーン開始日時と報酬付与開始日時は同日時が設定され、報酬付与終了日時はキャンペーン終了日時の一週間後に設定される。これらのキャンペーン情報は、キャンペーンの開始日時前に予め設定されてキャンペーン情報記憶部234に記憶され、アプリケーション管理部221によって管理される。また、これらのキャンペーン情報は、キャンペーンを実施する各特定アプリケーションに対応するアプリサーバ300と管理サーバ200とにおいて同様の情報が設定される。
なお、キャンペーン期間とは別に報酬付与期間が設定されない構成であってもよく、報酬付与期間がキャンペーン期間と同じ期間である構成であってもよい。
キャンペーン参加アプリ情報記憶部235は、キャンペーン情報記憶部234に設定されたキャンペーンに参加する特定アプリケーションを示す情報(キャンペーン参加アプリ情報)を記憶する。ここで、アプリケーション間の相互送客に対するキャンペーンであるため、一つのキャンペーンには、少なくとも2つのアプリケーションが設定されることになる。図10は、キャンペーン参加アプリ情報記憶部235に記憶されるキャンペーン参加アプリ情報の一例を示す図である。キャンペーン参加アプリ情報には、キャンペーンID(CpID)と、このキャンペーンIDのキャンペーンに参加する特定アプリケーションのアプリID(ApID)と、キャンペーンページURL(CpPageURL)とが関連付けられている。キャンペーンID(CpID)は、キャンペーン情報記憶部234に記憶されるキャンペーン情報に含まれるキャンペーンIDと対応する。
キャンペーンページURL(CpPageURL)は、キャンペーン期間にそのアプリケーションをインストールして利用すると付与されるCPリワードの報酬に関する情報が掲載されたページ(ウェブサイトのページ)を示す情報である。また、このページには、アプリケーションに関する情報(説明や価格)なども掲載される。例えば、送客元アプリ10(ゲームA)と送客先アプリ20(ゲームB)とにキャンペーンが設定されている場合、それぞれのアプリケーションに対応するアプリサーバ310(ゲームA)内のページとアプリサーバ320(ゲームB)内のページとのそれぞれのURLがキャンペーンページURLとして設定されてもよい。また、キャンペーン専用サイトが別に設けられ、送客元アプリ10(ゲームA)と送客先アプリ20(ゲームB)とのいずれに対しても当該キャンペーン専用サイトに対する同一のURLが設定されてもよい。また、このキャンペーン専用サイトが管理サーバ200内に設けられてもよい。
このように、CPリワードの報酬に関する情報は、アプリサーバ300またはキャンペーン専用サイトのページなどに掲載されるように設定されるため、管理サーバ200が管理する必要がない。
上述のキャンペーン参加アプリ情報は、対象アプリケーションが特定アプリケーションとしてキャンペーンに参加する際に設定されてキャンペーン参加アプリ情報記憶部235に記憶され、アプリケーション管理部221によって管理される。
なお、キャンペーン情報及びキャンペーン参加アプリ情報に含まれる情報は、上述したように管理サーバ200において管理されるとともに、キャンペーンに参加している特定アプリケーションに対応するアプリサーバ300においても同様に管理されている。また、当該キャンペーンに参加している特定アプリケーションをインストールしたユーザ端末100は、当該特定アプリケーションに対応するアプリサーバ300から、当該アプリケーションのキャンペーン情報及びキャンペーン参加アプリ情報に含まれる情報を取得することができる。
インストール情報記憶部236は、ユーザ端末100から送信されて管理サーバ200が取得したインストール通知情報に基づいてインストール情報管理部222が管理するインストール情報を記憶する。図11は、インストール情報記憶部236に記憶されるインストール情報の一例を示す図である。インストール情報には、例えば、取得したインストール通知情報に含まれるリワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)とが関連付けられている。
ここで、相互送客システム500による送客処理を介さず単に対象アプリケーションがインストールされた場合と、相互送客システム500による送客処理を介してインストールされた場合とのいずれでも、ユーザ端末100からインストール通知情報が送信され、管理サーバ200が取得したインストール通知情報に基づくインストール情報がインストール情報記憶部236に記憶される。即ち、インストール情報記憶部236には、ユーザ端末100にインストールされた全ての対象アプリケーションのインストール情報が記録される。よって、一旦インストールした対象アプリケーションをアンインストールした後に再びインストールしても、当該対象アプリケーションのインストール情報がインストール情報記憶部236に記憶されているので、管理サーバ200は、2重に報酬を付与することを防止できる。
送客情報記憶部237は、ユーザ端末100から送信されて管理サーバ200が取得した送客情報に基づいて送客情報管理部223が管理する送客情報を記憶(記録)する。図12は、送客情報記憶部237に記憶される送客情報の一例を示す図である。送客情報には、リワード管理ID(RewardID)と、リワードユーザID(RewardUID)と、送客元アプリID(ApIDfrom)と、送客先アプリID(ApIDto)と、キャンペーンID(CpID)とが関連付けられている。リワード管理ID(RewardID)は、送客情報毎に識別可能なように各送客情報を取得した順に発行される管理IDである。送客元アプリID(ApIDfrom)は、送客元アプリ10のアプリIDであり、送客先アプリID(ApIDto)は、送客先アプリ20のアプリIDである。このとき送客元アプリ10と送客先アプリ20とが、共に同じキャンペーンのキャンペーン期間中であれば、そのキャンペーンのキャンペーンIDが記憶され、キャンペーン期間でないときにはキャンペーンIDには「null」が設定される。
また、アプリケーションリストには、ユーザ端末100に既にインストールされている対象アプリケーションまたはインストールされていたことのある対象アプリケーション(その後にアンインストールされている対象アプリケーション)は含まれないため、新規にインストールする対象アプリケーションへの送客情報が送客情報記憶部237に記憶されることになる。 なお、この送客情報記憶部237に送客情報が記憶された場合であっても、その送客情報の送客先アプリ20が必ずしもダウンロードされてインストールされるとは限らない。
リワード成立情報記憶部238は、送客情報記憶部237が記憶する送客情報が示す送客処理によって通常リワード及びCPリワードの報酬付与条件が成立した場合に、送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して報酬付与情報を通知したか否かを示すリワード成立情報を記憶する。
通常リワードの場合、このリワード成立情報は、例えば、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する対象アプリケーションのインストール情報がインストール情報記憶部236に記憶されたときに、その送客情報に対応する新たなレコード(一つ分のリワード成立情報のデータ)が生成されてリワード成立情報記憶部238に記憶される。
また、CPリワードの場合、このリワード成立情報は、例えば、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する報酬付与通知情報をユーザ端末100から取得したときに、その送客情報に対応する新たなレコードが生成されてリワード成立情報記憶部238に記憶される。
図13は、リワード成立情報記憶部238に記憶されるリワード成立情報の一例を示す図である。リワード成立情報は、リワード管理ID(RewardID)と、成果地点ID(RewardSpotID)と、成立状態(RewardStatus)とが関連付けられている。リワード管理ID(RewardID)は、送客情報記憶部237が記憶する送客情報に含まれるリワード管理IDと対応する。
成果地点ID(RewardSpotID)は、報酬付与条件に基づいて設定される送客先アプリ20において報酬が付与される成果地点の識別情報である。
CPリワードの場合、成果地点ID(RewardSpotID)には、キャンペーンに対応して予め設定された成果地点(送客先アプリ20における報酬付与条件)を示す識別情報が設定される。成果地点が複数ある場合には、同一のリワード管理IDに複数の成果地点IDのそれぞれが関連付けられた複数分のレコードが生成されてリワード成立情報記憶部238に記憶される。
通常リワードの場合、即ち、送客情報記憶部237に記憶された送客情報に含まれるキャンペーンIDに「null」が設定されている場合、成果地点(報酬付与条件)は、送客先アプリ20がインストールされたときとなり、成果地点IDには、「null」が設定される。
なお、CPリワードの場合であっても、送客先アプリ20がインストールされたことを条件とした識別情報が成果地点IDに設定されれば、通常リワードの場合と同様に成果地点(報酬付与条件)は、送客先アプリ20がインストールされて実行可能になったとき、または実行されたときとなる。
成立状態(RewardStatus)は、送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して報酬付与情報を通知したか否かの状態を示すフラグ情報が設定される。すなわち、送客情報記憶部237に記憶された送客情報に対応するリワード管理IDに関連付けられて新たなレコードが生成される際に、成立状態(RewardStatus)には初期値としてフラグ「0」(未通知)が設定される。その後、アプリサーバ310(ゲームA)に対する報酬付与情報の通知が完了した場合に、成立状態(RewardStatus)にはフラグ「1」(通知済)に更新される。なお、アプリサーバ310(ゲームA)からの報酬付与情報の通知に対する応答を取得した場合に、フラグ「1」(通知済)に更新されるようにしてもよい。
次に図6に戻り、制御部240の構成について説明する。
制御部240は、インストール通知取得部241と、リスト通知部242と、送客情報取得部243と、インストール誘導指示部244と、リワード処理部245と、計時部246とを備えている。
インストール通知取得部241は、複数の対象アプリケーションのうちリワードユーザIDにより特定されるユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報を当該対象アプリケーション(当該対象アプリケーションのSDK11)から取得する。このインストール通知情報には、前述したように、例えば、このユーザ端末100に対応するリワードユーザIDと当該対象アプリケーションのアプリIDとが含まれている。また、このインストール通知情報には、さらに当該対象アプリケーションのアプリユーザIDが含まれてもよい。そして、インストール通知取得部241は、取得したインストール通知情報を、インストール情報管理部222に供給する。
リスト通知部242は、ユーザ端末100にインストールされている送客元アプリ10(送客元アプリ10のSDK11A)から送信されたリスト要求通知情報を取得すると、取得したリスト要求通知情報に基づいて、対象アプリ情報記憶部231とインストール情報記憶部236を参照して、ユーザ端末100からインストール通知情報を取得していない(即ち、ユーザ端末100にインストールされていない)少なくとも一の対象アプリケーション(或いは特定アプリケーション)のアプリケーションリストをユーザ端末100に対して送信する。
また、リスト通知部242は、キャンペーン情報記憶部234またはキャンペーン参加アプリ情報記憶部235を参照して、アプリケーションリストに含まれる一または複数の特定アプリケーションに対応したキャンペーンに関する情報を送信する。
このとき、リスト通知部242は、対象アプリケーションに関する情報(アプリ名称、説明、価格等)、通常リワードの報酬内容に関する情報、またはCPリワードのキャンペーンに関する情報(キャンペーン期間やキャンペーンに対応する報酬を示す情報の掲載場所のリンク先等)を含むアプリケーションリストに基づく対象アプリケーションの一覧LTがユーザ端末100において表示可能なアプリ一覧ページのデータを生成してユーザ端末100に対して送信する。例えば、リスト通知部242は、SDK11が実行可能なブラウザ機能により表示可能なHTML(HyperText Markup Language)形式で記述された当該対象アプリケーションの一覧LTが表示されるアプリ一覧ページのデータを生成し、生成したページのリンク先を示す情報をユーザ端末100に対して送信する。
送客情報取得部243は、送客元アプリ10から送客先アプリ20に対する送客情報であって、リワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDを含む送客情報をユーザ端末100から取得する。そして、送客情報取得部243は、取得した送客情報を送客情報管理部223に供給する。
インストール誘導指示部244は、送客情報取得部243が取得した送客情報に含まれる送客先アプリ20のアプリIDに基づいて送客先アプリ20をインストール可能な画面に誘導する指示情報をユーザ端末100に送信する。例えば、インストール誘導指示部244は、送客先アプリ20をインストール可能(ダウンロード可能)なストアサイトのストアページを表示するアプリケーションであるストア30を起動させる指示情報をユーザ端末100に送信する。
リワード処理部245は、CPリワードに関する第1の報酬付与処理(CPリワード処理)と、通常リワードに関する第2の報酬付与処理(通常リワード処理)とを実行する。
リワード処理部245は、インストール通知取得部241が送客先アプリ20に対応するインストール通知情報を取得した場合、送客元アプリ10から送客先アプリ20に対する送客情報が送客情報記憶部237に記憶されているか否かを判定する。そして、リワード処理部245は、この送客情報が送客情報記憶部237に記憶されている場合には(即ち、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることを条件として)、送客先アプリ20が相互送客システム500により送客元アプリ10から送客された対象アプリケーションであると判定し、CPリワード処理または通常リワード処理を実行する。ここで、リワード処理部245は、このCPリワード処理または通常リワード処理において、送客元アプリ10においてユーザに報酬が付与されるように、送客元アプリ10に対応するアプリサーバ310に対して報酬付与情報を送信する。前述したように、相互送客システム500による送客処理を介さず単に対象アプリケーションがインストールされた場合でも、インストール通知情報は管理サーバ200に対して送信される。そのため、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることを条件することで、単に送客先アプリ20がインストールされた場合にCPリワードまたは通常リワードを付与することを防止することが可能となる。
送客先アプリ20が送客元アプリ10との間でキャンペーンが設定されているとする。この場合には、リワード処理部245は、送客先アプリ20がキャンペーン期間内にインストールされたと判定され、且つ当該キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて送客先アプリ20から報酬付与通知情報を取得したときに、当該取得した報酬付与通知情報に基づくCPリワード処理を実行する。一方、ユーザ端末100で選択された送客先アプリ20が送客元アプリ10との間でキャンペーンが設定されていないとする。この場合には、リワード処理部245は、送客先アプリ20がインストールされたと判定されたときに、通常リワード処理を実行する。
ここで、送客先アプリ20が送客元アプリ10との間でキャンペーンが設定されている特定アプリケーションである場合には、リワード処理部245は、インストール通知取得部241において送客先アプリ20に対応するインストール通知情報を取得したタイミングがキャンペーン期間内である場合に、送客先アプリ20がキャンペーン期間内にユーザ端末100にインストールされたと判定する。なお、リワード処理部245は、送客先アプリ20が送客元アプリ10との間でキャンペーンが設定されていたとしても、送客先アプリ20がキャンペーン期間外にユーザ端末100にインストールされた場合には、CPリワード処理ではなく通常リワード処理を実行する。
通常リワード処理では、リワード処理部245は、インストール通知取得部241が、送客先アプリ20から取得したインストール通知情報に基づいて、取得したインストール通知情報に含まれるリワードユーザIDに関連付けられた送客元アプリ10のアプリユーザIDを、インストール情報記憶部236を参照して取得する。そして当該アプリユーザID含む報酬付与情報を、送客元アプリ10に対応するアプリサーバ310に送信する。
CPリワード処理では、リワード処理部245は、送客先アプリ20から取得した報酬付与通知情報に含まれるリワードユーザIDに関連付けられた送客元アプリ10のアプリユーザIDを、インストール情報記憶部236を参照して取得する。そして、取得した報酬付与通知情報に基づいて当該アプリユーザID含む報酬付与情報を、送客元アプリ10に対応するアプリサーバ310に送信する。また、リワード処理部245は、取得した報酬付与通知情報に含まれるキャンペーンIDや成果地点ID等を上述の報酬付与情報にさらに含めて送客元アプリ10に対応するアプリサーバ310に送信してもよい。
また、リワード処理部245は、通常リワードの場合、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する対象アプリケーションのインストール情報がインストール情報記憶部236に記憶されたときに、その送客情報に対応するリワード成立情報の新たなレコードを生成してリワード成立情報記憶部238に記憶させる。このとき、リワード処理部245は、リワード成立情報に含まれる成立状態(RewardStatus)にフラグ「0」(未通知)を設定する。
一方、CPリワードの場合、リワード処理部245は、例えば、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する報酬付与通知情報をユーザ端末100から取得したときに、その送客情報に対応するリワード成立情報の新たなレコードを生成してリワード成立情報記憶部238に記憶させる。このとき、リワード処理部245は、リワード成立情報に含まれる成立状態(RewardStatus)にフラグ「0」(未通知)を設定する。
例えば、CPリワードの場合、リワード処理部245は、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する報酬付与通知情報を、その送客情報に対応するキャンペーン期間内にユーザ端末100から取得した場合に、その送客情報に対応するリワード成立情報の新たなレコードを生成してリワード成立情報記憶部238に記憶させる。なお、キャンペーンに報酬付与期間が設定されているときには、リワード処理部245は、送客情報記憶部237に記憶された送客情報の送客先アプリIDに対応する報酬付与通知情報を、その報酬付与期間内に送客先アプリ20から報酬付与通知情報を取得した場合に、その送客情報に対応するリワード成立情報の新たなレコードを生成してリワード成立情報記憶部238に記憶させてもよい。
そして、リワード処理部245は、通常リワード処理およびCPリワード処理のいずれにおいても、リワード成立情報に対応する報酬付与情報の通知をアプリサーバ310(ゲームA)に送信したことに応じて、そのリワード成立情報の成立状態(RewardStatus)をフラグ「1」(通知済)に更新する。
計時部246は、時刻を計時して現在日時を取得する。なお、計時部246は、現在日時データを提供する日時情報提供サーバ(不図示)からネットワークNWを介して現在日時を取得してもよい。例えば、リワード処理部245は、計時部246が計時した現在日時を示す情報に基づいて、現在日時がキャンペーン期間内であるか否か、または報酬付与期間内であるか否かなどを判定する。なお、記憶部230に記憶して管理される各種情報記憶部(231〜238)には、レコードが生成された日時を示すデータ登録日時と、生成されたレコードの一部を更新した日時を示すデータ更新日時を各レコードに記憶するようにしてもよい。例えば、インストール情報記憶部236で記憶するデータ登録日時には、計時部246が計時したユーザ端末100から取得したインストール情報を取得した日時が記録され、ユーザ端末100で当該インストール情報に対応したアプリケーションがインストールした日時を示すデータとなる。
〔相互送客処理の動作の詳細〕
次に、図14および図15を参照して、本実施形態による相互送客システム500の相互送客処理の動作の詳細について説明する。図14及び図15は、本実施形態による相互送客処理の動作の一例を示すフローチャートである。この図14及び図15に示す処理は、図4を参照して説明した概略処理の流れの詳細例を示すものである。
まず、図14を参照して、ユーザ端末100にインストールされている送客元アプリ10(ゲームA)側の処理について説明する。すなわち、図4に示す送客元アプリ10(ゲームA)がインストールされた後にSDK11Aが実行する処理((1)の処理)から、管理サーバ200が送客先アプリ20(ゲームB)をインストール可能な画面に誘導する指示情報をユーザ端末100に送信する処理((6)の処理)までの詳細例を説明する。
ユーザ端末100に送客元アプリ10(ゲームA)がインストールされた場合、送客元アプリ10(ゲームA)に組み込まれているSDK11Aの初期化処理部101は、初回起動時のみに実行する処理として、送客元アプリ10のアプリID(ApID)と、送客元アプリ10において登録されたユーザXのアプリユーザID(ApUID)と、キャンペーンが設定されている場合にはキャンペーンID(CpID)とを、送客元アプリ10(ゲームA)から取得する(ステップSA11)。
次に、SDK11Aの初期化処理部101は、SDK11Aの初期化処理を実行する。まず、初期化処理部101は、初期化処理において、初期化処理済みであるか否かを判定する(ステップSA12)。初期化処理済みであると判定された場合(ステップSA12:YES)、初期化処理部101は、その後の初期化処理を実行しないで終了し、ステップSA17に処理を進める。一方、初期化処理済みでないと判定された場合(ステップSA12:NO)、固有識別情報取得部102は、端末記憶部140を参照して、リワードユーザIDが取得済みであるか否かを判定する(ステップSA13)。このリワードユーザIDが取得済みであるか否かを判定は、ユーザ端末100にインストールされたいずれの対象アプリケーションからも参照可能なように端末記憶部140のアプリ間共有エリアにリワードユーザIDが記憶されているか否かで判定される。
リワードユーザIDが取得済みであると判定された場合(ステップSA13:YES)、SDK11Aの固有識別情報取得部102は、端末記憶部140からリワードユーザIDを読み出し、ステップSA16に処理を進める。
一方、リワードユーザIDが取得済みでないと判定された場合(ステップSA13:NO)、固有識別情報取得部102は、ユーザ端末100に対応するリワードユーザID(相互送客システム500においてユニークなID)を生成して取得する(ステップSA14)。
次に、固有識別情報取得部102は、取得したリワードユーザIDを、端末記憶部140のアプリ間共有エリアに記憶させる(ステップSA15)。
続いて、SDK11Aのインストール通知部103は、送客元アプリ10(ゲームA)がユーザ端末100にインストールされたことを示すインストール通知情報を、管理サーバ200に対して送信する(REQ11、ステップSA16)。ここでインストール通知情報には、このユーザ端末100に対応するリワードユーザID(RewardUID)と、インストールされた送客元アプリ10(ゲームA)のアプリID(ApID)と、この送客元アプリ10(ゲームA)において登録されたユーザXのアプリユーザID(ApUID)とが含まれる。
次に、管理サーバ200のインストール通知取得部241は、ユーザ端末100(SDK11A)から送信されたインストール通知情報を取得する。そして、インストール通知取得部241は、インストール通知情報を取得したことを示す応答情報(通知結果)を、当該ユーザ端末100(SDK11A)に対して送信する(RES11)。また、管理サーバ200のインストール情報管理部222は、インストール通知取得部241が取得したインストール通知情報に含まれるリワードユーザID(RewardUID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、送客元アプリ10(ゲームA)におけるユーザXのアプリユーザID(ApUID)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる(ステップSE11)。
SDK11Aの初期化処理部101は、管理サーバ200から送信された応答情報(通知結果)を取得すると、初期化済みを示すフラグを設定して初期化処理を終了する(ステップSA17)。
次に、ユーザ端末100において動作している送客元アプリ10(ゲームA)に対してユーザXが、ユーザ端末100にインストール可能な対象アプリケーションのアプリケーションリストを取得するための入力部110に対する所定の操作(第1の操作)を行ったとする。
この送客元アプリ10における所定の操作(第1の操作)に基づいて、SDK11Aのリスト要求部104は、端末記憶部140のアプリ間共有エリアからリワードユーザIDを読み出すとともに(ステップSA23)、複数の対象アプリケーションの少なくとも一の対象アプリケーションのアプリケーションリスト(送客先アプリ20の候補となる対象アプリケーションの情報)を要求するリスト要求通知情報を管理サーバ200に対して送信する(REQ12、ステップSA24)。
ここでリスト要求通知情報には、このユーザ端末100に対応するリワードユーザID(RewardUID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、キャンペーンID(CpID)とが含まれる。なお、送客元アプリ10(ゲームA)にキャンペーンが設定されていない場合にはキャンペーンID(CpID)には「null」が設定される。また、リスト要求通知情報にキャンペーンID(CpID)を含めなくても、キャンペーン参加アプリ情報記憶部235とキャンペーン情報記憶部234とを参照して、送客元アプリ10(ゲームA)のアプリID(ApID)に基づいて、送客元アプリ10(ゲームA)がキャンペーンを実施しているか否か、及びキャンペーンを実施している場合には対応するキャンペーンID(CpID)を管理サーバ200内で取得することも可能である。
管理サーバ200のリスト通知部242は、ユーザ端末100(送客元アプリ10のSDK11A)から送信されたリスト要求通知情報を取得すると、取得したリスト要求通知情報に基づいて、ユーザ端末100からインストール通知情報を取得していない(即ち、ユーザ端末100にインストールされていない)少なくとも一の対象アプリケーションを抽出する。具体的には、リスト通知部242は、インストール情報記憶部236に記憶されているインストール情報において、取得したリスト要求通知情報に含まれるリワードユーザID(RewardUID)に関連付けられているアプリIDを、対象アプリ情報記憶部231に管理されている対象アプリケーションのアプリIDから除くことにより(フィルタリング)、ユーザ端末100にインストールされていない少なくとも一の対象アプリケーションを抽出する(ステップSE15)。なお、リスト通知部242は、リスト要求通知情報に含まれる送客元アプリ10(ゲームA)のアプリID(ApID)と、キャンペーンID(CpID)とに基づいて、ユーザ端末100にインストールされていない対象アプリケーションの中から、さらに送客元アプリ10(ゲームA)との間でキャンペーンが設定されている特定アプリケーションのみを抽出してもよい。なお、ユーザ端末100にインストールされていない対象アプリケーション(特定アプリケーション)が存在せずに抽出できない場合があり得る。
なお、このリスト要求通知情報の取得に応じてリスト通知部242がユーザ端末100に対して送信するアプリケーションリストに含める対象アプリケーションをフィルタリングするフィルタ処理はアプリ間フィルタ記憶部233に記憶されている条件(フィルタ情報)に基づいて行うこともできる。このフィルタ処理については、第2の実施形態で説明する。
次に、リスト通知部242は、抽出した対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザ端末100において表示するためのアプリ一覧ページのデータを生成し(ステップSE16)、生成したアプリ一覧ページに対応したリダイレクト指示情報をユーザ端末100に対して送信し、アプリ一覧ページにリダイレクトさせる(RES12、ステップSE17)。なお、ユーザ端末100にインストールされていない対象アプリケーション(特定アプリケーション)が存在しなかった場合には、対象アプリケーションの一覧LTの替わりに対象アプリケーション(特定アプリケーション)が存在しない旨を記載したアプリ一覧ページを生成する。
ユーザ端末100(SDK11A)が、管理サーバ200からアプリ一覧ページに対応したリダイレクト指示情報を取得すると、SDK11Aの表示制御部105は、ブラウザ機能によりアプリ一覧ページを表示部120に表示させる(ステップSA25)。
ここで、表示制御部105は、それまで表示部120に表示させていた送客元アプリ10(ゲームA)の表示画面にオーバーラップさせて、このアプリ一覧ページを表示させる。これにより、ユーザ端末100の表示部120には、送客先アプリ20として選択可能な対象アプリケーションの一覧LTがアプリ一覧ページに表示される。
ユーザ端末100の表示部120に表示された対象アプリケーションの一覧LTの中からいずれかの対象アプリケーションがユーザXにより選択されると、SDK11Aの送客情報通知部106は、送客元アプリ10(ゲームA)から、選択された対象アプリケーション(ここでは、送客先アプリ20(ゲームB))へ送客されたことを示す送客情報を管理サーバ200に対して送信する(REQ13、ステップSA26)。ここで、送客情報には、送客元アプリ10(ゲームA)のアプリID(ApID)と、送客先アプリ20(ゲームB)のアプリID(ApID)と、リワードユーザID(RewardUID)と、キャンペーンID(CpID)とが含まれる。なお、送客元アプリ10(ゲームA)と送客先アプリ20(ゲームB)とにキャンペーンが設定されていない場合にはキャンペーンID(CpID)には「null」が設定される。なお、キャンペーンID(CpID)をユーザ端末100から取得せずに、送客元アプリ10(ゲームA)のアプリID(ApID)に基づいて、管理サーバ200内で取得することも可能である。
なお、SDK11Aの表示制御部105は、送客先アプリ20(ゲームB)が選択されると、ステップSA25において表示部120に表示されたアプリ一覧ページを閉じて、送客元アプリ10(ゲームA)の表示画面に戻す。
管理サーバ200の送客情報取得部243は、ユーザ端末100(SDK11A)から送客情報を取得する。そして、送客情報管理部223は、送客情報取得部243が取得した送客情報に含まれる送客元アプリ10(ゲームA)のアプリID(ApID)と、送客先アプリ20(ゲームB)のアプリID(ApID)と、リワードユーザID(RewardUID)と、キャンペーンID(CpID)とを関連付けて送客情報の記録として送客情報記憶部237に記憶させる(ステップSE18)。
続いて、管理サーバ200のインストール誘導指示部244は、送客情報取得部243が取得した送客情報に含まれる送客先アプリ20(ゲームB)のアプリIDに基づいて送客先アプリ20をインストール可能な画面に誘導する指示情報をユーザ端末100に送信する。例えば、インストール誘導指示部244は、送客先アプリ20(ゲームB)をインストール可能(ダウンロード可能)なストアサイトのストアページを表示するアプリケーションであるストア30を起動させる指示情報をユーザ端末100に送信する(ステップSE19)。
ユーザ端末100は、管理サーバ200からストア30を起動させる指示情報を取得すると、ストア30を起動して、送客先アプリ20(ゲームB)をインストール可能(ダウンロード可能)なストアサイトのストアページを表示部120に表示させる(ステップSC11)。ここで、ユーザ端末100は、それまで表示部120に表示させていた送客元アプリ10(ゲームA)の表示画面にオーバーラップさせて、このストアページを表示部120に表示させる。
このストア30に表示されたストアページから、ユーザXの操作により送客先アプリ20(ゲームB)がユーザ端末100にダウンロードされてインストールされた後、引き続きユーザXの操作によりインストールされた送客先アプリ20(ゲームB)が起動する。
次に図15を参照して、ユーザ端末100にインストールされた送客先アプリ20(ゲームB)が起動した後の処理について説明する。すなわち、図4に示す送客先アプリ20(ゲームB)がインストールされた後にSDK11Bが実行する処理((8)の処理)から、管理サーバ200が送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して報酬付与情報を送信する処理((11)の処理)までの詳細例を説明する。なお、ユーザ端末100に送客先アプリ20(ゲームB)がインストールされた場合には、図14を参照して説明した、送客元アプリ10(ゲームA)がインストールされた場合の初回起動時の処理と初期化処理と同様の処理が行なわれる。
まず、送客先アプリ20(ゲームB)に組み込まれているSDK11Bの初期化処理部101は、初回起動時のみに実行する処理として、送客先アプリ20のアプリID(ApID)と、送客先アプリ20において登録されたユーザXのアプリユーザID(ApUID)と、キャンペーンが設定されている場合にはキャンペーンID(CpID)とを、送客先アプリ20(ゲームB)から取得する(ステップSB11)。
次に、SDK11Bの初期化処理部101は、SDK11Bの初期化処理を実行する。初期化処理部101は、初期化処理済みであるか否かを判定し(ステップSB12)、初期化処理済みであると判定された場合(ステップSB12:YES)には初期化処理を終了し、初期化処理済みでないと判定された場合(ステップSB12:NO)には、SDK11Bの固有識別情報取得部102の処理に進む。ここで、このユーザ端末100のリワードユーザIDは、既に取得済みであるため、続けてステップSB16のインストール通知の処理に進む。
SDK11Bのインストール通知部103は、送客先アプリ20(ゲームB)がユーザ端末100にインストールされたことを示すインストール通知情報を、管理サーバ200に対して送信する(REQ14、ステップSB16)。ここでインストール通知情報には、このユーザ端末100に対応するリワードユーザID(RewardUID)と、インストールされた送客先アプリ20(ゲームB)のアプリID(ApID)と、この送客先アプリ20(ゲームB)において登録されたユーザXのアプリユーザID(ApUID)とが含まれる。
次に、管理サーバ200のインストール通知取得部241は、ステップSE11の処理と同様に、ユーザ端末100(SDK11B)から送信されたインストール通知情報を取得する。そして、インストール通知取得部241は、インストール通知情報を取得したことを示す応答情報(通知結果)を、当該ユーザ端末100(SDK11B)に対して送信する(RES14)。また、管理サーバ200のインストール情報管理部222は、インストール通知取得部241が取得したインストール通知情報に含まれるリワードユーザID(RewardUID)と、送客先アプリ20(ゲームB)のアプリID(ApID)と送客先アプリ20(ゲームB)におけるユーザXのアプリユーザID(ApUID)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる(ステップSE21)。
ユーザ端末100(SDK11B)は、管理サーバ200から応答情報(通知結果)を取得すると、ステップSA22の処理同様に、初期化済みを示すフラグを設定して初期化処理を終了する(ステップSB17)。
次に、インストール通知取得部241が送客先アプリ20に対応するインストール通知情報を取得したことにより、リワード処理部245は、送客元アプリ10(ゲームA)から送客先アプリ20(ゲームB)に対する送客情報が送客情報記憶部237に記憶されているか否かを判定する。そして、リワード処理部245は、この送客情報が送客情報記憶部237に記憶されている場合には(即ち、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることを条件として)、送客先アプリ20が相互送客システム500により送客元アプリ10から送客された対象アプリケーションであると判定し、CPリワード処理または通常リワード処理を実行する。ここでは、ステップSE18の処理において、送客情報記憶部237に記憶された送客情報の記録により、送客先アプリ20が相互送客システム500により送客元アプリ10から送客された対象アプリケーションであると判定される。
続いて、リワード処理部245は、インストール通知取得部241において送客先アプリ20(ゲームB)に対応するインストール通知情報を取得したタイミングがキャンペーン期間内であるか否かを判定する(ステップSE22)。
例えば、送客先アプリ20(ゲームB)が送客元アプリ10(ゲームA)との間でキャンペーンが設定されている特定アプリケーションである場合には、リワード処理部245は、キャンペーン情報記憶部234を参照して、インストール通知情報を取得したタイミング(インストール通知情報を取得したときの計時部246が計時した日時)が、当該キャンペーンのキャンペーン期間内であるか否かを判定する。
このステップSE22において、インストール通知情報を取得したタイミングがキャンペーン期間内であると判定された場合(ステップSE22:YES)、リワード処理部245は、ユーザ端末100の送客先アプリ20のSDK11Bからから報酬付与通知情報を取得したことに基づいてCPリワード処理を実行する。
一方、このステップSE22において、インストール通知情報を取得したタイミングがキャンペーン期間内でないと判定された場合(ステップSE22:NO)、リワード処理部245は、通常リワード処理を実行する。なお、送客先アプリ20(ゲームB)が送客元アプリ10(ゲームA)との間でキャンペーンが設定されていない対象アプリケーションである場合にも、このステップSE22において、インストール通知情報を取得したタイミングがキャンペーン期間内でないと判定され(ステップSE22:NO)、リワード処理部245は、通常リワード処理を実行する。
まず、通常リワード処理の動作について説明する。ステップSE22において、インストール通知情報を取得したタイミングがキャンペーン期間内でないと判定された場合(ステップSE22:NO)、リワード処理部245は、インストール通知取得部241が送客先アプリ20からのインストール通知情報を取得し、且つ、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることに基づいて、当該送客情報に記憶されたリワード管理IDに関連付けて、成果地点ID(RewardSpotID)を「null」とし、成立状態(RewardStatus)をフラグ「0」(未通知)とするリワード成立情報を生成し、リワード成立情報記憶部238に記憶させる(ステップSE23)。
次に、リワード処理部245は、生成したリワード成立情報に関連付けられたリワード管理IDに対応した送客情報を、送客情報管理部223を参照して取得する。そして、リワード処理部245は、その送客情報に含まれる送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して、送客元アプリ10(ゲームA)のアプリユーザID(ApUID)を含む報酬付与情報(通常リワード成立を示す情報)を送信する(ステップSE24)。なお、送信先となるアプリサーバ310(ゲームA)は、対象アプリ情報記憶部231に記憶されたアプリサーバ310(ゲームA)に対応する通知先URL(NoticeURL)で示される。
次に、リワード処理部245は、送信した報酬付与情報に対応したリワード成立情報の成立状態(RewardStatus)をフラグ「1」(通知済み)として更新する。
アプリサーバ310(ゲームA)は、管理サーバ200から通常リワードによる報酬付与情報(通常リワード成立を示す情報)を受信すると(ステップSF21)、当該報酬付与情報に含まれるアプリユーザID(ユーザXのアプリユーザID)に対して、予め設定された通常リワードの報酬を付与する(ステップSF22)。
次に、CPリワード処理の動作について説明する。ステップSE22において、インストール通知情報を取得したタイミングがキャンペーン期間内であると判定された場合(ステップSE22:YES)、リワード処理部245は、ユーザ端末100の送客先アプリ20のSDK11Bから報酬付与通知情報を取得したことに基づいてCPリワード処理を実行する。
ユーザ端末100においては、送客先アプリ20(ゲームB)をユーザXがプレイしてゲームを進行させる(ステップSD11)。そして、送客先アプリ20(ゲームB)は、キャンペーンに対応して予め設定された報酬付与条件を充足したか否か(CPリワードの成果地点に到達したか否か)を判定する(ステップSD12)。なお、このステップSD11及びステップSD12の処理は、SDK11Bが実行する処理ではなく送客先アプリ20(ゲームB)が実行する処理である。
送客先アプリ20(ゲームB)のゲームの進行に応じて、キャンペーンに対応して予め設定された報酬付与条件を充足した(CPリワードの成果地点に到達した)と判定されたとする(ステップSD12:YES)。
この場合、送客先アプリ20(ゲームB)は、到達した成果地点に対応した成果地点ID(RewardSpotID)をSDK11Bに通知する。通知を受けたSDK11Bの報酬付与通知部107は、端末記憶部140のアプリ間共有エリアからリワードユーザIDを読み出し(ステップSB31)、読み出したリワードユーザID(RewardUID)、送客先アプリ20(ゲームB)のアプリID(ApID)、キャンペーンID(CpID)、及び送客先アプリ20(ゲームB)から取得した成果地点ID(RewardSpotID)を含む報酬付与通知情報(成果地点到達通知)を管理サーバ200に対して送信する(REQ15、ステップSB32)。なお、成果地点が複数ある場合には、ステップSD11、SD12の処理に戻り、成果地点に到達する毎に、送客先アプリ20(ゲームB)は到達した成果地点に対応した成果地点ID(RewardSpotID)をSDK11Bに通知する。そして、SDK11Bの報酬付与通知部107は、報酬付与通知情報(成果地点到達通知)を管理サーバ200に対して送信する。
管理サーバ200のリワード処理部245は、ユーザ端末100(SDK11B)から送信された報酬付与通知情報(成果地点到達通知)を取得し、且つ、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることに基づいて、当該送客情報に対応したリワード管理IDに関連付けて、取得した報酬付与通知情報に含まれる成果地点ID(RewardSpotID)を設定し、成立状態(RewardStatus)をフラグ「0」(未通知)とするリワード成立情報を生成し、リワード成立情報記憶部238に記憶させる(ステップSE25)。
次に、リワード処理部245は、生成したリワード成立情報に関連付けられたリワード管理IDに対応した送客情報を、送客情報管理部223を参照して取得する。そして、その送客情報に含まれる送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に対して、送客元アプリ10(ゲームA)のアプリユーザID(ApUID)、キャンペーンID(CpID)、及び成果地点ID(RewardSpotID)を含む報酬付与情報(CPリワード成立を示す情報)を送信する(ステップSE26)。
次に、リワード処理部245は、送信した報酬付与情報に対応したリワード成立情報の成立状態(RewardStatus)をフラグ「1」(通知済)として更新する。
なお、成果地点が複数ある場合には、リワード処理部245は、報酬付与通知情報(成果地点到達通知)を取得する毎に、送客情報管理部223に記録された送客情報に対応したリワード管理IDに関連付けて、成立状態(RewardStatus)のフラグ「0」(未通知)とするリワード成立情報を生成し、リワード成立情報記憶部238に記憶させる。そして、リワード処理部245は、それぞれの報酬付与通知情報(成果地点到達通知)に基づく報酬付与情報(CPリワード成立を示す情報)を、送客元アプリ10(ゲームA)に対応するアプリサーバ310(ゲームA)に送信する。そして、送信した報酬付与情報に対応したリワード成立情報の成立状態(RewardStatus)をフラグ「1」(通知済み)として更新する。
アプリサーバ310(ゲームA)は、管理サーバ200からCPリワードによる報酬付与情報(CPリワード成立を示す情報)を受信すると(ステップSF31)、当該報酬付与情報に含まれるアプリユーザID(ユーザXのアプリユーザID)に対して、キャンペーンに対応して予め設定されたCPリワードの報酬を付与する(ステップSF32)。
〔第1の実施形態のまとめ〕
(1)以上説明してきたように、本実施形態の相互送客システム500において、管理サーバ200(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241と、リスト通知部242と、リワード処理部245と、を備えている。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーション(本システムに対応するアプリケーション)のうちの複数の特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)を有するキャンペーン(イベントの一例)を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちリワードユーザID(固有識別情報の一例)で特定されるユーザ端末100(端末装置の一例)にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報を当該対象アプリケーションから取得する。リスト通知部242は、複数の対象アプリケーションのうちユーザ端末100にインストールされている対象アプリケーション(第1アプリケーションの一例、送客元アプリ10)からの要求に基づいて、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信する。
ここで、リスト通知部242が通知したアプリケーションリストに含まれる一または複数の対象アプリケーションからユーザ端末100で選択された対象アプリケーション(第2アプリケーションの一例、送客先アプリ20)が送客元アプリ10(第1アプリケーションの一例)との間でキャンペーンが設定されているとする。この場合には、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)がキャンペーン期間内にインストールされたと判定され、且つ当該キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて送客先アプリ20から当該報酬付与条件が充足されたことを示す報酬付与通知情報を取得したときに、当該取得した報酬付与通知情報に基づくCPリワード処理(第1の報酬付与処理の一例)を実行する。
一方、ユーザ端末100で選択された送客先アプリ20が送客元アプリ10との間でキャンペーンが設定されていないとする。この場合には、リワード処理部245は、送客先アプリ20がインストールされたと判定されたときに、通常リワード処理(第2の報酬付与処理の一例)を実行する。
なお、管理サーバ200のリスト通知部242は、複数の特定アプリケーションのうちユーザ端末100にインストールされている特定アプリケーション(第1アプリケーションの一例、送客元アプリ10)からの要求に基づいて、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信してもよい。
そして、リワード処理部245は、アプリケーションリストに含まれる一または複数の特定アプリケーションからユーザ端末100で選択された特定アプリケーション(第2アプリケーションの一例、送客先アプリ20)がキャンペーン期間内にインストールされたと判定され、且つ当該キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて、送客先アプリ20から当該報酬付与条件が充足されたことを示す報酬付与通知情報を取得した場合に、当該取得した報酬付与通知情報に基づくCPリワード処理を実行してもよい。
これにより、送客元アプリ10が特定アプリケーションである場合には、管理サーバ200は、この送客元アプリ10との間でキャンペーンが設定されている特定アプリケーションを少なくとも含むアプリケーションリストをユーザ端末100に対して送信することができる。なお、管理サーバ200は、送客元アプリ10との間でキャンペーンが設定されている特定アプリケーションのみのアプリケーションリストをユーザ端末100に対して送信してもよい。そして、管理サーバ200は、互いにキャンペーンが設定された送客元アプリ10から送客先アプリ20に対する送客が成立した場合にCPリワード処理する。このCPリワード処理では、通常リワード処理と異なり、キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて報酬が付与されることになるため、単に送客先アプリ20がインストールされただけではなく、送客先アプリ20の利用を条件に報酬を付与することができる。
つまり、本実施形態の相互送客システム500は、管理の対象となる複数の対象アプリケーションがCPリワード処理だけを実行するものでもよいし、管理の対象となる複数の対象アプリケーションがCPリワード処理と通常リワード処理の両方を実行するものでもよい。CPリワード処理だけを実行する相互送客システム500であれば、リスト通知部242がユーザ端末100に対して送信するアプリケーションリストに含まれるのは一または複数の特定アプリケーションである。一方、CPリワード処理と通常リワード処理の両方を実行する相互送客システム500であれば、リスト通知部242がユーザ端末100に対して送信するアプリケーションリストに含まれるのは一または複数の対象アプリケーションである。当該対象アプリケーションには特定アプリケーションも含まれる。
なお、相互送客システム500では、一度インストールされた対象アプリケーションがアンインストールされた後に、再びインストールされた場合には、管理サーバ200に当該対象アプリケーションの最初にインストールされたときのインストール情報が管理されていることによりインストールされたことがあることを特定することができる。そのため、本システムでは、この対象アプリケーションが再びインストールされた場合に、通常リワード処理またはCPリワード処理の対象とならないようにすることができる。
(2)本実施形態の相互送客システム500において、ユーザ端末100は、上述の管理サーバ200と通信可能な端末装置である。ここで、上述の管理サーバ200は、管理の対象となる複数の対象アプリケーションに含まれる複数の特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)を有するキャンペーン(イベントの一例)を管理する。また、管理サーバ200は、リワードユーザID(固有識別情報の一例)で特定されるユーザ端末100からキャンペーン期間に通知される、一の特定アプリケーションから他の特定アプリケーションに対する送客情報であって、当該一の特定アプリケーションを示す送客元情報、当該他の特定アプリケーションを示す送客先情報、及びユーザ端末100に対応するリワードユーザID(固有識別情報の一例)を関連付けた送客情報を管理する。また、管理サーバ200は、管理されている送客先情報に基づいた送客先情報に対応するアプリケーションがインストールされ、且つイベントに対応して予め設定された報酬付与条件が充足されたことに基づいて所定の報酬付与通知情報を受信した場合に送客元情報に対応するアプリケーションに対してキャンペーンに対応する報酬付与情報を送信する。
ユーザ端末100は、インストール通知部103と、リスト要求部104と、送客情報通知部106とを備えている。
インストール通知部103は、ユーザ端末100(自端末装置の一例)にインストールされた特定アプリケーションの当該インストールされたことを示すインストール通知情報であって、当該特定アプリケーションのアプリID(識別情報の一例)と、ユーザ端末100のリワードユーザIDとを含むインストール通知情報を管理サーバ200に対して送信する。リスト要求部104は、第1の操作に基づいて、複数の特定アプリケーションの少なくとも一の特定アプリケーションのアプリケーションリストを要求するリスト要求通知情報であって、動作している特定アプリケーション(送客元アプリ10の一例)のアプリIDを示す送客元情報と、ユーザ端末100に対応するリワードユーザIDとを含むリスト要求通知情報を管理サーバ200に対して送信する。送客情報通知部106は、キャンペーン期間に第2の操作に基づいて、動作している特定アプリケーション(送客元アプリ10の一例)のアプリIDを示す送客元情報、当該特定アプリケーションで選択された特定アプリケーション(送客先アプリ20の一例)のアプリIDを示す送客先情報、及びユーザ端末100に対応するリワードユーザIDを含む送客情報を管理サーバ200に対して送信する。
また、本実施形態のユーザ端末100は、報酬付与通知部107を備えている。例えば、上述したように、報酬付与通知部107は、キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて、当該報酬付与条件を充足した特定アプリケーションのアプリIDを示す送客先情報と、ユーザ端末100に対応するリワードユーザIDとを含む報酬付与通知情報を、管理サーバ200に対して送信する。なお、ユーザ端末100は、報酬付与通知部107を備えていない構成としてもよい、その場合、アプリサーバ300が、キャンペーンに対応して予め設定された報酬付与条件が充足されたことに基づいて、報酬付与通知情報を管理サーバ200に対して送信してもよい。このアプリサーバ300が報酬付与通知情報を管理サーバ200に対して送信する場合の処理については、後述の変形例の(3)にて説明する。
このように、本実施形態の相互送客システム500では、相互送客システム500に対応する対象アプリケーションに含まれる複数の特定アプリケーションに設定されたキャンペーンを管理する管理サーバ200と、この管理サーバ200と通信可能なユーザ端末100とにより、ユーザ端末100において、一の特定アプリケーション(送客元アプリ10の一例)から他の特定アプリケーション(送客先アプリ20の一例)がインストールされるように、他の特定アプリケーション(送客先アプリ20の一例)に対する送客を行うことができる。また、相互送客システム500では、ユーザ端末100を一意に識別可能なリワードユーザIDを用いることにより、一つのユーザ端末100にインストールされた複数のアプリケーションにおいて登録されたユーザ情報(アプリユーザIDの一例)が異なる場合であっても、アプリケーション間の相互送客処理やリワード処理を容易に行うことができる。さらに、相互送客システム500では、送客が成立した際に、通常リワードまたはCPリワードにより報酬が付与されるため、報酬を得たいユーザにとって新なアプリケーションを購入する動機付けとなる。これにより、アプリケーションの販売の促進に繋げることが可能となる。
したがって、本実施形態によれば、アプリケーション間の相互送客の利便性を向上させることができる。
(3)上述のインストール通知部103の機能と、リスト要求部104の機能と、送客情報通知部106の機能と、報酬付与通知部107の機能とが、複数の対象アプリケーションのそれぞれに組み込まれたSDK11(ソフトウェア)に基づいて実行される。例えば、送客元アプリ10に組み込まれたSDK11Aが、インストール通知部103の機能と、リスト要求部104の機能と、送客情報通知部106の機能とを実行し、送客先アプリ20に組み込まれたSDK11Bが、インストール通知部103の機能と、報酬付与通知部107の機能とを実行する。なお、SDK11AとSDK11Bとはそれぞれ同様の機能を有しており、送客元アプリ10に組み込まれているか、または送客先アプリ20に組み込まれているかに応じて対応する機能を実行する。
これにより、アプリケーションにSDK11を組み込むことにより、本実施形態の相互送客システム500に対応した対象アプリケーションとすることができる。よって、例えば、既存のアプリケーションやこれから開発するアプリケーションにおいても、SDK11を組み込み可能なようにアプリケーションのプログラムを更新または小変更すれば、当該アプリケーションを相互送客システム500に対応した対象アプリケーションとすることができる。
(4)管理サーバ200のリワード処理部245は、アプリケーションリストに含まれる一または複数の対象アプリケーションからユーザ端末100で選択された送客先アプリ20(第2アプリケーションの一例)が送客元アプリ10(第1アプリケーションの一例)との間でキャンペーン期間(第1の期間の一例)を有するキャンペーン(イベントの一例)が設定されている場合であっても、当該送客先アプリ20がキャンペーン期間外にインストールされたと判定されたときは、通常リワード処理(第2の報酬付与処理の一例)を実行する。
これによれば、送客先アプリ20が、送客元アプリ10との間でキャンペーンが設定されていても、当該キャンペーンのキャンペーン期間外にインストールされた場合には、通常リワードとすることができる。即ち、送客先アプリ20が、送客元アプリ10との間でキャンペーンが設定されている場合、送客先アプリ20がインストールされたタイミングが、キャンペーン期間内であればCPリワード、それ以外の期間であれば通常リワードとすることができる。
(5)管理サーバ200のリワード処理部245は、インストール通知取得部241において送客先アプリ20(第2アプリケーションの一例)に対応するインストール通知情報を取得したタイミングがキャンペーン期間内(第1の期間内の一例)である場合に、送客先アプリ20がキャンペーン期間内にユーザ端末100(端末装置の一例)にインストールされたと判定する。
これにより、管理サーバ200は、ユーザ端末100から送信された送客先アプリ20のインストール通知情報の取得タイミングにより、送客先アプリ20がユーザ端末100インストールされたタイミングがキャンペーン期間内であるか否かを判定することができる。
なお、管理サーバ200のリワード処理部245は、送客元アプリ10(第1アプリケーションの一例)から送客先アプリ20に対する送客情報を取得したタイミングがキャンペーン期間内である場合に、送客先アプリ20がキャンペーン期間内にユーザ端末100にインストールされたと判定するようにしてもよい。つまり、キャンペーン期間内に送客情報が記録されれば、ユーザ端末100から送信された送客先アプリ20のインストール通知情報の取得タイミングがキャンペーン期間外であってもキャンペーン期間内にユーザ端末100にインストールされたと見なすようにする。
(6)リワードユーザID(固有識別情報の一例)は、ユーザ端末100に記憶されている。ユーザ端末100は、インストールされた対象アプリケーションが複数の対象アプリケーションのうちの最初にユーザ端末100(自端末装置の一例)にインストールされた対象アプリケーションである場合、リワードユーザIDを取得し、取得したリワードユーザIDを、ユーザ端末100にインストールされたいずれの対象アプリケーションからも参照可能なように端末記憶部140(記憶部の一例)に記憶させる固有識別情報取得部102を備えている。
これにより、相互送客システム500によれば、ユーザ端末100が、初めて対象アプリケーションがインストールされたときに自動でリワードユーザIDを取得し、取得したリワードユーザIDをその後にインストールされる対象アプリケーションでも共通に利用可能とするため、ユーザに特別な操作をさせることなくリワードユーザIDが取得されて本システムを利用可能とすることができる。
(7)具体的には、固有識別情報取得部102は、インストールされた対象アプリケーションがユーザ端末100にインストールされたときに、リワードユーザID(固有識別情報の一例)が端末記憶部140(記憶部の一例)に記憶されているか否かを判定し、リワードユーザIDが端末記憶部140に記憶されていないと判定した場合にリワードユーザIDを取得する。
これにより、ユーザ端末100は、初めて対象アプリケーションがインストールされて起動したときにリワードユーザIDを取得することができる。
(8)インストール通知情報には、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、及び当該インストール通知情報を送信した対象アプリケーションのアプリID(識別情報の一例)が含まれている。
ユーザ端末100(SDK11)のインストール通知部103は、インストールされた対象アプリケーションがユーザ端末100(自端末装置の一例)にインストールされたことを示すインストール通知情報であって、インストールされた対象アプリケーションのアプリID、及びリワードユーザIDを含むインストール通知情報を管理サーバ200に対して送信する。
管理サーバ200のインストール情報管理部222は、ユーザ端末100(SDK11)から取得したインストール通知情報に含まれるリワードユーザID、及び対象アプリケーションのアプリIDを関連付けて管理する。
これにより、ユーザ端末100に対象アプリケーションがインストールされた場合、管理サーバ200は、インストールされた対象アプリケーションのアプリIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。よって、管理サーバ200は、ユーザ端末100毎にインストールされている対象アプリケーションを特定することができる。
なお、本システムによらずに対象アプリケーションがインストールされた場合でも、管理サーバ200は、インストールされた対象アプリケーションのアプリIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理しているので、管理サーバ200は、ユーザ端末100にインストールされている対象アプリケーションを特定することができる。
(9)インストール通知情報には、さらにインストール通知情報を送信した対象アプリケーションのアプリユーザID(ユーザ情報の一例)が含まれてもよい。つまり、インストール通知取得部241は、アプリユーザ情報取得部として機能する。すなわち、管理サーバ200は、リワードユーザID(固有識別情報の一例)と関連付けて対象アプリケーションのアプリユーザIDを取得するアプリユーザ情報取得部を備える。例えば、ユーザ端末100(SDK11)のインストール通知部103は、インストールされた対象アプリケーションをインストールしたユーザの当該インストールされた対象アプリケーションにおけるアプリユーザIDをさらに含めたインストール通知情報を、管理サーバ200に対して送信する。管理サーバ200は、インストール通知情報に含まれるアプリユーザIDを取得する。
また、対象アプリケーションによっては、ユーザ情報を登録するタイミングが、初めて起動したときだけでなく、例えばチュートリアルが終了したときなど、対象アプリケーションにより異なる場合がある。したがって、管理サーバ200は、アプリユーザID(を、インストール通知情報以外の情報に含ませてユーザ端末100(SDK11)から取得するようにしてもよい。また、管理サーバ200は、アプリユーザIDを、対象アプリケーションに対応したアプリサーバ300から取得するようにしてもよい。
管理サーバ200のインストール情報管理部222は、インストール通知情報に含まれるリワードユーザID、対象アプリケーションのアプリID(識別情報の一例)、及び対象アプリケーションの(における)アプリユーザIDを関連付けて管理する。ここで、インストール情報管理部222が管理するアプリユーザIDは、上述したように、管理サーバ200が取得したインストール通知情報に含まれていたものでもよいし、インストール通知情報以外の情報に含まれていたものでもよい。
これにより、ユーザ端末100に対象アプリケーションがインストールされた場合、管理サーバ200は、インストールされた対象アプリケーションのアプリIDと、インストールされた対象アプリケーションにおけるアプリユーザIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。即ち、管理サーバ200は、ユーザ端末100にインストールされている対象アプリケーション毎のアプリユーザIDをリワードユーザIDに関連付けて管理することができる。
(10)管理サーバ200のアプリケーション管理部221は、キャンペーン(イベントの一例)を示す情報とキャンペーンに関する情報を関連付けて、キャンペーン情報記憶部234またはキャンペーン参加アプリ情報記憶部235に記憶させて管理する。
管理サーバ200のリスト通知部242は、アプリケーション管理部221が管理する上述の情報を参照して、アプリケーションリストに含まれる一または複数の特定アプリケーションに対応したキャンペーンに関する情報を送信する。
これにより、ユーザ端末100は、管理サーバ200から取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示する際に、キャンペーンが設定されている特定アプリケーションにはそのキャンペーンに関する情報(キャンペーンの名称や説明、キャンペーン期間等)を対応付けて表示することができる。
(11)管理サーバ200のアプリケーション管理部221は、キャンペーン(イベントの一例)に関する情報として、CPリワード(報酬の一例)を示す情報の掲載場所のリンク先を示す情報を含んで管理する。
管理サーバ200のリスト通知部242は、アプリケーション管理部221が管理する上述の情報を参照して、キャンペーンに関する情報として、アプリケーションリストに含まれる一または複数の特定アプリケーションに対応した上述のリンク先を示す情報を送信する。
これにより、ユーザ端末100は、管理サーバ200から取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示する際に、キャンペーンが設定されている特定アプリケーションにはそのキャンペーンのCPリワードを示す情報の掲載場所のリンク先を示す情報を対応付けて表示することができる。なお、CPリワードを示す情報の掲載場所をリンク先としているのは、キャンペーン内容や時期に応じた多様な対応が可能なように、その掲載方法に自由度を持たせるためである。
(12)具体的には、管理サーバ200のアプリケーション管理部221(第1報酬情報管理部の一例)は、キャンペーン(イベントの一例)に対応して予め設定されたCPリワード(第1の報酬の一例)を示す情報の掲載場所のリンク先を示す情報をキャンペーン参加アプリ情報記憶部235に記憶させて管理する。また、アプリケーション管理部221(第2報酬情報管理部の一例)は、複数の対象アプリケーションのそれぞれと通常リワード処理(第2の報酬付与処理の一例)により付与される予め設定された通常リワードを示す情報とを対応付けた通常リワード情報を通常リワード情報記憶部232に記憶させて管理する。
そして、管理サーバ200のリスト通知部は、複数の対象アプリケーションのうちの送客元アプリ10(第1アプリケーションの一例)との間でキャンペーンが設定されていない対象アプリケーションには通常リワードを示す情報が対応付けられて表示されるように、通常リワードを示す情報を含むアプリケーションリストを、ユーザ端末100に対して送信する。一方、リスト通知部は、複数の対象アプリケーションのうちの送客元アプリ10との間でキャンペーンが設定されている対象アプリケーションには上述のリンク先を示す情報が対応付けられて表示されるように、当該リンク先を示す情報を含むアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、ユーザ端末100は、管理サーバ200から取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示する際に、キャンペーンが設定されていない対象アプリケーションには通常リワードを示す情報を表示し、キャンペーンが設定されている特定アプリケーションにはそのキャンペーンのCPリワード(報酬の一例)を示す情報の掲載場所のリンク先を示す情報を対応付けて表示することができる。
(13)管理サーバ200の送客情報取得部243は、送客元アプリ10(第1アプリケーションの一例)から送客先アプリ20(第2アプリケーションの一例)に対する送客情報であって、リワードユーザID(固有識別情報の一例)、送客元アプリ10のアプリID(識別情報の一例)、及び送客先アプリ20のアプリID(識別情報の一例)を含む送客情報を取得する。送客情報取得部243が送客情報を取得すると、管理サーバ200の送客情報管理部223は、当該取得した送客情報に含まれるリワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDを関連付けて送客情報の記録として送客情報記憶部237に記憶させて管理する。
そして、管理サーバ200のリワード処理部245は、送客先アプリ20から報酬付与通知情報を取得した場合に、送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることを条件として、通常リワード処理またはCPリワード処理(報酬付与処理の一例)を実行する。
これにより、相互送客システム500は、本システムによらずに対象アプリケーションがインストールされた場合には送客情報の記録がないため、通常リワード及びCPリワードの対象としないようにすることができる。
(14)管理サーバ200のインストール誘導指示部244は、送客情報取得部243が取得した送客情報に含まれる送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)に基づいて送客先アプリ20をインストール可能なストアページ(画面)に誘導する指示情報をユーザ端末100に送信する。
これにより、ユーザ端末100は、送客元アプリ10(第1アプリケーションの一例)から送客される対象アプリケーションが選択された場合に、選択された対象アプリケーションをインストール可能なストアページをユーザに特別な操作をさせることなく自動で表示することができる。
(15)報酬付与通知情報には、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、及び送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)が含まれている。
ユーザ端末100(SDK11)の報酬付与通知部107は、上述の各情報を含む報酬付与通知情報を管理サーバ200に対して送信する。
管理サーバ200のリワード処理部245は、ユーザ端末100にインストールされた送客先アプリ20から取得した報酬付与通知情報に基づいて、リワードユーザIDに関連付けられた送客元アプリ10(第1アプリケーションの一例)のアプリユーザID(ユーザ情報の一例)を含む報酬付与情報を、送客元アプリ10に対応するアプリサーバ310(サーバ装置の一例)に送信する。
これにより、管理サーバ200は、取得した報酬付与通知情報を送信したユーザ端末100及び送客先アプリ20を特定することができるとともに、このユーザ端末100で送客元アプリ10を利用するユーザ(ユーザX)に対して報酬が付与されるように、このユーザ(ユーザX)の送客元アプリ10におけるアプリユーザIDを含む報酬付与情報を送客元アプリ10に対応するアプリサーバ310に送信することができる。
(16)ユーザ端末100(SDK11)の報酬付与通知部107は、さらにキャンペーン(イベントの一例)のキャンペーンID(識別情報の一例)を含めた報酬付与通知情報を管理サーバ200に対して送信する。
これにより、管理サーバ200は、キャンペーン情報記憶部234またはキャンペーン参加アプリ情報記憶部235を参照して、取得した報酬付与通知情報を送信した送客先アプリ20に設定されているキャンペーンを特定するとともに、キャンペーンに関する情報(例えば、報酬付与期間)を特定することができる。特に送客先アプリ20に複数のキャンペーンが設定されている場合にこのキャンペーンIDが報酬付与通知情報に含まれていることが有効である。例えば、一つの対象アプリケーションに対して、互いに異なるキャンペーン期間となる複数のキャンペーンを設定することができる。
(17)複数の特定アプリケーションに対して、キャンペーン期間(第1の期間の一例)と重複しない別期間のキャンペーン(イベントの一例)とが設定されたとする。このときには、管理サーバ200のリワード処理部245は、ユーザ端末100において送客先アプリ20(第2アプリケーションの一例)のキャンペーン期間(第1の期間の一例)のキャンペーン(イベント)に対応したCPリワード処理(報酬付与処理の一例)を実行済みである場合には、上述の別期間のキャンペーンに対応したCPリワード処理(報酬付与処理の一例)を実行しない。
これにより、相互送客システム500は、同じ送客先アプリ20に対するCPリワード処理において、あるキャンペーンでCPリワードによる報酬が付与されたユーザに対しては、別のキャンペーンでのCPリワードによる報酬が再度付与されないようにすることができる。即ち、CPリワードによる報酬付与が行われた送客先アプリ20は、別のCPリワードの対象とはならない。
例えば、送客先アプリ20をキャンペーンAのキャンペーン期間にインストールしたユーザには、そのキャンペーンで設定された成果地点の到達に基づいて報酬が付与される。複数設けられた成果地点のそれぞれに到達した場合は、それぞれの到達に基づいてそれぞれ報酬が付与される。しかし、その後の期間でキャンペーンAとは異なるキャンペーンBが開始されても。そのキャンペーンBで設定された成果地点に到達しても報酬は付与されない。
ここで、キャンペーンBのキャンペーン期間が始まり、キャンペーンBで設定された成果地点に到達した場合には、報酬付与通知情報がユーザ端末100から管理サーバ200に送信されてしまう。しかしながら、ユーザ端末100からキャンペーンBに対応する送客情報が管理サーバ200に対して送信されていないので、管理サーバ200は、キャンペーンBに対応する送客情報を管理していない(送客情報記憶部237に該当するレコードがない)ことになる。その結果、リワード成立情報記憶部238にもこのキャンペーンBに対応するリワード成立情報が管理されていないため、管理サーバ200は、キャンペーンBに対する報酬付与通知情報を取得しても、リワード成立情報を更新することができず、当該報酬付与通知情報を無効なものとして扱うことができる。したがって、CPリワードの2重報酬付与を防止する制御が可能になる。
(18)管理サーバ200のリワード処理部245は、ユーザ端末100において送客先アプリ20(第2アプリケーションの一例)のCPリワード処理(第1の報酬付与処理の一例)及び通常リワード処理(第2の報酬付与処理の一例)の少なくとも一方を実行済みである場合には、他方の報酬付与処理を実行しない。
例えば、管理サーバ200は、通常リワード処理またはCPリワード処理が行われた送客先アプリ20のリワード成立情報に含まれる成立状態が既に「1」(成立)に更新されている。そのため、管理サーバ200は、この送客先アプリ20から再び報酬付与通知情報を取得しても、成立状態を「1」(成立)に更新可能なリワード成立情報がなく、当該報酬付与通知情報を無効なものとして扱うことができる。
これにより、相互送客システム500は、同じ送客先アプリ20に対して、通常リワードによる報酬と、CPリワードによる報酬とが2重に付与されないようにすることができる。即ち、通常リワードによる報酬付与が行われた送客先アプリ20は、CPリワードの対象とはならない。また、CPリワードによる報酬付与が行われた送客先アプリ20は、通常リワードの対象とはならない。
(19)上記実施形態では、キャンペーン(イベントの一例)に対して、キャンペーン期間(第1の期間の一例)の最初又は途中から開始し、キャンペーン期間の最後より後に終了する報酬付与期間(第2の期間の一例)が設定されている。ユーザ端末100(SDK11)の報酬付与通知部107は、報酬付与通知情報を管理サーバ200に対して送信する。そして、管理サーバ200のリワード処理部245は、報酬付与期間内にユーザ端末100にインストールされた送客先アプリ20(第2アプリケーションの一例)から報酬付与通知情報を取得した場合に、当該取得した報酬付与通知情報に基づくCPリワード処理(報酬付与処理の一例)を実行する。
これにより、相互送客システム500は、キャンペーン期間の最後の直前に送客先アプリ20がユーザ端末100にインストールされた場合であっても、CPリワードの報酬が付与される成果地点までの到達をユーザが試みる期間をユーザに与えることができる。また、管理サーバ200は、報酬付与期間内に、ユーザ端末100から報酬付与通知情報を取得した場合に、CPリワード(報酬の一例)が付与されるようにすることができる。
(20)なお、ユーザ端末100(SDK11)の報酬付与通知部107は、報酬付与条件が充足されたタイミングが報酬付与期間(第2の期間の一例)であった場合に、報酬付与通知情報を管理サーバ200に対して送信してもよい。そして、管理サーバ200のリワード処理部245は、報酬付与条件が充足されたタイミングが報酬付与期間内であった場合に、送客先アプリ20(第2アプリケーションの一例)から報酬付与通知情報を取得するとともに、当該取得した報酬付与通知情報に基づくCPリワード処理(報酬付与処理の一例)を実行してもよい。
この場合、ユーザ端末100は、報酬付与条件が充足されたタイミングが報酬付与期間である場合にのみ報酬付与通知情報を管理サーバ200に送信する。したがって、管理サーバ200は、報酬付与期間内に報酬付与条件が充足された場合に、ユーザ端末100から報酬付与通知情報を取得してCPリワード(報酬の一例)が付与されるようにすることができる。
(21)キャンペーン(イベントの一例)に対応して予め設定された報酬付与条件は複数設けられていてもよい。ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、報酬付与通知情報をそれぞれ管理サーバ200に対して送信する。管理サーバ200のリワード処理部245は、複数の報酬付与条件のいずれかが充足されたことに基づいて、ユーザ端末100にインストールされた送客先アプリ20(第2アプリケーションの一例)から報酬付与通知情報を取得した場合に、当該取得した報酬付与通知情報に基づくCPリワード処理(報酬付与処理の一例)を実行する。
これにより、相互送客システム500は、送客先アプリ20に設定されたキャンペーンの複数の報酬付与条件のそれぞれが充足されたことに応じて、それぞれ対応するCPリワード処理を実行することができる。つまり、ユーザはキャンペーン期間(報酬付与期間の一例)に設定された複数の報酬をできるだけ多く獲得するために送客先アプリ20を継続して利用することになる。そのため送客先アプリ20の利用を高めることができる。
(22)管理サーバ200のリワード処理部245は、複数の報酬付与条件のいずれかが充足されたことに基づいて送客先アプリ20(第2アプリケーションの一例)から報酬付与通知情報を取得した場合に、取得したタイミングが報酬付与期間(第2の期間の一例)内であるとき報酬付与通知情報に基づくCPリワード処理(報酬付与処理の一例)を実行する。
つまり、管理サーバ200は、キャンペーンに複数の報酬付与条件が設定されている場合も、複数の報酬付与条件のそれぞれが充足されたタイミング(管理サーバ200が報酬付与通知情報を取得したタイミング)が報酬付与期間内である場合にのみCPリワード(報酬の一例)を付与することができる。
(23)複数の報酬付与条件のそれぞれは、例えば、送客先アプリ20(第2アプリケーションの一例)による処理において予め設定された複数の成果地点のそれぞれに到達するタイミングである。ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、複数の成果地点のうちの到達した成果地点を示す成果地点ID(成果地点情報の一例)を含む報酬付与通知情報をそれぞれ管理サーバ200に対して送信する。そして、管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20から複数の成果地点のうちの到達した成果地点を示す成果地点ID(成果地点情報)を含む報酬付与通知情報を取得するとともに、当該取得した成果地点ID(成果地点情報)を含む報酬付与情報を送客元アプリ10(第1アプリケーションの一例)に対応するアプリサーバ310(サーバ装置の一例)に送信する。
つまり、管理サーバ200は、ユーザ端末100において、送客先アプリ20の複数の成果地点のそれぞれに到達したことに応じて、それぞれ到達した成果地点を示す成果地点IDを、送客元アプリ10に対応するアプリサーバ310に送信する。
これにより、相互送客システム500は、送客先アプリ20に設定されたキャンペーンの複数の成果地点のそれぞれが到達されたことに応じて、到達した成果地点のそれぞれに対応するCPリワード(報酬の一例)が付与されるようにすることができる。
(24)ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、複数の成果地点のいずれかに到達したことを示す到達情報を含む報酬付与通知情報を管理サーバ200に対して送信してもよい。そして、管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20(第2アプリケーションの一例)から複数の成果地点のいずれかに到達したことを示す到達情報を含む報酬付与通知情報を取得するとともに、当該取得する毎に報酬付与通知情報の取得回数に応じた報酬付与情報を送客元アプリ10(第1アプリケーションの一例)に対応するアプリサーバ310(サーバ装置の一例)に送信してもよい。
つまり、管理サーバ200は、複数の成果地点のいずれかに到達したときに送客元アプリ10に対応するアプリサーバ310に送信する報酬付与情報には、成果地点IDを含めずとも、報酬付与通知情報の取得回数を示す情報(即ち、成果地点に到達した回数であって、何番目の成果地点であるかを示す情報)を含めてもよい。この場合、アプリサーバ310と管理サーバ200との間で、上述の回数を示す情報を含む報酬付与情報を授受するように予め取り決めてさえおけばよい。よって、相互送客システム500は、成果地点IDに代えて報酬付与通知情報の取得回数を示す情報を報酬付与情報に含めても、到達した成果地点のそれぞれに対応するCPリワード(報酬の一例)が付与されるようにすることができる。
(25)管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20(第2アプリケーションの一例)から複数の成果地点のいずれかに到達したことを示す到達情報を含む報酬付与通知情報を取得するとともに、当該取得した到達情報を含む報酬付与情報を送客元アプリ10(第1アプリケーションの一例)に対応するアプリサーバ310(サーバ装置の一例)に送信してもよい。
つまり、管理サーバ200は、複数の成果地点のいずれかに到達したときに送客元アプリ10に対応するアプリサーバ310に送信する報酬付与情報には、成果地点IDを含めずとも、いずれかの成果地点に到達したこと示す到達情報(例えば、単に成果地点に到達したことを示すフラグ情報)を含めてもよい。この場合、アプリサーバ310と管理サーバ200との間で、単に到達情報を含む報酬付与情報を授受するように予め取り決めてさえおけばよい。そして、アプリサーバ310が、到達情報の取得回数を計数して計数結果に応じた報酬を付与してもよい。よって、相互送客システム500は、成果地点IDに代えて単に到達情報を報酬付与情報に含めても、到達した成果地点のそれぞれに対応するCPリワード(報酬の一例)が付与されるようにすることができる。
このように、CPリワードによる報酬付与条件は複数設けることができる。ここで、相互送客システム500は、それぞれの報酬付与条件の設定内容や報酬付与条件の総数等を関知する必要がなく、送客先アプリ20において報酬付与条件が充足される毎(成果地点に到達する毎)に、成果地点ID、報酬付与通知情報の取得回数を示す情報、到達情報等をアプリサーバ310に送信するだけである。
なお、本実施形態では、相互送客システム500に対応する対象アプリケーションに関する情報を管理サーバ200が管理するため、本システムに対応しないアプリケーションまで検索対象となることを防止することができる。また、ユーザ端末100にインストールされているアプリケーションを特定する方法としてはURLスキームを利用する方法があるが、その場合、管理サーバ200からURLスキームを取得可能なように構成する必要がある。これに対し、本実施形態では、ユーザ端末100にインストールされている対象アプリケーションのインストール情報が管理サーバ200に管理される。そのため、本実施形態では、送客先アプリ20として選択する候補となるアプリケーションリストを生成する際の処理を容易に行うことができる。
また、送客先アプリ20を購入するアプリストア400(ストアサイトの一例)からダウンロードしてインストールする過程、およびインストール完了後に当該送客先アプリ20を起動する過程は、ユーザの操作に委ねられており、その間にどうような操作がされるか不明である。例えば、送客先アプリ20を購入するアプリストア400へ誘導されたユーザは、そのついでに、他のアプリケーションをダウンロードする可能性もあり得る。このような場合であっても、相互送客システム500では、送客元アプリ10から送客先アプリ20に対する送客情報を管理しているため、送客の事実に基づいて正しくリワード処理を行うことができる。
<第2の実施形態>
次に、本発明の第2の実施形態を説明する。本実施形態の相互送客システム500の構成は、第1の実施形態と同様であるので、本実施形態において特徴的な処理について説明する。第1の実施形態では、図14を参照して、ステップSE15の処理でインストール済みの対象アプリケーションを除いたアプリケーションリストまたは送客元アプリ10との間にキャンペーンが設定されている特定アプリケーションのアプリケーションリストとするフィルタ処理を説明したが、これに限られるものではない。本実施形態では、アプリ間フィルタ記憶部233に設定されている条件(フィルタ情報)に基づいて、アプリケーションリストに含める対象アプリケーションを所定の条件に基づいて選択する処理(フィルタリングする処理)について説明する。
アプリ間フィルタ記憶部233は、相互送客可能な対象アプリケーションを制限するためのアプリケーション間におけるフィルタ情報(アプリ間フィルタ情報)を記憶する。この相互送客可能な対象アプリケーションを制限するためのアプリ間フィルタ情報は、例えば、送客先アプリ20として選択可能な対象アプリケーションの一覧LTへの掲載を禁止する掲載禁止情報として設定される。
なお、このアプリ間フィルタ情報は、通常リワードにおいて有効であり、送客元アプリ10との間でキャンペーンが設定されていない対象アプリケーション、送客元アプリ10との間でキャンペーンが設定されていてもキャンペーン期間中ではない特定アプリケーションに対してフィルタリングする情報である。
図16は、アプリ間フィルタ記憶部233に記憶されるアプリ間フィルタ情報の一例を示す図である。アプリ間フィルタ情報には、フィルタID(FilterID)と、ブロックするアプリID(ApIDfrom)と、ブロックされるアプリID(ApIDto)とが関連付けられている。フィルタID(FilterID)は、アプリ間フィルタ情報毎に識別可能なように各フィルタ情報が設定された順に発行される管理IDである。
ブロックするアプリID(ApIDfrom)には、対象アプリケーションの一覧LTへの掲載の禁止を設定する側の設定側アプリケーションのアプリIDが設定される。一方、ブロックされるアプリID(ApIDto)には、当該設定側アプリケーションの対象アプリケーションの一覧LTへの掲載が禁止される側の被設定側アプリケーションのアプリIDが設定される。つまり、アプリ間フィルタ記憶部233は、ブロックするアプリID(設定側アプリケーションのアプリID)とブロックされるアプリID(被設定側アプリケーションのアプリID)とを組みにしたアプリ間フィルタ情報を記憶する。
リスト通知部242は、アプリ間フィルタ記憶部233に記憶されているアプリ間フィルタ情報を参照して、ブロックするアプリID(設定側アプリケーションのアプリID)に設定されている対象アプリケーションからの送客の場合には、送客先アプリ20として選択可能なアプリケーションリストから、ブロックされるアプリID(被設定側アプリケーションのアプリID)に設定されている対象アプリケーションを除く。
例えば、送客元アプリ10(ゲームA)から送客先アプリ20(ゲームB)に対する送客を禁止したい場合には、ブロックするアプリIDに送客元アプリ10(ゲームA)のアプリIDを設定し、ブロックされるアプリIDに送客先アプリ20(ゲームB)のアプリIDを設定すればよい。
なお、図16に示すアプリ間フィルタ情報におけるブロックするアプリID(設定側アプリケーションのアプリID)とブロックされるアプリID(被設定側アプリケーションのアプリID)とは双方向に掲載が禁止される関係としてもよい。即ち、リスト通知部242は、アプリ間フィルタ記憶部233に記憶されているアプリ間フィルタ情報を参照して、ブロックされるアプリID(被設定側アプリケーションのアプリID)に設定されている対象アプリケーションからの送客の場合には、送客先アプリ20として選択可能なアプリケーションリストから、ブロックするアプリID(設定側アプリケーションのアプリID)に設定されている対象アプリケーションを除いてもよい。
また、対象アプリケーションによって、通常リワードは参加せずにCPリワードのみ参加したい場合には、当該対象アプリケーションのアプリIDをブロックされるアプリID(ApIDto)に設定し、ブロックするアプリID(ApIDfrom)に「null」を設定する。これにより、キャンペーン期間外では、当該対象アプリケーションは、いずれの対象アプリケーションからの送客に対しても対象アプリケーションの一覧LTへ掲載されないようになる。例えば、既にあるアプリケーションが相互送客システム500に参加する前に、他のアプリケーションとの間で通常リワードによる相互送客を実施している場合であって、CPリワードのみ本システムに参加したいアプリケーションに対応することができる。なお、通常リワードは参加せずにCPリワードのみ参加したい対象アプリケーションに関する情報は、対象アプリケーションに関する対象アプリケーション情報を記憶する対象アプリ情報記憶部231にて、対象アプリケーションのアプリID(ApID)と関連付けて記憶させるようにしてもよい。
〔第2の実施形態のまとめ〕
以上説明したように、管理サーバ200のアプリケーション管理部221は、アプリケーションリストに基づく対象アプリケーションの一覧LTへの掲載の禁止を設定する側の設定側アプリケーションと、当該設定側アプリケーションの対象アプリケーションの一覧LTへの掲載が禁止される側の被設定側アプリケーションとを組みにしたアプリ間フィルタ情報(第1の掲載禁止情報の一例)をアプリ間フィルタ記憶部233に記憶させて管理する。
そして、管理サーバ200のリスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、送客元アプリ10(第1アプリケーションの一例)を被設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合であって、当該アプリ間フィルタ情報で示す設定側アプリケーションが送客元アプリ10との間でキャンペーン(イベントの一例)が設定されていないときは、当該設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、相互送客システム500では、通常リワードにおいて相互送客させたくない対象アプリケーションの関係を管理サーバ200に設定することができる。例えば、対象アプリケーションの中でレイティング(年齢制限)が設定されているものがあれば、レイティングが設定されていない送客元アプリ10から、レイティングが設定されている送客先アプリ20への送客を行わせないようにすることができる。
また、管理サーバ200のリスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、送客元アプリ10を設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合であって、当該第1の掲載禁止情報で示す被設定側アプリケーションが送客元アプリ10との間でキャンペーンが設定されていないときは、当該被設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、アプリ間フィルタ情報の設定側アプリケーションと被設定側アプリケーションとのそれぞれに設定された対象アプリケーションは、互いに(双方向に)アプリケーションリストへの掲載を禁止(ブロック)することができる。
また、管理サーバ200のアプリケーション管理部221は、アプリケーションリストに基づく対象アプリケーションの一覧LTへの掲載が禁止される側の被設定側アプリケーションのみが登録されたアプリ間フィルタ情報(第2の掲載禁止情報の一例)をアプリ間フィルタ記憶部233に記憶させて管理する。
そして、管理サーバ200のリスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、アプリ間フィルタ情報で示す被設定側アプリケーションが送客元アプリ10(第1アプリケーションの一例)との間でキャンペーン(イベントの一例)が設定されていないときは、当該被設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。
また、アプリ間フィルタ情報に相当する情報は、対象アプリ情報記憶部231に記憶させて管理するようにしてもよい。つまり、対象アプリ情報記憶部231にアプリ間フィルタ情報に相当する情報が記憶された対象アプリケーションについては、CPリワードのみ参加させるようにする。
これにより、キャンペーンのみ相互送客システム500に参加したいような対象アプリケーションの場合に、キャンペーン期間外では、いずれの対象アプリケーションからの送客に対しても対象アプリケーションの一覧LTへ掲載されないようにすることができる。
<第1及び第2の実施形態の変形例>
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の第1の実施形態と第2の実施形態とにおいて説明した各機能は、任意に組み合わせることができる。
(1)上記実施形態では、管理サーバ200の通信部210(送受信部)は、インストール通知情報(第1情報の一例)、アプリケーションリスト(第2情報の一例、例えば複数の対象アプリケーションのうちの少なくとも一つの対象アプリケーションを示す情報)、リスト要求通知情報、送客情報(例えば、送客元情報又は送客先情報)、指示情報(インストール可能な画面をユーザ端末100に表示させるための情報の一例)、又は報酬付与通知情報を直接的にユーザ端末100と通信する例を説明した。同様にユーザ端末100の端末通信部130(送受信部)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を直接的に管理サーバ200と通信する例を説明した。
ここで、管理サーバ200の通信部210(送受信部)は、送客元アプリ10(第1アプリケーション)又は送客先アプリ20(第2アプリケーション)と、それぞれに対応するアプリサーバ300(サーバ装置)を介して通信セッションを確立させた後で、直接的にユーザ端末100と通信してもよい。同様にユーザ端末100の端末通信部130(送受信部)は、送客元アプリ10(インストールされた対象アプリケーション)又は送客先アプリ20(選択された対象アプリケーション)と、それぞれに対応するアプリサーバ300(サーバ装置)を介して通信セッションを確立させた後で、直接的に管理サーバ200と通信してもよい。
なお、ユーザ端末100から直接的に管理サーバ200と通信する場合に、必要に応じて通信セッションを確立させるようにしてもよい。つまり、通信セッションを確立させる前に直接的に管理サーバ200と通信する場合と、通信セッションを確立させた後に直接的に管理サーバ200と通信する場合との両方を含んでもよい。
例えば、インストール通知情報は、通信セッションを確立させる前に直接的に管理サーバ200と通信し、それ以外の情報については通信セッションを確立させた後に直接的に管理サーバ200と通信するようにしてもよい。このようにすることで、通常リワードの対象となる送客先アプリ20として、送客先アプリ20に対応するアプリサーバ320を具備しないアプリケーション、すなわちユーザ端末100においてスタンドアローンで動作するアプリケーションを対象アプリケーションとして扱うことが可能になる。つまり、スタンドアローンで動作するアプリケーションがインストールされたことを示すインストール通知情報を送信する際に、ユーザ端末100は、アプリサーバ300(サーバ装置)を介して通信セッションを確立させる処理を行わずに、直接的に管理サーバ200と通信することができる。
図17は、通信セッションの確立処理の動作を説明するフローチャートである。この通信セッションの確立処理(通信セッション確立処理)は、送客元アプリ10または送客先アプリ20がユーザ端末100で起動され、SDK11AとSDK11Bが初めて管理サーバ200と通信を行う場合であって、例えば、図14及び図15を参照して説明した初期化処理の中で行われる。図17では、図14に示す初期化処理の中で行われる通信セッションの確立処理を示している。なお、この通信セッションの確立処理は、図15に示す初期化処理の中でも同様に行うことができる。図17において図14の各処理に対応する部分には同一の符号を付け、その説明を省略する。なお、ユーザ端末100とアプリサーバ310とは既に通信セッションが確立されている前提となる。
ステップSA12、SA13、SA14、SA15の処理においてリワードユーザIDの取得済となり、ステップSA16、SA17の処理においてインストール通知情報の通知済みとなると、SDK11Aの初期化処理部101は、ワンタイムトークンの取得を要求するワンタイムトークン取得要求情報をアプリサーバ310に対して送信する(ステップSA21)。アプリサーバ310は、ユーザ端末100(SDK11A)からワンタイムトークン取得要求情報を取得すると、取得したワンタイムトークン取得要求情報に基づくワンタイムトークン生成要求情報を管理サーバ200に対して送信する(ステップSF11)。管理サーバ200は、アプリサーバ310からワンタイムトークン生成要求情報を取得すると、ワンタイムトークンを生成し、生成したワンタイムトークンをアプリサーバ310に対して送信する(ステップSE12)。アプリサーバ310は、管理サーバ200からワンタイムトークンを取得すると、取得したワンタイムトークンをユーザ端末100(SDK11A)に対して送信する(ステップSF12)。SDK11Aの初期化処理部101は、アプリサーバ310からワンタイムトークンを取得すると、取得したワンタイムトークンを含んだセッション確立要求情報を管理サーバ200に対して送信する(ステップSA22)。管理サーバ200は、ユーザ端末100(SDK11A)からセッション確立要求情報を取得すると、取得したセッション確立要求情報に含まれるワンタイムトークンが正しい情報である場合(ユーザ端末100(SDK11A)に対して送信したワンタイムトークンと一致する場合)には、通信セッションを確立して、相互送客システム500による通信が許可される(ステップSE13)。以後、図14を参照して説明した処理が行われる。なお、管理サーバ200は、ユーザ端末100(SDK11A)から取得したセッション確立要求情報に含まれるワンタイムトークンが正しい情報でない場合には通信エラーとし、相互送客システム500による通信が許可されない。また、管理サーバ200がユーザ端末100(SDK11A)からセッション確立要求情報を取得できない場合には、当然、相互送客システム500による通信が許可されない。
このように、通信セッションを確立させた後で、相互送客システム500による通信を開始することで、相互送客システム500を含むネットワークシステム1内のセキュリティを向上させることができる。
なお、インストール通知情報(第1情報の一例)、アプリケーションリスト(第2情報の一例、例えば複数の対象アプリケーションのうちの少なくとも一つの対象アプリケーションを示す情報)、リスト要求通知情報、送客情報(例えば、送客元情報又は送客先情報)、指示情報(インストール可能な画面をユーザ端末100に表示させるための情報の一例)、又は報酬付与通知情報の一部は、ユーザ端末100から直接的に管理サーバ200と通信せずに、送客元アプリ10(第1アプリケーション)又は送客先アプリ20(第2アプリケーション)に対応するアプリサーバ300(サーバ装置)を介してユーザ端末100と通信してもよい。すなわち、管理サーバ200の通信部210(送受信部)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を送客元アプリ10(第1アプリケーション)又は送客先アプリ20(第2アプリケーション)に対応するアプリサーバ300(サーバ装置)を介してユーザ端末100と通信、若しくは直接的にユーザ端末100と通信するようにしてもよい。
さらに、管理サーバ200の通信部210(送受信部)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を送客元アプリ10(第1アプリケーション)又は送客先アプリ20(第2アプリケーション)に対応するアプリサーバ300(サーバ装置)を介してユーザ端末100と通信してもよい。同様にユーザ端末100の端末通信部130(送受信部)は、送客元アプリ10(インストールされた対象アプリケーション)又は送客先アプリ20(選択された対象アプリケーション)に対応するアプリサーバ300(サーバ装置)を介して管理サーバ200と通信してもよい。
このように、相互送客システム500は、アプリサーバ300を介してユーザ端末100と管理サーバ200とが通信しても、第1の実施形態及び第2の実施形態と同様の送客処理及びリワード処理を行うことができ、同様の効果を得ることができる。
(2)上記実施形態では、アプリユーザID(ApUID)をインストール通知情報などに含めて、ユーザ端末100(SDK11)から管理サーバ200送信される例を説明したが、これに限られるものではない。例えば、アプリサーバ300が、通信セッション確立処理でリワードユーザIDに関連付けて、アプリユーザIDを管理サーバ200に送信するようにしてもよい。具体的には、ステップSA21にて、SDK11Aの初期化処理部101が、ワンタイムトークン取得要求情報をアプリサーバ300に対して送信する際にリワードユーザIDをアプリサーバ300に通知する。さらに、アプリサーバ300は、リワードユーザID、アプリID及びアプリユーザIDを管理サーバ200に送信する。管理サーバ200のインストール情報管理部222は、インストール情報記憶部236に記憶されるインストール情報のうち、取得したリワードユーザIDとアプリIDとに対応したインストール情報に対応するアプリユーザID(ApUID)として、アプリサーバ300から取得したアプリユーザIDを記憶させる。このようにアプリユーザIDをユーザ端末100(SDK11)からでなく、アプリサーバ300から送信することで、ユーザ端末100(SDK11)にて、アプリユーザIDを管理することが不要になる。
上記のようにアプリサーバ300が通信セッション確立処理でリワードユーザIDに関連付けてアプリユーザIDを管理サーバ200に送信する場合には、インストールされた対象アプリケーションにおいてユーザ情報が登録された後でしか、通信セッション確立処理を行うことができない。しかしながら、ユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報の管理サーバ200に対する送信は、ユーザ情報が登録されたことと直接関連させる必要がない。したがって、ユーザ端末100は、インストールされた対象アプリケーションにおいて、ユーザ情報が登録されているか否かに関わりなく、インストール通知情報を管理サーバ200に対して送信するようにしている。したがって、ユーザ端末100がインストール通知情報を送信する際には、通信セッションが確立される前に送信されることになる。
(3)上記実施形態では、リワード処理部245は、ユーザ端末100の送客先アプリ20のSDK11Bから報酬付与通知情報を取得したことに基づいてCPリワード処理を実行する例を説明したが、これに限られるものではない。例えば、送客先アプリ20に対応するアプリサーバ320から報酬付与通知情報を取得したことに基づいてCPリワード処理を実行してもよい。この場合、報酬付与通知情報(成果地点到達通知)には、送客先アプリ20のアプリIDとアプリユーザID、キャンペーンID、成果地点ID(RewardSpotID)を含めるようにすればよい。
例えば、管理サーバ200のリワード処理部245は、アプリサーバ320から送信された報酬付与通知情報(成果地点到達通知)を取得する。次に、リワード処理部245は、インストール情報記憶部236に記憶されるインストール情報から、送客先アプリ20のアプリIDとアプリユーザIDに対応したインストール情報を特定し、特定したインストール情報に対応したリワードユーザIDを逆引きする。そして、リワード処理部245は、逆引きしたリワードユーザIDと送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることに基づいて、当該送客情報に対応したリワード管理IDに関連付けて、取得した報酬付与通知情報に含まれる成果地点ID(RewardSpotID)を設定し、成立状態(RewardStatus)をフラグ「0」(未通知)とするリワード成立情報を生成し、リワード成立情報記憶部238に記憶させる。この後の処理は上記実施形態と同じである。このように、報酬付与通知情報(成果地点到達通知)をアプリサーバ320から送信することで、ユーザ端末100(SDK11B)の処理の負担を減らすことができる。
(4)上記実施形態では、リワードユーザIDが、最初に対象アプリケーションがインストールされたときに、インストールされたユーザ端末100を一意に識別可能な固有識別情報(相互送客システム500においてユニークな固有識別情報)として生成される例を説明したが、これに限られるものではない。例えば、ユーザ端末100に固有に設定されている端末識別番号や電話番号(例えば、スマートフォンの場合)をリワードユーザIDとしてもよい。しかしながら、端末識別番号や電話番号等のような個人情報を利用せずに、本実施形態のようにリワードユーザIDを生成して利用する方がセキュリティ性を高めることができる。また、リワードユーザIDとして、端末識別番号や電話番号等を利用せずに、相互送客システム500においてユニークな固有識別情報を採用することで、ユーザが所有するユーザ端末100(端末装置)を買い替え等で変更する場合でも、所定の手続きを経てリワードユーザIDを変更後のユーザ端末100に移行することで、変更前のユーザ端末100からの状態を維持して相互送客システム500を利用することが可能となる。
また、図14のステップSA25及びステップSA26のアプリ一覧ページ(対象アプリケーションの一覧LT)を表示する処理と、アプリケーションリストからダウンロードする対象アプリケーションが選択されたときに送客情報を送信する処理とは、SDK11が実行する処理に代えて、SDK11の処理とは関係のないユーザ端末100にインストールされている他のアプリケーション(例えば、ブラウザ)が起動して実行されてもよい。例えば、管理サーバ200からユーザ端末100においてブラウザにリダイレクトされるようなアプリ一覧ページのデータを生成してユーザ端末100に送信することにより、ユーザ端末100においてブラウザが起動して、当該アプリ一覧ページが表示されるようにしてもよい。また、このアプリ一覧ページのデータにリスト要求通知情報に含まれる送客元アプリ10(ゲームA)のアプリID(ApID)を含めて送信することにより、アプリ一覧ページで選択された送客先アプリ20(ゲームB)のアプリID(ApID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、リワードユーザID(RewardUID)とを含む送客情報を、上述のブラウザから管理サーバ200に対して送信されるようにしてもよい。
また、CPリワード処理においても、通常リワード処理と同様に送客先アプリ20がインストールされたことに基づいて実行されるようにしてもよい。この場合、送客先アプリ20における報酬付与条件を、送客先アプリ20がユーザ端末100にインストールされたこととしてもよい。
また、キャンペーンを実施する全ての特定アプリケーションが、送客先アプリ20がインストールされたことが最初の成果地点とするならば、当該成果地点の達成に対応する報酬付与通知情報の送客先アプリ20からの送付を行わなくてもよい。この場合には、管理サーバ200が、通常リワードと同様な報酬付与処理を行い、アプリサーバ310に対してキャンペーンIDを含む報酬付与情報を送信することにより、アプリサーバ310から通常リワードに相当するCPリワードによる報酬が付与されるようになる。具体的には、図15のフローチャートにおけるステップSE22の判定処理を行わずに、CPリワードと通常リワードのどちらでも、ステップSE23〜24の処理を行わせればよい。
(5)上記実施形態では、相互送客システム500に対応する対象アプリケーションとしてゲームを例に説明したが、この対象アプリケーションはゲームに限られるものではなく、ゲーム以外のいずれのアプリケーションであってもよい。
また、管理サーバ200の記憶部230は、管理サーバ200とは異なるサーバ装置に備えられてもよい。そして、管理サーバ200の管理部220または制御部240が管理サーバ200とは異なるサーバ装置に備えられた記憶部230に対してネットワークNWを介して通信することにより、記憶部230が備える各部が記憶する各情報を管理してもよい。
また、管理サーバ200とアプリサーバ300とが一体となったサーバ装置として構成されてもよい。
(6)上述の管理部220、制御部240、またはSDK11の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述の各部の処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
<第1及び第2の実施形態について>
以上説明した第1及び第2の実施形態について、以下のように記載することができるが、以下の記載に限られるものではない。
(1)本実施形態の相互送客システム500において、管理サーバ200(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241(第1情報取得部の一例)と、リスト通知部242(第2情報通知部の一例)と、リワード処理部245と、を備えている。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。ここで、管理の対象とは、例えば相互送客システム500に対応する対象アプリケーションとして管理する対象のことをいう。
インストール通知取得部241(第1情報取得部の一例)は、複数の対象アプリケーションのうちのいずれかの対象アプリケーションがユーザ端末100(端末装置の一例)により実行された場合、当該対象アプリケーションがユーザ端末100により実行されたことに応じてユーザ端末100から送信されたインストール通知情報(第1情報の一例)を取得する。
リスト通知部242(第2情報通知部の一例)は、複数の対象アプリケーションのうちユーザ端末100により実行された対象アプリケーション(第1アプリケーション、送客元アプリ10)に基づく要求を受けることにより、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例)をユーザ端末100に対して送信する。
リワード処理部245は、リスト通知部242がアプリケーションリストを送信したことに応じて、リスト通知部242から送信されたアプリケーションリストにより示される対象アプリケーションのうちの対象アプリケーション(第2アプリケーションの一例、送客先アプリ20)がユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて報酬付与処理をする。
ここで、対象アプリケーションがユーザ端末100により実行されたとは、例えば、対象アプリケーションがユーザ端末100にインストールされて起動したことをいう。また、対象アプリケーションがユーザ端末100により実行可能な状態になったとは、例えば、対象アプリケーションがユーザ端末100にインストールされたことをいう。
なお、ユーザ端末100に対象アプリケーションを実行するプログラムの一部がユーザ端末100にインストールされ、当該プログラムの残りの部分をユーザ端末100以外の装置が有する構成であってもよい。例えば、ユーザ端末100にインストールされる対象アプリケーションを実行するプログラムは、当該対象アプリケーションの実行を開始するために最低限必要なプログラムのみであってもよい。そして、残りのプログラムはユーザ端末100と通信可能なサーバ装置(例えば、アプリサーバ300)や他の端末装置(例えば、他のユーザ端末100)が有する構成としてもよい。
また、ユーザ端末100により実行される対象アプリケーションのプログラムの全部をユーザ端末100以外の装置が有する構成であってもよい。つまり、対象アプリケーションを実行するプログラムは、ユーザ端末100にはインストールされず、ユーザ端末100と通信可能なサーバ装置(例えば、アプリサーバ300)や他の端末装置(例えば、他のユーザ端末100)が有する構成としてもよい。すなわち、対象アプリケーションがユーザ端末100により実行されたとは、ユーザ端末100からの指示により、ユーザ端末100と通信網を介して接続されるサーバ装置において当該対象アプリケーションが実行された場合も含む。すなわち、ユーザ端末100により実行される対象アプリケーションは、所謂クラウド型やWEB型のアプリケーションであってもよい。この場合、対象アプリケーションがユーザ端末100により実行可能な状態になったとは、例えば、対象アプリケーションを実行する主体となるサーバ装置に対して利用可能な登録(例えば、ユーザ登録)を行い、ユーザ端末100からの指示により通信網を介して当該対象アプリケーションを実行可能な状態になったことをいう。
また、インストール通知情報を例として説明した第1情報は、対象アプリケーションがユーザ端末100により実行されたことに応じてユーザ端末100から送信された情報であればよく、インストールされたことを示す情報であってもよいし、インストールされたこと以外のことを示す情報であってもよい。インストールされたこと以外のことを示す情報とは、例えば、起動したことを示す情報、実行されたことを示す情報、単なるフラグ情報、等であってもよい。
つまり、管理サーバ200は、対象アプリケーションがユーザ端末100により実行されたことに応じて取得した上述の第1情報により、ユーザ端末100により実行された対象アプリケーションを認識できさえすればよい。
なお、上述の図14を参照して説明した相互送客処理の動作においては、ユーザ端末100は、対象アプリケーションがインストールされて最初に起動した際に、第1情報(図14では、インストール通知情報)を管理サーバ200に送信する例を説明したが、これに限られるものではない。例えば、ユーザ端末100は、対象アプリケーションが起動する毎に、第1情報(例えば、インストール通知情報)を管理サーバ200に送信してもよい。
また、管理サーバ200が第1情報を取得する場合、対象アプリケーションが実行されたことに応じて取得しなくてもよく、単に対象アプリケーションが実行されたユーザ端末100から取得してもよい。例えば、管理サーバ200が第1情報を取得するタイミングは、ユーザ端末100で対象アプリケーションが起動した直後に限られるものではなく、対象アプリケーションが起動してから所定の時間経過後、所定の時間毎、当該対象アプリケーションが所定の処理を実行した後、起動した対象アプリケーションが終了するとき、等であってもよい。なお、第1情報は、ユーザ端末100で対象アプリケーションが実行されたことがなければ当該ユーザ端末100から送信されない情報であって、ユーザ端末100から送信されたことによってユーザ端末100で対象アプリケーションが実行されたことを特定可能な情報であれば、いずれの情報であってもよい。
また、アプリケーションリストを例として説明した第2情報は、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示す情報が含まれていれば、その情報の形態はいずれの形態であってもよい。例えば、第2情報は、ユーザ端末100で表示可能なアプリ一覧ページのデータであってもよいし、アプリ一覧ページのリンク先を示す情報(例えば、リダイレクト指示情報)であってもよい。なお、このアプリ一覧ページにおいては、複数の対象アプリケーションを示す情報が、上下方向(縦方向)の並びで表示(所謂リスト表示)されてもよいし、左右方向(横方向)の並びで表示されてもよいし、または、縦及び横方向に升目状(格子状)の並びで表示(所謂グリッド表示)されてもよい。また、第2情報は、ユーザ端末100で表示可能なように、対象アプリケーションを示す情報(例えば、アプリ名称、アプリアイコン画像、アプリID等)が単に含まれているデータであってもよい。
なお、第2情報には、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示す情報の他に、ユーザ端末100からインストール通知情報を取得済みの少なくとも一の対象アプリケーションを示す情報が含まれてもよい。この場合、第2情報には、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示す情報と、ユーザ端末100からインストール通知情報を取得済みの少なくとも一の対象アプリケーションを示す情報とを区別可能な情報が含まれてもよい。
これにより、管理サーバ200は、ユーザ端末100により実行された送客元アプリ10に基づく要求を受けることにより、ユーザ端末100に未インストールの対象アプリケーションを示す情報をユーザ端末100に対して送信することができる。
ここで、ユーザ端末100により実行された送客元アプリ10に基づく要求を受けるとは、例えば、ユーザ端末100により実行された送客元アプリ10において、ユーザ端末100にインストール可能な対象アプリケーションのアプリケーションリストを取得するための所定の操作がユーザXにより行われたことに応じてユーザ端末100から送信されたリスト要求通知情報を管理サーバ200が取得することである。なお、ユーザ端末100は、ユーザの操作がなくとも、例えば送客元アプリ10が起動したことに応じてリスト要求通知情報を管理サーバ200に送信してもよい。すなわち、ユーザ端末100により実行された送客元アプリ10に基づく要求を受けるとは、例えば、送客元アプリ10が起動したことに応じてユーザ端末100から送信されたリスト要求通知情報を取得することとしてもよい。
また、管理サーバ200は、ユーザ端末100に未インストールの対象アプリケーションのうちの送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて、報酬付与処理をすることができる。例えば、管理サーバ200は、ユーザ端末100に未インストールの対象アプリケーションを示す情報をユーザ端末100に送信することに応じて、ユーザ端末100において当該情報により示される対象アプリケーションのうちユーザXにより選択された送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて、送客元アプリ10から送客先アプリ20への送客が成立したと判定して、例えばユーザ端末100を利用するユーザXに対して報酬を付与することができる。
(2)例えば、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)がユーザ端末100により実行されたこと又は実行可能な状態になったことにより上記報酬付与処理をしてもよい。
これにより、管理サーバ200は、送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になった(例えば、インストールされた)ことにより、送客元アプリ10から送客先アプリ20へ送客が成立したと判定して、例えばユーザ端末100利用するユーザXに対して報酬を付与することができる。
(3)リワード処理部245は、例えば、インストール通知取得部241(第1情報取得部の一例)が送客先アプリ20(第2アプリケーションの一例)に対応するインストール通知情報(第1情報の一例)を取得した場合に、送客先アプリ20がユーザ端末100により実行されたと判定してもよい。例えば、リワード処理部245は、ユーザ端末100に送客先アプリ20がインストールされて起動したことに応じて(すなわち、送客先アプリ20が実行されたことに応じて)ユーザ端末100からインストール通知情報を取得した場合に、送客先アプリ20がユーザ端末100により実行されたと判定してもよい。なお、リワード処理部245は、インストール通知情報に限らず第1情報を取得した場合に、送客先アプリ20がユーザ端末100により実行されたと判定してもよい。
また、リワード処理部245は、第1情報にかかわらず、送客先アプリ20がインストールされていることを示す情報を、例えば、ユーザ端末100にインストールされている送客元アプリ10以外の対象アプリケーションから、またはユーザ端末100のOSの機能により取得した場合に、送客先アプリ20がユーザ端末100により実行可能な状態になったと判定してもよい。
これにより、管理サーバ200は、ユーザ端末100から送信された送客先アプリ20のインストール通知情報を取得することにより、送客先アプリ20がユーザ端末100により実行されたと判定することができる。なお、インストール通知取得部241が取得したインストール通知情報またはインストール情報管理部222が管理するインストール情報に基づいてリワード処理部245が上述の判定をしてもよいし、インストール情報管理部222がインストール情報に基づいて判定して、当該判定した結果をリワード処理部245が取得してもよい。
(4)リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)がユーザ端末100により実行されたこと又は実行可能な状態になったこと、且つ送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬付与処理をしてもよい。例えば、リワード処理部245は、送客先アプリ20がユーザ端末100にインストールされ、且つ送客先アプリ20に設定された報酬付与条件が充足された場合、送客元アプリ10から送客先アプリ20への送客が成立したとして、上記報酬付与処理をしてもよい。
このように、管理サーバ200は、送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬が付与されることになるため、単に送客先アプリ20がインストールされただけ又は実行されただけ(例えば、単に起動しただけ)ではなく、送客先アプリ20の利用を条件に報酬を付与することができる。
(5)アプリケーション管理部221は、複数の対象アプリケーションの一部または全部に対して設定されたキャンペーン期間(第1の期間の一例)に関する情報を管理する。また、リスト通知部242(第2情報通知部の一例)は、上記キャンペーン期間が設定された対象アプリケーション(すなわち、特定アプリケーション)のうちユーザ端末100(端末装置の一例)により実行された対象アプリケーション(第1アプリケーションの一例、送客元アプリ10)に基づく要求を受けることにより、ユーザ端末100から上記キャンペーン期間を取得していない少なくとも一の上記キャンペーン期間が設定された対象アプリケーション(特定アプリケーション)を示す情報を含むアプリケーションリスト(第2情報の一例)をユーザ端末100に対して送信する。そして、リワード処理部245は、リスト通知部242がアプリケーションリストを送信したことに応じて、リスト通知部242から送信されたアプリケーションリストにより示される対象アプリケーションのうちの対象アプリケーション(第2アプリケーションの一例、送客先アプリ20)が上記キャンペーン期間内にユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて報酬付与処理をする。
これにより、管理サーバ200は、ユーザ端末100により実行された送客元アプリ10にキャンペーン期間が設定されている場合(すなわち、送客元アプリ10が特定アプリケーションである場合)、当該送客元アプリ10に基づく要求を受けることにより、キャンペーン期間が設定されている対象アプリケーションのうちのユーザ端末100に未インストールの少なくとも一の対象アプリケーションを示す情報をユーザ端末100に対して送信することができる。なお、管理サーバ200は、送客元アプリ10との間でキャンペーン期間が設定されている対象アプリケーションのうちのユーザ端末100に未インストールの少なくとも一の対象アプリケーションを示す情報をユーザ端末100に対して送信してもよい。
また、管理サーバ200は、ユーザ端末100に未インストールの少なくとも一の対象アプリケーションを示す情報うちの送客先アプリ20がキャンペーン期間内にユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて、送客元アプリ10から送客先アプリ20へ送客がキャンペーン期間内に成立したと判定して、例えばユーザ端末100利用するユーザXに対して報酬を付与することができる。
(6)例えば、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)がキャンペーン期間(第1の期間の一例)内にユーザ端末100により実行されたこと又は実行可能な状態になったことにより上記報酬付与処理をしてもよい。
これにより、管理サーバ200は、送客先アプリ20がキャンペーン期間内にユーザ端末100により実行された又は実行可能な状態になった(例えば、インストールされた)場合のみ、送客元アプリ10から送客先アプリ20への送客がキャンペーン期間内に成立したと判定して、例えばユーザ端末100利用するユーザXに対して報酬を付与することができる。
なお、リワード処理部245は、インストール通知取得部241(第1情報取得部の一例)が送客先アプリ20(第2アプリケーションの一例)に対応するインストール通知情報(第1情報の一例)を取得したタイミングがキャンペーン期間(第1の期間の一例)内であるか否かに応じて、送客先アプリ20がキャンペーン期間内又はキャンペーン期間外のいずれでユーザ端末100により実行されたかを判定してもよい。
例えば、リワード処理部245は、インストール通知取得部241(第1情報取得部の一例)が送客先アプリ20(第2アプリケーションの一例)に対応するインストール通知情報(第1情報の一例)を取得したタイミングがキャンペーン期間(第1の期間の一例)内である場合に、送客先アプリ20がキャンペーン期間内にユーザ端末100により実行されたと判定してもよい。
これにより、管理サーバ200は、ユーザ端末100から送信された送客先アプリ20のインストール通知情報の取得タイミングにより、送客先アプリ20がユーザ端末100により実行されたタイミングがキャンペーン期間内であるか否かを判定することができる。
(7)リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)がキャンペーン期間(第1の期間の一例)内にユーザ端末100により実行されたこと又は実行可能な状態になったこと、且つ送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬付与処理をしてもよい。
このように、管理サーバ200は、送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬が付与されることになるため、単に送客先アプリ20がインストールされただけ又は実行されただけ(例えば、単に起動しただけ)ではなく、送客先アプリ20の利用を条件に報酬を付与することができる。
(8)例えば、アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションのうちの複数の特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)に関する情報を管理しているとする。インストール通知取得部241(第1情報取得部の一例)は、複数の対象アプリケーションのうちのいずれかの対象アプリケーションがユーザ端末100(端末装置の一例)により実行された場合、当該対象アプリケーションがユーザ端末100により実行されたことに応じてユーザ端末100から送信されたインストール通知情報(第1情報の一例)を取得する。また、リスト通知部242(第2情報通知部の一例)は、複数の対象アプリケーションのうちユーザ端末100により実行された対象アプリケーション(第1アプリケーション、送客元アプリ10)に基づく要求を受けることにより、ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例)をユーザ端末100に対して送信する。
そして、リワード処理部245は、リスト通知部242がアプリケーションリストを送信したことに応じて、リスト通知部242から送信されたアプリケーションリストにより示される対象アプリケーションのうちの対象アプリケーション(第2アプリケーションの一例、送客先アプリ20)に対して上記キャンペーン期間が設定されている場合には、送客先アプリ20(第2アプリケーションの一例)が上記キャンペーン期間内にユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて報酬付与処理をする。
一方、リワード処理部245は、リスト通知部242から送信されたアプリケーションリストにより示される対象アプリケーションのうちから選択された対象アプリケーション(第2アプリケーションの一例、送客先アプリ20)に対して上記キャンペーン期間が設定されていない場合には、送客先アプリ20(第2アプリケーションの一例)がユーザ端末100により実行されたこと又は実行可能な状態になったことに基づいて報酬付与処理をする。
これにより、管理サーバ200は、送客先アプリ20にキャンペーン期間が設定されていない場合には、期間によらずに送客元アプリ10がユーザ端末100により実行された又は実行可能な状態となった場合(例えば、インストールされた場合)に報酬付与処理(例えば、通常リワード処理)を行い、送客先アプリ20にキャンペーン期間が設定されている場合には、送客元アプリ10がキャンペーン期間内にのみユーザ端末100により実行された又は実行可能な状態になった場合(例えば、インストールされた場合)に報酬付与処理(例えば、CPリワード処理)を行うことができる。
なお、送客先アプリ20にキャンペーン期間が設定されていない場合の報酬付与処理(例えば、通常リワード処理)と、送客先アプリ20にキャンペーン期間が設定されている場合の報酬付与処理(例えば、CPリワード処理)とにおける、報酬付与の条件や報酬の内容は同じであってもよいし異なってもよい。
また、送客先アプリ20にキャンペーン期間が設定されている場合とは、例えば、第1実施形態で説明したように、送客元アプリ10と送客先アプリ20との間でキャンペーン期間が設定されている場合があるが、これに限られるものではない。例えば、送客元の機能に特化した専用のアプリケーションから送客先アプリ20へ送客するような場合には、当該専用のアプリケーションはキャンペーン期間が設定されるものではない。この場合、送客先アプリ20にキャンペーン期間が設定されている場合とは、送客元とは関係なく、送客先アプリ20に対してキャンペーン期間が設定されている場合としてもよい。なお、送客元の機能に特化した専用のアプリケーションから送客先アプリ20へ送客する構成例については、第9の実施形態で説明する。
また、相互送客システム500は、送客先アプリ20にキャンペーン期間が設定されている場合の報酬付与処理(例えば、CPリワード処理)のみをする構成としてもよいし、キャンペーン期間が設定されない場合の報酬付与処理(例えば、通常リワード処理)のみをする構成としてもよいし、両方の報酬付与処理をする構成としてもよい。
(9)リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されている場合には、送客先アプリ20がキャンペーン期間内にユーザ端末100により実行されたこと又は実行可能な状態になったこと、且つ送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて、上述の報酬付与処理としてCPリワード処理(第1の報酬付与処理の一例)をする。
一方、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されていない場合には、送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になったことにより、上述の報酬付与処理として通常リワード処理(第2の報酬付与処理の一例)をする。
このように、管理サーバ200は、送客先アプリ20に対してキャンペーン期間が設定されている場合のCPリワード処理では、単に送客先アプリ20が実行されただけ又は実行可能な状態になっただけ(例えば、単に起動しただけ又はインストールされただけで起動していない状態)ではなく、送客先アプリ20の利用を条件に報酬を付与することができる。一方、管理サーバ200は、送客先アプリ20に対してキャンペーン期間が設定されていない通常リワード処理の場合には、送客先アプリ20がインストールされただけ又は実行されただけ(例えば、単に起動しただけ)で報酬を付与することができる。
(10)リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)にキャンペーン期間(第1の期間の一例)が設定されている場合であっても、当該送客先アプリ20がキャンペーン期間外に実行された又は実行可能な状態になったときは、第2の報酬付与処理をする。
これによれば、送客先アプリ20にキャンペーン期間が設定されていても、当該キャンペーン期間外に実行された又は実行可能な状態になった場合には、通常リワードとすることができる。即ち、送客先アプリ20にキャンペーン期間が設定されている場合、送客先アプリ20が実行された又は実行可能な状態になったタイミングが、キャンペーン期間内であればCPリワード処理、それ以外の期間であれば通常リワード処理とすることができる。
なお、CPリワード処理において、送客先アプリ20がキャンペーン期間内にユーザ端末100により実行されたこと又は実行可能な状態になったことにより報酬を付与してもよい。すなわち、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されている場合には、送客先アプリ20がキャンペーン期間内に前記端末装置により実行されたこと又は実行可能な状態になったことにより、上述の報酬付与処理としてCPリワード処理(第1の報酬付与処理の一例)をしてもよい。
また、通常リワード処理において、送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になったこと、且つ送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬を付与してもよい。
すなわち、リワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されていない場合には、送客先アプリ20がユーザ端末100により実行されたこと又は実行可能な状態になったこと、且つ送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて、上述の報酬付与処理として通常リワード処理(第2の報酬付与処理の一例)をしてもよい。
(11)本実施形態の相互送客システム500において、ユーザ端末100(端末装置の一例)は、上述の管理サーバ200(管理装置の一例)と通信可能な端末装置である。ここで、上述の管理サーバ200は、複数の対象アプリケーションのうち、送客元となる対象アプリケーションから送客先となる対象アプリケーションへの送客を示す送客情報を管理し、前記送客情報に基づいて前記送客先の対象アプリケーションがインストールされたことを管理する。例えば、管理サーバ200は、複数の対象アプリケーションのうち、送客元となる対象アプリケーションから送客先となる対象アプリケーションへの送客を示す送客情報として、送客元となる対象アプリケーションを示す送客元情報と送客先となる対象アプリケーションを示す送客先情報とを関連付けて管理する。
ユーザ端末100(SDK11)は、インストール通知部103と、リスト要求部104(要求部の一例)と、送客情報通知部106とを備えている。
インストール通知部103は、ユーザ端末100(自端末装置の一例)にインストールされた一の対象アプリケーションにおいて、当該対象アプリケーションがインストールされたことを示すインストール通知情報(第1情報の一例)を管理サーバ200に対して送信する。リスト要求部104は、一の対象アプリケーション(例えば、送客元アプリ10、第1アプリケーション)における第1の操作に基づいて、複数の対象アプリケーションのうちの少なくとも一つの対象アプリケーションを示す情報を管理サーバ200に対して要求する際に、当該一の対象アプリケーションを示す送客元情報(例えば、送客元アプリ10のアプリID)を管理サーバ200に対して送信する。送客情報通知部106は、管理サーバ200から取得した上記少なくとも一つの対象アプリケーションを示す情報により示される対象アプリケーションのうちから、第2の操作に基づいて選択された対象アプリケーションを示す送客先情報(例えば、送客先アプリ20のアプリID、第2アプリケーションのアプリID)を、管理サーバ200に対して送信する。例えば、送客情報通知部106は、第2の操作に基づいて選択された対象アプリケーションを示す送客先情報を、送客情報として、管理サーバ200に対して送信する。
このように、本実施形態の相互送客システム500では、相互送客システム500に対応する対象アプリケーションに含まれる複数の特定アプリケーションを管理する管理サーバ200と、この管理サーバ200と通信可能なユーザ端末100とにより、ユーザ端末100において、一の対象アプリケーション(例えば、送客元アプリ10)から他の対象アプリケーション(例えば、送客先アプリ20)がインストールされるように、他の対象アプリケーション(例えば、送客先アプリ20)への送客を行うことができる。
したがって、本実施形態によれば、アプリケーション間の送客の利便性を向上させることができる。
ここで、送客情報とは、送客元アプリ10から送客先アプリ20への送客を示す情報である。典型的には、送客情報とは、ユーザ端末100により実行された送客元アプリ10(第1アプリケーションの一例)に基づく要求を受けることにより管理サーバ200のリスト通知部242(第2情報通知部の一例)が送信したアプリケーションリスト(第2情報の一例)に応じて、送信したアプリケーションリストにより示される対象アプリケーションのうちの送客先アプリ20(第2アプリケーションの一例)を示す情報である。例えば、送客先アプリ20のアプリIDを送客情報としてもよい。また、送客元アプリ10のアプリID(送客元情報の一例)と関連付けて、送客先アプリ20のアプリID(送客先情報の一例)を送客情報としてもよい。また、ユーザ端末100に対応するリワードユーザIDと関連付けて、送客先アプリ20のアプリIDを送客情報としてもよい。
例えば、送客情報通知部106は、ユーザ端末100(自端末装置の一例)に対応するリワードユーザID(固有識別情報の一例)と関連付けて、上記送客先情報を管理サーバ200に対して送信してもよい。
これにより、管理サーバ200は、送客情報を送信したユーザ端末100を特定することができる。
(12)また、管理サーバ200は、複数の対象アプリケーションの一部又は全部の対象アプリケーションである特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)に関する情報を管理してもよい。つまり、複数の対象アプリケーションの全てにキャンペーン期間が設定されてもよいし、複数の対象アプリケーションの一部にキャンペーン期間が設定されてもよい。
ユーザ端末100(SDK11)のリスト要求部104(要求部の一例)は、ユーザ端末100(自端末装置の一例)にインストールされた一の特定アプリケーション(例えば、送客元アプリ10)における第1の操作に基づいて、特定アプリケーションのうちの少なくとも一つの特定アプリケーションを示す情報を管理サーバ200に対して要求する際に、上記一の特定アプリケーションを示す送客元情報(例えば、送客元アプリ10のアプリID)を管理サーバ200に対して送信してもよい。また、送客情報通知部106は、管理サーバ200のうちから取得した上記少なくとも一つの特定アプリケーションを示す情報により示される特定アプリケーションのうちから、上記キャンペーン期間において第2の操作に基づいて選択された特定アプリケーションを示す送客先情報(例えば、送客先アプリ20のアプリID)を、管理サーバ200に対して送信してもよい。
このように、本実施形態の相互送客システム500では、相互送客システム500に対応する対象アプリケーションの一部又は全部の対象アプリケーションである特定アプリケーションに対して設定されたキャンペーン期間に関する情報を管理する管理サーバ200と、この管理サーバ200と通信可能なユーザ端末100とにより、ユーザ端末100において、一の特定アプリケーション(送客元アプリ10の一例)から他の特定アプリケーション(送客先アプリ20の一例)がインストールされるように、他の特定アプリケーション(送客先アプリ20の一例)への送客を行うことができる。
(13)上述のインストール通知部103の機能と、リスト要求部104(要求部の一例)の機能と、送客情報通知部106の機能とが、複数の対象アプリケーションのそれぞれに組み込まれたSDK11(ソフトウェアの一例)に基づいて実行される。例えば、送客元アプリ10に組み込まれたSDK11Aが、インストール通知部103の機能と、リスト要求部104の機能と、送客情報通知部106の機能とを実行する。なお、上述の報酬付与通知部107の機能が複数の対象アプリケーションのそれぞれに組み込まれたSDK11に基づいて実行されてもよい。例えば、送客先アプリ20に組み込まれたSDK11Bが、インストール通知部103の機能と、報酬付与通知部107の機能とを実行してもよい。なお、SDK11AとSDK11Bとはそれぞれ同様の機能を有して、送客元アプリ10に組み込まれているか、または送客先アプリ20に組み込まれているかに応じて対応する機能を実行してもよい。
これにより、アプリケーションにSDK11を組み込むことにより、本実施形態の相互送客システム500に対応した対象アプリケーションとすることができる。よって、例えば、既存のアプリケーションやこれから開発するアプリケーションにおいても、SDK11を組み込み可能なようにアプリケーションのプログラムを更新または小変更すれば、当該アプリケーションを相互送客システム500に対応した対象アプリケーションとすることができる。
(14)ユーザ端末100(SDK11)の報酬付与通知部107は、上記送客先情報により示される送客先アプリ20(送客先として選択された対象アプリケーション又は特定アプリケーションの一例)に設定された報酬付与条件を充足した場合に、当該送客先アプリ20を示す送客先情報(例えば、送客先アプリ20のアプリID)、及びユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)と関連付けて、上述の報酬付与通知情報を管理サーバ200に対して送信する。
なお、上記報酬付与通知情報には、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、及び送客先アプリ20(第2アプリケーションの一例)におけるアプリユーザID(ユーザ情報の一例)が関連付けられてもよい。そして、ユーザ端末100(SDK11)の報酬付与通知部107は、ユーザ端末100に対応付けられたリワードユーザID、及び送客先アプリ20におけるアプリユーザIDが関連付けられた報酬付与通知情報を管理サーバ200に対して送信してもよい。
なお、報酬付与通知部107は、上述の報酬付与通知情報を直接的に管理サーバ200に対して送信してもよいし、アプリサーバ300(例えば、送客先アプリ20に対応するアプリサーバ320)を介して間接的に管理サーバ200に対して送信してもよい。また、ユーザ端末100は、報酬付与通知部107を備えていない構成としてもよい、その場合、アプリサーバ300(例えば、送客先アプリ20に対応するアプリサーバ320)が、キャンペーンに対応して予め設定された報酬付与条件が充足されたか否かを判定し、報酬付与条件が充足されたと判定した場合、報酬付与通知情報を管理サーバ200に対して送信してもよい。
そして、管理サーバ200のリワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に設定された報酬付与条件が充足されたことに基づいて、当該報酬付与条件が充足されたことを示す報酬付与通知情報を、ユーザ端末100により実行された送客先アプリ20又は送客先アプリ20に対応するアプリサーバ320(サーバ装置の一例)から取得した場合に、当該取得した報酬付与通知情報に基づく報酬付与処理をする。
このように、管理サーバ200は、ユーザ端末100において送客先アプリ20に設定された報酬付与条件が充足された場合には、報酬付与通知情報を取得することにより、報酬付与処理を行うことができる。
例えば、管理サーバ200のリワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に設定された報酬付与条件が充足されたことに基づいて、送客元アプリ10におけるアプリユーザID(第1アプリケーションのユーザ情報の一例)が関連付けられた報酬付与情報を、ユーザ端末100により実行された送客元アプリ10又は送客元アプリ10に対応するアプリサーバ310(サーバ装置の一例)に送信する。
ここで、管理サーバ200は、対象アプリケーションのユーザ情報を取得するアプリユーザ情報取得部を備えている。例えば、アプリユーザ情報取得部は、ユーザ端末100に対応するリワードユーザID(固有識別情報の一例)と関連付けて対象アプリケーションにおけるアプリユーザID(第1アプリケーションのユーザ情報の一例)を取得する。なお、インストール通知取得部241を、アプリユーザ情報取得部として機能させるようにしてもよい。すなわち、インストール通知情報にインストール通知情報を送信した対象アプリケーションにおけるアプリユーザIDを含めるようにしてもよい。このように、アプリユーザ情報取得部の機能を他の機能に含ませるようにしてもよい。
これにより、管理サーバ200は、ユーザ端末100において、送客先アプリ20に設定された報酬付与条件が充足された場合、ユーザ端末100を利用するユーザ(ユーザX)に対して、送客元アプリ10における報酬が付与されるようにすることができる。
なお、報酬付与処理として、送客元アプリ10における報酬がユーザに付与される処理の例を説明したが、送客元アプリ10に代えて送客先アプリ20における報酬がユーザに付与される処理としてもよい。この場合、管理サーバ200は、例えば、送客情報記憶部237に記憶されている送客情報に含まれる送客先アプリID(ApIDto)と、対象アプリ情報記憶部231に記憶されている対象アプリケーション情報に含まれる通知先URL(NoticeURL)とに基づいて、送客先アプリ20に対応するアプリサーバ320に報酬付与情報を送信してもよい。なお、報酬付与処理として、送客元アプリ10における報酬と送客先アプリ20における報酬との両方がユーザに付与される処理としてもよいし、複数の対象アプリケーションにおいて共通で利用できる報酬がユーザに付与される処理としてもよい。
また、報酬付与処理として、対象アプリケーションとは異なる他のアプリケーションで利用できる報酬、またはウェブサイトで利用できる報酬(例えば、通信網を介した通信により商品やサービスを売買するときに利用するできる通貨やポイント等)がユーザに付与される処理としてもよい。この場合、管理サーバ200は、例えば、ユーザに付与された報酬に関する情報を一旦管理し、その後所定の手続きが行われることで、他のアプリケーションで利用できる報酬、またはウェブサイトで利用できる報酬となるように、当該管理している報酬に関する情報を他のアプリケーションに対応するサーバ装置、またはウェブサイトに対応するサーバ装置に送信してもよい。
(15)管理サーバ200の送客情報取得部243と、送客情報管理部223と、を備えている。送客情報取得部243は、送客先アプリ20(第2アプリケーション)への送客を示す送客情報を取得する。送客情報管理部223は、送客情報取得部243が取得した送客情報を管理する。リワード処理部245は、送客先アプリ20がユーザ端末100により実行された又は実行可能な状態になった場合に、送客先アプリ20に対応する送客情報が送客情報管理部223で管理されていることを条件として、上述の報酬付与処理をする。
これにより、相互送客システム500は、本システムによって、送客先アプリ20がユーザ端末100により実行された又は実行可能な状態になった場合には、送客情報があるため報酬付与処理を行う対象とし、本システムによらずに対象アプリケーションがインストールされた場合には、送客情報の記録がないため報酬付与処理を行う対象としないようにすることができる。
また、管理サーバ200のリワード処理部245は、送客先アプリ20に設定された報酬付与条件が充足された場合に、送客先アプリ20に対応する送客情報が送客情報管理部223で管理されていることを条件として、上述の報酬付与処理をしてもよい。
これにより、相互送客システム500は、本システムによって、送客先アプリ20がユーザ端末100により実行されて送客先アプリ20に設定された報酬付与条件が充足された場合には、送客情報があるため報酬付与処理を行う対象とし、本システムによらずに対象アプリケーションがインストールされた場合には、送客情報の記録がないため報酬付与処理を行う対象としないようにすることができる。
例えば、送客情報取得部243は、上述の送客情報として、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、送客元アプリ10(第1アプリケーションの一例)のアプリID(識別情報の一例)、及び送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)と関連付けて取得する。そして、送客情報管理部223は、送客情報に関連付けられたリワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDを関連付けて送客情報の記録として管理する。
これにより、管理サーバ200は、送客先アプリ20への送客が行われたユーザ端末100と送客元アプリ10とを特定することができるので、当該ユーザ端末100を利用するユーザに対して送客元アプリ10における報酬が付与される報酬付与処理を行うことができる。
なお、送客情報取得部243が取得する送客情報には、ユーザ端末100に対応付けられたリワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDが含まれ、送客情報管理部223は、送客情報に含まれるリワードユーザID、送客元アプリ10のアプリID、及び送客先アプリ20のアプリIDを関連付けて送客情報の記録として管理してもよい。また、この送客情報には、送客先アプリ20のアプリIDが少なくとも含まれ、送客情報管理部223は、当該送客先アプリ20のアプリID、または当該送客情報に関連付けられて他の情報として取得したリワードユーザIDまたは送客元アプリ10のアプリIDを、当該送客先アプリ20のアプリIDに関連付けて送客情報の記録として管理してもよい。
なお、送客情報管理部223は、送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)を、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)と関連付けて送客情報の記録として管理してもよい。
これにより、管理サーバ200は、送客先アプリ20への送客が行われたユーザ端末100を少なくとも特定することができるので、当該ユーザ端末100を利用するユーザを報酬の付与対象とすることができる。例えば、送客元アプリ10における報酬以外の報酬の付与の場合には、送客元アプリ10のアプリIDを送客情報の記録として関連付けて管理しなくともよい。
また、送客情報管理部223は、送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)を、送客元アプリ10(第1アプリケーションの一例)のアプリID(識別情報の一例)と関連付けて送客情報の記録として管理してもよい。
これにより、管理サーバ200は、送客先アプリ20への送客が行われたときの送客元アプリ10を特定することができるので、例えば、送客元アプリ10における報酬が付与される報酬付与処理を行うことができる。例えば、送客元アプリ10における報酬を、送客が行われたユーザ端末100に関わらない全てのユーザ又は特定のユーザに対して付与される場合には、リワードユーザIDを送客情報の記録として関連付けて管理しなくともよい。
(16)ユーザ端末100(端末装置の一例)は、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)で特定される。このリワードユーザIDは、複数の対象アプリケーションのうちの最初にユーザ端末100にインストールされた対象アプリケーションが起動したことを条件として取得され、ユーザ端末100により実行されたいずれの対象アプリケーションからも参照可能なようにユーザ端末100に記憶されている。
例えば、ユーザ端末100(SDK11)は、固有識別情報取得部102を備えている。固有識別情報取得部102は、ユーザ端末100にインストールされた一の対象アプリケーションが複数の対象アプリケーションのうちの最初にユーザ端末100にインストールされた対象アプリケーションである場合、リワードユーザID(固有識別情報の一例)を取得し、取得したリワードユーザIDを、ユーザ端末100にインストールされる他の対象アプリケーションからも参照可能なように端末記憶部140(記憶部の一例)に記憶させる。
これにより、相互送客システム500によれば、ユーザ端末100は、初めて対象アプリケーションがインストールされたときに自動でリワードユーザIDを取得し、取得したリワードユーザIDをその後にインストールされる対象アプリケーションでも共通に利用可能とする。そのため、ユーザに特別な操作をさせることなくリワードユーザIDが取得されて本システムを利用可能とすることができる。
(17)具体的には、固有識別情報取得部102は、リワードユーザID(固有識別情報の一例)が端末記憶部140(記憶部の一例)に記憶されているか否かを判定し、リワードユーザIDが端末記憶部140に記憶されていないと判定した場合にリワードユーザIDを取得する。
これにより、ユーザ端末100は、初めて対象アプリケーションがインストールされて起動したときにリワードユーザIDを取得することができる。
なお、固有識別情報としては、相互送客システム500aで独自に生成されたリワードユーザID以外にも、ユーザ端末100ごとに一意に割り振られるUDID(Unique Device Identifier)、IMEI(International Mobile Equipment Identity)またはIMSI(International Mobile Subscriber Identity)等の識別番号を利用してもよい。またこれら識別番号をハッシュ化又は暗号化して利用してもよい。つまり、相互送客システム500の内部もしくは外部において生成または設定され、ユーザ端末100で一意となる識別情報であればよい。また、固有識別情報として、ユーザ端末100のOSの機能としてユーザ端末100毎に対応付けられた互いに異なる情報であって、各アプリケーションによって使用することが許可されている情報(例えば、広告識別子(Advertising Identifier))を利用してもよい。また、固有識別情報として、ユーザ端末100毎に対応づけられたIDをユーザ端末100から取得することをせずに、ユーザ端末100から、例えば、画面解像度・幅、タイムゾーン時差等の100種類程度のパラメータを管理サーバ200が取得して、所定のアルゴリズムを用いて生成したIDを用いてもよい。この場合、固有識別情報をユーザ端末100に記憶しておかなくてもよい。
(18)ユーザ端末100(SDK11)のインストール通知部103は、ユーザ端末100にインストールされた対象アプリケーションのアプリID(識別情報の一例)、及びユーザ端末100(自端末装置の一例)に対応するリワードユーザID(固有識別情報の一例)と関連付けて、インストール通知情報(第1情報の一例)を管理サーバ200に対して送信する。
管理サーバ200のインストール通知取得部241(第1情報取得部の一例)は、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、及びインストール通知情報(第1情報の一例)を送信した対象アプリケーションのアプリID(識別情報の一例)と関連付けてンストール通知情報を取得する。また、管理サーバ200は、インストール情報管理部222(第1情報管理部の一例)を備えている。インストール情報管理部222は、インストール通知情報に関連付けられたリワードユーザID、及び上記対象アプリケーションのアプリIDを関連付けたインストール情報(管理情報の一例)を管理する。
これにより、ユーザ端末100に対象アプリケーションがインストールされて起動した場合(即ち、ユーザ端末100において対象アプリケーションが実行された場合)、管理サーバ200は、当該対象アプリケーションのアプリIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。よって、管理サーバ200は、ユーザ端末100毎にインストールされている(例えば、インストールされて起動したことがある)対象アプリケーションを特定することができる。
なお、インストール通知情報(第1情報の一例)には、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)、及びインストール通知情報(第1情報の一例)を送信した対象アプリケーションのアプリIDの両方が含まれていてもよいし、一方が含まれていてもよい。リワードユーザIDとアプリIDとのうちの一方がインストール通知情報に含まれている場合には、他方が当該一方に関連付けられてインストール通知情報以外の情報としてユーザ端末100から管理サーバ200に送信されてもよい。また、上述したようにインストール通知情報を例として説明した第1情報は、例えば単なるフラグ情報であってもよい。この場合には、リワードユーザIDとアプリIDとが当該フラグ情報に関連付けられてインストール通知情報以外の情報としてユーザ端末100から管理サーバ200に送信されてもよい。
(19)また、本実施形態の管理サーバ200は、対象アプリケーションのユーザ情報を取得するアプリユーザ情報取得部を備えている。例えば、アプリユーザ情報取得部は、ユーザ端末100に対応するリワードユーザID(固有識別情報の一例)と関連付けて対象アプリケーションにおけるアプリユーザID(第1アプリケーションのユーザ情報の一例)を取得する。なお、インストール通知取得部241を、アプリユーザ情報取得部として機能させるようにしてもよい。すなわち、インストール通知情報にインストール通知情報を送信した対象アプリケーションにおけるアプリユーザIDを含めるようにしてもよい。このように、アプリユーザ情報取得部の機能を他の機能に含ませるようにしてもよい。
ユーザ端末100(SDK11)は、ユーザ端末100にインストールされた対象アプリケーションにおけるアプリユーザID(対象アプリケーションにおけるユーザ情報の一例)をユーザ端末100に対応するリワードユーザID(固有識別情報の一例)と関連付けて管理サーバ200に対して送信するアプリユーザ情報通知部を備えている。なお、インストール通知部103を、アプリユーザ情報通知部として機能させるようにしてもよい。すなわち、インストール通知情報にインストール通知情報を送信した対象アプリケーションにおけるアプリユーザIDを含めるようにしてもよい。このように、アプリユーザ情報通知部の機能を他の機能に含ませるようにしてもよい。
そして、管理サーバ200のインストール情報管理部222(第1情報管理部の一例)は、インストール情報(管理情報の一例)に、アプリユーザ情報取得部が取得した対象アプリケーションにおけるアプリユーザID(ユーザ情報の一例)を関連付けて管理する。例えば、インストール情報管理部222は、アプリユーザ情報取得部が取得した対象アプリケーションにおけるアプリユーザIDを、インストール情報において関連付けられている、当該対象アプリケーションのアプリID又はユーザ端末100に対応するリワードユーザIDと関連付けて管理する。
これにより、ユーザ端末100に対象アプリケーションがインストールされた場合、管理サーバ200は、インストールされた対象アプリケーションのアプリIDと、インストールされた対象アプリケーションにおけるアプリユーザIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。すなわち、管理サーバ200は、ユーザ端末100にインストールされている対象アプリケーション毎のアプリユーザIDをリワードユーザIDに関連付けて管理することができる。
(20)管理サーバ200のアプリケーション管理部221(第1報酬情報管理部の一例)は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されている場合に報酬付与処理として行うCPリワード処理(第1の報酬付与処理の一例)により付与されるCPリワード(第1の報酬の一例)を示す情報の掲載場所のリンク先を示す情報をキャンペーン参加アプリ情報記憶部235に記憶させて管理する。また、アプリケーション管理部221(第2報酬情報管理部の一例)は、複数の対象アプリケーションのそれぞれと通常リワード処理(第2の報酬付与処理の一例)により付与される予め設定された通常リワードを示す情報とを対応付けた通常リワード情報を通常リワード情報記憶部232に記憶させて管理する。
そして、管理サーバ200のリスト通知部は、複数の対象アプリケーションのうちの送客元アプリ10(第1アプリケーションの一例)との間でキャンペーンが設定されていない対象アプリケーションには通常リワードを示す情報が対応付けられて表示されるように、通常リワードを示す情報を含むアプリケーションリストを、ユーザ端末100に対して送信する。一方、リスト通知部は、複数の対象アプリケーションのうちの送客元アプリ10との間でキャンペーンが設定されている対象アプリケーションには上述のリンク先を示す情報が対応付けられて表示されるように、当該リンク先を示す情報を含むアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、ユーザ端末100は、管理サーバ200から取得したアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示する際に、キャンペーン期間が設定されていない対象アプリケーションには通常リワードにより付与される報酬に関する情報を表示し、キャンペーンが設定されている特定アプリケーションにはそのキャンペーンのCPリワード(報酬の一例)により付与される報酬に関する情報の掲載場所のリンク先を示す情報を対応付けて表示することができる。
(21)管理サーバ200のインストール誘導指示部244(画面情報通知部の一例)は、送客情報取得部243が取得した送客情報に関連付けられた送客先アプリ20(第2アプリケーションの一例)のアプリID(識別情報の一例)に基づいて、送客先アプリ20をインストール可能な画面をユーザ端末100に表示させるための情報を、ユーザ端末100に送信する。ここで、送客先アプリ20をインストール可能な画面をユーザ端末100に表示させるための情報とは、例えば、送客先アプリ20をインストール可能(ダウンロード可能)なストアサイトのストアページを表示するアプリケーションであるストア30を起動させる指示情報であって、当該対象アプリケーションをダウンロード可能な販売サイト(アプリストア400)のページのURL(ストアURL)を含む情報である。
これにより、ユーザ端末100は、送客元アプリ10から送客される送客先アプリ20が選択された場合に、選択された送客先アプリ20をインストール可能なストアページをユーザに特別な操作をさせることなく自動で表示することができる。
(22)キャンペーン期間(第1の期間の一例)が設定された対象アプリケーション(即ち、複数の特定アプリケーション)のうちの一部又は全部に対して、このキャンペーン期間と重複しない別期間が設定されたとする。この場合には、管理サーバ200のリワード処理部245は、ユーザ端末100において送客先アプリ20(第2アプリケーションの一例)に設定されたキャンペーン期間に対応したCPリワード処理(報酬付与処理の一例)を実施済みである場合には、上述の別期間に対応したCPリワード処理(報酬付与処理の一例)をしない。
これにより、相互送客システム500は、同じ送客先アプリ20に対するCPリワード処理において、あるキャンペーンでCPリワードによる報酬が付与されたユーザに対しては、別のキャンペーンでのCPリワードによる報酬が再度付与されないようにすることができる。即ち、CPリワードによる報酬付与が行われた送客先アプリ20は、別のCPリワードの対象とはならない。
(23)管理サーバ200のリワード処理部245は、送客先アプリ20(第2アプリケーションの一例)に対してキャンペーン期間(第1の期間の一例)が設定されている場合に報酬付与処理として行うCPリワード処理(第1の報酬付与処理の一例)、及びキャンペーン期間が設定されていない場合に報酬付与処理として行う通常リワード処理(第2の報酬付与処理の一例)のうちの少なくとも一方をユーザ端末100において実施済みである場合には、他方の報酬付与処理をしない。
例えば、管理サーバ200は、通常リワード処理またはCPリワード処理が行われた送客先アプリ20のリワード成立情報に含まれる成立状態が既に「1」(成立)に更新されている。そのため、管理サーバ200は、この送客先アプリ20から再び報酬付与通知情報を取得しても、成立状態を「1」(成立)に更新可能なリワード成立情報がなく、当該報酬付与通知情報を無効なものとして扱うことができる。
これにより、相互送客システム500は、同じ送客先アプリ20に対して、通常リワードによる報酬と、CPリワードによる報酬とが2重に付与されないようにすることができる。即ち、通常リワードによる報酬付与が行われた送客先アプリ20は、CPリワードの対象とはならない。また、CPリワードによる報酬付与が行われた送客先アプリ20は、通常リワードの対象とはならない。
(24)管理サーバ200のアプリケーション管理部221は、複数の対象アプリケーションの一部又は全部の対象アプリケーションである特定アプリケーションに対して設定されたキャンペーン期間(第1の期間の一例)に関する情報と、当該キャンペーン期間の一部または全部を含みキャンペーン期間の最後より後に終了する報酬付与期間(第2の期間の一例)の少なくとも終了期限に関する情報とを管理している。
リワード処理部245は、報酬付与期間内に、送客先アプリ20に設定された報酬付与条件が充足されたことに基づいて報酬付与処理をする。
例えば、ユーザ端末100(SDK11)の報酬付与通知部107は、送客先アプリ20(第2アプリケーションの一例)に設定された報酬付与条件が充足された場合に、当該報酬付与条件が充足されたことを示す報酬付与通知情報を管理サーバ200に対して送信する。
そして、管理サーバ200のリワード処理部245は、報酬付与期間内に送客先アプリ20(第2アプリケーションの一例)から報酬付与条件が充足されたことを示す報酬付与通知情報を取得した場合に、当該取得した報酬付与通知情報に基づく報酬付与処理(例えば、CPリワード処理)をする。
これにより、相互送客システム500は、キャンペーン期間の最後の直前に送客先アプリ20がユーザ端末100にインストールされた場合であっても、CPリワードの報酬が付与される成果地点までの到達をユーザが試みる期間をユーザに与えることができる。また、管理サーバ200は、報酬付与期間内に、ユーザ端末100から報酬付与通知情報を取得した場合に、報酬が付与されるようにすることができる。
(25)送客先アプリ20(第2アプリケーションの一例)に対応して報酬付与条件は複数設けられていてもよい。ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、報酬付与通知情報をそれぞれ管理サーバ200に対して送信する。管理サーバ200のリワード処理部245は、複数の報酬付与条件のいずれかが充足されたことに基づいて、報酬付与処理(例えば、通常リワード処理又はCPリワード処理)をする。
これにより、相互送客システム500は、送客先アプリ20対応する複数の報酬付与条件のそれぞれが充足されたことに応じて、報酬付与処理をすることができる。つまり、ユーザはキャンペーン期間(報酬付与期間の一例)に設定された複数の報酬をできるだけ多く獲得するために送客先アプリ20を継続して利用することになる。そのため送客先アプリ20の利用を高めることができる。
(26)送客先アプリ20(第2アプリケーションの一例)に対応して報酬付与条件は複数設けられている場合、管理サーバ200のリワード処理部245は、複数の報酬付与条件のいずれかが充足されたことに基づいて送客先アプリ20から報酬付与期間(第2の期間の一例)内に報酬付与通知情報を取得した場合に、取得した報酬付与通知情報に基づく報酬付与処理(例えば、CPリワード処理)をする。
これにより、管理サーバ200は、送客先アプリ20に複数の報酬付与条件が設定されている場合も、複数の報酬付与条件のそれぞれが充足されたタイミング(管理サーバ200が報酬付与通知情報を取得したタイミング)が報酬付与期間内である場合にのみ報酬を付与することができる。
(27)複数の報酬付与条件のそれぞれは、送客先アプリ20(第2アプリケーションの一例)による処理において設定された複数の成果地点のそれぞれに到達するタイミングである。ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、複数の成果地点のうちの到達した成果地点を示す成果地点ID(成果地点情報の一例)が関連付けられた報酬付与通知情報をそれぞれ管理サーバ200に対して送信する。そして、管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20から複数の成果地点のうちの到達した成果地点を示す成果地点ID(成果地点情報)が関連付けられた報酬付与通知情報を取得するとともに、当該取得した成果地点ID(成果地点情報)が関連付けられた報酬付与情報を、ユーザ端末100により実行された送客元アプリ10(第1アプリケーションの一例)、又は送客元アプリ10に対応するアプリサーバ310(サーバ装置の一例)に送信する。
つまり、管理サーバ200は、ユーザ端末100において、送客先アプリ20の複数の成果地点のそれぞれに到達したことに応じて、それぞれ到達した成果地点を示す成果地点IDを、送客元アプリ10に対応するアプリサーバ310に送信する。
これにより、相互送客システム500は、送客先アプリ20に設定された複数の成果地点のそれぞれが到達されたことに応じて、到達した成果地点のそれぞれに対応して報酬が付与されるようにすることができる。
(28)ユーザ端末100(SDK11)の報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、複数の成果地点のいずれかに到達したことを示す到達情報が関連付けられた報酬付与通知情報を管理サーバ200に対して送信してもよい。そして、管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20(第2アプリケーションの一例)から複数の成果地点のいずれかに到達したことを示す到達情報が関連付けられた報酬付与通知情報を取得するとともに、当該取得する毎に報酬付与通知情報の取得回数に応じた報酬付与情報を、ユーザ端末100により実行された送客元アプリ10(第1アプリケーションの一例)、又は送客元アプリ10に対応するアプリサーバ310(サーバ装置の一例)に送信してもよい。
つまり、管理サーバ200は、複数の成果地点のいずれかに到達したときに送客元アプリ10に対応するアプリサーバ310に送信する報酬付与情報には、成果地点IDが関連付けられなくとも、報酬付与通知情報の取得回数を示す情報(即ち、成果地点に到達した回数であって、何番目の成果地点であるかを示す情報)が関連付けられてもよい。この場合、アプリサーバ310と管理サーバ200との間で、上述の回数を示す情報を含む報酬付与情報を授受するように予め取り決めてさえおけばよい。よって、相互送客システム500は、成果地点IDに代えて報酬付与通知情報の取得回数を示す情報を報酬付与情報に含めても、到達した成果地点のそれぞれに対応して報酬が付与されるようにすることができる。
(29)管理サーバ200のリワード処理部245は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、送客先アプリ20(第2アプリケーションの一例)から複数の成果地点のいずれかに到達したことを示す到達情報が関連付けられた報酬付与通知情報を取得するとともに、当該取得した到達情報が関連付けられた報酬付与情報を、ユーザ端末100により実行された送客元アプリ10(第1アプリケーションの一例)、又は送客元アプリ10に対応するアプリサーバ310(サーバ装置の一例)に送信してもよい。
つまり、管理サーバ200は、複数の成果地点のいずれかに到達したときに送客元アプリ10に対応するアプリサーバ310に送信する報酬付与情報には、成果地点IDが関連付けられなくとも、いずれかの成果地点に到達したこと示す到達情報(例えば、単に成果地点に到達したことを示すフラグ情報)が関連付けられてもよい。この場合、アプリサーバ310と管理サーバ200との間で、単に到達情報を含む報酬付与情報を授受するように予め取り決めてさえおけばよい。そして、アプリサーバ310が、到達情報の取得回数を計数して計数結果に応じた報酬を付与してもよい。よって、相互送客システム500は、成果地点IDに代えて単に到達情報を報酬付与情報が関連付けられても、到達した成果地点のそれぞれに対応する報酬が付与されるようにすることができる。
(30)管理サーバ200のアプリケーション管理部221は、アプリケーションリスト(第2情報の一例)に基づく掲載の禁止を設定する設定側アプリケーションと、当該設定側アプリケーションのアプリケーションリストに基づく掲載が禁止される被設定側アプリケーションとを関連付けたアプリ間フィルタ情報(第1の掲載禁止情報の一例)を管理する。そして、管理サーバ200のリスト通知部242(第2情報通知部の一例)は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、送客元アプリ10(第1アプリケーションの一例)を被設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合は、当該設定側アプリケーションを示す情報をアプリケーションリストから除いた残りの情報を、ユーザ端末100に対して送信する。
これにより、相互送客システム500では、通常リワードにおいて相互送客させたくない対象アプリケーションの関係を管理サーバ200に設定することができる。例えば、対象アプリケーションの中でレイティング(年齢制限)が設定されているものがあれば、レイティングが設定されていない送客元アプリ10から、レイティングが設定されている送客先アプリ20への送客を行わせないようにすることができる。
また、管理サーバ200のリスト通知部242(第2情報通知部の一例)は、アプリケーション管理部221が管理しているアプリ間フィルタ情報(第1の掲載禁止情報の一例)を参照して、送客元アプリ10を設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合は、当該被設定側アプリケーションを示す情報をアプリケーションリストから除いた残りの情報を、ユーザ端末100に対して送信する。
これにより、アプリ間フィルタ情報の設定側アプリケーションと被設定側アプリケーションとのそれぞれに設定された対象アプリケーションは、互いに(双方向に)アプリケーションリストへの掲載を禁止(ブロック)することができる。
また、管理サーバ200のアプリケーション管理部221は、アプリケーションリスト(第2情報の一例)に基づく掲載が禁止される被設定側アプリケーションが登録されたアプリ間フィルタ情報(第2の掲載禁止情報の一例)を管理する。
そして、管理サーバ200のリスト通知部242(第2情報通知部の一例)は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、アプリ間フィルタ情報により示される被設定側アプリケーションと送客元アプリ10(第1アプリケーションの一例)とに対してキャンペーン期間(第1の期間の一例)が設定されていないときは、当該被設定側アプリケーションを示す情報をアプリケーションリストから除いた残りの情報を、ユーザ端末100に対して送信する。
これにより、キャンペーンのみ相互送客システム500に参加したいような対象アプリケーションの場合に、キャンペーン期間外では、いずれの対象アプリケーションからの送客に対しても対象アプリケーションの一覧LTへ掲載されないようにすることができる。
(31)また、上記実施形態において、インストール通知情報、リスト要求通知情報、送客情報、報酬付与通知情報などの各種情報にリワードユーザIDが含まれることにより、管理サーバ200において、これらの各種情報が、これらの各種情報を送信したユーザ端末100に対応するリワードユーザIDと関連付けられる例を説明したが、これに限られるものではない。例えば、管理サーバ200とユーザ端末100との間で通信セッションが確立されている場合には、確立された通信セッションと当該ユーザ端末100に対応するリワードユーザIDとが関連付けられるようにしてもよい。これにより、各種情報にリワードユーザIDを含めなくても、確立された通信セッションにおいて送信された各種情報が、当該通信セッションに関連付けられているリワードユーザIDと関連付けられるようにしてもよい。
なお、これらの各種情報とリワードユーザIDとを関連付ける方法は一例であり、管理サーバ200において、これらの各種情報と、これらの各種情報を送信したユーザ端末100を特定するリワードユーザIDとが関連付けられれば、上記の方法に限られるものではない。
<第3の実施形態>
次に、本発明の第3の実施形態を説明する。まず、本実施形態の相互送客システム500aの概要について説明する。
一般に、ユーザ端末100にインストールされる対象アプリケーションには、相互送客システム500を介してインストールされる場合と、相互送客システム500を介さずにユーザ自身がアプリストア400にアクセスすることによってインストールされる場合とがある。ところで、対象アプリケーションの中には、SDK11が組み込まれていない旧バージョンからSDK11を組み込んだバージョンにバージョンアップをすることで同システムに対応するものがある。以下の説明において、SDK11が組み込まれていない対象アプリケーションのことを「旧バージョンの対象アプリケーション」と称して説明する。
旧バージョンの対象アプリケーションは、管理サーバ200との通信機能を有していないため、旧バージョンの対象アプリケーションがユーザ端末100にインストールされていても、管理サーバ200に対してインストールされた旨を通知できない。そのため、上述した管理サーバ200は、旧バージョンがインストールされていないものと認識することになる。つまり、旧バージョンの対象アプリケーションは、管理サーバ200で管理の対象となる前の対象アプリケーションであるとも言える。したがって、第1及び第2の実施形態における相互送客システム500では、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザに提示する対象アプリケーションの一覧LTに、旧バージョンの対象アプリケーションが含まれることがある。
そこで、本実施形態では、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合に、旧バージョンの対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する相互送客システム500aの実施形態について説明する。
〔第3の実施形態による相互送客システムの概要〕
図18は、第3の実施形態の相互送客システム500aの概要を説明する説明図である。
この図において、本実施形態によるネットワークシステム1aは、管理サーバ200aと、ユーザ端末100とを備えている。
ここでは、ユーザ端末100が、相互送客システム500aに対応したSDK1011を備えている対象アプリケーション10A(例えばゲームA)と、SDK1011を組み込んでいない旧バージョンの対象アプリケーション10B(例えばゲームC)とをインストールしている場合を、図18を参照して、本実施形態の相互送客システム500aの概要について説明する。
(1)対象アプリケーション10Aがユーザ端末100にインストールされ、ユーザXによって最初に起動した際に、対象アプリケーション10Aに組み込まれたSDK1011は、対象アプリケーション10Aがユーザ端末100にインストールされていることを示すインストール通知情報(ゲームA)を送信する。これにより、管理サーバ200aは、SDK1011から取得したインストール通知情報に基づいて、ユーザ端末100に対象アプリケーション10Aがインストールされたことを示すインストール情報を管理する。
(2)対象アプリケーション10AのSDK1011は、管理サーバ200aがユーザ端末100からインストール通知情報を取得していない対象アプリケーションを示す未インストール情報を管理サーバ200aから取得する。なお、ここでの、対象アプリケーション10Aは、第1及び第2の実施形態における送客元アプリ10と同様の機能を有する送客元アプリに対応する。
(3)対象アプリケーション10AのSDK1011は、管理サーバ200aから取得した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション(例えば対象アプリケーション10B)が、ユーザ端末100にインストールされているか否かを検出(インストール検出)する。つまり、未インストール情報は、ユーザ端末100において検出すべき「旧バージョンの対象アプリケーション」の候補を示すものと言える。SDK1011は、例えば、URLスキームを利用して「旧バージョンの対象アプリケーション」がユーザ端末100にインストールされているか否かを検出する。なお、URLスキームを利用する方法の詳細については後述する。
(4)対象アプリケーション10AのSDK1011は、旧バージョンの対象アプリケーション10B(ゲームC)がインストールされていることを示すインストール通知情報を管理サーバ200aに送信する。これにより、管理サーバ200aは、SDK1011から取得したインストール通知情報(ゲームC)に基づいてユーザ端末100に対象アプリケーション10Bがインストールされていることを示すインストール情報を管理する。なお、管理サーバ200aは、ユーザ端末100にインストールされている対象アプリケーションが旧バージョンか否かを含めて管理するようにしてもよい。
(5)管理サーバ200aは、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーション10Bを除いたアプリケーションリスト(ゲームCを含めない)をユーザ端末100に対して送信する。
すなわち、管理サーバ200aは、管理している複数の対象アプリケーションのうち、ユーザ端末100にインストールされて起動した対象アプリケーションのインストール情報と、ユーザ端末100にインストールされている上述の旧バージョンの対象アプリケーションのインストール情報とのいずれも管理していない少なくとも一の対象アプリケーションのアプリケーションリストを生成する。
そして、管理サーバ200aは、生成したアプリケーションリストをユーザ端末100に対して送信する。ユーザ端末100は、管理サーバ200aから送信された上述のアプリケーションリストに基づいて、ユーザに対してインストールを勧める対象アプリケーションとして、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション10Bを除いた対象アプリケーションの一覧LTを表示部120に表示する。
このように、本実施形態による相互送客システム500aは、ユーザ端末100に旧バージョンの対象アプリケーションがインストールされている場合であっても、当該旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTを表示部120に表示させてユーザに提示することができる。
次に、本実施形態による相互送客システム500aについて、詳細に説明する。
なお、本発明の第3の実施形態によるネットワークシステム1aの構成、及びユーザ端末100の構成は、図2に示す第1の実施形態におけるネットワークシステム1の構成、及び、図3に示す第1の実施形態におけるユーザ端末100の構成と同様であるので、ここではその説明を省略する。
また、本実施形態による管理サーバ200aは、管理の対象となる複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーション10Aから送信されたインストール通知情報に基づいてインストール情報を管理する。さらに、管理サーバ200aは、旧バージョンの対象アプリケーション10Bがユーザ端末100にインストールされていることを検出した対象アプリケーション10Aから送信された、当該旧バージョンの対象アプリケーションがインストールされていることを示す仮インストール通知情報に基づいてインストール情報を管理する。
〔第3の実施形態によるユーザ端末100(SDK1011)の機能構成〕
図19は、本実施形態によるユーザ端末100のSDK1011に基づいて実行する機能構成の一例を示す構成図である。
この図19を参照して、相互送客システム500aにおいてユーザ端末100(SDK1011)が実行する相互送客処理の機能構成について説明する。
この図において、SDK1011は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106と、報酬付与通知部107と、仮インストール通知部108と、リスト取得部109と、未インストール情報取得部111とを備えている。また、初期化処理部101は、固有識別情報取得部102と、インストール通知部103とを備えている。
なお、本実施形態におけるSDK1011は、仮インストール通知部108と、リスト取得部109と、未インストール情報取得部111とを備えている点が、第1及び第2の実施形態と異なる。また、図19において、図5と同様の構成に同一の符号を付し、ここでは説明を省略する。
未インストール情報取得部111は、複数の対象アプリケーションのうち、管理サーバ200a(後述するインストール情報管理部222)においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得する。すなわち、未インストール情報は、複数の対象アプリケーションのうち、ユーザ端末100にインストールされた対象アプリケーション10A(第1アプリケーションの一例)からインストール通知情報を取得していない対象アプリケーションを示す。
なお、仮インストール通知情報に基づいたインストール情報が管理サーバ200aで管理されている場合には、未インストール情報は、複数の対象アプリケーションのうち、対象アプリケーション10Aからインストール通知情報及び仮インストール通知情報のいずれも取得していない対象アプリケーションを示すものになる。
なお、未インストール情報取得部111が取得する未インストール情報には、未インストール情報に示される対象アプリケーションのアプリID(ApID)と、当該対象アプリケーションに対応するURLスキームとが含まれている。ここで、対象アプリケーションに対応するURLスキームは、後述する図21に示すように、例えば、管理サーバ200aの対象アプリ情報記憶部231にアプリID(ApID)と対応付けて記憶されている。
仮インストール通知部108は、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出し、検出した当該対象アプリケーションの仮インストール通知情報を管理サーバ200aに対して送信する。具体的な処理の一例として、仮インストール通知部108は、未インストール情報取得部111が取得した未インストール情報に示される対象アプリケーションを対象として、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。そして、検出された旧バージョンの対象アプリケーションの仮インストール通知情報を管理サーバ200aに対して送信する。なお、対象アプリケーションから旧バージョンの対象アプリケーションを検出する場合に、インストールされているか否かを示す情報以外の、例えばアプリユーザIDなどの内部情報を取得することができない。したがって、仮インストール通知情報には、このユーザ端末100に対応するリワードユーザIDは含まれるが、当該旧バージョンの対象アプリケーションのアプリIDは含まれない。
また、具体的な処理の一例として、仮インストール通知部108は、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する場合に、未インストール情報取得部111が取得したURLスキームを利用する。仮インストール通知部108は、対象アプリケーションに対応するURLスキームがオープン(使用)可能か否かを所定のメソッドを利用して確認する。メッソッドの利用の結果でオープン可能と確認された場合に、当該URLスキームに対応した旧バージョンの対象アプリケーションがユーザ端末100にインストールされていると検出する。そして、仮インストール通知部108は、ユーザ端末100にインストールされていると検出した1または複数の旧バージョンの対象アプリケーションに対応した仮インストール通知情報を管理サーバ200aに送信する。
このように、URLスキームは、アプリケーションまたはアプリケーション内の特定の機能を呼び出すものであり、アプリケーション毎に定められている。そのため、URLスキームを利用することにより、ユーザ端末100にインストールされているアプリケーションの検出が可能となる。
リスト取得部109は、管理サーバ200aにおいてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションがある場合に、当該対象アプリケーションのアプリケーションリストを管理サーバ200aから取得する。アプリケーションリストに含まれる対象アプリケーションは、管理サーバ200aにおいてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションであって、一部でも又は全部でもよい。例えば、所定の条件に充足する対象アプリケーションだけが含まれるようにしてもよい。ここで、アプリケーションリストは、ユーザ端末100で、ユーザに対してインストールを勧める対象アプリケーションの一覧LTを表示するアプリ一覧ページのデータである。なお、ユーザに対してインストールを勧める対象アプリケーションが存在しない(対象アプリケーションを抽出できなかった)場合は、ユーザに対してその旨を通知する情報を当該データに含ませてもよい。
〔第3の実施形態による管理サーバ200aの構成〕
次に、図20を参照して、本実施形態による管理サーバ200aの構成の詳細について説明する。
図20は、本実施形態による管理サーバ200aの構成の一例を示す構成図である。管理サーバ200aは、通信部210と、管理部220と、記憶部230と、制御部240aとを備えている。なお、この図において、図6と同様の構成に同一の符号を付し、ここでは説明を省略する。
図20において、制御部240aは、インストール通知取得部241と、リスト通知部242と、送客情報取得部243と、インストール誘導指示部244と、リワード処理部245と、計時部246と、仮インストール通知取得部247と、未インストール情報通知部248とを備えている。
なお、本実施形態における制御部240aは、仮インストール通知取得部247と、未インストール情報通知部248とを備えている点が、第1及び第2の実施形態と異なる。
また、本実施形態において、対象アプリ情報記憶部231に記憶される対象アプリケーション情報のデータ構成と、インストール情報管理部222に記憶されるインストール情報のデータ構成とが、第1及び第2の実施形態とは異なり、ここでは、まず、この本実施形態における対象アプリケーション情報のデータ構成、及びインストール情報のデータ構成について説明する。
図21は、本実施形態による対象アプリ情報記憶部231に記憶される対象アプリケーション情報の一例を示す図である。
本実施形態による対象アプリ情報記憶部231は、図21に示すように、対象アプリケーション情報を記憶する。対象アプリケーション情報には、対象アプリケーションのアプリID(ApID)と、通知先URL(NoticeURL)と、ストアURL(ApStoreURL)と、上述した当該対象アプリケーションに対応するURLスキーム(ApURI)と、当該対象アプリケーションの名称を示すアプリ名称(ApNAME)と、当該対象アプリケーションに関する説明情報であるアプリ説明(ApDOC)と、当該対象アプリケーションを示すアイコン画像であるアプリアイコン画像(ApICO)と、アプリ価格(ApPRICE)とが関連付けられている。
本実施形態では、対象アプリケーション情報にURLスキーム(ApURI)が含まれる点が、第1及び第2の実施形態とは異なる。
図22は、本実施形態によるインストール情報記憶部236に記憶されるインストール情報の一例を示す図である。
本実施形態によるインストール情報記憶部236は、図22に示すように、インストール情報を記憶する。インストール情報には、リワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)と、通知タイプ(Ttype)とが関連付けられている。なお、リワードユーザID(RewardUID)、アプリID(ApID)、及びアプリユーザID(ApUID)は、取得したインストール通知情報及び仮インストール通知情報に含まれる情報である。ただし、上述したように、旧バージョンの対象アプリケーションである場合に、仮インストール通知情報には、アプリユーザID(ApUID)が含まれないため、旧バージョンの対象アプリケーションに対応するインストール情報では、アプリユーザID(ApUID)は、「null」が設定される。
本実施形態では、対象アプリケーション情報に通知タイプ(Ttype)が含まれる点が、第1及び第2の実施形態とは異なる。
ここで、通知タイプ(Ttype)は、上述したインストール通知部103によるインストール通知情報に基づいて記憶されたインストール情報と、仮インストール通知部108による仮インストール通知情報に基づいて記憶されたインストール情報とを区別する情報である。すなわち、通知タイプ(Ttype)は、ユーザ端末100にインストールされているアプリケーションが、SDK1011を備える対象アプリケーションであるか、SDK1011を備えない旧バージョンの対象アプリケーションであるかを区別する情報である。
例えば、図22に示す例では、通知タイプ(Ttype)が「0」である場合に、インストール通知情報に基づいて記憶されたインストール情報を示し、通知タイプ(Ttype)が「1」である場合に、仮インストール通知情報に基づいて記憶されたインストール情報を示している。例えば、図22に示すインストール情報記憶部236には、リワードユーザID(RewardUID)の「09634565」と、アプリID(ApID)の「001」と、アプリユーザID(ApUID)の「5288」と、通知タイプ(Ttype)の「0」とが関連付けられてインストール情報として記憶されている。この場合、インストール情報は、通知タイプ(Ttype)が「0」であるので、ユーザ端末100にインストールされているアプリケーションが、SDK1011を備える対象アプリケーションであることを示している。また、例えば、図21に示すインストール情報記憶部236には、リワードユーザID(RewardUID)の「09634565」と、アプリID(ApID)の「002」と、アプリユーザID(ApUID)の「null」と、通知タイプ(Ttype)の「1」とが関連付けられてインストール情報として記憶されている。この場合、インストール情報は、通知タイプ(Ttype)が「1」であるので、ユーザ端末100にインストールされているアプリケーションが、SDK1011を備えない旧バージョンの対象アプリケーションであることを示している。
次に図20に戻り、制御部240の構成について説明する。
未インストール情報通知部248は、未インストール情報を、SDK1011に対して送信する。未インストール情報通知部248は、例えば、アプリケーション管理部221とインストール情報管理部222とが管理する情報を参照することにより、未インストール情報を、ユーザ端末100にインストールされた対象アプリケーション10Aに対して送信する。ここで、未インストール情報は、複数の対象アプリケーションのうちインストール通知取得部241がユーザ端末100にインストールされた対象アプリケーション10Aからインストール通知情報を取得していない対象アプリケーションを示す。また、アプリケーション管理部221とインストール情報管理部222とが管理する情報とは、対象アプリ情報記憶部231に記憶される対象アプリケーション情報、及びインストール情報記憶部236に記憶されるインストール情報のことである。
具体的には、未インストール情報通知部248は、対象アプリ情報記憶部231に記憶されている対象アプリケーション情報のうちから、インストール情報記憶部236に記憶されているインストール情報にない対象アプリケーションを、通知タイプ(Ttype)を問わずに抽出する。そして、未インストール情報通知部248は、例えば、抽出した対象アプリケーションのアプリID(ApID)と当該対象アプリケーションに対応するURLスキームとを対象アプリ情報記憶部231から取得し、取得したアプリID(ApID)とURLスキームとを含んだ未インストール情報をユーザ端末100にインストールされた対象アプリケーション10Aに対して送信する。
仮インストール通知取得部247は、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合、当該旧バージョンの対象アプリケーションがインストールされていることを示す仮インストール通知情報を、対象アプリケーション10Aから取得する。仮インストール通知取得部247は、例えば、未インストール情報通知部248が送信した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を、対象アプリケーション10Aから取得する。そして、仮インストール通知取得部247は、取得した仮インストール通知情報を、インストール情報管理部222に供給する。
なお、本実施形態のリスト通知部242は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションがある場合に、当該対象アプリケーションの一部または全部(少なくとも一の対象アプリケーション)のアプリケーションリストを、ユーザ端末100に対して送信する。リスト通知部242のその他の機能は、第1及び第2の実施形態のリスト通知部242と同様である。
なお、本実施形態のアプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。また、本実施形態のインストール情報管理部222は、対象アプリケーション10Aから取得したインストール通知情報及び仮インストール通知情報に基づいて、ユーザ端末100にインストールされている対象アプリケーションのインストール情報を管理する。
〔第3の実施形態による相互送客処理の動作の詳細〕
次に、本実施形態の相互送客システム500aの動作について説明する。
なお、本実施形態の相互送客システム500aの基本的な動作は、図14及び図15に示す第1の実施形態と同様であり、ここでは、図23を参照して、本実施形態の対象アプリケーションのアプリケーションリストを生成する処理を中心に、相互送客システム500aの動作について説明する。この図23に示す処理は、図18を参照して説明した概略処理の流れの詳細例を示すものである。
ここでは、図23を参照して、ユーザ端末100にインストールされている対象アプリケーション10A側の処理について説明する。また、対象アプリケーション10Aには、上述したSDK1011と同様のSDK1011Aが組み込まれているものとする。
図23において、ステップSA11からステップSA17の処理は、図14に示す第1の実施形態と同様であるので、ここではその説明を省略する。
ステップSE11において、管理サーバ200aのインストール情報管理部222は、インストール通知取得部241が取得したインストール通知情報に含まれるリワードユーザID(RewardUID)、対象アプリケーション10A(ゲームA)のアプリID(ApID)、及び対象アプリケーション10A(ゲームA)におけるユーザXのアプリユーザID(ApUID)と、通知タイプ(Ttype)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる。なお、この場合、インストール情報管理部222は、通知タイプ(Ttype)を「0」として、インストール情報記憶部236に記憶させる。
次に、SDK1011Aの未インストール情報取得部111は、ステップSA170で端末記憶部140のアプリ間共有エリアから読み出したリワードユーザIDに対応する未インストール情報を要求する未インストール情報要求通知情報を生成する。生成した未インストール情報要求通知情報には、リワードユーザIDが含まれている。未インストール情報取得部111は、生成した未インストール情報要求通知情報を管理サーバ200aに対して送信する(REQ11A、ステップSA171)。
次に、管理サーバ200aの未インストール情報通知部248は、対象アプリケーション10AのSDK1011Aから送信された未インストール情報要求通知情報に基づいて、未インストールの対象アプリケーションを抽出する(ステップSE111)。具体的には、未インストール情報通知部248は、対象アプリ情報記憶部231に記憶されている対象アプリケーション情報のうちから、取得したリワードユーザIDに対応付けられてインストール情報記憶部236に記憶されているインストール情報にない未インストールの対象アプリケーションを全て抽出する。そして、未インストール情報通知部248は、抽出した全ての未インストールの対象アプリケーションに対応するアプリID(ApID)と、URLスキームとを対象アプリ情報記憶部231から取得する。未インストール情報通知部248は、抽出した全ての未インストールの対象アプリケーションに対応した未インストール情報を、各対象アプリケーションに対応するアプリID(ApID)とURLスキームを含めて生成する。
次に、未インストール情報通知部248は、SDK1011Aに対して、生成した未インストール情報を通知する(RES11A、ステップSE112)。なお、未インストール情報通知部248は、未インストールの対象アプリケーションが抽出されなかった場合には、未インストールの対象アプリケーションが存在しない旨の情報を、未インストール情報として通知するようにしてもよい。
次に、SDK1011Aの未インストール情報取得部111は、管理サーバ200aの未インストール情報通知部248から送信された未インストール情報を取得する(ステップSA172)。
次に、SDK1011Aの仮インストール通知部108は、取得した未インストール情報に含まれる未インストールの対象アプリケーションのインストールを確認する(ステップSA173)。具体的には、仮インストール通知部108は、未インストール情報取得部111が取得した未インストール情報に含まれるURLスキームを用いて、未インストールの対象アプリケーションのうち、ユーザ端末100にインストールされている対象アプリケーションを検出する。管理サーバ200aでインストール情報が管理されていない対象アプリケーションにも関わらず、URLスキームを用いて対象アプリケーションが検出されたということは、旧バージョンの対象アプリケーションがユーザ端末100にインストールされていることを示す。すなわち、仮インストール通知部108は、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
例えば、仮インストール通知部108は、対象アプリケーションに対応するURLスキームがオープン可能か否かを所定のメソッドを利用して、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
なお、URLスキーム以外にインストールされているアプリケーションを検出可能な機能が具備されている場合には、仮インストール通知部108は、その機能を利用してもよい。
次に、仮インストール通知部108は、管理サーバ200aに対してインストール確認の結果を通知する(ステップSA174)。すなわち、仮インストール通知部108は、ユーザ端末100にインストールされていると検出した旧バージョンの対象アプリケーションを示す仮インストール通知情報を管理サーバ200aに対して送信する(REQ11B)。なお、ユーザ端末100に、旧バージョンの対象アプリケーションが存在しなかった場合には、仮インストール通知情報として旧バージョンの対象アプリケーションが存在しない旨の情報を通知するようにしてもよい。また、未インストール情報取得部111が取得した未インストール情報が未インストールの対象アプリケーションが存在しない旨を示す場合には、仮インストール通知部108は、仮インストール通知情報を管理サーバ200aに対して送信しないようにしてもよい。
次に、管理サーバ200aの仮インストール通知取得部247は、SDK1011Aの仮インストール通知部108から送信された仮インストール通知情報を取得する(SE113)。すなわち、仮インストール通知取得部247は、例えば、未インストール情報通知部248が送信した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を、対象アプリケーション10AのSDK1011Aから取得する。そして、仮インストール通知取得部247は、取得した仮インストール通知情報をインストール情報管理部222に供給する。
インストール情報管理部222は、仮インストール通知取得部247が取得した仮インストール通知情報に含まれるリワードユーザID(RewardUID)、対象アプリケーション10A(ゲームA)のアプリID(ApID)、及び対象アプリケーション10A(ゲームA)におけるユーザXのアプリユーザID(ApUID)と、通知タイプ(Ttype)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる。なお、この場合、インストール情報管理部222は、アプリユーザID(ApUID)を「null」に設定し、通知タイプ(Ttype)を「1」として、インストール情報記憶部236に記憶させる。
また、仮インストール通知取得部247は、仮インストール通知情報を取得したことを示す応答情報を、SDK1011Aに対して送信する(RES11B)。
仮インストール通知部108は、管理サーバ200aから送信された応答情報を取得する(ステップSA175)。
続くステップSA24以降の処理(なお、ステップSE15以降、及びステップSA25以降は、図示を省略)は、図14に示すステップSA24からステップSA26、ステップSE15からステップSE19の処理、及びステップSC11の処理と同様であるので、ここでは説明を省略する。
なお、本実施形態では、ステップSE15及びステップSE16において、リスト通知部242は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションがある場合に、当該対象アプリケーションの一部または全部(少なくとも一の対象アプリケーション)のアプリケーションリストを抽出する。そして、リスト通知部242は、抽出した対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザ端末100において表示するためのアプリ一覧ページのデータを生成する。なお、リスト通知部242は、一の対象アプリケーションも抽出できなかった場合には、ユーザに対してその旨を通知する情報を当該データに含めてもよい。なお、対象アプリケーションのアプリケーションリストをユーザ端末100に送信し、対象アプリケーション10AのSDK1011Aにおいて、取得したアプリケーションリストに基づいて、対象アプリケーションの一覧LTをユーザ端末100で表示するためのデータを生成するようにしてもよい。
〔第3の実施形態のまとめ〕
(1)以上説明してきたように、本実施形態の相互送客システム500aにおいて、管理サーバ200a(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241と、仮インストール通知取得部247と、インストール情報管理部222と、リスト通知部242と、を備えている。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちユーザ端末100(端末装置の一例)にインストールされた対象アプリケーション10A(第1アプリケーションの一例)から、当該対象アプリケーション10Aがユーザ端末100にインストールされたことを示すインストール通知情報を取得する。仮インストール通知取得部247は、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合、当該対象アプリケーションがインストールされていることを示す仮インストール通知情報を、対象アプリケーション10Aから取得する。ここで、旧バージョンの対象アプリケーションとは、複数の対象アプリケーションのうちのいずれかのアプリケーションであって、アプリケーション管理部221による管理の対象となる前のアプリケーションであり、管理サーバ200aとの通信機能を有していないものである。インストール情報管理部222は、対象アプリケーション10Aから取得したインストール通知情報及び仮インストール通知情報に基づいて、ユーザ端末100にインストールされている対象アプリケーションのインストール情報を管理する。そして、リスト通知部242は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。なお、リスト通知部242は、対象アプリケーション10Aからインストール通知情報及び仮インストール通知情報のいずれも取得していない少なくとも一の対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信するものとして捉えることができる。
これにより、例えば、SDK1011を組み込んでいない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合であっても、本実施形態の管理サーバ200aは、旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信することができる。すなわち、本実施形態の管理サーバ200aは、例えば、旧バージョンの対象アプリケーションがインストールされている場合に、対象アプリケーションのアプリケーションリストに既に旧バージョンがインストールされている対象アプリケーションが誤ってユーザに提示されることを防止することができる。そのため、本実施形態の管理サーバ200aは、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、対象アプリケーションのバージョンに関わらず、ユーザが利用したことのない対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示させることができる。
(2)また、本実施形態の管理サーバ200aは、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を、対象アプリケーション10A(第1アプリケーションの一例)に対して送信する未インストール情報通知部248を備えている。この未インストール情報は、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補を示すものと言える。
そして、仮インストール通知取得部247は、未インストール情報通知部248が送信した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を、対象アプリケーション10Aから取得する。なお、未インストール情報通知部248は、複数の対象アプリケーションのうち対象アプリケーション10Aからインストール通知情報及び仮インストール通知情報のいずれも取得していない対象アプリケーションを示す未インストール情報を対象アプリケーション10Aに対して送信するものとして捉えることができる。
これにより、管理サーバ200aは、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補を未インストール情報として通知することで、ユーザ端末100において旧バージョンの対象アプリケーションの検出すべき対象を明確にすることができる。その結果として、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーションの抽出の処理量を低減することができる。また、対象アプリケーション10Aは、この旧バージョンの対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
また、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを管理することができる。その結果として、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示させることができる。
(3)また、本実施形態の管理サーバ200aは、複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーション10A(第1アプリケーションの一例)からインストール通知情報を取得していない対象アプリケーションを示す未インストール情報を、対象アプリケーション10Aに対して送信する未インストール情報通知部248を備えている。この未インストール情報は、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補を示すものと言える。
そして、仮インストール通知取得部247は、未インストール情報通知部248が送信した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を、対象アプリケーション10Aから取得する。
これにより、管理サーバ200aは、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補を未インストール情報として通知することで、ユーザ端末100において旧バージョンの対象アプリケーションの検出すべき対象を明確にすることができる。その結果として、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーションの抽出の処理量を低減することができる。また、対象アプリケーション10Aは、この旧バージョンの対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
また、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを管理することができる。その結果として、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示させることができる。
(4)また、本実施形態の管理サーバ200aでは、未インストール情報通知部248は、アプリケーション管理部221とインストール情報管理部222とが管理する情報を参照することにより、未インストール情報をユーザ端末100にインストールされた対象アプリケーション10Aに対して送信する。ここで、未インストール情報は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す。
なお、本実施形態の管理サーバ200aは、対象アプリケーション10A(第1アプリケーションの一例)から、旧バージョンの対象アプリケーション(ゲームCとは異なる旧バージョンのゲーム)に対する仮インストール通知情報を取得している場合には、インストール情報管理部222は、インストール通知情報または仮インストール通知情報を送信した対象アプリケーションと、当該対象アプリケーションがインストールされたユーザ端末100とを関連付けて管理し、未インストール情報通知部248は、複数の対象アプリケーションのうち対象アプリケーション10Aからインストール通知情報および仮インストール通知情報のうちいずれも取得していない対象アプリケーションを示す未インストール情報を、対象アプリケーション10Aに対して送信するようにしてもよい。
これにより、未インストール情報通知部248は、管理の対象となる複数の対象アプリケーションに関する情報を管理するアプリケーション管理部221が管理する情報を参照して抽出した全対象アプリケーションと、インストール情報管理部222が管理する情報を参照して抽出されるユーザ端末100に対応するインストール情報が管理されている対象アプリケーションとを比較することにより、ユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を特定することが可能となる。この未インストール情報は、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補を示すものと言える。
(5)また、本実施形態の相互送客システム500aにおいて、ユーザ端末100(端末装置の一例)は、管理サーバ200aと通信可能な端末装置である。ここで、管理サーバ200aは、管理の対象となる複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報と、旧バージョンの対象アプリケーション(管理の対象となる前の対象アプリケーションの一例)がユーザ端末100にインストールされていることを示す仮インストール通知情報とに基づいて、ユーザ端末100にインストールされている対象アプリケーションのインストール情報を管理する。ユーザ端末100は、インストール通知部103と、仮インストール通知部108と、リスト取得部109と、表示制御部105と、を備えている。
インストール通知部103は、自ユーザ端末100にインストールされた対象アプリケーションのインストール通知情報を管理サーバ200aに対して送信する。仮インストール通知部108は、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出して、検出した当該対象アプリケーションの仮インストール通知情報を管理サーバ200aに対して送信する。リスト取得部109は、管理サーバ200aにおいてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションのアプリケーションリストを管理サーバ200aから取得する。なお、リスト取得部109は、インストール通知情報及び仮インストール通知情報のいずれも送信していない少なくとも一の対象アプリケーションのアプリケーションリストを管理サーバ200aから取得するものとして捉えることができる。そして、表示制御部105は、リスト取得部109が取得した対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTを表示部120に表示させる。なお、リスト取得部109は、アプリケーションリストに基づいて表示するためのデータを示す対象アプリケーションの一覧LTを管理サーバ200aから取得してもよい。なお、リスト取得部109は、インストール通知情報及び仮インストール通知情報のいずれも自ユーザ端末100から送信していない少なくとも一の対象アプリケーションのアプリケーションリストを管理サーバ200aから取得するものとして捉えることができる。
これにより、例えば、SDK1011を組み込んでいない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合に、本実施形態のユーザ端末100は、旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを取得して、取得したアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザに提示することができる。よって、本実施形態のユーザ端末100は、対象アプリケーションのバージョンに関わらず、ユーザが利用したことのない対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示させることができる。
(6)また、本実施形態のユーザ端末100は、管理サーバ200aにおいてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得する未インストール情報取得部111、を備えている。なお、未インストール情報取得部111は、複数の対象アプリケーションのうちインストール通知情報および仮インストール通知情報のいずれも自ユーザ端末100から送信していない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得するものとして捉えることができる。
そして、仮インストール通知部108は、未インストール情報取得部111が取得した未インストール情報に示される対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を管理サーバ200aに対して送信する。
これにより、本実施形態のユーザ端末100の対象アプリケーション10Aは、例えば、取得した未インストール情報のうちから、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを抽出するので、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーションの抽出の処理量を低減することができる。また、本実施形態のユーザ端末100は、この旧バージョンの対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
(7)また、本実施形態のユーザ端末100は、複数の対象アプリケーションのうちインストール通知情報を自ユーザ端末100から送信していない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得する未インストール情報取得部111、を備えていてもよい。そして、仮インストール通知部108は、未インストール情報取得部111が取得した未インストール情報に示される対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションの仮インストール通知情報を管理サーバ200aに対して送信する。
これにより、本実施形態のユーザ端末100の対象アプリケーション10Aは、例えば、取得した未インストール情報のうちから、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを抽出するので、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーションの抽出の処理量を低減することができる。また、本実施形態のユーザ端末100は、この旧バージョンの対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
(8)また、本実施形態では、未インストール情報取得部111は、未インストール情報に含まれる、未インストール情報に示される対象アプリケーションに対応するURLスキームを取得する。そして、仮インストール通知部108は、未インストール情報取得部111が取得したURLスキームを利用して、未インストール情報に示される対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
これにより、本実施形態のユーザ端末100は、例えば、ユーザ端末100において、URLスキームがオープン可能か否かを判定するという簡易な手段により、旧バージョンの対象アプリケーションを検出することができる。
(9)また、本実施形態では、アプリケーション管理部221は、対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTへの掲載の禁止を設定する側の設定側アプリケーションと、当該設定側アプリケーションの対象アプリケーションの一覧LTへの掲載が禁止される側の被設定側アプリケーションとを組みにしたアプリ間フィルタ情報(第1の掲載禁止情報)を管理してもよい。この場合、リスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報(第1の掲載禁止情報)を参照して、対象アプリケーション10Aを被設定側アプリケーションに設定しているアプリ間フィルタ情報(第1の掲載禁止情報)がある場合は、設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。
また、本実施形態では、リスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報(第1の掲載禁止情報)を参照して、対象アプリケーション10Aを設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合は、被設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信してもよい。
また、本実施形態では、アプリケーション管理部221は、アプリケーションリストへの掲載が禁止される側の被設定側アプリケーションのみが登録されたアプリ間フィルタ情報(第2の掲載禁止情報)を管理してもよい。この場合、リスト通知部242は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、被設定側アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、相互送客システム500aでは、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、勧めたくない対象アプリケーションの関係を管理サーバ200aに設定することができる。例えば、対象アプリケーションの中でレイティング(年齢制限)が設定されているものがあれば、レイティングが設定されていない対象アプリケーション10Aから、レイティングが設定されている対象アプリケーションを勧めないようにすることができる。
(10)また、本実施形態の管理サーバ200aは、リワード処理部245を備えている。リワード処理部245は、アプリケーションリストに含まれる一または複数の対象アプリケーションからユーザ端末100で選択された第1の実施形態の送客先アプリ20(第2アプリケーションの一例)における所定の報酬付与条件が充足されたと判定された場合に、送客元アプリ10に相当する対象アプリケーション10A(第1アプリケーションの一例)において所定の報酬が付与される報酬付与処理を実行する。
これにより、ユーザが利用したことのない送客先の対象アプリケーションをインストールすると送客元の対象アプリケーションに対して報酬を付与する相互送客システム500aにおいて、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーションを除外して、報酬付与の対象となるユーザが利用したことのない対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示させることができる。また、対象アプリケーションの一覧LTに旧バージョンの対象アプリケーションが含まれてしまって、当該旧バージョンの対象アプリケーションが新バージョンの対象アプリケーションにアップデートされた場合に、管理サーバ200aが送客元アプリ10に対して報酬を付与されてしまうことを防止することができる。
(11)さらに、本実施形態の管理サーバ200aは、送客情報取得部243と、送客情報管理部223と、を備えるようにして、リワード処理部245は、所定の報酬付与条件が充足されたと判定された場合に、第2アプリケーションに対する送客情報が送客情報管理部223で管理されていることを条件として、報酬付与処理を実行してもよい。ここで、送客情報取得部243が、対象アプリケーション10Aから第2アプリケーションに対する送客情報を取得し、送客情報管理部223が、送客情報取得部243が取得した送客情報を管理するようにしてもよい。
これにより、相互送客システム500aは、本システムによらずに対象アプリケーションがインストールされた場合には送客情報の記録がないため報酬付与の対象としないようにすることができる。
(12)また、所定の報酬付与条件は、送客先アプリ20(第2アプリケーションの一例)がユーザ端末100にインストールされたと判定されたときであってもよい。また、所定の報酬付与条件は、送客先アプリ20がユーザ端末100にインストールされたと判定され、且つ送客先アプリ20において所定の成果が達成されたと判定されたときであってもよい。
このように、相互送客システム500aは、報酬付与条件を任意に設定することができる。
(13)また、アプリケーション管理部221は、複数の対象アプリケーションのうちの複数の特定アプリケーションに対して設定された所定の期間を有するイベントを管理してもよい。この場合、所定の報酬付与条件とは、第2アプリケーションが特定アプリケーションであって、第2アプリケーションが所定の期間内にユーザ端末100にインストールされたと判定され、且つ第2アプリケーションにおいて所定の成果が達成されたと判定されたときであってもよい。
これにより、複数の対象アプリケーションのうちで、キャンペーンを実施している特定のアプリケーションだけを報酬付与の対象とすることができる。キャンペーンを実施している特定のアプリケーションのうちで、旧バージョンの特定のアプリケーションがユーザ端末100にインストールされている場合であっても、ユーザに対してインストールを勧める特定アプリケーションを提示する場合に、旧バージョンの対象アプリケーションを除外して、ユーザが利用したことのない特定アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザが利用したことのないキャンペーンを実施している対象アプリケーション(特定アプリケーション)の一覧をユーザ端末100においてユーザに提示させることができる。
(14)また、本実施形態のユーザ端末100は、報酬付与通知部107を備えている。報酬付与通知部107は、自ユーザ端末100にインストールされた対象アプリケーションにおいて所定の報酬付与条件が充足されたと判定された場合に、当該所定の報酬付与条件が充足されたことを示す報酬付与通知情報を管理サーバ200aに対して送信する。ここで、管理サーバ200aは、アプリケーションリストに含まれる一または複数の対象アプリケーションからユーザ端末100で選択された対象アプリケーションにおける所定の報酬付与条件が充足されたと判定された場合に、当該対象アプリケーションにおいて所定の報酬が付与される報酬付与処理を実行する。
なお、所定の報酬付与条件とは、自ユーザ端末100にインストールされた対象アプリケーションにおいて所定の成果が達成されたと判定されたときであってもよい。
また、所定の報酬付与条件は複数設けられており、報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、報酬付与通知情報をそれぞれ管理サーバ200aに対して送信してもよい。
これにより、本実施形態のユーザ端末100は、例えば、旧バージョンの対象アプリケーションがインストールされている場合に、旧バージョンの対象アプリケーションを除いた報酬付与の対象となるユーザが利用したことのない対象アプリケーションのアプリケーションリストを取得して、アプリケーションリストに基づく対象アプリケーションの一覧LTをユーザに提示することができる。あるいは、旧バージョンの対象アプリケーションを除いた報酬付与の対象となるユーザが利用したことのない対象アプリケーションのアプリケーションリストを取得して、アプリケーションリストに基づく対象アプリケーションの一覧LTをユーザに提示することができる。その結果として、対象アプリケーションの一覧LTに旧バージョンの対象アプリケーションが含まれてしまって、当該旧バージョンの対象アプリケーションが新バージョンの対象アプリケーションにアップデートされた場合に、管理サーバ200aが送客元アプリ10に対して報酬を付与されてしまうことを防止することができる。
また、本実施形態のユーザ端末100は、所定の報酬付与条件が充足されたと判定された場合に、当該所定の報酬付与条件が充足されたことを示す報酬付与通知情報を管理サーバ200aに対して送信することができる。
<第4の実施形態>
次に、本発明の第4の実施形態を説明する。
本実施形態では、SDK11を組み込んでいない旧バージョンの対象アプリケーションがインストール(アップデート)されている場合に、旧バージョンの対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する実施形態であって、対象アプリケーションのアプリケーションリストから旧バージョンの対象アプリケーションを除外する方法に関して、第3の実施形態とは異なる別の実施形態について説明する。すなわち、第3の実施形態では、管理サーバ200aがインストールを勧める対象アプリケーションをユーザに提示するためのアプリケーションリストをユーザ端末100に送信する際に、アプリケーションリストからユーザ端末100にインストールされている旧バージョンの対象アプリケーションをリストから除外した。そのため、事前にユーザ端末100に対して旧バージョンの対象アプリケーションの候補となる未インストール情報を送信し、候補の中からユーザ端末100にインストールされている旧バージョンの対象アプリケーションのインストール情報を取得するようにした。
一方、本実施形態は、管理サーバ200b(図25参照)が、事前にユーザ端末100に対して旧バージョンの対象アプリケーションの候補となる未インストール情報を送信しない方法である。すなわち、ユーザ端末100は、未インストール情報を管理サーバ200bから取得せずに、ユーザ端末100にインストールされている全ての対象アプリケーション及び旧バージョンの対象アプリケーションを旧バージョンの対象アプリケーションの候補とみなして、当該旧バージョンの対象アプリケーションの仮インストール通知情報を管理サーバ200bに送信する。なお、このとき対象アプリケーション10Aを除外してもよい。そして、管理サーバ200bでは、インストール情報管理部222が管理する情報と比較して、インストール情報管理部222が管理していない対象アプリケーションを旧バージョンの対象アプリケーションであると特定する。
〔第4の実施形態によるユーザ端末100(SDK2011)の機能構成〕
図24は、本実施形態によるユーザ端末100のSDK2011に基づいて実行する機能構成の一例を示す構成図である。
この図24を参照して、相互送客システム500aにおいてユーザ端末100(SDK2011)が実行する相互送客処理の機能構成について説明する。
この図において、SDK2011は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106と、報酬付与通知部107と、仮インストール通知部108と、リスト取得部109と、を備えている。また、初期化処理部101は、固有識別情報取得部102と、インストール通知部103とを備えている。
本実施形態のSDK2011は、未インストール情報取得部111を備えていない点が、第3の実施形態と異なる。また、図24において、図19と同様の構成に同一の符号を付し、ここでは説明を省略する。
なお、本実施形態では、仮インストール通知部108は、ユーザ端末100にインストールされているアプリケーションのうち対象アプリケーション及び旧バージョンの対象アプリケーションを検出する。そして、仮インストール通知部108は、検出した当該対象アプリケーションの仮インストール通知情報を旧バージョンの対象アプリケーションの候補とみなして、当該アプリケーションの仮インストール通知情報を管理サーバ200bに送信する。
〔第4の実施形態による管理サーバ200bの構成〕
次に、図25を参照して、本実施形態による管理サーバ200bの構成について説明する。
図25は、本実施形態による管理サーバ200bの構成の一例を示す構成図である。管理サーバ200bは、通信部210と、管理部220と、記憶部230と、制御部240bとを備えている。なお、この図において、図20と同様の構成に同一の符号を付し、ここでは説明を省略する。
本実施形態の制御部240bは、インストール通知取得部241と、リスト通知部242と、送客情報取得部243と、インストール誘導指示部244と、リワード処理部245と、計時部246と、仮インストール通知取得部247と、を備えている。本実施形態の制御部240bは、未インストール情報通知部248を備えていない点が第3の実施形態と異なる。
なお、本実施形態の仮インストール通知取得部247は、例えば、仮インストール通知部108から取得した仮インストール通知情報のうちから、アプリケーション管理部221が管理する対象アプリケーションを除いた仮インストール通知情報をインストール情報管理部222に供給する。すなわち、仮インストール通知取得部247は、仮インストール通知部108から取得した仮インストール通知情報のうちから、対象アプリ情報記憶部231に記憶されている対象アプリケーション情報に対応する対象アプリケーションを除いた仮インストール通知情報を抽出する。そして、仮インストール通知取得部247は、抽出した仮インストール通知情報をインストール情報管理部222に供給する。
〔第4の実施形態による相互送客処理の動作の詳細〕
次に、本実施形態の相互送客システム500aの動作について説明する。
なお、本実施形態の相互送客システム500aの基本的な動作は、図14及び図15に示す第1の実施形態と同様であり、ここでは、図26を参照して、本実施形態の対象アプリケーションのアプリケーションリストを生成する処理を中心に、相互送客システム500aの動作について説明する。
なお、図26に示す処理は、ユーザ端末100にインストールされている対象アプリケーション10A側の処理を示している。
図26において、ステップSA11からステップSA17の処理は、図14に示す第1の実施形態と同様であるので、ここではその説明を省略する。なお、対象アプリケーション10Aには、上述したSDK2011と同様のSDK2011Aが組み込まれているものとする。
ステップSE11において、管理サーバ200bのインストール情報管理部222は、インストール通知取得部241が取得したインストール通知情報に含まれるリワードユーザID(RewardUID)、対象アプリケーション10A(ゲームA)のアプリID(ApID)、及び対象アプリケーション10A(ゲームA)におけるユーザXのアプリユーザID(ApUID)と、通知タイプ(Ttype)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる。なお、この場合、インストール情報管理部222は、通知タイプ(Ttype)を「0」として、インストール情報記憶部236に記憶させる。
次に、SDK2011Aは、端末記憶部140のアプリ間共有エリアからリワードユーザIDを読み出す(ステップSA170)。そして、仮インストール通知部108は、ユーザ端末100におけるアプリケーションのインストールを確認する(ステップSA173a)。具体的な処理の一例では、仮インストール通知部108は、URLスキームを利用して、ユーザ端末100にインストールされている対象アプリケーションおよび旧バージョンの対象アプリケーションを検出する。例えば、ユーザ端末100は、端末記憶部140のアプリ間共有エリアに、対象アプリケーションのURLスキームとアプリIDとを関連付けたURLスキーム情報を予め記憶しているものとする。仮インストール通知部108は、アプリIDと関連付けたURLスキーム情報に存在する対象アプリケーションに対応するURLスキームがオープン(使用)可能か否かを所定のメソッドを利用して確認する。メッソッドの利用の結果でオープン可能と確認された場合に、当該URLスキームに対応した対象アプリケーションまたは旧バージョンの対象アプリケーションがユーザ端末100にインストールされていると特定する。つまり、インストールされていることが管理サーバ200bで管理されている対象アプリケーションと、インストールされていることが管理サーバ200bで管理されてない旧バージョンの対象アプリケーションが混在された状態で検出されることになる。すなわち、仮インストール通知部108は、検出した対象アプリケーションと旧バージョンの対象アプリケーションとを旧バージョンの対象アプリケーションの候補として検出し、その仮インストール通知情報を生成する。
次に、仮インストール通知部108は、インストール確認の結果を管理サーバ200bに対して通知する(ステップSA174a、REQ11C)。すなわち、仮インストール通知部108は、ユーザ端末100にインストールされていると検出した旧バージョンの対象アプリケーションの候補を示す仮インストール通知情報を管理サーバ200bに対して送信する。
次に、管理サーバ200bの仮インストール通知取得部247は、仮インストール通知部108から送信された仮インストール通知情報を取得する(SE113a)。
仮インストール通知部108が送信する仮インストール通知情報は、旧バージョンの対象アプリケーションの候補であって、インストールされていることが管理サーバ200bで管理されている対象アプリケーションと、インストールされていることが管理サーバ200bで管理されてない旧バージョンの対象アプリケーションとが含まれている。そのため、インストール情報管理部222は、仮インストール通知取得部247が取得した仮インストール通知情報のうち、既にインストール情報記憶部236に記憶されている対象アプリケーションを除いた、真の旧バージョンの対象アプリケーションを抽出する。なお、真の旧バージョンの対象アプリケーションが抽出できない場合もある。この場合、管理サーバ200bでインストールされていることが管理されていない旧バージョンの対象アプリケーションがユーザ端末100に存在しないことを示す。
インストール情報管理部222は、抽出した旧バージョンの対象アプリケーションを、仮インストール通知情報に含まれるリワードユーザID(RewardUID)、対象アプリケーション10B(ゲームC)のアプリID(ApID)、及び対象アプリケーション10BにおけるユーザXのアプリユーザID(ApUID)と、通知タイプ(Ttype)とを関連付けてインストール情報記憶部236に記憶させる。なお、この場合、インストール情報管理部222は、アプリユーザID(ApUID)を「null」に設定し、通知タイプ(Ttype)を「1」として、インストール情報記憶部236に記憶させる。
また、仮インストール通知取得部247は、仮インストール通知情報を取得したことを示す応答情報を、当該ユーザ端末100(SDK2011A)に対して送信する(RES11C)。
続くステップSA175の処理は、図23に示す第3の実施形態と同様であるので、ここでは説明を省略する。
また、ステップSA24以降の処理(なお、ステップSE15以降、及びステップSA25以降は、図示を省略)は、図14に示すステップSA24からステップSA26、ステップSE15からステップSE19の処理、及びステップSC11の処理と同様であるので、ここでは説明を省略する。
なお、本実施形態では、ステップSE15及びステップSE16において、リスト通知部242は、対象アプリケーション10A(ゲームA)からインストール通知情報及び仮インストール通知情報のいずれも取得していない少なくとも一の対象アプリケーション10B(ゲームC)のアプリケーションリストを抽出する。そして、リスト通知部242は、抽出した対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザ端末100においてユーザに対してインストールを勧める対象アプリケーションの一覧LTとして表示するためのアプリ一覧ページのデータを生成する。なお、リスト通知部242は、ユーザに対してインストールを勧める対象アプリケーションが存在しない(対象アプリケーションを抽出できなかった)場合には、ユーザに対してその旨を通知する情報を当該データに含ませてもよい。
〔第4の実施形態のまとめ〕
以上説明してきたように、本実施形態の相互送客システム500aにおいて、ユーザ端末100の仮インストール通知部108は、自ユーザ端末100にインストールされているアプリケーション及び旧バージョンの対象アプリケーション(管理の対象となる前の対象アプリケーションの一例)を検出して、検出した当該対象アプリケーションの仮インストール通知情報を、旧バージョンの対象アプリケーションの候補として管理サーバ200bに送信する。
これにより、管理サーバ200bが、第3の実施形態のように、ユーザ端末100に対して旧バージョンの対象アプリケーションの候補となる未インストール情報を送信することなく、旧バージョンの対象アプリケーションの候補のうちから管理されていない旧バージョンの対象アプリケーションを抽出して管理の対象として追加することができる。したがって、対象アプリケーションのバージョンに関わらず、自ユーザ端末100にインストールされている対象アプリケーションを管理することができる。よって、本実施形態のユーザ端末100は、第3の実施形態と同様に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、対象アプリケーションのバージョンに関わらず、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。
また、URLスキーム以外にインストールされているアプリケーションを検出可能な機能が具備されている場合には、仮インストール通知部108は、その機能を利用してもよい。また、仮インストール通知部108は、アプリケーションのアプリIDを取得可能な場合には、検出したアプリケーションのアプリIDを含む仮インストール通知情報を管理サーバ200bに送信してもよい。また、仮インストール通知部108は、検出したアプリケーションのアプリ名をアプリIDに代えた仮インストール通知情報を管理サーバ200bに送信し、管理サーバ200b側でアプリ名をアプリIDに変換して登録するようにしてもよい。
<第5の実施形態>
次に、本発明の第5の実施形態を説明する。
本実施形態では、SDK11を組み込んでいない旧バージョンの対象アプリケーションがインストール(アップデート)されている場合に、旧バージョンの対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する実施形態であって、第3及び第4の実施形態とは異なる別の実施形態について説明する。すなわち、第3及び第4の実施形態では、管理サーバ200a(200b)がインストールを勧める対象アプリケーションをユーザに提示するためのアプリケーションリストをユーザ端末100に送信する際に、アプリケーションリストからユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除外していた。
一方、本実施形態では、管理サーバ200は旧バージョンの対象アプリケーションを対象アプリケーションのアプリケーションリストから除外せずにユーザ端末100に送信する。そして、ユーザ端末100にて、アプリケーションリストから旧バージョンの対象アプリケーションを除外する。これにより、ユーザ端末100は、旧バージョンの対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示するようにする。
〔第5の実施形態によるユーザ端末100(SDK3011)の機能構成〕
図27は、本実施形態によるユーザ端末100のSDK3011に基づいて実行する機能構成の一例を示す構成図である。
この図27を参照して、相互送客システム500aにおいてユーザ端末100(SDK3011)が実行する相互送客処理の機能構成について説明する。
この図において、SDK3011は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106と、報酬付与通知部107と、リスト取得部109と、リスト生成部112と、を備えている。また、初期化処理部101は、固有識別情報取得部102と、インストール通知部103とを備えている。
本実施形態のSDK3011は、仮インストール通知部108と、未インストール情報取得部111と、を備えていない点と、リスト生成部112を備えている点が、第3の実施形態と異なる。また、図27において、図19と同様の構成に同一の符号を付し、ここでは説明を省略する。
なお、本実施形態のリスト取得部109は、管理サーバ200においてユーザ端末100に対応するインストール情報が管理されていないインストール通知情報を送信していない少なくとも一の対象アプリケーションのアプリケーションリストを管理サーバ200から取得する。また、リスト取得部109は、対象アプリケーションのアプリケーションリストとともに、対象アプリケーションのアプリケーションリストに含まれる対象アプリケーションに対応するURLスキームを取得する。
リスト生成部112は、リスト取得部109が取得した対象アプリケーションのアプリケーションリストに含まれる対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTを生成する。具体的には、リスト生成部112は、リスト取得部109が取得したURLスキームを利用して、アプリケーションリストに含まれる対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを特定する。リスト生成部112は、アプリケーションリストに含まれる対象アプリケーションのうち、URLスキームを利用して特定したユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを生成し直す。
また、本実施形態の管理サーバ200の構成は、図6に示す第1の実施形態の管理サーバ200と同様であり、ここではその説明を省略する。
〔第5の実施形態による相互送客処理の動作の詳細〕
次に、本実施形態の相互送客システム500aの動作について説明する。
なお、本実施形態の相互送客システム500aの基本的な動作は、図14及び図15に示す第1の実施形態と同様であり、ここでは、図28を参照して、本実施形態の対象アプリケーションのアプリケーションリストを生成する処理を中心に、相互送客システム500aの動作について説明する。
なお、図28に示す処理は、ユーザ端末100にインストールされている対象アプリケーション10A側の処理を示している。また、対象アプリケーション10Aには、上述したSDK3011と同様のSDK3011Aが組み込まれているものとする。
図28において、ステップSA11からステップSA17の処理、ステップSA23の処理、ステップSE11の処理、及びステップSE15の処理は、図14に示す第1の実施形態と同様であるので、ここではその説明を省略する。
ステップSA24aにおいて、リスト要求部104は、複数の対象アプリケーションの少なくとも一の対象アプリケーションのアプリケーションリストを要求するリスト要求通知情報を管理サーバ200に対して送信する(REQ12a)。
また、ステップSE16aにおいて、管理サーバ200のリスト通知部242は、対象アプリケーションのアプリケーションリストを生成して、生成したアプリケーションリストをユーザ端末100に送信する(RES12a)。ここで、リスト通知部242は、ユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションのアプリケーションリストを生成する。なお、リスト通知部242は、アプリケーションリストに、対象アプリケーションに対応するURLスキームを含めてもよい。すなわち、リスト通知部242は、アプリケーションリストとともに、アプリケーションリストに含まれる対象アプリケーションに対応するURLスキームをユーザ端末100に対して送信し、ユーザ端末100のリスト取得部109が、アプリケーションリスト及びURLスキームを取得する。
次に、SDK3011Aのリスト生成部112は、旧バージョンの対象アプリケーションのインストールを確認する(ステップSA241)。具体的には、リスト生成部112は、リスト取得部109が取得したアプリケーションリストに含まれるURLスキームを利用して、対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを特定する。すなわち、リスト生成部112は、アプリケーションリストに含まれる対象アプリケーションのうち、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
例えば、リスト生成部112は、アプリケーションリストに含まれるURLスキームを利用して、ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
次に、リスト生成部112は、対象アプリケーションのアプリケーションリストから旧バージョンの対象アプリケーションを削除する(ステップSA242)。すなわち、リスト生成部112は、アプリケーションリストに含まれる対象アプリケーションのうち、URLスキームを利用して検出したユーザ端末100にインストールされている旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを生成する。
次に、SDK3011Aの表示制御部105は、リスト生成部112が生成した対象アプリケーションのアプリケーションリストに基づいて対象アプリケーションの一覧LTを表示部120に表示させる(ステップSA25a)。
また、ステップSA26以降の処理(なお、ステップSE17以降、及びステップSA26以降は、図示を省略)は、図14に示すステップSA26、ステップSE17からステップSE19の処理、及びステップSC11の処理と同様であるので、ここでは説明を省略する。
〔第5の実施形態のまとめ〕
以上説明してきたように、本実施形態の相互送客システム500aにおいて、ユーザ端末100(端末装置の一例)は、管理サーバ200と通信可能な端末装置である。ここで、管理サーバ200は、管理の対象となる複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報に基づいて、ユーザ端末100にインストールされている対象アプリケーションのインストール情報を管理する。ユーザ端末100は、インストール通知部103と、インストール通知部103と、リスト取得部109と、リスト生成部112と、表示制御部105と、を備えている。インストール通知部103は、自ユーザ端末100にインストールされた対象アプリケーションのインストール通知情報を管理サーバ200に対して送信する。リスト取得部109は、管理サーバ200においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションのアプリケーションリストを管理サーバ200から取得する。リスト生成部112は、リスト取得部109が取得したアプリケーションリストに含まれる対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーション(管理の対象となる前の対象アプリケーションの一例)を除いたアプリケーションリストを生成し直す。そして、表示制御部105は、リスト生成部112が生成したアプリケーションリストに基づいて対象アプリケーションの一覧LTを表示部120に表示させる。
これにより、例えば、SDK3011を組み込んでいない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合であっても、本実施形態のユーザ端末100は、旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストに基づいた対象アプリケーションの一覧LTをユーザに提示することができる。つまり、ユーザ端末100は、第3及び第4の実施形態と同様に、対象アプリケーションのバージョンに関わらず、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。
また、本実施形態では、リスト取得部109は、アプリケーションリストとともに、アプリケーションリストに含まれる対象アプリケーションに対応するURLスキームを取得する。そして、リスト生成部112は、リスト取得部109が取得したURLスキームを利用して、アプリケーションリストに含まれる対象アプリケーションのうち、自ユーザ端末100にインストールされている旧バージョンの対象アプリケーションを検出する。
これにより、本実施形態のユーザ端末100は、例えば、ユーザ端末100において、URLスキームがオープン可能か否かを判定するという簡易な手段により、旧バージョンの対象アプリケーションを検出することができる。
〔対象アプリケーションの一覧の表示例〕
以下、図29を参照して、本実施形態の相互送客システム500aにおいて、ユーザ端末100が生成して表示部120に表示させる対象アプリケーションの一覧LTの表示例を説明する。図29は、本実施形態による対象アプリケーションの一覧LTの表示例を示す図である。
ここでは、ユーザ端末100には、送客元となる対象アプリケーション10A(ゲームA)、旧バージョンの対象アプリケーション10B(ゲームC)、及び対象アプリケーション10F(ゲームG)がインストールされているものとする。ここで、対象アプリケーション10A(ゲームA)及び対象アプリケーション10F(ゲームG)は、ユーザ端末100において起動したときに、それぞれインストール通知情報を管理サーバ200に送信済みであるとする。従って、管理サーバ200は、対象アプリケーション10A(ゲームA)及び対象アプリケーション10F(ゲームG)がユーザ端末100にインストールされていることを示すインストール情報を管理している。なお、対象アプリケーション10D(ゲームE)及び対象アプリケーション10E(ゲームF)は、ユーザ端末100にインストールされていない対象アプリケーションの例である。即ち、管理サーバ200は、ユーザ端末100に対応する、対象アプリケーション10B(ゲームC)、対象アプリケーション10D(ゲームE)、及び対象アプリケーション10E(ゲームF)のインストール情報を管理していない。
図29(a)、(b)、(c)は、ユーザ端末100が、管理サーバ200から取得したアプリケーションリストに、管理サーバ200においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報が含まれ、ユーザ端末100に対応するインストール情報が管理されている対象アプリケーションを示す情報が含まれない場合に、当該アプリケーションリストに基づいて生成する対象アプリケーションの一覧LTの表示例を示している。
まず、図29(a)は、ユーザ端末100が、取得したアプリケーションリストにより示される対象アプリケーションの一覧LTを生成したときの表示例を示す。ここでは、アプリケーションリストにより示される対象アプリケーションは、管理サーバ200においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーション10B(ゲームC)、対象アプリケーション10D(ゲームE)、及び対象アプリケーション10E(ゲームF)である。この図29(a)に示す対象アプリケーションの一覧LTには、対象アプリケーション10B(ゲームC)を示す情報(L10)、対象アプリケーション10D(ゲームE)を示す情報(L20)、及び対象アプリケーション10E(ゲームF)を示す情報(L30)が、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報として表示される。ここでは、対象アプリケーション10B(ゲームC)の旧バージョンがユーザ端末100にインストールされているが、管理サーバ200においてユーザ端末100に対応する対象アプリケーション10B(ゲームC)のインストール情報を管理していないため、対象アプリケーション10B(ゲームC)を示す情報もユーザ端末100に未インストールの対象アプリケーションとして表示される。
図29(b)は、ユーザ端末100が、取得したアプリケーションリストにより示される対象アプリケーションのうちから旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTを生成したときの表示例を示す。この図29(b)に示す対象アプリケーションの一覧LTには、アプリケーションリストにより示される対象アプリケーション10B(ゲームC)、対象アプリケーション10D(ゲームE)、及び対象アプリケーション10E(ゲームF)のうちから、旧バージョンがインストールされている対象アプリケーション10B(ゲームC)を除いて、対象アプリケーション10D(ゲームE)を示す情報(L20)及び対象アプリケーション10E(ゲームF)を示す情報(L30)が、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報として表示される。
図29(c)は、ユーザ端末100が、取得したアプリケーションリストにより示される対象アプリケーションのうちの旧バージョンの対象アプリケーションを区別可能な対象アプリケーションの一覧LTを生成したときの表示例を示す。例えば、ユーザ端末100のリスト生成部112は、アプリケーションリストにより示される対象アプリケーションのうちから、URLスキームを利用して検出したユーザ端末100にインストールされている旧バージョンの対象アプリケーションをユーザが区別可能な対象アプリケーションの一覧LTを生成してもよい。この図29(c)に示す対象アプリケーションの一覧LTには、対象アプリケーション10B(ゲームC)を示す情報(L10)、対象アプリケーション10D(ゲームE)を示す情報(L20)、及び対象アプリケーション10E(ゲームF)を示す情報(L30)が表示されるとともに、対象アプリケーション10D(ゲームE)を示す情報(L20)及び対象アプリケーション10E(ゲームF)を示す情報(L30)には、それぞれ、ユーザ端末100にインストールされていないことを示す情報(ここでは「未インストール」)が、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報として表示される。
よって、ユーザ端末100は、取得したアプリケーションリストにより示される対象アプリケーションのうち、ユーザ端末100に旧バージョンがインストールされている対象アプリケーションをユーザが区別可能な対象アプリケーションの一覧LTを生成してユーザに提示することができる。
なお、対象アプリケーション10B(ゲームC)を示す情報(L10)に、旧バージョンがインストールされていることを示す情報を表示するようにしてもよい。
また、管理サーバ200から取得するアプリケーションリストには、さらに、インストール情報が管理されている少なくとも一の対象アプリケーションを示す情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報が含まれていてもよい。
図29(d)、(e)、(f)は、ユーザ端末100が、管理サーバ200から取得したアプリケーションリストに、管理サーバ200において、ユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報、インストール情報が管理されている少なくとも一の対象アプリケーションを示す情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報が含まれている場合に、当該アプリケーションリストに基づいて生成する対象アプリケーションの一覧LTの表示例を示している。
図29(d)は、ユーザ端末100が、取得したアプリケーションリストにより示される対象アプリケーションのうちから旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTを生成したときの表示例を示す。ここでは、アプリケーションリストにより示される対象アプリケーション10A(ゲームA)、対象アプリケーション10B(ゲームC)、対象アプリケーション10D(ゲームE)、対象アプリケーション10E(ゲームF)、及び対象アプリケーション10F(ゲームG)のうちから、旧バージョンがインストールされている対象アプリケーション10B(ゲームC)が除かれる。従って、この図29(d)に示す対象アプリケーションの一覧LTには、対象アプリケーション10D(ゲームE)を示す情報(L20)、対象アプリケーション10E(ゲームF)を示す情報(L30)、対象アプリケーション10A(ゲームA)を示す情報(L40)、及び対象アプリケーション10F(ゲームG)を示す情報(L50)が表示される。また、対象アプリケーション10A(ゲームA)を示す情報(L40)、及び対象アプリケーション10F(ゲームG)を示す情報(L50)には、それぞれ、ユーザ端末100にインストールされていることを示す情報(ここでは「インストール済」)が表示される。つまり、対象アプリケーション10D(ゲームE)を示す情報(L20)及び対象アプリケーション10E(ゲームF)を示す情報(L30)が、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報であることを示している。ここで、ユーザ端末100は、このユーザ端末100にインストールされていることを示す情報(ここでは「インストール済」)を、アプリケーションリストに含まれる区別情報に基づいて生成する。
これにより、ユーザ端末100は、取得したアプリケーションリストにより示される対象アプリケーションのうち、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能な対象アプリケーションの一覧LTを生成してユーザに提示することができる。
図29(e)は、ユーザ端末100が、取得したアプリケーションリストにより示される対象アプリケーションのうちから旧バージョンの対象アプリケーションを除かずに対象アプリケーションの一覧LTを生成したときの表示例を示す。この図29(e)に示す対象アプリケーションの一覧LTでは、図29(d)に示すアプリケーションの一覧LTに対して、対象アプリケーション10B(ゲームC)を示す情報(L10)がさらに表示される点が異なる。また、対象アプリケーション10B(ゲームC)を示す情報(L10)には、当該対象アプリケーション10B(ゲームC)の旧バージョンがインストールされていることを示す情報(ここでは、「旧バージョンインストール済」)が表示される。
これにより、ユーザ端末100は、取得したアプリケーションリストにより示される対象アプリケーションのうち、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能な対象アプリケーションの一覧LTを生成してユーザに提示することができる。また、ユーザ端末100は、ユーザ端末100にインストールされている旧バージョンがインストールされている対象アプリケーションをユーザが区別可能なように対象アプリケーションの一覧LTをユーザに提示することができる。
なお、図29(e)に示す対象アプリケーションの一覧LTにおいて、旧バージョンがインストールされている対象アプリケーションを区別可能な情報を表示しなくともよい。例えば、図29(f)に示すように、対象アプリケーション10B(ゲームC)を示す情報(L10)には、ユーザ端末100にインストールされていることを示す情報(ここでは「インストール済」)が表示されてもよい。
これにより、ユーザ端末100は、取得したアプリケーションリストにより示される対象アプリケーションのうち、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能な対象アプリケーションの一覧LTを生成してユーザに提示することができる。
なお、図29(d)、(e)、(f)に示す対象アプリケーションの一覧LTにおいて、ユーザ端末100にインストールされている対象アプリケーションを示す情報に、ユーザ端末100にインストールされていることを示す情報(ここでは「インストール済」)が表示されることに代えて又は加えて、ユーザ端末100にインストールされていない対象アプリケーションを示す情報に、ユーザ端末100にインストールされていないことを示す情報(例えば「未インストール」)が表示されるようにしてもよい。
<第6の実施形態>
次に、本発明の第6の実施形態を説明する。第3、第4、及び第5の実施形態では、SDK11が組み込まれていない旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合に、このインストールされている旧バージョンの対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する形態について説明した。本実施形態では、ユーザ端末100にインストールされた対象アプリケーションのうち起動したことのない対象アプリケーションがある場合、この起動したことのない対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する形態について説明する。
例えば、対象アプリケーションをストアサイトからダウンロードしてユーザ端末100にインストールしても、その対象アプリケーションは、起動しなければ(実行されなければ)管理サーバ200に対してインストール通知情報を送信することができない。そのため、管理サーバ200は、旧バージョンの対象アプリケーションの場合と同様に、この起動したことのない対象アプリケーションはユーザ端末100にインストールされていないものと認識することになる。したがって、例えば、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザに提示する対象アプリケーションの一覧LTに、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションが含まれることがある。
そこで、本実施形態では、第3、第4、及び第5の実施形態において説明した旧バージョンの対象アプリケーションを除外する場合と同様の処理を用いて、ユーザ端末100にインストールされた対象アプリケーションのうち起動したことのない対象アプリケーションを除外した対象アプリケーションの一覧LTをユーザに提示する形態について説明する。
〔第6の実施形態による相互送客システムの概要〕
図30は、本実施形態の相互送客システム500aの概要を説明する説明図である。
この図30に示すネットワークシステム1aは、図18に示す構成と同様に、管理サーバ200aと、ユーザ端末100とを備えている。ここでは、ユーザ端末100に、旧バージョンの対象アプリケーション10B(例えばゲームC)に代えて、相互送客システム500aに対応したSDK1011を備えている対象アプリケーション10C(例えばゲームD)がインストールされている点が、図18に示す構成と異なる。なお、この図30において、図18の各部に対応する部分には同一の符号を付けている。
この図30を参照して、本実施形態の相互送客システム500aの概要を説明する。
(1)対象アプリケーション10Aがユーザ端末100にインストールされ、ユーザXによって最初に起動した際に、対象アプリケーション10Aに組み込まれたSDK1011は、対象アプリケーション10Aがユーザ端末100にインストールされたことを示すインストール通知情報(ゲームA)を送信する。これにより、管理サーバ200aは、SDK1011から取得したインストール通知情報に基づいて、ユーザ端末100に対象アプリケーション10Aがインストールされたことを示すインストール情報を管理する。
一方、対象アプリケーション10Cはユーザ端末100にインストールされているが起動したことがないため、対象アプリケーション10Cに組み込まれたSDK1011は、インストール通知情報を管理サーバ200へ送信していない。つまり、管理サーバ200aは、対象アプリケーション10Cがユーザ端末100にインストールされたことを示すインストール通知情報を取得していないため、対象アプリケーション10Cがユーザ端末100にはインストールされていないものと認識している。
(2)対象アプリケーション10AのSDK1011は、管理サーバ200aがユーザ端末100からインストール通知情報を取得していない対象アプリケーションを示す未インストール情報を管理サーバ200aから取得する。なお、この対象アプリケーション10Aは、第1及び第2の実施形態における送客元アプリ10と同様の機能を有する送客元アプリに対応する。
(3)対象アプリケーション10AのSDK1011は、管理サーバ200aから取得した未インストール情報により示される対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことがない対象アプリケーション(例えば対象アプリケーション10C)が、ユーザ端末100にインストールされているか否かを検出(インストール検出)する。つまり、未インストール情報は、ユーザ端末100において検出すべき「ユーザ端末100にインストールされているが起動したことがない対象アプリケーション」の候補を示すものと言える。SDK1011は、例えば、URLスキームを利用して「ユーザ端末100にインストールされているが起動したことがない対象アプリケーション」がユーザ端末100にインストールされているか否かを検出する。ここでは、SDK1011は、未インストール情報により示される対象アプリケーションのうち「ユーザ端末100にインストールされているが起動したことがない対象アプリケーション」として、対象アプリケーション10Cがユーザ端末100にインストールされていると検出する。
(4)対象アプリケーション10AのSDK1011は、対象アプリケーション10C(ゲームD)がインストールされていることを示すインストール通知情報を管理サーバ200aに送信する。これにより、管理サーバ200aは、SDK1011から取得したインストール通知情報(ゲームD)に基づいて、ユーザ端末100に対象アプリケーション10Cがインストールされていることを示すインストール情報を管理する。なお、管理サーバ200aは、ユーザ端末100にインストールされている対象アプリケーションが起動したことがあるか否かを含めて管理するようにしてもよい。
(5)管理サーバ200aは、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、対象アプリケーション10Cを除いたアプリケーションリスト(ゲームDを含めない)をユーザ端末100に対して送信する。
すなわち、管理サーバ200aは、管理している複数の対象アプリケーションのうち、ユーザ端末100にインストールされて起動した対象アプリケーションのインストール情報と、ユーザ端末100にインストールされているが起動したことがない対象アプリケーションのインストール情報とのいずれも管理していない少なくとも一の対象アプリケーションのアプリケーションリストを生成する。
そして、管理サーバ200aは、生成したアプリケーションリストをユーザ端末100に対して送信する。ユーザ端末100は、管理サーバ200aから送信された上述のアプリケーションリストに基づいて、ユーザに対してインストールを勧める対象アプリケーションとして、対象アプリケーション10Cを除いた対象アプリケーションの一覧LTを表示部120に表示する。
このように、本実施形態による相互送客システム500aは、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションがある場合であっても、当該起動したことのない対象アプリケーションを除いた対象アプリケーションの一覧LTを表示部120に表示させてユーザに提示することができる。
なお、「ユーザ端末100にインストールされているが起動したことのない対象アプリケーション」と、第3、第4、及び第5の実施形態において説明した「ユーザ端末100にインストールされている旧バージョンの対象アプリケーション」とは、管理サーバ200aに対してインストール通知情報を送信していない理由が異なるが、ユーザ端末100にインストールされているにもかかわらずインストール通知情報を送信していない対象アプリケーションであることには違いがない。そのため、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションと、旧バージョンの対象アプリケーションとは、いずれも未インストール情報により示される対象アプリケーションに含まれる。そして、この未インストール情報により示される対象アプリケーションのうちから、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出する処理は、旧バージョンの対象アプリケーションを検出する処理と同様に、例えばURLスキームを利用して検出する処理とすることができる。
したがって、本実施形態においても、ユーザ端末100に旧バージョンの対象アプリケーションがインストールされている場合には、未インストール情報のうちから旧バージョンの対象アプリケーションを除外することができる。また、ユーザ端末100に旧バージョンの対象アプリケーションがインストールされており、且つユーザ端末100にインストールされているが起動したことのない対象アプリケーションもある場合には、未インストール情報のうちから、旧バージョンの対象アプリケーションと起動したことのない対象アプリケーションのいずれも除外することができる。
次に、本実施形態の構成及び処理を詳しく説明する。
本実施形態の構成及び処理は、上記第3、第4、及び第5の実施形態で説明したそれぞれの構成及び処理を適用することができる。
以下に、上記第3、第4、及び第5の実施形態で説明したそれぞれの構成及び処理を適用した本実施形態の構成及び処理を、第1例〜第3例として説明する。
〔第6の実施形態の構成及び処理の第1例〕
本実施形態の構成及び処理として、例えば、図19から図23を参照して説明した第3の実施形態の構成及び処理を適用することができる。
本実施形態のユーザ端末100のSDK1011に基づいて実行する機能構成として、図19に示す機能構成を適用してもよい。SDK1011は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106と、報酬付与通知部107と、仮インストール通知部108と、リスト取得部109と、未インストール情報取得部111とを備えている。本実施形態では、この図19に示すSDK1011の機能構成において、仮インストール通知部108が、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出する。そして、仮インストール通知部108は、検出した当該対象アプリケーションがユーザ端末100にインストールされていることを示す仮インストール通知情報を管理サーバ200aに対して送信する。
具体的には、仮インストール通知部108は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出する場合、例えば、旧バージョンの対象アプリケーションを検出する処理と同様に、未インストール情報取得部111が取得したURLスキームを利用して検出する。
なお、URLスキームを利用せずに、OSの機能によりユーザ端末100にインストール済みの対象アプリケーションを示す情報を取得可能な場合には、仮インストール通知部108は、このインストール済みの対象アプリケーションを示す情報を用いることにより、未インストール情報取得部111が取得した未インストール情報により示される対象アプリケーションのうちから、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出してもよい。
また、旧バージョンの対象アプリケーションとは違って、この起動したことのない対象アプリケーションにはSDK1011が組み込まれている。そのため、SDK1011が、ユーザ端末100にインストールされている対象アプリケーションどうしを検出する機能を具備して、未インストール情報取得部111が取得した未インストール情報により示される対象アプリケーションのうちから、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出してもよい。
また、本実施形態では、図20に示す管理サーバ200aの構成において、仮インストール通知取得部247は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションがある場合、当該起動したことのない対象アプリケーションがユーザ端末100にインストールされていることを示す仮インストール通知情報を、対象アプリケーション10Aから取得する。例えば、仮インストール通知取得部247は、未インストール情報通知部248が送信した未インストール情報により示される対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションの仮インストール通知情報を、対象アプリケーション10Aから取得する。そして、仮インストール通知取得部247は、取得した仮インストール通知情報を、インストール情報管理部222に供給する。
インストール情報管理部222は、仮インストール通知取得部247が取得した仮インストール通知情報に基づいて、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションのインストール情報をインストール情報記憶部236に記憶させる。インストール情報記憶部236に記憶されるインストール情報は、例えば、図22に示す旧バージョンの対象アプリケーションのインストール情報と同様に、仮インストール通知情報に基づいて記憶されたインストール情報であるため、通知タイプ(Ttype)が「1」として記憶される。なお、このユーザ端末100にインストールされているが起動したことのない対象アプリケーションの通知タイプ(Ttype)は、旧バージョンの対象アプリケーションとも区別可能なように、「0」及び「1」以外の通知タイプ(例えば「2」)としてもよい。
また、本実施形態による処理として、例えば図23に示す処理を適用してもよい。
例えば、ステップSA173の処理において、対象アプリケーション10AのSDK1011Aの仮インストール通知部108が、未インストール情報取得部111が取得した未インストール情報に含まれるURLスキームを用いて、未インストールの対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出する。そして、仮インストール通知部108は、管理サーバ200aに対してインストール確認の結果を通知する(ステップSA174)。すなわち、仮インストール通知部108は、ユーザ端末100にインストールされているが起動したことがないと検出した対象アプリケーションを示す仮インストール通知情報を、旧バージョンの対象アプリケーションを示す仮インストール通知情報と同様に管理サーバ200aに対して送信する。なお、ユーザ端末100に、起動したことのない対象アプリケーションが存在しなかった場合には、仮インストール通知情報として、起動したことのない対象アプリケーションが存在しない旨の情報を通知するようにしてもよい。
これにより、管理サーバ200aは、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションのインストール情報を管理する(ステップSE113a)ことができる。
続くステップSA24以降の処理(なお、ステップSE15以降、及びステップSA25以降は、図示を省略)は、図23を参照して説明したように、図14に示すステップSA24からステップSA26、ステップSE15からステップSE19の処理、及びステップSC11の処理と同様であるので、ここでは説明を省略する。
例えば、ステップSE15及びステップSE16において、管理サーバ200aのリスト通知部242は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリストを抽出する。そして、リスト通知部242は、抽出した対象アプリケーションのアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザ端末100において表示するためのアプリ一覧ページのデータを生成する。なお、リスト通知部242は、一の対象アプリケーションも抽出できなかった場合には、ユーザに対してその旨を通知する情報を当該データに含めてもよい。なお、対象アプリケーションのアプリケーションリストをユーザ端末100に送信し、対象アプリケーション10AのSDK1011Aにおいて、取得したアプリケーションリストに基づいて、対象アプリケーションの一覧LTをユーザ端末100で表示するためのデータを生成するようにしてもよい。
これにより、管理サーバ200aは、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信することができる。よって、ユーザ端末100は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。
なお、ユーザ端末100にインストールされている対象アプリケーションのうち、旧バージョンの対象アプリケーションと起動したことない対象アプリケーションとのいずれも同様に検出してアプリケーションリストから除外してもよい。
〔第6の実施形態の構成及び処理の第2例〕
本実施形態の構成及び処理として、例えば、図24から図26を参照して説明した第4の実施形態の構成及び処理を適用してもよい。
例えば、本実施形態の相互送客システム500aの構成において、図24に示すユーザ端末100のSDK2011に基づいて実行する機能構成と図25に示す管理サーバ200bの構成とを適用してもよい。
SDK2011は、未インストール情報取得部111を備えていない点が、上述の第1例において説明した図19に示すSDK1011の構成と異なる。また、管理サーバ200bは、未インストール情報通知部248を備えていない点が、上述の第1例において説明した図20に示す管理サーバ200aの構成と異なる。
すなわち、ユーザ端末100は、未インストール情報を管理サーバ200bから取得せずに、ユーザ端末100にインストールされている全ての対象アプリケーションを起動したことのない対象アプリケーションの候補とみなして、当該起動したことのない対象アプリケーションの仮インストール通知情報を管理サーバ200bに送信してもよい。なお、このとき対象アプリケーション10Aを除外してもよい。そして、管理サーバ200bでは、インストール情報管理部222が管理する情報と比較して、インストール情報管理部222が管理していない対象アプリケーションを起動したことのない対象アプリケーションであると特定してもよい。
また、本実施形態による処理として、図26に示す処理を適用してもよい。
例えば、ステップSA173aにおいて、対象アプリケーション10AのSDK2011Aの仮インストール通知部108は、URLスキームを利用して、ユーザ端末100にインストールされている対象アプリケーションを検出してもよい。ここでは、仮インストール通知部108は、ユーザ端末100にインストールされている対象アプリケーションのうち、起動したことのある対象アプリケーションを検出するとともに、起動したことない対象アプリケーションを検出してもよい。そして、ステップSA174aにおいて、仮インストール通知部108は、検出した対象アプリケーションを示す仮インストール通知情報を管理サーバ200bに対して送信してもよい。
これにより、上述した第1例と同様に、管理サーバ200aは、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションのインストール情報を管理することができる。また、管理サーバ200aは、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信することができる。よって、ユーザ端末100は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。
なお、この第2例においても、ユーザ端末100にインストールされている対象アプリケーションのうち、旧バージョンの対象アプリケーションと起動したことない対象アプリケーションとのいずれも同様に検出してアプリケーションリストから除外してもよい。
〔第6の実施形態の構成及び処理の第3例〕
本実施形態の構成及び処理として、例えば、図27及び図28を参照して説明した第5の実施形態の構成及び処理を適用してもよい。
例えば、本実施形態の相互送客システム500aの構成において、図27に示すユーザ端末100のSDK3011に基づいて実行する機能構成を適用してもよい。SDK3011は、仮インストール通知部108と、未インストール情報取得部111と、を備えていない点、及びリスト生成部112を備えた点が上述の第1例において説明した図19に示すSDK1011の構成と異なる。本実施形態では、リスト生成部112は、リスト取得部109が取得した対象アプリケーションのアプリケーションリストに含まれる対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いたアプリケーションリストを生成してもよい。
すなわち、本実施形態では、管理サーバ200は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを対象アプリケーションのアプリケーションリストから除外せずにユーザ端末100に送信してもよい。そして、ユーザ端末100において、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを、管理サーバ200から取得したアプリケーションリストから除外したアプリケーションリストを生成して(生成し直して)、生成したアプリケーションにリストに基づく対象アプリケーションの一覧LTをユーザに提示してもよい。
また、本実施形態による処理として、図28に示す処理を適用してもよい。
例えば、ステップSA241において、対象アプリケーション10AのSDK3011Aのリスト生成部112は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを確認してもよい。具体的には、リスト生成部112は、リスト取得部109が取得したアプリケーションリストに含まれるURLスキームを利用して、対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを特定してもよい。すなわち、リスト生成部112は、アプリケーションリストに含まれる対象アプリケーションのうち、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを検出してもよい。
そして、ステップSA242において、リスト生成部112は、対象アプリケーションのアプリケーションリストから、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを削除してもよい。すなわち、リスト生成部112は、アプリケーションリストに含まれる対象アプリケーションのうち、URLスキームを利用して検出した、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを生成し直してもよい。
また、ステップSA25aにおいて、SDK3011Aの表示制御部105は、リスト生成部112が生成した対象アプリケーションのアプリケーションリストに基づいて対象アプリケーションの一覧LTを表示部120に表示してもよい。
これにより、ユーザ端末100は、ユーザ端末100にインストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。
なお、この第3例においても、ユーザ端末100にインストールされている対象アプリケーションのうち、旧バージョンの対象アプリケーションと起動したことない対象アプリケーションとのいずれも同様に検出してアプリケーションリストから除外してもよい。
なお、本実施形態における対象アプリケーションの一覧LTの表示例として、図29に示す表示例を適用してもよい。例えば、図29に示す対象アプリケーションの一覧LTの表示例において、「旧バージョンの対象アプリケーション」を「インストールされているが起動したことがない対象アプリケーション」とすることで、同様に適用することができる。
<第3〜第6の実施形態について:その1>
以上説明した第3〜第6の実施形態について、以下のように記載することができるが、以下の記載に限られるものではない。
(1)相互送客システム500aにおいて、管理サーバ200a(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241(第1情報取得部の一例)と、仮インストール通知取得部247(第3情報取得部の一例)と、インストール情報管理部222と、リスト通知部242(第2情報通知部の一例)と、を備えている。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちの対象アプリケーション10A(第1アプリケーションの一例)がユーザ端末100により実行されたことに応じてユーザ端末100から送信されたインストール通知情報(第1情報の一例)を取得する。仮インストール通知取得部247は、対象アプリケーション10Aから、複数の対象アプリケーションのうち対象アプリケーション10A以外の対象アプリケーションである他アプリケーション(例えば、旧バージョンの対象アプリケーション10B、又は対象アプリケーション10C)がユーザ端末100にインストールされていることを示す仮インストール通知情報(第3情報の一例)を取得する。インストール情報管理部222(インストール情報管理部の一例)は、インストール通知取得部241が取得したインストール通知情報及び仮インストール通知取得部247が取得した仮インストール通知情報に基づいて、ユーザ端末100にいずれの対象アプリケーションがインストールされたかを示すインストール情報を管理する。そして、リスト通知部242は、インストール情報管理部222が管理するインストール情報に基づいて、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報)を、ユーザ端末100に対して送信する。ここで、ユーザ端末100に対応するインストール情報とは、例えば、対象アプリケーションがユーザ端末100により実行されたことに応じてユーザ端末100から送信されたインストール通知情報のことをいう。
なお、管理サーバ200a(管理装置の一例)は、少なくとも、アプリケーション管理部221と、インストール通知取得部241(第1情報取得部の一例)と、仮インストール通知取得部247(第3情報取得部の一例)と、リスト通知部242(第2情報通知部の一例)と、を備えてもよい。そして、リスト通知部242は、ユーザ端末100からインストール通知情報(第1情報の一例)及び仮インストール通知情報(第3情報の一例)のいずれも取得していない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報)を、ユーザ端末100に対して送信してもよい。
これにより、本実施形態の管理サーバ200aは、ユーザ端末100に対応するインストール通知情報を取得していない対象アプリケーションを示すアプリケーションリストをユーザ端末100に送信する際に、インストール通知情報を取得していない対象アプリケーションのうちユーザ端末100にインストールされている対象アプリケーションを除いた対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。よって、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(2)ここで、複数の対象アプリケーションには、管理サーバ200aのアプリケーション管理部221による管理の対象となる以前にユーザ端末100にインストール可能に提供され、当該提供後に当該管理の対象となった旧バージョンの対象アプリケーションが含まれる。
そして、対象アプリケーション10A以外にユーザ端末100にインストールされている対象アプリケーションである他アプリケーションは、例えば、複数の対象アプリケーションのうち、アプリケーション管理部221による管理の対象となる以前にユーザ端末100にインストールされた旧バージョンの対象アプリケーションであってもよい。
この旧バージョンの対象アプリケーション(他アプリケーションの一例)は、複数の対象アプリケーションのうちのユーザ端末100にインストールされた対象アプリケーションであって、インストール通知情報(第1情報の一例)を管理サーバ200に送信する機能を具備しない対象アプリケーションである。なお、インストール通知情報を管理サーバ200に送信する機能とは、例えば、SDK1011(2011、3011)の機能である。つまり、この旧バージョンの対象アプリケーションは、例えばSDK1011(2011、3011)が組み込まれていないものである。
これにより、例えば、SDK1011を組み込んでいない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合であっても、本実施形態の管理サーバ200aは、旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信することができる。よって、本実施形態によれば、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。すなわち、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(3)なお、上述の他アプリケーションは、複数の対象アプリケーションのうちのユーザ端末100にインストールされた対象アプリケーションであって、ユーザ端末100からインストール通知情報(第1情報の一例)を管理サーバ200aに送信していない対象アプリケーション、即ち、インストール通知情報を管理サーバ200aのインストール通知取得部241(第1情報取得部の一例)が取得していない対象アプリケーションであってもよい。
これにより、例えば、ユーザ端末100にインストールされているが起動したことがない対象アプリケーションがある場合であっても、本実施形態の管理サーバ200aは、このインストールされているが起動したことがない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。よって、本実施形態によれば、インストール済みの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。すなわち、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(4)また、管理サーバ200aは、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報(第1情報の一例)が管理されていない対象アプリケーションを示す未インストール情報(第4情報の一例)を、ユーザ端末100に対して送信する未インストール情報通知部248(第4情報通知部の一例)を備えている。この未インストール情報は、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補、又はインストールされているが起動したことがない対象アプリケーションの候補を示すものと言える。
そして、仮インストール通知取得部247(第3情報取得部の一例)は、未インストール情報通知部248が送信した未インストール情報により示される対象アプリケーションのうち、ユーザ端末100にインストールされている上述の他アプリケーションを示す仮インストール通知情報(第3情報の一例)を、対象アプリケーション10A(第1アプリケーションの一例)から取得する。
なお、未インストール情報通知部248は、複数の対象アプリケーションのうち、インストール通知取得部241(第1情報取得部の一例)が、対象アプリケーション10A(第1アプリケーションの一例)からインストール通知情報(第1情報の一例)を取得していない対象アプリケーションを示す未インストール情報(第4情報の一例)を、ユーザ端末100に対して送信してもよい。
また、未インストール情報通知部248は、複数の対象アプリケーションのうち対象アプリケーション10Aからインストール通知情報及び仮インストール通知情報のいずれも取得していない対象アプリケーションを示す未インストール情報を、ユーザ端末100に対して送信してもよい。
これにより、管理サーバ200aは、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補、又はインストールされているが起動したことがない対象アプリケーションの候補を未インストール情報として通知することで、ユーザ端末100において旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションとして検出すべき対象を明確にすることができる。その結果として、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの抽出の処理量を低減することができる。また、対象アプリケーション10Aは、この旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
また、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを管理することができる。その結果として、本実施形態の管理サーバ200aは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示することができる。
(5)また、管理サーバ200aの未インストール情報通知部248(第4情報通知部の一例)は、アプリケーション管理部221が管理する前記複数の対象アプリケーションに関する情報とインストール情報管理部222とが管理するインストール情報とに基づいて、未インストール情報(第4情報の一例)を、ユーザ端末100に対して送信する。ここで、未インストール情報は、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す。
これにより、未インストール情報通知部248は、管理の対象となる複数の対象アプリケーションに関する情報を管理するアプリケーション管理部221が管理する情報を参照して抽出した全対象アプリケーションと、インストール情報管理部222が管理するインストール情報を参照して抽出されるユーザ端末100に対応するインストール情報が管理されている対象アプリケーションとを比較することにより、ユーザ端末100に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を特定することが可能となる。この未インストール情報は、ユーザ端末100において検出すべき旧バージョンの対象アプリケーションの候補又はインストールされているが起動したことがない対象アプリケーションを示すものと言える。
なお、管理サーバ200aは、対象アプリケーション10A(第1アプリケーションの一例)から、旧バージョンの対象アプリケーション(ゲームCとは異なる旧バージョンのゲーム)又はインストールされているが起動したことがない対象アプリケーション(ゲームDとは異なる対象アプリケーション)に対する仮インストール通知情報を取得している場合には、インストール情報管理部222は、インストール通知情報または仮インストール通知情報を送信した対象アプリケーションと、当該対象アプリケーションがインストールされたユーザ端末100と、を関連付けて管理してもよい。そして、未インストール情報通知部248は、複数の対象アプリケーションのうち対象アプリケーション10Aからインストール通知情報および仮インストール通知情報のうちいずれも取得していない対象アプリケーションを示す未インストール情報を、対象アプリケーション10Aに対して送信するようにしてもよい。
(6)また、相互送客システム500aにおいて、ユーザ端末100(端末装置の一例)は、管理サーバ200aと通信可能な端末装置である。ここで、管理サーバ200aは、管理の対象となる複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーションから、当該対象アプリケーションがユーザ端末100にインストールされたことを示すインストール通知情報(第1情報の一例)と、当該対象アプリケーション以外の対象アプリケーションである他アプリケーションがユーザ端末100にインストールされていることを示す仮インストール通知情報(他インストール通知情報の一例、第3情報の一例)とに基づいて、ユーザ端末100にいずれの対象アプリケーションがインストールされたかを示すインストール情報を管理する。
ユーザ端末100は、インストール通知部103と、仮インストール通知部108(他インストール通知部の一例)と、リスト取得部109(取得部の一例)と、表示制御部105と、を備えている。インストール通知部103は、ユーザ端末100(自端末装置の一例)にインストールされた対象アプリケーションのインストール通知情報を管理サーバ200aに対して送信する。仮インストール通知部108は、ユーザ端末100にインストールされている他アプリケーションを検出して、検出した他アプリケーションの他インストール通知情報(例えば、仮インストール通知情報)を管理サーバ200aに対して送信する。ここで、他アプリケーションとは、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションとのいずれも含まれる。また、他インストール通知情報とは、旧バージョンの対象アプリケーションの仮インストール通知情報と、インストールされているが起動したことがない対象アプリケーションの仮インストール通知情報とのいずれも含まれる。そして、リスト取得部109は、管理サーバ200aにおいてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(アプリケーション通知情報の一例、第2情報の一例)を管理サーバ200aから取得する。そして、表示制御部105は、リスト取得部109が取得したアプリケーションリストに基づく対象アプリケーションの一覧LT(表示情報の一例)を表示部120に表示させる。
なお、リスト取得部109は、インストール通知情報及び仮インストール通知情報(他インストール通知情報の一例)のいずれもユーザ端末100から送信していない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリストを管理サーバ200aから取得するものとして捉えることができる。
これにより、例えば、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合、または、ユーザ端末100にインストールされているが起動したことがない対象アプリケーションがある場合、本実施形態のユーザ端末100は、旧バージョンの対象アプリケーション又は起動したことがない対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを取得して、取得したアプリケーションリストに基づく対象アプリケーションの一覧LTをユーザに提示することができる。よって、本実施形態のユーザ端末100は、対象アプリケーションのバージョンに関わらず、ユーザ端末100にインストールされていない対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信することができる。その結果として、ユーザに対してインストールを勧める対象アプリケーションを提示する場合にユーザ端末100にインストールされていない対象アプリケーションの一覧LTをユーザ端末100においてユーザに提示することができる。すなわち、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(7)また、ユーザ端末100は、管理サーバ200aにおいてユーザ端末100(自端末装置の一例)に対応するインストール情報が管理されていない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得する未インストール情報取得部111、を備えている。
そして、仮インストール通知部108は、未インストール情報取得部111が取得した未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている他アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)の仮インストール通知情報を管理サーバ200aに対して送信する。
なお、ユーザ端末100は、複数の対象アプリケーションのうちインストール通知情報をユーザ端末100(自端末装置の一例)から送信していない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得する未インストール情報取得部111を備えていてもよい。
また、未インストール情報取得部111は、複数の対象アプリケーションのうちインストール通知情報および仮インストール通知情報(他インストール通知情報の一例)のいずれもユーザ端末100から送信していない対象アプリケーションを示す未インストール情報を、管理サーバ200aから取得してもよい。
これにより、ユーザ端末100の対象アプリケーション10Aは、例えば、取得した未インストール情報のうちから、ユーザ端末100にインストールされている旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを抽出するので、全対象アプリケーションのうちから抽出する場合に比べて、この旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの抽出の処理量を低減することができる。また、本実施形態のユーザ端末100は、この旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの抽出のための処理時間を、全対象アプリケーションのうちから抽出する場合に比べて短縮することができる。
(8)仮インストール通知部108(他インストール通知部の一例)は、ユーザ端末100(自端末装置の一例)が具備する機能を用いて、未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている他アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)を検出する。
ここで、ユーザ端末100が具備する機能とは、例えば、ユーザ端末100のOSの機能であって、対象アプリケーションに対応するURLスキームを利用してユーザ端末100にインストールされている対象アプリケーションを検出する機能である。例えば、未インストール情報取得部111は、未インストール情報に含まれる、未インストール情報に示される対象アプリケーションに対応するURLスキームを管理サーバ200aから取得する。そして、仮インストール通知部108は、ユーザ端末100のOSの機能により、未インストール情報取得部111が取得したURLスキームを利用して、未インストール情報に示される対象アプリケーションのうち、ユーザ端末100にインストールされている他アプリケーションを検出する。
これにより、ユーザ端末100は、例えば、ユーザ端末100において、URLスキームがオープン可能か否かを判定するという簡易な手段により、ユーザ端末100にインストールされている他アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)を検出することができる。
なお、ユーザ端末100が具備する機能とは、URLスキームを利用してユーザ端末100にインストールされている対象アプリケーションを検出する機能に限られるものではない。例えば、URLスキームを用いずに、OSがユーザ端末100にインストール済みの対象アプリケーションを示す情報を取得可能な場合には、仮インストール通知部108は、このインストール済みの対象アプリケーションを示す情報を取得することにより、未インストール情報取得部111が取得した未インストール情報により示される対象アプリケーションのうち、ユーザ端末100にインストールされている他アプリケーションを検出してもよい。
(9)また、ユーザ端末100の仮インストール通知部108(他インストール通知部の一例)は、未インストール情報を管理サーバ200bから取得せずに、仮インストール通知情報(他インストール通知情報の一例)を管理サーバ200bに送信してもよい。
例えば、仮インストール通知部108は、ユーザ端末100(自端末装置の一例)にインストールされている対象アプリケーション及び旧バージョンの対象アプリケーション(管理の対象となる以前に自端末装置にインストールされた対象アプリケーションの一例)を検出する。そして、仮インストール通知部108は、検出した対象アプリケーションの仮インストール通知情報を、他アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)の候補として管理サーバ200bに送信する。
これにより、管理サーバ200bは、例えば第3の実施形態のように、ユーザ端末100に対して旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの候補となる未インストール情報を送信することなく、ユーザ端末100にインストールされているアプリケーションのうちから、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを抽出して管理の対象として追加することができる。
(10)管理サーバ200a(200b)のアプリケーション管理部221は、アプリケーションリスト(第2情報の一例)に基づく掲載の禁止を設定する設定側アプリケーションと、当該設定側アプリケーションのアプリケーションリストに基づく掲載が禁止される被設定側アプリケーションとを関連付けたアプリ間フィルタ情報(第1の掲載禁止情報の一例)を管理する。そして、管理サーバ200a(200b)のリスト通知部242(第2情報通知部の一例)は、アプリケーション管理部221が管理しているアプリ間フィルタ情報を参照して、対象アプリケーション10A(第1アプリケーションの一例)を被設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合は、当該設定側アプリケーションを示す情報をアプリケーションリストから除いた残りの情報を、ユーザ端末100に対して送信する。
また、リスト通知部242(第2情報通知部の一例)は、アプリケーション管理部221が管理しているアプリ間フィルタ情報(第1の掲載禁止情報の一例)を参照して、対象アプリケーション10A(第1アプリケーションの一例)を設定側アプリケーションに設定しているアプリ間フィルタ情報がある場合は、当該被設定側アプリケーションを示す情報をアプリケーションリストから除いた残りの情報を、ユーザ端末100に対して送信してもよい。
これにより、相互送客システム500aでは、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、勧めたくない対象アプリケーションの関係を管理サーバ200aに設定することができる。例えば、対象アプリケーションの中でレイティング(年齢制限)が設定されているものがあれば、レイティングが設定されていない対象アプリケーション10Aから、レイティングが設定されている対象アプリケーションを勧めないようにすることができる。
(11)また、管理サーバ200a(200b)は、リワード処理部245を備えていてもよい。そして、リワード処理部245は、アプリケーションリスト(第2情報の一例)により示される一または複数の対象アプリケーションのうちの第1実施形態で説明した送客先アプリ20(第2アプリケーションの一例)において所定の報酬付与条件が充足された場合に、ユーザ端末100を利用するユーザに対して報酬が付与される報酬付与処理をしてもよい。ここで、第1実施形態で説明した送客先アプリ20は、例えば、アプリケーションリスト(第2情報の一例)により示される一または複数の対象アプリケーションのうちからユーザ端末100で選択された対象アプリケーションである。
これにより、ユーザが利用したことのない送客先の対象アプリケーションをインストールすると送客元の対象アプリケーションに対して報酬を付与する相互送客システム500aにおいて、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを除外したアプリケーションリストをユーザ端末100に対して送信することができる。
(12)さらに、管理サーバ200a(200b)は、第1実施形態で説明した送客先アプリ20(第2アプリケーションの一例)への送客を示す送客情報を取得する送客情報取得部243と、送客情報取得部243が取得した送客情報を管理する送客情報管理部223と、を備えてもよい。ここで、送客情報取得部243は、例えば、対象アプリケーション10Aから送客先アプリ20に対する送客情報を取得してもよい。そして、リワード処理部245は、送客先アプリ20に設定された所定の報酬付与条件が充足された場合に、送客先アプリ20に対応する送客情報が送客情報管理部223で管理されていることを条件として、報酬付与処理をしてもよい。
これにより、相互送客システム500aは、本システムによらずに対象アプリケーションがインストールされた場合には、送客情報の記録がないため報酬付与の対象としないようにすることができる。
ここで、所定の報酬付与条件が充足された場合とは、送客先アプリ20(第2アプリケーションの一例)がユーザ端末100により実行された又は実行可能な状態になった場合のことであってもよい。また、所定の報酬付与条件が充足された場合とは、送客先アプリ20がユーザ端末100により実行された又は実行可能な状態になり、且つ送客先アプリ20おいて所定の成果が達成された場合のことであってもよい。このように、相互送客システム500aは、報酬付与条件を任意に設定することができる。
また、管理サーバ200a(200b)のアプリケーション管理部221は、複数の対象アプリケーションのうちの複数の特定アプリケーションに対して設定された所定の期間に関する情報を管理してもよい。この場合、所定の報酬付与条件が充足された場合とは、送客先アプリ20(第2アプリケーションの一例)が特定アプリケーションであって、送客先アプリ20が所定の期間内にユーザ端末100により実行された又は実行可能な状態になった場合のことであってもよい。また、所定の報酬付与条件が充足された場合とは、送客先アプリ20が特定アプリケーションであって、送客先アプリ20が所定の期間内にユーザ端末100により実行された又は実行可能な状態になり、且つ送客先アプリ20において所定の成果が達成された場合のことであってもよい。このように、複数の対象アプリケーションのうちで、キャンペーンを実施している特定のアプリケーションだけを報酬付与の対象とすることができる。
(13)また、ユーザ端末100は、報酬付与通知部107を備えている。報酬付与通知部107は、ユーザ端末100(自端末装置の一例)にインストールされた対象アプリケーションにおいて所定の報酬付与条件が充足された場合に、当該所定の報酬付与条件が充足されたことを示す報酬付与通知情報を管理サーバ200a(200b)に対して送信する。ここで、管理サーバ200a(200b)は、アプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)により示される一または複数の対象アプリケーションうちの対象アプリケーションにおける所定の報酬付与条件が充足された場合に、当該対象アプリケーションにおいて所定の報酬が付与される報酬付与処理をする。
なお、アプリケーションリスト(アプリケーション通知情報の一例)により示される一または複数の対象アプリケーションうちの対象アプリケーションとは、例えば、ユーザ端末100において、アプリケーションリストに基づいて表示される対象アプリケーションの一覧LT(表示情報の一例)のうちから選択された対象アプリケーションのことをいう。
このように、相互送客システム500aにおいて、ユーザ端末100は、所定の報酬付与条件が充足された場合に、報酬付与通知情報を管理サーバ200a(200b)に対して送信するので、例えば、アプリケーションリストから選択された対象アプリケーション(例えば、第1実施形態における送客先アプリ20)をインストールして利用したことにより、当該利用したユーザ(例えば、ユーザX)に対して報酬が付与されるようにすることができる。
なお、所定の報酬付与条件が充足された場合とは、ユーザ端末100(自端末装置の一例)にインストールされた対象アプリケーションにおいて所定の成果が達成されたと判定された場合のことであってもよい。
また、所定の報酬付与条件は複数設けられており、報酬付与通知部107は、複数の報酬付与条件のそれぞれが充足されたことに基づいて、報酬付与通知情報をそれぞれ管理サーバ200a(200b)に対して送信してもよい。
(14)また、第5の実施形態で説明したように、ユーザ端末100は、例えば、第1の実施形態の管理サーバ200から取得したアプリケーションリストに基づいて、ユーザに提示する対象アプリケーションの一覧LT(例えば、対象アプリケーションを示す情報を一覧表示する画面)を生成してもよい。
例えば、相互送客システム500aにおいて、ユーザ端末100(端末装置の一例)は、管理サーバ200と通信可能な端末装置である。ここで、管理サーバ200は、例えば、管理の対象となる複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報に基づいて、ユーザ端末100にインストールされている対象アプリケーションのインストール情報を管理する。なお、このインストール通知情報は、第1の情報の一例であって、ユーザ端末100にインストールされた対象アプリケーションが実行されたことに応じてユーザ端末100から管理サーバ200に送信される情報であればこれに限られない。
ユーザ端末100は、インストール通知部103と、インストール通知部103と、リスト取得部109(取得部の一例)と、リスト生成部112(生成部の一例)と、表示制御部105と、を備えている。インストール通知部103は、ユーザ端末100(自端末装置の一例)にインストールされた対象アプリケーションのインストール通知情報を管理サーバ200に対して送信する。リスト取得部109は、管理サーバ200においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(アプリケーション通知情報の一例、第2情報の一例)を管理サーバ200から取得する。リスト生成部112は、リスト取得部109が取得したアプリケーションリストに基づくアプリケーションリスト(提示情報の一例)を生成する。そして、表示制御部105は、リスト生成部112が生成したアプリケーションリスト(提示情報の一例)に基づく対象アプリケーションの一覧LT(表示情報の一例)を表示部120に表示させる。
これにより、ユーザ端末100は、管理サーバ200がユーザ端末100に対応するインストール情報を管理している対象アプリケーション(即ち、ユーザ端末100により実行されたことがある対象アプリケーション)を除いた対象アプリケーションの一覧LTを生成してユーザに提示することができる。
また、ユーザ端末100のリスト生成部112(生成部の一例)は、ユーザ端末100が具備する機能を用いて、リスト取得部109が取得したアプリケーションリストにより示される対象アプリケーションがユーザ端末100にインストールされている他の対象アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)であるか否かを判定してもよい。
ここで、ユーザ端末100が具備する機能とは、例えば、ユーザ端末100のOSの機能であって、対象アプリケーションに対応するURLスキームを利用してユーザ端末100にインストールされている対象アプリケーションを検出する機能である。なお、ユーザ端末100が具備する機能とは、URLスキームを利用してユーザ端末100にインストールされている対象アプリケーションを検出する機能に限られるものではなく、ユーザ端末100は、URLスキームを用いずに、ユーザ端末100にインストール済みの対象アプリケーションを示す情報を取得してもよい。なお、ユーザ端末100にインストールされている他の対象アプリケーションには、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションの他に、ユーザ端末100にインストールされて起動済みの他の対象アプリケーションが含まれてもよい。
そして、リスト生成部112は、判定した結果に基づいて、アプリケーションリストにより示される対象アプリケーションのうちから、上述の他の対象アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)を除いたアプリケーションリスト(提示情報の一例)を生成し直してもよい。
これにより、ユーザ端末100は、ユーザ端末100にインストールされている対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。例えば、旧バージョンの対象アプリケーション(即ち、管理サーバ200がインストール情報を管理していない対象アプリケーション)がユーザ端末100にインストールされている場合であっても、ユーザ端末100は、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。また、ユーザ端末100にインストールされているが起動したことがない対象アプリケーション(即ち、管理サーバ200がインストール情報を管理していない対象アプリケーション)がある場合であっても、ユーザ端末100は、この起動したことがない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。
また、ユーザ端末100のリスト生成部112(生成部の一例)は、ユーザ端末100が具備する機能を用いて判定した結果に基づいて、アプリケーションリストにより示される対象アプリケーションのうちからユーザ端末100にインストールされている他の対象アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)をユーザが区別可能なアプリケーションリスト(提示情報の一例)を生成し直してもよい。
これにより、ユーザ端末100は、管理サーバ200から取得したアプリケーションリストにより示される対象アプリケーション(管理サーバ200でインストール情報が管理されている対象アプリケーション)のうち、ユーザ端末100にインストールされている対象アプリケーションを区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。例えば、旧バージョンの対象アプリケーション(即ち、管理サーバ200がインストール情報を管理していない対象アプリケーション)がユーザ端末100にインストールされている場合であっても、ユーザ端末100は、旧バージョンの対象アプリケーションを区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。また、ユーザ端末100にインストールされているが起動したことがない対象アプリケーション(即ち、管理サーバ200がインストール情報を管理していない対象アプリケーション)がある場合であっても、この起動したことがない対象アプリケーションを区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。よって、ユーザ端末100は、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報を、区別してユーザに提示することができる。
(15)また、ユーザ端末100のリスト取得部109(取得部の一例)が取得したアプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)には、さらに管理サーバ200においてインストール情報が管理されている少なくとも一の対象アプリケーションを示す情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報が含まれていてもよい。
即ち、リスト取得部109が取得したアプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)には、管理サーバ200において、ユーザ端末100(自端末装置の一例)に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報、インストール情報が管理されている少なくとも一の対象アプリケーションを示す情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報が含まれていてもよい。
そして、リスト生成部112(生成部の一例)は、リスト取得部109が取得したアプリケーションリストに含まれる区別情報に基づいて、取得したアプリケーションリストに含まれる、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能なアプリケーションリスト(提示情報の一例)を生成し直してもよい。
これにより、ユーザ端末100は、インストール情報が管理されていない少なくとも一の対象アプリケーション(例えば、ユーザ端末100にインストールされていない対象アプリケーション)と、インストール情報が管理されている少なくとも一の対象アプリケーション(例えば、ユーザ端末100にインストールされて起動済みの対象アプリケーション)とを区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。
例えば、リスト生成部112は、アプリケーションリストにより示される対象アプリケーションのうちから、ユーザ端末100にインストールされている他の対象アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)を除いたアプリケーションリストを生成する際に、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能なように生成してもよい。
これにより、ユーザ端末100は、旧バージョンの対象アプリケーションがインストールされている場合又はインストールされているが起動したことがない対象アプリケーションがある場合に、インストール情報が管理されていない少なくとも一の対象アプリケーションのうちから旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを除いた対象アプリケーション(即ち、ユーザ端末100にインストールされていない対象アプリケーション)と、インストール情報が管理されている少なくとも一の対象アプリケーション(例えば、ユーザ端末100にインストールされて起動済みの対象アプリケーション)と、を区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。よって、ユーザ端末100は、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報を、ユーザに提示することができる。
また、リスト生成部112は、アプリケーションリストにより示される対象アプリケーションのうちから、ユーザ端末100にインストールされている他の対象アプリケーション(例えば、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーション)を区別可能なアプリケーションリストを生成する際に、インストール情報が管理されている対象アプリケーションが、少なくともインストール情報が管理されていない対象アプリケーションと区別可能なように生成してもよい。
これにより、ユーザ端末100は、旧バージョンの対象アプリケーションがインストールされている場合又はインストールされているが起動したことがない対象アプリケーションがある場合に、インストール情報が管理されていない少なくとも一の対象アプリケーションのうちから旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションを区別、且つ、インストール情報が管理されている少なくとも一の対象アプリケーション(例えば、ユーザ端末100にインストールされて起動済みの対象アプリケーション)を区別可能な対象アプリケーションの一覧LTをユーザに提示することができる。よって、ユーザ端末100は、ユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)を示す情報を、ユーザに提示することができる。
なお、旧バージョンの対象アプリケーション又はインストールされているが起動したことがない対象アプリケーションと、インストール情報が管理されている少なくとも一の対象アプリケーション(例えば、ユーザ端末100にインストールされて起動済みの対象アプリケーション)とは、いずれもユーザ端末100に未インストールの対象アプリケーション(即ち、送客先となる対象アプリケーションの候補)ではないため、互いを区別して提示しなくてもよい。
なお、管理サーバ200a(200b)のリスト通知部242(第2情報通知部の一例)は、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを含む情報、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されている少なくとも一の対象アプリケーションを含む情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報を含むアプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)を、ユーザ端末100に対して送信してもよい。
即ち、ユーザ端末100のリスト取得部109(取得部の一例)が取得したアプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)には、管理サーバ200a(200b)において、ユーザ端末100(自端末装置の一例)に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報、インストール情報が管理されている少なくとも一の対象アプリケーションを示す情報、及びインストール情報が管理されていない対象アプリケーションとインストール情報が管理されている対象アプリケーションとを区別可能な区別情報が含まれていてもよい。
このように、管理サーバ200a(200b)がユーザ端末100に対応するインストール情報を管理しているか否かを区別可能な区別情報をユーザ端末100に送信することにより、ユーザ端末100は、アプリケーションリストにより示される対象アプリケーションのうち管理サーバ200a(200b)がインストール情報を管理していない対象アプリケーションをユーザが区別(判別)できるように、対象アプリケーションの一覧LTをユーザに提示することができる。
(16)なお、相互送客システム500aにおいて、管理サーバ200a(管理装置の一例)は、アプリケーション管理部221と、情報取得部と、インストール情報管理部222(インストール情報管理部)と、リスト通知部242(第2情報通知部の一例)と、を備えた構成としてもよい。
この構成において、アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。
情報取得部は、複数の対象アプリケーションのうちユーザ端末100にインストールされた対象アプリケーションを示す情報をユーザ端末100から取得する。ここで、情報取得部は、ユーザ端末100において検出された、ユーザ端末100にインストールされたアプリケーションを示す情報を取得する構成であり、ユーザ端末100における検出方法はどのような方法であってもよい。例えば、ユーザ端末100における検出方法は、ユーザ端末100のOSの機能によりユーザ端末100にインストールされたアプリケーションを示す情報を検出する方法としてもよいし、ユーザ端末100にインストールされた対象アプリケーションのインストール記録や実行記録(例えば、ユーザ端末100における処理を記録する常駐アプリケーションによる記録、Cookieを用いた記録等)がある場合、その記録に基づいて検出する方法としてもよい。また、なお、情報取得部は、インストール通知取得部241(第1情報取得部の一例)であってもよいし、仮インストール通知取得部247(第3情報取得部の一例)であってもよい。
また、インストール情報管理部222は、上述の情報取得部が取得したユーザ端末100にインストールされた対象アプリケーションを示す情報に基づいて、ユーザ端末100にいずれの対象アプリケーションがインストールされたかを示すインストール情報を管理する。そして、リスト通知部242は、インストール情報管理部222が管理するインストール情報に基づいて、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例を、ユーザ端末100に対して送信する。
このように、管理サーバ200aは、ユーザ端末100に対応するインストール情報を管理していない少なくとも一の対象アプリケーションを示すアプリケーションリストをユーザ端末100に送信することで、ユーザ端末100にインストールされていない対象アプリケーションをユーザ端末100に通知することができる。
<第3〜第6の実施形態について:その2>
以上説明した第3〜第6の実施形態について、以下のように記載することができるが、以下の記載に限られるものではない。
(1)前述したように、インストール通知情報を例として説明した第1情報は、対象アプリケーションがユーザ端末100により実行されたことに応じてユーザ端末100から送信された情報であればよく、インストールされたことを示す情報であってもよいし、インストールされたこと以外のことを示す情報であってもよい。インストールされたこと以外のことを示す情報とは、例えば、起動したことを示す情報、実行されたことを示す情報、単なるフラグ情報、等であってもよい。
つまり、管理サーバ200a(200b)は、対象アプリケーションがユーザ端末100により実行されたことに応じて取得した上述の第1情報により、ユーザ端末100により実行された対象アプリケーションを認識できさえすればよい。
また、ユーザ端末100は、対象アプリケーションがインストールされて最初に起動した際に、第1情報(例えば、インストール通知情報)を管理サーバ200a(200b)に送信してもよいし、対象アプリケーションが起動する毎に、第1情報を管理サーバ200a(200b)に送信してもよい。
また、管理サーバ200a(200b)が第1情報を取得する場合、対象アプリケーションが実行されたことに応じて取得しなくてもよく、単に対象アプリケーションが実行されたユーザ端末100から取得してもよい。例えば、管理サーバ200a(200b)が第1情報を取得するタイミングは、ユーザ端末100で対象アプリケーションが起動した直後に限られるものではなく、対象アプリケーションが起動してから所定の時間経過後、所定の時間毎、当該対象アプリケーションが所定の処理を実行した後、起動した対象アプリケーションが終了するとき、等であってもよい。なお、第1情報は、ユーザ端末100で対象アプリケーションが実行されたことがなければ当該ユーザ端末100から送信されない情報であって、ユーザ端末100から送信されたことによってユーザ端末100で対象アプリケーションが実行されたことを特定可能な情報であれば、いずれの情報であってもよい。
一例として、対象アプリケーションが起動すると、当該対象アプリケーションのアプリIDが第1情報としてユーザ端末100の端末記憶部140のアプリ間共有エリアに記憶に記憶され、ユーザ端末100から管理サーバ200a(200b)に対してアプリケーションリストを要求する際に、共有エリアに記憶されている第1情報の全てが管理サーバ200a(200b)へ送信されてもよい。これにより、管理サーバ200a(200b)は、ユーザ端末100において対象アプリケーションが実行されたことに応じて第1情報を取得するのではなく、ユーザ端末100からアプリケーションリストの要求があったときに、ユーザ端末100で実行された対象アプリケーションの第1情報(例えばアプリID)の全て、又は前回のアプリケーションリストの要求時との差分を取得してもよい。
例えば、第3、4、6の実施形態における相互送客システム500aにおいて、管理サーバ200a(200b)は、アプリケーション管理部221と、インストール通知取得部241(第1情報取得部の一例)と、仮インストール通知取得部247(第3情報取得部の一例)と、インストール情報管理部222と、リスト通知部242(第2情報通知部の一例)と、を備えている。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちの対象アプリケーション10A(第1アプリケーションの一例)が実行されたユーザ端末100から送信されたインストール通知情報(第1情報の一例)を取得する。仮インストール通知取得部247は、対象アプリケーション10Aから、複数の対象アプリケーションのうち対象アプリケーション10A以外の対象アプリケーションである他アプリケーション(例えば、旧バージョンの対象アプリケーション10B、又は対象アプリケーション10C)がユーザ端末100にインストールされていることを示す仮インストール通知情報(第3情報の一例)を取得する。インストール情報管理部222(インストール情報管理部の一例)は、インストール通知取得部241が取得したインストール通知情報及び仮インストール通知取得部247が取得した仮インストール通知情報に基づいて、ユーザ端末100にいずれの対象アプリケーションがインストールされたかを示すインストール情報を管理する。そして、リスト通知部242は、インストール情報管理部222が管理するインストール情報に基づいて、複数の対象アプリケーションのうち、インストール情報管理部222においてユーザ端末100に対応するインストール情報が管理されていない少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例)を、ユーザ端末100に対して送信する。
ここで、ユーザ端末100に対応するインストール情報とは、当該ユーザ端末100から送信されたインストール通知情報又は仮インストール通知情報を含む情報のことをいう。
このように、管理サーバ200a(200b)は、インストール通知情報又は仮インストール通知情報を含むインストール情報を管理していない対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信するため、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。よって、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(2)複数の対象アプリケーションは、少なくともインストール通知情報(第1情報の一例)を送信する機能を有する。また、上述の他アプリケーション(他の対象アプリケーション)は、管理サーバ200a(200b)による管理の対象となる前(即ち、対象となる以前)にはインストール通知情報を送信する機能を有しておらず(即ち、旧バージョンの対象アプリケーション)、当該管理の対象となった後にはインストール通知情報を送信する機能を有する。
例えば、第3、4の実施形態における相互送客システム500aにおいて、管理サーバ200a(200b)の仮インストール通知取得部247(第3情報取得部の一例)は、他アプリケーションがインストール通知情報を送信する機能を有している場合であっても有していない場合であっても、他アプリケーションがユーザ端末100にインストールされていることを示す仮インストール通知情報(第3情報の一例)を対象アプリケーション10A(第1アプリケーションの一例)から取得する。
一方、第3、4の実施形態における相互送客システム500aにおいて、ユーザ端末100の仮インストール通知部108(他インストール通知部の一例)は、ユーザ端末100にインストールされている他アプリケーションがインストール通知情報を送信する機能を有している場合であっても有していない場合であっても、当該他アプリケーションがユーザ端末100にインストールされていることを示す仮インストール通知情報(他インストール通知情報の一例、第3情報の一例)を管理サーバ200a(200b)に対して送信する。
これにより、例えば、SDK1011(SDK2011)が組み込まれていない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合であっても、管理サーバ200a(200b)は、旧バージョンの対象アプリケーションを除いた対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信することができる。よって、本実施形態によれば、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。すなわち、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
また、例えば、第5の実施形態における相互送客システム500aにおいて、ユーザ端末100のリスト生成部112(生成部の一例)は、ユーザ端末100が具備する機能を用いて、リスト取得部109(取得部の一例)が取得したアプリケーションリスト(アプリケーション通知情報の一例)により示される対象アプリケーションがユーザ端末100にインストールされている他の対象アプリケーション(他アプリケーション)であるか否かを判定する。そして、リスト生成部112は、当該判定した結果に基づいて、アプリケーションリストにより示される対象アプリケーションのうちからインストール通知情報を送信する機能を有していない他の対象アプリケーションを除いた提示情報を生成する。
これにより、例えば、SDK3011を組み込んでいない旧バージョンの対象アプリケーションが、ユーザ端末100にインストールされている場合であっても、ユーザ端末100は、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。よって、本実施形態によれば、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。従って、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
なお、第6の実施形態で説明したように、ユーザ端末100にインストールされた対象アプリケーションであっても起動したことがない(実行されたことがない)場合には、端末装置100から管理サーバ200aにインストール通知情報が送信されない。この場合、ユーザ端末100は、旧バージョンの対象アプリケーションと同様に、この起動したことのない対象アプリケーションをユーザ端末100にインストールされている他アプリケーション(他の対象アプリケーション)として認識できる。そのため、ユーザ端末100は、インストールされているが起動したことのない対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。すなわち、ユーザ端末100は、ユーザ端末100にインストールされたことがない対象アプリケーションの一覧LTをユーザに提示することができる。よって、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(3)第4の実施形態における管理サーバ200bのインストール情報管理部222は、仮インストール通知取得部247(第3情報取得部の一例)が取得した仮インストール通知情報(第3情報の一例)により示される他アプリケーションのうちインストール通知取得部241(第1情報取得部の一例)がインストール通知情報(第1情報の一例)を取得していない他アプリケーションを、複数の対象アプリケーションのうちの管理の対象となる前(すなわち、管理の対象となる以前)にユーザ端末100にインストールされた対象アプリケーションとして、インストール情報を管理する。
これにより、管理サーバ200bは、ユーザ端末100にインストールされているがインストール通知情報を取得していない対象アプリケーションを、ユーザ端末100にインストールされた旧バージョンの対象アプリケーションとして管理することができる。
また、管理サーバ200bのリスト通知部242(第2情報通知部の一例)は、インストール情報管理部222が管理するインストール情報に基づいて、複数の対象アプリケーションのうちインストール通知取得部241がインストール通知情報を取得していない対象アプリケーションから、管理の対象となる前にユーザ端末100にインストールされた対象アプリケーションを除いた少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例)を、ユーザ端末100に対して送信する。
これにより、管理サーバ200bは、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合であっても、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。よって、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。従って、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(4)第4の実施形態における管理サーバ200bのインストール情報管理部222は、仮インストール通知取得部247(第3情報取得部の一例)が取得した仮インストール通知情報(第3情報の一例)により示される他アプリケーションのうちインストール通知取得部241(第1情報取得部の一例)がインストール通知情報(第1情報の一例)を取得していない他アプリケーションを、ユーザ端末100にインストールされた対象アプリケーションのうちインストール通知情報を送信する機能を有していない対象アプリケーションとして、インストール情報を管理する。
これにより、管理サーバ200bは、ユーザ端末100にインストールされているがインストール通知情報を取得していない対象アプリケーションを、ユーザ端末100にインストールされた旧バージョンの対象アプリケーションとして管理することができる。
また、管理サーバ200bのリスト通知部242(第2情報通知部の一例)は、インストール情報管理部222が管理するインストール情報に基づいて、複数の対象アプリケーションのうちインストール通知情報(第1情報の一例)がインストール通知情報(第1情報の一例)を取得していない対象アプリケーションから、ユーザ端末100にインストールされた対象アプリケーションのうちインストール通知情報を送信する機能を有していない対象アプリケーションを除いた少なくとも一の対象アプリケーションを示す情報を含むアプリケーションリスト(第2情報の一例)を、ユーザ端末100に対して送信する。
これにより、管理サーバ200bは、旧バージョンの対象アプリケーションがユーザ端末100にインストールされている場合であっても、旧バージョンの対象アプリケーションを除いた対象アプリケーションの一覧LTをユーザに提示することができる。よって、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示することができる。従って、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
<第7の実施形態>
次に、本発明の第7の実施形態を説明する。まず、本実施形態の相互送客システム500bの概要について説明する。
上述した相互送客システム500(500a)では、管理サーバ200(200a、200b)は、ユーザ端末100と対応付けられたリワードユーザID(RewardUID)と関連付けてインストール済みの対象アプリケーションを管理している。そのため、同一のユーザであってもユーザ端末100が異なれば別ユーザであると判断されてしまう。例えば、ユーザがユーザ端末100を機種変更した場合、上述した相互送客システム500(500a)では、機種変更前のユーザ端末100で利用していた対象アプリケーションであるにも関わらず、機種変更後のユーザ端末100において、例えば、報酬付与の対象となる対象アプリケーションとしてユーザに提示されてしまうことがある。このように、上述した相互送客システム500(500a)では、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合に、ユーザに対してインストールを勧める対象でない対象アプリケーションが、インストールを勧める対象となる対象アプリケーションとしてユーザに提示されてしまうことがある。
そこで、本実施形態では、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合であっても、ユーザに対してインストールを勧める対象でない対象アプリケーションを除外した適切な対象アプリケーションの一覧LTをユーザに提示する相互送客システム500bの実施形態について説明する。
〔第7の実施形態による相互送客システムの概要〕
図31は、第7の実施形態の相互送客システム500bの概要を説明する説明図である。
この図において、本実施形態によるネットワークシステム1bは、第1〜第5の実施形態と同様に、管理サーバ200cと、ユーザ端末100とを備えている。なお、この図において、ユーザ端末100Aは、ユーザXの機種変更前のユーザ端末100を示し、対象アプリケーション10−1〜10−3(アプリ1〜アプリ3)をインストールしている。また、ユーザ端末100Bは、ユーザXの機種変更後のユーザ端末100を示し、対象アプリケーション10−1(アプリ1)及び対象アプリケーション10−4(アプリ4)をインストールしている。なお、ユーザ端末100A及びユーザ端末100Bにインストールされていない対象アプリケーションを対象アプリケーション10−5(アプリ5)及び対象アプリケーション10−6(アプリ6)として説明する。なお、特に区別しない場合には、「−1」、「−2」等の記載を省略して対象アプリケーション10として説明する。
また、この図において、管理サーバ200cは、相互送客システム500bの対象アプリケーション情報として、「アプリ1(ApID=001)」〜「アプリ6(ApID=006)」を記憶しているものとする。
ここでは、図31を参照して、ユーザXが、ユーザ端末100Aからユーザ端末100Bに機種変更した場合の一例で、本実施形態の相互送客システム500bの概要について説明する。
まず、機種変更前のユーザ端末100Aは、各対象アプリケーションをインストールして最初に起動する際に、(1)〜(3)で示すように各対象アプリケーションに対応するインストール通知情報を管理サーバ200cに対して送信する。なお、インストール通知情報には、例えば、リワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)とが含まれている。
管理サーバ200cは、各対象アプリケーションに対応するインストール通知情報を取得して、インストール情報として記憶する。ここでは、(1)〜(3)により、ユーザ端末100Aに対応するインストール情報T1が管理サーバ200cに記憶される。
次に、ユーザXがユーザ端末100Aからユーザ端末100Bに機種変更したとする。機種変更後のユーザ端末100Bは、各対象アプリケーションをインストールして最初に起動する際に、(4)、(5)で示すように各対象アプリケーションに対応するインストール通知情報を管理サーバ200cに対して送信する。これにより、ユーザ端末100Bに対応するインストール情報T2が管理サーバ200cに記憶される。
例えば、管理サーバ200cがユーザ端末100Bにインストールされた対象アプリケーション10−1からリスト要求通知情報を取得した場合に、管理サーバ200cは、ユーザ端末100Bに対応するインストール情報T2に含まれるアプリユーザID(ApUID)が、他のユーザ端末100に対応するインストール情報に含まれていないかを検索し、他のユーザ端末100に対応するインストール情報に、当該アプリユーザID(ApUID)が含まれている場合に、同一のユーザXのユーザ端末100であると判定する。ここでは、インストール情報T2に含まれるアプリユーザID(ApUID)の「5288」が、ユーザ端末100Aに対応するインストール情報T1に含まれているので、管理サーバ200cは、ユーザ端末100Aとユーザ端末100Bとが、同一のユーザXのユーザ端末100と判定し、リワードユーザID(RewardUID)の「09634565」と「24957234」とを関連付ける。これにより、インストール情報T1とインストール情報T2とが対応付けられる。そして、管理サーバ200cは、対応付けたインストール情報T1とインストール情報T2とに基づいて、例えば、(6)で示すようにユーザに対してインストールを勧める対象アプリケーションのアプリケーションリストを生成し、生成した対象アプリケーションのアプリケーションリストをユーザ端末100Bに対して送信する。この例では、対象アプリケーション情報として記憶されている対象アプリケーションのうち、「アプリ5(ApID=005)」及び「アプリ6(ApID=006)」がインストール情報T1又はインストール情報T2に含まれていないので、管理サーバ200cは、「アプリ5(ApID=005)」及び「アプリ6(ApID=006)」を示す対象アプリケーションのアプリケーションリストをユーザ端末100Bに対して送信する。
その結果、ユーザ端末100Bは、対象アプリケーションの一覧LTを表示する。
このように、本実施形態では、管理サーバ200cは、アプリユーザID(ApUID)に基づいて、異なるユーザ端末100のリワードユーザID(RewardUID)を関連付けて管理する。
次に、本実施形態による相互送客システム500bについて、詳細に説明する。
なお、本発明の第7の実施形態によるネットワークシステム1bの構成、及びユーザ端末100の構成は、図2に示す第1の実施形態におけるネットワークシステム1の構成、及び、図3に示す第1の実施形態におけるユーザ端末100の構成と同様であるので、ここではその説明を省略する。また、本実施形態のユーザ端末100(SDK11)の機能構成は、図5に示す第1の実施形態と同様であるので、ここではその説明を省略する。
〔第7の実施形態による管理サーバ200cの構成〕
次に、図32を参照して、本実施形態による管理サーバ200cの構成の詳細について説明する。
図32は、本実施形態による管理サーバ200cの構成の一例を示す構成図である。管理サーバ200cは、図4を参照して説明したように、通信部210と、管理部220と、記憶部230と、制御部240cとを備えている。なお、この図において、図6と同様の構成に同一の符号を付し、ここでは説明を省略する。
ここで、図33を参照して、インストール情報記憶部236が記憶するインストール情報について説明する。
図33は、本実施形態によるインストール情報記憶部236に記憶される情報の一例を示す図であって、図31に示したインストール情報と同じものである。
この図において、インストール情報記憶部236は、リワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)とを関連付けたインストール情報を記憶している。また、インストール情報T1は、機種変更前のユーザ端末100Aに対応し、インストール情報T2は、機種変更後のユーザ端末100Bに対応している。
図32に戻り、制御部240cは、インストール通知取得部241と、リスト通知部242と、送客情報取得部243と、インストール誘導指示部244と、リワード処理部245と、計時部246と、他端末情報抽出部249とを備えている。
なお、本実施形態における制御部240cは、他端末情報抽出部249を備えている点が、第1及び第2の実施形態と異なる。
なお、本実施形態のインストール情報管理部222は、インストール通知情報を送信した対象アプリケーション(第1アプリケーションの一例)がインストールされたユーザ端末100を特定するリワードユーザID(固有識別情報の一例)と対象アプリケーションのアプリID(識別情報の一例)とを関連付けて管理するとともに、当該リワードユーザIDと関連付け情報とを関連付けて管理する。ここで、関連付け情報とは、同一のユーザのユーザ端末100を関連付けるための情報である。ここでは、互いに異なるユーザ端末100(ユーザ端末100A、ユーザ端末100B)であっても同一のユーザの同一のアプリケーションでは、同一のアプリユーザIDが設定されることを利用して、関連付け情報として、例えば、このアプリユーザIDを使用する。本実施形態では、インストール情報管理部222は、リワードユーザIDと対象アプリケーションにおけるアプリユーザIDとを関連付けて管理する。
また、インストール通知情報には、例えば、リワードユーザIDと、対象アプリケーションのアプリID及びアプリユーザIDとが含まれる。そのため、インストール情報管理部222は、例えば、図33に示すようにインストール情報記憶部236に、リワードユーザIDと、アプリIDと、アプリユーザIDとを関連付けて記憶させ、リワードユーザIDと、アプリIDと、アプリユーザIDとを関連付けて管理する。
他端末情報抽出部249は、インストール情報管理部222を照会することにより、インストール通知情報を送信した対象アプリケーションがインストールされたユーザ端末100を特定するリワードユーザIDに関連付けられている関連付け情報を介して、当該リワードユーザIDに関連付けられる他のリワードユーザIDを抽出する。
上述したように、互いに異なるユーザ端末100(ユーザ端末100A、ユーザ端末100B)の両方にインストールされている同一のアプリケーションでは、互いに同一のアプリユーザIDが設定されることを利用して、異なるリワードユーザIDを関連付けることができる。そこで、他端末情報抽出部249は、第1の抽出方法として、関連付け情報として対象アプリケーションにおけるユーザ情報の一例としてアプリユーザIDを利用する。
具体的には、他端末情報抽出部249は、対象アプリケーションがインストールされたユーザ端末100を特定するリワードユーザIDに関連付けられている対象アプリケーションにおけるアプリユーザIDが、当該リワードユーザIDの他に関連付けられている他のリワードユーザIDを抽出する。なお、相互送客システム500bに対応する複数の対象アプリケーションの間で、アプリユーザIDが互いに一意性があって、ある対象アプリケーションのアプリユーザIDが他の対象アプリケーションで使用されない保証があれば、関連付け情報としてアプリユーザIDだけを利用してもよいが、一意性が保証されない場合には、関連付け情報として、対象アプリケーションのアプリIDとアプリユーザIDとの組を利用すればよい。すなわち、他端末情報抽出部249は、インストール情報記憶部236に記憶されているインストール情報のうちから、ユーザ端末100にインストールされている対象アプリケーションに対応するアプリIDとアプリユーザIDとの組と一致するアプリユーザID、またはアプリIDとアプリユーザIDとの組を抽出し、抽出したアプリユーザIDに関連付けられている他のリワードユーザID(自ユーザ端末100以外のリワードユーザID)を抽出する。
このように、他端末情報抽出部249は、関連付け情報として、対象アプリケーションがインストールされたユーザ端末100を特定するリワードユーザIDに関連付けられている対象アプリケーションのアプリID、またはアプリIDとアプリユーザIDとの組を利用する。
ところで、互いに異なるユーザ端末100(ユーザ端末100A、ユーザ端末100B)で、同一のアプリケーションを利用していない場合がある。例えば、旧端末(ユーザ端末100A)で利用していなかった対象アプリケーション(例えば、対象アプリケーション10−4)を、新端末(ユーザ端末100B)で利用している場合である。この場合には、当該対象アプリケーションのアプリユーザIDを利用した関連付けができない。そこで、同一のユーザ端末100(ユーザ端末100B)にインストールされている他の対象アプリケーション(例えば、対象アプリケーション10−1)のアプリユーザIDを利用するようにする。すなわち、他端末情報抽出部249は、第2の抽出方法として、関連付け情報として、対象アプリケーション(例えば、対象アプリケーション10−4)のアプリユーザIDと同一のリワードユーザIDに関連付けられている他の対象アプリケーション(例えば、対象アプリケーション10−1)のアプリユーザIDを利用するようにしてもよい。具体的には、他端末情報抽出部249は、インストール情報記憶部236に記憶されているインストール情報のうちから、対象アプリケーションのアプリユーザIDと同一のリワードユーザIDに関連付けられている他の対象アプリケーションのアプリユーザIDを抽出する。さらに、他端末情報抽出部249は、インストール情報記憶部236に記憶されているインストール情報のうちから、抽出した他の対象アプリケーションのアプリユーザIDと一致するアプリユーザIDを抽出し、抽出したアプリユーザIDに関連付けられている他のリワードユーザID(自ユーザ端末100以外のリワードユーザID)を抽出する。この例でも、アプリIDだけではなく、アプリIDとアプリユーザIDとの組を用いてもよい。
このように、他端末情報抽出部249は、関連付け情報として、対象アプリケーションのアプリユーザIDと同一のリワードユーザIDに関連付けられている他の対象アプリケーションのアプリユーザIDを利用する。または、対象アプリケーションのアプリIDとアプリユーザIDとの組と同一のリワードユーザIDに関連付けられている他の対象アプリケーションのアプリIDとアプリユーザIDとの組を利用する。
なお、他端末情報抽出部249は、第1の抽出方法により他のリワードユーザID(自ユーザ端末100以外のリワードユーザID)が抽出できなかった場合に、さらに第2の抽出方法により抽出するようにしてもよい。また、第1の抽出方法までに留めるようにしてもよい。なお、第1の抽出方法までに留める場合には、ユーザに提示したユーザが利用したことのない対象アプリケーションの一覧LTの中に、旧端末(ユーザ端末100A)にインストールされていた対象アプリケーションが含まれる場合がある。
なお、本実施形態のリスト通知部242は、対象アプリケーションがインストールされたユーザ端末100、及び他端末情報抽出部249が抽出した他のリワードユーザIDにより特定される他のユーザ端末100にインストールされた対象アプリケーション10のうちのいずれからもインストール通知情報を取得していない少なくとも一の対象アプリケーションのアプリケーションリストを、ユーザ端末100に対して送信する。すなわち、リスト通知部242は、機種変更後のユーザ端末100(ユーザ端末100B)にインストールされている対象アプリケーションだけでなく、機種変更前のユーザ端末100(ユーザ端末100A)にインストールされていた対象アプリケーションを含めて、アプリケーション管理部221が管理する対象アプリケーションから除外したアプリケーションリストをユーザ端末100に対して送信する。
〔第7の実施形態による相互送客処理の動作の詳細〕
次に、本実施形態の相互送客システム500bの動作について説明する。
なお、本実施形態の相互送客システム500bの基本的な動作は、図14及び図15に示す第1の実施形態と同様であり、ここでは、図34を参照して、本実施形態の対象アプリケーションのアプリケーションリストを生成する処理を中心に、相互送客システム500bの動作について説明する。なお、ここで説明する例は、図31と同様の状態を前提にして説明する。また、ここで説明する例は、インストール情報記憶部236に記憶されているインストール情報は、図32に示す状態であることを前提に説明する。
なお、ここでは、図34を参照して、ユーザ端末100(ユーザ端末100B)にインストールされている対象アプリケーション(例えば、対象アプリケーション10−1)側の処理について説明する。また、図34に示す処理において、対象アプリケーションは、第1及び第2の実施形態におけるSDK11を備えているものとして説明する。
図34において、ステップSA11からステップSA24の処理、及びステップSE11の処理は、図14に示す第1の実施形態と同様であるので、ここではその説明を省略する。
ステップSA24において、リスト要求部104が、リスト要求通知情報を管理サーバ200cに対して送信する(REQ12)と、ステップSE115において、管理サーバ200cの他端末情報抽出部249は、旧端末(ユーザ端末100A)にインストールされていた対象アプリケーションを抽出する。なお、リスト要求通知情報には、少なくとも対象アプリケーションのアプリIDと、このユーザ端末100Bに対応するリワードユーザIDとが含まれる。
例えば、管理サーバ200cが図31に示すユーザ端末100Bにインストールされた対象アプリケーション10−1からリスト要求通知情報を取得した場合は、上述した第1の抽出方法にしたがって、他端末情報抽出部249は、以下のように、ユーザ端末100Aにインストールされていた対象アプリケーションを抽出する。
他端末情報抽出部249は、リスト要求通知情報に含まれるリワードユーザID(「24957234」)とアプリID(「001」)を取得する。次に、リワードユーザID(「24957234」)に関連付けられたアプリID(「001」)に対応するアプリユーザID(「5288」)とアプリID(「001」)との組を取得する。他端末情報抽出部249は、取得したアプリユーザID(「5288」)とアプリID(「001」)との組が含まれる他のリワードユーザIDに関連付けられているインストール情報を抽出する。
他端末情報抽出部249は、抽出したインストール情報に関連付けられているリワードユーザID(「09634565」)を特定する。なお、他端末情報抽出部249は、特定されたリワードユーザID(「09634565」)と、リワードユーザID(「24957234」)とを関連付けたリワードユーザIDの組として、記憶部230に記憶させてもよい。
他端末情報抽出部249は、特定されたリワードユーザID(「09634565」)に関連付けられているアプリIDに対応する対象アプリケーションを旧端末(ユーザ端末100A)にインストールされていた対象アプリケーションとして抽出する。例えば、他端末情報抽出部249は、図31に示す対象アプリケーション10−1〜10−3(アプリ1〜アプリ3)を抽出する。
また、例えば、ユーザXが図31に示す対象アプリケーション10−4からリスト要求通知情報を取得した場合は、上述した第1の抽出方法と第2の抽出方法を組み合わせて他端末情報抽出部249は、以下のように、ユーザ端末100Aにインストールされていた対象アプリケーションを抽出する。
他端末情報抽出部249は、リスト要求通知情報に含まれるリワードユーザID(「24957234」)とアプリID(「004」)を取得する。次に、リワードユーザID(「24957234」)に関連付けられたアプリID(「004」)に対応するアプリユーザID(「1922」)とアプリID(「004」)との組を取得する。他端末情報抽出部249は、取得したアプリユーザID(「1922」)とアプリID(「004」)との組が含まれる他のリワードユーザIDに関連付けられているインストール情報を抽出する。この場合、他にアプリユーザID(「1922」)が含まれるインストール情報が存在しない。したがって、他端末情報抽出部249は、リワードユーザID(「24957234」)に関連付けられたインストール情報T2のうちから、他の対象アプリケーション(対象アプリケーション10−1)のアプリユーザID(「5288」)とアプリID(「001」)との組を取得する。
次に、他端末情報抽出部249は、取得したアプリユーザID(「5288」)とアプリID(「001」)との組が含まれる他のリワードユーザIDに関連付けられているインストール情報を抽出する。他端末情報抽出部249は、抽出したインストール情報に関連付けられているリワードユーザID(「09634565」)を特定する。
他端末情報抽出部249は、特定されたリワードユーザID(「09634565」)に関連付けられているアプリIDに対応する対象アプリケーションを旧端末(ユーザ端末100A)にインストールされていた対象アプリケーションとして抽出する。例えば、他端末情報抽出部249は、図31に示す対象アプリケーション10−1〜10−3(アプリ1〜アプリ3)を抽出する。
次に、管理サーバ200cのリスト通知部242は、対象アプリケーションのフィルタリング処理を行う(ステップSE15b)。リスト通知部242は、対象アプリケーションがインストールされたユーザ端末100、及び他端末情報抽出部249が抽出した他のリワードユーザIDにより特定される他のユーザ端末100にインストールされた対象アプリケーション10のうちのいずれからもインストール通知情報を取得していない少なくとも一の対象アプリケーションのアプリケーションリストを生成する。すなわち、リスト通知部242は、アプリケーション管理部221が管理する対象アプリケーション情報のうちから、ユーザ端末100Aに対応するリワードユーザID(「09634565」)に関連付けられたインストール情報T1と、ユーザ端末100Bに対応するリワードユーザID(「24957234」)に関連付けられたインストール情報T2とを除いた対象アプリケーションのアプリケーションリストを生成する。例えば、図31に示す例では、リスト通知部242は、対象アプリケーション10−5(アプリ5)及び対象アプリケーション10−6(アプリ6)を示す対象アプリケーションのアプリケーションリストを生成する。
続くステップSE16以降の処理は、図14に示すステップSA25の処理、ステップSA26の処理、ステップSE16からステップSE19の処理、及びステップSC11の処理と同様であるので、ここでは説明を省略する。
〔第7の実施形態のまとめ〕
(1)以上説明してきたように、本実施形態の相互送客システム500bにおいて、管理サーバ200c(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241と、インストール情報管理部222と、他端末情報抽出部249と、リスト通知部242と、を備えている。アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちユーザ端末100(端末装置の一例)にインストールされた対象アプリケーション10−1(第1アプリケーションの一例)から、当該対象アプリケーションがインストールされたことを示すインストール通知情報を取得する。インストール情報管理部222は、インストール通知情報を送信した対象アプリケーション10−1がインストールされたユーザ端末100を特定するリワードユーザID(固有識別情報の一例)と対象アプリケーション10−1のアプリIDとを関連付けて管理するとともに、当該リワードユーザIDと関連付け情報(例えば、アプリユーザID)とを関連付けて管理する。他端末情報抽出部249は、インストール情報管理部222を照会することにより、インストール通知情報を送信した対象アプリケーション10−1がインストールされたユーザ端末100を特定するリワードユーザIDに関連付けられている関連付け情報を介して、当該リワードユーザIDに関連付けられる他のリワードユーザIDを抽出する。リスト通知部242は、対象アプリケーション10−1がインストールされたユーザ端末100、及び他端末情報抽出部249が抽出した他のリワードユーザIDにより特定される他のユーザ端末100にインストールされた対象アプリケーション10のうちのいずれからもインストール通知情報を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))のアプリケーションリストを、ユーザ端末100に対して送信する。
これにより、本実施形態の管理サーバ200cは、例えば、ユーザ端末100を機種変更した場合に、機種変更前のユーザ端末100(ユーザ端末100A)にインストールされている対象アプリケーションと、機種変更後のユーザ端末100(ユーザ端末100B)にインストールされている対象アプリケーションとを関連付けて管理することができる。そのため、管理サーバ200cは、例えば、ユーザ端末100を機種変更した後に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。すなわち、管理サーバ200cは、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合に、同一のユーザの他のユーザ端末100において既にインストールされている対象アプリケーションを、ユーザに対してインストールを勧める対象アプリケーションのアプリケーションリストとして当該ユーザに提示されてしまうことを抑制することができる。
(2)また、本実施形態では、インストール情報管理部222は、ユーザ端末100(端末装置の一例)を特定するリワードユーザIDと対象アプリケーション(第1アプリケーションの一例)のアプリID(識別情報の一例)と対象アプリケーションにおけるアプリユーザID(ユーザ情報の一例)とを関連付けて管理する。そして、他端末情報抽出部249は、関連付け情報として、対象アプリケーションにおけるアプリユーザIDを利用する。
これにより、本実施形態の管理サーバ200cは、管理サーバ200cが管理している情報であるアプリユーザIDを利用するので、関連付け情報として、新たな情報を追加する場合に比べて、簡易な手段により異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
(3)また、本実施形態では、他端末情報抽出部249は、上述した第1の抽出方法のように対象アプリケーション(第1アプリケーションの一例)がインストールされたユーザ端末100(端末装置の一例)を特定するリワードユーザID(固有識別情報の一例)に関連付けられている対象アプリケーションにおけるアプリユーザIDが、当該リワードユーザIDの他に関連付けられている他のリワードユーザIDを抽出する。
これにより、本実施形態の管理サーバ200cは、アプリユーザIDを利用して、異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
(4)また、本実施形態では、他端末情報抽出部249は、関連付け情報として、対象アプリケーション(第1アプリケーションの一例)におけるアプリユーザIDに関連付けられているリワードユーザID(固有識別情報の一例)に関連付けられている他の対象アプリケーションにおけるアプリユーザIDを利用する。
これにより、本実施形態の管理サーバ200cは、上述した第2の抽出方法のように対象アプリケーションにおけるアプリユーザIDを利用して、当該リワードユーザIDに関連付けられる他のリワードユーザIDを抽出することができなかった場合であっても、他の対象アプリケーションにおけるアプリユーザIDを利用して、異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
(5)また、本実施形態では、他端末情報抽出部249は、関連付け情報として、対象アプリケーション(第1アプリケーションの一例)がインストールされたユーザ端末100(端末装置の一例)を特定するリワードユーザID(固有識別情報の一例)に関連付けられている対象アプリケーションのアプリIDと、対象アプリケーションにおけるアプリユーザIDとを利用する。
これにより、関連付け情報として、アプリIDとアプリユーザIDとの両方を利用するので、本実施形態の管理サーバ200cは、例えば、異なる対象アプリケーションにおいて同一のアプリユーザIDが使用されている場合に、誤って同一のユーザであると判定することを防止することができる。
(6)また、本実施形態では、インストール通知情報には、ユーザ端末100(端末装置の一例)を特定するリワードユーザID(固有識別情報の一例)、及び対象アプリケーション(第1アプリケーションの一例)のアプリID(識別情報の一例)が含まれる。そして、インストール情報管理部222は、インストール通知取得部241が取得したユーザ端末100を特定するリワードユーザIDと対象アプリケーションのアプリIDとを関連付けて管理する。
これにより、本実施形態の管理サーバ200cは、ユーザ端末100にインストールされた対象アプリケーションをリワードユーザIDと対象アプリケーションのアプリIDとに基づいて管理することができる。
(7)また、本実施形態の管理サーバ200cは、ユーザ端末100を特定するリワードユーザID(固有識別情報の一例)と関連付けて対象アプリケーション(第1アプリケーションの一例)のアプリユーザID(ユーザ情報の一例)を取得するアプリユーザ情報取得部を備える。なお、インストール通知取得部241を、アプリユーザ情報取得部として機能させるようにしてもよい。すなわち、インストール通知情報にインストール通知情報を送信した対象アプリケーションのアプリユーザIDを含めるようにしてもよい。このように、アプリユーザ情報取得部の機能を他の機能に含ませるようにしてもよい。そして、インストール情報管理部222は、アプリユーザ情報取得部が取得した対象アプリケーションにおけるアプリユーザIDを、ユーザ端末100を特定するリワードユーザIDと関連付けて管理する。
これにより、ユーザ端末100に対象アプリケーションがインストールされた場合、管理サーバ200cは、インストールされた対象アプリケーションのアプリIDと、インストールされた対象アプリケーションにおけるアプリユーザIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。すなわち、管理サーバ200cは、ユーザ端末100にインストールされている対象アプリケーション毎のアプリユーザIDをリワードユーザIDに関連付けて管理することができる。
(8)また、本実施形態の管理サーバ200cは、リワード処理部245を備えている。このリワード処理部245は、アプリケーションリストに含まれる一または複数の対象アプリケーションからユーザ端末100で選択された対象アプリケーション10−5や10−6(第2アプリケーションの一例)における所定の報酬付与条件が充足されたと判定された場合に、対象アプリケーション10−1や10−4(第1アプリケーションの一例)において所定の報酬が付与される報酬付与処理を実行する。
これにより、本実施形態の管理サーバ200cは、所定の報酬付与条件が充足されたと判定された場合に、対象アプリケーション10−1や10−4において所定の報酬を付与することができる。ここで、本実施形態の管理サーバ200cは、報酬付与の対象となる対象アプリケーションのアプリケーションリストを生成して、生成したアプリケーションリストをユーザ端末100に対して送信する。すなわち、本実施形態の管理サーバ200cは、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合に、報酬付与の対象でない対象アプリケーションを除外したアプリケーションリストを、ユーザ端末100に対して送信する。そのため、本実施形態の管理サーバ200cは、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合であっても、報酬付与の対象となる対象アプリケーションの適切なアプリケーションリストをユーザに提示させることができる。よって、本実施形態の管理サーバ200cは、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合に、報酬付与の対象でない対象アプリケーションが、報酬付与の対象となる対象アプリケーションとしてユーザに提示されてしまうことを抑制することができる。
なお、本実施形態では、インストール情報記憶部236は、リワードユーザID(RewardUID)とアプリID(ApID)との関連付けと、リワードユーザID(RewardUID)とアプリユーザID(ApUID)とをひとつのデータテーブルとして構成したが、図35に示すように、2つのデータテーブルに分けて構成してもよい。すなわち、インストール情報記憶部236は、リワードユーザID(RewardUID)とアプリID(ApID)との関連付ける第1のデータテーブルと、アプリユーザID(ApUID)とアプリユーザID(ApUID)を関連付ける第2のデータテーブルとに分けて構成してもよい。この場合には、互いのデータテーブルを関連付ける主キーとなるデータをそれぞれのデータテーブルに対応付けるようにする。
図35に示す例では、インストール情報記憶部236は、第1のデータテーブルと、第2のデータテーブルとを記憶している。インストール情報記憶部236は、第1データテーブルとして、例えば、主キーとしてのインストールID(InstID)と、リワードユーザID(RewardUID)と、アプリID(ApID)と、通知タイプ(Ttype)とを関連付けて記憶する。また、インストール情報記憶部236は、第2のデータテーブルとして、主キーとしてのインストールID(InstID)と、アプリID(ApID)と、アプリユーザID(ApUID)とを関連付けて記憶する。
また、上述した本実施形態では、関連付け情報として、アプリユーザIDとを利用する場合について説明したが、これに限定されるものではない。管理サーバ200cは、関連付け情報として、例えば、ユーザによって入力された連携コード(例えば、メールアドレスなど)を利用してもよい。この場合、他端末情報抽出部249は、ユーザによって入力された連携コードが一致するリワードユーザIDを関連付けることで、異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
<第8の実施形態>
次に、本発明の第8の実施形態を説明する。まず、本実施形態の相互送客システム500cの概要について説明する。
上述した相互送客システム500(500a)では、一つのユーザ端末100に一つのリワードユーザIDを対応付けて管理している。そのため、同一のユーザ端末100であってもリワードユーザIDに変更が生じた場合には、変更前のユーザ端末100と変更後のユーザ端末100とが異なるユーザ端末100であると判断されてしまう。
ここで、リワードユーザIDに変更が生じた場合とは、例えば、リワードユーザIDの変更がユーザに許可されていてユーザにより変更された場合、相互送客システム500cの都合や処理により変更された場合、または相互送客システム500c以外の都合や処理により変更された場合等のことをいう。
例えば、ユーザ端末100のOSの機能としてユーザ端末100毎に対応付けられた互いに異なる情報であって、各アプリケーションによって使用することが許可されている情報(以下、ID情報と称する)がある場合、このID情報をリワードユーザIDとして利用することができる。このID情報は、例えば、広告識別子(Advertising Identifier)であってもよい。
ここで、このID情報の変更がユーザに許可されている場合、当該ID情報をユーザが変更するとリワードユーザIDが変更されることになる。なお、リワードユーザIDとして、ユーザ端末100に設定されている電話番号やユーザがユーザ端末100において利用しているメールアドレス等を利用してもよく、その場合、利用している電話番号やメールアドレス等が変更された場合、リワードユーザIDが変更されることになる。
リワードユーザIDが変更された場合、上述した相互送客システム500(500a)では、同一のユーザ端末100であるにも関わらず、例えば、リワードユーザIDの変更後に、リワードユーザIDの変更前に利用していた対象アプリケーションが、報酬付与の対象となる対象アプリケーションとしてユーザに提示されてしまうことがある。このように、上述した相互送客システム500(500a)では、ユーザ端末100においてリワードユーザIDが変更された場合、ユーザに対してインストールを勧める対象でない対象アプリケーションが、インストールを勧める対象となる対象アプリケーションとしてユーザに提示されてしまうことがある。
そこで、本実施形態では、同一のユーザ端末100においてリワードユーザIDが変更された場合であっても、ユーザに対してインストールを勧める対象でない対象アプリケーションを除外した適切な対象アプリケーションの一覧LTをユーザに提示する相互送客システム500cの実施形態について説明する。
〔第8の実施形態による相互送客システムの概要〕
図36は、本実施形態の相互送客システム500cの概要を説明する説明図である。
この図において、本実施形態によるネットワークシステム1cの基本的な構成は、第1〜第7の実施形態の構成と同様であり、管理サーバ200dと、ユーザ端末100とを備えている。この図では、ユーザ端末100には、リワードユーザIDの変更前又は変更後に対象アプリケーション10−1〜10−4(アプリ1〜アプリ4)がインストールされたことを示している。符号100Mに示す領域に図示した対象アプリケーション10−1〜10−3(アプリ1〜アプリ3)は、リワードユーザIDの変更前にインストールされて起動し、インストール通知情報を管理サーバ200dに送信済みであることを示している。一方、符号100Nに示す領域に図示した対象アプリケーション10−4(アプリ4)は、リワードユーザIDの変更後にインストールされて起動し、インストール通知情報を管理サーバ200dに送信したことを示している。また、符号100Nに示す領域に図示した対象アプリケーション10−1(アプリ1)は、リワードユーザIDの変更前にインストールされた対象アプリケーション10−1(アプリ1)がリワードユーザIDの変更後に起動して、インストール通知情報を管理サーバ200dに送信したことを便宜的に表している。なお、リワードユーザIDの変更前にインストールされた対象アプリケーション10−2、10−3(アプリ2、アプリ3)は、例えばリワードユーザIDの変更後に一度も起動しておらず、インストール通知情報を管理サーバ200dに送信していないものとする。
なお、リワードユーザIDの変更前及び変更後のいずれもユーザ端末100にインストールされたことがない対象アプリケーションを対象アプリケーション10−5(アプリ5)及び対象アプリケーション10−6(アプリ6)として説明する。なお、特に区別しない場合には、「−1」、「−2」等の記載を省略して対象アプリケーション10として説明する。
また、この図において、管理サーバ200dは、相互送客システム500cの対象アプリケーション情報として、「アプリ1(ApID=001)」〜「アプリ6(ApID=006)」を記憶しているものとする。
ここでは、図36を参照して、ユーザXが、ユーザ端末100においてリワードユーザIDを変更した場合を一例として、本実施形態の相互送客システム500cの概要について説明する。
まず、ユーザ端末100は、リワードユーザIDの変更前に各対象アプリケーション10−1〜10−3がインストールされて最初に起動する際に、(1)〜(3)に示すように各対象アプリケーション10−1〜10−3に対応するインストール通知情報を管理サーバ200dに対して送信する。なお、この(1)〜(3)で送信されるインストール通知情報には、例えば、変更前のリワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)とが含まれている。
管理サーバ200dは、各対象アプリケーション10−1〜10−3に対応するインストール通知情報を取得して、インストール情報として記憶する。ここでは、(1)〜(3)により、変更前のリワードユーザIDに対応するインストール情報T10が管理サーバ200dに記憶される。
次に、ユーザXがユーザ端末100において、リワードユーザID(RewardUID)を変更したとする。そして、リワードユーザID(RewardUID)の変更後に、ユーザ端末100は、(4)に示すように変更前にインストール済みの対象アプリケーション10−1に対応するンストール通知情報を管理サーバ200dに対して送信する。例えば、リワードユーザID(RewardUID)の変更後に対象アプリケーション10−1が初めて起動したときに、ユーザ端末100は、対象アプリケーション10−1に対応するインストール通知情報を管理サーバ200dに対して送信する。なお、リワードユーザIDの変更前にインストールされた対象アプリケーションがリワードユーザIDの変更後にインストール通知情報を送信する処理については、図38を参照して後述する。
また、リワードユーザID(RewardUID)の変更後にユーザ端末100に対象アプリケーション10−4がインストールされると、ユーザ端末100は、対象アプリケーション10−4が最初に起動する際に、(5)に示すように対象アプリケーション10−4に対応するインストール通知情報を管理サーバ200dに対して送信する。
この(4)、(5)で送信されるインストール通知情報には、例えば、変更後のリワードユーザID(RewardUID)と、アプリID(ApID)と、アプリユーザID(ApUID)とが含まれている。
管理サーバ200dは、対象アプリケーション10−1に対応するインストール通知情報及び対象アプリケーション10−4に対応するインストール通知情報を取得して、インストール情報として記憶する。ここでは、(4)、(5)により、変更後のリワードユーザID(RewardUID)に対応するインストール情報T20が管理サーバ200dに記憶される。
例えば、管理サーバ200dは、ユーザXのユーザ端末100のリワードユーザIDの変更後に対象アプリケーション10−1から送信されたリスト要求通知情報を取得した場合、変更後のリワードユーザIDに対応するインストール情報T20に含まれるアプリユーザID(ApUID)が、他のリワードユーザIDに対応するインストール情報に含まれていないかを検索する。そして、管理サーバ200dは、当該アプリユーザID(ApUID)が他のリワードユーザIDに対応するインストール情報に含まれている場合には、当該インストール情報を、ユーザXの同一のユーザ端末100(上述のリスト要求通知情報を送信したユーザ端末100)から取得したインストール通知情報により記憶したものであると判定する。
ここでは、インストール情報T20に含まれるアプリユーザID(ApUID)の「5288」が、他のリワードユーザID(RewardUID)に対応するインストール情報T10(すなわち、変更前のリワードユーザID(RewardUID)に対応するインストール情報T10)に含まれている。そのため、管理サーバ200dは、同一のアプリユーザID(ApUID)の「5288」が含まれるインストール情報T10とインストール情報T20とが、ユーザXの同一のユーザ端末100におけるインストール情報であると判定し、変更前のリワードユーザID(RewardUID)の「09634565」と、変更後のリワードユーザID(RewardUID)の「24957234」とを関連付ける。
これにより、管理サーバ200dは、インストール情報T10とインストール情報T20とを対応付ける。そして、管理サーバ200dは、対応付けたインストール情報T10とインストール情報T20とに基づいてユーザに対してインストールを勧める対象アプリケーションのアプリケーションリストを生成し、例えば(6)に示すように、生成した対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信する。この例では、対象アプリケーション情報として記憶されている対象アプリケーションのうち、「アプリ5(ApID=005)」及び「アプリ6(ApID=006)」がインストール情報T10又はインストール情報T20に含まれていないので、管理サーバ200dは、「アプリ5(ApID=005)」及び「アプリ6(ApID=006)」を示す対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信する。
その結果、ユーザ端末100は、対象アプリケーションの一覧LTを表示する。
このように、本実施形態では、管理サーバ200dは、アプリユーザID(ApUID)に基づいて、同一のユーザ端末100における変更前のリワードユーザID(RewardUID)と変更後のリワードユーザID(RewardUID)とを関連付けて、同一のユーザ端末100のリワードユーザID(RewardUID)として管理する。そして、管理サーバ200dは、変更前のリワードユーザID(RewardUID)と変更後のリワードユーザID(RewardUID)とのそれぞれに対応するユーザ端末100を同一のユーザ端末100であると判定し、当該ユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示すアプリケーションリストをユーザ端末100に対して送信する。
これにより、ユーザ端末100は、ユーザXにインストールを勧める対象でない対象アプリケーション(すなわち、ユーザ端末100にインストール済みの対象アプリケーション)を除外した適切な対象アプリケーションの一覧LTをユーザXに提示することができる。
次に、本実施形態による相互送客システム500cについて、詳細に説明する。
本実施形態によるネットワークシステム1cの構成、及びユーザ端末100の構成は、図2に示す第1の実施形態におけるネットワークシステム1の構成、及び、図3に示す第1の実施形態におけるユーザ端末100の構成と同様であるので、ここではその説明を省略する。また、本実施形態のユーザ端末100(SDK11)の機能構成は、図5に示す第1の実施形態と同様であるので、ここではその説明を省略する。
なお、図36を参照して説明したようにアプリユーザID(ApUID)に基づいて変更前と変更後の2種類のリワードユーザID(RewardUID)を関連付けて管理する本実施形態の方法は、上述の第7の実施形態で説明した、アプリユーザID(ApUID)に基づいて機種変更前のリワードユーザID(RewardUID)と機種変更後のリワードユーザID(RewardUID)とを関連付けて管理する方法と同様の方法である。
従って、本実施形態による相互送客システム500cの構成は、第7の実施形態による相互送客システム500bの構成と同様の構成としてもよい。すなわち、相互送客システム500cが備える管理サーバ200dの構成は、図32に示す第7の実施形態による管理サーバ200cの構成と同様の構成としてもよい。
〔第8の実施形態による相互送客システム500cの構成〕
図37は、本実施形態による管理サーバ200dの構成の一例を示す構成図である。この図37を参照して、本実施形態による管理サーバ200dの構成の詳細について説明する。
管理サーバ200dは、通信部210と、管理部220と、記憶部230と、制御部240dとを備えている。なお、この図において、図32と同様の構成に同一の符号を付し、ここでは説明を省略する。この図37に示す管理サーバ200dの構成は、図32に示す管理サーバ200cの構成に対して、他端末情報抽出部249に代えて情報抽出部249aを備えている点が異なる。ここで、上述したように管理サーバ200dの構成は、図32に示す管理サーバ200cの構成と同様の構成としてもよいため、情報抽出部249aが有する機能として、他端末情報抽出部249が有する機能を適用することができる。
例えば、本実施形態による情報抽出部249aは、図32に示す他端末情報抽出部249と同様に、インストール情報管理部222が管理するインストール情報に含まれるリワードユーザID及び関連付け情報(例えば、対象アプリケーションにおけるユーザ情報)に基づいて、当該関連付け情報に関連付けられたリワードユーザIDを抽出する。これにより、本実施形態の情報抽出部249aは、変更後のリワードユーザIDにより特定されるユーザ端末100における変更前のリワードユーザIDを抽出する。
つまり、第7の実施形態では他端末情報抽出部249が、関連付け情報に関連付けられたリワードユーザIDを抽出することにより、機種変更前のリワードユーザIDと機種変更後のリワードユーザIDとを抽出した。これに対して本実施形態では情報抽出部249aが、他端末情報抽出部249が有する機能と同様の機能により、関連付け情報に関連付けられたリワードユーザIDを抽出することにより、同一のユーザ端末100における変更前のリワードユーザIDと変更後のリワードユーザID(RewardUID)とを抽出する。
上述の関連付け情報としては、第7の実施形態で第1の抽出方法として説明したように、対象アプリケーションにおけるユーザ情報(例えば、アプリユーザID)を利用してもよい。
具体的には、情報抽出部249aは、対象アプリケーションがインストールされたユーザ端末100を特定するリワードユーザIDに関連付けられている対象アプリケーションにおけるアプリユーザIDが、当該リワードユーザIDの他に関連付けられている他のリワードユーザIDを抽出してもよい。
例えば、情報抽出部249aは、リワードユーザIDの変更前にインストールされた対象アプリケーションのうち、リワードユーザIDの変更後にもインストール通知情報を送信した対象アプリケーション(例えば、対象アプリケーション10−1)のアプリユーザIDを利用してもよい。そして、情報抽出部249aは、変更後のリワードユーザIDに関連付けられているアプリユーザIDが、当該変更後のリワードユーザIDの他に関連付けられている他のリワードユーザIDを抽出することにより、同一のユーザ端末100の変更前のリワードユーザIDを抽出してもよい。
なお、ユーザ端末100にインストールされた対象アプリケーションには、リワードユーザIDの変更前にはインストールされていない対象アプリケーション(例えば、対象アプリケーション10−4)が含まれる場合がある。この場合には、この対象アプリケーション(例えば、対象アプリケーション10−4)のアプリユーザIDを利用して、変更前のリワードユーザIDを抽出することができない。そのため、上述の関連付け情報として、第7の実施形態で第2の抽出方法として説明したように、対象アプリケーション(例えば、対象アプリケーション10−4)のアプリユーザIDと同一のリワードユーザIDに関連付けられている他の対象アプリケーション(例えば、対象アプリケーション10−1)のアプリユーザIDを利用するようにしてもよい。
なお、上述の関連付け情報として、対象アプリケーションにおけるアプリユーザIDのみを利用してもよいし、対象アプリケーションのアプリIDとアプリユーザIDとの組を利用してもよい。
なお、本実施形態による情報抽出部249aは、、第7の実施形態による他端末情報抽出部249と同様に、機種変更前のリワードユーザIDと機種変更後のリワードユーザIDとをさらに抽出してもよい。
また、本実施形態のリスト通知部242は、情報抽出部249aが抽出したリワードユーザIDに対応するユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示すアプリケーションリストをユーザ端末100に対して送信する。例えば、リスト通知部242は、変更前のリワードユーザID又は変更後のリワードユーザIDに対応するユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーションを示すアプリケーションリストを、変更後のリワードユーザIDに対応するユーザ端末100に対して送信する。すなわち、リスト通知部242は、アプリケーション管理部221が管理する複数の対象アプリケーションのうちから、ユーザ端末100において、リワードユーザIDの変更後にインストールされた対象アプリケーションだけでなく、リワードユーザIDの変更前にインストールされた対象アプリケーションを含めて除外した少なくとも一の対象アプリケーションのアプリケーションリストをユーザ端末100に対して送信する。
〔第8の実施形態による相互送客処理の動作の詳細〕
本実施形態の相互送客システム500cの基本的な動作は、図14及び図15に示す第1の実施形態と同様であり、ここでは、本実施形態の対象アプリケーションのアプリケーションリストを生成する処理の動作について説明する。
本実施形態の相互送客システム500cにおいてアプリケーションリストを生成する処理の動作では、図34に示すステップSE115の処理において、他端末情報抽出部249がユーザXの旧端末(機種変更前のユーザ端末100A)にインストールされた対象アプリケーションを抽出する処理に代えて、情報抽出部249aが、ユーザXのユーザ端末100においてリワードユーザIDの変更前にインストールされた対象アプリケーションを抽出する処理を実行する。
なお、本実施形態において情報抽出部249aが実行するステップS115の具体的な処理は、第7の実施形態において他端末情報抽出部249が実行する処理と同様であり、関連付け情報(例えば、アプリユーザID)に関連付けられたリワードユーザIDを抽出する処理である。
例えば、情報抽出部249aは、上述の第1の抽出方法にしたがってユーザ端末100の変更前のリワードユーザIDを抽出して、リワードユーザIDの変更前にインストールされた対象アプリケーションを抽出する。なお、情報抽出部249aは、第2の抽出方法にしたがってユーザ端末100の変更前のリワードユーザIDを抽出してもよいし、第1の抽出方法と第2の抽出方法とを組み合わせてユーザ端末100の変更前のリワードユーザIDを抽出してもよい。
〔第8の実施形態によるインストール通知情報の送信処理の例〕
次に、本実施形態において、ユーザ端末100においてリワードユーザIDの変更前にインストールされている対象アプリケーションのインストール通知情報を、リワードユーザIDの変更後に管理サーバ200dに送信する処理について説明する。
インストール通知情報の送信処理は、例えば、第1の実施形態において図14を参照して説明した初期化処理において行われる。この図14に示す初期化処理では、対象アプリケーションがユーザ端末100にインストールされて起動した際に、当該対象アプリケーションのインストール通知情報をユーザ端末100から管理サーバ200に送信して初期化済みとなると、当該対象アプリケーションの次の起動からは、インストール通知情報を送信する処理が行われない。そのため、その後にユーザ端末100のリワードユーザIDが変更されても、図14に示す処理では、変更後にユーザ端末100からインストール通知情報を送信することができない。
そこで、本実施形態では、ユーザ端末100のリワードユーザIDが変更された場合には、変更前にインストール通知を送信済みの対象アプリケーションであっても再度インストール通知情報をユーザ端末100から管理サーバ200dに送信する処理を行う。
図38は、本実施形態による初期化処理の一例を示すフローチャートである。この図38は、図14に示す初期化処理(ステップSA11〜SA17)の他の形態を示しており、初期化処理に関連する処理以外は図14に示す各処理と同様であり、その図示を省略している。
この図38に示す初期化処理では、ユーザ端末100のOSの機能としてユーザ端末100毎に対応付けられた互いに異なるID情報が、端末記憶部140に記憶されているものとし、このID情報をリワードユーザIDとして利用する場合を例として説明する。なお、このID情報は、例えば、OSにより設定されて端末記憶部140に記憶されていてもよいし、OSの起動後に当該OSの指示にしたがってユーザにより設定されて端末記憶部140に記憶されてもよい。また、OSにより、このID情報の変更がユーザに許可されているものとする。
以下、図38を参照して、リワードユーザIDが変更された場合、初期化処理において、再度インストール通知情報を管理サーバ200dに送信する処理の動作を説明する。なお、この図38において、図14の各処理に対応する処理には同じ符号を付しており、その説明を適宜省略する。
SDK11Aの初期化処理部101は、初期化処理において、初期化処理済みであるか否かを判定する(ステップSA12)。初期化処理済みでないと判定された場合(ステップSA12:NO)、SDK11Aの固有識別情報取得部102は、端末記憶部140を参照して、リワードユーザIDが取得済みであるか否かを判定する(ステップSA13)。
リワードユーザIDが取得済みでないと判定された場合(ステップSA13:NO)、固有識別情報取得部102は、ユーザ端末100に対応するリワードユーザIDを生成して取得する。ここでは、固有識別情報取得部102は、端末記憶部140を参照して、OSの機能としてユーザ端末100に対応付けられたID情報をリワードユーザIDとして取得する(ステップSA14a)。そして、固有識別情報取得部102は、リワードユーザIDとして取得したID情報を、リワードユーザIDとして端末記憶部140のアプリ間共有エリアに記憶させる(ステップSA15)。
一方、リワードユーザIDが取得済みであると判定された場合(ステップSA13:YES)、固有識別情報取得部102は、端末記憶部140からリワードユーザIDを読み出し、ステップSA16に処理を進める。
続いて、SDK11Aのインストール通知部103は、送客元アプリ10(ゲームA)がユーザ端末100にインストールされたことを示すインストール通知情報を、管理サーバ200dに対して送信する(ステップSA16)。ここでインストール通知情報には、このユーザ端末100に対応するリワードユーザID(RewardUID)と、インストールされた送客元アプリ10(ゲームA)のアプリID(ApID)と、この送客元アプリ10(ゲームA)において登録されたユーザXのアプリユーザID(ApUID)とが含まれる。
次に、管理サーバ200dのインストール通知取得部241は、ユーザ端末100(SDK11A)から送信されたインストール通知情報を取得し、当該取得したことを示す応答情報(通知結果)を、当該ユーザ端末100(SDK11A)に対して送信する。また、管理サーバ200dのインストール情報管理部222は、インストール通知取得部241が取得したインストール通知情報に含まれるリワードユーザID(RewardUID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、送客元アプリ10(ゲームA)におけるユーザXのアプリユーザID(ApUID)とを関連付けて、インストール情報としてインストール情報記憶部236に記憶させる(ステップSE11)。
SDK11Aの初期化処理部101は、管理サーバ200dから送信された応答情報(通知結果)を取得すると、初期化済みを示すフラグを設定して初期化処理を終了する(ステップSA17)。
一方、ステップSA12において初期化処理済みであると判定された場合(ステップSA12:YES)、固有識別情報取得部102は、端末記憶部140に記憶されているID情報とリワードユーザID(RewardUID)とを比較することにより、ID情報が変更されたか否かを判定する(ステップS121)。端末記憶部140に記憶されているID情報とリワードユーザID(RewardUID)とが一致することによりID情報が変更されていないと判定された場合(ステップS121:NO)、初期化処理部101は、初期化処理を終了する。
一方、端末記憶部140に記憶されているID情報とリワードユーザID(RewardUID)とが一致しないことによりID情報が変更されたと判定された場合(ステップS121:YES)、固有識別情報取得部102は、この変更後のID情報をリワードユーザIDとして取得し(ステップSA14a)、取得したID情報を変更後のリワードユーザIDとして、端末記憶部140のアプリ間共有エリアに記憶させる(ステップSA15)。なお、固有識別情報取得部102は、この変更後のリワードユーザIDを端末記憶部140に記憶させる場合、変更前のリワードユーザIDに代えて変更後のリワードユーザIDを記憶させてもよいし、変更前のリワードユーザIDを残して変更後のリワードユーザIDを区別可能なように記憶させてもよい。
そして、インストール通知部103は、送客元アプリ10(ゲームA)がユーザ端末100にインストールされたことを示すインストール通知情報を、管理サーバ200dに対して送信する(REQ11、ステップSA16)。ここでインストール通知情報には、このユーザ端末100に対応する変更後のリワードユーザID(RewardUID)と、インストールされた送客元アプリ10(ゲームA)のアプリID(ApID)と、この送客元アプリ10(ゲームA)において登録されたユーザXのアプリユーザID(ApUID)とが含まれる。
管理サーバ200dは、リワードユーザIDの変更後にユーザ端末100から送信されたインストール通知情報を取得し、取得したインストール通知情報に含まれる変更後のリワードユーザID(RewardUID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、送客元アプリ10(ゲームA)におけるユーザXのアプリユーザID(ApUID)とを関連付けて、インストール情報(例えば、図36に示すインストール情報T20)としてインストール情報記憶部236に記憶させる(ステップSE11)。
これにより、ユーザ端末100は、リワードユーザIDが変更された場合、変更前にインストールされてインストール通知情報を送信済みの対象アプリケーションのインストール通知情報を、当該変更後に送信することができる。よって、管理サーバ200dは、ユーザ端末100においてリワードユーザIDが変更された場合、この変更前と変更後とのそれぞれでインストール通知情報を送信した対象アプリケーションのアプリユーザIDにに基づいて、変更前のリワードユーザIDと変更後のリワードユーザIDとを関連付けて管理することができる。
なお、ユーザ端末100にインストールされた対象アプリケーションが初めて起動した際に、ステップSA13においてリワードユーザIDが取得済みであると判定された場合、固有識別情報取得部102は、端末記憶部140に記憶されているID情報とリワードユーザID(RewardUID)とを比較して、比較結果に基づいた処理をしてもよい。例えば、インストール通知部103は、端末記憶部140に記憶されているID情報とリワードユーザID(RewardUID)とが一致しない場合には当該ID情報をリワードユーザID(RewardUID)としてインストール通知情報を管理サーバ200dに送信してもよい。
これにより、ユーザ端末100は、ユーザ端末100にインストールされた対象アプリケーションが初めて起動した際に、リワードユーザIDが取得済みであって、ID情報が変更されているにも関わらず変更前のID情報が未だリワードユーザIDとして端末記憶部140に記憶されている場合であっても、変更後のID情報をリワードユーザIDとしたインストール通知情報を管理サーバ200dに送信することができる。また、対象アプリケーションが初めて起動した際には、変更後のID情報をリワードユーザIDとして端末記憶部140に記憶させないようにすることにより、変更前にインストールされてインストール通知情報を送信済みの対象アプリケーションのうちの少なくとも一つの対象アプリケーションのインストール通知情報を変更後に送信することができる。
なお、初期化処理部101は、ユーザ端末100にインストールされた対象アプリケーションが起動する際に、インストール通知情報を毎回送信するように制御してもよい。この場合、管理サーバ200dは、ユーザ端末100からリワードユーザIDの変更前のたインストール通知情報と、リワードユーザIDの変更後のインストール通知情報とをそれぞれ取得して管理してもよい。
<第7及び第8の実施形態について>
以上説明した第7及び第8の実施形態について、以下のように記載することができるが、以下の記載に限られるものではない。
(1)第7実施形態の相互送客システム500bにおいて、管理サーバ200c(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241と、インストール情報管理部222と、他端末情報抽出部249と、リスト通知部242と、を備えている。また、第8実施形態の相互送客システム500cにおいて、管理サーバ200d(管理装置の一例)は、アプリケーション管理部221と、インストール通知取得部241と、インストール情報管理部222と、情報抽出部249aと、リスト通知部242と、を備えている。上述したように、情報抽出部249aが有する機能は、他端末情報抽出部249が有する機能と同様とすることができるため、第8の実施形態の管理サーバ200dの構成は、第7実施形態の管理サーバ200cの構成と同様の構成としてもよい。以下では、管理サーバ200dの構成を例に、管理サーバ200cと管理サーバ200dとのいずれも包含する構成として記述する。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241(第1情報取得部の一例)は、複数の対象アプリケーションのうちの対象アプリケーション10−1(第1アプリケーションの一例)がユーザ端末100により実行されたことに応じてユーザ端末100から送信されたインストール通知情報(第1情報の一例)と、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)とを関連付けて、ユーザ端末100から取得する。インストール情報管理部222(情報管理部の一例)は、インストール通知取得部241が取得したユーザ端末100に対応付けられたリワードユーザIDと関連付け情報とを関連付けて管理する。情報抽出部249a(抽出部の一例)は、インストール情報管理部222が管理するリワードユーザID及び関連付け情報に基づいて、当該関連付け情報に関連付けられたリワードユーザIDを抽出する。リスト通知部242(第2情報通知部の一例)は、情報抽出部249aが抽出したリワードユーザIDに対応するユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))を示す情報を含むアプリケーションリスト(第2情報の一例)を、対象アプリケーション10−1が実行されたユーザ端末100に対して送信する。
例えば、管理サーバ200dの情報抽出部249a(抽出部の一例)は、関連付け情報に関連付けられた複数のリワードユーザID(固有識別情報の一例)を抽出する。リスト通知部242(第2情報通知部の一例)は、情報抽出部249aが抽出した複数のリワードユーザIDのそれぞれに対応するユーザ端末100からインストール通知情報(第1情報の一例)を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))を示す情報を含むアプリケーションリスト(第2情報の一例)を、対象アプリケーション10−1が実行されたユーザ端末100に対して送信する。
これにより、本実施形態の管理サーバ200d(200c)は、複数のリワードユーザIDを関連付けて管理することができる。なお、関連付け情報に関連付けられているリワードユーザIDは、複数であるとは限られるものではなく1つの場合もある。
具体的には、管理サーバ200dの情報抽出部249a(抽出部の一例)は、関連付け情報に関連付けられた複数のリワードユーザID(固有識別情報の一例)として、対象アプリケーション10−1(第1アプリケーション)が実行されたユーザ端末100に対応付けられたリワードユーザIDである第1固有識別情報と、対象アプリケーション10−1が実行されたユーザ端末100にこの第1固有識別情報が対応付けられる以前に対応付けられた第2固有識別情報とを抽出してもよい。
そして、リスト通知部242(第2情報通知部の一例)は、情報抽出部249aが抽出した第1固有識別情報又は第2固有識別情報に対応するユーザ端末100からインストール通知情報(第1情報の一例)を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))を示す情報を含むアプリケーションリスト(第2情報の一例)を、第1固有識別情報に対応するユーザ端末100に対して送信してもよい。
これにより、管理サーバ200d(200c)は、例えば、ユーザ端末100のリワードユーザIDを変更した場合に、リワードユーザIDの変更前にユーザ端末100にインストールされて起動した(実行された)対象アプリケーションと、リワードユーザIDの変更後にユーザ端末100にインストールされて起動した(実行された)対象アプリケーションとを関連付けて管理することができる。そのため、管理サーバ200d(200c)は、例えば、ユーザ端末100のリワードユーザIDを変更した後に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。すなわち、管理サーバ200d(200c)は、ユーザ端末100のリワードユーザIDを変更した場合に、リワードユーザIDの変更前にユーザ端末100にインストールされて起動した(実行された)対象アプリケーションを、ユーザに対してインストールを勧める対象アプリケーションの対象アプリケーションの一覧LTとして当該ユーザに提示されてしまうことを抑制することができる。したがって、本実施形態によれば、ユーザに対してインストールを勧める適切な対象アプリケーションの一覧LTを提示することができる。
(2)また、管理サーバ200dの情報抽出部249a(抽出部の一例)は、関連付け情報に関連付けられた複数のリワードユーザID(固有識別情報の一例)として、対象アプリケーション10−1(第1アプリケーション)が実行されたユーザ端末100に対応付けられたリワードユーザIDである第1固有識別情報と、第1固有識別情報に対応するユーザ端末100とは異なる他のユーザ端末100に対応付けられたリワードユーザIDである第2固有識別情報とを抽出してもよい。
そして、リスト通知部242(第2情報通知部の一例)は、情報抽出部249aが抽出した第1固有識別情報に対応するユーザ端末100、及び第2固有識別情報に対応するユーザ端末100のうちのいずれからもインストール通知情報(第1情報の一例)を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))を示す情報を含むアプリケーションリスト(第2情報の一例)を、第1固有識別情報に対応するユーザ端末100に対して送信してもよい。
これにより、管理サーバ200d(200c)は、例えば、ユーザ端末100を機種変更した場合に、機種変更前のユーザ端末100(ユーザ端末100A)にインストールされて起動した(実行された)対象アプリケーションと、機種変更後のユーザ端末100(ユーザ端末100B)にインストールされて起動した(実行された)対象アプリケーションとを関連付けて管理することができる。そのため、管理サーバ200d(200c)は、例えば、ユーザ端末100を機種変更した後に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合に、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。すなわち、管理サーバ200d(200c)は、ユーザ端末100を機種変更した場合や、同一のユーザで複数のユーザ端末100を使用している場合に、同一のユーザの他のユーザ端末100において既にインストールされている対象アプリケーションを、ユーザに対してインストールを勧める対象アプリケーションのアプリケーションリストとして当該ユーザに提示されてしまうことを抑制することができる。
(3)インストール情報管理部222(情報管理部の一例)は、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)と、対象アプリケーション(第1アプリケーションの一例)におけるアプリユーザID(ユーザ情報の一例)とを関連付けて管理する。そして、情報抽出部249a(抽出部の一例)は、関連付け情報として、対象アプリケーションにおけるアプリユーザIDを利用してもよい。
これにより、管理サーバ200d(200c)は、管理サーバ200d(200c)が管理している情報であるアプリユーザIDを利用するので、関連付け情報として、新たな情報を追加する場合に比べて、簡易な手段により複数のリワードユーザIDを関連付けることができる。
例えば、情報抽出部249a(抽出部の一例)は、上述した第1の抽出方法のように対象アプリケーション(第1アプリケーションの一例)がインストールされたユーザ端末100に対応するリワードユーザIDに関連付けられている対象アプリケーションにおけるアプリユーザIDが、当該リワードユーザIDの他に関連付けられている他のリワードユーザIDを抽出する。
これにより、管理サーバ200d(200c)は、アプリユーザIDを利用して、同一のユーザ端末100における変更前と変更後のリワードユーザID、又は、異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
(4)また、情報抽出部249a(抽出部の一例)は、関連付け情報として、対象アプリケーション(第1アプリケーションの一例)におけるアプリユーザID(ユーザ情報の一例)に関連付けられているリワードユーザID(固有識別情報の一例)に関連付けられている他の対象アプリケーションにおけるアプリユーザIDを利用してもよい。
これにより、管理サーバ200d(200c)は、上述した第2の抽出方法のように対象アプリケーションにおけるアプリユーザIDを利用して、当該リワードユーザIDに関連付けられる他のリワードユーザIDを抽出することができなかった場合であっても、他の対象アプリケーションにおけるアプリユーザIDを利用して、同一のユーザ端末100における変更前と変更後のリワードユーザID、又は、異なるユーザ端末100間のリワードユーザIDを関連付けることができる。
(5)また、情報抽出部249a(抽出部の一例)は、関連付け情報として、対象アプリケーション(第1アプリケーションの一例)が実行されたユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)に関連付けられている対象アプリケーションのアプリID(第1アプリケーションを識別する識別情報の一例)と、当該対象アプリケーションにおけるアプリユーザID(ユーザ情報の一例)とを利用してもよい。
これにより、関連付け情報として、アプリIDとアプリユーザIDとの両方を利用するので、管理サーバ200d(200c)は、例えば、ある対象アプリケーションにおける第1のユーザのアプリユーザIDと同一のアプリユーザIDが、第1のユーザとは異なる第2のユーザの他の対象アプリケーションにおけるアプリユーザIDとして使用されている場合に、誤って同一のユーザであると判定することを防止することができる。
(6)また、対象アプリケーション(第1アプリケーションの一例)におけるアプリユーザID(ユーザ情報の一例)は、ユーザ端末100により実行された対象アプリケーションを利用するユーザを識別する情報である。管理サーバ200dは、例えば、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)と関連付けて対象アプリケーション(第1アプリケーションの一例)におけるアプリユーザID(ユーザ情報の一例)を取得するアプリユーザ情報取得部を備えてもよい。なお、インストール通知取得部241を、アプリユーザ情報取得部として機能させるようにしてもよい。すなわち、インストール通知情報にインストール通知情報を送信した対象アプリケーションのアプリユーザIDを含めるようにしてもよい。このように、アプリユーザ情報取得部の機能を他の機能に含ませるようにしてもよい。
そして、インストール情報管理部222は、アプリユーザ情報取得部が取得した対象アプリケーションにおけるアプリユーザIDを、ユーザ端末100に対応付けられたリワードユーザIDと関連付けて管理してもよい。
これにより、ユーザ端末100により対象アプリケーションが実行された場合、管理サーバ200d(200c)は、実行された対象アプリケーションのアプリIDと、実行された対象アプリケーションにおけるアプリユーザIDと、ユーザ端末100に対応付けられたリワードユーザIDとを関連付けて管理することができる。すなわち、管理サーバ200d(200c)は、ユーザ端末100により実行された対象アプリケーション毎のアプリユーザIDをリワードユーザIDに関連付けて管理することができる。
なお、関連付け情報としてユーザ情報を利用する場合に、アプリユーザIDを利用するのは一例であって、これに限られるものではない。例えば、関連付け情報として利用するユーザ情報は、対象アプリケーションにおけるユーザを識別可能な情報であればよく、ユーザ名、ユーザのニックネームやハンドルネーム(別名)、又はユーザ画像等としてもよい。
(7)また、管理サーバ200dのインストール通知取得部241(第1情報取得部の一例)は、対象アプリケーション(第1アプリケーションの一例)のアプリID(識別情報の一例)をユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)と関連付けて取得してもよい。そして、インストール情報管理部222(情報管理部の一例)は、インストール通知取得部241が取得した対象アプリケーションのアプリIDを、ユーザ端末100に対応付けられたリワードユーザIDと関連付けて管理する。
これにより、管理サーバ200d(200c)は、いずれの対象アプリケーションがユーザ端末100により実行されたかを、リワードユーザIDと対象アプリケーションのアプリIDとに基づいて管理することができる。
(8)また、管理サーバ200dは、リワード処理部245を備えている。このリワード処理部245は、アプリケーションリスト(第2情報の一例)により示される一または複数の対象アプリケーションうちの対象アプリケーション10−5や10−6(第2アプリケーションの一例)における所定の報酬付与条件が充足された場合に、ユーザ端末100を利用するユーザ(例えばユーザX)に対して報酬が付与される報酬付与処理をする。ここで、対象アプリケーション10−5や10−6(第2アプリケーションの一例)は、例えば、アプリケーションリストにより示される一または複数の対象アプリケーションうちからユーザ端末100で選択された対象アプリケーションである。
これにより、管理サーバ200d(200c)は、所定の報酬付与条件が充足されたと判定された場合に、対象アプリケーション10−1や10−4において所定の報酬を付与することができる。
(9)管理サーバ200dがインストール通知情報(第1情報の一例)を取得する場合、対象アプリケーションが実行されたことに応じて取得しなくてもよく、単に対象アプリケーションが実行されたユーザ端末100から取得してもよい。例えば、管理サーバ200dがインストール通知情報を取得するタイミングは、ユーザ端末100で対象アプリケーションが起動した直後に限られるものではなく、対象アプリケーションが起動してから所定の時間経過後、所定の時間毎、当該対象アプリケーションが所定の処理を実行した後、起動した対象アプリケーションが終了するとき、等であってもよい。なお、インストール通知情報(第1情報の一例)は、ユーザ端末100で対象アプリケーションが実行されたことがなければ当該ユーザ端末100から送信されない情報であって、ユーザ端末100から送信されたことによってユーザ端末100で対象アプリケーションが実行されたことを特定可能な情報であれば、いずれの情報であってもよい。
例えば、管理サーバ200dのアプリケーション管理部221、インストール通知取得部241(第1情報取得部の一例)、インストール情報管理部222(情報管理部の一例)、情報抽出部249a(抽出部の一例)、及びリスト通知部242(第2情報通知部の一例)の各部を以下のように記載することもできる。
アプリケーション管理部221は、管理の対象となる複数の対象アプリケーションに関する情報を管理する。インストール通知取得部241は、複数の対象アプリケーションのうちの対象アプリケーション10−1(第1アプリケーションの一例)が実行されたユーザ端末100から送信されたインストール通知情報(第1情報の一例)と、ユーザ端末100に対応付けられたリワードユーザID(固有識別情報の一例)とを関連付けて、ユーザ端末100から取得する。インストール情報管理部222は、インストール通知取得部241が取得したユーザ端末100に対応付けられたリワードユーザIDと関連付け情報とを関連付けて管理する。
情報抽出部249aは、インストール情報管理部222が管理するリワードユーザID及びアプリユーザID(関連付け情報の一例)に基づいて、当該アプリユーザIDに関連付けられた一又は複数のリワードユーザIDを抽出する。ここで、例えば、機種変更したユーザ又は複数のユーザ端末100を利用しているユーザのアプリユーザIDには、複数のリワードユーザIDが関連付けられ、複数のリワードユーザIDが抽出されることがある。一方、機種変更していないユーザ又は一つのユーザ端末100を利用しているユーザのアプリユーザIDには、一つのリワードユーザIDが関連付けられており、その一つのリワードユーザIDが抽出される。なお、ユーザ端末100においてリワードユーザIDが変更になった場合にも、そのユーザ端末100を利用しているユーザのアプリユーザIDには、変更前と変更後の複数のリワードユーザIDが関連付けられ、複数のリワードユーザIDが抽出されることがある。
リスト通知部242は、情報抽出部249aが抽出したリワードユーザIDに対応するユーザ端末100からインストール通知情報を取得していない少なくとも一の対象アプリケーション(例えば、対象アプリケーション10−5(アプリ5)、対象アプリケーション10−6(アプリ6))を示す情報を含むアプリケーションリスト(第2情報の一例)を、対象アプリケーション10−1が実行されたユーザ端末100に対して送信する。
これにより、管理サーバ200d(200c)は、同一ユーザの複数のリワードユーザIDを関連付けて管理することができるため、同一ユーザの複数のリワードユーザIDに関連付けられたインストール情報を、同一のユーザのインストール情報として管理することができる。
例えば、管理サーバ200d(200c)は、ユーザ端末100が機種変更された場合に、機種変更前のユーザ端末100(ユーザ端末100A)にインストールされて起動した(実行された)対象アプリケーションと、機種変更後のユーザ端末100(ユーザ端末100B)にインストールされて起動した(実行された)対象アプリケーションとを関連付けて管理することができる。そのため、管理サーバ200d(200c)は、機種変更後のユーザ端末100に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合、機種変更前に起動した(実行された)対象アプリケーションを除くことができるため、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。
また、管理サーバ200d(200c)は、同一のユーザが複数のユーザ端末100を並行して利用している場合に、同一のユーザの複数のユーザ端末100のそれぞれのリワードユーザIDを関連付けて管理することができる。そのため、管理サーバ200d(200c)は、同一のユーザの他のユーザ端末100において既にインストールされている対象アプリケーションを、ユーザに対してインストールを勧める対象アプリケーションのアプリケーションリストから除くことができるため、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。
また、管理サーバ200dは、ユーザ端末100のリワードユーザIDが変更された場合、リワードユーザIDの変更前に起動した対象アプリケーションと、リワードユーザIDの変更後に起動した対象アプリケーションとを関連付けて管理することができる。そのため、管理サーバ200dは、リワードユーザIDの変更後に、ユーザに対してインストールを勧める対象アプリケーションを提示する場合には、リワードユーザIDの変更前に起動した対象アプリケーションを除くことができるため、ユーザが利用したことのない対象アプリケーションの一覧LTをユーザに提示させることができる。
<第9の実施形態>
次に、本発明の第9の実施形態を説明する。上記第1の実施形態では、ユーザ端末100にインストールされている対象アプリケーションにSDK11(SDK11A)が組み込まれている送客元アプリ10から、ユーザ端末100にインストールされていない送客先アプリ20へ送客する送客処理の例を説明した。本実施形態では、送客元アプリ10に代えて、送客元の機能に特化した専用のアプリケーションから送客先アプリ20へ送客する送客処理の例を説明する。
〔第9の実施形態による相互送客システムの概要〕
図39は、本実施形態の相互送客システム500dの概要を説明する説明図である。本実施形態によるネットワークシステム1dは、第1の実施形態と同様に、管理サーバ200と、ユーザ端末100とを備えている。この図39において、図4の各部と対応する部分には同一の符号を付け、その説明を省略する。
この図39に示す相互送客システム500dは、送客元アプリ10を、送客先アプリ20への送客の機能を有した専用のアプリケーション(以下、「専用アプリ60」とも称する)に代えた点が、図4に示す相互送客システム500に対して異なる。この専用アプリ60は、例えば、アプリストア400からユーザ端末100に対してインストール可能(ダウンロード可能)なように提供される。この図では、ユーザ端末100には専用アプリ60がインストールされており、専用アプリ60から、送客先アプリ20への送客が行われる例を示している。
専用アプリ60には、例えば第1の実施形態において説明したSDK11Aの機能が含まれている。このように、ユーザ端末100にインストールされている専用アプリ60が、SDK11Aの機能を備えていることにより、相互送客システム500dでは、送客元アプリ10から送客先アプリ20に対する送客処理と同様に、専用アプリ60から送客先アプリ20に対する送客処理を行うことができる。
なお、ここでは、送客元が専用アプリ60であるため、送客元における報酬ではなく送客先アプリ20(ゲームB)における報酬がユーザXに対して付与される例としている。管理サーバ200は、(11A)に示すように送客先アプリ20(ゲームB)に対応するアプリサーバ320に報酬付与情報を送信する。
例えば、送客先アプリ20(ゲームB)がキャンペーン中ではない通常時期であれば、管理サーバ200は、送客先アプリ20(ゲームB)がユーザ端末100にインストールされたと判定されたことにより、送客先アプリ20(ゲームB)に対応するアプリサーバ320に報酬付与情報を送信する。また、送客先アプリ20(ゲームB)がキャンペーン中であれば、管理サーバ200は、例えば、ユーザ端末100にインストールされた送客先アプリ20(ゲームB)において報酬付与条件が充足されたことを示す報酬付与通知情報を取得した場合に送客先アプリ20(ゲームB)に対応するアプリサーバ320に報酬付与情報を送信する。
なお、送客先アプリ20(ゲームB)がキャンペーン中であるとは、送客先アプリ20が送客元(ここでは、専用アプリ60)との間で同一のキャンペーンに参加していてそのキャンペーン中であるとしてもよいし、送客先アプリ20が単独でキャンぺーンに参加していてそのキャンペーン中であるとしてもよい。
〔第9の実施形態のユーザ端末100(専用アプリ60)の機能構成〕
図40は、本実施形態によるユーザ端末100において、専用アプリ60に基づいて端末制御部150が実行する送客処理の機能構成の一例を示す構成図である。
専用アプリ60は、初期化処理部101と、リスト要求部104と、表示制御部105と、送客情報通知部106とを備えている。ここで、専用アプリ60は、図5に示すSDK11の機能構成のうち少なくとも送客元としての機能構成(例えば、SDK11Aの機能構成)のみを備えていればよいので、送客先の機能構成として特有な報酬付与通知部107を備えなくともよい。
なお、専用アプリ60は、SDK11Aが組み込まれている構成としてもよい。
この構成により、専用アプリ60は、SDK11Aが組み込まれている送客元アプリ10と同様に、対象アプリケーションの一覧LTから選択された送客先アプリ20に対する送客情報を管理サーバ200に対して送信する処理を行うことができる。
また、専用アプリ60は送客先のアプリケーションになることはない。そのため、ユーザ端末100に専用アプリ60がインストールされているか否かを管理サーバ200が管理しなくてもよい。よって、専用アプリ60は、インストール通知情報を管理サーバ200に送信しなくともよいため、図40に示すインストール通知部103を備えていない構成としてもよい。
〔第9の実施形態の相互送客処理の動作例〕
次に、本実施形態による相互送客システム500dによる送客処理の動作を説明する。相互送客システム500dによる送客処理は、送客元アプリ10の処理を専用アプリ60が行うことにより、図14を参照して説明した第1の実施形態による送客処理と同様の処理とすることができる。
なお、相互送客システム500dによる送客処理は、第1の実施形態による送客処理と部分的に異なる処理を行うようにしてもよい。例えば、上述したように、専用アプリ60が送客元となるため、専用アプリ60がインストールされているか否かを管理サーバ200が管理しない処理としてもよい。
図41は、本実施形態による送客処理の動作の一例を示すフローチャートである。この図41に示す例では、図14に示す送客元アプリ10が実行する処理を、送客元アプリ10に代えて専用アプリ60が実行する例であって、ユーザ端末100に専用アプリ60がインストールされているか否かを管理サーバ200が管理しない例である。この図41において、図14に示す各処理に対応する部分には同じ符号を付けており、その説明を適宜省略する。
ユーザ端末100に専用アプリ60がインストールされて起動すると、専用アプリ60の初期化処理部101は、初期化処理を実行する。この図に示す初期化処理は、リワードユーザIDを取得する処理であり、インストール通知情報を管理サーバ200に送信する処理は行われない。例えば、専用アプリ60の固有識別情報取得部102は、初期化処理において、端末記憶部140を参照して、リワードユーザIDが取得済みであるか否かを判定する(ステップSA13)。そして、固有識別情報取得部102は、リワードユーザIDが取得済みでない場合には、リワードユーザIDを生成して取得し(ステップSA14)、端末記憶部140のアプリ間共有エリアに記憶させ(ステップSA15)、初期化処理を終了する。
すなわち、専用アプリ60がインストールされる以前に、いずれかの対象アプリケーションがインストールされている場合には、その対象アプリケーションがインストールされたときに取得されたリワードユーザIDが相互送客システム500dにおいて用いられる。一方、専用アプリ60がインストールされる以前に、いずれの対象アプリケーションもインストールされていない場合には、専用アプリ60がインストールされて起動したときに、相互送客システム500dにおいて用いられるリワードユーザIDが取得される。
上述の初期化処理以降の処理は、図14を参照して説明した処理と同様であり、送客先アプリ20へ送客する送客情報が専用アプリ60から管理サーバ200に対して送信される。よって、本実施形態による相互送客システム500dでは、専用アプリ60が送客元となることにより、第1の実施形態と同様に、送客先アプリ20に対する送客情報の記録を管理サーバ200が管理することができる。
なお、本実施形態では、送客元が専用アプリ60であるため、例えば送客元における報酬を付与することがない場合には、送客元を特定しなくてもよい。そのため、本実施形態では、送客情報には、送客元を識別するための専用アプリ60のアプリIDが含まれなくてもよく、少なくとも送客先アプリ20(ゲームB)のアプリID(ApID)と、リワードユーザID(RewardUID)とが含まれればよい。
以上説明したように、本実施形態の相互送客システム500dは、専用アプリ60を送客元として、専用アプリ60から送客先アプリ20に対する送客処理を行うことにより、第1の実施形態で説明した相互送客システム500と同様に、送客先アプリ20へ送客することができる。なお、専用アプリ60から送客先アプリ20に対する送客処理の場合には、送客先アプリ20は送客元ともなり得るが、専用アプリ60は送客先になることはない。従って、専用アプリ60に関しては、送客先アプリ20への一方向の送客処理となる。
なお、本実施形態による専用アプリ60を送客元とする構成は、上記第2〜第9の実施形態にも適用することができる。
例えば、第2の実施形態において、ユーザ端末100にインストールされている専用アプリ60からの要求に基づいて、管理サーバ200は、ユーザ端末100に送信するアプリケーションリストに含める対象アプリケーションを所定の条件に基づいて選択する処理(フィルタリングする処理)を行ってもよい。
また、第3〜第5の実施形態において、図18に示す対象アプリケーション10Aを、送客元の機能に特化した専用のアプリケーションとしてもよい。また、第6の実施形態において、図30に示す対象アプリケーション10Aを、送客元の機能に特化した専用のアプリケーションとしてもよい。例えば、上述の専用のアプリケーションは、専用アプリ60と同様に少なくとも送客元としての機能構成のみを備えた構成としてもよい。そのため、上述の専用のアプリケーションは、例えば、図19に示すSDK1011の機能構成のうち送客先の機能構成として特有な報酬付与通知部107を除いた構成としてもよい。また、上述の専用のアプリケーションは、例えば、図24に示すSDK2011の機能構成のうち送客先の機能構成として特有な報酬付与通知部107を除いた構成としてもよい。また、上述の専用のアプリケーションは、例えば、図27に示すSDK3011の機能構成のうち送客先の機能構成として特有な報酬付与通知部107を除いた構成としてもよい。なお、上述の専用のアプリケーションは、専用アプリ60と同様にインストール通知部103を除いた構成としてもよい。
また、第7及び第8の実施形態において、ユーザ端末100に専用アプリ60がインストールされてもよい。
例えば、第7の実施形態において、機種変更後のユーザ端末100Bにインストールされた専用アプリ60からの要求に基づいて、管理サーバ200cは、機種変更後のユーザ端末100Bと機種変更前のユーザ端末100Aとのいずれからもインストール通知情報を取得していない少なくとも一の対象アプリケーションを示すアプリケーションリストをユーザ端末100Bに送信してもよい。この場合、管理サーバ200cは、例えば上述の第7の実施形態において説明した第2の抽出方法にしたがって、機種変更後のユーザ端末100Bと機種変更前のユーザ端末100Aとの両方にインストールされたいずれかの対象アプリケーションにおけるアプリユーザIDを利用して、機種変更後のユーザ端末100BのリワードユーザIDと機種変更前のユーザ端末100AのリワードユーザIDとを関連付けてもよい。
また、第8の実施形態において、ユーザ端末100に対応するリワードユーザIDが変更された場合、ユーザ端末100にインストールされた専用アプリ60からの要求に基づいて、管理サーバ200dは、リワードユーザIDの変更後とリワードユーザIDの変更前とのいずれからもインストール通知情報を取得していない少なくとも一の対象アプリケーションを示すアプリケーションリストをユーザ端末100に送信してもよい。この場合、管理サーバ200dは、例えば上述の第8の実施形態において説明した第2の抽出方法にしたがって、リワードユーザIDの変更後とリワードユーザIDの変更前との両方にインストール通知情報を送信したいずれかの対象アプリケーションにおけるアプリユーザIDを利用して、変更後のリワードユーザIDと変更前のリワードユーザIDとを関連付けてもよい。
<第1〜第9の実施形態の変形例>
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の第1〜第9の実施形態において説明した各機能は、任意に組み合わせることができる。なお、以下の記載において、管理サーバ200、200a、200b、200c、200dを、特に区別しない場合には、単に「管理サーバ200」として記載する。
(1)上記実施形態では、管理サーバ200の通信部210(送受信部の一例)は、インストール通知情報(第1情報の一例)、アプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)、リスト要求通知情報、送客情報(例えば、送客元情報又は送客先情報)、指示情報(インストール可能な画面をユーザ端末100に表示させるための情報の一例)、又は報酬付与通知情報を直接的にユーザ端末100と通信する例を説明した。同様にユーザ端末100の端末通信部130(送受信部)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を直接的に管理サーバ200と通信する例を説明した。
ここで、管理サーバ200の通信部210(送受信部)は、送客元アプリ10(第1アプリケーションの一例)又は送客先アプリ20(第2アプリケーションの一例)と、それぞれに対応するアプリサーバ300(サーバ装置の一例)を介して通信セッションを確立させた後で、直接的にユーザ端末100と通信してもよい。同様にユーザ端末100の端末通信部130(送受信部)は、送客元アプリ10(インストールされた対象アプリケーション)又は送客先アプリ20(選択された対象アプリケーション)と、それぞれに対応するアプリサーバ300を介して通信セッションを確立させた後で、直接的に管理サーバ200と通信してもよい。
なお、ユーザ端末100から直接的に管理サーバ200と通信する場合に、必要に応じて通信セッションを確立させるようにしてもよい。つまり、通信セッションを確立させる前に直接的に管理サーバ200と通信する場合と、通信セッションを確立させた後に直接的に管理サーバ200と通信する場合との両方を含んでもよい。
例えば、インストール通知情報は、通信セッションを確立させる前に直接的に管理サーバ200と通信し、それ以外の情報については通信セッションを確立させた後に直接的に管理サーバ200と通信するようにしてもよい。このようにすることで、通常リワードの対象となる送客先アプリ20として、送客先アプリ20に対応するアプリサーバ320を具備しないアプリケーション、すなわちユーザ端末100においてスタンドアローンで動作するアプリケーションを対象アプリケーションとして扱うことが可能になる。つまり、スタンドアローンで動作するアプリケーションがインストールされたことを示すインストール通知情報を送信する際に、ユーザ端末100は、アプリサーバ300を介して通信セッションを確立させる処理を行わずに、直接的に管理サーバ200と通信することができる。
図17は、通信セッションの確立処理の動作を説明するフローチャートである。この通信セッションの確立処理(通信セッション確立処理)は、送客元アプリ10または送客先アプリ20がユーザ端末100で起動され、SDK11AとSDK11Bが初めて管理サーバ200と通信を行う場合であって、例えば、図14及び図15を参照して説明した初期化処理の中で行われる。図17では、図14に示す初期化処理の中で行われる通信セッションの確立処理を示している。なお、この通信セッションの確立処理は、図15に示す初期化処理の中でも同様に行うことができる。図17において図14の各処理に対応する部分には同一の符号を付け、その説明を省略する。なお、ユーザ端末100とアプリサーバ310とは既に通信セッションが確立されている前提となる。
ステップSA12、SA13、SA14、SA15の処理においてリワードユーザIDの取得済となり、ステップSA16、SA17の処理においてインストール通知情報の通知済みとなると、SDK11Aの初期化処理部101は、ワンタイムトークンの取得を要求するワンタイムトークン取得要求情報をアプリサーバ310に対して送信する(ステップSA21)。アプリサーバ310は、ユーザ端末100(SDK11A)からワンタイムトークン取得要求情報を取得すると、取得したワンタイムトークン取得要求情報に基づくワンタイムトークン生成要求情報を管理サーバ200に対して送信する(ステップSF11)。管理サーバ200は、アプリサーバ310からワンタイムトークン生成要求情報を取得すると、ワンタイムトークンを生成し、生成したワンタイムトークンをアプリサーバ310に対して送信する(ステップSE12)。アプリサーバ310は、管理サーバ200からワンタイムトークンを取得すると、取得したワンタイムトークンをユーザ端末100(SDK11A)に対して送信する(ステップSF12)。SDK11Aの初期化処理部101は、アプリサーバ310からワンタイムトークンを取得すると、取得したワンタイムトークンを含んだセッション確立要求情報を管理サーバ200に対して送信する(ステップSA22)。管理サーバ200は、ユーザ端末100(SDK11A)からセッション確立要求情報を取得すると、取得したセッション確立要求情報に含まれるワンタイムトークンが正しい情報である場合(ユーザ端末100(SDK11A)に対して送信したワンタイムトークンと一致する場合)には、通信セッションを確立して、相互送客システム500による通信が許可される(ステップSE13)。以後、図14を参照して説明した処理が行われる。なお、管理サーバ200は、ユーザ端末100(SDK11A)から取得したセッション確立要求情報に含まれるワンタイムトークンが正しい情報でない場合には通信エラーとし、相互送客システム500による通信が許可されない。また、管理サーバ200がユーザ端末100(SDK11A)からセッション確立要求情報を取得できない場合には、当然、相互送客システム500による通信が許可されない。
このように、通信セッションを確立させた後で、相互送客システム500による通信を開始することで、相互送客システム500を含むネットワークシステム1内のセキュリティを向上させることができる。
なお、インストール通知情報(第1情報の一例)、アプリケーションリスト(第2情報の一例、アプリケーション通知情報の一例)、リスト要求通知情報、送客情報(例えば、送客元情報又は送客先情報)、指示情報(インストール可能な画面をユーザ端末100に表示させるための情報の一例)、又は報酬付与通知情報の一部は、ユーザ端末100から直接的に管理サーバ200と通信せずに、送客元アプリ10(第1アプリケーションの一例)又は送客先アプリ20(第2アプリケーションの一例)に対応するアプリサーバ300(サーバ装置の一例)を介してユーザ端末100と通信してもよい。すなわち、管理サーバ200の通信部210(送受信部)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を送客元アプリ10又は送客先アプリ20に対応するアプリサーバ300を介してユーザ端末100と通信、若しくは直接的にユーザ端末100と通信するようにしてもよい。
さらに、管理サーバ200の通信部210(送受信部の一例)は、インストール通知情報、アプリケーションリスト、リスト要求通知情報、送客情報、指示情報、又は報酬付与通知情報を送客元アプリ10又は送客先アプリ20に対応するアプリサーバ300を介してユーザ端末100と通信してもよい。同様にユーザ端末100の端末通信部130(送受信部)は、送客元アプリ10(インストールされた対象アプリケーション)又は送客先アプリ20(選択された対象アプリケーション)に対応するアプリサーバ300を介して管理サーバ200と通信してもよい。
このように、相互送客システム500は、アプリサーバ300を介してユーザ端末100と管理サーバ200とが通信しても、第1の実施形態及び第2の実施形態と同様の送客処理及びリワード処理を行うことができ、同様の効果を得ることができる。
(2)上記実施形態では、アプリユーザID(ApUID)をインストール通知情報などに含めて、ユーザ端末100(SDK11)から管理サーバ200送信される例を説明したが、これに限られるものではない。例えば、アプリサーバ300が、通信セッション確立処理でリワードユーザIDに関連付けて、アプリユーザIDを管理サーバ200に送信するようにしてもよい。具体的には、ステップSA21にて、SDK11Aの初期化処理部101が、ワンタイムトークン取得要求情報をアプリサーバ300に対して送信する際にリワードユーザIDをアプリサーバ300に通知する。さらに、アプリサーバ300は、リワードユーザID、アプリID及びアプリユーザIDを管理サーバ200に送信する。管理サーバ200のインストール情報管理部222は、インストール情報記憶部236に記憶されるインストール情報のうち、取得したリワードユーザIDとアプリIDとに対応したインストール情報に対応するアプリユーザID(ApUID)として、アプリサーバ300から取得したアプリユーザIDを記憶させる。このようにアプリユーザIDをユーザ端末100(SDK11)からでなく、アプリサーバ300から送信することで、ユーザ端末100(SDK11)にて、アプリユーザIDを管理することが不要になる。
上記のようにアプリサーバ300が通信セッション確立処理でリワードユーザIDに関連付けてアプリユーザIDを管理サーバ200に送信する場合には、インストールされた対象アプリケーションにおいてユーザ情報が登録された後でしか、通信セッション確立処理を行うことができない。しかしながら、ユーザ端末100にインストールされた対象アプリケーションの当該インストールされたことを示すインストール通知情報の管理サーバ200に対する送信は、ユーザ情報が登録されたことと直接関連させる必要がない。したがって、ユーザ端末100は、インストールされた対象アプリケーションにおいて、ユーザ情報が登録されているか否かに関わりなく、インストール通知情報を管理サーバ200に対して送信するようにしている。したがって、ユーザ端末100がインストール通知情報を送信する際には、通信セッションが確立される前に送信されることになる。
(3)上記実施形態では、リワード処理部245は、ユーザ端末100の送客先アプリ20のSDK11Bから報酬付与通知情報を取得したことに基づいてCPリワード処理を実行する例を説明したが、これに限られるものではない。例えば、送客先アプリ20に対応するアプリサーバ320から報酬付与通知情報を取得したことに基づいてCPリワード処理を実行してもよい。この場合、報酬付与通知情報(成果地点到達通知)には、送客先アプリ20のアプリIDとアプリユーザID、キャンペーンID、成果地点ID(RewardSpotID)を含めるようにすればよい。
例えば、管理サーバ200のリワード処理部245は、アプリサーバ320から送信された報酬付与通知情報(成果地点到達通知)を取得する。次に、リワード処理部245は、インストール情報記憶部236に記憶されるインストール情報から、送客先アプリ20のアプリIDとアプリユーザIDに対応したインストール情報を特定し、特定したインストール情報に対応したリワードユーザIDを逆引きする。そして、リワード処理部245は、逆引きしたリワードユーザIDと送客先アプリ20に対する送客情報の記録が送客情報管理部223において管理されていることに基づいて、当該送客情報に対応したリワード管理IDに関連付けて、取得した報酬付与通知情報に含まれる成果地点ID(RewardSpotID)を設定し、成立状態(RewardStatus)をフラグ「0」(未通知)とするリワード成立情報を生成し、リワード成立情報記憶部238に記憶させる。この後の処理は上記実施形態と同じである。このように、報酬付与通知情報(成果地点到達通知)をアプリサーバ320から送信することで、ユーザ端末100(SDK11B)の処理の負担を減らすことができる。
(4)上記実施形態では、リワードユーザIDが、最初に対象アプリケーションがインストールされたときに、インストールされたユーザ端末100を一意に識別可能な固有識別情報(相互送客システム500においてユニークな固有識別情報)として生成される例を説明したが、これに限られるものではない。例えば、ユーザ端末100に固有に設定されている端末識別番号や電話番号(例えば、スマートフォンの場合)をリワードユーザIDとしてもよい。しかしながら、端末識別番号や電話番号等のような個人情報を利用せずに、本実施形態のようにリワードユーザIDを生成して利用する方がセキュリティ性を高めることができる。また、リワードユーザIDとして、端末識別番号や電話番号等を利用せずに、相互送客システム500においてユニークな固有識別情報を採用することで、ユーザが所有するユーザ端末100(端末装置の一例)を買い替え等で変更する場合でも、所定の手続きを経てリワードユーザIDを変更後のユーザ端末100に移行することで、変更前のユーザ端末100からの状態を維持して相互送客システム500を利用することが可能となる。
また、図14のステップSA25のアプリ一覧ページを表示する処理と、アプリケーションリストからダウンロードする対象アプリケーションが選択されたときに送客情報を送信する処理とは、SDK11が実行する処理に代えて、SDK11の処理とは関係のないユーザ端末100にインストールされている他のアプリケーション(例えば、ブラウザ)が起動して実行されてもよい。例えば、管理サーバ200からユーザ端末100においてブラウザにリダイレクトされるようなアプリ一覧ページのデータを生成してユーザ端末100に送信することにより、ユーザ端末100においてブラウザが起動して、当該アプリ一覧ページが表示されるようにしてもよい。また、このアプリ一覧ページのデータにリスト要求通知情報に含まれる送客元アプリ10(ゲームA)のアプリID(ApID)を含めて送信することにより、アプリ一覧ページで選択された送客先アプリ20(ゲームB)のアプリID(ApID)と、送客元アプリ10(ゲームA)のアプリID(ApID)と、リワードユーザID(RewardUID)とを含む送客情報を、上述のブラウザから管理サーバ200に対して送信されるようにしてもよい。
また、CPリワード処理においても、通常リワード処理と同様に送客先アプリ20がインストールされたことに基づいて実行されるようにしてもよい。この場合、送客先アプリ20における報酬付与条件を、送客先アプリ20がユーザ端末100にインストールされたこととしてもよい。
また、キャンペーンを実施する全ての特定アプリケーションが、送客先アプリ20がインストールされたことが最初の成果地点とするならば、当該成果地点の達成に対応する報酬付与通知情報の送客先アプリ20からの送付を行わなくてもよい。この場合には、管理サーバ200が、通常リワードと同様な報酬付与処理を行い、アプリサーバ310に対してキャンペーンIDを含む報酬付与情報を送信することにより、アプリサーバ310から通常リワードに相当するCPリワードによる報酬が付与されるようになる。具体的には、図15のフローチャートにおけるステップSE22の判定処理を行わずに、CPリワードと通常リワードのどちらでも、ステップSE23〜24の処理を行わせればよい。
(5)上記実施形態では、相互送客システム500に対応する対象アプリケーションとしてゲームを例に説明したが、この対象アプリケーションはゲームに限られるものではなく、ゲーム以外のいずれのアプリケーションであってもよい。
また、管理サーバ200の記憶部230は、管理サーバ200とは異なるサーバ装置に備えられてもよい。そして、管理サーバ200の管理部220または制御部240が管理サーバ200とは異なるサーバ装置に備えられた記憶部230に対してネットワークNWを介して通信することにより、記憶部230が備える各部が記憶する各情報を管理してもよい。
また、管理サーバ200とアプリサーバ300とが一体となったサーバ装置として構成されてもよい。
また、上記実施形態において、SDK1011(2011、3011)は、リスト要求部104とリスト取得部109とを異なる構成として備える場合について説明したが、リスト要求部104がリスト取得部109を含み、リスト要求部104がリスト取得部109として機能する構成としてもよい。また、SDK1011(2011、3011)は、インストール通知部103と仮インストール通知部108とを異なる構成として備える場合について説明したが、インストール通知部103が仮インストール通知部108を含み、インストール通知部103が仮インストール通知部108としてする構成としてもよい。
また、上記第3及び第4の実施形態において、SDK1011Aの未インストール情報取得部111が、リワードユーザIDを含む未インストール情報要求通知情報を管理サーバ200aに対して送信する場合について説明したが、これに限定されるものではない。例えば、未インストール情報取得部111が、リワードユーザIDを含まずに、対象アプリケーションのアプリIDを含む未インストール情報要求通知情報を管理サーバ200に対して送信してもよい。この場合、管理サーバ200の未インストール情報通知部248は、対象アプリ情報記憶部231に記憶されている対象アプリケーション情報のうち、対象アプリケーションのアプリID以外の全ての対象アプリケーションを抽出し、抽出した対象アプリケーションに対応するアプリID(ApID)と、URLスキーム(ApURI)とを未インストール情報として、ユーザ端末100に送信してもよい。
(6)上述の管理部220、制御部240(240a、240b、240c、240d)、SDK11(1011、2011、3011)、または専用アプリ60の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述の各部の処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。