以下、本発明によるアプリを生成するシステム(以下、「システム」と略称する)の好ましい実施の形態を、添付した図面を参照して詳細に説明する。
なお、本発明によるシステムは、デコード対象コードの一例としての二次元コードを撮影してデコードすることによって得られる文字情報及び付加情報に基づいて、アプリを生成するように構成されているが、生成されるアプリは、どのような機能や特徴を持ったアプリであっても構わない。
しかしながら、以下に説明する実施例ではその使用目的や性質に応じて、図6に示すように7種類のアプリを想定している。
図3は、本発明によるシステムの一実施例の構成を示す概略図である。
本実施例のシステム(1000)は、通信手段(105)を有するモバイル端末(100)と、通信手段(203)を有するサーバ(200)と、を備え、モバイル端末(100)とサーバ(200)とは、それぞれの通信手段(105)、(203)により、通信媒体を介して、情報、信号を相互に送受信するように構成されている。
まず、モバイル端末(100)について説明する。
図1及び図2は、モバイル端末(100)の一構成例を示す概略図である。
図1に示すように、モバイル端末(100)は、その一方の面(表面)に、様々なアイコンを表示するための表示手段であるディスプレイ(102)を備え、他方の面(裏面)に、二次元コードを撮影する撮像手段であるカメラ(106)及び録音手段であるマイクを備えている。
また、図2に示すように、モバイル端末(100)は、親アプリ(300)が予めインストールされており、更に、通信手段(105)、録音手段であるマイク(109)、二次元コードをデコードして二次元コードに対応づけられた情報を取り出すデコード手段たるデコーダ(107)、音声解析手段である音声解析装置(110)、記憶手段である記憶装置(104)、演算手段である演算装置(103)、解析装置(204)、原初アプリ(112)、プログラム部品記憶手段(111)、バージョン記録データベース(113)及び使用履歴記録データベース(114)を備えている。
親アプリ(300)は、モバイル端末(100)で動作中のOS(オペレーティングシステム)を通じてモバイル端末(100)中の上記各種の装置及び手段の動作をコントロールする。例えば、親アプリは、モバイル端末(100)に問い合わせた結果得られた情報を、通信手段(105)を使ってサーバ(200)に送信するとともに、サーバ(200)から発信された情報を受信する。また、親アプリは、録音手段(109)によって録音された音声、デコーダ(107)が二次元コードをデコードすることによって取得される文字情報及び音声解析手段(110)が音声を解析することによって取得される文字情報を、演算手段(103)を介して解析装置(204)に送るとともに、演算手段(103)を介して解析結果を受け取り、通信手段(105)を使ってサーバ(200)に送信する。
さらに、親アプリ(300)は、原初アプリ(112)をベースにプログラム部品記憶手段(111)に記憶されているプログラム部品を用いてアプリを生成し、生成したアプリのバージョンをバージョン記録データベース(113)に記録するとともに、生成したアプリがユーザに使用された際には、使用履歴を使用履歴記録データベース(114)に記録する。
本実施例においては、カメラ(106)を備えたモバイル端末(100)は、QRコード(登録商標)等の二次元コードを撮影してデコードする機能を有しているが、他の実施例としては、親アプリ(300)中にデコードの機能を備えて構成してもよい。
二次元コードとしては、QRコード(登録商標)、EAN128、等のいろいろな規格が知られており、様々な産業分野においてこれらの二次元コードが利用されている。二次元コードは、カメラによって撮影され、撮影された二次元コードは、モバイル端末或いは親アプリによりデコードされて、二次元コード中にエンコードされていた情報が復元される。上記のいろいろな規格に応じて、二次元コードには様々な情報をエンコードすることができるが、文字情報として文字情報がエンコードされているものが一般的である。
本実施例では、モバイル端末(100)に設けられカメラ(106)で二次元コードの一例であるQRコード(登録商標)を撮影し、撮影したQRコード(登録商標)をデコードすることにより文字情報を取得するように構成されているが、別の実施形態としては、二次元コード以外の画像や音声から文字情報を取得する場合もあり得る。
QRコード(登録商標)に格納されている文字情報、即ちQRコード(登録商標)から取得される文字情報は、一例として図5に示すような構成になっているが、文字情報の構成は、これらに限定されず、様々な構成を有し得る。
また、モバイル端末(100)は、GPSや携帯電話基地局との交信によってモバイル端末の現在地に関する位置情報を取得する位置情報取得手段(120)、内蔵の時計や通信によって得られる標準時刻を参照して現在時刻を取得する現在時刻取得手段(121)、複数の言語に対応するための複数のフォント及び各言語でメッセージを表示するための表示メッセージの切り替えを一括して管理してモバイル端末に表示する言語をユーザに選択させることができる機能を有する使用言語選択手段(122)、モバイル端末を使用しているユーザの氏名や性別等のユーザ属性をユーザに入力させ記録しておくプロフィール記録手段(123)及びモバイル端末の使用状況や使用履歴に関する様々な情報を記録しておく端末使用情報記録手段(124)、等を有する。
親アプリ(300)は、モバイル端末(100)に備わっている位置情報取得手段(120)、現在時刻取得手段(121)、使用言語選択手段(122)、プロフィール記録手段(123)及び端末使用情報記録手段(124)のを利用して、モバイル端末(100)から各種の情報(以下「付加情報」という)を取得する。付加情報は、上記各手段により取得されるものに限られず、さらに親アプリ(300)の機能として、付加情報をユーザにあらかじめ入力させ、モバイル端末(100)の記憶手段(104)に記録するように構成してもよい。
次に、サーバ(200)について説明する。
図4に示すように、サーバ(200)は、モバイル端末(100)との間で情報を送受信する通信手段(203)、動画及び静止画の映像を解析することにより動画及び静止画中から適宜の文字情報を取得する映像解析手段(207)、音声を解析することによって音声から適宜の文字情報を取得する音声解析手段(208)、画像データ、アプリの属性、構成情報、プログラム部品に関する情報、及びモバイル端末(100)のIDを記憶する記憶手段(202)、プログラム部品を用いてアプリを生成する演算手段(201)、生成すべきアプリの一覧及び各アプリに関する各種の情報を記録するアプリ一覧データベース(211)、モバイル端末(100)から受信した文字情報及び付加情報をアプリ一覧データベース(211)と突き合わせることによって解析し生成すべきアプリを決定する解析装置(204)、動画データの配置アドレスと、配置アドレスを一意に特定するためのキー文字列を格納する判定データベース(205)、アプリの生成に用いられるプログラム部品を格納するプログラム部品データベース(206)及びアプリの生成を試みたが生成すべき適宜のアプリを決定できなかった場合に決定できなかった生成に使用された文字情報及び付加情報を記録しておく該当無情報保管データベース(212)を備えている。
一般にアイコンは、各種のパーソナルコンピュータ(PC)、モバイル端末、並びに表示画面を有する様々なデバイスで広く普及している表示形態である。
本実施例によるシステム(1000)では、アプリを生成すると同時に生成したアプリを表すアイコンをモバイル端末(100)のディスプレイ(102)の画面上に表示することにより、アイコンによりユーザが該生成したアプリに迷うことなくたどり着くことができるように構成されている。また、モバイル端末(100)がタッチパネル方式のディスプレイを備えている場合には、ユーザは、ディスプレイ(102)に表示されたアイコンをタッチすることで簡単にアプリを起動することができるように構成されている。
サーバ(200)を構成しているアプリ一覧データベース(211)は、図7(a)〜図7(c)に示すように構成されている。アプリ一覧データベース(211)には、今後生成されるべき全ての種類のアプリに関する情報が登録されている。言い換えると、アプリ一覧データベース(211)に登録済のアプリが、生成されるアプリの全てである。
なお、別の実施形態においては、アプリは、文字情報及び付加情報の解析結果から特定のアルゴリズムに沿って動的にその内容が決定されるように構成してもよい。
アプリ一覧データベース(211)は、適宜メインテナンスがなされていて、生成すべきアプリが追加されるように構成されている。例えば、新たに顧客企業の企業アプリを設ける場合、企業に関する企業アプリがアプリ一覧データベース(211)に追加登録される。
さらに、後述するように、該当するものを見出すことができなかった文字情報に関しては、アプリ一覧データベース(211)上にデータトラックが加えられ、将来文字情報に対応すべきアプリに関する情報が補充され、新たなアプリを示すデータトラックとなり得るように構成してもよい。
図8は、サーバ(200)を構成しているプログラム部品データベース(206)の一構成例を示す。
次に、本実施例によるシステム(1000)の動作を具体例に基づいて説明する。
次に、QRコード(登録商標)の撮影からアプリの生成までのプロセスを、複数の具体例により説明する。
例えば、新聞の折込みちらしに、ある飲食店のQRコード(登録商標)が印刷されているものとする。そして、該QRコード(登録商標)には、例えば「ra-men-AAA」という文字情報がエンコードされているものとする。なお、該QRコード(登録商標)は、通常、該飲食店によって作成されたものである場合が多いが、ここでは、誰が作成したQRコード(登録商標)であるかは、問わないものとする。
まず、ユーザがモバイル端末(100)に備えられているカメラ(106)でQRコード(登録商標)を撮影すると、モバイル端末(100)は、デコーダ(107)により撮影されたQRコード(登録商標)をデコードし、QRコード(登録商標)にエンコードされている文字情報を取得する。
モバイル端末(100)は、該QRコード(登録商標)撮影時点での付加情報を記憶手段(104)から取り出す。ここで、該付加情報は、親アプリ(300)によって既に取得されていて記憶手段(104)に記憶されているものとする。
モバイル端末(100)は、該取得した文字情報と該取り出した付加情報とを通信手段(105)からネットワークを介してサーバ(200)に送信する。
サーバ(200)は、モバイル端末(100)から送信された該文字情報と該付加情報とをネットワークを介して通信手段(203)により受信する。
サーバ(200)は、解析装置(204)を用いて、該受信した文字情報及び付加情報をアプリ一覧データベース(211)と突き合わせて、生成すべきアプリを特定する。
生成すべきアプリがアプリ一覧データベース(211)に記憶されているアプリの中から特定されると、該生成すべきアプリの『属性情報』、『構成情報』、及び『埋込情報』がそれぞれ得られる。
『属性情報』とは、図6に示すように、アプリの基本的な動作タイプによってアプリを種別分けしたものであり、本実施例では、タイプA(プロモーション又はイベント等のために、動画及び音声の再生を行い、或いはイベント告知を行うことを機能の中心とするタイプ)、タイプB(URLにアクセスすることを機能の中心とするタイプ)、タイプC(電話、メール等、連絡手段を開設し、相互連絡を行うことを機能の中心とするタイプ)、タイプD(会員証として機能することを機能の中心とするタイプ)、タイプE(クーポン画像を表示する等、クーポン券を発行することを機能の中心とするタイプ)、タイプF(飲食店の名称や営業時間等をユーザに参照させることを機能の中心とするタイプ)、タイプG(小売店の名称や営業時間等をユーザに参照させることを機能の中心とするタイプ)の7種類の属性に分けられている。そして、各タイプ毎に、各タイプのアプリの基本機能を備えたプログラムモジュールが用意されており、これを各タイプ別の「基本プログラム部品」と呼ぶ。
基本プログラム部品の他に、基本プログラム部品と一緒に組み合わせてアプリとして生成することにより個別の機能を実現するプログラムモジュールである『個別プログラム部品』が存在する。本実施例では、図6に示すように、個別プログラム部品a(企業名、店名等を表示する機能を備えたプログラムモジュール)、個別プログラム部品b(電話番号、FAX番号を表示し、該電話番号、該FAX番号に発信する機能を備えたプログラムモジュール)、個別プログラム部品c(営業時間を表示する機能を備えたプログラムモジュール)、個別プログラム部品d(メールアドレスを表示し、メールアドレスあてのメールを作成し、メールを送受信する機能を備えたプログラムモジュール)、個別プログラム部品e(SMSをやり取りするための番号、URL等を表示し、SMSを受送信する機能を備えたプログラムモジュール)、個別プログラム部品f(会員証情報を表示し会員番号等会員証に記録される情報を管理する機能を備えたプログラムモジュール)、個別プログラム部品g(クーポン画像を表示する等、クーポン券の機能を備えたプログラムモジュール)、個別プログラム部品h(音声を再生する機能を備えたプログラムモジュール)、個別プログラム部品i(動画を再生する機能を備えたプログラムモジュール)、個別プログラム部品j(URLにアクセスしブラウズする機能を備えたプログラムモジュール)の10の個別プログラム部品があるものとする。
また、上記10の個別プログラム部品の他、各アプリのアイコンをモバイル端末(100)のディスプレイ上に表示する際に使用するアイコンの画像データも、アプリを構成するパーツ(プログラム部品)として存在する。
『構成情報』とは、生成すべきアプリがどのようなプログラムモジュールの組み合わせから成り立つものかを決定する情報であり、どのタイプの基本プログラム部品にどの個別プログラム部品とどのアイコン画像を組み合わせるかについての情報である。
『埋込情報』とは、上記各個別プログラム部品に埋め込む具体的情報である。個別プログラム部品aは企業名及び店名等を表示する機能を備えたプログラムモジュールであるが、個別プログラム部品aを組み込んだアプリの生成に際しては、具体的な企業名及び/又は店名に関する情報を取得しこれを個別プログラム部品aに埋め込んだ上で企業名及び/又は店名を埋込済の個別プログラム部品aを用いてアプリを生成する必要がある。そうしなければ、生成したアプリに具体的な企業名や店名を表示することができない。
ここでは、文字情報「ra-men-AAA」及び付加情報をアプリ一覧データベース(211)と突き合わせた結果、生成すべきアプリの属性は、タイプF(飲食店の名称や営業時間等をユーザに参照させることを機能の中心とするタイプ)であり、構成は、基本プログラム部品タイプF、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品c、並びに専用のアイコン(アプリIDによって特定されるアイコン画像データ)であり、埋込情報として店名『格付け王者! トリプルAラーメン』を個別プログラム部品aに、連絡先電話番号『03-0000-0000』を個別プログラム部品bに、営業時間に関する情報『平日11:00〜14:30、18:00〜23:00、ラストオーダー22:00、土日祝:11:00〜23:00、ラストオーダー22:00、火曜日定休日』を個別プログラム部品cに、それぞれ埋め込むべきことがわかる。
生成すべきアプリの属性情報、構成情報、埋込情報を得たサーバ(200)は、まず、必要な各プログラム部品(この場合は基本プログラム部品タイプF、個別プログラム部品a、個別プログラム部品b、個別プログラム部品cの4つ)をアプリ一覧データベース(211)から取得する。
次に、埋込情報をアプリ一覧データベース(211)から取得し、取得した各埋込情報(この場合は、店名、電話番号、営業時間情報)をそれぞれプログラム部品に埋め込む(この場合は、店名を個別プログラム部品aに、電話番号を個別プログラム部品bに、営業時間情報を個別プログラム部品cに埋め込む)。そして、属性情報や構成情報と共に、アプリの構成材料である基本プログラム部品タイプF、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品c並びに専用のアイコン(画像データ)を併せて、通信手段(203)からネットワークを介してモバイル端末(100)に送信する。
基本プログラム部品タイプF、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品c並びに専用のアイコンを受信したモバイル端末(100)は、属性及び構成に関する情報を参照し、プログラムモジュール(基本プログラム部品タイプF、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品c)を組み合わせてアプリを生成すると共に、専用のアイコンをモバイル端末(100)のディスプレイ(102)に表示する。
モバイル端末(100)がバージョン情報記録データベース(113)を備えている場合には、さらに、生成完了した子アプリのバージョン情報をバージョン情報記録データベース(113)に記録する。
次に、サーバ(200)がアプリ一覧データベース(211)を備えていない場合のアプリ生成プロセスについて説明する。
ある飲食店に関するQRコード(登録商標)が存在し、該QRコード(登録商標)には例えば「udon-bangaichi」という文字情報がエンコードされているものとする。
以下、モバイル端末(100)の送信動作及びサーバ(200)の受信動作は、上記の実施例と同様なので省略する。
サーバ(200)は、解析装置(204)を用いて、受信した文字情報及び付加情報を解析し、生成すべきアプリが飲食チェーン店である『番外地うどん』であると決定する。なお、ネットワーク上の検索サイトに接続し、受信した文字情報をキーとして検索を行い、検索の結果得られたURLやURLが示すWebページにおいて使用されている語句の内、上位に記載されているもの及び高頻度で使用されているものを文字情報及び付加情報とともに用いて解析を行い、生成すべきアプリを決定するようにしてもよく、検索結果を解析し抽出又は選定した情報や文字列をキーとしてさらに第2の検索を行い、検索結果を解析し抽出した情報や文字列をキーとしてさらに検索を繰り返すことで、広くネットワーク上の情報を取得し解析を行い、生成すべきアプリを決定するようにしてもよい。
サーバ(200)は、ネットワーク上の検索サイトに接続し、『番外地うどん』について取得できるデータ(店名、電話番号、営業時間、URL等)がないか、検索を行う。ここでは検索の結果、店名と4つの異なる電話番号(番外地うどんの異なる店舗の電話番号であると推測される)が得られたとする。
サーバ(200)は、ネットワーク上に公開されている情報と照合することにより、さらに上記4つの電話番号の市街局番から4つの電話番号を使用している店舗のおおよその位置(市区町村等)に関する情報を得ることができる。
また、サーバ(200)は、上記付加情報によりモバイル端末(100)の位置情報を取得済である。そこで、取得済のモバイル端末(100)の位置情報と最も近い位置にあるものと推測される電話番号を選び出すことができる。
以上によって得られた各情報から、サーバ(200)は、生成すべきアプリの属性はタイプF(飲食店の名称や営業時間等をユーザに参照させることを機能の中心とするタイプ)であり、構成は基本プログラム部品タイプF、個別プログラム部品a及び個別プログラム部品c並びにタイプFの汎用アイコンであり、埋込情報として店名『番外地うどん』を部品aに、連絡先電話番号(さきほど位置情報との照合により選定した1つの電話番号)『01-0000-0000』を部品cに、それぞれ埋め込むべきことがわかる。
生成すべきアプリの属性情報、構成情報、埋込情報を得たサーバ(200)はプログラム部品の取得、埋込情報の埋め込み、プログラム部品及びアイコンのモバイル端末への送信を行い、さらにモバイル端末(100)におけるアプリ生成及びアイコン表示並びにバージョン情報の記録が行われるが、それらの動作は、上記の実施例と同様なのでここでは説明を省略する。
モバイル端末(100)がバージョン情報記録データベース(113)を備えている場合には、さらに、生成完了した子アプリのバージョン情報をバージョン情報記録データベース(113)に記録する。
同様に、あるQRコード(登録商標)に「unagi_bisi-basi.jp」という文字情報がエンコードされている場合について説明する。モバイル端末(100)の送信動作、サーバ(200)の受信動作及びサーバ(200)における解析装置(204)を用いた解析及びアプリ決定動作は、上記の実施例と同じなので省略するが、ここでは、生成すべきアプリは、鰻料理を専門とする飲食店である『菱橋』と決定されたとする。
サーバ(200)は、上記実施例と同様に、『菱橋』の店名、電話番号、営業時間及びURL等を埋込情報として取得する。さらに、サーバ(200)は、ネットワーク上の検索サイトに接続し、関連情報を取得することができる。具体的には、サーバ(200)は、受信した文字情報を第1のキーとして検索を行い、検索の結果得られた複数のURLが示すWebページのそれぞれについて、Webページにおいて使用されている語句の内、上位に記載されているもの及び高頻度で使用されているものを任意の数だけ選び出し、選び出された複数の語句を同様に他のURLが示すWebページから選び出された語句と突き合わせ、複数のWebページ間で共通して使用されている割合が高い語句を、共通して使用されている割合が高い順に任意の数だけ選び出す。サーバ(200)は、ネットワーク上の検索サイトに接続し、こうして選び出された共通して使用されている語句を第2のキーとして、さらに検索を行い、検索の結果得られた複数のURLを、関連情報として取得する。関連情報として取得した語句を第3のキーとして、さらに同様の方法で検索を繰り返しても良い。本例では、第2のキーとして、例えば、「備長炭」、「天然」及び「人気ランキング」といった語句が選び出されることが考えられ、また、これら第2のキーで検索を行った結果得られる複数のURLは、(『菱橋』とは異なる)鰻料理店のホームページのURL、天然鰻を扱う飲食店に関するレポートを収集しているサイトのURL、鰻料理店の評価や人気ランキングを集計しているサイトのURL、といったものになることが考えられる。サーバ(200)は、第2のキーで検索を行った結果得られたURLを、プログラム部品jに埋込情報として埋め込み、以下上記実施例と同様に他のプログラム部品等とともにモバイル端末(200)に送信し、モバイル端末(200)は、上記実施例と同様にアプリ生成及びアイコン表示等を行う。ユーザが、このようにして関連URL情報を埋め込まれたプログラム部品jを含んで生成されたアプリのアイコンをタッチした場合、『菱橋』の営業時間等が表示されるだけでなく、(『菱橋』とは異なる)鰻料理店のホームページ、天然鰻を扱う飲食店に関するレポートを収集しているサイト、鰻料理店の評価や人気ランキングを集計しているサイト、等に容易にアクセスし、『菱橋』と比較等することができるようになる。なお、本例における第2のキーの選出方法は一例である。また、ネットワーク上の検索サイトで検索した結果得られる情報は必ずしもURLである必要はなく、プログラム部品に埋め込む情報として適切なものであれば、如何なる情報であっても差し支えない。
上記では、飲食店を例にアプリを生成する過程について説明したが、本発明によって生成するアプリは、個人に関するものである場合もあり得る。
そこで、個人に関するアプリを生成する場合について説明する。
モバイル端末(100)を所有、使用しているユーザを個人Aとする。個人Bは、個人Aの友人であり、個人Aが個人Bに関するアプリを生成しようとしている場合を想定して説明する。
まず、個人Bに関するQRコード(登録商標)が作成される。該QRコード(登録商標)は、通常、個人Bによって作成される場合が多いが、個人Aによって作成されても構わないものである(文字情報をQRコード(登録商標)その他の二次元コードにエンコードするためのソフトウェアは現在広く公開されており、誰でも容易に入手、利用可能であるため、個人がQRコード(登録商標)を作成するに際して何ら障害がない)。また、QRコード(登録商標)には、例えば、個人Bのメールアドレスである「kojin-b@KB.person.ne.jp」という文字情報がエンコードされているものとする。
以下、モバイル端末(100)の送信動作、及びサーバ(200)の受信動作は、上述した実施例と同様なので、説明を省略する。
サーバ(200)は、解析装置(204)を用いて、該受信した文字情報及び付加情報を解析し、文字情報から個人Bのメールアドレスを取得すると共に、生成すべきアプリが個人Bに関するアプリであると判定する。
上記判定に基づき、サーバ(200)は、生成すべきアプリの属性は、タイプC(個人や企業等との連絡やコミュニケーション手段を開設することを機能の中心とするタイプ)であり、構成は、基本プログラム部品タイプc及び個別プログラム部品d並びにタイプcの汎用アイコンであり、埋込情報としてメールアドレス『kojin-b@KB.person.ne.jp』を個別プログラム部品dに埋め込むべきことがわかる。
生成すべきアプリの属性情報、構成情報、埋込情報を得たサーバ(200)は、プログラム部品の取得、埋込情報の埋め込み、プログラム部品及びアイコンのモバイル端末への送信を行い、さらにモバイル端末(100)におけるアプリ生成やアイコン表示並びにバージョン情報の記録が行われるが、それらの動作は上記の実施例と同様なので省略する。
次に、同じく個人に関するアプリを生成する場合であって事前に生成すべきアプリがサーバ(200)のアプリ一覧データベース(211)に登録されている場合について説明する。
モバイル端末(100a)を所有、使用しているユーザを個人Aとする。個人Cは、個人Aの友人であり、同じくモバイル端末(100c)を所有、使用しているものとする。ここでは、個人Aが、個人Cに関するアプリを生成しようとしている場面を想定する。
事前に個人Cは、個人Cに関するアプリについてサーバ(200)に登録及びQRコード(登録商標)生成を行う。サーバ(200)への事前登録及びQRコード(登録商標)生成は、以下のように行われる。
モバイル端末(100)にインストールされている親アプリ(300)は、個人アプリ生成の準備のため、個人アプリが備える機能、情報(アイコン名称、電話番号、アイコンの画像、等々)をユーザに選択、入力させ、選択、入力された情報をサーバ(200)に送信する機能を備えている。
また、サーバ(200)は、該送信された情報を元に生成すべき子アプリを判定し、アプリ一覧データベース(211)に新規の子アプリとして登録すると共に、該新規に登録された子アプリのアプリIDをモバイル端末(100)に送信する機能を備えている。
個人Cは、まず、親アプリ(300c)に、個人Cに関するアプリの名称(氏名、ニックネーム等、個人Cが任意に決定する文字情報)及び個人Cに関するアプリを起動することによって使用できる連絡手段を入力する。連絡手段には、電話、電子メール、SMS、FAX、URL等、様々なものが考えられるが、ここでは、個人Cは連絡手段として、電話及び電子メールを選択したものとする。
個人Cは、親アプリ(300c)に、名称(C田c郎)、電話番号(090-1111-1111)及びメールアドレス(kojin-c@KB.person.ne.jp)を入力すると共に、個人Cに関する子アプリをモバイル端末(100)上で表示するためのアイコンの画像データを指定する。なお、アイコン画像データは、事前に個人Cによってモバイル端末(100c)の記憶手段(104c)に記録されており、画像の指定は、モバイル端末(100c)の記憶手段(104c)の中の特定の場所を指定することで行う。
名称、電話番号及びメールアドレス並びにアイコン画像を取得した親アプリ(300c)は、名称、電話番号及びメールアドレス並びにアイコン画像のデータとともに、個人Cに関するアプリ生成される予定がある旨をサーバ(200)に送信する。
モバイル端末(100c)から個人Cに関するアプリ生成される予定がある旨及びアプリの名称、電話番号、メールアドレス、アイコン画像データを受信したサーバ(200)は、アプリ一覧データベース(211)に新たな子アプリ(個人Cに関するアプリ)を登録すべく、必要な登録項目を決定する。
サーバ(200)は、まず、登録すべき子アプリの属性をタイプC(個人や企業等との連絡、コミュニケーション手段を開設することを機能の中心とするタイプ)と定める(個人に関するアイコンを生成する予定である旨がモバイル端末(100c)より通知されているので、生成すべき子アプリの属性がタイプCであることはこの場合自明である)。
また、モバイル端末(100c)から名称、電話番号、メールアドレスを取得していることから、構成は、基本プログラム部品タイプC、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品dであり、個別プログラム部品aへの埋込情報として名称(C田c郎)が、個別プログラム部品bへの埋込情報として電話番号(090-1111-1111)が、個別プログラム部品dへの埋込情報としてメールアドレス『kojin-c@KB.person.ne.jp』があることが分る。さらに、モバイル端末(100c)からアイコン画像データを取得していることから、タイプCの汎用アイコンの代わりに、取得した画像データを使用すべきことがわかる。
サーバ(200)は、さらに新規登録する子アプリのアプリID(xxxxx-000551)及び文字情報(kojin_xxxx/d0000/00000。この文字情報が取得された場合に子アプリを生成するべきと判断する文字情報)を決定する(アプリIDは、アプリ一覧データベース(211)の管理規則に従い機械的、自動的に決定されるものであり、文字情報は、上記各取得した情報及び属性、構成情報を元に自動的に一意に決定されるものである)。サーバ(200)は、上記各情報をアプリ一覧データベース(211)の各項目に登録する。
サーバ(200)は、アプリ一覧データベース(211)に登録された情報から文字情報(kojin_xxxx/d0000/00000)をモバイル端末(100c)に送信する。
サーバ(200)から文字情報(kojin_xxxx/d0000/00000)を受信したモバイル端末(100c)は、文字情報をQRコード(登録商標)にエンコードし、QRコード(登録商標)の画像データを、記憶手段(104c)に記録する。
個人Cは、モバイル端末(100c)の親アプリ(300)を操作して、該QRコード(登録商標)をディスプレイ(102c)に表示する。
個人Aは、該表示されたQRコード(登録商標)をモバイル端末(100a)に備えられているカメラ(106)で撮影する。撮影したQRコード(登録商標)から文字情報がデコードされ取得される。この場合取得される文字情報は、kojin_xxxx/d0000/00000である。
モバイル端末(100a)は、該取得した文字情報をネットワークを通じてサーバ(200)に送信する。
サーバ(200)は、該文字情報を、ネットワークを通じて受信する。
サーバ(200)は、解析装置(204)を用いて、受信した文字情報と付加情報をアプリ一覧データベース(211)と突き合わせ、生成すべきアプリを特定する。この場合、完全一致する文字情報がすでにアプリ一覧データベース(211)に存在するので、生成すべきアプリは、アプリID『xxxxx-000551』である、個人Cに関するアプリであると特定される。
生成すべきアプリがアプリ一覧データベース(211)上のどのアプリであるかが特定されることにより、生成すべきアプリの属性情報、構成情報、埋込情報が得られる。
ここでは生成すべきアプリの属性はタイプC(個人や企業等との連絡、コミュニケーション手段を開設することを機能の中心とするタイプ)であり、構成は、基本プログラム部品タイプC、個別プログラム部品a、個別プログラム部品b及び個別プログラム部品d並びに専用のアイコン(アプリIDによって特定されるアイコン画像データ)であり、埋込情報として名称『C田c郎』を個別プログラム部品aに、電話番号『090-1111-1111』を個別プログラム部品bに、メールアドレス『kojin-c@KB.person.ne.jp』を個別プログラム部品dに、それぞれ埋め込むべきことが分る。
生成すべきアプリの属性情報、構成情報、埋込情報を得たサーバ(200)は、プログラム部品の取得、埋込情報の埋め込み、プログラム部品及びアイコンのモバイル端末への送信を行い、さらにモバイル端末(100)におけるアプリ生成及びアイコン表示並びにバージョン情報の記録が行われるが、それらの動作は上記の実施例と同様なので省略する。
上記専用のアイコン画像は、個人Cが任意に選択して、モバイル端末(100c)の記憶手段(104c)に記録しておくものであるが、必ずしもそのように構成する必要はなく、モバイル端末(100c)に予め記録されている画像中から個人Cが選択するようにしてもよい。その場合、該画像データと同じ画像データを予めサーバ(200)の記憶手段(202)に記録しておくことができるため、画像データの送受信は、不要となる。
また、個人Cが選択し、モバイル端末(100c)の記憶手段(104c)に記録した画像をそのまま利用せず、親アプリ(300)又はサーバ(200)が画像データを適宜のルールに従って加工した上で使用することも可能である。このようにした場合、アイコンとしてモバイル端末のディスプレイに表示するのにより適したデータサイズや色調にすることができ、各種のアイコンのデザイン上の統一感が得られる、ユーザの見易さが向上する、等の効果を奏するように構成することができる。
上記の例では、文字情報(kojin_xxxx/d0000/00000)を受信したモバイル端末(100a)が、該文字情報をQRコード(登録商標)にエンコードしているが、必ずしもそのように構成する必要はなく、サーバ(200)が文字情報(kojin_xxxx/d0000/00000)をQRコード(登録商標)にエンコードした上で、QRコード(登録商標)の画像データをモバイル端末(100a)に送信するよう構成してもよい。
次に、企業広告やプロモーションビデオ等の動画を再生することを主な機能とするアプリを生成する場合の実施例を説明する。なお、以下の動画再生アプリの生成過程の説明は、サーバ(200)のアプリ一覧データベース(211)を使用せずに構成した場合を想定している。
QRコード(登録商標)読取りをきっかけとしてネットワーク上に配置された動画データを再生する方法の代表的なものとしては、その都度、動画データを順次ダウンロードしつつ並行して再生を行うストリーミングタイプのものと、動画データを一度完全にダウンロードして、モバイル端末(100)に保存させた上で再生するダウンロードタイプのものとの2つの種類に分けられる。
以下では、そのそれぞれのタイプにつき、
(1)動画データの配置アドレスをQRコード(登録商標)に直接記録する方法、
(2)動画データの配置アドレスと、配置アドレスを一意に特定するためのキー文字列をサーバ(200)の判定データベース(205)に記録し、該キー文字列をQRコード(登録商標)に記録する方法、
(3)動画データの配置アドレスを記録したデータファイルをネットワーク上に配置し、該データファイルのアドレスと、該データファイルを一意に特定するためのキー文字列とをサーバ(200)の判定データベース(205)に記録し、キー文字列をQRコード(登録商標)に記録する方法、
(4)動画データの配置アドレスと動画再生用のプログラム部品とをデータセットにしてサーバ(200)のプログラム部品データベース(206)に記録し、該データセットを呼び出す判定データをサーバ(200)の判定データベース(206)に記録し、該判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法、
(5)動画データの配置アドレスを記録したデータファイルをネットワーク上に配置し、該データファイルのアドレスと動画再生用のプログラム部品とをデータセットにしてサーバ(200)のプログラム部品データベース(206)に記録し、該データセットを呼び出す判定データをサーバ(200)の判定データベース(205)に記録し、該判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法、
(6)動画データと動画再生用のプログラム部品とをデータセットにしてサーバ(200)のプログラム部品データベース(206)に記録し、該データセットを呼び出す判定データをサーバ(200)の判定データベース(205)に記録し、該判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法(ダウンロードタイプのみ)、の6種類に分けて説明するが、本発明の具体的適用においては、それら6種類の方法に限定されるものではなく、その他の方法を適用してもかまわない。
最初に、ネットワーク上に動画データを配置したまま、ネットワークを介して、該動画データを順次モバイル端末(100)に送信する例(ストリーミング再生)について説明する。
この場合、動画データは、断片的にサーバからモバイル端末(100)に送信されかつ順次再生される。例えば、100MBの動画データであれば、最終的に100MB全てがモバイル端末(100)に送信されかつ再生されるが、モバイル端末(100)は、一度に100MBのデータ全てを記憶、保持することなく、例えば、10MBの記憶域を使用して、再生済みデータを消去しながら新しいデータを記憶、保持することで動画データを再生する。
次に、動画データの配置アドレスをQRコード(登録商標)に直接記録する方法について説明する。
まず準備段階として、ネットワークからアクセス可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-A.mp4」に動画データファイルを配置、記録する。
次いで、図9に示すように、該アドレス「www.ms.com/video/video-A.mp4」を文字情報データとしてQRコード(登録商標)に記録し、QRコード(登録商標)(コードA1)を生成する。このとき、動画データであることを容易に判定できるようにすることを目的として、該文字情報の前後に「video」「MPEG4」「http」といった識別文字列データ(識別タグ)を挿入したり、該動画データを再生する権限を判定するために、例えば「1234」といった認証データを併せて挿入する形態としてもよい。
次に、図10に示すように、サーバ(200)の判定データベース(205)に、判定用のキー文字列として、上記アドレス「www.ms.com/video/video-A.mp4」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。
続いて、実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用いて、上記QRコード(登録商標)(コードA1)を読取る。QRコード(登録商標)(コードA1)の画像情報を取得した該モバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードA1)に記録された文字情報「www.ms.com/video/video-A.mp4」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「www.ms.com/video/video-A.mp4」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「www.ms.com/video/video-A.mp4」と併せて、QRコード(登録商標)に記録された他の情報、「video」「Play」「MPEG4」「http」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほかに、QRコード(登録商標)に記録されたデータをサーバ(200)に送信するような形態としてもよい。そして、QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよいし、ユーザの入力データを併せてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「www.ms.com/video/video-A.mp4」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたプログラム部品(部品I)の識別データ(例えば、「buhin-I」)を取得する。このときサーバ(200)が、該文字情報「www.ms.com/video/video-A.mp4」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報を用いて判定データベース(205)を繰り返し検索し、ひもづけられたプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、該識別データにひもづけて記録されたプログラム部品「部品I」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品I」と、QRコード(登録商標)に記録されていた文字情報「www.ms.com/video/video-A.mp4」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)にプログラム部品データと文字情報とを直接送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」を文字情報と共にダウンロードする形態としてもよい。
モバイル端末(100)は、図11に示すように、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)では、生成したアプリを起動し、アドレス「www.ms.com/video/video-A.mp4」に存在する動画データを再生する。再生された動画データは、モバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。
上記の一連の動作を連続して行うことによって、モバイル端末(100)でQRコード(登録商標)を読取ったことにより、モバイル端末(100)上の画面で動画データが容易に再生される。
次に、動画データの配置アドレスと、該配置アドレスを一意に特定するためのキー文字列とをサーバ(200)の判定データベース(205)に記録し、該キー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、ネットワークからアクセス可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-A.mp4」に動画データファイルを配置、記録する。
次いで、図12に示すように、該アドレス「www.ms.com/video/video-A.mp4」を一意に特定するキー文字列、例えば「A123456」を設定し、該キー文字列をQRコード(登録商標)に記録し、QRコード(登録商標)(コードA2)を生成する。
このとき、対象となるデータが動画データであることを判定しやすくすることを目的として、該キー文字列の前後に「video」「MPEG4」「http」といった識別文字列データ(識別タグ)を挿入したり、該動画データを再生する権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としてもよい。
次に、図13に示すように、サーバ(200)の判定データベース(205)に、判定用のキー文字列として、上記キー文字列「A123456」を記録し、該キー文字列に対応するアドレス「www.ms.com/video/video-A.mp4」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。
続いて、実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードA2)を読取る。QRコード(登録商標)(コードA2)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードA2)に記録された文字情報「A123456」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「A123456」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「A123456」と併せて、QRコード(登録商標)に記録された他の情報、「video」「Play」「MPEG4」「http」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほかに、QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「A123456」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたアドレス「www.ms.com/video/video-A.mp4」と、プログラム部品(部品I)の識別データ(例えば、「buhin-I」)とを取得する。このときサーバ(200)が、該文字情報「A123456」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報を用いて判定データベース(205)を繰り返し検索し、ひもづけられたアドレスデータやプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたプログラム部品「部品I」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品I」と、判定データベース(205)から取得したアドレス「www.ms.com/video/video-A.mp4」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)にプログラム部品データとアドレスとを直接送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」とアドレスに関する情報とを送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)にプログラム部品「部品I」とその他データとをダウンロードする形態としても良い。
以下、モバイル端末(100)の動作(アプリの生成及び動画の再生)は上記実施例と同様であるので省略する。
次に、動画データの配置アドレスを記録したデータファイルをネットワーク上に配置し、該データファイルのアドレスと、該データファイルを一意に特定するためのキー文字列とを判定データベース(205)に記録し、該キー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、ネットワークからアクセス可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-A.mp4」に動画データファイルを配置、記録する。
次に、図14に示すように、該アドレス「www.ms.com/video/video-A.mp4」を文字列データとして、別のデータファイル「videodata.xml」に記録し、該データファイルを、アドレス「www.ms.com/XML/videodata.xml」に配置、記録する。
このとき、データファイルに記録されたアドレスが動画データであることを判定しやすくすることを目的として、動画アドレス「www.ms.com/video/video-A.mp4」とあわせて、例えば「video」「MPEG4」「http」といった識別文字列データ(識別タグ)を記録したり、動画データを再生する権限を判定するため、例えば「1234」といった認証データをあわせて記録する形態としてもよい。
次に、図15に示すように、該データファイルのアドレス「www.ms.com/XML/videodata.xml」を一意に特定するキー文字列、例えば「X654321」を設定し、該キー文字列をQRコード(登録商標)に記録し、QRコード(登録商標)(コードA3)を生成する。このとき、対象となる動画データのアドレスを記録したデータファイルであることを判定しやすくすることを目的として、該キー文字列の前後に「XML」といった識別文字列データ(識別タグ)を挿入したり、該データにアクセスする権限を判定するため、例えば「1234」といった認証データを併せて挿入する形態としてもよい。
2次に、判定データベース(205)に、判定用のキー文字列として、上記キー文字列「X654321」を記録し、該キー文字列に対応するデータとしてアドレス「www.ms.com/XML/videodata.xml」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。このとき、該キー文字列に対応するプログラム部品を特定して記録せず、該キー文字列のアドレスに存在するデータファイルから取得した文字情報に基づき判定データベース(205)を検索し対応するプログラム部品を特定する形態としてもよい。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードA3)を読取る。QRコード(登録商標)(コードA3)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードA3)に記録された文字情報「X654321」を取得する。モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「X654321」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「X654321」と併せて、QRコード(登録商標)に記録された他の情報、「XML」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよいし、また、ユーザの入力データを併せてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「X654321」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたデータとしてアドレス「www.ms.com/XML/videodata.xml」と、プログラム部品データ(部品I)の識別データ(例えば、「buhin-I」)を取得する。このときサーバ(200)が、該文字情報「X654321」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報を用いて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としてもよい。あるいは、取得したアドレスに記録されたデータファイル「www.ms.com/XML/videodata.xml」に記録されたデータを取得したうえで、判定データベース(205)を検索し、ひもづけられたデータやプログラム部品を特定する形態としてもよい。
サーバ(200)は、取得したデータ「www.ms.com/XML/videodata.xml」にアクセスし、該データファイルに記録された動画データファイルのアドレス「www.ms.com/video/video-A.mp4」を取得する。続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、該識別データにひもづけて記録されたプログラム部品「部品I」を取得する。
サーバ(200)は、プログラム部品データベース(206)から取得したプログラム部品「部品I」と、データファイル「www.ms.com/XML/videodata.xml」から取得したアドレス「www.ms.com/video/video-A.mp4」とをモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)にプログラム部品とアドレスとを直接送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」及びアドレスの情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データとをダウンロードする形態としてもよい。あるいは、サーバ(200)からモバイル端末(100)に対し、動画ファイルのアドレス「www.ms.com/video/video-A.mp4」に代えて、データファイルのアドレス「www.ms.com/XML/videodata.xml」を送信し、モバイル端末(100)が該データファイルにアクセスしたうえで、再度、データファイルに記録された動画ファイルにアクセスする形態としてもよい。
以下、モバイル端末(100)の動作(アプリの生成及び動画の再生)は上記実施例と基本的に同様であるので省略するが、動画データの再生に際しては、モバイル端末(100100)は、生成したアプリを起動し、アドレス「www.ms.com/XML/videodata.xml」にアクセスし、データファイルに記録されたアドレス「www.ms.com/video/video-A.mp4」に存在する動画データを再生する形式としてもよい。
なお、上記の構造とすることによって、モバイル端末(100)上で再生される動画データを随時変更したりアップデートしたりすることが可能になる。上記では、データファイル「www.ms.com/XML/videodata.xml」に記録される動画データは、アドレス「www.ms.com/video/video-A.mp4」の動画データに固定される例を説明したが、例えば図16に示すように、データファイル「www.ms.com/XML/videodata.xml」に記録される動画データのアドレスを変更することによって、例えば、4月末まで「www.ms.com/video/video-A.mp4」と記録し、5月から「www.ms.com/video/video-B.mp4」に変更することによって、モバイル端末(100)で動作するアプリの構成を変更することなく、モバイル端末(100)で再生される動画データの内容を随時変更することが可能になる。
次に、動画データの配置アドレスと動画再生用のプログラム部品Iとをデータセットにしてプログラム部品データベース(206)に記録し、該データセットを呼び出す判定データを判定データベース(205)に記録し、該判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、ネットワークからアクセス可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-A.mp4」に動画データファイルを配置、記録する。
次に、アドレス「www.ms.com/video/video-A.mp4」と該アドレスに存在する動画データを再生するためのプログラム部品データ(部品I)とをデータセット(データセットA4)にしてプログラム部品データベース(206)に記録し、併せて該データセット(データセットA4)を一意に特定するキー文字列、例えば「DSET123456」を設定し、データセットとひもづけてプログラム部品データベース(206)に記録する。
次に、図17に示すように、プログラム部品データベース(206)に記録された該キー文字列「DSET123456」を一意に特定する別のキー文字列、例えば「hantei123456」を設定し、該キー文字列「DSET123456」と「hantei123456」をひもづけて判定データベース(205)に記録する。
次に、判定データベース(205)に記録したキー文字列「hantei123456」をQRコード(登録商標)に記録し、QRコード(登録商標)(コードA4)を生成する。このとき、対象となるデータが動画データであることを判定しやすくすることを目的として、キー文字列の前後に「video」「MPEG4」「http」といった識別文字列データ(識別タグ)を挿入したり、該動画データを再生する権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としても良い。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードA4)を読取る。QRコード(登録商標)(コードA4)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードA4)に記録された文字情報「hantei123456」を取得する。モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「hantei123456」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「hantei123456」と併せて、QRコード(登録商標)に記録された他の情報、「video」「Play」「MPEG4」「http」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「hantei123456」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたデータとしてキー文字列「DSET123456」を取得する。このときサーバ(200)が、該文字情報「hantei123456」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報をもちいて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したキー文字列「DSET123456」をキー情報として、プログラム部品データベース(206)を検索し、該識別データにひもづけて記録されたデータセット(データセットA4)を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該データセットに含まれるプログラム部品「部品I」と、動画データのアドレス「www.ms.com/video/video-A.mp4」とをモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)にプログラム部品とその他アドレスとを直接送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データとをダウンロードする形態としてもよい。
以下、モバイル端末(100)の動作(アプリの生成及び動画の再生)は上記実施例と同様であるので省略する。
次に、動画データの配置アドレスを記録したデータファイルをネットワーク上に配置し、該データファイルのアドレスと動画再生用のプログラム部品(部品I)とをデータセットにしてプログラム部品データベース(206)に記録し、該データセットを呼び出す判定データを判定データベース(205)に記録し、該判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、ネットワークからアクセス可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-A.mp4」に動画データファイルを配置、記録する。
次に、該アドレス「www.ms.com/video/video-A.mp4」を文字列データとして、別のデータファイル「videodata.xml」に記録し、該データファイルを、アドレス「www.ms.com/XML/videodata.xml」に配置、記録する。このとき、データファイルに記録されたアドレスが動画データであることを判定しやすくすることを目的として、該動画アドレス「www.ms.com/video/video-A.mp4」と併せて、例えば「video」「MPEG4」「http」といった識別文字列データ(識別タグ)を記録したり、動画データを再生する権限を判定するため、例えば「1234」といった認証データをあわせて記録する形態としても良い。
次に、該データファイルのアドレス「www.ms.com/XML/videodata.xml」と、該アドレスのデータファイルに記録されたアドレス「www.ms.com/video/video-A.mp4」に存在する動画データを再生するためのプログラム部品(部品I)とをデータセット(データセットA5)にしてプログラム部品データベース(206)に記録し、併せて該データセット(データセットA5)を一意に特定するキー文字列、例えば「DSET654321」を設定し、データセットとひもづけてプログラム部品データベース(206)に記録する。
次に、プログラム部品データベース(206)に記録された該キー文字列「DSET654321」を一意に特定する別のキー文字列、例えば「hantei654321」を設定し、該キー文字列「DSET654321」と「hantei654321」をひもづけて判定データベース(205)に記録する。次に、判定データベース(205)に記録したキー文字列「hantei654321」をQRコード(登録商標)に記録し、QRコード(登録商標)(コードA5)を生成する。このとき、対象となる動画データのアドレスを記録したデータファイルであることを判定しやすくすることを目的として、該キー文字列の前後に「XML」といった識別文字列データ(識別タグ)を挿入したり、該データにアクセスする権限を判定するため、例えば「1234」といった認証データを併せて挿入する形態としてもよい。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードA5)を読取る。QRコード(登録商標)(コードA5)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードA5)に記録された文字情報「hantei654321」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「hantei654321」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「hantei654321」と併せて、QRコード(登録商標)に記録された他の情報、「XML」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、その他QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「hantei654321」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたキー文字列「DSET654321」を取得する。このときサーバ(200)が、該文字情報「hantei654321」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力データを用いて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したキー文字列「DSET654321」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたデータセット(データセットA5)を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該データセットに含まれるプログラム部品「部品I」と、データファイルのアドレス「www.ms.com/XML/videodata.xml」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品とその他アドレスを送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データをダウンロードする形態としてもよい。あるいは、サーバ(200)からモバイル端末(100)に対し、データファイルのアドレス「www.ms.com/XML/videodata.xml」に代えて、データファイルに記録された動画ファイルのアドレス「www.ms.com/video/video-A.mp4」を送信し、モバイル端末(100)がプログラム部品「部品I」を用いて、モバイル端末(100)上で動作するアプリを生成したうえで、該動画ファイルにアクセスする形態としてもよい。
モバイル端末(100)は、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)では、生成したアプリを起動し、アドレス「www.ms.com/XML/videodata.xml」にアクセスし、該データファイルに記録されたアドレス「www.ms.com/video/video-A.mp4」を取得し、該アドレス「www.ms.com/video/video-A.mp4」に存在する動画データを再生する。再生された動画データはモバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。
なお、上記の構造とすることによって、モバイル端末(100)上で再生される動画データを随時変更したりアップデートしたりすることが可能になる。例えば、上記説明においては、データファイル「www.ms.com/XML/videodata.xml」に記録される動画データは、アドレス「www.ms.com/video/video-A.mp4」の動画データに固定される例を説明したが、データファイル「www.ms.com/XML/videodata.xml」に記録される動画データのアドレスを変更することによって、例えば、4月末まで「www.ms.com/video/video-A.mp4」と記録し、5月から「www.ms.com/video/video-B.mp4」に変更することによって、モバイル端末(100)で動作するアプリの構成を変更することなく、モバイル端末(100)で再生される動画データの内容を随時変更することが可能になる。
次に、ネットワーク上の動画データを、モバイル端末(100)上に全て複製した後で、モバイル端末(100)上で動画データを再生する例(ダウンロード再生)について説明する。この場合、例えば100MBの動画データであれば、原則として、100MB全てがモバイル端末(100)に記録されたうえで再生が開始されるが、連続する動画データを分割してダウンロードしたり、もしくは相互に関連性のある動画データ群を同時にもしくは順次ダウンロードする形態としてもよい。
ダウンロードする動画データのアドレスをQRコード(登録商標)のアドレスに直接記録する方法について説明する。
まず準備段階として、モバイル端末(100)からアクセスしダウンロードすることが可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-D.mp4」に動画データファイルを配置、記録する。
次に、該アドレス「www.ms.com/video/video-D.mp4」を文字列データとしてQRコード(登録商標)に記録し、QRコード(登録商標)(コードD1)を生成する。このとき、ダウンロード対象の動画データの性質を判定しやすくすることを目的として、文字列の前後に「DL」「video」「MPEG4」「ZIP」「http」といった識別文字列データ(識別タグ)を挿入したり、該動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としてもよい。
次に、判定データベース(205)に、判定用のキー文字列として、上記アドレス「www.ms.com/video/video-D.mp4」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD1)を読取る。QRコード(登録商標)(コードD1)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、QRコード(登録商標)(コードD1)に記録された文字情報「www.ms.com/video/video-D.mp4」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「www.ms.com/video/video-D.mp4」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「www.ms.com/video/video-D.mp4」とあわせて、QRコード(登録商標)に記録された他の情報、「DL」「video」「MPEG4」「ZIP」「http」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、その他QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「www.ms.com/video/video-D.mp4」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたプログラム部品(部品I)の識別データ(例えば、「buhin-I」)を取得する。このときサーバ(200)が、該文字情報「www.ms.com/video/video-D.mp4」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報を用いて判定データベース(205)を繰り返し検索し、ひもづけられたプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、該識別データにひもづけて記録されたプログラム部品「部品I」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品I」と、QRコード(登録商標)に記録されていた文字情報「www.ms.com/video/video-D.mp4」とをモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品と文字情報を送信する形態としてもよいし、サーバ(200)からモバイル端末(100)にプログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」を文字情報と共にダウンロードする形態としてもよい。
モバイル端末(100)は、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)は、生成したアプリを起動し、アドレス「www.ms.com/video/video-D.mp4」に存在する動画データをダウンロードして再生する。再生された動画データは、モバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。上記の一連の動作を連続して行うことによって、モバイル端末(100)で該QRコード(登録商標)を読取ったことにより、容易にモバイル端末(100)上の画面で動画データが再生される。
次に、動画データのアドレスと、該アドレスを一意に特定するためのキー文字列とを判定データベース(205)に記録し、該キー文字列をQRコード(登録商標)に記録する方法、について説明する。
まず準備段階として、モバイル端末(100)からアクセスしダウンロードすることが可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-D.mp4」に動画データファイルを配置、記録する。
次に、該アドレス「www.ms.com/video/video-D.mp4」を一意に特定するキー文字列、例えば「DL123456」を設定し、該キー文字列をQRコード(登録商標)に記録し、QRコード(登録商標)(コードD2)を生成する。このとき、ダウンロード対象の動画データの性質を判定しやすくすることを目的として、該キー文字列の前後に「DL」「video」「MPEG4」「ZIP」「http」といった識別文字列データ(識別タグ)を挿入したり、動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データを併せて挿入する形態としてもよい。
次に、判定データベース(205)に、判定用のキー文字列として、上記キー文字列「DL123456」を記録し、該キー文字列に対応するデータとしてアドレス「www.ms.com/video/video-D.mp4」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD2)を読取る。QRコード(登録商標)(コードD2)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードD2)に記録された文字情報「DL123456」を取得する。モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「DL123456」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「DL123456」と併せて、QRコード(登録商標)に記録された他の情報、「DL」「video」「MPEG4」「ZIP」「http」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、該QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「DL123456」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字情報にひもづけて記録されたデータとしてアドレス「www.ms.com/video/video-D.mp4」と、プログラム部品(部品I)の識別データ(例えば、「buhin-I」)を取得する。このときサーバ(200)が、該文字情報「DL123456」と併せて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報を用いて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としてもよい。
続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたプログラム部品「部品I」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品I」と、判定データベース(205)から取得したデータ「www.ms.com/video/video-D.mp4」とをモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)にプログラム部品とアドレスデータとを直接送信する形態としてもよいし、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」及びアドレスデータに関する情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データをダウンロードする形態としてもよい。
以下、モバイル端末(100)の動作(アプリの生成及び動画の再生)は上記実施例と同様であるので省略する。
次に、動画データのアドレスを記録したデータファイルをネットワーク上に配置し、該データファイルのアドレスと、該データファイルを一意に特定するためのキー文字列を判定データベース(205)に記録し、該キー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、モバイル端末(100)からアクセスしダウンロードすることが可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-D.mp4」に動画データファイルを配置、記録する。
次に、該アドレス「www.ms.com/video/video-D.mp4」を文字列データとして、別のデータファイル「DLdata.xml」に記録し、該データファイルを、アドレス「www.ms.com/XML/DLdata.xml」に配置、記録する。このとき、データファイルに記録されたアドレスがダウンロード対象の動画データであることを判定しやすくすることを目的として、該動画アドレス「www.ms.com/video/video-D.mp4」とあわせて、例えば、該文字列の前後に「DL」「video」「MPEG4」「ZIP」「http」といった識別文字列データ(識別タグ)を記録したり、該動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて記録する形態としてもよい。
次に、該データファイルのアドレス「www.ms.com/XML/DLdata.xml」を一意に特定するキー文字列、例えば「DL654321」を設定し、該キー文字列をQRコード(登録商標)に記録し、QRコード(登録商標)(コードD3)を生成する。このとき、対象となる動画データのアドレスを記録したデータファイルであることを判定しやすくすることを目的として、該キー文字列の前後に「XML」といった識別文字列データ(識別タグ)を挿入したり、該データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としてもよい。
次に、判定データベース(205)に、判定用のキー文字列として、上記キー文字列「DL654321」を記録し、該キー文字列に対応するデータとしてアドレス「www.ms.com/XML/DLdata.xml」を記録し、該キー文字列に対応するプログラム部品として、動画データ再生用のプログラム部品(部品I)をひもづけて記録する。このとき、該キー文字列に対応するプログラム部品を特定して記録せず、該キー文字列のアドレスに存在するデータファイルから取得した文字列データに基づき判定データベース(205)を検索し対応するプログラム部品を特定する形態としてもよい。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD3)を読取る。QRコード(登録商標)(コードD3)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コードD3)に記録された文字情報「DL654321」を取得する。モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「DL654321」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「DL654321」とあわせて、QRコード(登録商標)に記録された他の情報、「XML」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としてもよい。該QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータを併せてサーバ(200)に送信する形態としてもよい。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としてもよい。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「DL654321」を識別し、該文字情報をキー情報として、判定データベース(205)を検索し、該文字列データにひもづけて記録されたデータとしてアドレス「www.ms.com/XML/DLdata.xml」と、プログラム部品(部品I)の識別データ(例えば、「buhin-I」)を取得する。このときサーバ(200)が、該文字情報「DL654321」とあわせて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報をもちいて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としてもよい。あるいは、取得したアドレスに記録されたデータファイル「www.ms.com/XML/DLdata.xml」に記録されたデータを取得したうえで、判定データベース(205)を検索し、ひもづけられたデータやプログラム部品を特定する形態としてもよい。
サーバ(200)は、取得したアドレス「www.ms.com/XML/DLdata.xml」にアクセスし、データファイルに記録された動画データファイルのアドレス「www.ms.com/video/video-D.mp4」を取得する。続いてサーバ(200)は、判定データベース(205)から取得したプログラム部品の識別データ、「buhin-I」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたプログラム部品「部品I」を取得する。
サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品I」と、データファイル「www.ms.com/XML/DLdata.xml」から取得したアドレス「www.ms.com/video/video-D.mp4」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品とアドレスを送信する形態としても、サーバ(200)からモバイル端末(100)に該プログラム部品「部品I」及びアドレスに関する情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データをダウンロードする形態としてもよい。あるいは、サーバ(200)からモバイル端末(100)に対し、動画ファイルのアドレス「www.ms.com/video/video-D.mp4」に代えて、データファイルのアドレス「www.ms.com/XML/DLdata.xml」を送信し、モバイル端末(100)がデータファイルにアクセスしたうえで、再度、該データファイルに記録された動画ファイルにアクセスしてダウンロードする形態としてもよい。
以下、モバイル端末(100)の動作(アプリの生成及び動画の再生)は上記実施例と基本的に同様であるので省略するが、動画データの再生に際しては、モバイル端末(100)では、生成したアプリを起動し、アドレス「www.ms.com/XML/DLdata.xml」にアクセスし、データファイルに記録されたアドレス「www.ms.com/video/video-D.mp4」に存在する動画データをダウンロードして再生する形式としても良い。
なお、上記の構造とすることによって、モバイル端末(100)上にダウンロードされ再生される動画データを随時変更したりアップデートしたりすることが可能になる。例えば、上記説明においては、データファイル「www.ms.com/XML/DLdata.xml」に記録される動画データは、アドレス「www.ms.com/video/video-D.mp4」の動画データに固定される例を説明したが、データファイル「www.ms.com/XML/DLdata.xml」に記録される動画データのアドレスを変更することによって、例えば、4月末まで「www.ms.com/video/video-D.mp4」と記録し、5月から「www.ms.com/video/video-E.mp4」に変更することによって、モバイル端末(100)で動作するアプリの構成を変更することなく、モバイル端末(100)にダウンロードされ再生される動画データの内容を随時変更することが可能になる。
次に、動画データのアドレスと動画再生用のプログラム部品「部品I」をデータセットにしてプログラム部品データベース(206)に記録し、データセットを呼び出す判定データを判定データベース(205)に記録し、判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法、について説明する。
まず準備段階として、モバイル端末(100)からアクセスしダウンロードすることが可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-D.mp4」に動画データファイルを配置、記録する。
次に、アドレス「www.ms.com/video/video-D.mp4」とアドレスに存在する動画データを再生するためのプログラム部品(部品I)をデータセット(データセットD4)にしてプログラム部品データベース(206)に記録し、あわせてデータセット(データセットD4)を一意に特定するキー文字列、例えば「DSET2」を設定し、データセットとひもづけてプログラム部品データベース(206)に記録する。次に、プログラム部品データベース(206)に記録されたキー文字列「DSET2」を一意に特定する別のキー文字列、例えば「hantei2」を設定し、キー文字列「DSET2」と「hantei2」をひもづけて判定データベース(205)に記録する。
次に、判定データベース(205)に記録したキー文字列「hantei2」をQRコード(登録商標)に記録し、QRコード(登録商標)(コードD5)を生成する。このとき、ダウンロード対象の動画データの性質を判定しやすくすることを目的として、例えば、キー文字列の前後に「DL」「video」「MPEG4」「ZIP」といった識別文字列データ(識別タグ)を挿入したり、動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としても良い。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD4)を読取る。QRコード(登録商標)(コードD4)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、QRコード(登録商標)(コードD4)に記録された文字情報「hantei2」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「hantei2」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「hantei2」とあわせて、QRコード(登録商標)に記録された他の情報、「DL」「video」「MPEG4」「ZIP」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、その他QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としても良い。あわせて、QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータをあわせてサーバ(200)に送信する形態としても良い。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としても良い。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「hantei2」を識別し、文字情報をキー情報として、判定データベース(205)を検索し、文字情報にひもづけて記録されたデータとしてキー文字列「DSET2」を取得する。このときサーバ(200)が、文字情報「hantei2」とあわせて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報をもちいて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としても良い。続いてサーバ(200)は、判定データベース(205)から取得したキー文字列「DSET2」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたデータセット(データセットD4)を取得する。
サーバ(200)は、プログラム部品データベース(206)から取得したデータセットに含まれるプログラム部品「部品I」と、動画データのアドレス「www.ms.com/video/video-D.mp4」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品と動画データのアドレスを送信する形態としても、サーバ(200)からモバイル端末(100)にプログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データをダウンロードする形態としても良い。
モバイル端末(100)は、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)では、生成したアプリを起動し、アドレス「www.ms.com/video/video-D.mp4」に存在する動画データをダウンロードして再生する。再生された動画データはモバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。上記の一連の動作を連続して行うことによって、モバイル端末(100)でQRコード(登録商標)を読取ったことにより、容易にモバイル端末(100)上の画面で動画データが再生される。
次に、動画データのアドレスを記録したデータファイルをネットワーク上に配置し、データファイルのアドレスと動画再生用のプログラム部品(部品I)をデータセットにしてプログラム部品データベース(206)に記録し、データセットを呼び出す判定データを判定データベース(205)に記録し、判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法、について説明する。
まず準備段階として、モバイル端末(100)からアクセスしダウンロードすることが可能な場所に動画データを記録し、そのアドレスを特定する。一例として、アドレス「www.ms.com/video/video-D.mp4」に動画データファイルを配置、記録する。
次に、アドレス「www.ms.com/video/video-D.mp4」を文字列データとして、別のデータファイル「DLvideodata.xml」に記録し、データファイルを、アドレス「www.ms.com/XML/DLdata.xml」に配置、記録する。このとき、データファイルに記録されたアドレスがダウンロード対象の動画データであることを判定しやすくすることを目的として、動画アドレス「www.ms.com/video/video-D.mp4」とあわせて、例えば「DL」「video」「MPEG4」「ZIP」といった識別文字列データ(識別タグ)を記録したり、動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて記録する形態としても良い。
次に、データファイルのアドレス「www.ms.com/XML/DLdata.xml」と、アドレスのデータファイルに記録されたアドレス「www.ms.com/video/video-D.mp4」に存在する動画データを再生するためのプログラム部品(部品I)をデータセット(データセットD5)にしてプログラム部品データベース(206)に記録し、あわせてデータセット(データセットD5)を一意に特定するキー文字列、例えば「DSET3」を設定し、データセットとひもづけてプログラム部品データベース(206)に記録する。次に、プログラム部品データベース(206)に記録されたキー文字列「DSET3」を一意に特定する別のキー文字列、例えば「hantei654321」を設定し、キー文字列「DSET3」と「hantei3」をひもづけて判定データベース(205)に記録する。
次に、判定データベース(205)に記録したキー文字列「hantei3」をQRコード(登録商標)に記録し、QRコード(登録商標)(コードD5)を生成する。このとき、対象となる動画データのアドレスを記録したデータファイルであることを判定しやすくすることを目的として、キー文字列の前後に「XML」といった識別文字列データ(識別タグ)を挿入したり、データにアクセスする権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としても良い。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD5)を読取る。QRコード(登録商標)(コードD5)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、QRコード(登録商標)(コードD5)に記録された文字情報「hantei3」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「hantei3」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「hantei3」とあわせて、QRコード(登録商標)に記録された他の情報、「XML」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、その他QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としても良い。あわせて、QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータをあわせてサーバ(200)に送信する形態としても良い。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としても良い。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「hantei3」を識別し、文字情報をキー情報として、判定データベース(205)を検索し、文字情報にひもづけて記録されたキー文字列「DSET3」を取得する。このときサーバ(200)が、文字情報「hantei3」とあわせて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力データをもちいて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としても良い。
続いてサーバ(200)は、判定データベース(205)から取得したキー文字列「DSET3」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたデータセット(データセットD5)を取得する。
サーバ(200)は、プログラム部品データベース(206)から取得したデータセットに含まれるプログラム部品「部品I」と、データファイルのアドレス「www.ms.com/XML/DLdata.xml」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品とその他アドレスを送信する形態としても、サーバ(200)からモバイル端末(100)にプログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」とその他データをダウンロードする形態としても良い。あるいは、サーバ(200)からモバイル端末(100)に対し、データファイルのアドレス「www.ms.com/XML/DLdata.xml」に代えて、データファイルに記録された動画ファイルのアドレス「www.ms.com/video/video-D.mp4」を送信し、モバイル端末(100)がプログラム部品「部品I」を用いて、モバイル端末(100)上で動作するプログラム(プログラムI)を生成したうえで、動画ファイルをダウンロードする形態としても良い。
モバイル端末(100)は、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)では、生成したアプリを起動しアドレス「www.ms.com/XML/DLdata.xml」にアクセスし、データファイルに記録されたアドレス「www.ms.com/video/video-D.mp4」を取得し、アドレス「www.ms.com/video/video-D.mp4」に存在する動画データをダウンロードして再生する。再生された動画データはモバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。
なお、上記の構造とすることによって、モバイル端末(100)上で再生される動画データを随時変更したりアップデートしたりすることが可能になる。例えば、上記説明においては、データファイル「www.ms.com/XML/DLdata.xml」に記録される動画データは、アドレス「www.ms.com/video/video-D.mp4」の動画データに固定される例を説明したが、データファイル「www.ms.com/XML/DLdata.xml」に記録される動画データのアドレスを変更することによって、例えば、4月末まで「www.ms.com/video/video-D.mp4」と記録し、5月から「www.ms.com/video/video-E.mp4」に変更することによって、モバイル端末(100)で動作するアプリの構成を変更することなく、モバイル端末(100)にダウンロードされ再生される動画データの内容を随時変更することが可能になる。
次に、動画データと動画再生用のプログラム部品「部品I」をデータセットにしてプログラム部品データベース(206)に記録し、データセットを呼び出す判定データを判定データベース(205)に記録し、判定データを一意に呼び出すためのキー文字列をQRコード(登録商標)に記録する方法について説明する。
まず準備段階として、対象となる動画データ「video-D.mp4」と動画データを再生するためのプログラム部品(部品I)をデータセット(データセットD6)にしてプログラム部品データベース(206)に記録し、あわせてデータセット(データセットD6)を一意に特定するキー文字列、例えば「DSET1」を設定し、データセットとひもづけてプログラム部品データベース(206)に記録する。
次に、プログラム部品データベース(206)に記録されたキー文字列「DSET1」を一意に特定する別のキー文字列、例えば「hantei1」を設定し、キー文字列「DSET1」と「hantei1」をひもづけて判定データベース(205)に記録する(図18参照)。
次に、判定データベース(205)に記録したキー文字列「hantei1」をQRコード(登録商標)に記録し、QRコード(登録商標)(コードD6)を生成する。このとき、ダウンロード対象の動画データの性質を判定しやすくすることを目的として、キー文字列の前後に「DL」「video」「MPEG4」「ZIP」といった識別文字列データ(識別タグ)を挿入したり、動画データをダウンロードする権限を判定するため、例えば「1234」といった認証データをあわせて挿入する形態としても良い。
続いて実施段階として、親アプリ(300)を実装したモバイル端末(100)のカメラ(106)を用い、上記QRコード(登録商標)(コードD6)を読取る。QRコード(登録商標)(コードD6)の画像情報を取得したモバイル端末(100)は、デコーダ(107)を起動し、デコード結果として、QRコード(登録商標)(コードD6)に記録された文字情報「hantei1」を取得する。
モバイル端末(100)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「hantei1」をサーバ(200)に送信する。このとき、モバイル端末(100)が、文字情報「hantei1」とあわせて、QRコード(登録商標)に記録された他の情報、「DL」「video」「MPEG4」「ZIP」といった識別文字列データ(識別タグ)や、「1234」といった認証データのほか、その他QRコード(登録商標)に記録されたデータをサーバ(200)に送信する形態としても良い。あわせて、QRコード(登録商標)に記録された文字情報以外に、付加情報として、「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といったデータをあわせてサーバ(200)に送信する形態としても良い。また、ユーザの入力データをあわせてサーバ(200)に送信する形態としても良い。
サーバ(200)は、モバイル端末(100)から受信したデータから、文字情報「hantei1」を識別し、文字情報をキー情報として、判定データベース(205)を検索し、文字情報にひもづけて記録されたデータとしてキー文字列「DSET1」を取得する。このときサーバ(200)が、文字情報「hantei1」とあわせて、QRコード(登録商標)に記録された他の情報、もしくは付加情報やユーザ入力情報をもちいて判定データベース(205)を繰り返し検索し、ひもづけられたデータやプログラム部品をさらに詳細に特定する形態としても良い。
続いてサーバ(200)は、判定データベース(205)から取得したキー文字列「DSET1」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたデータセット(データセットD6)を取得する。
サーバ(200)は、プログラム部品データベース(206)から取得したデータセットに含まれるプログラム部品「部品I」と、動画データ「video-D.mp4」をモバイル端末(100)に送信する。このとき、サーバ(200)からモバイル端末(100)に直接プログラム部品と動画データを送信する形態としても、サーバ(200)からモバイル端末(100)にプログラム部品「部品I」の情報を送信し、モバイル端末(100)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品I」と動画データをダウンロードする形態としても良い。
モバイル端末(100)は、サーバ(200)から受信したプログラム部品「部品I」を用いて、モバイル端末(100)上で動作する動画再生用のアプリを生成する。モバイル端末(100)では、生成したアプリを起動し、ダウンロードした動画データ「video-D.mp4」を再生する。再生された動画データはモバイル端末(100)のディスプレイ(102)に表示され、ユーザの操作によって再生、停止、一時停止、早送り、巻き戻し、シーン検索、といった機能操作が可能となる。上記の一連の動作を連続して行うことによって、モバイル端末(100)でQRコード(登録商標)を読取ったことにより、容易にモバイル端末(100)上の画面で動画データが再生される。
次に、本発明のシステムにおいて会員証として機能するアプリを生成する場合の具体的な実施例について説明する。
会員証アプリの生成を行う代表的な方法について、
(1)本人認証のための認証データの入力、登録を行う認証アプリを生成する方法と、
(2)認証アプリを使ってモバイル端末に会員証アプリを生成する方法と、
(3)会員証を認証する会員認証アプリを生成する方法と、
について説明する。本発明の具体的適用においてはその他の方法を適用してもかまわない。
最初に(1)本人認証のための認証アプリを生成する方法について説明する。本人認証のための基礎データを収集、登録するアプリを生成するため、ここでは、本人認証のための基礎データとして、
(a)各モバイル端末に固有のID番号(モバイル端末のハードウェアを一意に特定するID番号か、モバイル端末に搭載されるOS等の基本ソフトウェアを一意に特定するID番号か、もしくはその組み合わせ)
(b)ユーザ本人が入力するパスコード(文字データのみならず、ゼスチャ等によるデータセットであってもかまわない)
を使用する事例について説明する。本発明の具体的適用においては、上記(a)(b)以外のデータを組み合わせて認証する形態としても良い。「ユーザ本人のプロファイル情報」や「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といった付加情報をあわせて認証する形態としても良い。
まず準備段階として、認証アプリを生成するきっかけとなるQRコード(登録商標)を生成する。例えば「reg_newmember」を文字情報として記録したQRコード(登録商標)(コード#1)を生成する図19。このとき、文字情報の役割を明確にし、識別しやすくする目的で、文字情報の前後に、「fnc: :reg_newmember,,start::20110401,,end::20120331」など識別のための文字列データ(識別タグ)を挿入する形態としても良い。
次に、判定データベースに、判定用のキー文字列として、上記文字情報「reg_newmember」を記録し、キー文字列に対応するプログラム部品として、本人認証のための基礎データを収集、登録する認証プログラム部品(部品α)をひもづけて記録する図20。
続いて実施段階として、親アプリ(300)がインストールされたモバイル端末(100h)のカメラ(106h)機能を用い、上記QRコード(登録商標)(コード#1)を読取る。QRコード(登録商標)(コード#1)の画像情報を取得した該モバイル端末は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コード#1)に記録された文字情報「reg_newmember」を取得する。該モバイル端末(h)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「reg_newmember」をサーバ(200)に送信する。
このとき、取得した文字情報「reg_newmember」とあわせて、モバイル端末(100h)が、QRコード(登録商標)に記録された他の情報、例えば識別文字列データ(識別タグ)をサーバ(200)に送信する形態としても良い。該QRコード(登録商標)に記録された文字情報以外に、「ユーザ本人のプロファイル情報」や「使用言語」「位置情報」「IPアドレス」「過去の利用履歴」といった付加情報や、「ハードウェアを一意に特定するID番号」「端末に搭載されるOS等の基本ソフトウェアを一意に特定するID番号」といったデータをあわせてサーバ(200)に送信する形態としても良い。さらに、ユーザが入力するパスコードなど入力データをあわせてサーバ(200)に送信する形態としても良い。
サーバ(200)は、該モバイル端末(100h)から受信したデータから、文字情報「reg_newmember」を識別し、文字情報をキー情報として、判定データベースを検索し、文字情報にひもづけて記録されたプログラム部品(部品α)の識別データ(例えば、「buhin-α」)を取得する。このときサーバ(200)が、該文字情報「reg_newmember」とあわせて、上記付加情報やユーザ入力情報等のデータをもちいて判定データベースを繰り返し検索し、ひもづけられたプログラム部品をさらに詳細に特定する形態としても良い。
続いてサーバ(200)は、判定データベースから取得したプログラム部品の識別データ、「buhin-α」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたプログラム部品「部品α」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品α」をモバイル端末(100h)に送信する。このとき、サーバからモバイル端末(100h)に直接プログラム部品を送信する形態としても、サーバからモバイル端末(100h)に該プログラム部品「部品α」に関する情報を送信し、モバイル端末(100h)からサーバにリクエストして、サーバ(200)上のプログラム部品「部品α」をダウンロードする形態としても良い。
モバイル端末(100h)は、サーバ(200)から受信したプログラム部品「部品α」を用いて、モバイル端末(100h)上で動作する本人認証のための認証データ収集アプリ(アプリα)を生成し起動する。アプリαは、起動時に各モバイル端末に固有のID番号(モバイル端末のハードウェアを一意に特定するID番号か、モバイル端末に搭載されるOS等の基本ソフトウェアを一意に特定するID番号か、もしくはその組み合わせ、以下「固有ID」と表記する)を取得する。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリαは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。
ユーザがパスコード情報、例えば文字列「0909」を入力すると、アプリαはそれを記憶するとともに、サーバ(200)に通信し、取得した固有IDとともに、判定データベースに登録する。このとき、パスコードや固有IDに対応するプログラム部品として、会員証アプリケーションソフトウェア用のプログラム部品(部品β)をひもづけて記録する(図21参照)。
次に(2)認証アプリを使ってモバイル端末に会員証アプリを生成する方法、について説明する。
まず上記と同様の方法により、会員登録のプロセスを実行する。サーバ(200)は、プログラム部品(部品α)の識別データ(例:「buhin-α」)を取得し、モバイル端末(100h)に該プログラム部品「部品α」に関する情報を送信する。
モバイル端末(100h)は、サーバ(200)から該プログラム部品「部品α」に関する情報を受信した場合、「部品α」に基づく本人認証のための認証データ収集アプリ(アプリα)をモバイル端末(100h)上に生成済みである場合には、アプリαを起動し、アプリαは、サーバ(200)に対し、「部品α」を送信せず、会員証アプリ用のプログラム部品(部品β)を送信するよう要求する。このとき、該モバイル端末(100h)からサーバ(200)に対し、該モバイル端末(100h)の固有IDをあわせて送信する形態としても良い。
サーバ(200)は、モバイル端末(100h)から、会員証アプリ用のプログラム部品(部品β)を一意に識別する文字情報(例えば、「buhin-β」)を受信すると、、文字情報を使ってプログラム部品データベース(206)を検索し、会員証アプリ用のプログラム部品(部品β)を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品β」をモバイル端末(100h)に送信する。このとき、サーバ(200)からモバイル端末(100h)に直接プログラム部品を送信する形態としても、サーバ(200)からモバイル端末(100h)に該プログラム部品「部品β」に関する情報を送信し、モバイル端末(100h)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品β」をダウンロードする形態としても良い。
モバイル端末(100h)は、サーバ(200)から受信したプログラム部品「部品β」を用いて、モバイル端末(100h)上で動作する会員証アプリ(アプリβ)を生成し起動する。アプリβは、起動時に該固有IDを取得し、アプリβに記録された情報と一致するか検証する。一致した場合は起動するが、一致しない場合は、会員証アプリβは正常に起動しない。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリβは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。入力したデータがあらかじめアプリβに記憶されたパスコードと一致した場合は、アプリβは会員証プログラムとして動作し、入力したデータがあらかじめ記憶されたパスコードと一致しない場合には、アプリβは会員証として動作しない。
正常起動したアプリβが会員証として動作する際には、モバイル端末(100h)のディスプレイ(102)上に専用のQRコード(登録商標)(コード#2)を生成し表示する(図22参照)。該QRコード(登録商標)には、会員証IDのほか、アプリβが起動時に取得した、もしくはアプリβがあらかじめ保持していた該固有IDやパスコードが記録されるほか、該QRコード(登録商標)の生成時にアプリβがランダムに生成した「トランザクションコード」があわせて記録される。このとき、QRコード(登録商標)に記録されるデータの秘匿性を維持するため、固有IDやパスコード等のデータを暗号化するか、特定のアルゴリズムに従って翻訳して表記する形態としても良い。
アプリβは、会員証となるQRコード(登録商標)を生成する毎に、毎回異なる「トランザクションコード」、(例えば今回は「7638」で次回は「2943」)を生成し、サーバ(200)と通信してサーバ(200)はトランザクションコード」を(ユーザの固有IDやパスコードとあわせて)判定データベースに記録する(図23及び図24)。会員証QRコード(登録商標)を生成する毎に該QRコード(登録商標)に含まれるデータの中身(特にトランザクションコード)が異なるため、過去に生成された会員証QRコード(登録商標)の画像を複製して使用しても(最新の会員証とトランザクションコードが一致しないので)認証されない。なお、このとき、該「トランザクションコード」の有効期間(有効期限時刻、例えば2011年7月1日0時20分など)についてあわせて設定する形態としても良い。
次に(3)会員証を認証する会員認証アプリを生成する方法、について説明する。
ここでは、会員認証アプリを生成済したモバイル端末(100i)を会員認証用のデバイスとして活用する例について説明する。カメラ(106i)を搭載したモバイル端末(100i)に会員認証用アプリ(アプリγ)を生成し、会員証アプリをインストールした別のモバイル端末(100h)の画面に表示されたQRコード(登録商標)を読取ることで会員認証を行う。本発明の具体的適用においてはその他の方法を適用してもかまわない。
まず準備段階として、会員認証アプリを生成するトリガとなる文字情報を設定する。会員認証アプリは一般ユーザに公開せず、業務用として特定の端末のみにインストールされるべきアプリであるため、ここでは、あらかじめ設定した文字情報と、あらかじめ設定したパスコードが一致することをもって正式な手続きであることを確認する。本発明の具体的適用においては他の方法を適用してもかまわない。
会員認証アプリを生成するトリガとなる文字情報を「build_new_Certifier」、パスコードを「9111」、パスコードリクエスト用のコマンド「sndCmnd:REQ_INPUTPASS」として設定し、各データをひもづけて判定データベースに登録する。このとき、トリガとなる文字情報「build_new_Certifier」に対し、複数のパスコードを設定したり、或いはパスコードに有効期限を設定する形態としても良い。
さらに、文字情報とパスコードが正常に認証された場合に、文字情報に対応するプログラム部品として、判定データベースに、会員認証プログラム部品(部品γ)をひもづけて記録する。
上記文字情報「build_new_Certifier」を記録したQRコード(登録商標)(コード#3)を生成する(図25参照)。このとき、文字情報の役割を明確にし、識別しやすくする目的で、文字情報の前後に、識別のための文字列データ(識別タグ)を挿入する形態としても良い。
続いて実施段階として、親アプリ(300)がインストールされたモバイル端末(100i)のカメラ(106i)を用い、上記QRコード(登録商標)(コード#3)を読取る。QRコード(登録商標)(コード#3)の画像情報を取得した該モバイル端末(100i)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コード#3)に記録された文字情報「build_new_Certifier」を取得する。該モバイル端末(100i)は、ネットワークを介してサーバ(200)と通信を行い、取得した文字情報「build_new_Certifier」をサーバ(200)に送信する。
このとき、取得した文字情報「build_new_Certifier」とあわせて、該モバイル端末(100i)が、QRコード(登録商標)に記録された他の情報、例えば識別文字列データ(識別タグ)をサーバ(200)に送信する形態としても良い。該QRコード(登録商標)に記録された文字情報以外に、「ユーザ本人のプロファイル情報」や「使用言語」「位置情報」「IPアドレス」「過去の利用履歴」といった付加情報や、「ハードウェアを一意に特定するID番号」「端末に搭載されるOS等の基本ソフトウェアを一意に特定するID番号」といったデータをあわせてサーバ(200)に送信する形態としても良い。
サーバ(200)は、モバイル端末(100i)から受信したデータから、文字情報「build_new_Certifier」を識別し、文字情報をキー情報として、判定データベースを検索し、文字情報にひもづけて記録されたパスコードリクエスト用のコマンド「sndCmnd:REQ_INPUTPASS」を識別し、モバイル端末(100i)に送信する。
モバイル端末(100i)は、ネットワークを介してサーバ(200)と通信を行い、送信されたパスコードリクエスト用のコマンド「sndCmnd:REQ_INPUTPASS」を認識し、該モバイル端末(100i)のディスプレイ(102)に「パスコード入力」を促す画面を表示する。モバイル端末(100i)は、ユーザが入力したパスコード、例えば「9111」をサーバ(200)に送信する。
サーバ(200)は、モバイル端末(100i)から受信したパスコード「9111」を判定データベースで検索し、文字情報「build_new_Certifier」とパスコード「9111」が判定データベースに登録(記録)されていることを確認する。サーバ(200)は、正式な手続きであることを確認したうえで、レコードにひもづけて記憶されていたプログラム部品(部品γ)の識別データ(例えば、「buhin-γ」)を取得する。このときサーバ(200)が、上記付加情報やユーザ入力情報等のデータをもちいて判定データベースを繰り返し検索し、ひもづけられたプログラム部品をさらに詳細に特定する形態としても良い。
続いてサーバ(200)は、判定データベースから取得したプログラム部品の識別データ、「buhin-γ」をキー情報として、プログラム部品データベース(206)を検索し、識別データにひもづけて記録されたプログラム部品「部品γ」を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品γ」をモバイル端末(100i)に送信する。このとき、サーバ(200)からモバイル端末(100i)に直接プログラム部品を送信する形態としても、サーバ(200)からモバイル端末(100i)に該プログラム部品「部品γ」に関する情報を送信し、モバイル端末(100i)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品γ」をダウンロードする形態としても良い。
モバイル端末(100i)は、サーバ(200)から受信したプログラム部品「部品γ」を用いて、モバイル端末(100i)上で動作する会員認証アプリ(アプリγ)を生成し起動する。アプリγは、起動時にモバイル端末の固有のIDを取得する。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリγは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。
ユーザがパスコード情報、例えば文字列「0111」を入力すると、アプリγはそれを記憶するとともに、サーバ(200)に通信し、サーバ(200)は、取得した固有IDとともに、判定データベースに登録する図26。このとき、アプリのユーザ認証用のパスコードとして、ユーザが入力した文字列「0111」を正式なパスコードとして固有IDとひもづけて記録する。
モバイル端末(100i)は、サーバ(200)から受信したプログラム部品「部品γ」を用いて、モバイル端末(100i)上で動作する会員認証アプリ(アプリγ)を生成し起動する。アプリγは、起動時に該固有IDを取得し、アプリγの初期起動時に記録された情報と一致するか検証する。一致した場合は起動するが、一致しない場合は会員認証アプリγは正常に起動しない。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリγは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。入力したデータがあらかじめアプリγに記憶されたパスコードと一致した場合は、アプリγは会員認証アプリとして動作し、入力したデータがあらかじめ記憶されたパスコードと一致しない場合には、アプリγは動作しない。
正常起動したアプリγが会員証認証アプリとして動作する際には、モバイル端末(100i)のカメラ(106i)を用い、別のモバイル端末(100i)上で会員証アプリ(アプリβ)が生成したQRコード(登録商標)(コード#2)を読取る。QRコード(登録商標)(コード#2)の画像情報を取得した該モバイル端末(100i)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コード#2)に記録された会員証ID、固有ID、トランザクションコードを取得する。QRコード(登録商標)に記録されるデータの秘匿性を維持するため、固有IDやパスコード等のデータを暗号化するか、特定のアルゴリズムに従って翻訳して表記する形態としても良い。該モバイル端末(100i)は、ネットワークを介して取得したデータをサーバ(200)に送信する。
サーバ(200)は、モバイル端末(100i)から受信した会員証ID、固有ID、トランザクションコードをもって判定データベースを検索し、これらの情報がひもづけて記録されていることを確認し、正式な会員認証が完了したことを確認する認証完了表示用のコマンド(例:「sndCmnd:SHOW_ID-CONFIRMED」)をモバイル端末(100i)に送信する。
モバイル端末(100i)は、ネットワークを介してサーバ(200)と通信を行い、送信された認証完了表示用のコマンド「sndCmnd:SHOW_ID-CONFIRMED」を認識し、該モバイル端末(100i)のディスプレイ(102)に「会員証の正式認証完了」を示す画面を表示する。
次に、本発明のシステムにおいてポイントカードとして機能するプログラムを生成する場合の具体的な実施例について説明する。
ポイントカードプログラムの生成を行う代表的な方法について、
(1)本人認証のための認証データの入力、登録を行う認証プログラムを生成する方法、
(2)認証プログラムを使ってモバイル端末にポイントカードプログラムを生成する方法、及び
(3)ポイントカードを認証し等級やポイントを付与するポイント管理プログラムを生成する方法、
について説明する。
本発明の具体的適用においてはその他の方法を適用してもかまわない。
最初に(1)本人認証のための認証プログラムを生成する方法について説明する。
本人認証のための基礎データを収集、登録するプログラムを生成するため、ここでは、本人認証のための基礎データとして、
(a)各モバイル端末に固有のID番号(モバイル端末のハードウェアを一意に特定するID番号か、モバイル端末に搭載されるOS等の基本ソフトウェアを一意に特定するID番号か、もしくはその組み合わせ)
(b)ユーザ本人が入力するパスコード(文字データのみならず、ゼスチャ等によるデータセットであってもかまわない)
を使用する事例について説明する。本発明の具体的適用においては、上記(a)(b)以外のデータを組み合わせて認証する形態としても良い。「ユーザ本人のプロファイル情報」や「使用言語」や「位置情報」「IPアドレス」や「過去の利用履歴」といった付加情報をあわせて認証する形態としても良い。
まず本人認証プログラムの生成と認証のプロセスとして、上記と同様の方法により、本人認証プロセスを実行する。
プログラムαは、起動時に各モバイル端末に固有のIDを取得し、ユーザにパスコードの入力を促す。ユーザがパスコード情報、例えば文字列「0909」を入力すると、プログラムαはそれを記憶するとともに、サーバに通信し、取得した固有IDとともに、判定データベースに登録する。このとき、パスコードや固有IDに対応するプログラム部品として、ポイントカードアプリケーションソフトウェア用のプログラム部品(部品δ)をひもづけて記録する。
次に、(2)認証プログラムを使ってモバイル端末にポイントカードアプリケーションソフトウェアを生成する方法、について説明する。
まず上記と同様の方法により、会員登録のプロセスを実行する。サーバ(200)は、プログラム部品データ(部品α)の識別データ(例:「buhin-α」)を取得し、モバイル端末(100h)に該プログラム部品「部品α」に関する情報を送信する。
モバイル端末(100h)は、サーバ(200)から該プログラム部品「部品α」に関する情報を受信した場合、「部品α」に基づく本人認証のための認証データ収集アプリ(アプリα)をモバイル端末(100h)上に生成済みである場合には、アプリαを起動し、アプリαは、サーバ(200)に対し、「部品α」を送信せず、ポイントカードアプリ用のプログラム部品(部品δ)を送信するよう要求する。このとき、該モバイル端末(100h)からサーバ(200)に対し、該モバイル端末(100h)の固有IDをあわせて送信する形態としても良い。
サーバ(200)は、モバイル端末(100h)から、ポイントカードアプリ用のプログラム部品(部品δ)を一意に識別する文字情報(例えば、「buhin-δ」)を受信すると、文字情報を使ってプログラム部品データベース(206)を検索し、ポイントカードアプリ用のプログラム部品(部品δ)を取得する。サーバ(200)は、プログラム部品データベース(206)から取得した該プログラム部品「部品δ」をモバイル端末(100h)に送信する。このとき、サーバ(200)からモバイル端末(100h)に直接プログラム部品を送信する形態としても、サーバ(200)からモバイル端末(100h)に該プログラム部品「部品δ」に関する情報を送信し、モバイル端末(100h)からサーバ(200)にリクエストして、サーバ(200)上のプログラム部品「部品δ」をダウンロードする形態としても良い。
モバイル端末(100h)は、サーバ(200)から受信したプログラム部品「部品δ」を用いて、モバイル端末(100h)上で動作するポイントカードアプリ(アプリδ)を生成し起動する。アプリδは、起動時に該固有IDを取得し、アプリδに記録された情報と一致するか検証する。一致した場合は起動するが、一致しない場合にはポイントカードアプリδは、正常に起動しない。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリδは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。入力したデータがあらかじめアプリδに記憶されたパスコードと一致した場合は、アプリδはポイントカードアプリとして動作し、入力したデータがあらかじめ記憶されたパスコードと一致しない場合には、アプリδはポイントカードアプリとして動作しない。
正常起動したアプリδがポイントカードアプリとして動作する際には、モバイル端末(100h)のディスプレイ(102)上に専用のQRコード(登録商標)(コード#4)を生成し表示する(図27参照)。該QRコード(登録商標)には、ポイントカードIDのほか、アプリδが起動時に取得した、もしくはアプリδがあらかじめ保持していた該固有IDやパスコードが記録されるほか、該QRコード(登録商標)の生成時にアプリδがランダムに生成した「トランザクションコード」があわせて記録される。このとき、QRコード(登録商標)に記録されるデータの秘匿性を維持するため、固有IDやパスコード等のデータを暗号化するか、特定のアルゴリズムに従って翻訳して表記する形態としても良い。
アプリδは、ポイントカードとなるQRコード(登録商標)を生成する毎に、毎回異なる「トランザクションコード」、(例えば今回は「4567」で次回は「9876」)を生成し、サーバ(200)と通信してトランザクションコード」を(ユーザの固有IDやパスコードとあわせて)判定データベースに記録する(図28及び図29参照)。ポイントカードQRコード(登録商標)を生成する毎に該QRコード(登録商標)に含まれるデータの中身(特にトランザクションコード)が異なるため、過去に生成されたポイントカードQRコード(登録商標)の画像を複製して使用しても(最新のポイントカードとトランザクションコードが一致しないので)認証されない。なお、このとき、「トランザクションコード」の有効期間(有効期限時刻、例えば2011年7月1日0時20分など)についてあわせて設定する形態としても良い。
アプリδは、動作時にトランザクションコードの登録とあわせて、ポイント残高の登録と確認を行う。モバイル端末(100h)にインストールされたアプリδは、ネットワークを介してサーバ(200)と通信し、該アプリδに記憶されたポイントカードID、固有ID、パスコードをサーバ(200)に送信し、あわせて、ポイント残高の確認を行う。
サーバ(200)は、モバイル端末(100h)から受信したポイントカードID、固有ID、パスコードを判定データベースで検索し、各データがひもづけて判定データベース(205)に登録されていることを確認する。サーバ(200)は、正式な手続きであることを確認したうえで、レコードにひもづけて記憶されているポイント残高データ(例えば、「120ポイント」)を取得し、ネットワークを介して該モバイル端末(100h)に送信する。このときサーバ(200)が、上記付加情報やユーザ入力情報等のデータをもちいて判定データベース(205)を繰り返し検索し、ひもづけられたプログラム部品をさらに詳細に特定する形態としても良い。
モバイル端末(100h)にインストールされたポイントカードアプリ(アプリδ)は、サーバ(200)から送信されたポイント残高「120ポイント」を認識し、該モバイル端末(100h)のディスプレイ(102)にポイント残高画面を表示する(図30参照)。
次に(3)ポイントカードを認証し等級やポイントを付与するポイント管理アプリを生成する方法について説明する。
まず上記と同様の方法により、ポイントカード管理アプリの初期設定を行う。モバイル端末(100j)は、サーバ(200)から受信したプログラム部品「部品ε」を用いて、モバイル端末(100j)上で動作するポイントカード管理アプリ(アプリε)を生成し起動する。
モバイル端末(100j)は、サーバ(200)から受信したプログラム部品「部品ε」を用いて、モバイル端末(100j)上で動作するポイントカード管理アプリ(アプリε)を生成し起動する。アプリεは、起動時にモバイル端末の固有のIDを取得する。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリεは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。
ユーザがパスコード情報、例えば文字列「0222」を入力すると、アプリεはそれを記憶するとともに、サーバ(200)に通信し、取得した固有IDとともに、判定データベース(205)に登録する(図31参照)。このとき、プログラムのユーザ認証用のパスコードとして、ユーザが入力した文字列「0222」を正式なパスコードとして固有IDとひもづけて記録する。
モバイル端末(100j)は、サーバ(200)から受信したプログラム部品「部品ε」を用いて、モバイル端末(100j)上で動作するポイントカード管理アプリ(アプリε)を生成し起動する。アプリεは、起動時に該固有IDを取得し、アプリεの初期起動時に記録された情報と一致するか検証する。一致した場合は起動するが、一致しない場合にはポイントカード管理アプリεは、正常に起動しない。本発明の具体的適用においては、固有ID以外のデータを取得する形態としても良い。アプリεは、起動後、ユーザに対し、ユーザ本人に本人を特定するためのパスコード(文字データのみならず、ゼスチャ等によるデータセットでもかまわない)の入力を促す。入力したデータがあらかじめアプリεに記憶されたパスコードと一致した場合は、アプリεはポイントカード管理アプリとして動作し、入力したデータがあらかじめ記憶されたパスコードと一致しない場合には、アプリεは動作しない。
正常起動したアプリεがポイントカード管理アプリとして動作する際には、モバイル端末(100j)のカメラ(106j)を用い、別のモバイル端末(100h)上でポイントカードアプリ(アプリδ)が生成したQRコード(登録商標)(コード#4)を読取る。QRコード(登録商標)(コード#4)の画像情報を取得した該モバイル端末(100j)は、デコーダ(107)を起動し、デコード結果として、該QRコード(登録商標)(コード#4)に記録されたポイントカードID、固有ID、トランザクションコードを取得する。QRコード(登録商標)に記録されるデータの秘匿性を維持するため、固有IDやパスコード等のデータを暗号化するか、特定のアルゴリズムに従って翻訳して表記する形態としても良い。該モバイル端末(100j)は、ネットワークを介して取得したデータをサーバ(200)に送信する。
サーバ(200)は、モバイル端末(100j)から受信したポイントカードID、固有ID、トランザクションコードに基づいて判定データベース(205)を検索し、これらの情報がひもづけて記録されていることを確認し、正式なポイントカード認証が完了したことを確認する認証完了表示用のコマンド(例:「sndCmnd:SHOW_ID-CONFIRMED」)をモバイル端末(100j)に送信する。
モバイル端末は、ネットワークを介してサーバ(200)と通信を行い、送信された認証完了表示用のコマンド「sndCmnd:SHOW_ID-CONFIRMED」を認識し、該モバイル端末(100j)のディスプレイ(102)上に「ポイントカードの正式認証完了」を示す画面を表示する。
管理ユーザがモバイル端末(100j)にインストールされたポイントカード管理アプリ(アプリε)を使い、対象となるポイントカードを特定して、付与するポイント(追加ポイント)、もしくは消費するポイント(消費ポイント)を入力すると、ポイントカード管理アプリ(アプリε)は、対象となるポイントカードIDとともに、入力された追加ポイント、もしくは消費ポイントを判定データベース(205)に記録する。サーバ(200)は、追加ポイント、消費ポイントが記録されると、直前のポイント残高から加算/減算してポイント残高データを更新する。
次に、サーバ(200)が解析装置(204)を用いて、受信した文字情報と付加情報をアプリ一覧データベース(211)と突き合わせ、生成すべきアプリを特定するに際しての、付加情報の取り扱いについて、説明する。
サーバ(200)が、生成すべきアプリを特定するに際し、受信した文字情報から複数の候補が見つかる場合や、完全一致する候補が見つからないが複数の不完全一致する候補が見つかる場合、付加情報を用いることで生成すべきアプリを特定することが可能になる場合がある。サーバ(200)には、付加情報条件データベース(213)が備えられており、各アプリにおいて特に考慮すべき付加情報がある場合には、各アプリごとの付加情報の該当条件が定められている。解析装置(204)は、アプリ一覧データベース(211)だけでなく付加情報条件データベース(213)とも突き合わせを行うことで、生成すべきアプリをひとつに絞りこむことができる。
図32は、付加情報条件データベース(213)の内容を示す一例である。ここでは、付加情報として、年齢、性別(f:男性/m:女性)、QRコード(登録商標)を撮影した時点のモバイル端末(100)の位置情報、QRコード(登録商標)を撮影した年月日、QRコード(登録商標)を撮影した時刻、モバイル端末(100)の言語設定(日本語/英語/韓国語等)、を使用するものとする。それぞれの付加情報の項目中に記載されている条件は、条件にあてはまる場合にアプリを生成すべきことを示すものである。書店Cは位置情報が「さいたま市内」である場合に、アプリを生成すべきことを示す。同様に飲食店Fは、位置情報が「港区内」又は「渋谷区内」であり、かつ性別が「f(=女性)」である場合に、アプリを生成すべきことを示す。
例えば、図32中のカーディーラI及びカーディーラJの店名が同じ又は非常によく似ているとする(営業地域が相違したり業種が異なる場合、店名が全く同じ又は非常に似ているものになることは、実際に多く見られることである)。この場合、QRコード(登録商標)を撮影及びデコードして得られた文字情報からは、カーディーラI及びカーディーラJのいずれのアプリを生成すべきかが定かにならない。また、QRコード(登録商標)を撮影した場所は神奈川県横浜市都筑区であったとする(この場合、QRコード(登録商標)を撮影した時点のモバイル端末(100)の位置情報は、神奈川県横浜市都筑区を示すものとなる)。解析装置(204)は、付加情報条件データベース(213)と付加情報を突き合わせる。そうすると、カーディーラIは横浜市内、カーディーラJは世田谷区内、というそれぞれに優先すべき付加項目があるところQRコード(登録商標)撮影時のモバイル端末(100)の位置情報は神奈川県横浜市都筑区であることから、生成すべきアプリはカーディーラIのものであることが判明する。
服飾店Lのように、特段の付加情報の条件を定めないアプリもあり得る。このように特段の付加情報の条件を定めない場合、条件を定めているアプリが優先して特定され生成されることとなる(もちろん、条件に該当する場合)。例えば、図32中の服飾店Lと服飾店Pの店名が似ておりQRコード(登録商標)から得られた文字情報からは服飾店Lのアプリを生成すべきか服飾店Pのアプリを生成すべきかが判定できないとき、付加情報である性別が「m(=男性)」であった場合は、服飾店Pのアプリ生成すべきことが判明する。もちろん、付加情報が「f(=女性)」であった場合は、これらの条件からは服飾店Lのアプリを生成すべきか服飾店Pのアプリを生成すべきかは判定できないこととなる。このような場合、該当する(生成すべき)アプリは無い、とする構成をとる実施例もあり得るし、アプリIDの若いアプリ(より早い時期にアプリ一覧データベース(211)に登録されたものを優先して特定する、といった構成をとる実施例もあり得る。
飲食店Fと飲食店Gのように、多くの条件が重なっている例もあり得る。そのような場合、より多くの項目の付加情報の条件が一致するほうを優先する、という構成もあり得る。例えばあるQRコード(登録商標)を撮影及びデコードして得られた文字情報から生成すべきアプリを判定するに際し、文字情報だけでは飲食店Fと飲食店Gのどちらのアプリを生成すべきか判明しない場合があったとする。そしてQRコード(登録商標)を撮影した場所は東京都渋谷区であり、また性別に関する付加情報は「f(=女性)」であったとする。この場合、飲食店F及び飲食店Gのいずれにおいても、付加情報の項目「性別」「位置情報」ともに該当することとなり、これらの付加情報だけでは、飲食店F及び飲食店Gのいずれのアプリを生成すべきかを判定することができない。しかし、ここでさらに付加情報「年齢」が得られており、付加情報「年齢」の内容が『38』であったとすると、飲食店Fは2つの項目において該当、飲食店Gは3つの項目において該当することとなり、結果、飲食店Gのアプリを生成すべきことが判明する。
上記の例は、該当する項目の数で単純に優劣を判定したものであるが、かならずしもそのように構成する必要はなく、例えば、各項目の重要度に順位を設け、より順位の高い項目が該当するものから優先するということでもよい。また、各項目の重要度に差異を設けた上で判定してもよい。このような構成例としては、各項目に該当した場合に点数を加算するような方式であれば、「年齢」が該当する場合は2点、「性別」が該当する場合は1点、「位置情報」が該当する場合は3点、「年月日」が該当する場合は1点、該当しない項目又は条件設定がない項目については0点、というようにパラメータを設定し、該否判定によって得られた得点の合計値が高いものを優先する、といったものが考えられる。
以上は、QRコード(登録商標)にエンコードされている文字情報及び付加情報をもとに解析装置(204)が生成すべきアプリを判定するプロセスを説明したものであるが、請求項5に記載されているようなコントロールコードがあらかじめQRコード(登録商標)内に埋め込まれている場合は、判定プロセスはもっと単純なものになる。
コントロールコードとは、アプリを一意に特定するため、適宜のルールで記述された文字列であり、図33に記載したような形でQRコード(登録商標)中にエンコードされている。このようなコントロールコードが埋め込まれたQRコード(登録商標)を撮影及びデコードした場合、得られる文字情報にはコントロールコードが確実に含まれることになる。このため、文字情報を受信したサーバ(200)の解析装置(204)は、コントロールコードをキーとしてアプリ一覧データベースを検索することにより、生成すべきアプリを容易かつ確実に特定することができる。
図34は、該当無情報保管データベース(212)の一例を示したものである。アプリ一覧データベース(211)から該当するアプリが見つからない場合、サーバ(200)は、文字情報及び付加情報を該当無情報保管データベース(212)に文字情報を送ってよこしたモバイル端末(100d)のIDとともに記録し、モバイル端末(100d)には、生成すべきアプリがない旨の通知を送信する。
生成すべきアプリがない旨の通知を受信したモバイル端末(100d)は、その旨を親アプリ(300)上でユーザに表示し、アプリ生成プロセスを終了する。
サーバ(200)は、生成すべきアプリがない旨の通知をモバイル端末(100d)に送信するともに、該当するアプリが無かった文字情報及び付加情報をキー情報にもつ新たなレコードをアプリ一覧データベース(211)に追加する。追加されたレコードはその内容(情報)に不足があるため、当然そのままではアプリ生成の情報として完全なものではありえない。このプロセスで追加されるのは、レコードという枠だけであり、追加された時点では、アプリ生成可否に関する項目は「否」)となっている(図34参照)。
その後、サーバ(200)管理者等の手によりアプリ一覧データベース(211)における新レコードに情報が追加されることがあり得る。例えば、ある飲食店Aに関するQRコード(登録商標)を撮影してアプリ生成を試みたがアプリ一覧データベース(211)に該当するものがなかった場合、飲食店Aに関するQRコード(登録商標)から得られた文字情報に関する情報を持つ新レコード(アプリ生成可否に関する項目は「否」)が登録される。その後、飲食店Aとサービス実施者との間で飲食店Aに関するアプリの種類等が決定された場合等には、(飲食店Aに関する)新レコードの各項目に情報が追加され、アプリ生成可否に関する項目は「否」から「可」に変化する。この時点でサーバ(200)側においては飲食店Aに関するアプリ生成の準備が整う。
別のモバイル端末(100e)によって飲食店Aに関するQRコード(登録商標)が撮影され、そこから得られた文字情報がサーバ(200)に送信された時点で上記のとおり飲食店Aに関するアプリ生成の準備が整っていれば、文字情報の解析の結果、アプリ一覧データベース(211)から飲食店Aについてのアプリが見つかり、アプリ生成のフローが上記のとおりに進む。
同様に、以前に飲食店Aに関するアプリの生成を試みた(そしてその際は生成することができなかった)モバイル端末(100d)がその後再び同じQRコード(登録商標)を撮影する場合、前回と同様に文字情報がサーバ(200)に送信され、サーバ(200)は受信した文字情報を解析する。解析の結果、今回は該当するアプリが発見される(アプリ一覧データベース(211)上に飲食店Aに関するアプリについての情報が存在する)ため、通常どおりにアプリ生成のフローが進み、最終的にモバイル端末(100d)上に飲食店Aに関するアプリが生成されそのアイコンが表示される。
上記実施例は、以前に飲食店Aについてのアプリ生成を試みたモバイル端末(100d)がたまたま同じQRコード(登録商標)を再び撮影してアプリ生成を試みた場合を例に説明したものであるが、さらに、一度生成できなかったアプリについて、後日環境が整った際に端末側で主体的に操作を行わなくともアプリの生成が追補的に行われるような構成をとることも可能である。次項以下ではそのような構成をとる一例を記載する。
あるモバイル端末(100d)がある飲食店Cに関して以前に一度アプリ生成を試みて果たせなかった場合、該当無情報保管データベース(212)には飲食店Cに関する文字情報(文字情報C)及びこれに関する付加情報がモバイル端末(100d)のIDとともに記録されている。また、アプリ一覧データベース(211)には文字情報Cに関する情報を持つ新レコード(アプリ生成可否に関する項目は「否」)が登録されている。その後、飲食店Cに関する情報の追加によりレコードにつきアプリ生成可否に関する項目が「否」から「可」に変化している。
サーバ(200)は、定期的に、該当無情報保管データベース(212)とアプリ一覧データベース(211)の内容を突き合わせる。アプリ生成可否に関する項目が「否」から「可」に変化した以降に突き合わせが行われた場合、文字情報C及びこれに関する付加情報から飲食店Cに関するアプリが生成可能であることが判明する。そこで、サーバ(200)は、アプリ一覧データベース(211)から飲食店Cのアプリの属性及び構成情報とアプリを生成するために必要なプログラム部品に関する情報を取得し、プログラム部品をプログラム部品データベース(206)からコピーし、それらがモバイル端末(100d)に関するものであることを示すモバイル端末(100d)のIDとともに、あわせて記憶手段(202)に記憶しておく。
その後モバイル端末(100d)は、別のQRコード(登録商標)(飲食店Dに関するもの)を撮影し、飲食店Dのアプリの生成を試みたとする。ここで、モバイル端末(100d)は、QRコード(登録商標)から取得された文字情報(飲食店Dに関するもの=文字情報D)をサーバ(200)に送信し、上記で説明したとおり、アプリ生成フローが進んでゆく。文字情報Dの解析の結果該当するアプリ(アプリD)がアプリ一覧データベース(211)上に存在した場合、アプリDの属性及び構成情報とアプリDを生成するために必要なプログラム部品がサーバ(200)からモバイル端末(100d)に送信されるが、その際に、サーバ(200)は、上記記憶手段(202)に記憶していたアプリCの属性及び構成情報とアプリCを生成するために必要なプログラム部品もあわせてモバイル端末(100d)に送信する。そしてモバイル端末(100d)において親アプリ(300)は、アプリDを生成しアプリDのアイコンを画面上に表示するとともに、アプリCも生成しアプリCのアイコンも画面上に表示する。
上記アプリCの属性及び構成情報とアプリCを生成するために必要なプログラム部品をモバイル端末(100d)に送信したサーバ(200)は、さらに、該当無情報保管データベース(212)にアクセスし、モバイル端末(100d)のIDとともに記録されている文字情報Cのレコードを抹消する。
このようにして、ある時点では該当するアプリがアプリ一覧データベース(211)上に存在しなかったため生成することができなかったアプリにつき、後日アプリ生成に必要な情報が揃った後に追補的にアプリが生成される。なお、上記は一例であり、該当無情報保管データベース(212)とアプリ一覧データベース(211)の内容突き合わせは定期的に行われるだけでなく、新規文字情報がモバイル端末から送信された場合には必ず突き合わせを行うように構成してもよいし、新規プログラム部品を送信する場合にはそれに先立ち必ず突き合わせを行うように構成してもよい。また、追補生成を行うタイミングは、新規アプリ生成時に限られるものではなく、例えば、該当無情報保管データベース(212)とアプリ一覧データベース(211)の内容を突き合わせの結果追補生成可能なアプリが見つかった場合には、即サーバ(200)からモバイル端末に追補生成するアプリの属性及び構成情報とアプリを生成するために必要なプログラム部品を送信するように構成してもよいし、追補生成可能なアプリが見つかった場合にはサーバ(200)からモバイル端末にその旨を通知し、通知に対するモバイル端末側からの返信(自動又はユーザの選択により追補生成するかどうか等を決定し返信するようにすることが考えられる)に従い適宜のタイミングで追補生成するアプリの属性及び構成情報とアプリを生成するために必要なプログラム部品を送信するように構成してもよい。さらに、通信手段さえ確保されれば該当無情報保管データベース(212)をサーバ(200)上ではなく第三の記憶手段上に置くことも可能であるし、モバイル端末上に置くことも可能である。モバイル端末の記憶手段(104)上に置く場合、該当無情報保管データベース(212)はモバイル端末に関する情報のみを持つものに縮小され、その内容は、定期的にあるいはモバイル端末がサーバ(200)と交信する適宜の機会にモバイル端末からサーバ(200)に送信され、アプリ一覧データベース(211)と突き合わせが行われることになろう。
各アプリは、不具合の修正や機能の追加或いは変更等のため、随時更新され、バージョンがアップすることがある。バージョンアップにより生成すべきアプリの内容が更新されることにともない、判定データベース(205)、プログラム部品データベース(206)及びアプリ一覧データベース(211)に記録されている内容も、それぞれ随時更新される。アプリ一覧データベース(211)には、図7に示すとおり、アプリのバージョンに関する情報が記録されており、更新にともないバージョンに関する情報も更新される(バージョンナンバーがアップする)。
モバイル端末(100)にはバージョン情報記録データベース(113)が備えられている。図35はバージョン情報記録データベース(113)の構成を示す一例である。バージョン情報記録データベース(113)に記録されているのは、現在モバイル端末(100)に生成され存在している各アプリのバージョン情報である。
モバイル端末(100)は、新たに撮影したQRコード(登録商標)から取得した文字情報をサーバ(200)に送信する機会に、文字情報及びこれに関する付加情報だけでなく、モバイル端末(100)のバージョン情報記録データベース(113)に記録されている各アプリのバージョン情報をあわせて送信する。
バージョン情報記録データベース(113)に記録されている内容を受信したサーバ(200)は、受信したデータをアプリ一覧データベース(211)の内容と照合し、バージョン情報に差異の生じているアプリが存在しないどうかを判定する。
判定の結果、バージョン情報に差異が生じているアプリが存在する場合、サーバ(200)は、アプリ一覧データベース(211)から差異があったアプリ(モバイル端末(100)に生成済のものよりも新しいバージョンの同アプリ)の属性及び構成に関する情報とアプリを構成するプログラム部品に関する情報を取得し、属性及び構成に関する情報とアプリを構成するプログラム部品とをモバイル端末(100)に送信する。
該属性及び構成に関する情報と該アプリを構成するプログラム部品とを受信したモバイル端末(100)は、アプリ(モバイル端末に生成済のものよりも新しいバージョンの同アプリ)をモバイル端末(100)上に生成し、旧バージョンのアプリ(モバイル端末上に生成済にあったもの)は削除する。このようにして、旧バージョンのアプリを新バージョンのアプリで置き換えることが完了した場合、モバイル端末(100)は、さらに、バージョン情報記録データベース(113)上のアプリに関するバージョン情報を、ただいま生成した新バージョンのものに書き換える。
以上に記載の例では、バージョン情報記録データベース(113)の内容をモバイル端末(100)からサーバ(200)に送信するのは、新たに撮影したQRコード(登録商標)から取得した文字情報をサーバ(200)に送信する機会に合わせて行うこととしているが、必ずしもこれに限られるものではなく、親アプリ(300)自身の起動又終了に際し必ずその時点のバージョン情報記録データベース(113)の内容をサーバ(200)に送信するようにしてもよく、又は、毎日1回あるいは毎週1回等定期的にサーバ(200)に送信するように構成する方法、サーバ(200)が適宜の頻度でモバイル端末(100)側にバージョン情報記録データベース(113)の内容につき問い合わせを行い問い合わせの都度モバイル端末(100)がバージョン情報記録データベース(113)の内容をサーバ(200)に送信するように構成してもよい。
次に、子アプリ更新の過程の実施例を説明する。
モバイル端末(100)には、生成した各子アプリのID及び子アプリの起動或いは使用に係る履歴を記憶する使用履歴記録データベース(114)が備わっている。
図36は、使用履歴記録データベース(114)の一例を示したものである。使用履歴記録データベース(114)に記録される内容は、子アプリの累計起動回数、累計起動時間及びイベント引数等々が考えられるが、ここでは、仮に、子アプリの累計起動回数、累計起動時間及びイベント引数の3種の情報であるとする(図36参照)。モバイル端末(100)においてユーザがディスプレイ(102)上の子アプリのアイコンをタッチして子アプリを起動或いは使用した場合、モバイル端末(100)は、使用履歴記録データベース(114)にアクセスし、子アプリの累計起動回数の項目に記録されている数値(回数)に1を加える。同時に、モバイル端末(100)は子アプリの起動に際し起動した時刻を一時的に記録する。ユーザが子アプリの使用を終了するとき、モバイル端末(100)は、子アプリの終了処理に際して終了時刻を記録し、起動時刻を参照することにより子アプリの使用時間を算出する。モバイル端末(100)は、子アプリの終了処理に引き続き算出された使用時間を使用履歴記録データベース(114)に登録する(すでに過去の累計使用時間が登録されている場合はこれに積算して登録する)。
このようにして蓄積された使用履歴情報は、別途他の子アプリ生成のためモバイル端末(100)がサーバ(200)に文字情報を送信する際に、あわせてサーバ(200)に送信される。
サーバ(200)のアプリ一覧データベース(211)中には、各子アプリの使用履歴情報の累計起動回数、累計起動時間及びイベント引数に関する設定条件及び設定条件を満たした場合に新たに生成すべき子アプリのIDが記録されている。
使用履歴情報を受信したサーバ(200)は、受信した使用履歴情報に含まれている各子アプリの累計起動回数、累計起動時間及びイベント引数がアプリ一覧データベース(211)中に記憶されている該当するアプリの使用履歴情報累計起動回数、累計起動時間及びイベント引数に関する設定条件を満たすものであるかどうかをそれぞれ検証する。条件を満たすものがある場合、サーバ(200)は、条件が満たされる場合に生成すべき子アプリのIDを特定し、条件を満たした子アプリ(以下「旧子アプリ」という)のID、条件が満たされる場合に生成すべき子アプリ(以下「新子アプリ」という)のID及び旧子アプリが新子アプリに更新される旨の情報を、モバイル端末(100)に送信し、モバイル端末(100)はこれを受信する。
さらに、サーバ(200)は、新子アプリのIDから新たに生成すべき子アプリの属性及び構成とアプリを構成するプログラム部品とを決定し、新子アプリの属性及び構成に関する情報と新子アプリを構成するプログラム部品とをモバイル端末(100)に送信する。
モバイル端末(100)は、サーバ(200)から新子アプリの属性及び構成に関する情報と新子アプリを構成するプログラム部品を受信し、受信した新子アプリの属性及び構成に関する情報と新子アプリを構成するプログラム部品によって、演算手段(103)を使って、モバイル端末(100)上に新子アプリを生成する。
モバイル端末(100)では、受信した2種のアプリID(旧子アプリのID及び新子アプリのID)を参照し、新子アプリの生成完了を確認した後に(請求項16に記載のバージョン記録データベース(113)及び請求項18に記載に使用履歴記録データベース(114)に、それぞれ新子アプリに関する項目が記録された後に)、旧子アプリをモバイル端末(100)上から削除するとともに、ディスプレイ(102)上の旧子アプリのアイコン表示を終了する。
以上に記載のアプリ更新に際しては、使用履歴情報をモバイル端末(100)からサーバ(200)に送信するのはアプリ生成の際にモバイル端末(100)がサーバ(200)に文字情報を送信する機会に合わせて行うことが通信効率上望ましいが、必ずしもこれに限られるものではなく、使用履歴記録データベース(114)が更新される度にサーバ(200)に送信しても構わないし、親アプリ(300)自身の起動又終了に際し必ずその時点の使用履歴情報をサーバ(200)に送信するようにしてもよく、又は、毎日1回あるいは毎週1回等定期的にサーバ(200)に送信するように構成する方法、サーバ(200)が適宜の頻度でモバイル端末(100)側に使用履歴情報を問い合わせを行い問い合わせの都度モバイル端末(100)が使用履歴情報をサーバ(200)に送信するように構成してもよい。
以上は、QRコード(登録商標)等の二次元コードから文字情報を取得する場合を例にとって説明したものであるが、請求項第6項に記載のとおり、一次元コードや二次元以上の多次元コードや各種の動画又は静止画から取得するように構成してもよい。そのような構成の例を以下に説明する。
モバイル端末(100)のカメラ(106)を使って、任意の画像を撮影する。画像は動画であっても静止画であってもよい。モバイル端末(100)に備えられている映像解析手段(108)は、撮影した画像を解析し、画像に示されている内容にふさわしい文字情報を取得する。この場合、文字情報の取得は、画像中に移りこんでいる活字その他の文字を抽出することによって行われる(画像データ中の文字を光学的に解析し文字情報を抽出することは今やありふれた技術であり実装することはたやすい)。また、画像中の文字情報によらず、画像データそのものを検索データベースと照合し、同一性が高いと判断される画像データから画像とともに使用される頻度の高い文字情報を検索及び抽出することにより行ってもよいし、上記の各方法を併用することも可能である。
モバイル端末には通常動画撮影や通話のため撮像手段の一例であるカメラ(106)とともに録音手段の一例であるマイク(109)が備わっている。該マイク(109)により音声を録音し、録音された音声から言語解析によってひとつ又は複数の単語を抽出し、抽出された単語を文字情報として用いることができる。単語は、小売店の名称、屋号、商品名、ブランド名であることも考えられるし、旅行、キャンプ、ドライブといった行動に関するものである場合もあり得る。
あるモバイル端末(100f)においてアプリ生成をするに際し、他のモバイル端末(100g)にすでに親アプリ(300g)がインストールされ、親アプリ(300g)によってすでにいくつかの子アプリが生成され、他のモバイル端末(100g)の画面上に生成済の子アプリのアイコンが表示されている場合、モバイル端末(100f)はモバイル端末(100g)の画面を撮影することから文字情報を取得することができる。この場合、モバイル端末(100f)の映像解析手段(108f)は該撮影した画像中に移りこんでいる子アプリのアイコン画像をプログラム部品データベース(206)中(図8参照)に保存されているアイコン画像データと照合し、子アプリのアプリIDを文字情報として取得する。その後上記に述べたものと同様のプロセスを経て、モバイル端末(100f)上に子アプリが生成される。