(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-24
(45)【発行日】2022-02-01
(54)【発明の名称】機器システム、ジョブ処理方法、情報処理装置、プログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20220125BHJP
H04N 1/00 20060101ALI20220125BHJP
B41J 29/00 20060101ALI20220125BHJP
B41J 29/38 20060101ALI20220125BHJP
B41J 29/42 20060101ALI20220125BHJP
【FI】
G06F3/12 338
H04N1/00 127B
G06F3/12 322
B41J29/00 E
B41J29/38
B41J29/42 F
B41J29/00 Z
(21)【出願番号】P 2018047363
(22)【出願日】2018-03-14
【審査請求日】2020-12-11
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】▲高▼橋 里奈
【審査官】松浦 かおり
(56)【参考文献】
【文献】特開2015-032025(JP,A)
【文献】特開2007-257015(JP,A)
【文献】特開2013-025774(JP,A)
【文献】特開2014-199653(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09- 3/12
B41J 29/00-29/70
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
機器と、前記機器にジョブを送信する情報処理装置とを有する機器システムであって、
前記機器は、
ユーザが使用する端末装置からジョブの実行要求元の識別情報を取得する識別情報取得手段と、
前記識別情報取得手段が取得した前記ジョブの実行要求元の識別情報と前記機器を識別する機器識別情報を前記情報処理装置に送信して、前記ジョブに関する情報を取得するジョブ取得手段と、
前記ジョブ取得手段が取得したジョブを実行するジョブ実行手段と、
前記ユーザが使用する端末装置から端末装置と前記機器のペアリング要求を取得した場合、前記情報処理装置に対し前記ジョブの実行要求元の識別情報と前記機器識別情報を送信してペアリングの識別情報の生成を要求する要求手段と、
前記要求手段が前記情報処理装置から取得した前記ペアリングの識別情報を画面に表示する第一の表示制御手段と、を有し、
前記情報処理装置は、
前記ジョブの実行要求元の識別情報、前記機器識別情報、及び、前記ジョブの識別情報を対応付けて記憶する情報記憶手段と、
前記ジョブの識別情報に対応付けられた前記ジョブに関する情報を記憶するジョブ記憶手段と、
前記機器から受信した前記ジョブの実行要求元の識別情報に対応付けられた前記機器識別情報が、前記機器から受信した前記機器識別情報と一致する場合、前記ジョブに関する情報を前記機器に送信するジョブ管理手段と、
前記ペアリングの識別情報の生成要求に対し前記ペアリングの識別情報を生成して前記機器に送信する識別情報処理手段と、を有し、
前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報に基づいて前記ペアリングの識別情報を検証する機器システム。
【請求項2】
前記ペアリング要求を送信した前記端末装置は、前記ペアリングの識別情報の入力を受け付ける画面
を表示する第二の表示制御手段と、
前記画面に対する前記ペアリングの識別情報の入力を受け付ける受付手段と、を有し、
前記情報処理装置の識別情報処理手段は、前記受付手段が受け付けた前記ペアリングの識別情報を前記端末装置から取得することを特徴とする
請求項1に記載の機器システム。
【請求項3】
前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報の組み合わせが正しいと検証した場合、その旨、前記ジョブの実行要求元の識別情報、及び、前記機器識別情報を対応付けて前記情報記憶手段にペアリングデータとして記憶させることを特徴とする
請求項2に記載の機器システム。
【請求項4】
前記情報処理装置の前記ジョブ管理手段は、前記端末装置から前記ジョブの実行要求元の識別情報と共にジョブの登録を受け付けた場合、前記ジョブの実行要求元の識別情報を有する前記ペアリングデータにジョブを識別する前記ジョブの識別情報を登録し、
前記機器から受信した前記ジョブの実行要求元の識別情報を有する前記ペアリングデータに登録された前記ジョブの識別情報のジョブに関する情報を前記機器に送信することを特徴とする
請求項3に記載の機器システム。
【請求項5】
前記識別情報処理手段は、1つの前記ペアリングデータに、前記ペアリングの識別情報の生成を要求した複数の前記機器の機器識別情報を登録し、
前記ジョブ管理手段は、前記機器から受信した前記ジョブの実行要求元の識別情報を有する前記ペアリングデータに、該機器が送信した前記機器識別情報が含まれる場合、前記ジョブに関する情報を前記機器に送信することを特徴とする
請求項4に記載の機器システム。
【請求項6】
前記識別情報処理手段は、1つの前記ペアリングデータに、前記ペアリングの識別情報の生成を要求した最後の前記機器の機器識別情報のみを登録することを特徴とする
請求項4に記載の機器システム。
【請求項7】
前記ジョブの実行要求元の識別情報は、前記端末装置に固有の情報であることを特徴とする請求項
1~6のいずれか1項に記載の機器システム。
【請求項8】
前記ペアリングデータには前記端末装置のユーザを識別するユーザ識別情報が登録されており、
前記端末装置から前記ユーザ識別情報と共に前記ペアリングデータの削除が要求された場合、前記識別情報処理手段は前記ユーザ識別情報を含む前記ペアリングデータを削除することを特徴とする請求項
3~6のいずれか1項に記載の機器システム。
【請求項9】
機器と、前記機器にジョブを送信する情報処理装置とを有する機器システムが行うジョブ処理方法であって、
前記機器は、
識別情報取得手段が、ユーザが使用する端末装置からジョブの実行要求元の識別情報を取得するステップと、
ジョブ取得手段が、前記識別情報取得手段が取得した前記ジョブの実行要求元の識別情報と前記機器を識別する機器識別情報を前記情報処理装置に送信して、前記ジョブに関する情報を取得するステップと、
ジョブ実行手段が、前記ジョブ取得手段が取得したジョブを実行するステップと、
要求手段が、前記ユーザが使用する端末装置から端末装置と前記機器のペアリング要求を取得した場合、前記情報処理装置に対し前記ジョブの実行要求元の識別情報と前記機器識別情報を送信してペアリングの識別情報の生成を要求するステップと、
第一の表示制御手段が、前記要求手段が前記情報処理装置から取得した前記ペアリングの識別情報を画面に表示するステップと、を有し、
前記情報処理装置は、
前記ジョブの実行要求元の識別情報、前記機器識別情報、及び、前記ジョブの識別情報を対応付けて記憶する情報記憶手段と、前記ジョブの識別情報に対応付けられた前記ジョブに関する情報を記憶するジョブ記憶手段と、を参照し、
ジョブ管理手段が、前記機器から受信した前記ジョブの実行要求元の識別情報に対応付けられた前記機器識別情報が、前記機器から受信した前記機器識別情報と一致する場合、前記ジョブに関する情報を前記機器に送信するステップと、
識別情報処理手段が、前記ペアリングの識別情報の生成要求に対し前記ペアリングの識別情報を生成して前記機器に送信するステップと、を有し、
前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報に基づいて前記ペアリングの識別情報を検証するジョブ処理方法。
【請求項10】
ユーザが使用する端末装置からジョブの実行要求元の識別情報を取得する識別情報取得手段と、
前記識別情報取得手段が取得した前記ジョブの実行要求元の識別情報と機器を識別する機器識別情報を情報処理装置に送信して、前記ジョブに関する情報を取得するジョブ取得手段と、
前記ジョブ取得手段が取得したジョブを実行するジョブ実行手段と、
前記ユーザが使用する端末装置から端末装置と前記機器のペアリング要求を取得した場合、前記情報処理装置に対し前記ジョブの実行要求元の識別情報と前記機器識別情報を送信してペアリングの識別情報の生成を要求する要求手段と、
前記要求手段が前記情報処理装置から取得した前記ペアリングの識別情報を画面に表示する第一の表示制御手段と、を有する機器とネットワークを介して通信する情報処理装置であって、
前記ジョブの実行要求元の識別情報、前記機器識別情報、及び、前記ジョブの識別情報を対応付けて記憶する情報記憶手段と、
前記ジョブの識別情報に対応付けられた前記ジョブに関する情報を記憶するジョブ記憶手段と、
前記機器から受信した前記ジョブの実行要求元の識別情報に対応付けられた前記機器識別情報が、前記機器から受信した前記機器識別情報と一致する場合、前記ジョブに関する情報を前記機器に送信するジョブ管理手段と、
前記ペアリングの識別情報の生成要求に対し前記ペアリングの識別情報を生成して前記機器に送信する識別情報処理手段と、を有し、
前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報に基づいて前記ペアリングの識別情報を検証する情報処理装置。
【請求項11】
ユーザが使用する端末装置からジョブの実行要求元の識別情報を取得する識別情報取得手段と、
前記識別情報取得手段が取得した前記ジョブの実行要求元の識別情報と機器を識別する機器識別情報を情報処理装置に送信して、前記ジョブに関する情報を取得するジョブ取得手段と、
前記ジョブ取得手段が取得したジョブを実行するジョブ実行手段と、
前記ユーザが使用する端末装置から端末装置と前記機器のペアリング要求を取得した場合、前記情報処理装置に対し前記ジョブの実行要求元の識別情報と前記機器識別情報を送信してペアリングの識別情報の生成を要求する要求手段と、
前記要求手段が前記情報処理装置から取得した前記ペアリングの識別情報を画面に表示する第一の表示制御手段と、有する機器とネットワークを介して通信する情報処理装置を、
前記ジョブの実行要求元の識別情報、前記機器識別情報、及び、前記ジョブの識別情報を対応付けて記憶する情報記憶手段と、
前記ジョブの識別情報に対応付けられた前記ジョブに関する情報を記憶するジョブ記憶手段と、
前記機器から受信した前記ジョブの実行要求元の識別情報に対応付けられた前記機器識別情報が、前記機器から受信した前記機器識別情報と一致する場合、前記ジョブに関する情報を前記機器に送信するジョブ管理手段と、
前記ペアリングの識別情報の生成要求に対し前記ペアリングの識別情報を生成して前記機器に送信する識別情報処理手段、として機能させ、
前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報に基づいて前記ペアリングの識別情報を検証するプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機器システム、ジョブ処理方法、情報処理装置、及びプログラムに関する
【背景技術】
【0002】
クラウドコンピューティングを利用した機器システムが知られている。例えば、ユーザがクラウド上で管理している文書を手元の端末装置にダウンロードして、近くにある複合機に送信して印刷することができる。また、ユーザが管理している文書を端末装置からクラウドサーバに登録しておき、近くにある複合機がクラウドサーバから文書をダウンロードして印刷することができる。このようなクラウドコンピューティングを利用した印刷では、第三者による他人の文書の印刷を防ぎつつ、簡単な操作でユーザが文書を印刷できることが望まれる。
【0003】
このような要求に対しアクセストークンを使用した機器システムが考案されている(例えば、特許文献1参照。)。特許文献1には、ユーザからの要求に応じ、印刷データ取得の権限を認可するアクセストークンをサーバがユーザの端末装置に送信し、ユーザが論理プリンタに印刷指示を行い、画像形成装置に端末装置からアクセストークンを送信すると、画像形成装置がそのアクセストークンをサーバに送信して、サーバが論理プリンタ内の印刷データを画像形成装置に提供する印刷システムについて開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載された印刷システムは、第三者が印刷などのジョブを実行できるおそれがあるという問題がある。すなわち、ユーザの端末装置に保持されたアクセストークンが盗聴されると、第三者がアクセストークンを使って他人の文書を印刷できてしまう。
【0005】
本発明は上記課題に鑑み、第三者によりジョブが実行されることを抑制できる機器システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題に鑑み、本発明は、機器と、前記機器にジョブを送信する情報処理装置とを有する機器システムであって、
前記機器は、
ユーザが使用する端末装置からジョブの実行要求元の識別情報を取得する識別情報取得手段と、前記識別情報取得手段が取得した前記ジョブの実行要求元の識別情報と前記機器を識別する機器識別情報を前記情報処理装置に送信して、前記ジョブに関する情報を取得するジョブ取得手段と、前記ジョブ取得手段が取得したジョブを実行するジョブ実行手段と、前記ユーザが使用する端末装置から端末装置と前記機器のペアリング要求を取得した場合、前記情報処理装置に対し前記ジョブの実行要求元の識別情報と前記機器識別情報を送信してペアリングの識別情報の生成を要求する要求手段と、前記要求手段が前記情報処理装置から取得した前記ペアリングの識別情報を画面に表示する第一の表示制御手段と、を有し、
前記情報処理装置は、
前記ジョブの実行要求元の識別情報、前記機器識別情報、及び、前記ジョブの識別情報を対応付けて記憶する情報記憶手段と、前記ジョブの識別情報に対応付けられた前記ジョブに関する情報を記憶するジョブ記憶手段と、前記機器から受信した前記ジョブの実行要求元の識別情報に対応付けられた前記機器識別情報が、前記機器から受信した前記機器識別情報と一致する場合、前記ジョブに関する情報を前記機器に送信するジョブ管理手段と、 前記ペアリングの識別情報の生成要求に対し前記ペアリングの識別情報を生成して前記機器に送信する識別情報処理手段と、を有し、前記識別情報処理手段は、前記端末装置から送信された前記ジョブの実行要求元の識別情報と前記ペアリングの識別情報に基づいて前記ペアリングの識別情報を検証する。
【発明の効果】
【0007】
第三者によりジョブが実行されることを抑制できる機器システムを提供することができる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態の機器システムの動作の概略を説明する図の一例である。
【
図2】本実施形態に係る情報処理システムの一例の構成図である。
【
図3】クラウド連携プリントの流れを説明する図である。
【
図4】本実施形態に係るコンピュータの一例のハードウェア構成図である。
【
図5】本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【
図6】ジョブを実行前の事前設定を説明する図の一例である。
【
図7】ペアリングが完了した後に機器システムがジョブを実行する手順を示す図の一例である。
【
図8】機器システムが有する端末装置、サービス提供システム、及び、複合機の機能をブロック状に示す機能ブロック図の一例である。
【
図9】認証情報保存部に保存されるペアリングデータの一例を示す図である。
【
図10】ユーザデータ、デバイスデータの一例を示す図である。
【
図11】ジョブ記憶部に記憶されているジョブ情報の一例を示す図である。
【
図12】複合機が起動した際の動作手順を示すシーケンス図の一例である。
【
図13】ペアリング実行時のシーケンス図の一例である。
【
図14】端末装置の表示装置に表示される画面例を示す図である。
【
図15】端末装置の表示装置に表示される画面例を示す図である。
【
図16】ジョブの登録とジョブ実行時のシーケンス図の一例である。
【
図17】ペアリング解除時の動作手順を示すシーケンス図の一例である。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態の一例として、機器システム100と機器システム100が行うジョブ処理方法について図面を参照しながら説明する。
【0010】
<機器システムの動作の概略>
図1は本実施形態の機器システム100の動作の概略を説明する図の一例である。機器システム100は、サービス提供システム10、外部プリントシステム40、ユーザが携帯する端末装置30、及び、複合機20を有する。なお、
図1では複合機20がジョブとして印刷を実行する場合を説明する。
(1)ユーザは端末装置30からサービス提供システム10へジョブを登録する。端末装置30にはジョブID(詳細にいうと後述されるコマンドID)が送信される。
(2)端末装置30は登録されたジョブのジョブID及び端末装置30の固有値をサービス提供システム10に登録する。サービス提供システム10は後述するペアリングという作業により予め取得してある複合機20のデバイスIDに固有値を対応付けておく。
(3)次に、ユーザがジョブを出力したい複合機20に(必要であれば接近し)、端末装置30の固有値とジョブ実行要求を例えばBluetooth Low Energy(登録商標。以下、省略する。)などの近距離無線通信で送信する。
(4)複合機20は端末装置30から受信した固有値と自機が持つ複合機20のデバイスIDをサービス提供システム10に送信する。サービス提供システム10は複合機20から送信された固有値に対応付けられているデバイスIDが、複合機20から送信されたデバイスIDと一致するか否かにより複合機20を認証する。認証が成立すると、複合機20は固有値に対応付けられているジョブIDを取得し、ジョブIDで特定されるジョブを複合機20に送信する。
(5)端末装置30は受信したジョブを実行する。
【0011】
このように、本実施形態の機器システム100は、固有値とデバイスIDがサービス提供システム10で対応付けられているので、仮に固有値が盗聴されても、サービス提供システム10に登録されている複合機20以外からは第三者がジョブを実行できない。したがって、第三者によるクラウド上のジョブの実行を抑制できる。また、ユーザは端末装置30でジョブを実行する操作を行えばよいので、簡単な操作でクラウド上のジョブを実行できる。
【0012】
仮に固有値が盗まれ、固有値が対応付けられた複合機20で第三者が実行する場合でも、ジョブが実行済みである場合には第三者がジョブを実行できない。
【0013】
<用語について>
ジョブの実行要求元の識別情報とは、ジョブの実行の要求元を識別又は特定する情報であればよい。ユーザがジョブを実行するとみなせばユーザIDであり、端末装置がジョブを実行すると見なせば端末IDである。本実施形態では、一例として端末装置の固有値という用語で説明する。
【0014】
機器とは、ジョブを実行する装置、電子機器、システム、機械等をいう。本実施形態では複合機という用語で説明する。
【0015】
機器の機器識別情報は、機器を識別又は特定する情報である。本実施形態ではデバイスIDという用語で説明する。
【0016】
ジョブに関する情報は、ジョブを実行するために必要な情報をいう。例えば、印刷データとパラメータ(印刷設定)、又は、スキャンのパラメータ(読取設定)などをいう。
【0017】
IDはIdentificationの略であり識別子や識別情報という意味である。IDは複数の対象から、ある特定の対象を一意的に区別するために用いられる名称、符号、文字列、数値又はこれらのうち1つ以上の組み合わせをいう。
【0018】
<システム構成>
まず、本実施形態に係る機器システム100のシステム構成について、
図2を参照しながら説明する。
図2は、本実施形態に係る情報処理システムの一例の構成図である。
【0019】
図2に示す機器システム100は、ユーザ環境E1、E2と、サービス提供環境E3と、外部プリントシステム40と、外部ストレージシステム60とを含み、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。
【0020】
サービス提供環境E3は、ネットワークN1を介して、クラウドサービス等の外部サービスと連携した所定のサービスを提供するシステムの提供環境である。なお、本実施形態では、外部サービスの具体例としてクラウドサービスを採用して説明するが、これに限られない。本実施形態は、例えば、ASP(Application Service Provider)によって提供されるサービスやWebサービス等のネットワークを介して提供される各種のサービスに関して適用されてもよい。
【0021】
サービス提供環境E3は、一台以上の情報処理装置で実現されるサービス提供システム10を有する。サービス提供システム10は、ネットワークN1を介して所定のサービスを提供する。
【0022】
例えば、サービス提供システム10は、後述する外部プリントシステム40により提供されるクラウドサービス(クラウドプリントサービス)と連携した印刷サービス(クラウド連携プリントサービス)を提供する。本実施形態に係るサービス提供システム10は、このようなクラウド連携プリントサービス(以降では、単に「クラウド連携プリント」とも表す。)を提供するものとして説明する。
【0023】
なお、サービス提供システム10の全部又は一部は、ユーザ環境E1に設置されていても良い。すなわち、サービス提供システム10を構成する情報処理装置の全部又は一部は、ユーザ環境E1又はE2に包含されていても良い。
【0024】
ユーザ環境E1は、例えば、複合機20を使用するユーザである企業等のシステムの提供環境である。ユーザ環境E1は、例えば、スマートフォンなどの一台以上の端末装置30を使用するユーザである企業等のシステムの提供環境である。ユーザ環境E1とユーザ環境E2は、例えばLAN(Local Area Network)等のネットワークN2を介して通信可能に接続されている。なお、ユーザ環境E1とユーザ環境E2が区別されずに1つのユーザ環境として提供されてもよい。
【0025】
本実施形態に係る複合機20は、プリント機能(印刷機能)、コピー機能、スキャン機能、ファクス(FAX)通信機能等の複数の機能を有する機器である。複合機20は、MFP(Multifunction Peripheral)と呼ばれる場合がある。なお、複合機20は、プリント機能を有するプリンタ、印刷装置、又は、画像形成装置でもよい。また、スキャン機能を有するスキャナ、又は読み取り装置でもよい。
【0026】
また、端末装置30は、ユーザの印刷指示に応じて、クラウドプリントサービスを提供する外部プリントシステムに印刷要求を送信する情報処理装置である。また、端末装置30と複合機20とは、Bluetooth(登録商標)、Bluetooth Low Energy、ZigBee(登録商標)、NFC(Near Field Communication)、赤外線通信、可視光通信、音波通信等の近距離無線通信で通信する。端末装置30は、例えばスマートフォン、タブレット端末、携帯電話、PDA(Personal Digital Assistant)、ノートPC、及び、ウェアラブルPC(例えば、腕時計型、サングラス型など)などである。ただし、端末装置30な一般的な情報処理装置の機能を有していればよく、例えばゲーム機やカーナビゲーション装置でもよい。
【0027】
外部プリントシステム40は、ネットワークN1を介してクラウドプリントサービスを提供するコンピュータシステムである。ここで、クラウドプリントサービスは、例えば、端末装置30から送信された印刷要求に基づく印刷ジョブを、予め登録されたプリンタ等の装置に送信して印刷するサービスである。外部プリントシステム40と表記しているが、サービス提供システム10の一つとして提供されてもよい。
【0028】
外部ストレージシステム60は、ネットワーク上で情報の記憶サービスを提供するシステムである。外部ストレージシステム60は一台以上の情報処理装置により実現される。本実施形態では、印刷ジョブの文書、又は、スキャンジョブでスキャンされた読取データが記憶される。
【0029】
なお、
図2に示す機器システム100の構成は一例であって、他の構成であっても良い。例えば、ユーザ環境E1に端末装置30が含まれなくても良い。また、端末装置30は、ネットワークN1に接続されていても良い。
【0030】
<クラウド連携プリント>
図3を参照しながら、本実施形態に係るサービス提供システム10により提供されるクラウド連携プリントについて説明する。
図3は、クラウド連携プリントの流れを説明する図である。なお、
図3では、ユーザがクラウドプリントサービスを利用するための登録等が完了しているものとして説明する。
【0031】
S1)まず、端末装置30は、受け付けたユーザの操作に応じて、当該端末装置30にインストールされているアプリケーション等において印刷指示を行うことで、印刷対象データ等を含む印刷要求を外部プリントシステム40に送信する。なお、印刷対象データとは、印刷の対象となるデータのことであり、例えば、文書データや画像データ等が挙げられる。
【0032】
S2)外部プリントシステム40は、端末装置30から印刷要求を受信すると、当該印刷要求に基づく印刷ジョブを生成してサービス提供システム10に送信する。
【0033】
S3)次に、サービス提供システム10は、外部プリントシステム40から印刷ジョブを受信すると、当該印刷ジョブを保存する。このように、サービス提供システム10は、外部プリントシステム40から受信した印刷ジョブを蓄積する。
【0034】
S4)一方で、複合機20は、ユーザの操作に応じて、サービス提供システム10に蓄積されている印刷ジョブを取得する。
【0035】
S5)そして、当該印刷ジョブに含まれる印刷データを印刷する。これにより、ユーザは、所望の複合機20において印刷を行うことができる。
【0036】
すなわち、ユーザは、複合機20-1を用いてサービス提供システム10から印刷ジョブを取得して印刷することもできるし、複合機20-2を用いてサービス提供システム10から印刷ジョブを取得して印刷することもできる。このように、本実施形態に係るサービス提供システム10により提供されるクラウド連携プリントでは、ユーザは所望の複合機20を用いて、外部プリントシステム40により提供されるクラウドプリントサービスによる印刷を行うことができる。
【0037】
なお、
図3では、端末装置30から外部プリントシステム40に印刷要求が送信されているが、端末装置30からサービス提供システム10に直接、印刷要求が送信されてもよい(
図3の点線)。この場合、サービス提供システム10が外部プリントシステム40の機能を有する。
【0038】
<ハードウェア構成>
次に、本実施形態に係るサービス提供システム10のハードウェア構成について、
図4を参照しながら説明する。
図4は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
【0039】
本実施形態に係るサービス提供システム10を実現する一台以上の情報処理装置は、
図4に示すハードウェア構成を有する。
【0040】
図4に示すサービス提供システム10は、入力装置301と、表示装置302と、外部I/F303と、RAM(Random Access Memory)304とを有する。また、サービス提供システム10は、ROM(Read Only Memory)305と、CPU(Central Processing Unit)306と、通信I/F307と、HDD(Hard Disk Drive)308と、近距離無線通信部309とを有する。これらの各ハードウェアは、それぞれがバスBで接続されている。
【0041】
入力装置301は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置302は、ディスプレイ等を含み、サービス提供システム10による処理結果を表示する。なお、入力装置301及び表示装置302の少なくとも一方は、必要なときにバスBに接続して利用する形態であっても良い。
【0042】
通信I/F307は、サービス提供システム10をネットワークN1に接続するインタフェースである。これにより、サービス提供システム10は、通信I/F307を介してデータ通信を行うことができる。
【0043】
HDD308は、プログラムやデータを格納している不揮発性の記憶装置である。HDD308に格納されるプログラムやデータには、サービス提供システム10全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェア等がある。
【0044】
なお、サービス提供システム10は、HDD308に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用するものであっても良い。また、HDD308は、格納しているプログラムやデータを所定のファイルシステムやDBにより管理している。
【0045】
外部I/F303は、外部装置とのインタフェースである。外部装置には、記録媒体303a等がある。これにより、サービス提供システム10は、外部I/F303を介して記録媒体303aの読み取りや書き込みを行うことができる。記録媒体303aには、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
【0046】
近距離無線通信部309は、携帯電話などよりも比較的、近距離の相手と無線通信する。例えば、Bluetooth(登録商標)、Bluetooth Low Energy、ZigBee(登録商標)、NFC(Near Filed Communication)、赤外線通信、可視光通信、音波通信等により通信する。
【0047】
ROM305は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM305には、サービス提供システム10の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。RAM304は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【0048】
CPU306は、ROM305やHDD308等の記憶装置からプログラムやデータをRAM304上に読み出し、処理を実行することで、サービス提供システム10全体の制御や機能を実現する演算装置である。
【0049】
本実施形態に係るサービス提供システム10を実現する一台以上の情報処理装置は、
図4に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。また、本実施形態に係る端末装置30、及び外部プリントシステム40のハードウェア構成は、
図4と同様であるか又は相違があるとしても本実施形態の説明において支障がないモノとする。
【0050】
<<複合機>>
次に、本実施形態に係る複合機20のハードウェア構成について、
図5を参照しながら説明する。
図5は、本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【0051】
図5に示す複合機20は、コントローラ210と、操作パネル202と、外部I/F203と、通信I/F204と、プリンタ205と、近距離無線通信部206と、を有する。また、コントローラ210は、CPU211と、RAM212と、ROM213と、NVRAM214と、HDD215とを有する。
【0052】
ROM213は、各種プログラムやデータを格納している。RAM212は、プログラムやデータを一時保持する。NVRAM214は、例えば設定情報等を格納している。また、HDD215は、各種プログラムやデータを格納している。
【0053】
CPU211は、ROM213やNVRAM214、HDD215等からプログラムやデータ、設定情報等をRAM212上に読み出し、処理を実行することで、複合機20全体の制御や機能を実現する。
【0054】
操作パネル202は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F203は、外部装置とのインタフェースである、外部装置には、記録媒体203a等がある。これにより、複合機20は、外部I/F203を介して記録媒体203aの読み取り及び/又は書き込みを行うことができる。なお、記録媒体203aには、例えば、ICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
【0055】
通信I/F204は、複合機20をネットワークN2に接続するインタフェースである。これにより、複合機20は、通信I/F204を介してデータ通信を行うことができる。
【0056】
プリンタ205は、印刷データを被搬送物に印刷するための印刷装置である。なお、被搬送物は、紙に限られず、例えば、OHPシートやプラスチックフィルム、銅箔等であっても良い。近距離無線通信部206の機能は
図4の近距離無線通信部309と同様の機能を有する。
【0057】
本実施形態に係る複合機20は、
図5に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【0058】
<事前設定>
ユーザは、機器システム100を使ってジョブを実行する前に、使っている端末装置30を複合機20と通信させて複合機20がジョブを実行できるように、サービス提供システム10に対し事前設定を行う。
【0059】
図6は、ジョブを実行前の事前設定を説明する図の一例である。この事前設定をペアリングという。ペアリングとは、端末装置30、複合機20,及び、ユーザを対応付ける(結びつける、関連付ける、紐付ける)ことをいう。
(1)まず、端末装置30からサービス提供システム10へサインインする。サインインとはコンピュータ又はネットワークサービスなどに、ユーザの身元の確認(ユーザ認証)を経て、アクセスできるようにする操作のことをいう。ログイン、ログオン等という場合がある。本実施形態では公知の方法でサインインするものとする。
(2)ユーザは端末装置30で機器システム100用のアプリを動作させて、端末装置30が表示するアプリの画面から事前設定の開始をユーザが選択すると複合機20と近距離無線通信を開始する。
図6ではBluetooth Low Energyで通信する場合を説明する。Bluetooth Low Energyはペアリング無しでも通信できるが、ペアリングすることでセキュリティが向上する。ペアリングとは、親機と子機が相互に登録して秘密鍵を交換・保存する手順又は処理である。このペアリングはBluetooth Low Energyのペアリングであり、
図6で説明する事前設定のペアリングとは別の処理である。端末装置30は固有値を通知すると共にペアリング要求を複合機20に送信する。固有値はそのままでもよいし、ハッシュ化してもよい。
(3)複合機20は固有値とペアリング要求を受信すると、サービス提供システム10に固有値と複合機20のデバイスIDを送信してペアリングコードの生成要求を行う。なお、より詳細には、複合機20の近距離無線通信部206はBluetooth Low Energyによる通信を検知すると複合機20で動作するアプリを自動的に起動させる。このアプリが固有値とペアリング要求を端末装置30から受信して、サービス提供システム10に送信する。
(4)サービス提供システム10がペアリングコードを生成し、複合機20に送信する。複合機20はサービス提供システム10から受け取ったペアリングコードを操作パネル202に表示する。
(5)ユーザは端末装置30の画面に表示されるメッセージなどの誘導にしたがって、複合機20が表示したペアリングコードを端末装置30に入力する。
(6)端末装置30はそれが正しいか否かの検証要求をサービス提供システム10へ送信する。検証要求には固有値とペアリングコードが含まれる。固有値とペアリングコードの組み合わせが、複合機20が(3)で把握しているものと同じ場合、検証結果がOKとなる。これにより、端末装置30、複合機20,及び、ユーザが対応付けられる。詳細は
図9にて説明する。ペアリングコードの検証が完了すると、端末装置30がペアリングした複合機20からジョブを実行することが可能になる。
【0060】
サービス提供システム10が生成したペアリングコードの入力を実施することで、なりすましを防ぐことができる。例えば、第三者が悪意をもって近接無線通信装置を複合機20の裏などに取り付けると、端末装置30が目的の複合機20ではない別の複合機20と通信するおそれがあるが、複合機20がペアリングコードを表示することでなりすましを防ぐことができる。
【0061】
近距離無線通信で送信されるデータ(この場合は複合機20のデバイスID)が改ざんされる危険がない場合には、ユーザにペアリングコードの入力を行わせず、複合機20がデバイスIDを端末装置30に送信する。端末装置30はペアリング要求と共に固有値とデバイスIDをサービス提供システム10に送信する。
【0062】
ただしこの方式をBluetooth Low Energyで行うと、別のデバイスIDを発信する装置を複合機20の裏などに取り付けられた場合、ユーザが意図しない複合機20と端末装置30が通信して対応付けられる。本実施形態では、近距離無線通信で固有値を送受信するだけではなく、複合機20がサービス提供システム10と通信して取得したペアリングコードを送信することなく複合機20が表示してそれをユーザが入力する処理があることでなりすましを防ぐことができる。
【0063】
なお、ペアリングコードについては
図6で説明した端末装置30、複合機20,及び、ユーザの対応付けが終了すると不要になるため(以降の処理では使用されない)、サービス提供システム10が削除してもよい。
【0064】
<ペアリング完了後のジョブ実行>
図7は、ペアリングが完了した後に機器システム100がジョブを実行する手順を示す図の一例である。なお、印刷ジョブの実行手順は
図1に示したので、
図7ではスキャンジョブの実行手順を説明する。
(1)ユーザは端末装置30から外部プリントシステム40又はサービス提供システム10にジョブを登録する。端末装置30は外部プリントシステム40又はサービス提供システム10からジョブID(より正確には後述するコマンドID)を取得する。
(2)端末装置30は登録されたジョブのジョブIDと端末装置30の固有値を対応付けて、サービス提供システム10に登録する。
(3)次に、ユーザがジョブを出力したい複合機20に対し(必要であれば接近し)、端末装置30の固有値とジョブ実行要求を近距離無線通信で送信する。
(4)複合機20は端末装置30から受信した固有値と自機が持つ複合機20のデバイスIDをサービス提供システム10に送信する。サービス提供システム10は複合機20から送信された固有値に対応付けられているデバイスIDが、複合機20から送信されたデバイスIDと一致するか否かにより複合機20を認証する。認証が成立すると、複合機20は固有値に対応付けられているジョブIDを取得する。
(5)ユーザは原稿を複合機20に置いて所定の操作を行い、複合機20は原稿の読み取り(スキャン)を行うことで画像データを生成する。
(6)複合機20はジョブIDと共に画像データをサービス提供システム10に送信する。サービス提供システム10はジョブIDに画像データを対応付けて保存する。
(7)端末装置30はジョブの実行要求の後、ジョブIDを指定してジョブの実行状況を監視する。これにより、ジョブの終了を検知する。
(8)端末装置30は複合機20が送信した読取データを取得して保存する。
【0065】
<機能について>
図8は、機器システム100が有する端末装置30、サービス提供システム10、及び、複合機20の機能をブロック状に示す機能ブロック図の一例である。
【0066】
<<端末装置>>
端末装置30は、操作受付部31、UI制御部32、ジョブ登録部33、固有値送信部34、及び、検証要求部35を有する。端末装置30が有するこれらの各機能は、
図4に示したCPU306がHDD308からRAM304に展開されたプログラムを実行することで実現される機能又は手段である。
【0067】
操作受付部31は、端末装置30に対するユーザの各種の操作を受け付ける。UI制御部32はユーザが操作する操作画面を生成し表示装置302に表示する。UI制御部32は予め画面ごとの表示部品を有しており、この表示部品に印刷データとなる文書のファイル名等を表示する。また、外部ストレージシステム60や外部プリントシステム40から取得した情報を表示する。なお、端末装置30がブラウザを実行する場合、操作画面は外部ストレージシステム60や外部プリントシステム40から提供される。
【0068】
また、UI制御部32は、外部ストレージシステム60や端末装置30内にあるファイルを表示装置302に表示し、ユーザの選択したファイルをジョブ登録部33に対し印刷データとして外部プリントシステム40に登録させる。また、複合機20と端末装置30が本実施形態のペアリングを実施するためのペアリング入力画面、ジョブ実行のための画面、及び、結果確認のための画面等を表示装置302に表示する。
【0069】
ジョブ登録部33は、外部プリントシステム40又はサービス提供システム10にジョブ登録やジョブ状態取得を要求する。また、ジョブの実行完了をサービス提供システム10に問い合わせる。
【0070】
固有値送信部34は、端末装置30の固有値を複合機20に送信する。固有値はそのままでも良いしハッシュ化してもよい。暗号化して通信してもよいが暗号化した場合には画像形成装置側で復号する。固有値としては、例えばMACアドレス、UUID(Universally Unique Identifier)、端末装置30のOSのID等を用いることができる。ただし、端末装置30に固有であればこれらには限られない。なお、端末装置30が複数の固有値を有していてもよい。
【0071】
検証要求部35は、ユーザにより入力されたペアリングコード、自身の固有値、及び、サインインした際のユーザアクセストークンをサービス提供システム10に送信し、ペアリングコードの検証を要求する。ユーザアクセストークンにはユーザIDが含まれている。
【0072】
<<サービス提供システム>>
サービス提供システム10は、アカウント管理部11及びジョブ管理部12を有する。サービス提供システム10が有するこれらの各機能は、
図4に示したCPU306がHDD308からRAM304に展開されたプログラムを実行することで実現される機能又は手段である。
【0073】
また、サービス提供システム10は、
図4に示したHDD308及びRAM304の少なくとも一方に構築される認証情報保存部13、データ保存部14、及び、ジョブ記憶部15を有する。このうち、データ保存部14には印刷データ14bなどジョブの実行対象のデータ又は読取データ14aなどのジョブの実行結果が保存される。認証情報保存部13とジョブ記憶部15については後述する。
【0074】
アカウント管理部11は、サービス提供システム10のユーザの認証管理、及び、端末装置30と、ユーザと、複合機20とのペアリングの管理などを行う。また、複合機20から固有値とデバイスIDと共にペアリングコードの発行を要求されるとペアリングコードを作成し、ペアリングコードを複合機20に返却する。端末装置30と、ユーザと、複合機20とが対応づけられたペアリングデータ13aは認証情報保存部13に記憶される。
【0075】
また、端末装置30からペアリングコードの検証要求(固有値とペアリングコードを含む)を受信すると、ペアリングデータ13aから固有値を検索し、端末装置30から送信されたペアリングコードと固有値の組が複合機20からの要求に対し生成したペアリングコードと固有値の組と一致しているか否かを確認する。一致する場合、要求元のユーザのユーザデータ13cのProfileID(ユーザ識別情報の一例でありユーザIDに相当)と紐付けてペアリングデータ13aに保存し、検証結果を返却する。更に、複合機20からペアリングデータ13aを要求されると、ペアリングデータを返却する。また、ペアリングデータとジョブの紐付け要求を受け付け、ペアリングデータ13aにジョブを識別するコマンドIDを対応付けて保存する。
【0076】
ジョブ管理部12は、外部プリントシステム40からのジョブの登録を受け付け、更にジョブの状態を管理する。登録されたジョブのジョブ情報をジョブ記憶部15に保存する。印刷対象のジョブ(文書の印刷データ)を受け取り、複合機20からの要求にしたがってそのジョブを返却する。ジョブ管理部12は印刷データや読取データ等のデータ類をデータ保存部14に保存する。
【0077】
(認証情報記憶部の内容)
図9は、認証情報保存部13に保存されるペアリングデータ13aの一例を示す図である。
図9(a)~(d)はペアリングデータ13aの一例を示す。
図9(a)は検証完了前のペアリングデータ13aであり、
図9(b)は検証完了後のペアリングデータ13aである。
【0078】
図9(a)において、「ID」はペアリングコード生成要求時に通知される端末装置30の固有値である。「Code」はサービス提供システム10が生成したペアリングコードである(Bluetooth Low Energy(登録商標)のペアリングコードではない)。「DeviceID」はペアリングコードの生成を要求した複合機20の識別情報(デバイスID)である。以下では
図9の情報を指し示す際、コメント行を示す「//」の右側の用語「固有値」「ペアリングコード」「デバイスID」で説明する。
【0079】
図9(b)に示すように、検証が行われると、検証を要求した端末装置30のユーザのユーザIDがペアリングデータに追加される。ユーザIDはユーザを識別又は特定するための識別情報である。ユーザIDはジョブの実行者(登録者)を特定するために使用される。本実施形態では、ユーザIDの代わりに又はユーザIDと共に、ペアリングコードが検証された旨がペアリングデータ13aに設定されてもよい。
【0080】
図9(c)はジョブが紐付けられた後のペアリングデータである。つまり、端末装置30がジョブをサービス提供システム10に送信した後の状態である。ペアリングデータ13aにジョブが対応付けられるとコマンドIDが追加され保存される。コマンドIDはペアリングデータ13aに対し常にひとつであり、次のジョブをユーザが登録した際にはコマンドIDが上書きされる。仮に、ジョブを実行せずに、新たなジョブを登録した場合にも最新のジョブのコマンドIDで上書きされる。コマンドIDはジョブを識別する情報となるため、ユーザは常に1つのジョブしか実行できず第三者によるジョブの実行を防ぎやすくなる。
【0081】
図9(d)は2台の複合機20に対応付けられたペアリングデータ13aを示す。端末装置30が複数の複合機20とペアリングした場合、ペアリングした複合機20のデバイスIDが羅列される。ユーザはペアリングした複合機20であればジョブを実行できるため利便性を向上できる。ペアリングした複合機20以外からのジョブ実行は弾かれる。一方、ペアリングコードは最後にペアリングした際のペアリングコードが上書きされる。ペアリングコードは特に使用されないためなくてもよい。
【0082】
図9(d)に示すように、複数の複合機20で使えるペアリングデータになっていると、端末装置30の固有値が盗まれた場合、ジョブ実行した複合機20とは別のペアリング済みの複合機20で悪意のある第三者が固有値を偽造してジョブ実行要求を複合機20に送信した場合、ジョブが盗まれる危険性がある。
【0083】
セキュリティを高めるにはペアリングデータ13aがデバイスIDを複数もたず、一つだけを上書き保存することが好ましい。一台の複合機20でしかジョブを実行できないので、端末装置30の固有値が盗まれてもジョブが盗まれることはない。しかし、他の複合機20でジョブを実行したい場合には、ジョブを実行する前にユーザはペアリングをする必要があり、手間が増える。
【0084】
図10(a)はユーザデータ13cの一例である。ユーザデータ13cはユーザに関する情報である。「ProfileID」は
図9(b)でペアリングデータ13aに追記されるものと同じである。「Name」はユーザの氏名やニックネームなどである。「AccountID」は外部プリントシステム40のアカウントであり外部プリントシステム40をユーザが利用する場合はこのアカウントIDが使用される。
【0085】
図10(b)はデバイスデータ13bの一例である。デバイスデータ13bは、複合機20に関する情報である。「DeviceID」はペアリングデータ13aに設定されるものと同じものである。「ID」は複合機20の固有値であり、複合機20ごとに予め決まっている固有値である。複合機20は起動時にこの固有値をサービス提供システム10に通知し、デバイスアクセストークンを取得する。このデバイスアクセストークンにデバイスIDが含まれる。デバイスアクセストークンとは、複合機20がサービス提供システム10と通信するための認証情報である。「Status」は複合機20によるサービス提供システム10の利用状況を表している。例えばサービス提供システム10に登録されている複合機20は"active"になり、サービス提供システム10から解除された場合、"removed"になる。同じ複合機20が解除後、再びサービス提供システム10で利用される場合などは別のデバイスIDが割り振られる。
【0086】
(ジョブ記憶部)
次に、
図11を用いてジョブ記憶部15について説明する。
図11は、ジョブ記憶部15に記憶されているジョブ情報の一例を示す。ジョブ情報はジョブが登録されると生成される情報である。
図11の例は印刷ジョブの例である。「CommandID」は、ペアリングデータと対応付けられているコマンドIDである。「Kind」はジョブの種別を示す。「ProfileID」はジョブを登録したユーザのユーザIDである。「Status」はジョブの状態を示し、例えば実行中(processing)、実行完了などがある。「Parameters」は部数と色設定などの印刷条件である。「Source」は印刷データのURL(データ保存部14の印刷データの保存場所)を示す。
【0087】
(データ保存部)
次に、データ保存部14について説明する。データ保存部14は読取データ14a及び印刷データ14bを有する。読取データ14aは複合機20がスキャナ機能で読み取った画像データである。印刷データ14bは複合機20がこれから印刷するデータである。
【0088】
<<複合機>>
図8に戻って説明する。複合機20はペアリングコード要求部21、トークン取得部22、ジョブ取得部23、読取制御部24、印刷制御部25、UI制御部26、及び、固有値受信部27を有する。複合機20が有するこれらの各機能は、
図5に示すCPU211がHDD215からRAM212に展開されたプログラムを実行して
図5に示すハードウェアを制御等することで実現される機能又は手段である。
【0089】
ペアリングコード要求部21は、ペアリング時に、サービス提供システム10のアカウント管理部11にペアリングコードの生成を要求する。
【0090】
トークン取得部22は、例えば複合機20の起動時に、サービス提供システム10のアカウント管理部11に複合機20を接続させ、サービス提供システム10からデバイスアクセストークン(デバイスIDを含む)を取得する。デバイスアクセストークンは複合機20が認証済みであることを示す情報なので、サービス提供システム10とやり取りする際には必ず必要になる。
【0091】
ジョブ取得部23は、端末装置30から取得した固有値をサービス提供システム10のジョブ管理部に送信することでジョブを取得する。
【0092】
印刷制御部25は、ジョブ取得部23が取得して印刷制御部25に送出した印刷データの印刷を実行する。読取制御部24は、ジョブ取得部23から渡されたパラメータ(スキャン機能の読取条件)で読取りを実施し、パラメータが有する結果送付先へ読取りの結果(読取データ)を送信する。
【0093】
UI制御部26は、ユーザが固有値を見るためのペアリングコード画面、及び、ジョブ実行画面を表示する。ペアリングコード画面を表示するために、ペアリングコード要求部21にペアリングコードを要求する。ジョブ実行画面を表示する場合、ジョブ取得部23にジョブ取得を依頼し、ジョブを実行させる。
【0094】
固有値受信部27は、端末装置30から固有値を受信しUI制御部26へ通知する。また、ペアリング要求も受信する。
【0095】
外部プリントシステム40は、ユーザが既に利用している、外部の印刷システムである。つまり、サービス提供システム10とは別の事業者が提供する印刷システムである。例えば、Google Cloud Print(登録商標)が一例であるが、他の印刷システムでもよい。外部プリントシステム用のプリンタドライバなどを配布している場合もある。外部印刷システムには、予めクラウド印刷システムの仮想プリンタが登録されて利用される。外部プリントシステムは印刷の要求をうけ、印刷データを印刷できる形式に変換する。サービス提供システム10が印刷システムを提供してもよい。変換された印刷データ及びユーザにより指定されたパラメータをサービス提供システム10のジョブ管理部12へ通知する。
【0096】
外部ストレージシステム60は、データを保存するクラウドサービスである。例えば、Google Drive(登録商標)などがあるが、他のサービスでもよい。図の例では端末装置30が外部ストレージサービスにある画像を印刷したり、読取り結果である画像データをアップロードしたりするように記載しているが、端末装置30内のデータを印刷してもよく、読取り結果を保存してもよい。この場合、外部ストレージシステム60は不要である。
【0097】
<動作手順>
以下では、機器システム100の動作をいくつかのフェーズに分けて説明する。
<<複合機の起動時>>
図12は、複合機20が起動した際の動作手順を示すシーケンス図の一例である。
S1:ユーザが複合機20の主電源をONにする。また、複合機20のアプリを起動させる。これにより、複合機20とアプリが起動する。
S2:複合機20のトークン取得部22がサービス提供システム10のアカウント管理部11に対して、複合機20に複合機20の固有値(ID)を送信してデバイスアクセストークンを要求する。
S3:サービス提供システム10のアカウント管理部11は固有値で複合機20を認証してデバイスアクセストークンを生成し複合機20に送信する。複合機20のトークン取得部22がデバイスアクセストークン(デバイスIDを含む)を取得する。
【0098】
<<ペアリング実行時>>
図13は、ペアリング実行時のシーケンス図の一例である。
図14は端末装置30の表示装置302に表示される画面例を示す。
図13の処理に先立って、端末装置30と複合機20はBluetooth Low Energyの通信を開始する。また、端末装置30と複合機20ではアプリが動作している。
【0099】
S11:ユーザは端末装置30に例えばユーザIDとパスワードを入力し、サービス提供システム10へサインインを行う操作を行う。端末装置30の操作受付部31はこの操作を受け付けUI制御部32に送出する。サインインが完了すると
図14(a)のペアリング要求画面が表示される。
【0100】
S12:端末装置30のUI制御部32は検証要求部35を介して、サービス提供システム10のアカウント管理部11に対してOAuth認証のリクエストを送信する。ユーザIDとパスワードの一般的な認証でもよい。
【0101】
S13:サービス提供システム10は外部サービスと外部アカウントを用いてOAuth認証の処理を行い、ユーザアクセストークンを返す。
【0102】
S14:端末装置30の検証要求部35は自機の固有値36を取得し、必要があればハッシュ化、及び暗号化を行う。
【0103】
S15:ユーザはペアリング要求画面で開始ボタンを押下する。これにより、ペアリングが開始される。なお、ペアリングの開始により端末装置30がサービス提供システム10と通信し、サインインしていない場合にユーザにサインインを促してもよい。したがって、ステップS11のサインインを省略できる場合がある。開始ボタンの押下により
図14(b)のガイド画面が表示される。
【0104】
S16:端末装置30の固有値送信部34が複合機20の固有値受信部27に向けて固有値と共にペアリング要求を送信する。
【0105】
S17:複合機20の固有値受信部27は固有値を含むペアリング要求を受信して、UI制御部26に送出する。UI制御部26はペアリングコード要求部21に固有値とトークン取得部22が保持するデバイスアクセストークンを送出する。複合機20のペアリングコード要求部21は固有値とデバイスアクセストークンをサービス提供システム10のアカウント管理部11へ送信することで、ペアリングコードを要求する。
【0106】
S18:サービス提供システム10のアカウント管理部11はペアリングコードの生成要求を受信して、ペアリングコードを生成し、ペアリングデータ13aに固有値、ペアリングコード、及び、デバイスアクセストークンから読み取るデバイスIDを設定して、認証情報保存部13に保存する。また、ペアリングコードを複合機20に送信する。
【0107】
S19:複合機20のUI制御部26はペアリングコードを操作パネル202に表示する。
図15にペアリングコードの表示例を示す。
【0108】
S20:端末装置30のUI制御部26はステップS15のペアリング要求の送信を完了したら、ペアリングコード入力画面を表示する。
図14(c)にペアリングコード入力画面の一例を示す。
【0109】
S21:ユーザは複合機20に表示されたペアリングコードを端末装置30のペアリングコード入力画面に入力する。操作受付部31はペアリングコードの入力を受け付ける。
【0110】
S22:端末装置30のUI制御部32は入力されたペアリングコードの検証を検証要求部35に要求し、検証要求部35はユーザアクセストークン、自機の固有値、及び、入力されたペアリングコードをサービス提供システム10のアカウント管理部11へ送信する。
【0111】
S23:サービス提供システム10のアカウント管理部11は認証情報保存部13に保存されているペアリングデータ13aを端末装置30から受信した固有値で検索して取り出し、ペアリングデータ13aに設定されているペアリングコードと端末装置30から受信したペアリングコードが同じか否かを検証する。同じだった場合、ユーザアクセストークンに含まれているProfileIDをペアリングデータ13aに追加して保存する。なお、同じ端末装置30を用いて他のユーザがペアリングを行おうとした場合、固有値が既に他のProfileIDと紐付いていることを検知して失敗と判断する。アカウント管理部11は検証結果(成功、失敗)を端末装置30に送信する。
【0112】
図14は、端末装置30の表示装置に表示される画面例を示す図である。
図14(a)はペアリング要求画面501を示す。ペアリング要求画面501は開始ボタン502を有する。ユーザが開始ボタン502を押下すると
図14(b)のガイド画面511が表示される。
図14(b)のガイド画面511は「印刷するMFPに近づけて下さい」というメッセージ512を有する。
【0113】
図14(c)はペアリングコード入力画面521の一例を示す。ペアリングコード入力画面521はペアリングコード入力欄522とOKボタン523を有する。ペアリングコード入力欄522はペアリングコードの入力欄であり、OKボタン523はペアリングコードをサービス提供システム10に送信するためのボタンである。
【0114】
図15は、複合機20が操作パネル202に表示するペアリングコード表示画面531の一英を示す。ペアリングコード表示画面531は、サービス提供システム10が生成したペアリングコードを表示するための画面である。
【0115】
<<ジョブ実行時>>
図16はジョブの登録とジョブ実行時のシーケンス図の一例である。
【0116】
S31:印刷をする場合、ユーザは外部ストレージシステム60から印刷する対象の印刷データを選択する操作を端末装置30に入力する。端末装置30の操作受付部31はこの操作を受け付ける。ユーザは端末装置30に保存されているファイルから選択することもできる。
【0117】
S32:外部ストレージシステム60から取得する場合、端末装置30のUI制御部32は外部ストレージシステム60にファイルを要求する。
【0118】
S33:外部ストレージシステム60は指定されたファイルを端末装置30に返す。
【0119】
S34:ユーザは実行するジョブのパラメータを端末装置30に設定する。印刷では部数、カラー/モノクロ等が設定され、スキャンでは解像度などが設定される。端末装置30の操作受付部31はこれらの操作を受け付ける。
【0120】
S35:ユーザが端末装置30に表示されるジョブ実行ボタンを押下する。操作受付部31はこの操作を受け付ける。
【0121】
S36:端末装置30のジョブ登録部33はペアリング時と同様に、自機の固有値36を読み出し、必要に応じてハッシュ化、及び暗号化する。
【0122】
続いてジョブの登録手順を説明する。ステップS37~S42は外部プリントシステム40が利用される場合に実行される。
S37:ジョブが印刷で、かつ、外部プリントシステム40を利用する場合には、端末装置30のジョブ登録部33は設定されたパラメータ、固有値、及び、外部プリントシステム40を利用するためのユーザアクセストークンと共にジョブ登録要求を外部プリントシステムへ送信する。
【0123】
S38:外部プリントシステム40はジョブ登録要求を受信すると文書のファイルを印刷データに変換し、パラメータ、固有値、及び、ユーザアクセストークンと共にジョブ通知をサービス提供システム10へ送信する。
【0124】
S39:また、外部プリントシステム40は受け付けたジョブ登録により作成したジョブのジョブIDを端末装置30へ送信する。ジョブIDは外部プリントシステム40でジョブを識別するための識別情報であり、コマンドIDはサービス提供システム10でジョブを識別するための識別情報である。
【0125】
S40:サービス提供システム10のジョブ管理部12は外部プリントシステム40から受け取った情報でジョブ情報を生成し、コマンドIDを生成する。この時点ではペアリングデータ13aにコマンドIDを登録しないが、この時点で登録してもよい。
【0126】
S41:端末装置30のジョブ登録部33はジョブIDを指定してユーザアクセストークンと共にサービス提供システム10のジョブ管理部12へジョブ情報の取得を要求する。
【0127】
S42:サービス提供システム10のジョブ管理部12はユーザアクセストークンで特定される、ステップS40で生成したコマンドIDをジョブ情報として端末装置30に返す。なお、コマンドIDは、固有値又はジョブIDで特定してもよい。
【0128】
外部プリントシステム40が利用されない場合のジョブの登録手順をステップS43~S45で用いて説明する。
【0129】
S43:外部プリントシステム40が利用されない場合、又は、スキャンジョブの場合などは、端末装置30のジョブ登録部33がユーザアクセストークンとパラメータで直接、サービス提供システム10へジョブ登録を要求する。
【0130】
S44:サービス提供システム10のジョブ管理部12は端末装置30から受け取った情報でジョブ情報を生成し、コマンドIDを生成する。この時点ではペアリングデータ13aにコマンドIDを登録しないが、この時点で登録してもよい。
【0131】
S45:サービス提供システム10のジョブ管理部12は端末装置30にコマンドIDを返す。
【0132】
続いて、端末装置30はペアリングデータ13aにジョブを対応付ける。すなわち、コマンドIDを登録する。
【0133】
S46:端末装置30のジョブ登録部33はコマンドID、固有値、及びユーザアクセストークンをサービス提供システム10へ送信し、これらの対応付けを要求する。
【0134】
S47:サービス提供システム10のジョブ管理部12は、固有値とジョブの紐付けが要求されると、保存されているペアリングデータ13aを固有値で検索し取得する。
【0135】
S48:次に、ジョブ管理部12はペアリングデータ13aにコマンドIDを追加して設定する。これによって、ペアリングデータ13aに一つのジョブが対応付けられた状態になる。
【0136】
ユーザがすでに複合機20の近くにいる場合はそのままジョブが実行される。この時、複合機20がジョブの実行を受け付ける画面を表示してもよい。また、ユーザが複合機20の近くにいない場合、ユーザはジョブの登録後に複合機20に接近して端末装置30からジョブを実行させる。
【0137】
S49:端末装置30の固有値送信部34は近距離無線通信(図ではBluetooth Low Energy)で複合機20に固有値を送信し、ジョブ実行を要求する。どの複合機20に対して近接無線通信を行うかについては、距離が最も近いものを信号の強さ(RSSI:Received Signal Strength Indication)から自動選択にしてもよいし、候補の一覧を表示してユーザに選ばせてもよい。
【0138】
S50:複合機20の固有値受信部27はデバイスアクセストークンと固有値を含むジョブ実行要求をUI制御部26に送出する。UI制御部26はジョブ取得部23に固有値を送出し、ジョブ取得部23はサービス提供システム10のアカウント管理部11にペアリングデータ13aの取得要求を送信する。
【0139】
S51:サービス提供システム10のジョブ管理部12は固有値を用いてペアリングデータ13aを検索し、ペアリングデータ13aを複合機20に送信する。このとき、デバイスアクセストークンに含まれるデバイスIDとペアリングデータに含まれるデバイスIDを比較し、デバイスIDが異なる場合には権限なし(実行できない旨)を返す。すなわち、デバイスIDによりジョブの要求を認証する。
【0140】
S52:複合機20のジョブ取得部23は取得したペアリングデータ13aからコマンドIDを読み出し、サービス提供システム10のジョブ管理部12へデバイスアクセストークンと共にジョブの取得要求を送信する。
【0141】
S53:サービス提供システム10のジョブ管理部12は受信したコマンドIDで該当するジョブ情報を検索し、複合機20に送信する。
【0142】
ステップS50~S53の処理は複合機20が固有値とデバイスアクセストークンをサービス提供システム10へ送信し、サービス提供システム10がジョブ情報の検索までを行ってジョブ情報を返すという手順でも可能である。また、サービス提供システム10が複合機20にペアリングデータ13aを送信する箇所を省略することも可能である。
【0143】
S54:ジョブ取得部23は取得したジョブ情報の種別をもとに読取制御部24又は印刷制御部25へパラメータを含むジョブ情報を送出してジョブを実行させる。複合機20の印刷制御部25はジョブの実行完了をサービス提供システム10に通知するので、コマンドIDで特定されるジョブ情報15aの「Status(状態)」には実行完了が設定される。
【0144】
ジョブが印刷の場合、ユーザは印刷物を取り出す。ジョブがスキャンの場合、引き続き、以下の処理が実行される。ステップS55~S60はスキャンジョブの場合の処理手順を示す。
S55:スキャンジョブの実行の場合、読取制御部24は受け取ったパラメータに記載のあるアップロード先へ読取データ(画像データ)をデバイスアクセストークンとコマンドIDと共にアップロードする。これにより、コマンドIDで特定されるジョブ情報15aの「Status(状態)」には実行完了が設定される。
【0145】
S56:一方、端末装置30のジョブ登録部33は近距離無線通信でジョブ実行を要求後、サービス提供システム10のジョブ管理部12へ登録したコマンドIDを通知して、ジョブ情報を取得する。
【0146】
S57:サービス提供システム10のジョブ管理部12は取得したコマンドIDでジョブ情報15aを監視し、ジョブの状態を端末装置30に送信する。ジョブの状態が実行完了になるまでステップS56、S57の処理を繰り返す。
【0147】
S58:ジョブが完了したことを検知すると、端末装置30のジョブ登録部33はパラメータに記載された読取データのアップロード先へアクセスする。
【0148】
S59:サービス提供システム10のジョブ管理部12はデータ保存部14からアップロード先のURLで指定される読取データを取得し、端末装置30に送信する。
【0149】
S60:端末装置30のジョブ登録部33は外部ストレージシステム60に読取データを保存する。なお、単に端末装置30が記憶しておいてもよい。また、端末装置30のUI制御部32が、ジョブが完了したこと及び読取結果を画面に表示してもよい。
【0150】
<<ペアリング解除>>
ペアリングデータ13aがサービス提供システム10に残っていると、端末装置30を他人が使用した場合に他人がジョブを実行できるおそれがある。例えば、社内で共有される端末装置30がある場合、又は、端末装置30が転売される場合、このような状況が生じうる。そこで、以下ではペアリングデータ13aの削除について説明する。
【0151】
図17はペアリング解除時の動作手順を示すシーケンス図の一例である。ステップS71~S73の認証処理はペアリング時と同様でよい。
【0152】
S74:ユーザはペアリング解除の操作を端末装置30に入力する。例えば、アプリのメニューからペアリング解除を選択する。
【0153】
S75:端末装置30のUI制御部32はサービス提供システム10のアカウント管理部11へユーザアクセストークンと共にペアリング解除要求を送信する。
【0154】
S76:サービス提供システム10のアカウント管理部11はユーザアクセストークンに含まれるユーザID(ProfileID)を取り出し、ユーザIDを含むペアリングデータ13aを検索する。
【0155】
S77:アカウント管理部11は検索で見つかったペアリングデータ13aを削除する。
こうすることで、いつまでのペアリングデータ13aがサービス提供システム10に残り、他人がジョブを実行するおそれがある状態を解消することができる。
【0156】
<まとめ>
以上説明したように、本実施形態の機器システム100は、複合機20のデバイスIDと端末装置30の固有値でジョブの実行元を認証するので、第三者によるクラウド上のジョブの実行を抑制できる。また、ユーザは端末装置30でジョブを実行する操作を行えばよいので、簡単な操作でクラウド上のジョブを実行できる。仮に固有値が盗まれたとして、固有値が対応付けられた複合機20で第三者が実行する場合でも、ジョブが実行済みである場合にはジョブを実行できない。
【0157】
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0158】
また、
図8などの構成例は、端末装置30,サービス提供システム10、及び、複合機20の処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。また、端末装置30,サービス提供システム10、及び、複合機20の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
【0159】
また、複数のサービス提供システム10が存在してもよいし、複数のサービス提供システム10の機能が複数のサーバ装置に分散していてもよい。例えば、認証情報保存部13、データ保存部14、及び、ジョブ記憶部15はネットワークN1に接続されていれば、サービス提供システム10が内部に有していなくてもよい。
【0160】
なお、固有値受信部27は識別情報取得手段の一例であり、ジョブ取得部23はジョブ取得手段の一例であり、印刷制御部25又は読取制御部24はジョブ実行手段の一例であり、認証情報保存部13は情報記憶手段の一例であり、ジョブ記憶部15はジョブ記憶手段の一例であり、ジョブ管理部12はジョブ管理手段の一例である。ペアリングコード要求部21は要求手段の一例であり、UI制御部26は第一の表示制御手段の一例であり、アカウント管理部11は識別情報処理手段の一例であり、UI制御部32は第二の表示制御手段の一例であり、操作受付部31は受付手段の一例である。
【符号の説明】
【0161】
10 サービス提供システム
13a ペアリングデータ
20 複合機
30 端末装置
40 外部プリントシステム
60 外部ストレージシステム
100 機器システム
【先行技術文献】
【特許文献】
【0162】