(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】機器及びプログラム
(51)【国際特許分類】
H04N 1/00 20060101AFI20231205BHJP
G06F 3/12 20060101ALI20231205BHJP
B41J 29/38 20060101ALI20231205BHJP
【FI】
H04N1/00 C
G06F3/12 302
G06F3/12 331
B41J29/38 501
(21)【出願番号】P 2019166365
(22)【出願日】2019-09-12
【審査請求日】2022-08-31
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】林田 俊治
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特開2008-148228(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
B41J 29/38
G06F 3/12
(57)【特許請求の範囲】
【請求項1】
自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、
他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、
を含み、
前記コピー手段は、前記通知として、前記第1保存領域と前記第1処理との関連付けを解除するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が前記関連付けを解除する旨を回答した場合に、当該第1保存領域と前記第1処理との関連付けを解除すると共に、前記第2のバックアップデータ中の情報処理要素を自機器にコピーする、機器。
【請求項2】
自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、
他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、
を含み、
前記生成手段が生成する前記第1のバックアップデータには、更に、自機器の通信アドレス情報が含まれ、
前記コピー手段は、前記通知として、前記第1保存領域に保存された処理結果データに適用される処理を前記第1処理から前記第2処理に変更するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が変更する旨を回答した場合に、前記第2のバックアップデータに含まれる前記他機器の通信アドレス情報を用いて前記他機器から前記第2処理の処理内容を規定する処理内容情報を取得し、取得した処理内容情報を前記第1保存領域に関連付けることにより、前記第1保存領域に保存された処理結果データに対して前記第2処理が適用されるようにする、
機器。
【請求項3】
前記生成手段が生成する前記第1のバックアップデータには、更に、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される前記処理の処理内容を規定する処理内容情報が含まれ、
前記コピー手段は、前記通知として、前記第1保存領域に保存された処理結果データに適用される処理を前記第1処理から前記第2処理に変更するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が変更する旨を回答した場合に、前記第2のバックアップデータに含まれる前記第2処理の処理内容情報を前記第1保存領域に関連付けることにより、前記第1保存領域に保存された処理結果データに対して前記第2処理が適用されるようにする、
請求項1に記載の機器。
【請求項4】
自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、
他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、
を含み、
前記生成手段が生成する前記第1のバックアップデータには、更に、自機器内の前記識別情報が示す前記保存領域に関連付けられたユーザのユーザ識別情報が含まれ、
前記コピー手段は、前記第2のバックアップデータに含まれるユーザ識別情報が、前記第1保存領域に関連付けられたユーザのユーザ識別情報と異なる場合には、前記指示者に対して通知を行う、
機器。
【請求項5】
前記コピー手段は、前記第2のバックアップデータに含まれるユーザ識別情報が、前記第1保存領域に関連付けられたユーザのユーザ識別情報と異なる場合において、前記他機器内の複数の保存領域の中から、前記第2のバックアップデータに含まれるユーザ識別情報と同じユーザ識別情報に関連付けられ且つ保存された処理結果データに前記第2処理と同じ処理が適用される保存領域が見つかれば、前記第2のバックアップデータ内の前記情報処理要素を、当該情報処理要素中の前記識別情報をその見つかった保存領域の識別情報に書き換えた上で自機器にコピーすると共に、当該情報処理要素の実行により得られる処理結果データがその見つかった保存領域に保存される旨を示す通知を前記指示者に対して行う、請求項4に記載の
機器。
【請求項6】
機器が備えるコンピュータを、
自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段、
他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段、
として機能させるためのプログラムであって、
前記コピー手段は、前記通知として、前記第1保存領域と前記第1処理との関連付けを解除するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が前記関連付けを解除する旨を回答した場合に、当該第1保存領域と前記第1処理との関連付けを解除すると共に、前記第2のバックアップデータ中の情報処理要素を自機器にコピーする、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機器及びプログラムに関する。
【背景技術】
【0002】
複合機(プリンタ、スキャナ、ファクス装置等の機能を併せ持つ装置)等の機器に、親展ボックスやセキュリティボックスなどと呼ばれる論理的な保存領域を設け、ファクスデータ、スキャンデータ、印刷データ等のデータを保存することが行われている。このような保存領域は複数用意され、パスワードや利用権限者を設定することにより個々の保存領域にアクセスできるユーザを制限することも可能となっている。
【0003】
また、保存領域に対して、その保存領域にアクセス可能なユーザを関連付けることも行われている。そのようなユーザは、その保存領域の所有者又はアクセス権者等と呼ばれる。
【0004】
また、親展ボックス等の保存領域に対して、その保存領域に保存されたデータに対する処理を関連付ける仕組みも知られている。例えば親展ボックスに対して、「指示書」又は「ジョブフロー」と呼ばれる一種のプログラムを設定可能な複合機がある。この種の複合機では、データが親展ボックスに保存された場合、自動的に、ユーザからの明示的な実行指示を待って、又は予め設定された実行条件が満たされると、そのデータに対してその親展ボックスに設定された指示書が表す処理が実行される。
【0005】
また、処理の内容を規定する情報処理要素の登録を受け付け、登録された情報処理要素のうちユーザから実行対象として指示されたものを実行する機能を持つ機器も知られている。例えば特許文献1には、実行したい処理手順を予め登録したワンタッチアプリと呼ばれる処理実行データを画像形成装置に登録しておき、ユーザからワンタッチアプリの実行指示を受ける仕組みが開示されている。ワンタッチアプリは、上記情報処理要素の一例である。
【0006】
また、処理の内容を規定する情報処理要素に対して、その処理の結果得られたデータの保存先とする保存領域を関連付けておく機能を持つ機器も知られている。
【0007】
また、特許文献1には、ある画像形成装置用に作成したワンタッチアプリを別の画像形成装置にコピー(クローニングとも呼ばれる)して利用する場合におけるいくつかの問題に対処する技術が開示されている。この技術では、ワンタッチアプリがコピー元の装置は持っているがコピー先の装置は持っていない機能を利用するものである場合に、そのワンタッチアプリがコピー先の装置で正常に動作しないという問題に対処している。また、この技術では、ワンタッチアプリが画像形成装置のパラメータ(例えば印刷濃度)の指定を含んだものである場合に、画像形成装置の性能の個体差により、コピー元ではそのワンタッチアプリのパラメータで所望の処理結果が得られたのに、コピー先の装置では所望の処理結果が得られないという問題に対処している。
【0008】
特許文献2には、機種バリエーションが増えても、ユーザの手間を増やすことなく、設定値を誤りなくリストアするための方法が開示される。この方法では、設定情報及び画像形成装置本体の種別を認識する識別情報を外部記憶媒体にバックアップする。リストアする時、設定情報の補正が必要か否かを判断し、必要であれば補正を行う。補正内容から、ユーザの確認および修正が必要な項目を自動的に選択して、ユーザに提示する。
【先行技術文献】
【特許文献】
【0009】
【文献】特開2019-16857号公報
【文献】特開2013-103411号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
例えばある機器を新たな機器に置き換える場合等のように、第1機器に登録されていた情報処理要素をそれとは別の第2機器にコピーできると便利な場合がある。第1機器内のある識別情報(第1識別情報と呼ぶ)に対応する保存領域に関連付けられていた情報処理要素を第2機器に単純にコピーすると、その情報処理要素は、第2機器内の、同じ第1識別情報に対応する保存領域に関連付けられることになる。
【0011】
ここで、第2機器内の第1識別情報に対応する保存領域に設定されているプログラムが、第1の機器内の第1識別情報に対応する保存領域に設定されているプログラムと異なる処理を規定している場合がある。この場合、第2機器にコピーしたその情報処理要素を実行すると、その実行により第2機器内のその保存領域に保存されたデータに対して、第1機器でその情報処理要素を実行したときのデータに対して行われる処理とは異なる処理が実行されることとなる。このため、第2機器でのその情報処理要素の実行により第1ユーザの予期せぬ事態が生じる場合がある。
【0012】
本発明は、ある機器から他の機器にコピーした情報処理要素の実行により後者の機器内の保存領域に保存されるデータに対して、前者の機器内でその情報処理要素に関連付けられていた保存領域に設定されていた処理とは異なる処理が実行されることを防ぐための仕組みを提供する。
【課題を解決するための手段】
【0014】
請求項1に係る発明は、自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、を含み、前記コピー手段は、前記通知として、前記第1保存領域と前記第1処理との関連付けを解除するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が前記関連付けを解除する旨を回答した場合に、当該第1保存領域と前記第1処理との関連付けを解除すると共に、前記第2のバックアップデータ中の情報処理要素を自機器にコピーする、機器である。
【0015】
請求項2に係る発明は、自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、を含み、前記生成手段が生成する前記第1のバックアップデータには、更に、自機器の通信アドレス情報が含まれ、前記コピー手段は、前記通知として、前記第1保存領域に保存された処理結果データに適用される処理を前記第1処理から前記第2処理に変更するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が変更する旨を回答した場合に、前記第2のバックアップデータに含まれる前記他機器の通信アドレス情報を用いて前記他機器から前記第2処理の処理内容を規定する処理内容情報を取得し、取得した処理内容情報を前記第1保存領域に関連付けることにより、前記第1保存領域に保存された処理結果データに対して前記第2処理が適用されるようにする、機器である。
【0016】
請求項3に係る発明は、前記生成手段が生成する前記第1のバックアップデータには、更に、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される前記処理の処理内容を規定する処理内容情報が含まれ、前記コピー手段は、前記通知として、前記第1保存領域に保存された処理結果データに適用される処理を前記第1処理から前記第2処理に変更するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が変更する旨を回答した場合に、前記第2のバックアップデータに含まれる前記第2処理の処理内容情報を前記第1保存領域に関連付けることにより、前記第1保存領域に保存された処理結果データに対して前記第2処理が適用されるようにする、請求項1に記載の機器である。
【0017】
請求項4に係る発明は、自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段と、他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段と、を含み、前記生成手段が生成する前記第1のバックアップデータには、更に、自機器内の前記識別情報が示す前記保存領域に関連付けられたユーザのユーザ識別情報が含まれ、前記コピー手段は、前記第2のバックアップデータに含まれるユーザ識別情報が、前記第1保存領域に関連付けられたユーザのユーザ識別情報と異なる場合には、前記指示者に対して通知を行う、機器である。
【0018】
請求項5に係る発明は、前記コピー手段は、前記第2のバックアップデータに含まれるユーザ識別情報が、前記第1保存領域に関連付けられたユーザのユーザ識別情報と異なる場合において、前記他機器内の複数の保存領域の中から、前記第2のバックアップデータに含まれるユーザ識別情報と同じユーザ識別情報に関連付けられ且つ保存された処理結果データに前記第2処理と同じ処理が適用される保存領域が見つかれば、前記第2のバックアップデータ内の前記情報処理要素を、当該情報処理要素中の前記識別情報をその見つかった保存領域の識別情報に書き換えた上で自機器にコピーすると共に、当該情報処理要素の実行により得られる処理結果データがその見つかった保存領域に保存される旨を示す通知を前記指示者に対して行う、請求項4に記載の機器である。
【0019】
請求項6に係る発明は、機器が備えるコンピュータを、自機器が有する情報処理要素であって当該情報処理要素が規定する処理の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される処理を一意に特定する処理特定情報と、を含む第1のバックアップデータを生成して出力する生成手段、他機器の前記生成手段が生成した第2のバックアップデータを自機器にコピーする指示が指示者から入力された場合に、前記第2のバックアップデータに含まれる情報処理要素に含まれる識別情報が示す自機器内の第1保存領域に保存された処理結果データに適用される第1処理が、前記第2のバックアップデータに含まれる処理特定情報により特定される第2処理と同じであれば、当該情報処理要素を自機器にコピーし、前記第1処理が前記第2処理と異なれば前記指示者に通知を行う、コピー手段、として機能させるためのプログラムであって、前記コピー手段は、前記通知として、前記第1保存領域と前記第1処理との関連付けを解除するか否かの問合せを前記指示者に提示し、前記問合せに対して前記指示者が前記関連付けを解除する旨を回答した場合に、当該第1保存領域と前記第1処理との関連付けを解除すると共に、前記第2のバックアップデータ中の情報処理要素を自機器にコピーする、プログラムである。
【0020】
参考例の情報処理装置は、第1機器が有する情報処理要素であって当該情報処理要素の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、前記第1機器内の前記識別情報が示す保存領域に保存された前記処理結果データに適用される第1処理を一意に特定する処理特定情報と、を含むバックアップデータを取得する取得手段と、指示者からの指示に応じて、前記バックアップデータ内の前記情報処理要素を第2機器にコピーするコピー手段と、を含み、前記コピー手段は、前記第2機器内の前記識別情報が示す保存領域に保存されたデータに適用される第2処理が、前記処理特定情報により特定される前記第1処理と異なる場合に、前記指示者に通知を行う、情報処理装置である。
【0021】
参考例のプログラムは、コンピュータを、第1機器が有する情報処理要素であって当該情報処理要素の実行により得られる処理結果データを保存する保存領域の識別情報を含む情報処理要素と、前記第1機器内の前記識別情報が示す保存領域に保存された前記処理結果データに適用される第1処理を一意に特定する処理特定情報と、を含むバックアップデータを取得する取得手段、指示者からの指示に応じて、前記バックアップデータ内の前記情報処理要素を第2機器にコピーするコピー手段、として機能させるためのプログラムであって、前記コピー手段は、前記第2機器内の前記識別情報が示す保存領域に保存されたデータに適用される第2処理が、前記処理特定情報により特定される前記第1処理と異なる場合に、前記指示者に通知を行う、プログラムである。
【発明の効果】
【0023】
請求項1又は6に係る発明によれば、ある機器から他の機器にコピーした情報処理要素の実行により後者の機器内の保存領域に保存されるデータに対して、前者の機器内でその情報処理要素に関連付けられていた保存領域に設定されていた処理とは異なる処理が実行されることを防ぐための仕組みを提供することができる。更に、第2のバックアップデータ中の情報処理要素を自機器にコピーして実行しても、その実行による処理結果データに対して、第2処理と異なる第1処理が実行されることを防ぐことができる。
【0024】
請求項2又は3に係る発明によれば、ある機器から他の機器にコピーした情報処理要素の実行により後者の機器内の保存領域に保存されるデータに対して、前者の機器内でその情報処理要素に関連付けられていた保存領域に設定されていた処理とは異なる処理が実行されることを防ぐための仕組みを提供することができる。更に第2のバックアップデータ中の情報処理要素を自機器にコピーして実行した場合に、その実行による処理結果データに対して、第2処理と同じ処理が実行されるようにすることができる。
【0025】
請求項4に係る発明によれば、ある機器から他の機器にコピーした情報処理要素の実行により後者の機器内の保存領域に保存されるデータに対して、前者の機器内でその情報処理要素に関連付けられていた保存領域に設定されていた処理とは異なる処理が実行されることを防ぐための仕組みを提供することができる。更に、情報処理要素の処理結果データを保存する保存領域に関連付けられたユーザ識別情報がコピー元の機器とコピー先の機器とで異なる場合に、その旨をユーザに知らせることができる。
【0026】
請求項5に係る発明によれば、コピー元の機器内の情報処理要素の処理結果データを保存する保存領域に関連付けられたユーザ識別情報と同じユーザ識別情報に関連付けられたコピー先の機器内の保存領域に対して、コピーした情報処理要素の処理結果データを保存することができる。
【図面の簡単な説明】
【0027】
【
図2】機器のUI画面の例を模式的に示す図である。
【
図3】ボックス管理情報のデータ内容の一例を示す図である。
【
図5】機器にインストールされたワンタッチアプリを、別の機器にコピーした場合に生じ得る事態について説明するための図である。
【
図6】実施形態の機器におけるバックアップ生成部の処理手順の一例を示す図である。
【
図7】実施形態の機器におけるアプリコピー部の処理手順の前半部分の一例を示す図である。
【
図8】実施形態の機器におけるアプリコピー部の処理手順の後半部分の一例を示す図である。
【
図9】変形例1の機器におけるバックアップ生成部の処理手順の一例を示す図である。
【
図10】変形例1の機器におけるアプリコピー部の処理手順の後半部分の一例を示す図である。
【
図11】変形例2の機器におけるバックアップ生成部の処理手順の一例を示す図である。
【
図12】変形例2の機器におけるアプリコピー部の処理手順の前半部分の一例を示す図である。
【
図13】変形例2の機器におけるアプリコピー部の処理手順のサブルーチンの一例を示す図である。
【発明を実施するための形態】
【0028】
<システム構成の例>
図1には、この実施形態のシステム構成が例示されている。このシステムは、ローカルエリアネットワーク等のネットワーク300に接続された機器100群とクライアントPC(パーソナルコンピュータ)200とを含む。
【0029】
機器100は、操作パネル110と、制御部120と、記憶装置130とを有している。
【0030】
操作パネル110は、例えばタッチパネル表示装置等のグラフィカルユーザインタフェース方式の入出力装置を備えており、ユーザに対してUI(ユーザインタフェース)画面を表示し、そのUI画面に対するユーザからの操作入力を受け付ける。また操作パネル110は、処理の実行開始を指示するスタートボタンや数値入力のためのテンキー等、表示装置とは別の入力装置を有していてもよい。
【0031】
制御部120は、機器100が持つ情報処理機能を担う部分であり、情報処理機能のためのハードウエア、すなわち、例えばCPU(中央演算装置)等のプロセッサ、一次記憶のためのメモリ、を有する。また、制御部120は、そのようなハードウエアを用いて実行されるOS(オペレーティングシステム)、ファームウエア、各種アプリケーションプログラム、等のプログラムを有している。制御部120内に示したバックアップ生成部122、アプリコピー部124又はクライアントUI部126は、プログラムを実行することにより実現される機能である。これらの機能については後で説明する。
【0032】
記憶装置130は、二次記憶装置、すなわちデータを半永久的に保存する(すなわち明示的な削除指示がない限り保存し続ける)ための装置である。記憶装置130は、例えばディスク装置(例えばハードディスクやソリッドステートディスク等)である。記憶装置130は、例えば、制御部120のOSのファイルシステムにより管理される。記憶装置130には、ボックス管理情報134やワンタッチアプリ136等のデータが保存される。また記憶装置130には、後述する保存領域の一例であるボックス132を一以上設けることが可能である。ボックス132は、例えばファイルシステムにおけるフォルダとして実装してもよい。
【0033】
概略的に言えば、機器100は、コンピュータプログラムを実行するための情報処理機能を持つ。制御部120は、機器100の情報処理機能を担う部分である。
【0034】
また機器100は、印刷機構、スキャン機構、ファクシミリの送受信機構、ネットワーク通信デバイス等といった情報処理機能以外の機能を担うハードウエアを有していてもよい。複合機等の画像処理装置は、機器100の例である。
【0035】
機器100は、ファイル等のデータを保存するための論理的な保存領域を1以上持っている。機器100の例としての複合機の中には、親展ボックス又はセキュリティボックス等と呼ばれる1以上の保存領域が設定可能なものがある。
図1の例では、このような保存領域をボックス132と表現している。ボックス132には、例えば、スキャン機能により得られたスキャン画像データ、スキャン画像データを処理することにより得られたデータ、ファクシミリ機能により受信したファクシミリデータ、機器100が持つメール受信機能が受信した電子メール等、さまざまデータが保存され得る。
【0036】
機器100内の保存領域には、その保存領域にアクセス可能なユーザを関連付け、すなわち設定することが可能である。そのようなユーザのことを、ここではその保存領域の所有者と呼ぶ。
【0037】
また機器100内の個々の保存領域には、その保存領域に保存されたデータに適用する処理を関連付けることが可能である。保存領域に保存されたデータに対して、その保存領域に関連付けられた処理が適用、すなわち実行される。
【0038】
保存領域に保存されたデータに適用する処理には、機器100が持つ機能とその機能についての設定情報(例えば各種のパラメータ)とで規定されるものもあれば、情報処理機能が実行するプログラムとして規定されるものもある。
【0039】
前者の例としては、設定情報として印刷濃度や印刷モード(すなわち白黒印刷かフルカラー印刷かを特定するモード)等を指定した印刷処理、又は設定情報として宛先のFAX番号を指定したファクシミリ送信処理がある。この例では、保存領域に保存されたデータに適用する処理を表す情報として、処理のために用いられる機器100の機能の識別情報(例えば印刷機能を示す識別情報)と、その機能に適用する設定情報(例えば印刷濃度と印刷モードの組)と、を含む情報が、その保存領域に関連付けて機器100に登録される。
【0040】
また、後者、すなわち保存領域に保存されたデータに適用する処理がプログラムにより規定されるケースでは、ユーザは、処理を規定するプログラムを作成し、作成したプログラムを、その処理を規定する情報としてその保存領域に関連付け(すなわち設定)てもよい。また、ユーザは、機器100内に用意されている既存のプログラムの中から1つを選び、そのプログラムの中でユーザがカスタマイズ可能な部分(例えばパラメータ等の設定情報)のデータ内容を入力するという方法で、処理を規定する情報を作成し、その情報をその保存領域に関連付けてもよい。この情報は、例えば、ユーザが選んだ既存のプログラムを特定する情報と、そのプログラム中の個々のカスタマイズ可能部分についてユーザが入力したデータ内容と、を含む。
【0041】
このように保存領域に保存されたデータに適用する処理を規定する情報は、後述する例のように指示書又はジョブフローと呼ばれるデータとして構成されてもよい。指示書は、機器100の持つ1以上の機能を用いて実行可能な処理を規定するデータである。機器100が持つ機能の中には、制御部120の情報処理により実現される機能、機器100が持つスキャナやプリンタのようなハードウエア機構により実現される機能、及び制御部120の情報処理とスキャナ等のハードウエア機構の組合せにより実現される機能が含まれる。指示書が規定する処理には、機器100が持つ機能とその機能についての設定情報とで規定されるものもあれば、機器100の情報処理機能が実行するプログラムとして規定されるものもある。保存領域に保存されたデータに適用する処理を規定する指示書等の情報は、例えば、機器100の記憶装置130内にインストールされている。
【0042】
また機器100には、情報処理要素が登録可能である。情報処理要素は、機器100の持つ1以上の機能を用いて実行可能な処理を規定するデータである。情報処理要素が規定する処理には、機器100が持つ機能とその機能についての設定情報(例えば各種のパラメータ)とで規定されるものもあれば、機器100の情報処理機能が実行するプログラムとして規定されるものもある。前者の例としては、例えばスキャン機能とスキャン設定情報(例えばスキャン解像度)との組で規定される特定のスキャン処理がある。また後者の例としては、例えば、スキャン機能を動作させ、これにより得られたスキャン画像データを、特定の保存領域に保存する、という処理がある。
【0043】
前者の例では、情報処理要素は、処理のために用いられる機器100の機能の識別情報と、その機能についての設定情報と、を示す情報が含まれる。
【0044】
後者の例では、ユーザは、処理を規定するプログラムを作成し、作成したプログラムを、情報処理要素として機器100に登録してもよい。また、ユーザは、機器100内に用意されている既存のプログラムの中から1つを選び、そのプログラムのうちユーザがカスタマイズ可能な部分(例えばパラメータ等の設定情報)のデータ内容を入力するという方法で、情報処理要素を作成し、その情報処理要素を機器100に登録してもよい。この場合、情報処理要素は、例えば、ユーザが選んだ既存のプログラムを特定する情報と、そのプログラム中の個々のカスタマイズ可能部分についてユーザが入力したデータ内容と、を含む。
【0045】
以上に例示した情報処理要素は、例えば指示書又はジョブフローと呼ばれるデータとして作成されてもよい。
【0046】
ユーザから明示的に情報処理要素の実行指示があった場合、又は情報処理要素について機器100に予め設定されている実行条件が満たされた場合等に、その情報処理要素が規定する処理が機器100により実行される。情報処理要素が、処理の内容を規定するプログラムを含む場合、そのプログラムが機器100の情報処理機能により実行される。ユーザから情報処理要素の実行指示を受け付けるために、機器100の操作パネル110等に表示されるUI(ユーザインタフェース)画面に情報処理要素を表すアイコンを表示してもよい。この場合、UI画面上でユーザが情報処理要素のアイコンを選択して実行指示の操作を行うと、その情報処理要素が規定する処理が実行される。
【0047】
情報処理要素が規定する処理がその処理の結果を電子的なデータ(以下、処理結果データと呼ぶ)として出力するものである場合、その処理結果データの出力先を規定する情報がその情報処理要素に含まれる。処理結果のデータの出力先として、親展ボックス等の保存領域を選ぶことも可能であり、その場合、情報処理要素には、処理結果のデータの出力先の保存領域(すなわち
図1の例ではボックス132)を一意に特定する識別情報が含まれる。
【0048】
この保存領域の識別情報は、グローバルに一意なものではなく、同じ機器100内に設けられた保存領域の間で一意なものである。したがって、第1の機器100内のある識別情報(第1識別情報と呼ぶ)に対応する保存領域を処理結果の出力先とする情報処理要素を第2の機器100に単純にコピーすると、第2の機器100内のその情報処理要素の処理結果は、同じ第1識別情報に対応する第2の機器100内の保存領域に出力されることとなる。
【0049】
図1の例では、情報処理要素の一例であるワンタッチアプリ136が機器100にインストールされている。これらワンタッチアプリ136は、機器100内の記憶装置130内に保存されている。操作パネル110に表示されるUI画面には各ワンタッチアプリ136のアイコンが表示される。
【0050】
例えば、
図2に例示する機器100のUI画面400には、機器100が提供する各処理機能を呼び出すためのボタンを表すアイコン410がマトリクス状に配列されている。処理機能の数が1画面内に収まらないほど多い場合には、スクロールやページめくりにより表示される別の画面表示領域にもアイコン410群が表示される。UI画面400に表示されるアイコン410には、コピーボタン412やFAX送信ボタン414等のように機器100が工場出荷時の状態で備えているネイティブ機能に対応するものがある。また、それらアイコン410の中には、ワンタッチアプリ136のアイコン416が含まれ得る。ワンタッチアプリ136は、例えば、制御部120により実行される各種の情報処理による機能、又は機器100の1以上のネイティブ機能と情報処理とを組み合わせた複合的な機能、等を表すソフトウエアである。例えば、
図2に例示した「YYY社送信用」アイコン416が示すワンタッチアプリ136は、機器100が持つスキャン機能により読み取った画像を、制御部120が持つFAX送受信機能を用いて、YYY社のFAX番号へとFAX送信する機能を表すソフトウエアである。ユーザは、自分の希望する処理内容を規定するワンタッチアプリ136のデータを作成し、これを機器100にインストールすることができる。
【0051】
ユーザが、UI画面400上のアイコン416をタッチ操作等で押下すると、そのアイコン416に対応するワンタッチアプリ136が制御部120により実行される。
【0052】
機器100にインストールされているワンタッチアプリ136の中には、そのワンタッチアプリ136を実行した結果得られる処理結果データの出力先として、いずれかのボックス132が指定されているものがある。このようなワンタッチアプリ136には、出力先として指定されているボックス132の識別情報が含まれている。
【0053】
ボックス管理情報134は、機器100の記憶装置130内に設けられたボックス132群の管理のために用いられる情報である。ボックスは、機器100内の保存領域の一例である。
図3にボックス管理情報134のデータ内容の一例を示す。
図3に例示するボックス管理情報には、ボックス132ごとに、ボックス番号、所有者、指示書の欄が含まれる。
【0054】
ボックス番号の欄には、当該ボックス132の識別情報の一例であるボックス番号が登録される。ボックス番号は、保存領域の識別情報の一例である。なお、保存領域の識別情報は、ボックス番号のように番号形式のものに限らない。保存領域の識別情報は、機器100内の複数の保存領域の中から当該保存領域を一意に特定できる情報内容を持つものであれば、どのようなものであってもよい。
【0055】
所有者の欄には、当該ボックス132に対するアクセス権を持つユーザの識別情報(以下、ユーザIDともいう)が登録される。ボックス132に対して複数の所有者を登録可能としてもよい。また、ボックス132を誰でも利用できるように設定した場合、そのボックス132の所有者の欄は例えば「誰でも」又は空欄となる。
【0056】
指示書の欄には、当該ボックス132に保存されたデータに対して適用される指示書を特定する情報(例えば記憶装置130内に保存された指示書の本体データを指し示す識別情報)が登録される。指示書は、機器100が実行する処理を規定するデータである。
【0057】
ボックス132に保存されたデータには、そのデータに対して、当該ボックス132に対応する指示書の欄に示された指示書(以下「ボックス132に対応する指示書」とも呼ぶ)が規定する処理が実行される。なお、ボックス132に保存されたデータにそのボックス132に対応する指示書を自動的に適用するか、又はユーザの指示を待って適用するか、を設定可能としてもよい。後者が設定されている場合、データがボックス132に保存されただけではそのデータに対してそのボックス132に対応する指示書は適用されない。この場合、ユーザがそのボックス132内のそのデータを選択した上で、その指示書の実行を指示してはじめて、そのデータに対してその指示書が適用される。また、前者、すなわちボックス132に対応する指示書について、自動適用の旨がそのボックス132に設定されている場合には、そのボックス132にデータが保存されると、自動的にその指示書がそのデータに対して適用される。なお、データに対して指示書を適用するとは、そのデータに対してその指示書に規定される処理を実行することである。
【0058】
図4に、指示書に含まれるデータ内容の一例を示す。例示した指示書は、「名称」、「更新日時」、「所有者」、「説明」、「ハッシュ値」、「処理内容」、「FAX」、「Mail」、「FTP」、「Print」等の項目を含む。「名称」は、この指示書の名前であり、例えばこの指示書を作成した者(すなわちこの指示書の所有者)が決める。「更新日時」は、この指示書の内容について最後に更新した日時である。項目「所有者」には、この指示書の所有者のユーザIDが登録される。項目「説明」には、その指示書の処理内容等についての、ユーザ向けの説明の文言が登録される。項目「ハッシュ値」には、次に説明する項目「処理内容」に含まれるデータのハッシュ値である。
【0059】
項目「処理内容」には、この指示書が規定する処理の内容を表すデータ、例えば処理内容を記述したプログラム又はその処理内容を特定する機能と設定情報の組など、が登録される。前述した「ハッシュ値」は、この「処理内容」のデータのハッシュ値である。「処理内容」がプログラムである場合、そのプログラムは、スクリプト言語で記述されたものでも、実行形式のバイナリコード等であってもよい。
【0060】
項目「FAX」には、この指示書が規定する「処理内容」がFAX(すなわちファクシミリ)の送信を含む場合に、送信先のFAX番号が登録される。項目「Mail」には、この指示書が規定する「処理内容」の処理の結果得られる出力画像(例えば印刷される画像、FAX送信される画像等)を送信する送信先の電子メールアドレスが登録される。この例では、FAX送信した画像を、(例えば後の監査等のために)業務を管理する管理者に送信することを想定しており、項目「Mail」には、その管理者のメールアドレスが登録されている。項目「FTP」には、この指示書が規定する「処理内容」が、例えばリモートにあるサーバ等へ処理結果のデータをFTP(File Transfer Protocol)で転送する処理を含む場合に、その転送先を示すURLが登録される。項目「Print」には、この指示書が規定する「処理内容」が処理の結果得られる画像の印刷を含むものである場合に、その画像の印刷設定情報等が登録される。
【0061】
<ワンタッチアプリを他機器にコピーしたときに起こる事態>
次に、
図5を参照して、機器100にインストールされたワンタッチアプリ136を、別の機器100にコピーした場合に生じ得る事態について説明する。
【0062】
図5の例は、ユーザが、機器100Aにインストールされているワンタッチアプリ136(以下「ワンタッチアプリA」と呼ぶ)を、機器100Bにコピーする場合を示している。また、この例では、ワンタッチアプリAは、機器100Aが備えるスキャナによるスキャンにより得られたスキャン画像を、機器100A内のボックス132Aに出力する処理を表すアプリケーションであるものとする。ボックス132Aは識別情報「003」で識別される。したがって、正確には、ワンタッチアプリAは、機器100Aが備えるスキャナによるスキャンにより得られたスキャン画像を、識別情報「003」で識別されるボックスに保存する処理を表している。このボックス132Aには、このボックス132Aに格納されたデータに対して適用する処理を規定する指示書140Aが関連付けられている。指示書140Aは、対応するボックス132Aに格納されたデータを、特定のサーバ(図中では「サーバ1」と名付けられている)にFTPで転送する処理を表している。
【0063】
ユーザが、機器100A内のワンタッチアプリAを、機器100Aと同じネットワーク300上の他の機器100Bにコピーする場合を考える。この場合、ユーザは、ネットワーク300上のクライアントPC200から機器100Aにアクセスし、機器100Aに対してワンタッチアプリAのバックアップを指示する。これに応じて、機器100Aは、ワンタッチアプリAのバックアップデータを作成し、そのバックアップデータをクライアントPC200に転送する。転送されたバックアップデータは、クライアントPC200内のファイルシステムに保存される。このバックアップデータには、ワンタッチアプリAが含まれる。
【0064】
この後ユーザは、クライアントPC200からコピー先である機器100Bにアクセスし、先ほど保存したバックアップデータ中のワンタッチアプリAをコピーするよう、機器100Bに対して指示する。
【0065】
この指示に応じて機器100B内にコピーされたワンタッチアプリAが規定する処理内容は、機器100A内にあったワンタッチアプリAの処理内容と同じである。したがって、機器100B内にコピーされたワンタッチアプリAを実行すると、機器100Bが備えるスキャナによるスキャンにより得られたスキャン画像が、機器100B内の、識別情報「003」で識別されるボックス132Bに保存されることとなる。
【0066】
ここで、機器100B内のボックス132Bに設定されている指示書140Bは、機器100A内の同じ識別情報「003」を持つボックス132Aに設定されている指示書140Aとは独立したものである。指示書140Bに規定される処理内容は、指示書140Aに規定される処理内容とは異なっていることが一般的である。図示例では、指示書140Bの処理内容は、ボックス132Bに格納されたデータ(すなわちスキャン画像)をFAX番号「045-xxx・・・」にFAX送信するものである。したがって、機器100BにコピーしたワンタッチアプリAを実行すると、機器100Bでスキャンした画像がそのFAX番号にFAX送信されることとなり、これはコピー元の機器100Aで同じワンタッチアプリAを実行した際に行われる処理とは異なる。ユーザが、機器100Bでも機器100Aの場合と同じくスキャン結果が「サーバ1」に転送されると思ってワンタッチアプリAをコピーした結果、そのユーザが想定していない宛先にスキャン結果が送信されてしまうという事態が起こり得る。
【0067】
<対処のための仕組み>
本実施形態では、制御部120内のバックアップ生成部122、アプリコピー部124及びクライアントUI部126が、そのような事態に対処するための処理を実行する。
【0068】
バックアップ生成部122は、ユーザからの指示に応じて、記憶装置130内のワンタッチアプリ136のバックアップデータを生成する。バックアップ生成部122が生成するバックアップデータには、ワンタッチアプリ136自体のデータに加え、当該ワンタッチアプリ136の処理結果の出力先のボックス132に関連付けられている指示書140Aの処理内容を特定するハッシュ値(
図4参照)が含まれる。このハッシュ値は、
図4を参照して説明したように、その指示書140Aの処理内容のデータのハッシュ値であり、その処理内容を一意に特定するものといえる。また、バックアップデータに含まれるワンタッチアプリ136自体のデータには、そのワンタッチアプリ136の処理結果の出力先のボックス132の識別情報が含まれる。
【0069】
なお、バックアップ対象のワンタッチアプリ136の処理結果の出力先がボックス以外である場合には、バックアップデータには、指示書の処理内容を特定するハッシュ値は含まれない。ボックス以外の出力先には指示書が関連付けられないからである。
【0070】
この例では、ワンタッチアプリ136は情報処理要素の一例であり、ボックス132は保存領域の一例である。また、ハッシュ値は処理特定情報の一例であり、バックアップ生成部122は生成手段の一例である。
【0071】
アプリコピー部124は、ユーザから入力されたバックアップデータを受け取り、そのバックアップデータに含まれるワンタッチアプリ136を自機器の記憶装置130内にコピーする。入力されるバックアップデータは、他の機器100(以下「コピー元機器」と呼ぶ)のバックアップ生成部122により生成されたものである。アプリコピー部124は、そのバックアップデータに含まれるハッシュ値を用いて、そのワンタッチアプリ136の処理結果が自機器内で、コピー元機器での場合と同様に処理されるか否かを判定する。すなわち、そのハッシュ値が、そのワンタッチアプリ136の処理結果の出力先である自機器100内のボックス132に設定されている指示書の処理内容のハッシュ値と一致するか否かを判定する。一致すれば、自機器内でそのワンタッチアプリ136を実行した場合の処理結果の出力先のボックス132に設定されている指示書は、コピー元機器のときと同じ処理内容のものである。この場合、コピーしたワンタッチアプリ136の処理結果は、コピー元機器の場合と同じの処理内容の指示書により処理されることとなるので、そのワンタッチアプリ136を自機器にコピーしても、ユーザの想定しなかった事態は起こらない。アプリコピー部124は,コピー手段の一例である。
【0072】
これに対して、一致しない場合には、そのワンタッチアプリ136の処理結果の出力先のボックス132に設定されている指示書の処理内容は、コピー元機器のときと異なるものとなっている。この場合、仮にそのワンタッチアプリを実行すると、その実行による処理結果には、出力先のボックス132でコピー元機器のときとは異なる処理内容の指示書が適用されることとなる。このような事態は、ユーザが想定していない可能性がある。そこで、このような場合には、アプリコピー部124は、バックアップデータ内のワンタッチアプリ136を直ちにコピーすることはせずに、クライアントUI部126を介してユーザに対して警告メッセージを表示し、対処を求める。
【0073】
クライアントUI部126は、クライアントPC200に対してネットワーク300を介して機器100の操作のためのUI画面を提供する。クライアントUI部126は、特に、ワンタッチアプリ136のバックアップ処理や、コピー元機器が生成したバックアップデータのコピー処理のためのUI画面を提供する。このUI画面の提供は、例えば、ウェブ技術を用いて行われる。
【0074】
図6に、バックアップ生成部122が実行する処理手順を例示する。
【0075】
ユーザがクライアントPC200から機器100のクライアントUI部126にアクセスすると、クライアントUI部126は、クライアントPC200に対してメニュー画面を提供する。このメニュー画面には、メニュー項目の1つとして「ワンタッチアプリのバックアップ」が含まれる。ユーザが、そのメニュー項目の実行を指示すると、
図6の処理手順が実行される。
【0076】
この手順では、クライアントUI部126が、自機器100の記憶装置130内にインストールされているワンタッチアプリ136の一覧を表示した選択画面をクライアントPC200に提供する。そして、ユーザからバックアップ対象のワンタッチアプリ136の選択を受け付ける(S10)。
【0077】
その選択画面上でユーザがバックアップ対象のワンタッチアプリ136を選択すると、クライアントPC200がその選択の結果をクライアントUI部126に送る。バックアップ生成部122は、クライアントUI部126からその選択結果を受け取り、その選択結果が示すワンタッチアプリ136の処理内容のデータを解析する(S12)。この解析では、そのワンタッチアプリ136に、処理結果データの出力先のボックス132が指定されているかどうかを調べる。すなわち、ワンタッチアプリ136の処理内容のデータに、ワンタッチアプリ136の処理結果データの出力先のボックス132の識別情報が含まれているか否かを調べる。また、バックアップ生成部122は、そのワンタッチアプリ136に処理結果データの出力先のボックス132が指定されている場合には、更にそのボックス132に関連付けられている指示書があるかどうかを調べる。
【0078】
この解析の結果を踏まえ、バックアップ生成部122は、「バックアップ対象のワンタッチアプリ136の処理結果の出力先としてボックス132が指定されており、かつそのボックス132に指示書が関連付けられている」という条件が満たされるか判定する(S14)。
【0079】
S14の判定結果がYesの場合、バックアップ生成部122は、そのワンタッチアプリ136と、その指示書の処理内容のハッシュ値と、を含むバックアップデータのファイルを生成する(S16)。このファイルに含まれるワンタッチアプリ136には、処理結果データの出力先であるボックス132の識別情報が含まれている。
【0080】
S14の判定結果がNoの場合、バックアップ生成部122は、そのワンタッチアプリ136を含んだバックアップデータのファイルを作成する(S17)。この場合、そのワンタッチアプリ136の処理結果データに対して適用される指示書は存在しないので、S16とは異なり、S17で生成されるバックアップデータには、指示書の処理内容のハッシュ値は含まれない。
【0081】
S16又はS17の後、バックアップ生成部122は、生成したバックアップデータのファイルを、クライアントPC200に送信する(S18)。クライアントPC200は、そのファイルを受信し、保存する。
【0082】
次に、
図7及び
図8を参照して、アプリコピー部124が実行する処理手順の例を説明する。
【0083】
ユーザは、
図6の手順に従って、ある機器100内のワンタッチアプリ136のバックアップデータのファイルを自分のクライアントPC200内に取得した後、コピー先とする別の機器100のクライアントUI部126にアクセスする。クライアントUI部126は、クライアントPC200に対してメニュー画面を提供する。このメニュー画面には、メニュー項目の1つとして「バックアップしたワンタッチアプリのコピー」が含まれる。ユーザが、そのメニュー項目の実行を指示すると、
図7及び
図8に示した処理手順が実行される。
【0084】
この場合、
図7に示すように、クライアントUI部126は、コピー対象とするバックアップデータの選択を受け付ける画面をクライアントPC200に提供する(S20)。ユーザは、クライアントPC200に表示されたその画面の入力欄に対して、クライアントPC200内に保存されているバックアップデータのファイルの中から選んだ1つを入力する。クライアントPC200は、選ばれたバックアップデータのファイルをクライアントUI部126に送信する。
【0085】
機器100のアプリコピー部124は、クライアントUI部126からそのバックアップデータのファイルを受け取り、そのファイル内に含まれるワンタッチアプリ136の処理内容を解析する(S22)。この解析では、まず、そのワンタッチアプリ136に、処理結果データの出力先のボックス132が指定されているかどうかを調べる。すなわち、ワンタッチアプリ136の処理内容のデータに、ワンタッチアプリ136の処理結果データの出力先のボックス132の識別情報が含まれているか否かを調べる。また、アプリコピー部124は、そのワンタッチアプリ136に処理結果データの出力先のボックス132が指定されている場合には、更に、当該機器100内のその識別情報のボックス132に関連付けられている指示書があるかどうかを調べる。
【0086】
アプリコピー部124は、その解析の結果を踏まえて、「そのワンタッチアプリ136の処理結果の出力先としてボックス132が指定されており、かつそのボックス132に指示書が関連付けられている」という条件が満たされるか判定する(S24)。
【0087】
S24の判定結果がNoの場合、そのワンタッチアプリ136の処理結果の出力先がボックス以外であるか、又は出力先がボックスであってもそのボックスには指示書が関連付けられていない。前者の場合はそもそもそのワンタッチアプリ136の処理結果が出力先で指示書の処理を受けないので、上述した事態は生じない。後者の場合は、そのワンタッチアプリ136の処理結果は、当該機器100内のボックス132に格納されるが、そのボックス132には指示書が関連付けられていない。したがって、処理結果は単にそのボックス132に保存されるのみであり、ユーザが想定していない処理内容の指示書が適用されることはない。このようなことから、S24の判定結果がNoの場合、アプリコピー部124は、バックアップデータ内のワンタッチアプリ136を当該機器100の記憶装置130内にコピーし(S26)、処理を終了する。
【0088】
一方、S24の判定結果がYesの場合、そのバックアップデータ中のワンタッチアプリ136の処理結果の出力先に指定されているボックス132に関連付けられた指示書と、そのバックアップデータ内に含まれるハッシュ値と比較する(S28)。そして、それら2つのハッシュ値が一致しているかどうか判定する(S30)。ここで、コピー元機器においてそのワンタッチアプリの出力先のボックスに指示書が関連付けられていなかった場合には、そのバックアップデータ内にはハッシュ値が含まれてないが、その場合は、S28での比較の結果は不一致隣、S30の判定結果はNoとなる。
【0089】
S30の判定結果がYesの場合、そのボックス132に関連付けられている指示書の処理内容は、コピー元機器100でのそのワンタッチアプリ136の処理結果に対して出力先のボックス132で適用されていた指示書の処理内容と同じである。したがって、そのワンタッチアプリ136を当該機器100にコピーして実行した場合の機器100の振る舞いは、コピー元機器100のものと同じであり、ユーザの想定通りである。従ってこの場合、アプリコピー部124は、バックアップデータ内のワンタッチアプリ136を当該機器100の記憶装置130内にコピーし(S26)、処理を終了する。
【0090】
S30の判定結果がNoの場合、仮にバックアップデータ内のワンタッチアプリ136をそのままコピーしたとすると、その処理結果は当該機器100内のいずれかのボックス132に出力され、そのボックスに132に関連付けられている指示書の処理を受ける。この指示書の処理内容が、コピー元機器100でのものと異なっている場合、又はコピー元機器での出力先のボックスに指示書が関連付けられていなかった場合、コピーしたワンタッチアプリ136の処理結果はユーザの想定していない処理を受けることとなる。このような事態は避けなければならない。
【0091】
そこで、S30の判定結果がNoの場合、アプリコピー部124は、
図8に示すように、ユーザの指示を受けるための選択画面を、クライアントUI部126を介してクライアントPC200に提供する(S40)。この選択画面(図示省略)には、「コピー先で実行される指示書の処理内容がコピー元のものと異なります。」といった警告メッセージと共に、例えば、以下に示す3つの選択肢が示される。
(1)出力先のボックスに関連付けられている指示書を作成し直す。
(2)出力先のボックスに関連付けられている指示書を解除する。
(3)そのままコピーする。
【0092】
また、この選択画面には、更に、コピー元機器100と当該機器のそれぞれで出力先のボックス132に関連付けられている指示書の名称を表示してもよい。これら指示書の名称の表示は、ユーザが選択肢を選択する際の参考になる。
【0093】
この選択画面に対してユーザが選択肢(1)を選択した場合、クライアントUI部126は、指示書の編集画面をクライアントPC200に提供し、ユーザに指示書を編集させる(S42)。そして、編集結果を保存する旨の指示が入力されるのを待つ(S44)。ユーザが編集を完了し、編集結果の指示書を保存する旨の指示を行うと、クライアントUI部126はその編集結果の指示書を記憶装置130に保存すると共に、その指示書を出力先のボックス132に関連付ける(S46)。このとき、それまでそのボックス132に関連付けられていた指示書は解除する。これにより、そのボックス132に格納されるデータには、その指示書の処理が実行されることとなる。そして、アプリコピー部124が、バックアップデータ内のワンタッチアプリ136を記憶装置130にコピーし(S26)、処理を終了する。この場合、そのボックス132に関連付けられているのは、ユーザ自身が編集した指示書なので、ユーザの想定しない事態は起こらない。
【0094】
S40で提供した選択画面に対してユーザが選択肢(2)を選択した場合、クライアントUI部126は、出力先のボックス132に対する指示書の関連付けの設定を受け付ける関連付け画面をクライアントPC200に提供する(S48)。この画面には、現在そのボックス132に対して関連付けられている指示書の識別情報が示されている。ユーザは、この画面にて、その関連付けられている指示書の識別情報を削除することで、そのボックス132に対するその指示書の関連付けを解除する。クライアントUI部126は、ユーザがそのボックス132に対する指示書の関連付けの解除操作を行うのを待つ(S50)。そして、解除操作が行われると、そのボックス132に対するその指示書の関連付けを解除する(S52)。そして、アプリコピー部124が、バックアップデータ内のワンタッチアプリ136を記憶装置130にコピーし(S26)、処理を終了する。この場合、そのボックス132には指示書が関連付けられていないので、コピーしたワンタッチアプリ136の処理結果はそのボックス132に格納されるのみでありそのボックス132でユーザの想定しない処理を受けることはない。
【0095】
S40で提供した選択画面に対してユーザが選択肢(3)を選択した場合、ユーザは、実行される指示書がコピー元機器でのものと異なることを承知の上で、ワンタッチアプリ136をコピーすることを選択している。したがって、この場合には、単に、アプリコピー部124が、バックアップデータ内のワンタッチアプリ136を記憶装置130にコピーし(S26)、処理を終了する。
【0096】
以上、実施形態の機器100による、ワンタッチアプリ136のバックアップ及びコピーの際の処理について説明した。
【0097】
以上の例では、ワンタッチアプリ136の処理結果の出力先のボックス132に指示書が関連付けられていれば、S14及びS24の判定結果がYesとなった。これに対する別の例として、ワンタッチアプリ136の処理結果の出力先のボックス132に指示書が「自動実行」モードで関連付けられている場合に、S14及びS24の判定結果がYesとなるようにしてもよい。すなわち、この例では、ボックス132に対する指示書の関連付けのモードとして「自動実行」モードと「非自動実行」モードがある。「自動実行」モードでボックス132に関連付けられた指示書は、そのボックス132にデータが格納されると自動的に実行される。これに対して「非自動実行」モードでボックス132に関連付けられた指示書は、そのボックス132にデータが格納されただけでは実行されず、ユーザから明示的な実行指示を受けて初めて実行される。ボックスに指示書を関連付ける際に、その関連付けを指示したユーザがどちらのモードとするかを選択し、選択されたモードがそのボックスと指示書との関連付けの情報に関連付けて記憶装置130に記憶される。例えばコピー先の機器100にコピーされるワンタッチアプリ136の出力先のボックス132に関連付けられている指示書が「非自動実行」モードである場合を考える。この場合、そのワンタッチアプリ136の処理結果はそのボックス132に保存されるが、その処理結果に対してその指示書を実行するにはユーザが明示的にその指示書の実行を指示する必要がある。したがって、その指示を行う際にユーザは、その処理結果に対して実行される指示書の名称等を画面で確認し、理解した上で実行を指示するかどうかを判断するので、ユーザの想定外の処理が実行されてしまうことはない。そこで、ワンタッチアプリ136の処理結果の出力先のボックス132に指示書が「非自動実行」モードで関連付けられている場合に、S24の判定結果をNoとし、そのワンタッチアプリ136をコピーしたとしても問題が生じにくい。S14の判定についても同様である。また、この段落で説明した事項は、後述する変形例の場合も同様である。
【0098】
<変形例1>
図9及び
図10を参照して、変形例1を説明する。
【0099】
変形例1では、コピー元機器100でワンタッチアプリ136の処理結果の出力先のボックス132に関連付けられていた指示書と同じ処理内容の指示書を、コピー先の機器100における出力先のボックス132に関連付けるための仕組みを提供する。
【0100】
図9は、この変形例1におけるバックアップ生成部122の処理手順の一例である。
図9に示す処理手順は、S16Aの処理が
図6の手順のS16の処理と異なるだけで、他のステップの処理は
図6の手順の場合と同じである。
【0101】
S16Aでバックアップ生成部122が生成するバックアップデータは、
図6のS16でバックアップ生成部122が生成するバックアップデータに含まれる情報に加え、更に当該機器100の通信アドレス(例えばIPアドレス)が含まれる。
【0102】
また、変形例1におけるアプリコピー部124の処理手順は、
図7に示した前半部分は上記実施形態の場合と同じであるが、
図10に示す後半部分には上記実施形態の手順(
図8参照)と異なる部分を含む。
【0103】
変形例1では、アプリコピー部124がS40AにてクライアントPC200に提供する選択画面には、上記実施形態の手順(
図8参照)のS40で提供する選択画面に含まれる選択肢(1)~(3)の他に、次の選択肢(4)が含まれる。
(4)元の指示書を復元する。
【0104】
ユーザが選択肢(1)~(3)のいずれかを選んだときのアプリコピー部124の処理は、
図8の場合と同じである。
【0105】
ユーザが選択肢(4)を選んだ場合、アプリコピー部124は、そのバックアップデータに含まれる通信アドレスを用いてコピー元機器100と接続する。そして、コピー元機器100に対して、そのバックアップデータ中のハッシュ値と同じ値のハッシュ値を持つ指示書の検索を要求する(S54)。コピー元機器100は、記憶装置130からそのハッシュ値を持つ指示書が見つかった場合、その指示書をアプリコピー部124に応答し、見つからなかった場合は、該当する指示書がない旨を応答する。この指示書は、「第2処理の処理内容を規定する処理内容情報」の一例である。アプリコピー部124は、検索の要求に対してコピー元機器100から指示書を受け取った場合(S56の判定結果がYes)、その指示書を自機器の記憶装置130内に保存する。そして、保存した指示書を、バックアップデータ中のワンタッチアプリ136の出力先のボックス132に関連付ける(S58)。そして、アプリコピー部124が、バックアップデータ内のワンタッチアプリ136を記憶装置130にコピーし(S26)、処理を終了する。
【0106】
S54で、要求した指示書をコピー元機器100から得られなかった場合、またはコピー元機器100と通信できなかった場合には、S56の判定結果はNoとなる。この場合、アプリコピー部124は、要求された元の指示書が取得できなかったことを示すメッセージを含んだ画面をクライアントPC200に提供すると共に、S40Aに戻って再度クライアントPC200に選択画面を提示し、ユーザから処理の選択を求める。
【0107】
図9及び
図10に例示した処理手順では、バックアップ生成部122は自機器100の通信アドレスを含むバックアップデータを生成した(S16A)が、これはあくまで一例に過ぎない。別の例として、バックアップ生成部122が、S16Aで、バックアップ対象のワンタッチアプリ136の処理結果の出力先のボックス132に関連付けられている指示書そのもの、又はその指示書の処理内容のデータを、通信アドレスの代わりにバックアップデータに含めてもよい。この指示書、又は指示書の処理内容のデータは、「自機器内の前記識別情報が示す前記保存領域に保存された前記処理結果データに適用される前記処理の処理内容を規定する処理内容情報」の一例である。
【0108】
<変形例2>
機器100内の各ボックス132には、所有者が設定されている場合がある。ボックス132の所有者は、そのボックス132を利用可能なユーザである。ボックス132の所有者の情報は、ボックス132の属性情報の1項目として記憶装置130に記憶されている。
【0109】
上記実施形態及び変形例1では、コピー元機器とコピー先機器とでワンタッチアプリ136の処理結果の出力先のボックス132の識別情報は同じであった。しかし、ボックス132に対して所有者が設定されている場合、その識別情報を持つボックス132の所有者がコピー元機器とコピー先機器とで異なる場合があり得る。このようなことはセキュリティ上好ましくない。
【0110】
そこで、この変形例2では、原則的には、コピー先機器でのワンタッチアプリ136の処理結果の出力先のボックス132を、コピー元機器での当該ワンタッチアプリ136の処理結果の出力先のボックス132と所有者が同じボックスから選ぶようにする。
【0111】
図11に、この変形例2のバックアップ生成部122の処理手順を例示する。
図11に示す処理手順は、S16Bの処理が
図6の手順のS16の処理と異なるだけで、他のステップの処理は
図6の手順の場合と同じである。
【0112】
S16Bでバックアップ生成部122が生成するバックアップデータは、
図6のS16でバックアップ生成部122が生成するバックアップデータに含まれる情報に加え、バックアップ対象のワンタッチアプリ136の出力先のボックスの所有者の情報が含まれる。所有者の情報は、例えばその所有者のユーザ識別情報である。
【0113】
また、変形例2におけるアプリコピー部124の処理手順の前半部分を
図12に示す。
図12の手順は、
図7に示した上記実施形態の手順に、S27を挿入したものである。すなわち、
図12の手順では、S24の判定結果がYesの場合、アプリコピー部124は、S24で特定した自機器(すなわちコピー先機器)100内でのコピー対象のワンタッチアプリ136の処理結果の出力先のボックスの所有者が、バックアップデータに含まれている所有者情報が示す所有者と一致するかどうか判定する。この判定の結果がYesの場合、アプリコピー部124は、
図7の手順と同様S28以降の処理を実行する。
【0114】
S27の判定結果がNoの場合、アプリコピー部124は、コピー対象のワンタッチアプリ136の処理結果の出力先に指定されているボックス132の所有者が、コピー元機器100の場合と異なることを示す通知メッセージを、クライアントPC200に表示させてもよい。またS27の判定結果がNoの場合、
図13に示すサブルーチンに進む。このサブルーチンでは、アプリコピー部124は、自機器100内のボックス132の中から、バックアップデータ内の所有者情報が示すユーザが所有者として設定されているボックス132を探し(S60)、そのようなボックス132が見つかったかどうかを判定する(S62)。S62の判定結果がNoの場合、アプリコピー部124は、クライアントUI部126を介してクライアントPC200に対してエラーメッセージを送り、ワンタッチアプリ136のコピーを取りやめる(S74)。このエラーメッセージは、例えば、「コピー元機器での出力先ボックスと同じ所有者のボックスが機器内から見つからなかったため、ワンタッチアプリのコピーを取りやめる。」旨を示す。
【0115】
S62の判定結果がYesの場合、アプリコピー部124は、S60で見つかったボックス132に指示書が関連付けられているかどうかを判定する(S64)。S64の判定結果がYesの場合、アプリコピー部124は、その指示書の処理内容のハッシュ値と、バックアップデータに含まれるハッシュ値とを比較し(S66)、それら両者が一致するか否かを判定する(S68)。
【0116】
S68の判定結果がYesの場合、アプリコピー部124は、
図12のS26にてバックアップデータ内のワンタッチアプリ136を記憶装置130にコピーする。このとき、アプリコピー部124は、そのワンタッチアプリ136の処理結果の出力先のボックス132の識別情報として、S60で見つかったボックス132の識別情報を設定する。
【0117】
S68の判定結果がNoの場合、アプリコピー部124は、
図8に示した手順のS40に進む。この場合、アプリコピー部124は、S46、S52等の後に実行するS26において、そのワンタッチアプリ136の処理結果の出力先のボックス132の識別情報として、S60で見つかったボックス132の識別情報を設定する。
【0118】
S64の判定結果がNoの場合、すなわち、S60で見つかったボックス132に指示書が関連付けられていない場合、アプリコピー部124は、クライアントUI部126を介して、クライアントPC200に対して、選択画面(図示省略)を提供する(S70)。この選択画面には、「この機器内の同じ所有者のボックスには、指示書が関連付けられていません。実行したい処理を以下の選択肢の中から選んでください。」といった趣旨のメッセージと、バックアップデータに含まれるワンタッチアプリ136をコピーするか、そのコピーを中止するかの問合せが表示される。ユーザがこの問合せに対してコピーするか否かの選択を行うと、アプリコピー部124は、その選択結果に応じた処理を実行する(S72)。
【0119】
なお、
図13の手順の変形として、S62で、バックアップデータ内の所有者情報が示すユーザを所有者とするボックス132が複数見つかった場合に、以下の処理を行ってもよい。すなわち、この場合、見つかった複数のボックス132の中に、バックアップデータ内のハッシュ値と同じハッシュ値となる処理内容の指示書が関連付けられたボックス132があれば、そのボックス132を選択し、コピーしたワンタッチアプリ136の出力先としてそのボックス132を設定する。
【0120】
以上に説明した変形例2の処理は、
図6~
図8に説明した上記実施形態の処理をベースとしたものであったが、
図9及び
図10に説明した変形例1をベースとすることも可能である。
【0121】
<変形例3>
以上に説明した実施形態及び変形例では、機器100間でのワンタッチアプリ136のコピーのための制御は機器100の制御部120が行ったが、これはあくまで一例にすぎない。別の例として、ワンタッチアプリ136のコピーのための制御をユーザが操作するクライアントPC200が行ってもよい。
【0122】
この変形例3では、
図14に示すように、ある機器100内のワンタッチアプリ136のバックアップの処理は、クライアントPC200内のバックアップ制御部202が制御する。また、バックアップしたワンタッチアプリを別の機器100にコピーする処理は、クライアントPC200内のアプリコピー制御部204が実行する。
【0123】
バックアップ制御部202は、クライアントPC200を操作するユーザに対して、ワンタッチアプリ136のバックアップのためのUI画面を提供する。このUI画面には、例えばネットワーク300上の機器100の一覧が表示され、その一覧の中からバックアップしたいワンタッチアプリ136のある機器100の選択を受け付ける。ユーザがその一覧から機器100を選択すると、バックアップ制御部202は、その機器100からワンタッチアプリ136の一覧を要求する。この要求を受けた機器100の制御部120は、記憶装置130内にあるワンタッチアプリ136の一覧を示す情報を応答する。バックアップ制御部202は、その情報を受け取り、その情報が示すワンタッチアプリ136の一覧を表示する。そして、その一覧の中からバックアップ対象の選択を受け付ける。ユーザがバックアップ対象のワンタッチアプリ136を選択すると、バックアップ制御部202は、選択されたワンタッチアプリ136のデータを機器100から取得する。バックアップ制御部202は、取得したワンタッチアプリ136を解析する(この処理は
図6のS14に対応する)。この解析により、そのワンタッチアプリ136の処理結果の出力先としてボックス132が指定されていることが分かった場合、バックアップ制御部202は、そのボックス132に関連付けられている指示書を機器100に要求する。機器100の制御部120は、その要求に応じ、そのボックス132に指示書が関連付けられている場合は、その指示書内の処理内容のハッシュ値をバックアップ制御部202に応答し、そうでない場合は、関連付けられている指示書がない旨を応答する。機器100からハッシュ値が応答された場合、バックアップ制御部202は、ワンタッチアプリ136と、そのハッシュ値とを含んだバックアップデータのファイルを生成し、保存する。機器100から、関連付けられている指示書がない旨の応答を受け取った場合、バックアップ制御部202は、ワンタッチアプリ136を含むバックアップデータのファイルを生成して保存する。バックアップ制御部202は、バックアップデータを取得する取得手段、の一例である。
【0124】
アプリコピー制御部204は、バックアップデータのコピー実行の指示をユーザから受けた場合、保存しているバックアップデータの一覧を表示し、ユーザからコピーの対象とするバックアップデータの選択を受け付ける。またアプリコピー制御部204は、ネットワーク300上の機器100の一覧を表示し、その中からコピー先の機器100の選択を受け付ける。次にアプリコピー制御部204は、選択されたバックアップデータ中のワンタッチアプリ136を解析する。この解析により、そのワンタッチアプリ136の処理結果の出力先としてボックス132が指定されていることが分かった場合、アプリコピー制御部204は、そのボックス132に関連付けられている指示書を、コピー先として選択された機器100に要求する。その機器100の制御部120は、その要求に応じ、そのボックス132に指示書が関連付けられている場合は、その指示書内の処理内容のハッシュ値を、そうでない場合は、関連付けられている指示書がない旨を、アプリコピー制御部204に応答する。機器100からハッシュ値が応答された場合、アプリコピー制御部204は、そのハッシュ値と、バックアップデータ内のハッシュ値とを比較する。そして、2つのハッシュ値が一致する場合には、バックアップデータ内のワンタッチアプリ136をコピーするようその機器100に指示する。この指示を受けた機器100の制御部120は、そのワンタッチアプリ136を記憶装置130に保存する。2つのハッシュ値が不一致の場合、アプリコピー制御部204は、
図8のS40の場合と同様の選択画面を表示し、ユーザからの選択を受け付ける。そして、ユーザの選択結果に従い、
図8に示した処理と同様の処理を行う。アプリコピー制御部204は、コピー手段の一例である。
【0125】
変形例3におけるクライアントPC200のバックアップ制御部202及びアプリコピー制御部204の機能を、機器100に搭載してもよい。
【0126】
以上に説明した実施形態及び各変形例では、指示書の処理内容を特定する処理特定情報としてその処理内容のデータのハッシュ値を用いたが、これは一例に過ぎない。この代わりに、例えば、その処理内容のデータそのものを処理特定情報として用いてもよい。
【0127】
また以上では、バックアップ及びコピーの対象としてワンタッチアプリ136を例示したが、ワンタッチアプリ136以外の情報処理要素のバックアップ及びコピーにも、上記実施形態及び各変形例の処理は適用可能である。ワンタッチアプリ136以外の情報処理要素としては、例えば、処理のために用いられる機器100の機能の識別情報と、その機能についての設定情報との組合せ、等がある。
【0128】
以上に説明した実施形態及び各変形例の機器100の情報処理機構、及びクライアントPC200は、コンピュータに上述のその機器100又はクライアントPC200を構成する要素群の機能を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、プロセッサ、ランダムアクセスメモリ(RAM)及びリードオンリメモリ(ROM)等のメモリ(一次記憶)、フラッシュメモリやSSD(ソリッドステートドライブ)、HDD(ハードディスクドライブ)等の固定記憶装置を制御するコントローラ、各種I/O(入出力)インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバス等を介して接続された回路構成を有する。それら各機能の処理内容が記述されたプログラムがネットワーク等の経由でフラッシュメモリ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。
【0129】
ここでプロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit、等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Appliction Spesific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
【0130】
また、上記実施形態及び変形例におけるプロセッサの動作は、1つのプロセッサによってなすのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働してなすものであってもよい。また、プロセッサの各動作(すなわちプロセッサの動作により実現される
図1の各要素の処理動作)は、上記実施形態及び各変形例において記載した順序のみに限定されるものではなく、適宜に変更してもよい。
【符号の説明】
【0131】
100 機器、110 操作パネル、120 制御部、122 バックアップ生成部、124 アプリコピー部、126 クライアントUI部、130 記憶装置、132 ボックス、134 ボックス管理情報、136 ワンタッチアプリ、200 クライアントPC、300 ネットワーク。