(57)【要約】      （修正有）【課題】事前に定義ファイルの作成や実装を行うことなく、簡便に第１の画像形成装置で第２の画像形成装置と同じ動作を実現する。【解決手段】第１の画像形成装置の応答制御部は、クライアント端末から要求メッセージを受信し、自装置に第２の画像形成装置が登録されているかを判断し、登録されている場合は要求メッセージを第２の画像形成装置に送信し、第２の画像形成装置から第１の応答メッセージを取得すると共に、予め記憶した第１のテーブルを参照して要求メッセージに対応する自装置の第２の応答メッセージを取得し、第１の応答メッセージと第２の応答メッセージの構造が同一であるかを検証し、構造が同一であると判断した場合に、要求メッセージと第２の応答メッセージとを対応付けて第２のテーブルに保存し、第２のテーブルを参照して、クライアント端末に要求メッセージに対応する応答メッセージを返信する。【選択図】図１０（ａ）
2017130072.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続され、前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦ（Job Messaging Format）で記述された要求メッセージを受信可能であり、かつ、前記要求メッセージに対して応答メッセージを返信可能であり、前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含む画像形成システムにおける、前記第１の画像形成装置で動作する通信制御プログラムであって、
前記第１の画像形成装置の制御部に、
前記クライアント端末から前記要求メッセージを受信する受信処理、
自装置に、前記第２の画像形成装置が登録されているかを判断する判断処理、
自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得する応答取得処理、
前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証する検証処理、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存する登録処理、
前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信する返信処理、を実行させる、
ことを特徴とする通信制御プログラム。
【請求項２】
前記第１の画像形成装置の制御部に、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断した場合に、前記第１のテーブルを参照して、前記第２の画像形成装置から取得した前記第１の応答メッセージと構造が同一の第３の応答メッセージを特定する特定処理を実行させ、
前記登録処理では、前記第３の応答メッセージが特定できた場合は、前記要求メッセージと前記第３の応答メッセージとを対応付けて前記第２のテーブルに保存し、前記第３の応答メッセージが特定できなかった場合は、前記要求メッセージとエラーメッセージとを対応付けて前記第２のテーブルに保存する、
ことを特徴とする請求項１に記載の通信制御プログラム。
【請求項３】
前記第１の画像形成装置の制御部に、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断し、かつ、前記第３の応答メッセージが特定できた場合に、当該第３の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定する判定処理を実行させ、
前記返信処理では、前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項２に記載の通信制御プログラム。
【請求項４】
前記第１の画像形成装置の制御部に、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記第２の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定する判定処理を実行させ、
前記返信処理では、前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項１に記載の通信制御プログラム。
【請求項５】
前記判定処理では、ＪＭＦとは異なる通信フォーマットに従って、前記第２の画像形成装置から、当該第２の画像形成装置の給紙トレイに設置された用紙の第１の用紙サイズ情報を取得すると共に、予め記憶した第３のテーブルを参照して、前記第１の用紙サイズ情報に対応する、自装置の給紙トレイに設置された用紙の第２の用紙サイズ情報を取得し、前記第１の用紙サイズ情報と前記第２の用紙サイズ情報とが一致しない場合は、前記用紙サイズ情報の修正が必要であると判断する、
ことを特徴とする請求項３又は４に記載の通信制御プログラム。
【請求項６】
前記応答取得処理では、自装置に前記第２の画像形成装置が登録されていない場合は、前記第２の画像形成装置に前記要求メッセージを送信することなく、前記第１のテーブルを参照して、前記要求メッセージに対応する第４の応答メッセージを取得し、
前記返信処理では、前記クライアント端末に、前記第４の応答メッセージを返信する、
ことを特徴とする請求項１乃至５のいずれか一に記載の通信制御プログラム。
【請求項７】
前記第１の画像形成装置の制御部に、
前記クライアント端末から、前記要求メッセージに対応する応答メッセージを受信した画像形成装置を特定する装置情報を取得する処理を実行させ、
前記判断処理では、前記装置情報に基づいて前記第２の画像形成装置を特定する、
ことを特徴とする請求項１乃至６のいずれか一に記載の通信制御プログラム。
【請求項８】
印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続される画像形成システムであって、
前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦ（Job Messaging Format）で記述された要求メッセージの受信、及び、前記要求メッセージに対する応答メッセージの返信を可能にする通信制御部を備え、
前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含み、
前記第１の画像形成装置は、更に、応答制御部を備え、
前記応答制御部は、
前記クライアント端末から前記要求メッセージを受信し、
自装置に、前記第２の画像形成装置が登録されているかを判断し、
自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得し、
前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証し、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存し、
前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信する、
ことを特徴とする画像形成システム。
【請求項９】
前記応答制御部は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断した場合に、前記第１のテーブルを参照して、前記第２の画像形成装置から取得した前記第１の応答メッセージと構造が同一の第３の応答メッセージを特定し、
前記第３の応答メッセージが特定できた場合は、前記要求メッセージと前記第３の応答メッセージとを対応付けて前記第２のテーブルに保存し、前記第３の応答メッセージが特定できなかった場合は、前記要求メッセージとエラーメッセージとを対応付けて前記第２のテーブルに保存する、
ことを特徴とする請求項８に記載の画像形成システム。
【請求項１０】
前記応答制御部は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断し、かつ、前記第３の応答メッセージが特定できた場合に、当該第３の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定し、
前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項９に記載の画像形成システム。
【請求項１１】
前記応答制御部は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記第２の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定し、
前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項８に記載の画像形成システム。
【請求項１２】
前記応答制御部は、
ＪＭＦとは異なる通信フォーマットに従って、前記第２の画像形成装置から、当該第２の画像形成装置の給紙トレイに設置された用紙の第１の用紙サイズ情報を取得すると共に、予め記憶した第３のテーブルを参照して、前記第１の用紙サイズ情報に対応する、自装置の給紙トレイに設置された用紙の第２の用紙サイズ情報を取得し、前記第１の用紙サイズ情報と前記第２の用紙サイズ情報とが一致しない場合は、前記用紙サイズ情報の修正が必要であると判断する、
ことを特徴とする請求項１０又は１１に記載の画像形成システム。
【請求項１３】
前記応答制御部は、
自装置に前記第２の画像形成装置が登録されていない場合は、前記第２の画像形成装置に前記要求メッセージを送信することなく、前記第１のテーブルを参照して、前記要求メッセージに対応する第４の応答メッセージを取得し、
前記クライアント端末に、前記第４の応答メッセージを返信する、
ことを特徴とする請求項８乃至１２のいずれか一に記載の画像形成システム。
【請求項１４】
前記応答制御部は、
前記クライアント端末から、前記要求メッセージに対応する応答メッセージを受信した画像形成装置を特定する装置情報を取得し、
前記装置情報に基づいて前記第２の画像形成装置を特定する、
ことを特徴とする請求項８乃至１３のいずれか一に記載の画像形成システム。
【請求項１５】
印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続され、前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦ（Job Messaging Format）で記述された要求メッセージを受信可能であり、かつ、前記要求メッセージに対して応答メッセージを返信可能であり、前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含む画像形成システムにおける通信制御方法であって、
前記第１の画像形成装置は、
前記クライアント端末から要求メッセージを受信する受信処理と、
自装置に、前記第２の画像形成装置が登録されているかを判断する判断処理と、
自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得する応答取得処理と、
前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証する検証処理と、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存する登録処理と、
前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信する返信処理と、を実行する、
ことを特徴とする通信制御方法。
【請求項１６】
前記第１の画像形成装置は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断した場合に、前記第１のテーブルを参照して、前記第２の画像形成装置から取得した前記第１の応答メッセージと構造が同一の第３の応答メッセージを特定する特定処理を実行し、
前記登録処理では、前記第３の応答メッセージが特定できた場合は、前記要求メッセージと前記第３の応答メッセージとを対応付けて前記第２のテーブルに保存し、前記第３の応答メッセージが特定できなかった場合は、前記要求メッセージとエラーメッセージとを対応付けて前記第２のテーブルに保存する、
ことを特徴とする請求項１５に記載の通信制御方法。
【請求項１７】
第１の画像形成装置は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一でないと判断し、かつ、前記第３の応答メッセージが特定できた場合に、当該第３の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定する判定処理を実行し、
前記返信処理では、前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項１６に記載の通信制御方法。
【請求項１８】
第１の画像形成装置は、
前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記第２の応答メッセージに含まれる用紙サイズ情報の修正が必要であるかを判定する判定処理を実行し、
前記返信処理では、前記用紙サイズ情報の修正が必要であると判定した場合は、前記クライアント端末に前記要求メッセージに対応する応答メッセージを返信する前に、当該応答メッセージの前記用紙サイズ情報を修正する、
ことを特徴とする請求項１５に記載の通信制御方法。
【請求項１９】
前記判定処理では、ＪＭＦとは異なる通信フォーマットに従って、前記第２の画像形成装置から、当該第２の画像形成装置の給紙トレイに設置された用紙の第１の用紙サイズ情報を取得すると共に、予め記憶した第３のテーブルを参照して、前記第１の用紙サイズ情報に対応する、自装置の給紙トレイに設置された用紙の第２の用紙サイズ情報を取得し、前記第１の用紙サイズ情報と前記第２の用紙サイズ情報とが一致しない場合は、前記用紙サイズ情報の修正が必要であると判断する、
ことを特徴とする請求項１７又は１８に記載の通信制御方法。
【請求項２０】
前記応答取得処理では、自装置に前記第２の画像形成装置が登録されていない場合は、前記第２の画像形成装置に前記要求メッセージを送信することなく、前記第１のテーブルを参照して、前記要求メッセージに対応する第４の応答メッセージを取得し、
前記返信処理では、前記クライアント端末に、前記第４の応答メッセージを返信する、
ことを特徴とする請求項１５乃至１９のいずれか一に記載の通信制御方法。
【請求項２１】
前記第１の画像形成装置は、
前記クライアント端末から、前記要求メッセージに対応する応答メッセージを受信した画像形成装置を特定する装置情報を取得する処理を実行し、
前記判断処理では、前記装置情報に基づいて前記第２の画像形成装置を特定する、
ことを特徴とする請求項１５乃至２０のいずれか一に記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御プログラム及び画像形成システム並びに通信制御方法に関し、特に、ＪＭＦ（Job Messaging Format）に従って通信を行う画像形成装置で動作する通信制御プログラム及びＪＭＦに従って通信を行う複数の画像形成装置を含む画像形成システム並びに当該画像形成システムにおける通信制御方法に関する。
【背景技術】
【０００２】
アプリケーションとプリンタとの間でメッセージを送受信するフォーマットとして、ＪＭＦが用いられている。ＪＭＦでは、Queryメッセージの受信に伴ってResponseメッセージを返送するという送受信シーケンスとメッセージの型とを定義しており、型の用途はベンダが決定している。図２３は、Responseメッセージの構成例であり、Responseメッセージは、階層化された要素に属性と属性値のセットが含まれる構成をしており、メッセージの型は、要素の階層構造と要素に含まれる属性とで決定される。
【０００３】
アプリケーションは各ベンダのプリンタと接続可能であるため、ＪＭＦを用いて運用されているワークフローにおいては、一つのアプリケーションに対して複数のベンダのプリンタが共存することがある。この場合、例えば、ベンダＡのプリンタを使用するワークフローにベンダＢのプリンタを導入すると、各ベンダのＪＭＦのメッセージ仕様の相違により、同じQueryメッセージに対して、ベンダＢのプリンタはベンダＡのプリンタとは異なる型のResponseメッセージを返送してしまう場合がある。
【０００４】
また、Responseメッセージにおけるトレイ用紙サイズの属性値の記述形式には次の２通りが存在し、形式１では、用紙の向きがＳＥＦ（Short Edge Feed）の場合、トレイ用紙サイズの属性値は”（長辺の寸法）（短辺の寸法）”と記述し、形式２では、用紙の向きがＳＥＦの場合、トレイ用紙サイズの属性値は”（短辺の寸法）（長辺の寸法）”と記述する。ベンダは上記２つの記述形式のどちらか一方を使用するため、ベンダＡとベンダＢとで異なる記述形式を使用する場合が生じる。その場合、ベンダＢのプリンタがベンダＡのプリンタと同じ型のResponseメッセージを返送できたとしても、属性値の記述形式に相違が生じてしまい、アプリケーションはトレイ用紙サイズを誤って解釈してしまう。
【０００５】
このような複数のベンダのプリンタが共存するシステムにおける問題を解決する方法として、下記特許文献１には、アプリケーションのいずれかから画像形成装置へ送信された印刷ジョブ等の記述に基づいてアプリケーションを特定する段階（ａ）と、印刷ジョブに付加された、印刷ジョブごとに割り振られる任意値からなる動的値についての、印刷ジョブの記述の規則を、アプリケーションごとに、動的値に関連付けされた動作とともに管理する段階（ｂ）と、印刷ジョブについて段階（ａ）において特定されたアプリケーションについて段階（ｂ）において管理されている規則に従って印刷ジョブを解析することで動的値を認識するとともに、動的値に対し動的値に関連付けされた動作を行う段階（ｃ）と、を有する画像形成システムにおける通信制御方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１５−１３５６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に開示されているように、ＪＭＦで記述されたメッセージの変換ルールを定義した定義ファイルをプリンタに組み込んで、QueryメッセージとResponseメッセージを変換する手法を用いることにより、ベンダＢのプリンタで、ベンダＡのプリンタと同様の動作を実現することはできる。
【０００８】
例えば、Media型のQueryメッセージに対して、ベンダＡとベンダＢが以下に示すResponseメッセージを返送する場合を例にして説明する。ベンダＡは、Media型のQueryメッセージを受信したら、図２１に示すように、トレイ情報をResponseメッセージで返し、用紙の向きがＳＥＦの場合、トレイ用紙サイズ４１は”（短辺の寸法）（長辺の寸法）”と記述する。一方、ベンダＢは、Media型のQueryメッセージを受信したらペーパーカタログをResponseメッセージで返し、Resource型のQueryメッセージを受信したら、図２２に示すように、トレイ情報をResponseメッセージで返し、用紙の向きがＳＥＦの場合、トレイ用紙サイズ４１は”（長辺の寸法）（短辺の寸法）”と記述する。
【０００９】
上記特許文献１の方法によれば、Media型のQueryメッセージをResource型のQueryメッセージに変換する定義ファイルを作成してベンダＢのプリンタに組み込むことで、ベンダＢのプリンタは、トレイ情報をResponseメッセージで返送することができる。また、ResponseメッセージにおけるＳＥＦのトレイ用紙サイズを”（短辺の寸法）（長辺の寸法）”の記述形式に変換するルールを定義ファイルに含めることで、ベンダＢのプリンタは、ベンダＡのプリンタと同じ記述形式のトレイ情報を返送することができる。
【００１０】
しかしながら、特許文献１の手法を使用するためには、ＪＭＦの仕様書におけるベンダ間の差分を洗い出し、差分に基づいて変換ルールの定義ファイルを作成し、作成した定義ファイルをプリンタに組み込むといった作業を行わなければならず、設定に手間がかかり、作業が煩雑になるという問題がある。
【００１１】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、第１のプリンタを、第２のプリンタを使用するワークフローに導入する際に、事前に定義ファイルの作成や実装を行うことなく、簡便に、第１のプリンタで第２のプリンタと同じ動作を実現することができる通信制御プログラム及び画像形成システム並びに通信制御方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一側面は、印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続され、前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦで記述された要求メッセージを受信可能であり、かつ、前記要求メッセージに対して応答メッセージを返信可能であり、前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含む画像形成システムにおける、前記第１の画像形成装置で動作する通信制御プログラムであって、前記第１の画像形成装置の制御部に、前記クライアント端末から前記要求メッセージを受信する受信処理、自装置に、前記第２の画像形成装置が登録されているかを判断する判断処理、自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得する応答取得処理、前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証する検証処理、前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存する登録処理、前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信する返信処理、を実行させることを特徴とする。
【００１３】
本発明の一側面は、印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続される画像形成システムであって、前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦで記述された要求メッセージの受信、及び、前記要求メッセージに対する応答メッセージの返信を可能にする通信制御部を備え、前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含み、前記第１の画像形成装置は、更に、応答制御部を備え、前記応答制御部は、前記クライアント端末から前記要求メッセージを受信し、自装置に、前記第２の画像形成装置が登録されているかを判断し、自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得し、前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証し、前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存し、前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信することを特徴とする。
【００１４】
本発明の一側面は、印刷ジョブの処理を行うアプリケーションが動作するクライアント端末と複数の画像形成装置とが通信ネットワークで接続され、前記複数の画像形成装置の各々は、前記アプリケーションが生成した少なくともＪＭＦで記述された要求メッセージを受信可能であり、かつ、前記要求メッセージに対して応答メッセージを返信可能であり、前記複数の画像形成装置は、第１の画像形成装置と、予め前記要求メッセージに対応する応答メッセージを前記クライアント端末に返信済みの第２の画像形成装置と、を含む画像形成システムにおける通信制御方法であって、前記第１の画像形成装置は、前記クライアント端末から要求メッセージを受信する受信処理と、自装置に、前記第２の画像形成装置が登録されているかを判断する判断処理と、自装置に前記第２の画像形成装置が登録されている場合に、前記要求メッセージを前記第２の画像形成装置に送信し、前記第２の画像形成装置から前記要求メッセージに対応する第１の応答メッセージを取得すると共に、予め記憶した要求メッセージと応答メッセージとを対応付ける第１のテーブルを参照して、前記要求メッセージに対応する自装置の第２の応答メッセージを取得する応答取得処理と、前記第２の画像形成装置から取得した前記第１の応答メッセージと自装置の前記第２の応答メッセージの構造が同一であるかを検証する検証処理と、前記第１の応答メッセージと前記第２の応答メッセージの構造が同一であると判断した場合に、前記要求メッセージと前記第２の応答メッセージとを対応付けて第２のテーブルに保存する登録処理と、前記第２のテーブルを参照して、前記クライアント端末に、前記要求メッセージに対応する応答メッセージを返信する返信処理と、を実行することを特徴とする。
【発明の効果】
【００１５】
本発明の通信制御プログラム及び画像形成システム並びに通信制御方法によれば、第１のプリンタを、第２のプリンタを使用するワークフローに導入する際に、事前に定義ファイルの作成や実装を行うことなく、簡便に、第１のプリンタで第２のプリンタと同じ動作を実現することができる。
【００１６】
その理由は、アプリケーションが動作するクライアント端末と第１の画像形成装置と第２の画像形成装置とを含む複数の画像形成装置が通信ネットワークで接続される画像形成システムにおいて、第１の画像形成装置は、アプリケーションから要求メッセージを受信する受信処理と、自装置の装置設定に第２の画像形成装置が登録されているかを判断する判断処理と、装置設定に第２の画像形成装置が登録されている場合に、要求メッセージを第２の画像形成装置に送信して第１の応答メッセージを取得すると共に、予め記憶した第１のテーブルを参照して、要求メッセージに対応する第２の応答メッセージを取得する応答取得処理と、第１の応答メッセージと第２の応答メッセージとが同一であるかを検証する検証処理と、検証処理で第１の応答メッセージと第２の応答メッセージとが同一であると判断した場合に、要求メッセージと第２の応答メッセージとを対応付けて第２のテーブルに保存する登録処理と、アプリケーションに、第２のテーブルを参照して要求メッセージに対応する応答メッセージを送信する返信処理と、を実行するからである。また、第１の画像形成装置は、検証処理で第１の応答メッセージと第２の応答メッセージとが同一でないと判断した場合に、第１のテーブルを参照して、第１の応答メッセージと構造が同一の第３の応答メッセージを特定する特定処理を実行し、登録処理では、第３の応答メッセージが特定できた場合は、要求メッセージと第３の応答メッセージとを対応付けて第２のテーブルに保存し、第３の応答メッセージが特定できなかった場合は、要求メッセージとエラーメッセージとを対応付けて第２のテーブルに保存するからである。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施例に係る画像形成システムの構成を示す模式図である。
【図２】本発明の一実施例に係るクライアント端末の構成を示すブロック図である。
【図３】本発明の一実施例に係る画像形成装置の構成を示すブロック図である。
【図４】本発明の一実施例に係るＪＭＦの仕様に基づくQuery（Media）メッセージの一例である。
【図５】本発明の一実施例に係るＪＭＦの仕様に基づくQuery（Resource）メッセージの一例である。
【図６】本発明の一実施例に係るＪＭＦの仕様に基づくResponse（Tray）メッセージの一例である。
【図７】本発明の一実施例に係るＪＭＦの仕様に基づくResponse（Paper Catalog）メッセージの一例である。
【図８】本発明の一実施例に係るＪＭＦの仕様に基づくResponse（Color Profile）メッセージの一例である。
【図９】本発明の一実施例に係るＪＭＦの仕様に基づくResponse（Tone Curve）メッセージの一例である。
【図１０（ａ）】本発明の一実施例に係る画像形成装置の処理（全体処理）を示すフローチャート図である。
【図１０（ｂ）】本発明の一実施例に係る画像形成装置の処理（全体処理）を示すフローチャート図である。
【図１１】本発明の一実施例に係る画像形成装置の処理（検証処理）を示すフローチャート図である。
【図１２】本発明の一実施例に係る画像形成装置の処理（特定処理）を示すフローチャート図である。
【図１３】本発明の一実施例に係る画像形成装置の処理（修正操作登録処理）を示すフローチャート図である。
【図１４】本発明の一実施例に係るResponseテーブルの一例である。
【図１５】本発明の一実施例に係る標準Responseテーブルの一例である。
【図１６】本発明の一実施例に係る要素リストテーブルの一例である。
【図１７】本発明の一実施例に係る要素パターンテーブルの一例である。
【図１８】本発明の一実施例に係る属性リストテーブルの一例である。
【図１９】本発明の一実施例に係る属性パターンテーブルの一例である。
【図２０】本発明の一実施例に係るDimensionテーブルの一例である。
【図２１】ＪＭＦの仕様に基づくResponse（Tray）メッセージの一例である。
【図２２】ＪＭＦの仕様に基づくResponse（Tray）メッセージの他の例である。
【図２３】Responseメッセージの構成例である。
【発明を実施するための形態】
【００１８】
背景技術で示したように、アプリケーションとプリンタとの間でメッセージを送受信するフォーマットとしてＪＭＦが用いられており、ＪＭＦでは、Queryメッセージに対してResponseメッセージを返送する送受信シーケンスとメッセージの型とを定義している。ここで、メッセージの型の用途はベンダが決定しているため、各ベンダのＪＭＦのメッセージ仕様の相違により、同じQueryメッセージに対して、ベンダＡのプリンタとベンダＢのプリンタとで異なるResponseメッセージを返送してしまう場合がある。また、Responseメッセージにおけるトレイ用紙サイズの属性値の記述形式は２通りが存在し、ベンダ毎にどちらか一方を使用するため、ベンダＡとベンダＢとでトレイ用紙サイズの属性値の記述形式が異なっていると、同じ型のResponseメッセージを返送できたとしても属性値の記述形式に相違が生じ、アプリケーションはトレイ用紙サイズを誤って解釈してしまう。
【００１９】
この問題に対して、上記特許文献１では、ＪＭＦで記述されたメッセージの変換ルールを定義した定義ファイルをプリンタに組み込む手法を提案しているが、この手法を使用するためには、ＪＭＦの仕様書におけるベンダ間の差分を洗い出し、差分に基づいて変換ルールの定義ファイルを作成し、作成した定義ファイルをプリンタに組み込むといった作業を行わなければならず、設定に手間がかかり、作業が煩雑になる。
【００２０】
そこで、本発明の一実施の形態では、リファレンス機を使用するワークフローに自装置を導入する際、アプリケーションからのQueryメッセージに対して自装置がどのように応答すればよいかをリファレンス機の応答を参照して決定する。具体的には、自装置がアプリケーションから受信したQueryメッセージをリファレンス機に送信してResponseメッセージを取得し、リファレンス機のResponseメッセージと自装置のResponseメッセージの構造（型）が同一であれば自装置のResponseメッセージをQueryメッセージに対応付けてテーブルに保存し、同一でなければ自装置が有するResponseメッセージの中でリファレンス機と構造が同じResponseメッセージを特定し、特定したResponseメッセージをQueryメッセージに対応付けてテーブルに保存し、アプリケーションにはテーブルを参照してResponseメッセージを送信する。更に、アプリケーションに送信するResponseメッセージにおけるトレイ用紙サイズ（属性値）の記述形式がリファレンス機と同一か否かを判定し、トレイ用紙サイズの記述形式が異なる場合は、Responseメッセージのトレイ用紙サイズをリファレンス機の記述形式に書き換えてから送信する。
【００２１】
これにより、リファレンス機を使用するワークフローに自装置を導入する際、事前に定義ファイルの作成や実装を行うことなく、簡便に、自装置でリファレンス機と同じ動作を実現することができる。
【実施例】
【００２２】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る通信制御プログラム及び画像形成システム並びに通信制御方法について、図１乃至図２０を参照して説明する。図１は、本実施例の画像形成システムの構成を示す模式図であり、図２及び図３は、各々、クライアント端末、画像形成装置の構成を示すブロック図である。また、図４及び図５は、本実施例のＪＭＦ Queryメッセージの一例であり、図６乃至図９は、本実施例のＪＭＦ Responseメッセージの一例である。また、図１０乃至図１３は、本実施例の画像形成装置の処理を示すフローチャート図であり、図１４乃至図２０は、本実施例のテーブルの一例である。
【００２３】
図１に示すように、本実施例の画像形成システムは、イントラネット上に、通信ネットワーク３０で接続可能なクライアント端末１０と複数の画像形成装置２０（本実施例では、第１の画像形成装置２０ａ及び第２の画像形成装置２０ｂ）とを含み、それぞれの機器がインターネットを介して接続されている。この通信ネットワーク３０の規格としてEthernet（登録商標）などを用いることができる。以下、各装置について詳細に説明する。
【００２４】
［クライアント端末］
クライアント端末１０は、パーソナルコンピュータなどのコンピュータ装置であり、第１の画像形成装置２０ａ又は第２の画像形成装置２０ｂに印刷ジョブを送信して印刷指示を行う。このクライアント端末１０は、図２（ａ）に示すように、制御部１１と記憶部１２とネットワークＩ／Ｆ部１３と表示部１４と操作部１５などで構成される。
【００２５】
制御部１１は、ＣＰＵ（Central Processing Unit）１１ａとＲＯＭ（Read Only Memory）１１ｂやＲＡＭ（Random Access Memory）１１ｃなどのメモリとで構成され、ＣＰＵ１１ａは、ＲＯＭ１１ｂや記憶部１２に記憶した制御プログラムをＲＡＭ１１ｃに展開して実行することにより、クライアント端末１０全体の動作を制御する。また、図２（ｂ）に示すように、上記制御部１１（ＣＰＵ１１ａ）により、ＯＳ（Operating System）１６、ＪＤＦ（Job Definition Format）アプリケーション１７、ＭＩＳ（Management Information System）アプリケーション１８などが実行される。
【００２６】
ＯＳ１６は、Windows（登録商標）やMacintosh（登録商標）、Androidなどであり、クライアント端末１０でＪＤＦアプリケーション１７やＭＩＳアプリケーション１８を動作可能にする。
【００２７】
ＪＤＦアプリケーション１７は、印刷ワークフローにおける、印刷ジョブやその通信を定義する標準フォーマット仕様であるＪＤＦに従って、印刷ジョブを作成する。また、ＪＤＦアプリケーション１７は、定期的に画像形成装置２０とＪＭＦ通信（Queryメッセージの送信及びResponseメッセージの受信）を行って、画像形成装置２０の用紙残量、トナー残量、給紙トレイに入っている用紙のサイズといった装置状態を取得する。
【００２８】
ＭＩＳアプリケーション１８は、ＪＤＦアプリケーション１７が作成した印刷ジョブから、画像形成システム全体で使用するジョブチケット、用紙やトナーなどを抽出し、これらの情報を用いて印刷コストの管理などを行う。
【００２９】
記憶部１２は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などで構成され、ＣＰＵ１１ａが各部を制御するためのプログラム、自装置の処理機能に関する情報、印刷ジョブなどを記憶する。
【００３０】
ネットワークＩ／Ｆ部１３は、ＮＩＣ（Network Interface Card）やモデムなどで構成され、クライアント端末１０を通信ネットワーク３０に接続し、画像形成装置２０との通信を可能にする。例えば、第１の画像形成装置２０ａ又は第２の画像形成装置２０ｂにQueryメッセージや印刷ジョブを送信したり、第１の画像形成装置２０ａ又は第２の画像形成装置２０ｂからResponseメッセージを受信したりする。
【００３１】
表示部１４は、液晶表示装置（ＬＣＤ：Liquid Crystal Display）や有機ＥＬ（electroluminescence）表示装置などで構成され、ＪＤＦアプリケーション１７が印刷ジョブを作成する際の印刷設定画面などを表示する。
【００３２】
操作部１５は、マウスやキーボードなどで構成され、上記印刷設定画面における印刷設定操作などを可能にする。
【００３３】
［画像形成装置］
画像形成装置２０（第１の画像形成装置２０ａ及び第２の画像形成装置２０ｂ）は、プリンタやＭＦＰ（Multi-Functional Peripherals）などであり、図３（ａ）に示すように、制御部２１と記憶部２２とネットワークＩ／Ｆ部２３とＪＭＦ通信制御部２４とＳＮＭＰ（Simple Network Management Protocol）通信制御部２５と表示操作部２６と画像形成部２７などで構成される。
【００３４】
制御部２１は、ＣＰＵ２１ａと、ＲＯＭ２１ｂやＲＡＭ２１ｃなどのメモリとで構成され、ＣＰＵ２１ａは、ＲＯＭ２１ｂや記憶部２２に記憶した制御プログラムをＲＡＭ２１ｃに展開して実行することにより、画像形成装置２０全体の動作を制御すると共に、クライアント端末１０から受信した印刷ジョブを解析し、印刷ジョブの各ページをラスタライズして印刷用の画像データを生成する画像処理を実行する。また、少なくとも一方の画像形成装置（本実施例では、第１の画像形成装置２０ａ）の制御部２１は、図３（ｂ）に示すように、応答制御部２８、ＭＩＢ（Management Information Base）制御部２９などとしても機能する。
【００３５】
応答制御部２８は、ＪＭＦ通信制御部２４を介して、クライアント端末１０のＪＤＦアプリケーション１７からＪＭＦで記述された要求メッセージ（Queryメッセージ）を受信し、そのQueryメッセージに対する応答メッセージ（Responseメッセージ）を作成し、QueryメッセージとResponseメッセージとを対応付けて後述するResponseテーブルに保存し、そのResponseテーブルを参照して、ＪＭＦ通信制御部２４を介して、クライアント端末１０のＪＤＦアプリケーション１７にResponseメッセージを出力する制御を行う。
【００３６】
具体的には、ＪＭＦ通信制御部２４を介してクライアント端末１０のＪＤＦアプリケーション１７からQueryメッセージを受信する受信処理を実行する。そして、第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されているかを判断する判断処理を実行し、第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されていると判断した場合は、Queryメッセージを第２の画像形成装置２０ｂに送信し、第２の画像形成装置２０ｂからResponseメッセージ（Response（R2））を取得すると共に、後述する標準Responseテーブルを参照してQueryメッセージに対する自装置のResponseメッセージ（Response（R3））を取得する応答取得処理を実行し、第２の画像形成装置２０ｂから取得したResponseメッセージ（Response（R2））と標準Responseテーブルから取得したResponseメッセージ（Response（R3））とが同一であるかを検証する検証処理を実行する。双方のResponseメッセージの構造が同一と判断した場合はQueryメッセージと標準Responseテーブルから取得したResponseメッセージ（Response（R3））とを対応付けてResponseテーブルに保存する登録処理を実行し、Responseテーブルを参照して、Queryメッセージに対応するResponseメッセージを、ＪＭＦ通信制御部２４を介してクライアント端末１０のＪＤＦアプリケーション１７に返信する返信処理を実行する。
【００３７】
また、双方のResponseメッセージの構造が同一でないと判断した場合は標準Responseテーブルを参照して、第２の画像形成装置２０ｂから取得したResponseメッセージ（Response（R2））と構造が同一のResponseメッセージ（Response（R4））を特定する特定処理を実行し、Responseメッセージ（Response（R4））を特定できた場合は、Queryメッセージと特定したResponseメッセージ（Response（R4））とを対応付けてResponseテーブルに保存し、特定できなかった場合は、Queryメッセージとエラーメッセージを記述したResponseメッセージ（Response（R5））とを対応付けてResponseテーブルに保存する。また、双方のResponseメッセージの構造が同一であると判断した場合、若しくは、双方のResponseメッセージの構造が同一でないと判断し、かつ、Responseメッセージ（Response（R4））を特定できた場合は、Responseメッセージ（Response（R3）又はResponse（R4））に含まれる用紙サイズ情報（トレイ用紙サイズ）の修正が必要であるかを判定する判定処理を実行し、用紙サイズ情報の修正が必要であると判定した場合は、Responseメッセージに記述されているDimensionの値の順序を逆にする修正を行った後、修正後のResponseメッセージをクライアント端末１０のＪＤＦアプリケーション１７に返信する。
【００３８】
また、第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されていないと判断した場合は、標準Responseテーブルを参照して、Queryメッセージに対応するResponseメッセージ（Response（R6））を取得し、取得したResponseメッセージ（Response（R6））をクライアント端末１０のＪＤＦアプリケーション１７に返信する。また、第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されていると判断した場合は、ResponseテーブルからQueryメッセージに対するResponseメッセージ（Response（R1））を検索し、Responseメッセージ（Response（R1））が見つからなかった場合は、上記のようにQueryメッセージを第２の画像形成装置２０ｂに送信し、Responseメッセージ（Response（R1））が見つかった場合は、そのResponseメッセージ（Response（R1））に含まれる用紙サイズ情報の修正が必要であるかを判定し、用紙サイズ情報の修正が必要であると判定した場合は、Responseメッセージに記述されているDimensionの値の順序を逆にする修正を行った後、修正後のResponseメッセージをクライアント端末１０のＪＤＦアプリケーション１７に返信する。
【００３９】
ＭＩＢ制御部２９は、ＳＮＭＰ通信制御部２５を介して、外部機器からＭＩＢオブジェクト（トレイ用紙サイズ）を取得し、応答制御部２８に通知する。具体的には、ＪＭＦとは異なる通信フォーマットに従って（ＳＮＭＰ通信制御部２５を介して）、第２の画像形成装置２０ｂから、当該第２の画像形成装置２０ｂの給紙トレイに設置された用紙のサイズを示す第１の用紙サイズ情報を取得すると共に、後述するDimensionテーブルを参照して、第１の用紙サイズ情報に対応する、自装置の給紙トレイに設置された用紙のサイズを示す第２の用紙サイズ情報を取得して応答制御部２８に通知し、応答制御部２８で用紙サイズ情報（トレイ用紙サイズ）の修正が必要か否かを判定する判定処理を実行できるようにする。
【００４０】
なお、応答制御部２８及びＭＩＢ制御部２９はハードウェアとして構成してもよいし、制御部２１を応答制御部２８及びＭＩＢ制御部２９（特に、応答制御部２８）として機能させるソフトウェア（通信制御プログラム）として構成し、当該通信制御プログラムをＣＰＵ２１ａに実行させるようにしてもよい。
【００４１】
記憶部２２は、ＨＤＤやＳＳＤなどで構成され、ＣＰＵ２１ａが各部を制御するためのプログラム、自装置の処理機能に関する情報、装置設定情報、各種テーブル（Responseテーブル、標準Responseテーブル、要素リストテーブル、要素パターンテーブル、属性リストテーブル、属性パターンテーブル、Dimensionテーブルなど）、ＭＩＢオブジェクト（トレイ用紙サイズなど）を記憶する。
【００４２】
ネットワークＩ／Ｆ部２３は、ＮＩＣやモデムなどで構成され、画像形成装置２０を通信ネットワーク３０に接続し、クライアント端末１０及び他の画像形成装置２０とのデータ通信を可能にする。
【００４３】
ＪＭＦ通信制御部２４は、ネットワークＩ／Ｆ部２３を介したＪＭＦ通信により、QueryメッセージとResponseメッセージの送受信を行う。
【００４４】
ＳＮＭＰ通信制御部２５は、ネットワークＩ／Ｆ部２３を介したＳＮＭＰ通信により、ＭＩＢオブジェクトの送受信を行う。
【００４５】
表示操作部２６は、ＬＣＤなどの表示部上に格子状の透明電極からなるタッチセンサが形成されたタッチパネルなどであり、印刷に関する各種画面を表示すると共に、印刷に関する各種操作を可能にする。本実施例では、特に、自装置以外の画像形成装置を装置設定に登録する操作を可能にする。
【００４６】
画像形成部２７は、印刷用の画像データに基づいて印刷処理を実行する印刷エンジンである。具体的には、帯電装置により帯電された感光体ドラムに露光装置から画像に応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに１次転写し、紙を設置する給紙トレイから供給された用紙に２次転写し、更に定着装置で用紙上のトナー像を定着させる処理を行う。
【００４７】
なお、図１乃至図３は、本実施例の画像形成システムの一例であり、各装置の構成や制御は適宜変更可能である。
【００４８】
例えば、第１の画像形成装置２０ａ及び第２の画像形成装置２０ｂの少なくとも一方は、プリント機能に加えて、スキャン機能やＦＡＸ機能、サーバ機能などの他の機能を備えていてもよい。また、図１では、クライアント端末１０と画像形成装置２０とで画像形成システムを構成したが、画像形成システムに、画像形成装置２０を制御するプリンタコントローラ（制御装置）を設け、制御装置に画像形成装置２０の制御部２１の機能を持たせる（制御装置のＣＰＵに通信制御プログラムを実行させる）構成としてもよい。
【００４９】
以下、上記構成の画像形成システムの動作について説明するが、本発明の理解を容易にするために、画像形成装置２０の通信フォーマットであるＪＤＦ／ＪＭＦ、ＳＮＭＰ／ＭＩＢについて説明する。
【００５０】
［ＪＤＦ／ＪＭＦ］
ＪＤＦ／ＪＭＦは、ＸＭＬ（Extensible Markup Language）ベースのフォーマットである。ＸＭＬの記述には要素、属性、属性値とよばれる３つの構成要素が存在し、例えばＸＭＬファイルに「<Media DescriptiveName="test" MediaColorName="White"/>」と記述されている場合、「Media」が要素、「DescriptiveName」と「MediaColorName」が属性、「test」と「White」が属性値である。ＪＤＦは、主にジョブチケットの記述に使用され、ＪＭＦは、問い合わせを表すQueryと、その応答を表すResponseなどの記述に使用される。ＪＭＦ通信では、ＪＤＦアプリケーション１７や画像形成装置２０がQueryメッセージを受信すると、Queryメッセージの内容を解析してResponseメッセージを生成し、Queryメッセージの送信元に対してResponseメッセージを返送する。ＪＤＦに基づく画像形成システムでは、ＪＤＦアプリケーション１７は定期的に画像形成装置２０とＪＭＦ通信を行って、画像形成装置２０の用紙残量、トナー残量、給紙トレイに入っている用紙のサイズといった装置状態を取得する。
【００５１】
図１に示すシステム構成では、ＭＩＳアプリケーション１８とＪＤＦアプリケーション１７と画像形成装置２０ａと画像形成装置２０ｂのそれぞれがQueryメッセージ（以下、Queryと略記する。）及びResponseメッセージ（以下、Responseと略記する。）を送受信可能であり、ＪＭＦ通信により画像形成装置の装置状態を伝達する。本実施例では、ＭＩＳアプリケーション１８とＪＤＦアプリケーション１７、ＪＤＦアプリケーション１７と画像形成装置２０ａ、ＪＤＦアプリケーション１７と画像形成装置２０ｂ、画像形成装置２０ａと画像形成装置２０ｂとでそれぞれＪＭＦ通信を行う。
【００５２】
図４乃至図９にQueryとResponseの例を示す。QueryとResponseのＸＭＬ構造には型があり、各Query／Responseで使用できる要素名、属性名はＪＭＦで定義されている。なお、属性値は画像形成装置などの状態の記述に使用されるため、型とは無関係である。図６は、トレイ情報を記述する際に使用されるResponseの一例であり、４１がトレイ用紙サイズ（Dimension）である。ベンダ毎にトレイ用紙サイズ（Dimension）の第一値と第二値が逆に記述される場合があり、本実施例でも値の記述順が逆となる例を考える。また、本実施例では、図４乃至図９の各Query／Responseの例に対して型名を付与しており、図４は”Media”、図５は”Resource”、図６は”Tray”、図７は”PaperCatalog”、図８は”ColorProfile”、図９は”ToneCurve”と呼ぶ。図２１及び図２２は、型が一致するResponseの一例である。図２０と図２１とでは、４１、４２、４３の属性値に違いがあるが、使用している要素名と属性名とＸＭＬの階層構造が同一であるため、同じ型である。
【００５３】
［ＳＮＭＰ／ＭＩＢ］
ＳＮＭＰは、ＵＤＰ／ＩＰ（User Datagram Protocol／Internet Protocol）上で動作するプロトコルであり、通信機器の情報を取得したり設定したりすることによって通信機器の監視や制御を行う。ＳＮＭＰを利用した通信機器の制御において、制御される側の通信機器（ＳＮＭＰ−Agent）は、ＭＩＢと呼ばれるデータベースを持っている。一方、制御する側の外部装置（ＳＮＭＰ−Manager）は、ＳＮＭＰを利用して、通信機器からＭＩＢの情報の取得や設定を行う。このＭＩＢには、通信機器の様々な状態情報が定義されている。
【００５４】
ＳＮＭＰ−ManagerがＳＮＭＰ−AgentからＳＮＭＰを使用してＭＩＢの取得を行う場合、対象となるＭＩＢを一意に特定するためにオブジェクトＩＤを使用する。ＭＩＢの全てのオブジェクトには、固有のオブジェクトＩＤが割り当てられている。例えば、画像形成装置の給紙トレイにセットされている用紙サイズを示すＭＩＢオブジェクトである”prtInputMediaDimFeedDirChosen”のオブジェクトＩＤは、”1.3.6.1.2.1.43.8.2.1.6”である。ＳＮＭＰ−Managerから”prtInputMediaDimFeedDirChosen”が指定されると、ＳＮＭＰ−AgentはＭＩＢに保存されている状態情報を返す。例えば、給紙トレイにＡ４（ＳＥＦ）がセットされている場合には”1.3.6.1.2.1.43.8.2.1.6.297”という値を返す。
【００５５】
図１に示すシステム構成では、第１の画像形成装置２０ａ及び第２の画像形成装置２０ｂがＳＮＭＰ通信可能である。
【００５６】
以下、本実施例の第１の画像形成装置２０ａの処理について説明する。第１の画像形成装置２０ａのＣＰＵ２１ａは、ＲＯＭ２１ｂ又は記憶部２２に記憶した通信制御プログラムをＲＡＭ２１ｃに展開して実行することにより、図１０乃至図１３のフローチャート図に示す各ステップの処理を実行する。なお、図１０（ａ）及び図１０（ｂ）は、作図の都合上、分図したものであり、一連の処理を示している。
【００５７】
［全体処理］
図１０（ａ）に示すように、応答制御部２８は、ネットワークＩ／Ｆ部２３（ＪＭＦ通信制御部２４）を介してクライアント端末１０（ＪＤＦアプリケーション１７）からQuery（Q1）を受信する（Ｓ１００：Ｙｅｓ）。次に、応答制御部２８は、第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されているかを判断し（Ｓ１１０）、登録されていない場合は（Ｓ１１０：Ｎｏ）、図１５に示す標準ResponseテーブルからQuery（Q1）に対応するResponse（R6）を取得し（Ｓ１２０）、取得したResponse（R6）をネットワークＩ／Ｆ部２３（ＪＭＦ通信制御部２４）を介してクライアント端末１０（ＪＤＦアプリケーション１７）に送信する（Ｓ２９０）。なお、標準Responseテーブルは、Queryメッセージの問い合わせ内容とResponseメッセージの応答内容とを対応付けるテーブルであり、予め記憶部２２などに保存されている。
【００５８】
第１の画像形成装置２０ａの装置設定に第２の画像形成装置２０ｂが登録されている場合は（Ｓ１１０：Ｙｅｓ）、応答制御部２８は、図１４に示すResponseテーブルからQuery（Q1）に対応するResponse（R1）を検索する（Ｓ１３０）。なお、Responseテーブルは、Queryメッセージの問い合わせ内容とResponseメッセージの応答内容とDimension修正操作（Dimensionの値の順序を逆にする処理）の有無とを対応付けるテーブルであり、第２の画像形成装置２０ｂから取得したResponseメッセージに基づいて順次作成されて記憶部２２などに保存される。
【００５９】
検索した結果、Query（Q1）に対応するResponse（R1）が見つからなかった場合は（Ｓ１４０：Ｎｏ、（１）に続く）、図１０（ｂ）に示すように、応答制御部２８は、ネットワークＩ／Ｆ部２３（ＪＭＦ通信制御部２４）を介して、Query（Q1）を第２の画像形成装置２０ｂに送信し、第２の画像形成装置２０ｂからQuery（Q1）に対応するResponse（R2）を取得する（Ｓ１５０）。さらに、応答制御部２８は、標準Responseテーブル（図１５）からQuery（Q1）に対応するResponse（R3）を取得し（Ｓ１６０）、Response（R2）とResponse（R3）の構造が同一か否かを検証する（Ｓ１７０）。
【００６０】
図１１はＳ１７０の詳細を示しており、まず、応答制御部２８は、図１６の要素リストテーブル（Responseメッセージに記述される要素の一覧を示すテーブル）を参照して、要素リストに含まれる要素名がResponse（R2）に記述されているかを確認して要素パターン（EP1）を生成する（Ｓ１７１）。なお、図１６は、Response（R2）が図６のResponse（Tray）である場合の要素パターンの例であり、Response（R2）のResourceには、”ResourceInfo”、”Media”、”Location”の要素名が含まれており（含まれている要素を丸印で示す。以下のテーブルも同様）、それ以外の要素名（"DeviceInfo”、”FileSpec”、”DeviceList”）は含まれていないことを示している。さらに、応答制御部２８は、図１６の要素リストテーブルを参照して、要素リストに含まれる要素名がResponse（R3）に記述されているか確認して要素パターン（EP2）を生成する（Ｓ１７２）。そして、応答制御部２８は、要素パターン（EP1）と要素パターン（EP2）が同一であるか否か（すなわち、Response（R2）とResponse（R3）の構造が同一か否か）を確認する（Ｓ１７３）。
【００６１】
図１０（ｂ）に戻って、Response（R2）とResponse（R3）の構造が同一であった場合（Ｓ１８０：Ｙｅｓ）、応答制御部２８は、Query（Q1）と標準Responseテーブルから取得したResponse（R3）とを対応付けて図１４のResponseテーブルに保存する（Ｓ２１０）。そして、応答制御部２８及びＭＩＢ制御部２９は、Dimension修正操作の登録を行う（Ｓ２４０）。
【００６２】
図１３はＳ２４０の詳細を示しており、まず、応答制御部２８は、Response（R3）の型がTrayであるかを判断し（Ｓ２４１）、Response（R3）がTrayでない（PaperCatalog、ColorProfile、ToneCurveなどの）場合は（Ｓ２４１：Ｎｏ）、図１３の処理を終了する。Response（R3）がTrayである場合は（Ｓ２４１：Ｙｅｓ）、第２の画像形成装置２０ｂからトレイ用紙サイズ（MS1）を取得する（Ｓ２４２）。Ｓ２４１におけるトレイ用紙サイズ（MS1）は、第１の画像形成装置２０ａがＳＮＭＰ通信制御部２５を用いて第２の画像形成装置２０ｂとＳＮＭＰ通信を行い、ＭＩＢ制御部２９がトレイ用紙サイズのＭＩＢオブジェクトを受信して、応答制御部２８に渡す。例えば、ＭＩＢオブジェクト”prtInputMediaDimFeedDirChosen”（オブジェクトID：1.3.6.1.2.1.43.8.2.1.6）を指定してトレイ用紙サイズ（MS1）を取得する。
【００６３】
次に、ＭＩＢ制御部２９は、第１の画像形成装置２０ａの記憶部２２に予め記憶された、図２０に示すDimensionテーブルから、用紙サイズ（MS1）に対応するDimension（D1）を取得して応答制御部２８に通知する（Ｓ２４３）。例えば、第２の画像形成装置２０ｂから”prtInputMediaDimFeedDirChosen”に対するＭＩＢオブジェクトとして”1.3.6.1.2.1.43.8.2.1.6.210”が返ってきた場合、DimensionテーブルからDimension（D1）は”595 842”となる。このDimensionテーブルには、第１の画像形成装置２０ａで使用可能な用紙サイズのすべてに対応するDimensionが定義されている。
【００６４】
次に、応答制御部２８は、第２の画像形成装置２０ｂのResponse（R2）中に記述されているDimension（D2）を取得する（Ｓ２４４）。例えば、Response（R2）が図６のResponse（Tray）であった場合、４１で示す”842 595”がDimension（D2）である。そして、応答制御部２８は、Dimension（D1）とDimension（D2）が一致するか確認し（Ｓ２４５）、一致しない場合は（Ｓ２４５：Ｎｏ）、Dimensionの修正が必要であると判断し、図１４のResponseテーブルにおけるDimension修正処理を「あり」に変更する（Ｓ２４６）。
【００６５】
図１０（ｂ）に戻って、Response（R2）とResponse（R3）の構造が同一でなかった場合（Ｓ１８０：Ｎｏ）、応答制御部２８は、図１５の標準Responseテーブルに含まれるResponseの中から、Response（R2）と構造が同一のResponse（R4）を特定する（Ｓ１９０）。
【００６６】
図１２はＳ１９０の詳細を示しており、まず、応答制御部２８は、図１６の要素リストに含まれる要素名が第２の画像形成装置２０ｂから取得したResponse（R2）に記述されているか確認して要素パターン（EP3）を生成する（Ｓ１９１）。次に、図１７に示す要素パターンテーブル（各々の型のResponseメッセージに含まれる要素を記述したテーブル）を参照して、要素パターン（EP3）と一致する要素パターンを持つResponseを特定する（Ｓ１９２）。例えば、要素パターン（EP3）が図１６に示す要素パターンである場合、TrayをResponseとして特定する。
【００６７】
次に、応答制御部２８は、特定したResponseが２つ以上であるかを判断し（Ｓ１９３）、特定したResponseが２つ以上の場合（例えば、要素パターンが”ResourceInfo”と”FileSpec”であり、図１７の要素パターンテーブルの”ColorProfile”と”ToneCurve”の両方と一致する場合）は、図１８に示す属性リストテーブル（Responseメッセージに記述される属性の一覧を示すテーブル）に含まれる属性名がResponse（R2）に記述されているか確認して属性パターン（AP1）を生成する（Ｓ１９４）。さらに、応答制御部２８は、図１９に示す属性パターンテーブル（各々の型のResponseメッセージに含まれる属性を記述したテーブル）を参照して、属性パターン（AP1）と一致する属性パターンを持つResponseを特定する（Ｓ１９５）。
【００６８】
図１０（ｂ）に戻って、属性パターン（AP1）と一致する属性パターンを持つResponse（R4）を特定できた場合（Ｓ２００：Ｙｅｓ）、応答制御部２８は、Query（Q1）と特定したResponse（R4）とを対応付けて図１４のResponseテーブルに保存し（Ｓ２２０）、上述したDimension修正操作の登録を行う（Ｓ２４０）。一方、Response（R4）を特定できなかった場合（Ｓ２００：Ｎｏ）、応答制御部２８は、Query（Q1）とエラーメッセージを記述したResponse（R5）とを対応付けて図１４のResponseテーブルに保存する（Ｓ２３０）。
【００６９】
Ｓ２３０又はＳ２４０の後、応答制御部２８は、図１４のResponseテーブルから、Query（Q1）に対応するResponse（Response（R3）又はResponse（R4）又はResponse（R5））を取得する（Ｓ２５０、（２）に続く）。次に、図１０（ａ）に戻って、応答制御部２８は、図１４のResponseテーブルを参照して、Query（Q1）に対応する修正操作（O1）の有無を取得し（Ｓ２６０）、修正操作ありの場合は（Ｓ２７０：Ｙｅｓ）、Responseテーブルから取得したResponseに記述されているDimensionの値の順序を逆にする処理を行う（Ｓ２８０）。例えば、Query（Q1）に対応するResponse（Response（R1）又はResponse（R3）又はResponse（R4）又はResponse（R5））に記述されているDimensionの値を逆にする。具体的には、Dimensionの値が”842 595”であった場合、”595 842”と書き換える。その後、応答制御部２８は、Response（Responseテーブルから取得したResponse又はDimensionの値を書き換えたResponse）をネットワークＩ／Ｆ部２３（ＪＭＦ通信制御部２４）を介してクライアント端末１０（ＪＤＦアプリケーション１７）に送信する（Ｓ２９０）。
【００７０】
このように、本実施例によれば、第２の画像形成装置２０ｂを使用するワークフローに自装置（第１の画像形成装置２０ａ）を導入する際、第１の画像形成装置２０ａが、クライアント端末１０のＪＤＦアプリケーション１７から受信したQueryメッセージを第２の画像形成装置２０ｂに送信してResponseメッセージを取得し、第２の画像形成装置２０ｂのResponseメッセージと自装置のResponseメッセージとが同一であれば自装置のResponseメッセージをQueryメッセージに対応付けてResponseテーブルに保存し、同一でなければ自装置が有するResponseメッセージの中で第２の画像形成装置２０ｂから取得したResponseメッセージと構造が同一のResponseメッセージを特定し、特定したResponseメッセージをQueryメッセージに対応付けてResponseテーブルに保存し、クライアント端末１０（ＪＤＦアプリケーション１７）にはResponseテーブルを参照してResponseメッセージを送信し、更に、クライアント端末１０（ＪＤＦアプリケーション１７）に送信するResponseメッセージにおけるトレイ用紙サイズの記述形式が第２の画像形成装置２０ｂと同一であるかを判定し、トレイ用紙サイズの記述形式が異なる場合は、Responseメッセージのトレイ用紙サイズを第２の画像形成装置２０ｂの記述形式に書き換えてから送信することにより、事前に定義ファイルの作成や実装を行うことなく、簡便に、第１の画像形成装置２０ａで第２の画像形成装置２０ｂと同じ動作を実現することができる。
【００７１】
なお、本発明は、上記実施例の記載に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。
【００７２】
例えば、上記実施例では、画像形成システムに第１の画像形成装置２０ａと第２の画像形成装置２０ｂの２台の画像形成装置２０が接続されている場合について記載したが、３台以上の画像形成装置２０が接続されている場合に対しても本発明の通信制御方法を適用することができる。その場合は、第１の画像形成装置２０ａは、クライアント端末１０（ＪＤＦアプリケーション１７）から、先にQueryを送信しResponseを受信して印刷を指示した画像形成装置を特定する装置情報を取得し、その装置情報で特定される画像形成装置に対してQueryを送信すればよい。又は、各々の他の画像形成装置に、クライアント端末１０（ＪＤＦアプリケーション１７）からのQueryに対してResponseを送信したかを問い合わせ、Responseを送信したと応答した画像形成装置に対してQueryを送信すればよい。
【００７３】
また、上記実施例では、トレイ用紙サイズをＭＩＢオブジェクトとして受信する構成としたが、ＪＭＦの仕様にトレイ用紙サイズを指定する情報が追加された場合は、ＪＭＦ通信によりトレイ用紙サイズを取得することができる。その場合は、ＭＩＢ制御部２９を省略することができる。
【産業上の利用可能性】
【００７４】
本発明は、ＪＭＦに従って通信を行う画像形成装置で動作する通信制御プログラム及び当該通信制御プログラムを記録した記録媒体並びにＪＭＦに従って通信を行う複数の画像形成装置を含む画像形成システム並びに当該画像形成システムにおける通信制御方法に利用可能である。
【符号の説明】
【００７５】
１０  クライアント端末
１１  制御部
１１ａ  ＣＰＵ
１１ｂ  ＲＯＭ
１１ｃ  ＲＡＭ
１２  記憶部
１３  ネットワークＩ／Ｆ部
１４  表示部
１５  操作部
１６  ＯＳ
１７  ＪＤＦアプリケーション
１８  ＭＩＳアプリケーション
２０  画像形成装置
２０ａ  第１の画像形成装置
２０ｂ  第２の画像形成装置
２１  制御部
２１ａ  ＣＰＵ
２１ｂ  ＲＯＭ
２１ｃ  ＲＡＭ
２２  記憶部
２３  ネットワークＩ／Ｆ部
２４  ＪＭＦ通信制御部
２５  ＳＮＭＰ通信制御部
２６  表示操作部
２７  画像形成部
２８  応答制御部
２９  ＭＩＢ制御部
３０  通信ネットワーク
４１  属性値（トレイ用紙サイズ）
４２  属性値（色）
４３  属性値（トレイ）
【図１】
2017130072.tif 000003
【図２】
2017130072.tif 000004
【図３】
2017130072.tif 000005
【図４】
2017130072.tif 000006
【図５】
2017130072.tif 000007
【図６】
2017130072.tif 000008
【図７】
2017130072.tif 000009
【図８】
2017130072.tif 000010
【図９】
2017130072.tif 000011
【図１０（ａ）】
2017130072.tif 000012
【図１０（ｂ）】
2017130072.tif 000013
【図１１】
2017130072.tif 000014
【図１２】
2017130072.tif 000015
【図１３】
2017130072.tif 000016
【図１４】
2017130072.tif 000017
【図１５】
2017130072.tif 000018
【図１６】
2017130072.tif 000019
【図１７】
2017130072.tif 000020
【図１８】
2017130072.tif 000021
【図１９】
2017130072.tif 000022
【図２０】
2017130072.tif 000023
【図２１】
2017130072.tif 000024
【図２２】
2017130072.tif 000025
【図２３】
2017130072.tif 000026