(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023127273
(43)【公開日】2023-09-13
(54)【発明の名称】情報処理装置、情報処理方法、およびプログラム
(51)【国際特許分類】
G06F 21/10 20130101AFI20230906BHJP
G06F 21/31 20130101ALI20230906BHJP
【FI】
G06F21/10 350
G06F21/31
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022030961
(22)【出願日】2022-03-01
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100089118
【弁理士】
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】藤井 裕行
(57)【要約】
【課題】デバイスが故障して一時的に代替デバイスを利用する際に、デバイスに紐づいたライセンスの切り替え、デバイスの設定の引継ぎ等を行うことなく、利用者がデバイスの切り替えを容易にすることができる情報処理装置、情報処理方法、およびプログラムを提供する。
【解決手段】本発明は、デバイスを登録するデバイス登録部と、前記デバイス登録部により登録された前記デバイスに対してアプリケーションのライセンスを割り当てるライセンス管理部と、前記デバイスからの前記アプリケーションのアプリ実行リクエストに応じて、当該デバイスにライセンスが割り当てられた前記アプリケーションを実行するアプリ実行機能部と、前記デバイスの他のデバイスへの置き換え設定を登録し、置き換えた前記他のデバイスからの前記アプリ実行リクエストを、置き換える前の前記デバイスからの前記アプリ実行リクエストに変換するデバイス置き換え機能部と、を備える。
【選択図】
図4
【特許請求の範囲】
【請求項1】
デバイスを登録するデバイス登録部と、
前記デバイス登録部により登録された前記デバイスに対してアプリケーションのライセンスを割り当てるライセンス管理部と、
前記デバイスからの前記アプリケーションのアプリ実行リクエストに応じて、当該デバイスにライセンスが割り当てられた前記アプリケーションを実行するアプリ実行機能部と、
前記デバイスの他のデバイスへの置き換え設定を登録し、置き換えた前記他のデバイスからの前記アプリ実行リクエストを、置き換える前の前記デバイスからの前記アプリ実行リクエストに変換するデバイス置き換え機能部と、
を備える情報処理装置。
【請求項2】
登録したユーザのログインを実行するユーザ認証部をさらに備え、
前記デバイス置き換え機能部は、前記ユーザ認証部によってユーザのログインが実行され後、中継アプリケーションにおいて選択された前記デバイスの前記他のデバイスへの置き換え設定を登録し、前記中継アプリケーションからの前記他のデバイスへの置き換え設定の登録の問合せに応じて、前記他のデバイスへの置き換え設定の登録の有無を前記中継アプリケーションに回答する、請求項1に記載の情報処理装置。
【請求項3】
前記デバイスの設定情報を記録し、置き換える前の前記デバイスの前記設定情報を、置き換えた前記他のデバイスにコピーするデバイス設定管理機能部、を備える請求項2に記載の情報処理装置。
【請求項4】
前記デバイス設定管理機能部は、置き換える前の前記デバイスの前記設定情報を、前記中継アプリケーションに送信して、置き換えた前記他のデバイスに対する当該設定情報のコピーを指示する、請求項3に記載の情報処理装置。
【請求項5】
前記デバイス置き換え機能部は、前記中継アプリケーションからの前記他のデバイスへの置き換え設定の登録解除リクエストに応じて、前記他のデバイスへの置き換え設定の登録を解除する、請求項2に記載の情報処理装置。
【請求項6】
情報処理装置で実行される情報処理方法であって、
デバイス登録部が、デバイスを登録する工程と、
ライセンス管理部が、前記デバイス登録部により登録された前記デバイスに対してアプリケーションのライセンスを割り当てる工程と、
アプリ実行機能部が、前記デバイスからの前記アプリケーションのアプリ実行リクエストに応じて、当該デバイスにライセンスが割り当てられた前記アプリケーションを実行する工程と、
デバイス置き換え機能部が、前記デバイスの他のデバイスへの置き換え設定を登録し、置き換えた前記他のデバイスからの前記アプリ実行リクエストを、置き換える前の前記デバイスからの前記アプリ実行リクエストに変換する工程と、
を含む情報処理方法。
【請求項7】
コンピュータを、
デバイスを登録するデバイス登録部と、
前記デバイス登録部により登録された前記デバイスに対してアプリケーションのライセンスを割り当てるライセンス管理部と、
前記デバイスからの前記アプリケーションのアプリ実行リクエストに応じて、当該デバイスにライセンスが割り当てられた前記アプリケーションを実行するアプリ実行機能部と、
前記デバイスの他のデバイスへの置き換え設定を登録し、置き換えた前記他のデバイスからの前記アプリ実行リクエストを、置き換える前の前記デバイスからの前記アプリ実行リクエストに変換するデバイス置き換え機能部と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
IoT(Internet of Things)は、モノのインターネットと呼ばれ、スマートフォンおよびデジタル家電等、様々なIoTデバイス(デバイス)がインターネットにつながり、複合的にデータを収集および分析できるようになっている。例えば、特許文献1には、ノードロックライセンス方式で1台のみにライセンスを与えた場合に、ハードウェアの切り替えの度にライセンスの再発行が必要となる問題を解決することを目的として、初回のライセンス管理時にハードウェア固有の情報を用いてライセンス管理を行う手段と、2度目以降のライセンス管理時に、ユーザIDおよびパスワードのみでライセンス管理を行う手段と、を備える構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
ところで、IoTでは、IoTデバイスが故障した際、すぐに修理が終わらない場合は、一時的に代替デバイスを利用していた。しかしながら、代替デバイスは一時的な利用にも関わらず、IoTデバイスに紐づいたライセンスの切り替えおよびIoTデバイスの設定の引継ぎ等、利用者が容易にIoTデバイスを切り替えることが困難です。また、特許文献1では、ハードウェアを切り替えた際のIoTデバイスの設定の引継ぎ等が必要となり、利用者がIoTデバイスの切り替えを容易にできない。
【0004】
本発明は、上記に鑑みてなされたものであって、デバイスが故障して一時的に代替デバイスを利用する際に、デバイスに紐づいたライセンスの切り替え、デバイスの設定の引継ぎ等を行うことなく、利用者がデバイスの切り替えを容易にすることができる情報処理装置、情報処理方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
上述した課題を解決し、目的を達成するために、本発明は、デバイスを登録するデバイス登録部と、前記デバイス登録部により登録された前記デバイスに対してアプリケーションのライセンスを割り当てるライセンス管理部と、前記デバイスからの前記アプリケーションのアプリ実行リクエストに応じて、当該デバイスにライセンスが割り当てられた前記アプリケーションを実行するアプリ実行機能部と、前記デバイスの他のデバイスへの置き換え設定を登録し、置き換えた前記他のデバイスからの前記アプリ実行リクエストを、置き換える前の前記デバイスからの前記アプリ実行リクエストに変換するデバイス置き換え機能部と、を備える。
【発明の効果】
【0006】
本発明によれば、デバイスが故障して一時的に代替デバイスを利用する際に、デバイスに紐づいたライセンスの切り替え、デバイスの設定の引継ぎ等を行うことなく、利用者がデバイスの切り替えを容易にすることができる、という効果を奏する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、本実施の形態にかかるIoTシステムの構成の一例を示す図である。
【
図2】
図2は、本実施の形態にかかるサービス提供者端末、IoTプラットフォーム、およびユーザ端末のハードウェア構成の一例を示す図である。
【
図3】
図3は、本実施の形態にかかるデバイスのハードウェア構成の一例を示す図である。
【
図4】
図4は、本実施の形態にかかるIoTシステムの機能構成の一例を示すブロック図である。
【
図5】
図5は、本実施の形態にかかるユーザ端末の中継アプリケーションとIoTプラットフォーム間での通信処理の一例を説明するための図である。
【
図6】
図6は、本実施の形態にかかるIoTシステムにおけるユーザの認証処理の流れの一例を示すシーケンス図である。
【
図7】
図7は、本実施の形態にかかるIoTシステムにおけるデバイスの登録処理の流れの一例を示すシーケンス図である。
【
図8】
図8は、本実施の形態にかかるIoTシステムにおけるデバイス設定値の変更処理の流れの一例を示すシーケンス図である。
【
図9】
図9は、本実施の形態にかかるIoTシステムにおけるデバイス置き換え許可の設定処理の流れの一例を示すシーケンス図である。
【
図10】
図10は、本実施の形態にかかるIoTシステムにおけるデバイスの置き換えの設定処理の流れの一例を示すシーケンス図である。
【
図11】
図11は、本実施の形態にかかるIoTシステムにおけるデバイスによるアプリケーションの実行処理の流れの一例を示すシーケンス図である。
【
図12】
図12は、本実施の形態にかかるIoTシステムにおけるデバイスの置き換え設定の解除処理の流れの一例を示すシーケンス図である。
【発明を実施するための形態】
【0008】
以下に添付図面を参照して、情報処理装置、情報処理方法、およびプログラムの実施の形態を詳細に説明する。
【0009】
図1は、本実施の形態にかかるIoTシステムの構成の一例を示す図である。本実施の形態にかかるIoTシステム(情報処理システムの一例)は、
図1に示すように、サービス提供者向けアプリケーションを有するサービス提供者端末1、中継アプリケーションを有するユーザ端末2、デバイス3、クラウド上で動作するアプリケーション4、およびIoTプラットフォーム(情報処理装置の一例)5を有する。ここで、中継アプリケーションは、デバイス3をIoTプラットフォーム5と接続するアプリケーションである。
【0010】
図2は、本実施の形態にかかるサービス提供者端末、IoTプラットフォーム、およびユーザ端末のハードウェア構成の一例を示す図である。ここでは、IoTプラットフォーム5のハードウェア構成について説明する。
【0011】
図2に示されているように、IoTプラットフォーム5は、コンピュータによって構築されており、
図2に示されているように、CPU501、ROM502、RAM503、HD504、HDD(Hard Disk Drive)コントローラ505、ディスプレイ506、外部機器接続I/F(Interface)508、ネットワークI/F509、データバス510、キーボード511、ポインティングデバイス512、DVD-RW(Digital Versatile Disk Rewritable)ドライブ514、メディアI/F516を備えている。
【0012】
これらのうち、CPU501は、IoTプラットフォーム5全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出しまたは書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、または画像等の各種情報を表示する。外部機器接続I/F508は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、通信ネットワーク100を利用してデータ通信をするためのインターフェースである。データバス510は、
図2に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0013】
また、キーボード511は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択および実行、処理対象の選択、カーソルの移動等を行う入力手段の一種である。DVD-RWドライブ514は、着脱可能な記録媒体の一例としてのDVD-RW513に対する各種データの読み出しまたは書き込みを制御する。なお、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出しまたは書き込み(記憶)を制御する。
【0014】
図3は、本実施の形態にかかるデバイスのハードウェア構成の一例を示す図である。
図3に示されているように、デバイス3の一例であるMFP(Multi-function Peripheral/Product/Printer)は、コントローラ910、近距離通信回路920、エンジン制御部930、操作パネル940、ネットワークI/F950を備えている。
【0015】
これらのうち、コントローラ910は、コンピュータの主要部であるCPU901、システムメモリ(MEM-P)902、ノースブリッジ(NB)903、サウスブリッジ(SB)904、ASIC(Application Specific Integrated Circuit)906、記憶部であるローカルメモリ(MEM-C)907、HDDコントローラ908、および、記憶部であるHD909を有し、NB903とASIC906との間をAGP(Accelerated Graphics Port)バス921で接続した構成となっている。
【0016】
これらのうち、CPU901は、MFP9の全体制御を行う制御部である。NB903は、CPU901と、MEM-P902、SB904、およびAGPバス921とを接続するためのブリッジであり、MEM-P902に対する読み書き等を制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタおよびAGPターゲットとを有する。
【0017】
MEM-P902は、コントローラ910の各機能を実現させるプログラムおよびデータの格納用メモリであるROM902a、プログラムやデータの展開、およびメモリ印刷時の描画用メモリ等として用いるRAM902bとからなる。なお、RAM902bに記憶されているプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0018】
SB904は、NB903とPCIデバイス、周辺デバイスとを接続するためのブリッジである。ASIC906は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス921、PCIバス922、HDD908およびMEM-C907をそれぞれ接続するブリッジの役割を有する。このASIC906は、PCIターゲットおよびAGPマスタ、ASIC906の中核をなすアービタ(ARB)、MEM-C907を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転等を行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部931及びプリンタ部932との間でPCIバス922を介したデータ転送を行うPCIユニットとからなる。なお、ASIC906には、USB(Universal Serial Bus)のインターフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェースを接続するようにしてもよい。
【0019】
図4は、本実施の形態にかかるIoTシステムの機能構成の一例を示すブロック図である。本実施の形態では、サービス提供者端末1は、
図4に示すように、サービス提供者向けアプリケーションを有する。そして、サービス提供者向けアプリケーションは、デバイス置き換え許可機能部101を実現する。
【0020】
デバイス置き換え許可機能部101は、デバイス3の置き換えを許可するか否かを示すデバイス置き換え許可を設定する。例えば、デバイス置き換え許可機能部101は、サービス提供者端末1に対して、デバイス3の置き換え許可をするか否かを選択可能なデバイス置き換え許可画面を表示し、デバイス置き換え許可画面における選択に応じて、デバイス置き換え許可を設定する。
【0021】
本実施の形態では、IoTプラットフォーム5は、ユーザ認証機能部521、デバイス設定管理機能部522、デバイス登録機能部523、ライセンス管理機能部524、アプリ実行機能部525、およびデバイス置き換え機能部526を有する。
【0022】
ユーザ認証機能部521は、予め登録されたユーザのIoTプラットフォーム5に対するログインを実行する。デバイス設定管理機能部522は、デバイス3に対する設定情報(以下、デバイス設定値という)を管理(記録)する。本実施の形態では、デバイス設定管理機能部522は、デバイス設定管理データベースを有する。ここで、デバイス設定管理データベースは、下記の表1に示すように、ユーザ情報(例えば、メールアドレス)、デバイス3の種別であるデバイス種別、デバイス3のシリアルID、およびデバイス設定値を対応付けて記憶する。
【表1】
【0023】
また、デバイス設定管理機能部522は、置き換える前のデバイス3のデバイス設定値を、置き換え後のデバイス3にコピーする。これにより、置き換え設定が行われたデバイス3の組合せのみ、デバイス設定値を置き換え後のデバイス3にコピーすることができる。
【0024】
さらに、デバイス設定管理機能部522は、置き換える前のデバイス3のデバイス設定値を、ユーザ端末2が有する中継アプリケーションに送信して、置き換えたデバイス3に送信して、置き換えたデバイス3に対するデバイス設定値のコピーを指示する。これにより、置き換えるデバイス3に、故障前のデバイス3のデバイス設定値を反映させることができる。
【0025】
デバイス登録機能部523は、IoTプラットフォーム5に対してデバイス3を登録する。また、デバイス登録機能部523は、デバイス3の認可および認証を実行する。これにより、デバイス登録機能部523は、IoTプラットフォーム5に登録したデバイス3にのみアクセスできるようにする。ライセンス管理機能部524は、登録されたデバイス3に対してライセンスを割り当てることにより、当該登録されたデバイス3によるアプリケーション4の実行を管理する。
【0026】
デバイス置き換え機能部526は、デバイス3を置き換えるため、デバイス3の置き換えおよび置き換え解除を行う。具体的には、デバイス置き換え機能部526は、故障したデバイス(代替元デバイス)3の他のデバイス(代替先デバイス)3への置き換え設定を登録する。
【0027】
本実施の形態では、デバイス置き換え機能部526は、デバイス置き換えデータベースを有する。ここで、デバイス置き換えデータベースは、下記の表2に示すように、ユーザ情報、代替元デバイス情報、および代替先デバイス情報を対応付けて記憶する。ここで、代替元デバイス情報は、代替元デバイス3を特定する情報であり、代替元デバイス3のデバイス種別、シリアルID、およびモノ名称を含む。また、代替先デバイス情報は、代替先デバイス3を特定する情報であり、代替先デバイス3のデバイス種別、シリアルID、およびモノ名称を含む。
【0028】
デバイス置き換え機能部526は、デバイス3の置き換え設定が登録されると、デバイス置き換えデータベースに対して、代替元デバイス情報および代替先デバイス情報を登録する。また、デバイス置き換え機能部526は、デバイス3の置き換えが解除されると、デバイス置き換えデータベースから、代替元デバイス情報および代替先デバイス情報等のレコードを削除する。具体的には、デバイス置き換え機能部526は、ユーザ端末2が有する中継アプリケーションからの代替先デバイスへの置き換え設定の登録解除リクエストに応じて、代替先デバイス3への置き換え設定の登録を解除する。これにより、登録されたユーザのみが、置き換え設定の登録解除が可能となる。
【表2】
【0029】
また、デバイス置き換え機能部526は、代替デバイスからのアプリ実行リクエストを、置き換える前のデバイス3(例えば、故障したデバイス3)からのアプリ実行リクエストに変換する。ここで、アプリ実行リクエストは、アプリケーション4の実行を要求するリクエストである。これにより、デバイス3を代替デバイスに置き換えた場合に、ユーザによるデバイス3から代替デバイスへのライセンスの切り替えを不要となる。その結果、デバイス3が故障して一時的に代替デバイスを利用する際に、デバイス3に紐づいたライセンスの切り替え、デバイスの設定の引継ぎ等を行うことなく、利用者がデバイス3の切り替えを容易にすることができる。
【0030】
アプリ実行機能部525は、デバイス3からのMQTT(Message Queuing Telemetry Transport)プロトコルでのアプリ実行リクエストに基づきアプリケーション4を実行する。また、アプリ実行機能部525は、デバイス置き換え機能部526によって変換されたアプリ実行リクエストに基づいてアプリケーション4を実行する。
【0031】
ユーザ端末2は、中継アプリケーションを有する。中継アプリケーションは、ユーザ認証画面、デバイス設定画面、デバイス登録画面、デバイス置き換え画面、およびライセンス管理画面をユーザ端末2に表示させる。
【0032】
ユーザ認証画面は、IoTプラットフォーム5のユーザ認証機能部521を利用するための画面である。デバイス設定画面は、デバイス3のデバイス設定値を管理する画面である。デバイス登録画面は、デバイス3の登録および登録解除を管理する画面である。
【0033】
ライセンス管理画面は、デバイス3が利用するアプリケーション4のライセンスの利用登録および利用登録解除する画面である。デバイス置き換え画面は、デバイス3の置き換えおよび置き換え解除を行う画面である。
【0034】
また、中継アプリケーションは、アプリ実行要求機能部527を有する。アプリ実行要求機能部527は、デバイス3からの要求により、MQTTプロトコルに従って、IoTプラットフォーム5へアプリ実行リクエストを送信する。
【0035】
次に、
図5を用いて、本実施の形態にかかるIoTシステムにおけるユーザ端末2の中継アプリケーションとIoTプラットフォーム5間の通信処理の一例について説明する。
図5は、本実施の形態にかかるユーザ端末の中継アプリケーションとIoTプラットフォーム間での通信処理の一例を説明するための図である。
【0036】
MQTTプロトコルは、多対多の通信を行うPub/Subの通信方式のプロトコルである。Pub/Subの通信方式は、パブリッシャー、ブローカー、およびサブスクライバーの3つから構成される。パブリッシャーのデータの送付先(URI:Uniform Resource Identifier)をトピックと呼び、文字列から構成される。
【0037】
トピックは、以下の特徴がある。
UTF-8 文字列
全長が65,535バイト以下
「/」から始まる
トピックには階層があり、各階層は「/」で区切られる
「+,*」はワイルドカードとして購読登録に利用し、「+」は単一階層のワイルドカード(例:/topic/sample/+/test)、「*」はそれ以降の全ての階層を指すワイルドカードでトピックの最後にしかつけられない。(例:/topic/sample/#)
【0038】
サブスクライバーは、ブローカーに、どのトピックを購読(サブスクライブ)するかを登録する。パブリッシャーは、トピックに対してメッセージを発行(パブリッシュ)を行う。ブローカーは、トピックに送られたデータをそのトピックを購読しているサブスクライバーへ送信する。
【0039】
図6は、本実施の形態にかかるIoTシステムにおけるユーザの認証処理の流れの一例を示すシーケンス図である。次に、
図6を用いて、本実施の形態にかかるIoTシステムにおけるユーザの認証処理の流れの一例について説明する。
【0040】
まず、ユーザは、ユーザ端末2の中継アプリケーションを起動し、ユーザ認証画面で、メールアドレスおよびパスワードを入力し、ログインボタンを押下する(ステップS601)。次いで、中継アプリケーションは、IoTプラットフォーム5へユーザ認証(ログイン)のリクエストを送信する(ステップS602)。
【0041】
IoTプラットフォーム5のユーザ認証機能部521は、ユーザ情報(例えば、メールアドレス)およびパスワードを検証し、中継アプリケーションにログインしたユーザ(すなわち、ユーザ情報が示すユーザ)が予め登録されたユーザであり、かつ、パスワードが予め登録されたパスワードと一致するか否かを判断する。
【0042】
そして、ユーザ認証機能部521は、中継アプリケーションにログインしたユーザが予め設定されたユーザでありかつパスワードが予め登録されたパスワードである場合、ログインが成功したことを中継アプリケーションの通知し、それ以外はログインが失敗したことを通知する(ステップS603)。中継アプリケーションは、ユーザ認証画面に、ユーザ認証機能部521から通知されたユーザの認証結果を表示する(ステップS604)。
【0043】
図7は、本実施の形態にかかるIoTシステムにおけるデバイスの登録処理の流れの一例を示すシーケンス図である。次に、
図7を用いて、本実施の形態にかかるIoTシステムにおけるデバイス3の登録処理の流れの一例について説明する。ここでは、ユーザは、ユーザ認証画面から、IoTプラットフォーム5に対して予めログインしているものとする。
【0044】
ユーザは、ユーザ端末2の中継アプリケーションを起動し、デバイス登録画面を表示する。ユーザによって、デバイス登録画面において、登録するデバイス3が選択されかつ登録ボタンが押下されると(ステップS701)、中継アプリケーションは、IoTプラットフォーム5に登録するデバイス3のデバイス種別およびシリアルIDの登録をリクエストする(ステップS702)。
【0045】
IoTプラットフォーム5のデバイス登録機能部523は、中継アプリケーションから受信したデバイス種別およびシリアルIDを登録して、デバイス3を登録する。デバイス登録機能部523は、デバイス3の登録が成功すると、中継アプリケーションにデバイス3の登録結果(例えば、デバイス3の名称であるモノ名称、デバイス証明書)を返す(ステップS703)。一方、デバイス3の登録に失敗した場合、デバイス登録機能部523は、中継アプリケーションに対してエラーを返す。この場合、中継アプリケーションは、デバイス証明書は取得できない。
【0046】
次に、中継アプリケーションは、IoTプラットフォーム5にデバイス設定値の初期値である初期設定値の登録を要求する(ステップS704)。その際、中継アプリケーションは、デバイス種別、シリアルID、およびデバイス初期設定値をIoTプラットフォーム5に渡す。そして、IoTプラットフォーム5のデバイス設定管理機能部522は、デバイス種別、シリアルID、デバイス初期設定値、およびユーザ情報を、デバイス設定データベースに登録する。また、デバイス設定管理機能部522は、デバイス設定値の登録結果を中継アプリケーションに返す(ステップS705)。
【0047】
次に、ユーザ端末2の中継アプリケーションは、IoTプラットフォーム5に対して、デバイス3においてアプリケーション4を実行するための1つのライセンスの付与をリクエストする(ステップS706)。IoTプラットフォーム5のライセンス管理機能部524は、リクエストされたライセンスをユーザが保持していた場合、デバイス3に当該ライセンスを割り当て、ライセンス付与結果を中継アプリケーションに返す(ステップS707)。中継アプリケーションは、デバイス登録画面でデバイス登録の結果を表示する(ステップS708)。
【0048】
図8は、本実施の形態にかかるIoTシステムにおけるデバイス設定値の変更処理の流れの一例を示すシーケンス図である。次に、
図8を用いて、本実施の形態にかかるIoTシステムにおけるデバイス設定値の変更処理の流れの一例について説明する。ここでは、ユーザは、ユーザ認証画面から、IoTプラットフォーム5に対して予めログインしているものとする。
【0049】
ユーザは、ユーザ端末2の中継アプリケーションを起動し、デバイス設定画面を表示する。次いで、ユーザは、デバイス設定画面において、登録済みのデバイス3のうちデバイス設定値を変更するデバイス3を選択し、設定ボタンを押下する(ステップS801)。次に、デバイス設定画面にデバイス設定値を表示するため、中継アプリケーションは、IoTプラットフォーム5から、選択したデバイス3のデバイス設定値を取得する(ステップS802)。その際、中継アプリケーションは、選択したデバイス3のデバイス種別およびシリアルID等をIoTプラットフォーム5に渡して、当該選択したデバイス3のデバイス設定値を取得する。
【0050】
IoTプラットフォーム5のデバイス設定管理機能部522は、中継アプリケーションから受信したデバイス種別およびシリアルIDをクエリにして、デバイス設定データベースからデバイス設定値(設定情報)を取得し、中継アプリケーションに返す(ステップS803)。中継アプリケーションは、ユーザにより選択されたデバイス3のデバイス設定画面を表示する(ステップS804)。その際、中継アプリケーションは、IoTプラットフォーム5から取得したデバイス設定値をデバイス設定画面に含める。
【0051】
次いで、ユーザが、デバイス設定画面においてデバイス設定値を変更し、OKボタンを押下すると(ステップS805)、中継アプリケーションは、IoTプラットフォーム5にデバイス設定値の変更をリクエストする(ステップS806)。その際、中継アプリケーションは、デバイス種別、シリアルID、およびデバイス設定値をIoTプラットフォーム5に渡す。
【0052】
IoTプラットフォーム5のデバイス設定管理機能部522は、リクエストされたデバイス設定値でデバイス設定データベースを更新する。IoTプラットフォーム5のデバイス設定管理機能部522は、デバイス設定値の登録結果を中継アプリケーションに返す(ステップS807)。その後、中継アプリケーションは、デバイス設定画面にデバイス設定値の変更結果を表示する(ステップS808)。
【0053】
図9は、本実施の形態にかかるIoTシステムにおけるデバイス置き換え許可の設定処理の流れの一例を示すシーケンス図である。次に、
図9を用いて、本実施の形態にかかるIoTシステムにおけるデバイス置き換え許可の設定処理の流れの一例について説明する。ここでは、ユーザは、ユーザ認証画面から、IoTプラットフォーム5に対して予めログインしているものとする。また、ここでは、故障したデバイス3を代替元デバイスAとし、置き換えるデバイス3を代替先デバイスBとする。ユーザは、代替元デバイスAが故障し復旧が見込めない場合、サービス提供者へ連絡し(ステップS901)、デバイス3の交換を依頼する。サービス提供者は、代替先デバイスBを手配し、入手する(ステップS902)。
【0054】
サービス提供者は、サービス提供者端末1が有するサービス提供者向けアプリケーション(デバイス置き換え許可機能部101)を用いて、故障した代替元デバイスAを選択し、代替先デバイスBのデバイス種別およびシリアルIDを入力し、かつ置き換え許可ボタンを押下する(ステップS903)。サービス提供者向けアプリケーションは、IoTプラットフォーム5にデバイス置き換え許可の登録リクエストを送信する(ステップS904)。その際、サービス提供者向けアプリケーションは、ユーザのメールアドレス、代替元デバイスAのデバイス種別およびシリアルID、代替先デバイスBのデバイス種別およびシリアルIDを、デバイス置き換え許可の登録リクエストに含める。本実施の形態は、ユーザのメールアドレスをデバイス置き換え許可の登録リクエストに含めているが、ユーザを特定可能なユーザ情報であれば良く、ユーザのメールアドレス以外のユーザIDを、デバイス置き換え許可の登録リクエストに含めても良い。
【0055】
IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス置き換えデータベースに、ユーザ情報としてのメールアドレス、代替元デバイスAの代替元デバイス情報、代替先デバイスBの代替先デバイス情報を登録し、サービス提供者向けアプリケーションに登録結果を返す(ステップS905)。サービス提供者向けアプリケーションは、サービス提供者に置き換え許可の結果を表示する(ステップS906)。サービス提供者は、ユーザへ代替先デバイスBを送り、連絡する(ステップS907)。
【0056】
図10は、本実施の形態にかかるIoTシステムにおけるデバイスの置き換えの設定処理の流れの一例を示すシーケンス図である。次に、
図10を用いて、本実施の形態にかかるIoTシステムにおけるデバイス3の置き換えの設定処理の流れの一例について説明する。
【0057】
ユーザは、あらかじめ代替先デバイスを入手しているものとする。また、ユーザは、ユーザ端末2の中継アプリケーションを起動し、ユーザ認証画面から、IoTプラットフォーム5のユーザ認証機能部521に対してログインしているものとする。ここでは、故障したデバイス3を代替元デバイスAとし、置き換えるデバイス3を代替先デバイスBとする。
【0058】
ユーザは、まず、中継アプリケーションを起動し、デバイス置き換え画面を表示する。次に、ユーザは、デバイス置き換え画面において、代替元デバイスAを選択し、置き換えボタンを押下する(ステップS1001)。中継アプリケーションは、IoTプラットフォーム5に対して、選択した代替元デバイスAが置き換え可能なデバイス3の一覧取得をリクエストする(ステップS1002)。その際、中継アプリケーションは、ユーザ情報(例えば、メールアドレス)、代替元デバイスAのデバイス種別およびシリアルIDを、IoTプラットフォーム5に渡す。
【0059】
IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス置き換えデータベースを、ユーザ情報(メールアドレス)、代替元デバイスAのデバイス種別およびデバイスIDで検索し、代替元デバイスAに置き換え可能なデバイス3の一覧を取得し、中継アプリケーションに返す(ステップS1003)。中継アプリケーションは、デバイス3の一覧をデバイス置き換え画面に表示する(ステップS1004)。
【0060】
ユーザは、デバイス置き換え画面で、デバイス3の一覧から代替先デバイスBを選択し、置き換えボタンを押下する(ステップS1005)。中継アプリケーションは、IoTプラットフォーム5に代替先デバイスBのデバイス登録をリクエストする(ステップS1006)。その際、中継アプリケーションは、代替先デバイスBのデバイス種別およびシリアルIDを、IoTプラットフォーム5に渡す。
【0061】
IoTプラットフォーム5のデバイス登録機能部523は、代替先デバイスBを登録し、デバイス登録結果(例えば、代替先デバイスBのモノ名称)と、デバイス証明書を中継アプリケーションに返す(ステップS1007)。中継アプリケーションは、IoTプラットフォーム5に代替元デバイスAの置き換え設定を登録する(ステップS1008)。その際、中継アプリケーションは、代替元デバイスAのデバイス種別、シリアルID、およびモノ名称をIoTプラットフォーム5に渡す。
【0062】
IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス置き換えデータベースを、ユーザ情報(例えば、メールアドレス)、代替元デバイスAのデバイス種別およびシリアルIDで検索し、代替元デバイスAのモノ名称を登録する。また、IoTプラットフォーム5のデバイス置き換え機能部526は、MQTTトピックの購読設定(/service/{デバイスBのモノ名称}/app/request -> /service/{デバイスAのモノ名称}/app/request、/service/{デバイスAのモノ名称}/app/response -> /service/{デバイスBのモノ名称}/app/response)を行う(ステップS1009)。すなわち、デバイス置き換え機能部526は、MQTTによる代替先デバイスBのリクエストを代替元デバイスAのリクエストに変換し、代替元デバイスAのレスポンスを代替先デバイスBのレスポンスに変換することを設定する。IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス3の置き換え登録の結果を中継アプリケーションに返す(ステップS1010)。ただし、サービス提供者が、デバイス置き換え許可設定を行っていない場合には、デバイス3の置き換えを登録することはできない。
【0063】
中継アプリケーションは、IoTプラットフォーム5のデバイス設定管理機能部522に対して、当該デバイス設定管理機能部522で管理している代替元デバイスAのデバイス設定値を代替先デバイスBにコピーすることをリクエストする(ステップS1011)。IoTプラットフォーム5のデバイス設定管理機能部522は、デバイス設定データベースの代替元デバイスAのデバイス設定値を取得し、代替先デバイスBのデバイス設定値にコピーし、中継アプリケーションに対してデバイス設定値のコピー結果を返す(ステップS1012)。ただし、サービス提供者が、デバイス3の置き換え許可設定を行っていない場合、デバイス設定値のコピーは失敗する。その後、中継アプリケーションは、デバイス置き換え画面に、デバイス3の置き換えの結果を表示する(ステップS1013)。
【0064】
図11は、本実施の形態にかかるIoTシステムにおけるデバイスによるアプリケーションの実行処理の流れの一例を示すシーケンス図である。次に、
図11を用いて、本実施の形態にかかるIoTシステムにおけるデバイス3によるアプリケーション4の実行処理の流れの一例について説明する。ここでは、デバイス3の登録または代替先デバイスBの置き換え設定が完了し、デバイス証明書を取得しているものとする。また、ここでは、故障したデバイス3を代替元デバイスAとし、置き換えるデバイス3を代替先デバイスBとする。
【0065】
デバイス3は、中継アプリケーション(アプリ実行要求機能部527)に対して、アプリケーション4の実行を要求する(ステップS1101)。アプリ実行要求機能部527は、IoTプラットフォーム5のデバイス登録機能部523に対してデバイス証明書を送付して、デバイス登録機能部523からデバイス3の認可を取得する(ステップS1102)。IoTプラットフォーム5のデバイス登録機能部523は、デバイス3のアクセストークンをアプリ実行要求機能部527に返す(ステップS1103)。
【0066】
アプリ実行要求機能部527は、IoTプラットフォーム5のアプリ実行機能部525に対して、トピック名:/service/{デバイスのモノ名称}/app/requestをパブリッシュし、MQTTでアプリケーション4の実行を要求する(ステップS1104)。すなわち、アプリ実行要求機能部527は、デバイス3のアクセストークンをアプリ実行機能部525に渡す。
【0067】
IoTプラットフォーム5のアプリ実行機能部525は、アプリケーション4を実行する(ステップS1105)。このとき、デバイス3の置き換え設定(代替元デバイスAを代替先デバイスBに置き換える設定)がなされている場合、トピック名:/service/{デバイスBのモノ名称}/app/requestは、トピック名:/service/{デバイスAのモノ名称}/app/requestが購読(サブスクライブ)されてアプリケーション4が実行されるため、アプリケーション4は、代替元デバイスAにより実行されたものとなる。
【0068】
アプリケーション4が実行されると、アプリケーション4は、IoTプラットフォーム5に実行結果を返す(ステップS1106)。このとき、デバイス3の置き換え設定(代替元デバイスAを代替先デバイスBに置き換える設定)がなされている場合、アプリ実行機能部525は、トピック名:/service/{デバイスAのモノ名称}/app/responseは、トピック名:/service/{デバイスBのモノ名称}/app/responseを購読し、アプリケーション4の実行結果を取得する。その後、IoTプラットフォーム5のアプリ実行機能部525は、中継アプリケーションのアプリ実行要求機能部527にアプリケーション4の実行結果を返す(ステップS1107)。
【0069】
図12は、本実施の形態にかかるIoTシステムにおけるデバイスの置き換え設定の解除処理の流れの一例を示すシーケンス図である。次に、
図12を用いて、本実施の形態にかかるIoTシステムにおけるデバイス3の置き換え設定の解除処理の流れの一例について説明する。ここでは、ユーザは、あらかじめIoTシステムにログインしているものとする。また、ここでは、代替元デバイスAから代替先デバイスBへの置き換え設定が完了しているものとする。また、ここでは、故障したデバイス3を代替元デバイスA、置き換えるデバイス3を代替先デバイスBとする。
【0070】
ユーザは、ユーザ端末2の中継アプリケーションを起動して、置き換え設定画面を表示する。また、ユーザは、置き換え設定画面において、代替元デバイスAを選択し、置き換え解除ボタンを押下する(ステップS1201)。中継アプリケーションは、デバイスAがIoTシステムに接続されていることを確認し、代替元デバイスAがIoTシステムに接続されている場合は、IoTプラットフォーム5のデバイス設定管理機能部522に対して、代替先デバイスBのデバイス設定値を代替元デバイスAにコピーすることをリクエストする(ステップS1202)。その際、中継アプリケーションは、代替元デバイスAのデバイス種別およびシリアルID、代替先デバイスBのデバイス種別およびシリアルIDを、IoTプラットフォーム5のデバイス設定管理機能部522に通知する。
【0071】
IoTプラットフォーム5のデバイス設定管理機能部522は、デバイス設定データベースから、代替先デバイスBのデバイス設定値を取得し、代替元デバイスAのデバイス設定値にコピーし、中継アプリケーションにデバイス設定値のコピー結果を返す(ステップS1203)。ただし、サービス提供者が、デバイス3の置き換え許可設定を行っていない場合、デバイス設定値のコピーは失敗する。
【0072】
次に、中継アプリケーションは、IoTプラットフォーム5のデバイス置き換え機能部526に対して、代替元デバイスAの置き換え設定解除をリクエストする(ステップS1204)。IoTプラットフォーム5のデバイス置き換え機能部526は、MQTTトピックの購読設定(/service/{デバイスBのモノ名称}/app/request -> /service/{デバイスAのモノ名称}/app/request、/service/{デバイスAのモノ名称}/app/response -> /service/{デバイスBのモノ名称}/app/response)を削除する(ステップS1205)。すなわち、デバイス置き換え機能部526は、MQTTによる代替先デバイスBからのリクエストを代替元デバイスAのリクエストに変換し、代替元デバイスAのレスポンスを代替先デバイスBのレスポンスに変換する。IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス置き換えデータベースから、ユーザ情報(例えば、メールアドレス)、代替元デバイスAのデバイス種別およびシリアルIDを検索し、レコードを削除する(ステップS1206)。さらに、IoTプラットフォーム5のデバイス置き換え機能部526は、デバイス3の置き換え登録の結果を中継アプリケーションに返す(ステップS1207)。
【0073】
その後、中継アプリケーションは、IoTプラットフォーム5のデバイス登録機能部523に対して、代替先デバイスBのデバイス登録解除をリクエストする(ステップS1208)。そして、IoTプラットフォーム5のデバイス登録機能部523は、中継アプリケーションに対してデバイス登録解除の結果を返す(ステップS1209)。さらに、中継アプリケーションは、置き換え設定画面に、デバイス登録解除の結果を表示する。
【0074】
このように、本実施の形態にかかるIoTシステムによれば、デバイス3を代替デバイスに置き換えた場合に、ユーザによるデバイス3から代替デバイスへのライセンスの切り替えを不要となる。その結果、デバイス3が故障して一時的に代替デバイスを利用する際に、デバイス3に紐づいたライセンスの切り替え、デバイスの設定の引継ぎ等を行うことなく、利用者がデバイス3の切り替えを容易にすることができる。
【0075】
なお、本実施の形態のIoTプラットフォーム5で実行されるプログラムは、ROM502等に予め組み込まれて提供される。本実施の形態のIoTプラットフォーム5で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0076】
さらに、本実施の形態のIoTプラットフォーム5で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態のIoTプラットフォーム5で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0077】
本実施の形態のIoTプラットフォーム5で実行されるプログラムは、上述した各部(ユーザ認証機能部521、デバイス設定管理機能部522、デバイス登録機能部523、ライセンス管理機能部524、アプリ実行機能部525、およびデバイス置き換え機能部526)を含むモジュール構成となっており、実際のハードウェアとしてはCPU501(プロセッサの一例)が上記ROM502からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、ユーザ認証機能部521、デバイス設定管理機能部522、デバイス登録機能部523、ライセンス管理機能部524、アプリ実行機能部525、およびデバイス置き換え機能部526が主記憶装置上に生成されるようになっている。
【符号の説明】
【0078】
1 サービス提供者端末
2 ユーザ端末
3 デバイス
4 アプリケーション
5 IoTプラットフォーム
501 CPU
502 ROM
503 RAM
521 ユーザ認証機能部
522 デバイス設定管理機能部
523 デバイス登録機能部
524 ライセンス管理機能部
525 アプリ実行機能部
526 デバイス置き換え機能部
527 アプリ実行要求機能部
【先行技術文献】
【特許文献】
【0079】