以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。
図1は、本実施形態における連携システム100の概略図である。図1に示される連携システム100は、1以上の複合機10A、10B、10C(以下、これらを総称して、「複合機10」と表記することがある。)と、携帯端末50と、1以上のサーバ装置70とで構成されている。複合機10A、10B、10C、携帯端末50、及びサーバ装置70は、通信ネットワークを介して相互に通信可能とされている。通信ネットワークの具体例は特に限定されないが、本実施形態に係る通信ネットワークは、インターネット101と、インターネット101に接続されたLAN(Local Area Networkの略)102とで構成される。
図1の例において、LAN102は、ルータ102A等を通じてインターネット101に接続されている。また、複合機10及び携帯端末50はLAN102に属し、サーバ装置70はインターネット101に接続されている。なお、「LAN102に属する」とは、例えば、LAN102に属するための設定がされており、LAN102に属する他の装置と通信可能であること、より詳細には、LAN102に割り当てられたネットワークアドレスが付与されていることを指す。
複合機10A、10B、10C及びサーバ装置70には、各装置を一意に識別する装置IDが割り当てられている。本実施形態において、複合機10Aの装置IDは”MFC−A”であり、複合機10Bの装置IDは”MFC−B”であり、複合機10Cの装置IDは”MFC−C”であり、サーバ装置70の装置IDは”サーバA”である。複合機10A、10B、10C及びサーバ装置70は、複数の装置の一例である。
但し、連携システム100に含まれる装置は、複合機10及びサーバ装置70に限定されず、例えば、FAX装置、プリンタ、3Dプリンタ、ラベルプリンタ、ミシン、工作機械、スキャナ、カメラ等の専用機であってもよい。なお、前述の装置の具体例のうち、例えば複合機10及びサーバ装置70は、後述する第1装置及び第2装置の両方になり得る装置の一例である。また、FAX装置、スキャナ、及びカメラは、第1装置にのみなり得る装置の一例である。さらに、プリンタ、3Dプリンタ、ラベルプリンタ、ミシン、及び工作機械は、第2装置にのみなり得る装置の一例である。
[複合機10]
複合機10は、図2(A)に示されるように、プリンタ部11と、スキャナ部12と、表示部23と、操作部24と、通信部25と、CPU(Central Processing Unitの略)31と、記憶部32と、通信バス33とを主に備える。複合機10を構成する各構成要素は、通信バス33を介して相互に接続されている。複合機10A、10B、10Cの構成は、共通であってもよいし、一部が相違していてもよい。
[プリンタ部11、スキャナ部12]
プリンタ部11は、画像データで示される画像を記録用紙に記録する記録処理を実行する。プリンタ部11の記録方式は特に限定されないが、例えば、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ部12は、記録用紙に記録されている画像を読み取って画像データを生成するスキャン処理を実行する。複合機10は、FAXの送受信を行うFAX機能、記録用紙に記録された画像を読み取って他の記録用紙に記録するコピー機能等をさらに有してもよい。
[表示部23]
表示部23は、各種情報を表示する表示画面を備える。表示部23の具体的な構成は特に限定されないが、例えば、液晶ディスプレイ(Liquid Crystal Displayの略)、有機ELディスプレイ(Organic Electro−Luminescence Displayの略)等を採用することができる。
[操作部24]
操作部24は、表示部23の表示画面に表示されたオブジェクトを選択するユーザの操作を受け付ける。具体的には、操作部24は、例えば押ボタンを有しており、押下された押ボタンに対応づけられた各種の操作信号をCPU31へ出力する。さらに、操作部24は、表示部23の表示画面に重畳された膜状のタッチセンサを有していてもよい。すなわち、表示部23がタッチパネルディスプレイとして構成されてもよい。タッチセンサには、静電容量方式、抵抗膜方式等の周知の方式を採用することができる。
なお、「オブジェクト」とは、ユーザが操作部24を操作することによって選択可能な画像を指す。一例として、オブジェクトは表示部23に表示された文字列であって、操作部24の方向キーを押下することによってオブジェクトの1つがハイライト表示され、操作部24の決定ボタンを押下することによってハイライト表示されたオブジェクトが選択されてもよい。他の例として、操作部24がタッチパネルである場合のオブジェクトは表示部23に表示されたアイコン、ボタン、リンク等であって、タップ位置に表示されたオブジェクトが選択されてもよい。
[通信部25]
通信部25は、通信ネットワークを通じて外部装置と通信を行うためのインタフェースである。本実施形態に係る通信部25は、TCP/IP(Transmission Control Protocol/Internet Protocolの略)プロトコルに準拠した方式で外部装置と通信する。すなわち、複合機10は、通信部25を通じて携帯端末50に各種情報を送信し、通信部25を通じて携帯端末50から各種データ又は各種情報を受信する。
[CPU31]
CPU31は、複合機10の全体動作を制御するものである。CPU31は、操作部24から出力される各種情報、及び通信部25を通じて外部装置から取得した各種情報等に基づいて、後述する各種プログラムを記憶部32から取得して実行する。すなわち、CPU31及び記憶部32は、制御部の一例を構成する。
[記憶部32]
記憶部32は、プログラム記憶領域32Aと、データ記憶領域32Bとを有する。プログラム記憶領域32Aには、OS(Operating Systemの略)34と、制御プログラム35とが格納される。なお、制御プログラム35は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。データ記憶領域32Bには、制御プログラム35の実行に必要なデータ或いは情報が記憶される。
なお、本明細書中の「データ」と「情報」とは、コンピュータによって取り扱い可能なビット或いはビット列である点において共通する。「データ」とは、各ビットが示す意味内容をコンピュータが考慮することなく取り扱えるものを指す。これに対して、「情報」とは、各ビットが示す意味内容によってコンピュータの動作が分岐するものを指す。さらに、「指示」は、送信先の装置に対して次の動作を促すための制御信号であって、情報を含んでいることもあるし、それ自体が情報としての性質を有していることもある。
また、「データ」及び「情報」は、形式(例えば、テキスト形式、バイナリ形式、フラグ形式等)がコンピュータ毎に変更されたとしても、同一の意味内容と認識される限り、同一のデータ及び情報として取り扱われる。例えば、「2つ」であることを示す情報が、あるコンピュータではASCIIコードで”0x32”というテキスト形式の情報として保持され、別のコンピュータでは二進数表記で”10”というバイナリ形式の情報として保持されてもよい。
また、本明細書では、所定の演算が加えられる前後の「データ」及び「情報」を、同一のデータ及び情報として取り扱うことがある。例えば、暗号化されていないキー情報が記憶部に記憶されており、暗号化されたキー情報(以下、「暗号化キー情報」と表記する。)が通信部25を通じて受信されたとする。この場合において、記憶部に記憶されたキー情報と、暗号化キー情報を復号して得られる復号済キー情報とが一致するのであれば、キー情報、暗号化キー情報、及び復号済キー情報は、いずれも同一の「キー情報」として取り扱うことがある。なお、「所定の演算」は暗復号に限定されず、ハッシュ関数による演算等であってもよい。
但し、上記の「データ」及び「情報」の区別は厳密なものではなく、例外的な取り扱いも許容される。例えば、データが一時的に情報として扱われてもよいし、情報が一時的にデータとして扱われてもよい。また、ある装置ではデータとして扱われるものが、他の装置では情報として扱われてもよい。さらには、データの中から情報が取り出されてもよいし、情報の中からデータが取り出されてもよい。
記憶部32は、例えば、RAM(Random Access Memoryの略)、ROM(Read Only Memoryの略)、EEPROM(Electrically Erasable Programmable Read−Only Memoryの略)、HDD(Hard Disk Driveの略)、CPU31が備えるバッファ等、或いはそれらの組み合わせによって構成される。
なお、記憶部32は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
プログラム記憶領域32Aに記憶されているプログラムは、CPU31によって実行される。しかしながら、本明細書では、CPU31を省略して各プログラムの動作を説明することがある。すなわち、以下の説明において、「プログラムAが処理Aを実行する」という趣旨の記述は、「CPU31がプログラムAに記述された処理Aを実行する」ことを指してもよい。後述する携帯端末50及びサーバ装置70についても同様である。
OS34は、複合機10を構成するハードウェアであるプリンタ部11、スキャナ部12、表示部23、操作部24、及び通信部25等を制御するためのAPI(Application Programming Interfaceの略)を提供する基本プログラムである。すなわち、上記の各プログラムは、OS34が提供するAPIを呼び出すことによって、各ハードウェアを制御する。しかしながら、本明細書では、OS34を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記述は、「プログラムBがOS34のAPIを通じてハードウェアCを制御する」ことを指してもよい。後述する携帯端末50及びサーバ装置70についても同様である。
[携帯端末50]
携帯端末50は、図2(B)に示されるように、表示部53と、操作部54と、通信部55と、CPU61と、記憶部62と、通信バス63とを主に備える。携帯端末50に含まれる表示部53、操作部54、通信部55、CPU61、記憶部62、及び通信バス63は、複合機10に含まれる表示部23、操作部24、通信部25、CPU31、記憶部32、及び通信バス33と共通するので、再度の説明は省略する。CPU61及び記憶部62は制御部の一例を構成する。携帯端末50は、情報処理装置の一例である。但し、情報処理装置の具体例は、スマートフォン、携帯電話、タブレット端末等の携帯端末50に限定されず、PC(Personal Computerの略)等であってもよい。
通信部55は、LAN102に属する複合機10A、10B、10Cと通信すると共に、ルータ102Aを経由してインターネット101に接続されたサーバ装置70と通信する。すなわち、携帯端末50は、通信部55を通じて複合機10又はサーバ装置70に各種データ又は各種情報を送信し、通信部55を通じて複合機10又はサーバ装置70から各種データ又は各種情報を受信する。
記憶部62のデータ記憶領域62Bは、連携動作リストを記憶可能である。連携動作リストは、第1装置に第1動作を実行させ、且つ第1動作の後に第2装置に第2動作を実行させる連携動作を定義するリストである。連携動作リストには、例えば図10に示されるように、複数の装置のうちから選択された第1装置及び第2装置それぞれについて、当該装置に実行させる動作の実行順序と、当該装置を識別する装置IDと、当該装置に実行させる動作内容と、当該装置によって実行される動作の進捗状況と、当該装置の動作を開始可能か否かを示す待機フラグとが対応づけられている。連携動作リストは、連携動作情報の一例である。また、対応する装置ID及び動作内容は、動作情報の一例である。
なお、図10に示される連携動作リストには、複数の第1動作と、1つの第2動作とを含む連携動作が定義されている。しかしながら、連携動作に含まれる第1動作及び第2動作の数は図10の例に限定されない。すなわち、連携動作に含まれる第1動作及び第2動作は、1つであってもよいし、複数であってもよい。換言すれば、連携動作は、1以上の第1動作及び1以上の第2動作を含むことができる。
図10に示される連携動作リストにおいて、装置ID”サーバA”で識別されるサーバ装置70、装置ID”MFC−A”で識別される複合機10A、及び装置ID”MFC−B”で識別される複合機10Bは、第1動作を実行する第1装置の一例である。また、装置ID”MFC−C”で識別される複合機10Cは、第2動作を実行する第2装置の一例である。第1動作は、携帯端末50への対象データの送信を含む動作である。第2動作は、携帯端末50からの対象データの受信を含む動作である。
例えば、サーバ装置70に対応づけられた動作内容”DL”は、当該サーバ装置70に記憶された対象データ1を携帯端末50に送信する第1動作を示す。複合機10A、10Bに対応づけられた動作内容”SCAN”は、スキャナ部12にスキャン処理を実行させ、且つ当該スキャン処理で生成された対象データ2、3を携帯端末50へ送信する第2動作を示す。複合機10Cに対応づけられた動作内容”PRINT”は、対象データ1〜3を携帯端末50から受信し、当該対象データ1〜3に対する記録処理をプリンタ部11に実行させる第2動作を示す。
なお、図示は省略するが、連携動作リストに含まれる動作内容には、さらに詳細な内容(以下、「設定情報」と表記する。)が含まれてもよい。例えば、”DL”には、ダウンロードの対象となる対象データのデータID等が付加されていてもよい。また、”SCAN”には、原稿の大きさを示す原稿サイズ、カラースキャン又はモノクロスキャンを示す情報、及び両面スキャン又は片面スキャンを示す情報等が付加されていてもよい。さらに、”PRINT”には、記録用紙のサイズを示す情報、部数を示す情報、1枚の記録用紙に含める画像の数を示す情報、及び両面プリント又は片面プリントを示す情報等が付加されていてもよい。
進捗状況には、対応する動作が未だ開始されていないことを示す”動作待ち”、対応する動作が実行中であることを示す”動作中”、対応する動作のうちの携帯端末50との通信が既に完了していることを示す”動作済”、対応する動作の実行中に[C]アイコンの位置がタップされたことを示す”停止中”、及び対応する動作の開始前に[C]アイコンの位置がタップされたことを示す”キャンセル”のいずれかが設定される。進捗状況に設定され得る値の詳細は、後述する。
待機フラグには、対応する動作の開始を待機する必要がある場合に”ON”が設定され、対応する動作が開始可能である場合に”OFF”が設定される。連携動作が開始される前の待機フラグには”OFF”が設定されている。待機フラグが利用される処理は、変形例において説明する。
連携動作リストは、携帯端末50のユーザによって任意に作成及び編集が可能である。携帯端末50は、例えば、ユーザによる連携動作リストの新規登録及び編集を、表示部53及び操作部54を通じて受け付けてもよい。連携動作リストの新規登録及び編集の具体的な操作方法の説明は省略する。また、データ記憶領域62Bには、複数の連携動作リストが記憶可能である。そのため、データ記憶領域62Bに記憶された連携動作リストには、当該連携動作リストを識別する連携動作IDが割り当てられる。
[サーバ装置70]
サーバ装置70は、例えば、データを記憶可能なストレージサーバである。サーバ装置70の具体例は特に限定されないが、例えば、「Dropbox(登録商標)」、「Google Docs(登録商標)」、「Evernote(登録商標)」等のサービスを提供する装置である。また、サーバ装置70はインターネット101に接続されていることに限定されず、LAN102に属するローカルストレージサーバであってもよい。
[連携システム100の動作]
図3〜図10を参照して、連携システム100の動作を説明する。まず、図3を参照して、携帯端末50によって制御される連携動作の基本的な流れを説明する。携帯端末50の制御プログラム65は、連携動作選択画面を表示部53に表示させる(S10)。図7(A)は、連携動作選択画面の一例である。図7(A)に示される連携動作選択画面は、1以上の連携動作アイコンを含む。連携動作アイコンには、データ記憶領域62Bに記憶された連携動作リストを識別する連携動作IDが表記されている。
次に、制御プログラム65は、連携動作アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S11:Yes)、当該連携動作アイコンに表記された連携動作IDで識別される連携動作リストを、データ記憶領域62Bから読み出す(S12)。ステップS11の処理は連携動作を開始させる開始指示を受け付ける受付処理の一例である。また、ステップS11の処理は、連携動作識別情報を選択する選択指示及び前述の開始指示を受け付ける受付処理の一例である。さらに、ステップS12の処理は、取得処理の一例である。
また、制御プログラム65は、連携動作画面を表示部53に表示させる(S13)。図7(B)〜図9は、連携動作画面の一例である。図7(B)〜図9に示される連携動作画面は、ステップS12において取得した連携動作リストに含まれる第1装置及び第2装置それぞれに対応するステータス画像91、92、93、94と、各ステータス画像91〜94に付加された各種アイコンと、連携動作画面で示される連携動作を終了させるキャンセルアイコンとを含む。ステップS13の処理は、表示制御処理の一例である。連携動作画面は、ステータス画面の一例である。
ステータス画像91〜94には、連携動作リストに含まれる装置IDと、当該装置IDに対応づけられた進捗状況とが表記されている。すなわち、ステータス画像91〜94に表記される情報は、連携動作の進捗に応じて変化する。より具体的には、図7(B)〜図9に示されるステータス画像91〜94に表記される進捗状況は、図10に示される連携動作リストに含まれる進捗状況に対応する。また、ステータス画像91〜94は、連携動作リストの実行順序に従って配列されている。
図7(B)〜図9に示される連携動作画面において、ステータス画像91は、装置ID”サーバA”で識別されるサーバ装置70に実行させる第1動作の進捗状況を示す。ステータス画像92は、装置ID”MFC−A”で識別される複合機10Aに実行させる第1動作の進捗状況を示す。ステータス画像93は、装置ID”MFC−B”で識別される複合機10Bに実行させる第1動作の進捗状況を示す。ステータス画像94は、装置ID”MFC−C”で識別される複合機10Cに実行させる第2動作の進捗状況を示す。
ステータス画像91〜94に付加され得るアイコンとしては、例えば、[C]アイコン、[E]アイコン、[再]アイコン、及び[D]アイコン等がある。[C]アイコンは、対応する装置に実行させる動作の停止指示を受け付けるための停止指示オブジェクトの一例である。[E]アイコンは、対応する装置に実行させる動作の動作内容の修正を受け付けるための修正指示オブジェクトの一例である。[再]アイコンは、停止された動作の再開指示を受け付けるための再開指示オブジェクトの一例である。[D]アイコンは、対応する第1装置から既に受信した対象データの削除指示を受け付けるための削除指示オブジェクトの一例である。また、[C]アイコン及び[E]アイコンは、対応する装置に実行させる動作の変更を受け付けるための変更指示オブジェクトの一例である。
なお、各ステータス画像91〜94に付加されるアイコンは、当該ステータス画像91〜94で示される動作の進捗状況に応じて変化する。具体的には図4に示されるように、進捗状況が”動作待ち”である第1装置及び第2装置のステータス画像には、[C]アイコン及び[E]アイコンが付加される。進捗状況が”動作中”である第1装置及び第2装置のステータス画像には、[C]アイコンが付加される。進捗状況が”動作済”である第1装置のステータス画像には、[D]アイコンが付加される。進捗状況が”動作済”である第2装置のステータス画像には、アイコンが付加されない。進捗状況が”停止中”である第1装置のステータス画像には、[再]アイコン及び[D]アイコンが付加される。進捗状況が”停止中”である第2装置のステータス画像には、[再]アイコンが付加される。進捗状況が”キャンセル”である第1装置及び第2装置のステータス画像には、[再]アイコン及び[E]アイコンが表示される。
次に、制御プログラム65は、連携動作リストに示される実行順序で各第1装置に第1動作を実行させる(S14〜S21)。具体的には、制御プログラム65は、変数mを初期化する(S14)。そして、制御プログラム65は、連携動作リストの第m番目の第1装置の待機フラグに”OFF”が設定されていることに応じて(S15:Yes)、通信部55を通じて当該第1装置に動作指示情報を送信する(S16)。動作指示情報は、送信先の装置に対応する動作を実行させるための情報である。ステップS16及び後述するステップS25の処理は、動作指示処理の一例である。
次に、制御プログラム65は、第m番目の第1装置の進捗状況を”動作待ち”から”動作中”に変更(S17)し、当該第1装置のステータス画像に付加された[E]アイコンを非表示にする。すなわち、制御プログラム65は、連携動作アイコンの位置がタップされてから第1装置に動作指示情報を送信するまでの間(S12:Yes〜S16)、当該第1装置のステータス画像に[E]アイコンを付加する。一方、制御プログラム65は、第1装置に動作指示情報を送信したことに応じて(S16)、当該第1装置のステータス画像に付加された[E]アイコンを非表示にする。
そして、制御プログラム65は、第m番目の第1装置から通信部55を通じて送信完了情報を受信するまで(S18:No)、以降の処理の実行を待機する。また、制御プログラム65は、当該第1装置から送信完了情報を受信するまでの間(S18:No)、複数に分割された対象データを当該第1装置から通信部55を通じて順番に受信し、データ記憶領域62Bに記憶させる。
送信完了情報は、第1装置に実行させる第1動作のうち、携帯端末50へ対象データを送信完了したことを示す情報である。すなわち、制御プログラム65は、通信部55を通じて送信完了情報を第1装置から受信したことに応じて、当該第1装置から対象データを受信完了したと判断する。送信完了情報の具体例は特に限定されないが、例えば、TCP(Transimission Control Protocolの略)ヘッダのFINフラグに”ON”が設定されたパケットであってもよい。
次に、制御プログラム65は、第m番目の第1装置から通信部55を通じて送信完了情報を受信したことに応じて(S18:Yes)、当該第1装置の進捗状況を”動作中”から”動作済”に変更(S19)し、当該第1装置のステータス画像に付加された[C]アイコンを非表示にし、当該ステータス画像に[D]アイコンを新たに付加する。
すなわち、制御プログラム65は、連携動作アイコンの位置がタップされてから送信完了情報を第1装置から受信するまでの間(S11:Yes〜S18:No)、当該第1装置のステータス画像に[C]アイコンを付加する。一方、制御プログラム65は、送信完了情報を第1装置から受信したことに応じて(S18:Yes)、当該第1装置のステータス画像に付加された[C]アイコンを非表示にする。また、制御プログラム65は、送信完了情報を第1装置から受信したことに応じて(S18:Yes)、当該第1装置のステータス画像に[D]アイコンを付加する。
次に、制御プログラム65は、未だ実行していない第1動作が連携動作リストに登録されていることに応じて(S20:Yes)、変数mを1だけインクリメント(S21)し、ステップS15〜S19の処理を再び実行する。すなわち、制御プログラム65は、繰り返し実行されるステップS16において、連携動作リストで示される実行順序で各第1装置に動作指示情報を送信する。
そして、制御プログラム65は、連携動作リストに登録された全ての第1動作が実行されたことに応じて(S20:No)、第1装置のステータス画像に付加された全てのアイコンを非表示にする(S22)。すなわち、制御プログラム65は、他の全ての第1装置から対象データを受信完了するまで(S20:No)、[再]アイコン及び[D]アイコンをステータス画像92に付加する。一方、制御プログラム65は、他の全ての第1装置から対象データを受信完了したことに応じて(S20:Yes)、ステータス画像92に付加された[再]アイコン及び[D]アイコンを非表示にする。
次に、制御プログラム65は、連携動作リストに登録された全ての第1装置に第1動作を実行させたことに応じて、連携動作リストに示される実行順序で各第2装置に第2動作を実行させる(S23〜S30)。ステップS23〜S30の処理は、ステップS14〜S21の処理と概ね共通するので、共通点の詳しい説明は省略し、相違点を中心に説明するものとする。
まず、制御プログラム65は、通信部55を通じて第2装置に動作指示情報を送信したことに応じて(S25)、当該第2装置の進捗状況を”動作待ち”から”動作中”に変更(S26)し、当該第2装置のステータス画像に付加された[E]アイコンを非表示にする。すなわち、制御プログラム65は、連携動作アイコンの位置がタップされてから第2装置に動作指示情報を送信するまでの間(S11:Yes〜S25)、当該第2装置のステータス画像に[E]アイコンを付加する。一方、制御プログラム65は、第2装置に動作指示情報を送信したことに応じて(S25)、当該第2装置のステータス画像に付加された[E]アイコンを非表示にする。
また、制御プログラム65は、ステップS27において、第n番目の第2装置から通信部55を通じて受信完了情報を受信するまでの間、複数に分割した対象データを通信部55を通じて当該第2装置に順番に送信する。受信完了情報は、第2動作のうちの携帯端末50から対象データを受信完了したことを示す情報である。すなわち、制御プログラム65は、通信部55を通じて受信完了情報を第2装置から受信したことに応じて、当該第2装置へ対象データを送信完了したと判断する。受信完了情報の具体例は特に限定されないが、例えば、TCPヘッダのFINフラグ及びACKフラグに”ON”が設定されたパケットであってもよい。
さらに、制御プログラム65は、ステップS28において、第n番目の第2装置の進捗状況を”動作中”から”動作済”に変更したことに応じて、当該第2装置のステータス画像に付加された[C]アイコンを非表示にする。すなわち、制御プログラム65は、連携動作アイコンの位置がタップされてから受信完了情報を第2装置から受信するまでの間(S11:Yes〜S27:No)、当該第2装置のステータス画像に[C]アイコンを付加する。一方、制御プログラム65は、受信完了情報を第2装置から受信したことに応じて(S27:Yes)、当該第2装置のステータス画像に付加された[C]アイコンを非表示にする。そして、制御プログラム65は、連携動作リストに登録された全ての第2動作が実行されたことに応じて(S29:No)、連携動作制御処理を終了する。
なお、本実施形態では、図3を参照して説明した連携動作の実行中において、ステータス画像に付加された各種アイコンの位置をタップするユーザ操作を操作部54で受け付けることができる。図5〜図10を参照して、図5に示されるタイミングで各アイコンの位置がタップされた場合の処理を詳細に説明する。
まず、制御プログラム65は、連携動作アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて、図10(A)に示されるように、タップされた連携動作アイコンに表記された連携動作IDで識別される連携動作リストの進捗状況を、全て”動作待ち”に変更する。また、制御プログラム65は、図10(A)に示される連携動作リストに従って、図7(B)に示される連携動作画面を表示部53に表示させる(S31)。図7(B)に示される連携動作画面において、全てのステータス画像91〜94の進捗状況は”動作待ち”であり、且つ全てのステータス画像91〜94には[C]アイコン及び[E]アイコンが付加されている。
次に、制御プログラム65は、実行順序が1番のサーバ装置70に通信部55を通じて動作指示情報を送信する(S32)。この動作指示情報は、サーバ装置70に記憶された対象データ1を携帯端末50に送信させる指示である。また、制御プログラム65は、図10(B)に示されるように、装置ID”サーバA”の進捗状況を”動作待ち”から”動作中”に変更する。さらに、制御プログラム65は、図8(A)に示されるように、ステータス画像91の進捗状況を”動作待ち”から”動作中”に変更し、ステータス画像91に付加された[E]アイコンを非表示にする。
一方、携帯端末50から動作指示情報を受信したサーバ装置70は、対象データ1を携帯端末50に送信する第1動作を実行する(S33)。携帯端末50の制御プログラム65は、通信部55を通じてサーバ装置70から受信した対象データ1をデータ記憶領域62Bに記憶させる。そして、サーバ装置70は、携帯端末50へ対象データ1を送信完了したことに応じて、送信完了情報を携帯端末50に送信する(S34)。
携帯端末50の制御プログラム65は、例えば、通信部55を通じてサーバ装置70から送信完了情報を受信する前に、ステータス画像91に付加された[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S35)、キャンセル処理を実行する(S36)。本実施形態に係るキャンセル処理は、対応する装置の動作情報を連携動作リストから除外する変更処理の一例である。図6(A)を参照して、キャンセル処理の詳細を説明する。
まず、制御プログラム65は、タップされた[C]アイコンに対応する装置に動作指示情報を既に送信したか否かを判断する(S51)。本実施形態に係る制御プログラム65は、動作指示情報を送信する前の複合機10Aに対応する[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S51:No)、複合機10Aの動作情報を連携動作リストから除外する(S54)。具体的には、制御プログラム65は、図10(C)に示されるように、装置ID”MFC−A”に対応する実行順序をブランクにし、後続の動作の実行順序を繰り上げる。
また、制御プログラム65は、図10(C)に示されるように、装置ID”MFC−A”に対応する進捗状況を”動作待ち”から”キャンセル”に変更する(S55)。これに伴って、制御プログラム65は、図8(B)に示されるように、ステータス画像92の進捗状況を”動作待ち”から”キャンセル”に変更し、”C ”アイコンに代えて[再]アイコンをステータス画像92に付加する。すなわち、本実施形態に係る[再]アイコンは、動作指示情報を送信する前の装置に対応する[C]アイコンの位置がタップされたことに応じて、対応するステータス画像に付加される。なお、動作指示情報を既に送信した装置に対応する[C]アイコンの位置がタップされた場合の処理(S51:Yes→S52&S53)は、変形例において説明する。
次に、制御プログラム65は、通信部55を通じてサーバ装置70から送信完了情報を受信したことに応じて(S34)、実行順序が2番の複合機10Bに通信部55を通じて動作指示情報を送信する(S37)。この動作指示情報は、スキャナ部12にスキャン処理を実行させ、且つ当該スキャン処理で生成された対象データ3を携帯端末50へ送信させる指示である。
また、制御プログラム65は、図10(D)に示されるように、装置ID”サーバA”に対応する進捗状況を”動作中”から”動作済”に変更し、装置ID”MFC−B”に対応する進捗状況を”動作待ち”から”動作中”に変更する。これに伴って、制御プログラム65は、図9(A)に示されるように、ステータス画像91の進捗状況を”動作中”から”動作済”に変更し、[C]アイコンに代えて[D]アイコンをステータス画像91に付加する。また、制御プログラム65は、図9(A)に示されるように、ステータス画像93の進捗状況を”動作待ち”から”動作中”に変更し、ステータス画像93の[E]アイコンを非表示にする。
一方、通信部25を通じて携帯端末50から動作指示情報を受信した複合機10Bの制御プログラム35は、スキャン処理によって生成した対象データ3を携帯端末50に送信する第1動作を実行する(S38)。携帯端末50の制御プログラム65は、通信部55を通じて複合機10Bから受信した対象データ3をデータ記憶領域62Bに記憶させる。そして、複合機10Bの制御プログラム35は、携帯端末50へ対象データ3を送信完了したことに応じて、送信完了情報を携帯端末50に送信する(S39)。
携帯端末50の制御プログラム65は、例えば、通信部55を通じて複合機10Bから送信完了情報を受信する前に、ステータス画像92に付加された[再]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S40)、再開処理を実行する(S41)。本実施形態に係る再開処理は、対応する装置の動作情報を連携動作リストに再び含める登録処理の一例である。図6(B)を参照して、再開処理の詳細を説明する。
まず、制御プログラム65は、タップされた[再]アイコンに対応する装置に動作指示情報を既に送信したか否かを判断する(S56)。本実施形態では複合機10Aに未だ動作指示情報が送信されていないので(S56:No)、制御プログラム65は、複合機10Aの動作情報を連携動作リストに再び含める(S59)。具体的には、制御プログラム65は、図10(E)に示されるように、装置ID”MFC−A”に対応する実行順序を3番目にし、装置ID”MFC−C”に対応する実行順序を4番目にする。
また、制御プログラム65は、装置ID”MFC−A”に対応する進捗状況を”キャンセル”から”動作待ち”に変更する(S60)。これに伴って、制御プログラム65は、図9(B)に示されるように、ステータス画像92の進捗状況を”キャンセル”から”動作待ち”に変更し、”再 ”アイコンに代えて[C]アイコンをステータス画像92に付加する。なお、動作指示情報を既に送信した装置に対応する[再]アイコンの位置がタップされた場合の処理(S56:Yes→S57&S58)は、変形例において説明する。
なお、ステップS59において連携動作リストに再登録する第1動作の実行順序は、第2動作より前であれば特に限定されない。すなわち、現在実行中の第1動作の次であってもよいし、最後の第1動作の次であってもよい。また、ステップS59において連携動作リストに再登録する第2動作の実行順序についても同様である。
次に、制御プログラム65は、通信部55を通じて複合機10Bから送信完了情報を受信したことに応じて(S39)、実行順序が3番の複合機10Aに通信部55を通じて動作指示情報を送信する(S42)。この動作指示情報は、スキャナ部12にスキャン処理を実行させ、且つ当該スキャン処理で生成された対象データ2を携帯端末50へ送信させる指示である。なお、複合機10Aに動作指示情報を送信したことに伴う連携動作リスト及び連携動作画面を更新する処理は、前述の例と共通するので再度の説明は省略する。
一方、通信部25を通じて携帯端末50から動作指示情報を受信した複合機10Aの制御プログラム35は、スキャン処理によって生成した対象データ2を携帯端末50に送信する第1動作を実行する(S43)。携帯端末50の制御プログラム65は、通信部55を通じて複合機10Aから受信した対象データ2をデータ記憶領域62Bに記憶させる。そして、複合機10Bの制御プログラム35は、携帯端末50へ対象データ2を送信完了したことに応じて、送信完了情報を携帯端末50に送信する(S44)。
携帯端末50の制御プログラム65は、例えば、通信部55を通じて複合機10Aから送信完了情報を受信する前に、ステータス画像91に付加された[D]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S45)、データ記憶領域62Bに記憶された対象データ1を削除する(S46)。ステップS46の処理は、削除処理の一例である。すなわち、対象データ1は、後述するステップS47において複合機10Cに送信されない。
次に、制御プログラム65は、通信部55を通じて複合機10Aから送信完了情報を受信したことに応じて(S44)、ステータス画像91〜93に付加された全てのアイコンを非表示にする。また、制御プログラム65は、実行順序が4番の複合機10Cに通信部55を通じて動作指示情報を送信する(S47)。この動作指示情報は、対象データ2、3を携帯端末50から受信し、当該対象データ2、3に対する記録処理をプリンタ部11に実行させる指示である。さらに、制御プログラム65は、通信部55を通じて複合機10Cに対象データ2、3を送信する。複合機10Cに動作指示情報を送信したことに伴う連携動作リスト及び連携動作画面を更新する処理は、前述の例と共通するので再度の説明は省略する。
一方、通信部25を通じて携帯端末50から動作指示情報を受信した複合機10Cの制御プログラム35は、携帯端末50から対象データ2、3を受信し、当該対象データ2、3で示される画像を記録用紙に対してプリンタ部11に記録させる第2動作を実行する(S48)。また、制御プログラム35は、通信部25を通じて携帯端末50から対象データ2、3を受信完了したことに応じて、通信部25を通じて携帯端末50に受信完了情報を送信する(S49)。なお、受信完了情報の送信は、プリンタ部11による記録処理が完了する前であってもよい。
[本実施形態の作用効果]
上記の実施形態によれば、動作指示情報を送信したことによって[E]アイコンが選択不能となり、送信完了情報或いは受信完了情報を受信したことによって[C]アイコンが選択不能となる。すなわち、各装置の動作の進捗状況に応じて対応する[E]アイコン及び[C]アイコンの状態が切り替えられるので、各装置の動作が変更可能か否かを容易にユーザに認識させることができる。すなわち、各装置の動作を個別に変更しやすいユーザインタフェースを実現することができる。なお、上記の実施形態では、第1装置に対応する各種アイコンの位置をタップした場合の処理を説明したが、第2装置に対応する各種アイコンの位置をタップした場合も同様である。後述する変形例の処理も同様である。
特に、上記の実施形態によれば、不要な動作を含む連携動作リストに従って連携動作が実行された場合において、[C]アイコンによって当該連携動作の実行中に不要な動作のみを選択的に除外することができる。また、不要な第1動作によって取得した対象データを[D]アイコンによって削除することができる。さらに、誤って除外した動作を[再]アイコンによって再び連携動作に含めることができる。その結果、連携動作を最初からやり直すことなく、当該連携動作を最適化することができる。
なお、上記の実施形態における各種アイコンは、連携動作画面に表示されている状態では常に選択可能とされ、非表示にされることによって選択不能となる。しかしながら、各種アイコンを選択不能とする方法はこれに限定されず、グレーアウト等の選択不能な態様で各種アイコンを連携動作画面に表示させてもよい。なお、「アイコンが選択可能な状態」とは、例えば、タップ操作等によって当該アイコンに対応づけられた処理が実行されることを指す。一方、「アイコンが選択不能な状態」とは、例えばタップ操作等によって当該アイコンに対応づけられた処理が実行されないことを指す。
また、[C]アイコンの位置をタップすることによって実現される機能は、上記の実施形態の例に限定されない。一例として、制御プログラム65は、全ての第1装置に対応する[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて、第2装置に対する動作指示処理(S25)を停止してもよい。他の例として、制御プログラム65は、全ての第2装置に対応する[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて実行される変更処理において、第1動作を実行中の全ての第1装置に、後述する停止指示情報を通信部55を通じて送信してもよい。
すなわち、全ての第1動作又は全ての第2動作の一方がキャンセルされた場合には、他方の動作も実行する必要はない。すなわち、全ての第1装置又は全ての第2装置に対応する[C]アイコンの位置がタップされた場合には、連携動作が終了されればよい。一方、制御プログラム65は、第1装置又は第2装置が連携動作リストに1つのみ含まれていることに応じて、当該装置に対応する[C]アイコンを選択不能にしてもよい。この場合において、連携動作を終了させたいユーザは、キャンセルアイコンの位置をタップすればよい。
なお、上記の実施形態では、1つの動作が完了した後に次の動作を開始させる例を説明したが、各動作の開始タイミングはこれに限定されない。携帯端末50の制御プログラム65は、例えば、送信完了情報の受信を待つことなく、通信部55を通じて全ての第1装置に動作指示情報を送信してもよい。次に、制御プログラム65は、通信部55を通じて全ての第1装置から送信完了情報を受信したことに応じて、受信完了情報の受信を待つことなく、通信部55を通じて全ての第2装置に動作指示情報を送信してもよい。これにより、複数の第1動作或いは複数の第2動作が並行して実行されるので、連携動作のスループットが向上する。
また、上記の実施形態では、予め登録された連携動作リストのうちの1つを、連携動作選択画面を通じて選択することによって、連携動作が開始される例を説明した。これにより、連携動作リストに予め登録されていた動作を、当該連携動作の開始後に削除或いは変更することができる。但し、開始指示の入力方法及び連携動作リストの取得方法は、上記の例に限定されない。
一例として、制御プログラム65は、ステップS11において連携動作アイコンの位置をタップするユーザ操作を操作部54が受け付けた後に、不図示の連携動作の開始指示アイコンの位置をタップするユーザ操作を操作部54受け付けたことに応じて、連携動作を開始してもよい。この場合、2度のタップを受付けて連携動作を開始する処理は、前述の選択指示及び開始指示を受け付ける受付処理の他の例である。
他の例として、第1装置及び第2装置の選択、各装置に実行させる動作の選択、各動作の実行順序の指定、及び開始指示の入力等を1画面で行えるようにしてもよい。すなわち、図3のステップS12における「連携動作リストを取得する」とは、予め登録された連携動作リストをデータ記憶領域62Bから読み出すこと、或いは操作部54を通じてユーザから取得すること等を含む。
[変形例]
図11〜図13を参照して、連携システム100の動作の変形例を説明する。なお、上記の実施形態との共通点には同一の参照符号を付して詳しい説明を省略し、相違点を中心に説明する。
携帯端末50の制御プログラム65は、例えば図8(A)に示される連携動作画面において、通信部55を通じてサーバ装置70から送信完了情報を受信する前に、装置ID”サーバA”の[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S71)、キャンセル処理を実行する(S72)。変形例に係るキャンセル処理は、対応する装置で実行されている動作を中断させる変更処理の一例である。図6(A)を参照して、キャンセル処理の詳細を説明する。
制御プログラム65は、動作指示情報を既に送信したサーバ装置70に対応する[C]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S51:Yes)、通信部55を通じてサーバ装置70に停止指示情報を送信する(S52)。停止指示情報は、送信先の装置に実行中の動作を停止させるための情報である。
また、制御プログラム65は、図13(A)に示されるように、装置ID”サーバA”に対応する進捗状況を”動作中”から”停止中”に変更する(S53)。これに伴って、制御プログラム65は、図12(A)に示されるように、ステータス画像91の進捗状況を”動作中”から”停止中”に変更し、”C ”アイコンに代えて[再]アイコン及び[D]アイコンをステータス画像91に付加する。すなわち、変形例に係る[再]アイコン及び[D]アイコンは、動作指示情報を送信した後の装置に対応する[C]アイコンの位置がタップされたことに応じて、対応するステータス画像に付加される。
一方、携帯端末50から停止指示情報を受信したサーバ装置70は、実行中の第1動作を停止する(S73)と共に、再開情報を携帯端末50に送信する(S74)。再開情報は、第1動作の再開位置を特定するための情報である。例えば、再開情報は、送信が完了した対象データの位置を特定する情報、或いは次に送信すべき対象データの位置を特定する情報であってもよい。
次に、携帯端末50の制御プログラム65は、通信部55を通じてサーバ装置70から受信した再開情報をデータ記憶領域62Bに記憶させると共に、ユーザからの入力操作を操作部54が受け付けるまで待機する。なお、制御プログラム65は、[C]アイコンの位置がタップされてから所定の待機時間が経過したことに応じて、又は再開情報を受信してから所定の待機時間が経過したことに応じて、中断中の動作の次に実行されるべき動作を開始させてもよい。また、制御プログラム65は、[D]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて、中断中の第1動作によって受信した対象データをデータ記憶領域62Bから削除し、当該第1動作の次に実行されるべき動作を開始させてもよい。
次に、制御プログラム65は、第1動作を中断中のサーバ装置70に対応する[再]アイコンの位置をタップするユーザ操作を待機時間内に操作部54が受け付けたことに応じて(S75)、再開処理を実行する(S76)。変形例に係る再開処理は、対応する装置において中断中の動作を再開させる再開指示処理の一例である。図6(B)を参照して、再開処理の詳細を説明する。
制御プログラム65は、既に動作指示情報を送信したサーバ装置70に対応する[再]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S56:Yes)、通信部55を通じてサーバ装置70に再開指示情報を送信する(S57)。再開指示情報は、送信先の装置に中断中の動作を再開させるための情報である。再開指示情報には、例えば、データ記憶領域62Bに記憶されている再開情報が含まれる。そして、携帯端末50から再開指示情報を受信したサーバ装置70は、再開情報によって特定される再開位置から第1動作を再開する(S77)。
また、携帯端末50の制御プログラム65は、図13(B)に示されるように、装置ID”サーバA”に対応する進捗状況を”停止中”から”動作中”に変更する(S58)。これに伴って、制御プログラム65は、図8(A)に示されるように、ステータス画像91の進捗状況を”停止中”から”動作中”に変更し、[再]アイコン及び[D]アイコンに代えて”C ”アイコンをステータス画像91に付加する。
次に、制御プログラム65は、通信部55を通じてサーバ装置70から送信完了情報を受信する前に、ステータス画像92に付加された[E]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S78)、修正処理を実行する(S79)。修正処理は、対応する装置に実行させる動作の動作内容の修正する処理である。図6(C)を参照して、修正処理の詳細を説明する。
まず、制御プログラム65は、図13(C)に示されるように、タップされた[E]アイコンに対応する装置ID”MFC−A”の待機フラグに”ON”を設定する(S61)。次に、制御プログラム65は、連携動作画面に代えて修正受付画面を表示部53に表示させる(S62)。図12(B)は、修正受付画面の一例である。図12(B)に示される修正受付画面は、連携動作リストに登録された設定情報と、各設定情報の修正を受け付けるための[>]アイコンと、[OK]アイコンとを含む。そして、制御プログラム65は、修正受付画面の[>]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて、修正後の設定情報の入力を受け付ける。具体的な設定情報の入力方法は特に限定されないが、例えば、プルダウンメニュー等から選択してもよい。
次に、制御プログラム65は、[OK]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S63:Yes)、連携動作リストのうちの装置ID”MFC−A”に対応する動作内容を、修正受付画面を通じて受け付けた修正後の動作内容に変更する(S64)。また、制御プログラム65は、修正受付画面に代えて連携動作画面を表示部53に表示させる。さらに、制御プログラム65は、図13(D)に示されるように、装置ID”MFC−A”に対応する待機フラグに”OFF”を設定する(S65)。
なお、制御プログラム65は、修正受付画面が表示部53に表示されているタイミング、換言すれば修正受付画面の[OK]アイコンの位置がタップされる前に、通信部55を通じてサーバ装置70から送信完了情報を受信したことに応じて(S34:No)、複合機10Aに対する動作指示情報の送信を待機する。そして、制御プログラム65は、修正受付画面の[OK]アイコンの位置をタップするユーザ操作を操作部54が受け付けたことに応じて(S80:Yes)、換言すれば修正受付画面の表示が終了されたことに応じて、さらに換言すれば待機フラグに”OFF”が設定されたことに応じて(S15:Yes)、通信部55を通じて複合機10Aに動作指示情報を送信する(S42)。
上記の変形例によれば、誤って設定された動作内容を個別に修正することができるので、当該連携動作を最初からやり直す必要がなくなる。また、待機フラグに”ON”が設定されている間、すなわち動作内容の修正作業中には、当該装置に動作指示情報が送信されないので、誤って設定された動作内容に従って動作が開始されることを抑制できる。なお、上記の変形例では、待機フラグに”ON”が設定されている間は連携動作が停止されている例を説明したが、連携動作の制御はこれに限定されない。例えば、待機フラグに”ON”が設定された動作をスキップして、後続の動作を先に実行してもよい。
また、上記の変形例によれば、動作中の装置に[C]アイコンの位置をタップすることによって当該動作を一時停止させ、[再]アイコンの位置をタップすることによって当該動作を再開させることができる。また、中断された動作が再開情報に基づいて途中から再開されるので、連携動作のスループットの低下が抑制される。なお、再開情報による動作の再開制御は、例えば、複数の記録用紙に画像を記録する第2動作を実行する第2装置に対して、特に有効である。例えば、10枚の記録用紙のうちの2枚に画像を記録したタイミングで当該動作が中断され、再開時に3枚目の記録用紙から画像を記録すればよい。
なお、各実施形態の複合機10或いは携帯端末50において、記憶部32、62のプログラム記憶領域32A、62Aに記憶された各種プログラムがCPU31、61によって実行されることによって、本発明の制御部が実行する各処理が実現される例を説明した。しかしながら、制御部の構成はこれに限定されず、その一部又は全部を集積回路(IC(Integrated Circuitの略)とも言う。)等のハードウェアで実現してもよい。
さらに、本発明は、複合機10或いは携帯端末50として実現できるだけでなく、複合機10或いは携帯端末50に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワークを介して複合機10或いは携帯端末50に接続可能なサーバ装置に搭載された記憶部を含んでもよい。そして、サーバ装置の記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワークを介して配信されてもよい。