以下、図面に基づいて第1の実施の形態を説明する。図1は、第1の実施の形態における情報処理システムの構成例を示す図である。図1に示される情報処理システム1において、サーバ装置10及びユーザ環境E1は、インターネット等の広域的なネットワークN1を介して通信可能とされている。但し、ネットワークN1は、イントラネット等、所定の範囲内においてアクセスが可能なネットワークであってもよい。
ユーザ環境E1は、1以上の出力機器40並びに仲介装置30a及び30b等の複数の仲介装置(以下、それぞれを区別しない場合、「仲介装置30」という。)が設置された企業等の組織におけるシステム環境である。出力機器40は、入力される画像を出力する機器である。図1には、出力機器の一例として、プロジェクタ41、ディスプレイ42及び電子黒板43等が例示されている。ユーザ環境E1において、各出力機器40は、それぞれに対応する仲介装置30に接続される。図1において、プロジェクタ41及びディスプレイ42は、仲介装置30aに接続され、電子黒板43は、仲介装置30bに接続されている。すなわち、一つの仲介装置30に対して1又は複数の出力機器40が接続可能である。なお、図1では、仲介装置30aに対して異なる種類の出力機器40(プロジェクタ41及びディスプレイ42)が接続される例が示されているが、1つの仲介装置30に対して同じ種類の出力機器40が接続されてもよい。出力機器40と仲介装置30とは、例えば、HDMI(登録商標)(High-Definition Multimedia Interface)等のように、画像を伝達可能な規格に準拠したインタフェースを介して接続される。例えば、出力機器40と仲介装置30とは、当該インタフェースに対応したケーブル(例えば、HDMI(登録商標)ケーブル等)によって接続されてもよい。又は、仲介装置30が有する当該インタフェースに対応したコネクタと、出力機器40が有する当該インタフェースに対するコネクタとが直接的に接続されてもよい。例えば、仲介装置30が出力機器40のコネクタに挿入されることで、両者が接続されてもよい。又は、仲介装置30と出力機器40の間が無線通信で接続されていてもよいし、ネットワークを介して接続されていてもよい。
出力機器40と仲介装置30とが上記のように接続されることで、仲介装置30は、出力機器40に対して出力対象の画像を送信することができる。
仲介装置30は、ユーザ環境E1内のLAN等を介してネットワークN1に接続される。仲介装置30は、ユーザ環境E1内のLAN等に無線接続してもよい。仲介装置30は、内部にWebブラウザを備え、当該Webブラウザによって、サーバ装置10から送信される画像データに関する処理の実行要求に応じた処理を実行して出力機器40等の出力機器を制御する(例えば該処理の実行結果を出力機器40に出力させる)。具体的には、本実施の形態において、仲介装置30は、当該画像データの出力(例えば投影又は表示等)を出力機器40に実行させる。すなわち、仲介装置30は、サーバ装置10から送信されるデータについての出力機器40による画像の出力(例えば投影又は表示等)を仲介する。なお、例えば、HDMI(登録商標)ドングルやスティックPC等のコンピュータが、仲介装置30として利用されてもよい。
ユーザ端末20は、ユーザ環境E1における各ユーザが携帯する情報処理端末である。例えば、スマートフォン、タブレット端末、PC、又は携帯電話等がユーザ端末20として利用されてもよい。なお、ユーザ端末20は、ユーザ環境E1内のLAN等を介さずに(例えば、移動体通信網等を介して)ネットワークN1に接続可能である。但し、ユーザ端末20は、ユーザ環境E1内のネットワークに接続可能であってもよい。
サーバ装置10は、ユーザ端末20を利用した簡易な操作で、ユーザ端末20において指定された画像データについて、出力機器40等の出力機器による出力を実現するための処理を実行する1以上のコンピュータである。なお、サーバ装置10は、ユーザ環境E1に設置されてもよい。
図2は、第1の実施の形態におけるサーバ装置10のハードウェア構成例を示す図である。図2のサーバ装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
サーバ装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってサーバ装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
図3は、第1の実施の形態におけるユーザ端末20のハードウェア構成例を示す図である。図3において、ユーザ端末20は、CPU201、ROM202、RAM203、タッチパネル204、補助記憶装置205、近距離無線通信機206、デジタルカメラ207等を有する。
ROM202及び補助記憶装置205は、ユーザ端末20にインストールされたプログラム等を記憶する。RAM203は、プログラムの起動指示があった場合に、ROM202又は補助記憶装置205からプログラムを読み出して記憶する。CPU201は、RAM203に記憶されたプログラムに従ってユーザ端末20に係る機能を実現する。
タッチパネル204は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル204は、表示装置211及び入力装置212等を含む。
表示装置211は、液晶ディスプレイ等であり、タッチパネル204の表示機能を担う。入力装置212は、表示装置211に対する接触物の接触を検出するセンサを含む電子部品である。なお、接触物とは、タッチパネル204の接触面(表面)に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。なお、タッチパネル204は必ずしも備えている必要はなく、ユーザ端末20が表示装置211と入力装置212を別々に備えていてもよい。また、表示装置211は、ユーザ端末20と外付けで接続されていてもよい。また、入力装置212は接触を検出するセンサに限られず、ハードウェアキー、キーボード、マウス等の電子部品も含まれる。
近距離無線通信機206は、近距離無線通信を行うためのハードウェアである。第1の実施の形態において、近距離無線通信機206は、NFCタグに記憶されている情報を読み取る。すなわち、第1の実施の形態において、近距離無線通信機206は、NFCリーダが好適である。デジタルカメラ207は、撮像機能を有する一般的なデジタルカメラであってユーザ端末20に電子部品として内蔵されていてもよいし、ユーザ端末20と外付けで接続されていてもよい。
図4は、第1の実施の形態における仲介装置30のハードウェア構成例を示す図である。図2の仲介装置30は、補助記憶装置301、メモリ装置302、CPU303、通信インタフェース304、及び画像インタフェース305等を有する。
仲介装置30での処理を実現するプログラムは、補助記憶装置301にインストールされる。補助記憶装置301は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置302は、プログラムの起動指示があった場合に、補助記憶装置301からプログラムを読み出して格納する。CPU303は、メモリ装置302に格納されたプログラムに従って仲介装置30に係る機能を実行する。通信インタフェース304は、ネットワークに接続するための物理的なインタフェースである。画像インタフェース305は、出力機器40への画像の送信用の物理的なインタフェースである。
図5は、第1の実施の形態の概要を説明するための図である。図5に示されるように、出力機器40には、例えばシール状のNFCタグ(以下、単に「タグシール」という。)が貼り付けられている。タグシールには、サーバ装置10にアクセスするためのURLのうち、ユーザ端末20が最初にアクセスすべきURL(以下、「初期アクセスURL」という。)を含む情報(以下、「タグ情報」という。)が記憶されている。タグ情報において、初期アクセスURLには、オプション情報として登録IDが付与されている。例えば、タグ情報は以下のような形式を有する。
https://xxx.yyy.com/?tagid=Tag01
ここで、「tagid=XXX」における「XXX」の部分(上記では「Tag01」)が登録IDに相当する。登録IDは、サーバ装置10において登録されている識別情報である。タグシールごとに異なる登録IDが割り当てられても良いし、複数のタグシールに対して同じ登録IDが割り当てられてもよい。一方、「https://xxx.yyy.com/」の部分(初期アクセスURL)は、ユーザ環境E1内において利用される各タグシールに記憶されているタグ情報について共通であってもよい。なお、登録IDは初期アクセスURLに含まれていなくともよく、初期アクセスURLとは別個に記憶されていてもよい。
ユーザが、出力機器40に貼り付けられているタグシールに例えばユーザ端末20を翳すと(S1)、ユーザ端末20の近距離無線通信機206は、タグシールに記憶されているタグ情報を読み取ることでタグ情報を取得する(S2)。続いて、ユーザ端末20は、当該取得したタグ情報に含まれている初期アクセスURLの宛先(「https://xxx.yyy.com」)であるサーバ装置10へアクセスする(S3)。この際、取得したタグ情報に含まれる登録ID等もサーバ装置10へ送信される。
サーバ装置10は、当該登録IDに関連付けて予め登録されているサービスの実行を制御する。例えば、当該サービスが、ユーザ端末20が撮像する画像データを特定の出力機器40に出力させることであれば、サーバ装置10は、ユーザ端末20が撮像した画像データをユーザ端末20から取得して、当該画像データを当該登録IDに対応付けられている仲介装置30へ送信する(S4)。なお、サーバ装置10は、例えば、画像データのアップロードを促す画面の表示データをユーザ端末20へ送信し、当該画面を介したユーザによる操作に応じてユーザ端末20が撮像した画像データをユーザ端末20から受信することで、当該画像データを取得する。
仲介装置30は、当該画像データをサーバ装置10から受信すると、当該画像データを描画する。その結果、描画結果が出力機器40へ送信される(S5)。出力機器40は、当該描画結果(すなわち、当該画像データ)を出力する。
したがって、ユーザは、ユーザ端末20の外部からタグ情報を取得するといった簡易な操作によって、上記のような出力機器に関するサービスを受けることができる。例えば上記で説明した一例では、出力機器40に配置(貼付)されたタグシールにユーザ端末20を翳す(近接させる)といった簡易な操作によって、上記のようなサービスを受けることができる。なお、上記の通り、登録IDに応じて実行されるサービスが特定される。すなわち、登録IDごとに異なるサービスを関連付けることができる。
図5において説明した処理を実現するために、ユーザ端末20、仲介装置30及びサーバ装置10は、図3に示されるような機能構成を有する。
図6は、第1の実施の形態における各装置の機能構成例を示す図である。図6において、ユーザ端末20は、情報取得部21及びブラウザ部22等を有する。これら各部は、ユーザ端末20にインストールされた1以上のプログラムが、CPU201に実行させる処理により実現される。
情報取得部21は、近距離無線通信機206を利用して、タグシールからタグ情報(登録IDを含む初期アクセスURL)を取得し、当該タグ情報を入力情報としてブラウザ部22を起動する。なお、情報取得部21は、ユーザ端末20のOS(Operating System)の一部がCPU201に実行させる処理によって実現されてもよい。
ブラウザ部22は、例えば、一般的なWebブラウザであり、HTML(HyperText Markup Language)データやスクリプト(例えば、JavaScript(登録商標))等に従った処理を実行する。ブラウザ部22は、情報取得部21から入力情報として通知されたタグ情報に含まれる初期アクセスURLに対応するサーバ装置10のアプリ判定部12に、当該タグ情報URLに含まれている登録ID等を送信する。ブラウザ部22は、また、初期アクセスURLへのアクセスに応じたアプリ判定部12からの応答であるリダイレクト要求に従って、サーバ装置10が有するアプリケーションのうち、登録IDに関連付けられているアプリケーションにアクセスする。ブラウザ部22は、当該アプリケーションから、ユーザ端末20への処理の実行要求を示すデータ(HTMLデータやスクリプト等)を取得する。
仲介装置30は、通信制御部31、ブラウザ管理部32及びブラウザ部33等を有する。これら各部は、仲介装置30にインストールされた1以上のプログラムが、CPU303に実行させる処理により実現される。
通信制御部31は、サーバ装置10の配信部11との間で双方向の通信路を接続(通信セッションを確立)し、当該通信路(通信セッション)において仲介装置30側の端点として機能する。当該通信路(通信セッション)を介した通信により、仲介装置30の状態をサーバ装置10に通知したり、仲介装置30が出力機器40に出力させるべき画像データがサーバ装置10へ入力された(本実施の形態では、ユーザ端末20からアップロードされた)ことの通知をサーバ装置10から受信することができる。
ブラウザ管理部32は、ブラウザ部33を例えばキオスクモードで起動する。キオスクモードとは、仲介装置30の用途をWebページの表示に制限するモードをいう。なお、キオスクモードはあくまで一例であって、Webページの表示が可能なモードであれば他のモードであってもよい。
ブラウザ部33は、例えば、一般的なWebブラウザであり、HTMLデータやスクリプト等に従った処理を実行する。ブラウザ部33は、起動に応じ、初期アクセスURL(すなわち、サーバ装置10のアプリ判定部12)にアクセスする。この際、初期アクセスURLに対して、ブラウザ部33の識別情報(以下、「ブラウザID」という。)がオプション情報として付与される。ブラウザ部33は、初期アクセスURLへのアクセスに応じたアプリ判定部12からの応答であるリダイレクト要求に従って、サーバ装置10が有するアプリケーションのうち、当該ブラウザIDに関連付けられているアプリケーションにアクセスする。ブラウザ部33は、当該アプリケーションから、仲介装置30への処理の実行要求を示すデータ(HTMLデータやスクリプト等)を取得する。
サーバ装置10は、配信部11、アプリ判定部12、アップロードアプリ13及び出力アプリ14等を有する。これら各部は、サーバ装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。サーバ装置10は、また、アプリ情報記憶部121、機器情報記憶部122、ユーザ情報記憶部123及び登録情報記憶部124等を利用する。これら各記憶部は、例えば、補助記憶装置102、又はサーバ装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
配信部11は、登録IDに対応付けられたサービスに関して入力となる画像データを当該画像データの入力元から受信し、当該サービスにおける当該画像データの出力先へ、当該画像データの入力を通知する。また、配信部11は、当該出力先からの要求に応じ、当該画像データを当該出力先へ送信する。本実施の形態において、当該入力元は、ユーザ端末20であり、当該出力先は、仲介装置30である。
アプリ判定部12は、初期アクセスURLに対応するアプリケーションを判定する。アプリ判定部12は、初期アクセスURLのアクセスに応じ、当該初期アクセスURLに付与されているオプション情報(登録ID又はブラウザID)に対応するアプリケーションを、登録情報記憶部124を参照して判定する。アプリ判定部12は、判定されたアプリケーションに対するURLを含むリダイレクト要求を含む応答を、初期アクセスURLへのアクセス元に送信する。本実施の形態では、画像データの入力元のユーザ端末20からのアクセスについては、アップロードアプリ13のURLが登録IDに対応するアプリケーションとして判定される。また、画像データの出力先の仲介装置30からのアクセスについては、出力アプリ14のURLがブラウザIDに対応するアプリケーションとして判定される。
アップロードアプリ13及び出力アプリ14は、本実施の形態において、サーバ装置10が有するアプリケーションの一例である。アップロードアプリ13は、画像データのアップロードをユーザ端末20に実行させるためのアプリケーションである。具体的には、アップロードアプリ13は、画像データのアップロードを実行させるためのHTMLデータ及びスクリプト等をユーザ端末20へ送信する。出力アプリ14は、ユーザ端末20からアップロードされた画像データの取得(ダウンロード)及び出力を、仲介装置30に実行させるためのアプリケーションである。具体的には、出力アプリ14は、当該取得及び出力を仲介装置30に実行させるためのHTMLデータ及びスクリプト等を仲介装置30へ送信する。
アプリ情報記憶部121には、サーバ装置10が有するアプリケーション(本実施の形態では、アップロードアプリ13及び出力アプリ14)ごとに、それぞれに関する情報(例えば、URL等)が記憶されている。
ユーザ情報記憶部123には、サーバ装置10におけるアプリケーションを利用可能なユーザの識別情報等が記憶されている。
機器情報記憶部122には、ユーザ環境E1に配置されている仲介装置30ごとに、当該仲介装置30の状態を示す情報が記憶される。
登録情報記憶部124には、登録IDごとに、画像データの入力処理を実行するアプリケーションの識別情報や、画像データの出力処理を実行するアプリケーションの識別情報や、画像データの入力先となる仲介装置30のブラウザ部33の識別情報等が記憶されている。
以下、情報処理システム1において実行される処理手順について説明する。図7は、仲介装置30の起動に応じて実行される処理手順の一例を説明するためのシーケンス図である。
ユーザによって、仲介装置30の電源がONにされると(S101)、通信制御部31は、サーバ装置10の配信部11からの要求を非同期に受信するための通信路を配信部11との間で確立する(S102)。この際、通信制御部31は、自ら(通信制御部31)の識別情報である通信IDを配信部11に通知する。配信部11は、通知された通信ID(以下、「対象通信ID」という。)に基づいて、機器情報記憶部122を更新する。
図8は、機器情報記憶部122の構成例を示す図である。図8において、機器情報記憶部122には、テナントIDに対応付けられて、通信ID、アドレス情報、状態情報、ブラウザID及びブラウザ状態等が記憶される。テナントIDは、サーバ装置10によって提供されるサービスの利用契約の締結者(テナント)の識別情報である。例えば、ユーザ環境E1が1つのテナントに相当してもよい。通信IDは、テナントIDに係るテナントに配置された各仲介装置30の通信制御部31の識別情報である。仲介装置30が1つの通信制御部31しか備えない場合には、通信IDは仲介装置30を識別する識別情報であってもよい。アドレス情報は、当該仲介装置30のローカルIPアドレスである。状態情報は、通信IDに係る通信制御部31がサーバ装置10と接続中(通信路を確立した状態)であるか否か(「非接続」)を示す情報である。ブラウザIDは、通信IDに係る通信制御部31に対応するブラウザ部33の識別情報である。本実施の形態では、当該ブラウザIDは、通信IDに係る通信制御部31と同じ仲介装置30に含まれるブラウザ部33の識別情報である。基本的に、ブラウザ部33(ブラウザID)と出力機器40とは、1対応1に対応する。例えば、通信ID「Eg001−01」が、仲介装置30aに対応し、ブラウザID「BROWSER1」は、プロジェクタ41に対応し、ブラウザID「BROWSER2」は、ディスプレイ42に対応する。また、通信ID「Eg001−02」が、仲介装置30bに対応し、ブラウザID「BROWSER3」は、電子黒板43に対応する。ブラウザ状態は、ブラウザIDに係るブラウザ部33の起動状態を示す情報である。
例えば、配信部11に通知された対象通信IDが「Eg001−01」であれば、機器情報記憶部122において当該通信IDに対応する状態情報が、図8に示されるように「接続中」に変更される。
続いて、通信制御部31は、ブラウザIDを取得するためにブラウザ管理部32を、例えば、SNMP(Simple Network Management Protocol)等を利用して探査し(S103)、発見されたブラウザ管理部32から、当該ブラウザ管理部32の管理対象であるブラウザ部33の識別情報であるブラウザIDを取得する(S104)。本実施の形態では、仲介装置30内に通信制御部31とブラウザ管理部32とを備えている例が示されているが、仲介装置30が有する通信制御部31が他の仲介装置30が有するブラウザ管理部32と同一ネットワークを介して通信することによって複数のブラウザ管理部32及びブラウザ部33をも利用可能にするために、SNMP等を利用してブラウザ管理部32の探索が行われている。そのため、ブラウザ管理部32の探査は必ずしも必須ではなく、通信制御部31がブラウザIDを取得する取得先(ブラウザ管理部32)が予め設定されていてもよい。
続いて、通信制御部31は、取得したブラウザIDに対応するブラウザ部33(本実施の形態では当該仲介装置30のブラウザ部33)が利用可能な状態になったことの通知を、当該ブラウザ部33のブラウザID(以下、「対象ブラウザID」という。)を指定して配信部11へ送信する(S105)。配信部11は、当該通知を受信すると、当該通知に指定されている対象ブラウザIDに基づいて、機器情報記憶部122(図8)を更新する。具体的には、機器情報記憶部122において、対象ブラウザIDに対応するブラウザ状態の値が「電源OFF」から「電源ON」に更新される。
続いて、通信制御部31は、対象ブラウザID及び初期アクセスURLを指定して、対象ブラウザIDに係るブラウザ部33の起動をブラウザ管理部32へ要求する(S106)。初期アクセスURLは、上記した通り、ブラウザ部33が最初にアクセスすべきURLをいい、ブラウザ管理部32に予め設定されている。
ブラウザ管理部32は、通信制御部31からの要求に応じ、対象ブラウザIDに係るブラウザ部33をキオスクモードで起動する(S107)。この際、ブラウザ管理部32は、初期アクセスURLをブラウザ部33に入力する。ブラウザ部33は、キオスクモードでの起動に応じ、入力された初期アクセスURLへHTTPリクエストを送信する(S108)。当該HTTPリクエストには、対象ブラウザIDが含まれる。
サーバ装置10のアプリ判定部12は、当該HTTPリクエストを受信すると、リダイレクト要求を含む応答(HTTPレスポンス)をブラウザ部33へ送信する(S109)。当該リダイレクト要求には、リダイレクト先として当該ブラウザIDに対応付けられているアプリケーションのURLが含まれている。また、当該リダイレクト要求には、リダイレクト先への通知情報として、通信URL及びHTTPリクエストに含まれていた対象ブラウザIDが含まれている。なお、通信URLとは、通信制御部31のURLである。
なお、アプリ判定部12は、登録情報記憶部124及びアプリ情報記憶部121を参照して、対象ブラウザIDに対応付けられているアプリケーションのURLを特定する。
図9は、登録情報記憶部124の構成例を示す図である。図9において、登録情報記憶部124には、登録ID、InアプリID、OutアプリID及びブラウザIDが対応付けられて記憶されている。
InアプリIDは、登録IDに対応するサービスにおいて、画像データの入力を制御するアプリケーションのID(以下「アプリID」という。)である。「AP_Upload」は、アップロードアプリ13のアプリIDを示す。OutアプリIDは、登録IDに対応するサービスにおいて、画像データの出力を制御するアプリケーションのアプリIDである。「AP_PhotoShow」は、出力アプリ14のアプリIDを示す。ブラウザIDは、登録IDに対応するブラウザ部33のブラウザIDである。
また、図10は、アプリ情報記憶部121の構成例を示す図である。図10において、アプリ情報記憶部121には、サーバ装置10が有するアプリケーションごとに、アプリID、アプリ種別及びURL等が記憶されている。
アプリ種別は、アプリIDに係るアプリケーションについて、画像データとの関係に基づいた種別を示す。「In」は、画像データの入力を制御するアプリケーション(上述したInアプリIDと対応する)であることを示す。「Out」は、画像データの出力を制御するアプリケーションであることを示す(上述したOutアプリIDと対応する)。URLは、アプリIDに係るアプリケーションのURLである。
したがって、アプリ判定部12は、登録情報記憶部124を参照して、対象ブラウザIDに対応付けられているOutアプリIDを特定し、アプリ情報記憶部121を参照して、当該OutアプリIDに対応付けられているURLを特定する。ここでは、対象ブラウザIDが「BROWSER1」であるとする。この場合、アプリIDが「AP_PhotoShow」であるアプリケーション(出力アプリ14)のURL(以下、「出力アプリURL」)が特定される。
また、アプリ判定部12は、機器情報記憶部122(図8)において対象ブラウザIDに対応付けられているアドレス情報に基づいて、対象通信IDに係る通信制御部31の通信URLを自動生成する。
続いて、ブラウザ部33は、当該リダイレクト要求に従い、リダイレクト先である出力アプリURL(すなわち、出力アプリ14)にHTTPリクエストを送信(リダイレクト)する(S110)。当該HTTPリクエストには、リダイレクト要求に含まれていた通信URL及びブラウザIDが含まれる。
出力アプリ14は、当該HTTPリクエストに応じ、当該HTTPリクエストに含まれている通信URLへの接続をブラウザ部33に実行させるためのスクリプト(photo.js)と、画像データの出力(例えばスライドショー)のためのユーザインタフェースをブラウザ部33に描画させるための表示データ(photo.html)とを含む応答をブラウザ部33に送信する(S111)。なお、当該スクリプト及び当該表示データは、仲介装置30への処理の実行要求を示すデータの一例である。例えばスクリプトは他の形式のプログラムであってもよいし、表示データは他の形式のデータであってもよい。
ブラウザ部33は、当該応答を受信すると、当該応答に含まれているスクリプト(photo.js)を実行して、通信URLによって識別される通信制御部31との間での通信路を確立する(S112)。当該通信路は、通信制御部31がサーバ装置10から受信する通知をブラウザ部33へ伝達してもらうための通信路である。当該通信路には、websocketが用いられてもよい。
続いて、ブラウザ部33は、当該応答に含まれている表示データ(photo.html)に基づく画面(以下、「表示画面」という。)をメモリ装置103の所定の領域(例えば、ビデオメモリ)に描画する(S113)。例えば、表示画面は、サーバ装置10から配信される画像データが当てはめられる枠として機能する画面である。なお、ブラウザ部33による描画内容(表示画面)は、HDMI(登録商標)等のインタフェースを介して出力機器40へ出力され、出力機器40によって出力(投影又は表示等)される。
図11は、タグシールに対するユーザ端末20の近接に応じて実行される処理手順の一例を説明するためのシーケンス図である。
ユーザが、例えば、出力機器40に貼付されているタグシールにユーザ端末20を近接させると(例えば、翳すと)(S201)、情報取得部21は、近距離無線通信機206を利用した近距離無線通信を介して、当該タグシールに記憶されているタグ情報を取得する(S202、S203)。当該タグ情報には、登録ID(以下、「対象登録ID」という。)がオプション情報として付与されている初期アクセスURLが含まれている。なお、本実施の形態において、対象登録IDの値は、「Tag01」であるとする。
続いて、情報取得部21は、当該タグ情報にURLが含まれていることに基づき、当該タグ情報を入力情報としてブラウザ部22を起動する(S204)。
ブラウザ部22は、起動に応じ、入力情報であるタグ情報に含まれている初期アクセスURLに対応するアプリ判定部12に対してHTTPリクエストを自動的に送信する(S205)。当該HTTPリクエストには、対象登録IDの他に、アカウント情報がオプション情報として含まれる。アカウント情報とは、ユーザ端末20のユーザの識別情報(以下、「ユーザID」という。)と、当該ユーザが属するユーザ環境E1のテナントIDとを含む情報、又は当該ユーザID及びテナントIDを特定可能な情報である。例えば、Cookie等がアカウント情報として利用されてもよい。
サーバ装置10のアプリ判定部12は、当該HTTPリクエストを受信すると、当該HTTPリクエストに含まれているアカウント情報について認証を行う。当該認証に成功した場合にステップS206以降が実行される。認証は、例えば、ユーザ情報記憶部123に当該HTTPリクエストに含まれているアカウント情報が登録されているか否かによって行われる。
図12は、ユーザ情報記憶部123の構成例を示す図である。図12において、ユーザ情報記憶部123には、サーバ装置10のアプリケーションの利用が許可される各ユーザについて、テナントID及びユーザID等が記憶されている。
認証に成功すると、アプリ判定部12は、リダイレクト要求を含む応答(HTTPレスポンス)をブラウザ部22へ送信する(S206)。当該リダイレクト要求には、リダイレクト先として対象登録ID(「Tag01」)に対応付けられて登録情報記憶部124(図9)に記憶されているInアプリID(「AP_Upload」)に係るアップロードアプリ13のURL(以下、「アップロードアプリURL」という。)が含まれる。当該アップロードアプリURLは、アプリ情報記憶部121(図10)を参照して特定可能である。
ブラウザ部22は、当該リダイレクト要求に従い、リダイレクト先であるアップロードアプリURL(すなわち、アップロードアプリ13)にHTTPリクエスト(リダイレクト)を送信する(S207)。
アップロードアプリ13は、当該HTTPリクエストに応じ、サーバ装置10の配信部11への画像データのアップロードに関する画面(以下、「アップロード画面」という。)の表示データ(upload.html)と、アップロード画面の操作に応じて当該アップロードをユーザ端末20に実行させるためのスクリプト(upload.js)とを含む応答をブラウザ部22に送信する(S208)。なお、当該スクリプト及び当該表示データは、ユーザ端末20への処理の実行要求を示すデータの一例である。
ブラウザ部22は、当該応答を受信すると、当該表示データ(upload.html)に基づいて、アップロード画面を生成し、当該アップロード画面を表示装置211に表示する(S209)。
図13は、アップロード画面の表示例を示す図である。図13において、アップロード画面510は、ボタン511等を含む。ボタン511は、撮像操作の開始指示を受け付けるための画面である。ユーザは、ボタン511を選択して、撮像を行う。その結果、撮像された画像データが、表示装置211に表示される。
図14は、ユーザ端末20から仲介装置30への画像データの配信処理の処理手順の一例を説明するためのシーケンス図である。
ユーザが、ユーザ端末20の表示装置211に表示されている画像データ(以下、「対象画像データ」という。)について、アップロード指示に相当する所定の操作(例えば、スワイプ等)を行うと(S301)、ブラウザ部22は、スクリプト(upload.js)の定義に従って、対象画像データ(photo.jpeg)及び対象登録IDを、サーバ装置10の配信部11へ送信(アップロード)する(S302)。配信部11は、対象画像データ及び対象登録IDを受信すると、対象画像データに対して識別情報(以下「画像ID」とういう。)を割り当て、対象画像データを、当該画像ID(以下、「対象画像ID」という。)に関連付けて、例えば、補助記憶装置102等に保存する。
続いて、配信部11は、対象登録IDに関連付けられて登録情報記憶部124(図9)に記憶されているブラウザID(対象ブラウザID)を特定する。配信部11は、対象ブラウザIDに関連付けられて機器情報記憶部122(図8)に記憶されている通信ID(対象通信ID)に係る通信制御部31との間で確立されている通信路(図7のステップS102において確立されている通信路)を利用して、画像データがアップロードされたことの通知(以下、「アップロード通知」という。)を当該通信制御部31へ送信する(S303)。当該アップロード通知には、対象画像ID及び対象ブラウザIDが含まれる。なお、当該アップロード通知も、サービスの係る処理の実行要求の一例である。
通信制御部31は、当該アップロード通知を受信すると、当該アップロード通知に含まれているブラウザIDに対応するブラウザ部33と通信制御部31との間で確立されている通信路(図71のステップS112において確立されている通信路)を利用して、当該アップロード通知に含まれている対象画像IDをブラウザ部33へ通知する(S304)。
ブラウザ部33は、通信制御部31からの通知に応じ、スクリプト(photo.js)の定義に従って、画像データの取得要求を配信部11へ送信する(S305)。当該取得要求には、対象画像IDが含まれる。配信部11は、当該取得要求に応じ、当該取得要求に含まれている対象画像IDに関連付けられている画像データ(photo.jpeg)を含む応答をブラウザ部33に送信する(S306)。
ブラウザ部33は、当該画像データを受信すると、当該画像データを、図7のステップS113において描画されている表示画面に当てはめるようにメモリ装置103の所定の領域(例えば、ビデオメモリ)に描画する(S307)。描画内容は、仲介装置30の画像インタフェース305又は通信インタフェース304によって出力機器40に送信される。その結果、出力機器40によって当該描画内容が出力される。
上記した処理手順によって、ユーザ端末20が画像データを撮像するたびに、当該画像データが出力機器40等の出力機器によって出力されるといったサービスが実現される。例えば、パーティ、セミナー、展示会等の会場において、当該サービスを利用することで、会場内で撮像される画像データを、逐次的に大型の表示画面に表示出力させることができる。
なお、上記では、仲介装置30に接続される機器が出力機器40である例を示したが、デジタルサイネージ、電子黒板、ディスプレイ、又はプリンタ等、他の機器が出力機器40の代わりに仲介装置30に接続されるようにしてもよい。この場合、仲介装置30の描画内容がデジタルサイネージ、電子黒板、ディスプレイ等に表示されてもよいし、プリンタによって印刷されてもよい。
また、上記では、説明の便宜上、タグシールが、当該タグシールに関連付けられた出力機器40に貼付される例について説明したが、タグシールの貼り付け先に制限は無い。例えば、出力機器40が配置された部屋の任意の位置にタグシールが貼られてもよい。
上述したように、第1の実施の形態によれば、仲介装置30がサーバ装置10との間で通信セッションを確立し、サーバ装置10がユーザ端末20から受信した登録IDに関連付けて登録されているサービスに係る処理の実行要求を、当該通信セッションを介してサーバ装置10から受信し、当該実行要求に応じた処理を実行して、当該処理の実行結果を出力機器40に対して出力する。すなわち、サーバ装置10と出力機器40との間でネットワーク構成を接続しなくとも、サーバ装置10と出力機器40の間に仲介装置30が介在しているためサーバ装置10からの処理の実行要求に応じた処理の実行結果を適切な出力機器40に対して出力することができる。したがって、例えば通信ネットワークを介した通信機能を有さない出力機器40であっても、サーバ装置10から通信ネットワークを介して制御することができる。なお、当然出力機器40が通信ネットワークを介した通信機能を有していてもよいし、出力機器40がサーバ装置10との通信機能を有していてもよい。
また、ユーザは、タグシールにユーザ端末20を近接させることで、当該タグシール(登録ID)に関連付けられて予め設定された処理を、仲介装置30に接続された機器(例えば、出力機器40)に実行させることができる。すなわち、ユーザは出力機器40等を直接操作する必要がなく、ユーザ端末20の操作によって出力機器40等を操作することができるため、出力機器40等の機器に関して操作性を向上させることができる。
また、ユーザ端末20に表示される画面は、サーバ装置10から配信されるHTMLデータ等の表示データに基づくものであり、タグシールに関連付いた機器への依存度は低い。したがって、本実施の形態によれば、ユーザが機器に応じて異なる操作パネル等のユーザインタフェースを操作する機会を低減させることができ、複数の機器に跨って統一性の高い操作によって各機器を利用することができるようになる。
また、サーバ装置10と機器(出力機器40)との間に仲介装置30が介在することで、ネットワーク機能を有さない機器であっても、画像データの伝達用のインタフェースを有した機器であれば、本実施の形態を適用させることができる。また、画像データの出力先の機器を切り替えたい場合には、仲介装置30と接続する機器を切り替えればよく、サーバ装置10における設定情報の変更の必要は無い。
また、本実施の形態において、ユーザ端末20には、一般的なスマートフォン等が有しているプログラムがインストールされていればよく、ユーザ端末20に特別なアプリケーションがインストールされる必要はない。
また、仲介装置30と機器とは、画像データの伝達用のインタフェースで接続されればよいため、例えば、ルータを介した無線LANでの接続や、有線LANでの接続のための設定は不要である。
なお、第1の実施の形態では、タグ情報を記憶した外部記録媒体の一例としてNFCタグを利用した例を示したが、ユーザ端末20が外部からタグ情報を取得できればよく、近距離無線通信以外の方法でタグ情報が取得されてもよい。例えば、タグ情報が記録されたバーコード又は2次元コードが印字されたシールがタグシールの代わりに利用されてもよい。この場合、ユーザ端末20は、バーコードリーダ若しくは2次元コードリーダ、又はデジタルカメラ207等を用いてタグ情報を取得すればよい。なお、バーコード又は2次元コードは必ずしもシールに印字されている必要はなく、例えば出力機器のディスプレイに表示されていてもよいし、出力機器自身又はシール以外の外部記録媒体に印字されていてもよい。上記で説明したNFCタグのタグシールについてもあくまで一例であって、同様にシール以外の外部記録媒体がNFCタグを有していてもよい。
又は、ユーザ端末20は、出力機器の周辺に設置又は出力機器自身が備える発信装置から発信された音波や後述するビーコンを受信し、受信した音波やビーコンに埋め込まれたタグ情報を取得してもよい。
又は、ユーザ端末20は、出力機器の周辺に設置された装置又は出力機器自身にネットワークを介してアクセスすることによって記憶しているタグ情報を取得してもよい。
又は、ユーザ端末20は、画像が印字された外部記録媒体(例えばシール)からタグ情報を取得してもよい。この場合、ユーザ端末20は、当該画像をデジタルカメラ207によって入力し、当該画像に埋め込まれた地紋等からタグ情報を抽出してもよい。画像に対する地紋等による情報を埋め込みや、当該地紋からの情報の抽出については公知技術が利用されればよい。
次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第1の実施の形態と同様でもよい。
第2の実施の形態では、LINE(登録商標)等のメッセージアプリが利用される。また、第2の実施の形態では、タグシールの代わりに、登録IDを含む、メッセージアプリ23用のビーコン(BLE(Bluetooth(登録商標) Low Energy)等の近距離無線通信によるビーコン)が利用される。以下、当該ビーコンを「メッセージビーコン」という。
図15は、第2の実施の形態における情報処理システムの構成例を示す図である。図15中、図1と同一部分には同一符号を付し、その説明は省略する。
図15において、ネットワークN1には、更に、メッセージサービス50が接続される。メッセージサービス50は、メッセージアプリ23に対してサービスを提供する(メッセージアプリ23に対するサーバとして機能する)1以上のコンピュータである。メッセージアプリ23のユーザは、メッセージサービス50に対してユーザ登録をしてメッセージアプリ23用のユーザIDの発行を受ける。
図16は、第2の実施の形態における仲介装置30のハードウェア構成例を示す図である。図16中、図4と同一部分には同一符号を付し、その説明は省略する。図16において、仲介装置30は、更に、近距離無線通信機306を有する。近距離無線通信機306は、BLE等の近距離無線通信を行うためのハードウェアである。本実施の形態において、近距離無線通信機306は、メッセージビーコンの発信に利用される。
図17は、第2の実施の形態における各装置の機能構成例を示す図である。図17中、図6と同一部分には同一符号を付し、その説明は省略する。
図17において、ユーザ端末20は、更に、メッセージアプリ23を有する。メッセージアプリ23については上記した通りである。
サーバ装置10は、更に、メッセージボット15を有する。メッセージボット15は、メッセージアプリ23との間でメッセージでの送受信を自動実行するプログラム(Bot)である。
図18は、第2の実施の形態における事前準備処理の処理手順の一例を説明するためのシーケンス図である。第2の実施の形態では、事前準備として図18に示される処理手順が実行される。
ステップS401において、メッセージボット15がメッセージサービス50に対してユーザ登録され、メッセージボット15に対してユーザID(以下、「メッセージボットID」という。)が発行される。
その後、ユーザ端末20のユーザに対してメッセージボットIDが通知される(S402)。例えば、メッセージボットIDを含むメール又はQRコード(登録商標)等がユーザ端末20に送信される。
ユーザが、通知されたメッセージボットIDをユーザ端末20のメッセージアプリ23に入力して友達登録を指示すると(S403)、メッセージアプリ23は、メッセージアプリ23に関する当該ユーザのユーザID(以下、「メッセージユーザID」という。)と、入力されたメッセージボットIDとを含む友達登録要求をメッセージサービス50へ送信する(S404)。なお、友達登録することで、メッセージアプリ23は、メッセージボット15からの通知(メッセージ)を即時的に受信することができるようになる。
メッセージサービス50は、友達登録要求を受信すると、当該友達登録要求に含まれているメッセージボットIDに係るメッセージボット15に対し、当該友達登録要求に含まれているメッセージユーザIDに係るユーザが友達登録したことを通知する(S405)。
続いて、メッセージボット15は、仲介装置30からメッセージビーコンを発信可能とするために、メッセージボットIDを含むビーコン申請をメッセージサービス50へ送信して、メッセージビーコンに含めるHardwareID(以下、「HID」という。)の発行をメッセージサービス50から受ける(S406)。
続いて、メッセージボット15は、メッセージボット15を友達登録したメッセージユーザIDに対応するテナントIDに係る仲介装置30の通信制御部31に対して、メッセージビーコンを発信するためのビーコンの登録要求を送信する(S407)。当該登録要求には、HID、当該テナントIDに対応するブラウザID、及び当該ブラウザIDに対応する登録IDが含まれる。なお、メッセージユーザIDに対応するテナントIDは、ユーザ情報記憶部123を参照して特定可能である。
図19は、第2の実施の形態におけるユーザ情報記憶部123の構成例を示す図である。図19に示されるように、第2の実施の形態では、ユーザ情報記憶部123において、テナントID及びユーザIDの組ごとにメッセージユーザIDが対応付けられている。したがって、メッセージボット15は、斯かるユーザ情報記憶部123を参照して、メッセージユーザIDに対応するテナントIDを特定することができる。
また、当該テナントIDに対応するブラウザIDは、機器情報記憶部122(図8)を参照して特定可能である。更に、当該ブラウザIDに対応する登録IDは、登録情報記憶部124(図9)を参照して特定可能である。
続いて、通信制御部31は、当該登録要求を受信すると、当該登録要求に含まれているブラウザIDに係るブラウザ部33に対応するブラウザ管理部32に対して、対象登録ID及びHIDを含むビーコンの発信を要求する(S408)。続いて、ブラウザ管理部32は、近距離無線通信機306に対して対象登録ID及びHIDを含むメッセージビーコンの発信を要求する(S409)。その結果、仲介装置30の近距離無線通信機306は、対象登録ID及びHIDを含むメッセージビーコンの発信を開始する。
図20は、メッセージビーコンの発信元に対するユーザ端末20の近接に応じて実行される処理手順の一例を説明するためのシーケンス図である。なお、図20の処理手順の実行前までに、図7の処理手順が実行される。
ユーザが、メッセージビーコンを発信している仲介装置30へユーザ端末20を近づけると(S501)、ユーザ端末20の情報取得部21は、近距離無線通信機206を利用してメッセージビーコンを受信し(S502)、当該メッセージビーコンに含まれているHID(以下、「対象HID」という。)及び登録ID(以下、「対象登録ID」という。)を取得する(S503)。すなわち、第2の実施の形態において、近距離無線通信機206は、仲介装置30の近距離無線通信機306が発信するBLE等によるビーコンを受信可能なハードウェアである。なお、本実施の形態において、対象登録IDの値は、「Tag01」であるとする。
続いて、情報取得部21は、メッセージビーコンの形式がメッセージアプリ23に対応した形式であることに基づき、メッセージビーコンの内容(対象HID及び対象登録ID)を、ユーザ端末20のメッセージアプリ23へ通知する(S504)。メッセージアプリ23は、メッセージビーコンの内容の通知に応じ、メッセージビーコンを受信したことの通知(以下、「ビーコン受信通知」という。)をメッセージサービス50へ送信する(S505)。この際、メッセージアプリ23は、ユーザ端末20のユーザのメッセージユーザID、対象HID及び対象登録IDを当該ビーコン受信通知に含める。
メッセージサービス50は、対象HIDに対応するメッセージボット15へ当該ビーコン受信通知を送信する(S506)。すなわち、メッセージサービス50においては、HIDの発行を受けたメッセージボット15等は、HIDに関連付けられて管理されている。なお、当該ビーコン受信通知には、更に、当該ビーコン受信通知を識別するためのメッセージIDが含まれる。メッセージサービス50は、当該ビーコン受信通知に含まれている内容(メッセージユーザID等)を当該メッセージIDに対応付けて記憶しておく。
メッセージボット15は、当該ビーコン受信通知を受信すると、当該ビーコン受信通知に対する応答をメッセージサービス50へ送信する(S507)。当該応答には、当該ビーコン受信通知に含まれていたメッセージID及び対象登録IDに加え、ワンショットID及び初期アクセスURLが含まれる。なお、初期アクセスURLは、第1の実施の形態において説明した通り、アプリ判定部12に対するURLである。第2の実施の形態において、初期アクセスURLは、予めメッセージボット15に設定されている。また、ワンショットIDは、サーバ装置10へログイン可能な期間を限定するための識別情報であり、メッセージボット15により自動的に生成される。例えば、ワンショットIDは、現在日時に基づく値であってもよいし、ログイン可能な期限を示す日時等に基づく値であってもよい。なお、サーバ装置10へログイン可能な期間を限定しない場合には、ワンショットIDは生成されなくてもよい。
続いて、メッセージサービス50は、メッセージボット15からの応答に応じ、当該応答に含まれているメッセージIDに対応付けられて記憶されているメッセージユーザID宛てに、メッセージボット15からの応答の内容等(初期アクセスURL、ワンショットID、当該メッセージユーザID、対象登録ID等)を含むメッセージを、メッセージボット15からのメッセージとして送信する(S508)。例えば、当該メッセージには、ワンショットID、当該メッセージユーザID及び対象登録IDをオプション情報として含む初期アクセスURLに対するリンクに対応付けられた操作ボタンが含まれる。
当該メッセージユーザIDに対応するユーザのユーザ端末20のメッセージアプリ23が当該メッセージを受信すると、メッセージアプリ23は、当該メッセージを表示装置211に表示する(S509)。その結果、ユーザは、当該メッセージを確認することができる。
続いて、ユーザが、当該メッセージに含まれている操作ボタンを押下すると(S510)、メッセージアプリ23は、当該操作ボタンに対応付けられたリンクが示す初期アクセスURLを入力情報としてブラウザ部22を自動的に起動する(S511)。なお、メッセージアプリ23が自らの内部にブラウザを有する場合、当該ブラウザがブラウザ部22として利用されてもよい。
ブラウザ部22は、起動に応じ、入力情報に含まれている初期アクセスURLに対応するアプリ判定部12に対してHTTPリクエストを自動的に送信する(S512)。当該HTTPリクエストには、初期アクセスURLのオプション情報(ワンショットID、メッセージユーザID、対象登録ID)が含まれる。
サーバ装置10のアプリ判定部12は、当該HTTPリクエストを受信すると、当該HTTPリクエストに含まれているメッセージID及びワンショットIDについて認証を行う。例えば、当該メッセージユーザIDが、ユーザ情報記憶部123(図19)においていずれかのユーザのメッセージユーザIDとして記憶されており、かつ、当該ワンショットIDの期限が切れていなければ、認証は成功し、そうでなければ認証は失敗する。
認証に成功すると、図11のステップS206〜S209と同様の処理が実行される(S513〜S516)。その結果、アップロード画面510(図13)が、ユーザ端末20の表示装置211に表示される。
その後、ユーザ端末20による画像データの撮像に応じ、図14において説明した処理手順が実行される。
上述したように、第2の実施の形態によれば、タグシールを用いなくとも第1の実施の形態と同様の効果を得ることができる。
次に、第3の実施の形態について説明する。第3の実施の形態では第1の実施の形態と異なる点について説明する。第3の実施の形態において特に言及されない点については、第1の実施の形態と同様でもよい。
第1の実施の形態及び第2の実施の形態では、登録ID(タグシール等)に対して、画像データの入力を制御するアプリケーションのID(InアプリID)、画像データの出力を制御するアプリケーションのアプリID(OutアプリID)、及びブラウザID等が、予め登録情報記憶部124(図9)に登録されている例について説明した。但し、登録ID(タグシール)に対するこれらのID(これらのアプリケーションによって実現されるサービス)の関連付けは、ユーザ端末20がタグシールに翳す前に必ずしも行われていなくてもよい。ユーザ端末20が、未登録のタグシールに翳された際に、これらのIDが当該タグシールの登録IDに関連付けられてもよい。未登録のタグシールとは、当該タグシールの登録IDが、登録情報記憶部124(図9)に登録(記憶)されていないタグシールをいう。以下、ユーザ端末20が未登録のタグシールに翳された例を、を第3の実施の形態として説明する。
図21は、第3の実施の形態における各装置の機能構成例を示す図である。図21中、図6と同一部分には同一符号を付し、その説明は省略する。
図21において、サーバ装置10は、更に、登録支援部16及びサービス情報提供部17を有する。これらの機能は、サーバ装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。
登録支援部16は、未登録のタグシール(登録ID)の登録を支援するための処理を実行する。サービス情報提供部17は、未登録のタグシール(登録ID)に対して関連付けるサービスの候補(選択肢)の情報をユーザ端末20へ提供する。ここでは、登録支援部16及びサービス情報提供部17がそれぞれアプリケーション(登録支援アプリ、サービス情報提供アプリ)によって実現される例を用いて説明する。なお、アプリケーションはプログラムの形式の一例であって、登録支援部16及びサービス情報提供部17は他の形式のプログラムによって実現されてもよいし、登録支援部16及びサービス情報提供部17が同じアプリケーションによって実現されてもよい。
サーバ装置10は、また、サービス情報記憶部125を有する。サービス情報記憶部125は、例えば、補助記憶装置102、又はサーバ装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。サービス情報記憶部125には、サーバ装置10が提供可能な各サービスに関する情報が記憶されている。
図22は、第3の実施の形態において仲介装置30の起動に応じて実行される処理手順の一例を説明するためのシーケンス図である。図22中、図7と同一ステップには同一ステップ番号を付し、その説明は省略する。
サーバ装置10のアプリ判定部12は、ステップS108におけるHTTPリクエストを受信した際に、対象ブラウザIDを含むレコード(対象ブラウザIDに関連付けられた登録ID)が、登録情報記憶部124(図9)に登録(記憶)されていないと、登録支援アプリURL、通信URL及び対象ブラウザIDを含むリダイレクト要求を含む応答(HTTPレスポンス)をブラウザ部33へ送信する(S121)。登録支援アプリURLは、登録支援部16(すなわち登録支援アプリ)に対応するURLである。
続いて、ブラウザ部33は、当該リダイレクト要求に従い、リダイレクト先である登録支援アプリURL(すなわち、登録支援部16のアクセス先)にHTTPリクエストを送信(リダイレクト)する(S122)。当該HTTPリクエストには、リダイレクト要求に含まれていた通信URL及び対象ブラウザIDが含まれる。
登録支援部16は、当該HTTPリクエストに応じ、タグシールに対してサービスが未登録であることを示す画面の表示データ(HTML及びスクリプト等)を含む応答を、ブラウザ部33へ送信する(S123)。
続いて、ブラウザ部33は、当該応答に含まれている表示データに基づく画面(以下、「サービス未登録画面」という。)をメモリ装置103の所定の領域(例えば、ビデオメモリ)に描画する(S124)。ブラウザ部33による描画内容(表示画面)は、HDMI(登録商標)等のインタフェースを介して出力機器40へ出力され、出力機器40によって出力(投影又は表示等)される。
図23は、サービス未登録画面の出力例を示す図である。図23に示されるように、サービス未登録画面610は、仲介装置30のブラウザ部33に関連付けられたサービスが無いことを示すメッセージを含む。
ユーザは、サービス未登録画面610を参照して、電源を投入した仲介装置30のブラウザ部33に対してサービスが関連付けられて登録されていないことを確認する(S125)。
一方、配信部11は、ステップS102において通信路が確立されて以降、一定間隔(例えば、15分間隔)で、仲介装置30のブラウザ部33に対するパスコードを(例えば、ランダムに)生成し、当該仲介装置30の通信制御部31に対して、当該パスコード及び対象ブラウザIDを当該通信路を介して通知する(S126)。すなわち、一定時間間隔で、パスコードが切り替えられる。配信部11は、最後に通知したパスコードを対象ブラウザIDに関連付けて、例えば、機器情報記憶部122に記憶しておく。
図24は、第3の実施の形態における機器情報記憶部122の構成例を示す図である。第3の実施の形態において、機器情報記憶部122は、更に、パスコードの列を有する。ここでは、対象ブラウザIDに対応するレコードのパスコードの列に、通信制御部31に対して最後に通知されたパスコードが記憶される。図24では、対象ブラウザIDが「BROWSER1」であり、当該パスコードが「1965」である例が示されている。なお、パスコードは、後述される処理においてユーザ端末20から送信されるパスコードに関連付けられている仲介装置30(ブラウザ部33)及び出力機器40を特定するための情報として機能する。
通信制御部31は、パスコードを受信するたびに、当該パスコードと共に受信され対象ブラウザIDに係るブラウザ部33に対して当該パスコードを通知する(S127)。当該ブラウザ部33は、当該パスコードをサービス未登録画面610に追加表示する(S128)。その結果、パスコードを含むサービス未登録画面610が、出力機器40によって出力(投影又は表示等)される。
図25は、パスコードを含むサービス未登録画面の出力例を示す図である。図25では、パスコードが「1965」である例が示されている。
このように、一定時間間隔でパスコードが切り替えられている状態において、例えば、当該パスコードに係る仲介装置30に貼付された未登録のタグシールに対してユーザ端末20が翳されると、例えば、図26に示される処理手順が実行される。
図26は、未登録のタグシールに対するユーザ端末20の近接に応じて実行される処理手順の一例を説明するためのシーケンス図である。図26中、図11と同一ステップには同一ステップ番号を付し、その説明は省略する。
サーバ装置10のアプリ判定部12は、ステップS205におけるHTTPリクエストを受信に応じアカウント情報の認証に成功した場合に、当該HTTPリクエストに含まれている対象登録IDを含むレコードが登録情報記憶部124に記憶されていないと(対象登録IDに対して各IDが登録情報記憶部124に登録されていないと)、サービス情報提供アプリURLをリダイレクト先とし、対象登録IDを含むリダイレクト要求を示す応答(HTTPレスポンス)をブラウザ部22へ送信する(S221)。サービス情報提供アプリURLとは、サービス情報提供部17(すなわちサービス情報提供アプリ)に対応するURLである。なお、対象登録IDを含むレコードが登録情報記憶部124に記憶されている場合、図11において説明したように、ステップS206以降が実行される。
ブラウザ部22は、当該リダイレクト要求に従い、リダイレクト先であるサービス情報提供アプリURL(すなわち、サービス情報提供部17のアクセス先)にHTTPリクエスト(リダイレクト)を送信する(S222)。当該HTTPリクエストには、ユーザ端末20のユーザのユーザID及び対象登録IDが含まれる。
サービス情報提供部17は、当該HTTPリクエストの受信に応じ、サービスメニュー画面の表示データ(HTML及びスクリプト等)をサービス情報記憶部125を参照して生成し、当該表示データを含む応答をブラウザ部22へ送信する(S223)。
図27は、サービス情報記憶部125の構成例を示す図である。図27に示されるように、サービス情報記憶部125には、サーバ装置10が提供可能なサービスごと(登録IDに対して関連付けるサービスの候補ごと)に、サービスID、InアプリID及びOutアプリIDが関連付けられて記憶されている。サービスIDは、サービスの識別情報であり、その値はサービスごとに異なる。InアプリIDは、当該サービスにおいて、画像データの入力を制御するアプリケーションのアプリIDである。例えば、「AP_Upload」は、上記したようにアップロードアプリ13のアプリIDを示す。OutアプリIDは、当該サービスにおいて、画像データの出力を制御するアプリケーションのアプリIDである。例えば、「AP_PhotoShow」は、上記したように出力アプリ14のアプリIDを示す。
サービス情報提供部17は、サービス情報記憶部125に記憶された各サービスID(すなわち、サービスの候補の情報)が選択肢とされるように、サービスメニュー画面の表示データを生成する。
ブラウザ部22は、当該応答を受信すると、当該表示データに基づいて、サービスメニュー画面を生成し、当該サービスメニュー画面を表示装置211に表示する(S224)。
図28は、サービスメニュー画面の表示例を示す図である。図28に示されるように、サービスメニュー画面620は、選択可能なサービスIDの一覧を含む。
ユーザが、サービスメニュー画面620を介して、仲介装置30に貼付されたタグシール(対象登録ID)に対して関連付けるサービスID(以下、「対象サービスID」という。)を選択すると(S225)、ブラウザ部22は、サービスメニュー画面620の表示データの定義に基づいて、ユーザID、対象登録ID、及び選択結果(対象サービスID)を含むHTTPリクエストをサーバ装置10の配信部11へ送信する(S226)。
配信部11は、当該HTTPリクエストを受信すると、当該HTTPリクエストに含まれている対象サービスIDに関連付けられてサービス情報記憶部125(図27)に記憶されているInアプリID及びOutアプリIDと、当該HTTPリクエストに含まれている対象登録IDとを含むレコード(以下、「対象タグ情報レコード」という。)を登録情報記憶部124に登録する。その結果、対象タグ情報レコードのブラウザIDが未確定の情報として残る。そこで、配信部11は、当該ブラウザIDを確定するため、パスコード入力画面の表示データ(HTML及びスクリプト等)を含む応答をブラウザ部22へ送信する(S227)。
ブラウザ部22は、当該応答を受信すると、当該表示データに基づいてパスコード入力画面を生成し、当該パスコード入力画面を表示装置211に表示する(S228)。
図29は、パスコード入力画面の表示例を示す図である。図29において、パスコード入力画面630は、パスコード入力領域631及び設定ボタン632等を含む。パスコード入力領域631は、対象としているタグシールに関連付ける仲介装置30に接続された出力機器40によって出力されているパスコードの入力を受け付けるための領域である。例えば、現時点において当該出力機器40によって出力されているサービス未登録画面610が、図25に示される通りであれば、ユーザは、パスコード入力領域631に対して「1965」を入力して、設定ボタン632をタッチする(S229)。
ブラウザ部22は、設定ボタン632のタッチに応じ、パスコード入力画面630の表示データの定義に基づいて、パスコード入力領域631に入力されたパスコードと、ユーザID及び対象登録IDとを含むHTTPリクエストを、サーバ装置10の配信部11へ送信する(S230)。
配信部11は、当該HTTPリクエストに含まれているパスコードに関連付けられて記憶されているブラウザIDを機器情報記憶部122(図24)から検索し、当該ブラウザIDを、対象タグ情報レコードの「ブラウザID」の項目へ登録する。その結果、対象タグ情報レコードの内容は確定する。すなわち、対象登録ID(対象としているタグシール)に対してサービス及び仲介装置30(出力機器40)が関連付けられて登録される。
続いて、配信部11は、サービス登録の確定を示すサービス確定画面の表示データを含む応答をブラウザ部22へ送信する(S231)。ブラウザ部22は、当該応答を受信すると、当該表示データに基づいてサービス確定画面を生成し、当該サービス確定画面を表示装置211に表示する(S232)。
図30は、サービス確定画面の表示例を示す図である。図30に示されるように、サービス確定画面640は、サービスが関連付けられた仲介装置30のブラウザ部33のブラウザIDと、当該サービスのサービスIDとが関連付けられて登録されたことを示すメッセージを含む。
配信部11は、また、サービスが関連付けられた仲介装置30のブラウザ部33のブラウザID(以下、「対象ブラウザID」という。)と、対象登録IDと、ユーザ端末20のユーザのユーザID(以下、「対象ユーザID」という。)とを含むサービス確定通知を、当該仲介装置30の通信制御部31へ送信する(S233)。通信制御部31は、当該サービス確定通知を受信すると、対象ブラウザIDに係るブラウザ部33に対して、対象登録ID及び対象ユーザIDを含むサービス確定通知を送信する(S234)。
ブラウザ部33は、当該サービス確定通知を受信すると、サービス未登録画面610(図25)の表示データを構成するスクリプトに当該サービス確定通知を入力することにより、メモリ装置103の所定の領域(例えば、ビデオメモリ)の描画内容をサービス未登録画面610(図25)から当該サービス確定通知の表示画面(以下、「サービス確定通知画面」という。)へ切り替える(S235)。ブラウザ部33による描画内容(表示画面)は、HDMI(登録商標)等のインタフェースを介して出力機器40へ出力され、出力機器40によって出力(投影又は表示等)される。
図31は、サービス確定通知画面の出力例を示す図である。図31に示されるように、サービス確定通知画面650は、対象ユーザIDに係るユーザ(図31では「Aさん」が、サービスを登録した旨のメッセージ及びパスコード等が含まれている。
作業を行ったユーザは、仲介装置30に貼付されている未登録のタグシールに翳したユーザ端末20にサービス確定画面640(図30)が表示され、当該仲介装置30に接続されている出力機器40によってサービス確定通知画面650(図31)が出力されることにより、当該タグシールに対して、所望の機器(仲介装置30及び出力機器40)を利用したサービスが登録されたことを確認することができる。
上述したように、第3の実施の形態によれば、未登録のタグシールに対してユーザ端末20が翳され(近接する)と、当該タグシールに関連付けるサービスの候補がユーザ端末20に表示される。ユーザがいずれかの候補を選択すると、当該タグシールの登録IDが、選択結果に係るサービスに関連付けられると共に、当該候補に対して関連付ける仲介装置30(すなわち、出力機器40等の機器)から出力されているパスコードの入力画面がユーザ端末20に表示される。ユーザが、所望の機器から出力されているパスコードを入力すると、当該パスコードに係る仲介装置30(出力機器40)が、当該登録ID(すなわち、当該登録IDに関連付けられているサービス)に関連付けられる。したがって、本実施の形態によれば、機器とサービスとの関連付けを簡易な操作で実現可能とすることができる。
なお、上記実施形態におけるサーバ装置10、仲介装置30、出力機器40等の出力機器、ユーザ端末20、及びメッセージサービス50は、それぞれ単一のコンピュータによって構築されてもよいし、各部(機能又は手段)を分割して任意に割り当てられた複数のコンピュータによって構築されていてもよい。
なお、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。