(57)【要約】【課題】ＰＣのような情報処理装置を接続することなく、画像処理装置の操作画面を操作することで、アプリケーションを外部装置からダウンロードしてインストールできるようにした画像処理装置を提供する。【解決手段】画像処理装置の特定手段は、画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定し、転送要求手段は、アプリケーションに関する情報に基づいて、アプリケーションの転送を外部装置に要求し、取得手段は、アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、Ｗｅｂブラウザ経由で外部装置から取得し、実行手段は、実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する。【選択図】図１
2018056645.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、
前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送を外部装置に要求する転送要求手段、
前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記外部装置から取得する取得手段、
前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、
を有する画像処理装置。
【請求項２】
前記実行アプリケーション情報は、前記アプリケーションの実行形式データを含む、
請求項１に記載の画像処理装置。
【請求項３】
前記実行手段は、前記取得手段が取得した前記実行アプリケーション情報に含まれる前記実行形式データが前記画像処理装置にインストールされていない場合に、前記実行形式データのインストールを実行する、
請求項２に記載の画像処理装置。
【請求項４】
前記実行手段は、前記取得手段が取得した前記実行アプリケーション情報に含まれる前記実行形式データが前記画像処理装置にインストールされている場合に、前記実行形式データの上書きインストールを実行する、
請求項３に記載の画像処理装置。
【請求項５】
前記転送要求手段は、前記画像処理装置の機種を特定する機種特定情報を前記外部装置に送信する、
請求項１に記載の画像処理装置。
【請求項６】
前記転送要求手段は、前記画像処理装置に前記アプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報を前記外部装置に送信する、
請求項５に記載の画像処理装置。
【請求項７】
画像処理装置で実行可能なアプリケーションに関する情報を一覧表示するＷｅｂページを操作して、特定の前記アプリケーションに関する情報を特定する特定手段、
前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションを当該画像処理装置にインストールするときに用いるデータ形式を含んだ実行アプリケーション情報の転送を、外部装置に要求する転送要求手段、
当該画像処理装置が備えるＷｅｂブラウザ経由で取得した前記外部装置から転送された前記実行アプリケーション情報を処理し、当該画像処理装置へのインストールを実行する実行手段、
前記実行手段による前記アプリケーションのインストールが完了した旨を通知する通知手段
を表示する表示装置
を有する画像処理装置。
【請求項８】
画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する取得手段、
前記取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、
を有するサーバー装置。
【請求項９】
前記取得手段は、前記画像処理装置の機種を特定する機種特定情報又は前記画像処理装置に前記アプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報をさらに取得し、
前記送信手段は、前記機種特定情報によって特定される機種又はデータ形式情報に適合する前記アプリケーションを含めた前記実行アプリケーション情報を生成して前記画像処理装置に送信する、
請求項８に記載のサーバー装置。
【請求項１０】
前記実行アプリケーション情報の生成をさらに外部装置に依頼する、
請求項８に記載のサーバー装置。
【請求項１１】
アプリケーションの実行形式データを外部装置に依頼して取得する、
請求項１０に記載のサーバー装置。
【請求項１２】
画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、
前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送をサーバー装置に要求する転送要求手段、
前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記サーバー装置から取得する取得手段、
前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、
を有する画像処理装置と、
前記画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する第２の取得手段、
前記第２の取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、
を有するサーバー装置
を有する画像処理システム。
【請求項１３】
画像処理装置であるコンピュータを、
前記画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、
前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送を外部装置に要求する転送要求手段、
前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記外部装置から取得する取得手段、
前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、
として機能させるための画像処理プログラム。
【請求項１４】
画像処理装置であるコンピュータを、
前記画像処理装置で実行可能なアプリケーションに関する情報を一覧表示するＷｅｂページを操作して、特定の前記アプリケーションに関する情報を特定する特定手段、
前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションを当該画像処理装置にインストールするときに用いるデータ形式を含んだ実行アプリケーション情報の転送を、外部装置に要求する転送要求手段、
当該画像処理装置が備えるＷｅｂブラウザ経由で取得した前記外部装置から転送された前記実行アプリケーション情報を処理し、当該画像処理装置へのインストールを実行する実行手段、
前記実行手段による前記アプリケーションのインストールが完了した旨を通知する通知手段
を表示する表示装置
として機能させるための画像処理プログラム。
【請求項１５】
コンピュータを、
画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する取得手段、
前記取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、サーバー装置、画像処理システム、画像処理プログラム及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、ローカルアプリケーションをＷｅｂブラウザから操作するためには、所定のプロトコルの規格に応じた修正を加え、Ｗｅｂブラウザ対応アプリケーションとして作り直す必要があったことを課題とし、Ｗｅｂブラウザを有する画像処理装置とその制御方法であって、画像処理装置の機能を実行するアプリケーションを有し、Ｗｅｂブラウザから制御要求を受けると、対応するアプリケーションの少なくともクラス名と関数名を制御要求として転送し、その転送された制御要求に含まれるアプリケーションのクラスをロードして実行関数を呼び出すことにより前記対応するアプリケーションを実行することが開示されている。
【０００３】
特許文献２には、ＭＦＰ毎の能力差異を考慮して、Ｗｅｂアプリケーションの操作画面を開発するのは、Ｗｅｂアプリケーションの開発コストを増大させるという問題があることを課題とし、ネットワークを介してサーバーと通信する情報処理装置であって、サーバーのＷｅｂアプリケーションの画面を操作するＷｅｂブラウザと、Ｗｅｂブラウザにより生成される画面を表示する表示部と、情報処理装置の機能を利用するジョブの実行を制御するためのジョブ制御部と、情報処理装置の能力情報を記憶する能力記憶部とを備え、Ｗｅｂブラウザは、画面の取得要求に対するＷｅｂアプリケーションからの応答メッセージを受信すると、その応答メッセージにしたがって能力記憶部から能力情報を取得し、応答メッセージ及び能力情報に基づいて、その画面に含まれる入力要素の選択又は入力の可否を変更して表示することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２２２８７２号公報
【特許文献２】特開２０１４−１１６８０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えばデジカメプリントのように、画像処理装置が提供する画像処理サービスの種類が増えている。画像処理装置の基本機能（具体的には、スキャン、コピー、プリント、ファックス等）に加えて画像処理サービスを画像処理装置で提供可能とするには、画像処理サービスを実行・提供するアプリケーションを画像処理装置にインストールする必要がある。
アプリケーションを画像処理装置やＰＣのような情報処理装置にインストールする場合、アプリケーションを実行形式（バイナリデータ）で情報処理装置に送る必要がある。
近年の画像処理装置では、インターネットを介してＰＣや他の画像処理装置と連携するようになっており、その操作画面にもＷｅｂブラウザの技術が使用されている。しかし、Ｗｅｂブラウザはテキストや画像を取り扱うことを前提に設計されているため、アプリケーションのインストールに必要となるバイナリデータの取り扱いには制限がある。例えば、転送することはできるが、加工する場合には多大なコスト（計算機資源を含む）を要する。そのためバイナリデータをＷｅｂブラウザ経由ではなく画像処理装置に接続したＰＣに一旦受信し、ＰＣの制御機構を使用して画像処理装置の制御装置にインストールするようにしている。
本発明は、ＰＣのような情報処理装置を接続することなく、画像処理装置の操作画面を操作することで、アプリケーションを外部装置からダウンロードして当該画像処理装置にインストールできるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送を外部装置に要求する転送要求手段、前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記外部装置から取得する取得手段、前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、を有する画像処理装置である。
【０００７】
請求項２の発明は、前記実行アプリケーション情報は、前記アプリケーションの実行形式データを含む、請求項１に記載の画像処理装置である。
【０００８】
請求項３の発明は、前記実行手段は、前記取得手段が取得した前記実行アプリケーション情報に含まれる前記実行形式データが前記画像処理装置にインストールされていない場合に、前記実行形式データのインストールを実行する、請求項２に記載の画像処理装置である。
【０００９】
請求項４の発明は、前記実行手段は、前記取得手段が取得した前記実行アプリケーション情報に含まれる前記実行形式データが前記画像処理装置にインストールされている場合に、前記実行形式データの上書きインストールを実行する、請求項３に記載の画像処理装置である。
【００１０】
請求項５の発明は、前記転送要求手段は、前記画像処理装置の機種を特定する機種特定情報を前記外部装置に送信する、請求項１に記載の画像処理装置である。
【００１１】
請求項６の発明は、前記転送要求手段は、前記画像処理装置に前記アプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報を前記外部装置に送信する、請求項５に記載の画像処理装置である。
【００１２】
請求項７の発明は、画像処理装置で実行可能なアプリケーションに関する情報を一覧表示するＷｅｂページを操作して、特定の前記アプリケーションに関する情報を特定する特定手段、前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションを当該画像処理装置にインストールするときに用いるデータ形式を含んだ実行アプリケーション情報の転送を、外部装置に要求する転送要求手段、当該画像処理装置が備えるＷｅｂブラウザ経由で取得した前記外部装置から転送された前記実行アプリケーション情報を処理し、当該画像処理装置へのインストールを実行する実行手段、前記実行手段による前記アプリケーションのインストールが完了した旨を通知する通知手段を表示する表示装置を有する画像処理装置である。
【００１３】
請求項８の発明は、画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する取得手段、前記取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、を有するサーバー装置である。
【００１４】
請求項９の発明は、前記取得手段は、前記画像処理装置の機種を特定する機種特定情報又は前記画像処理装置に前記アプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報をさらに取得し、前記送信手段は、前記機種特定情報によって特定される機種又はデータ形式情報に適合する前記アプリケーションを含めた前記実行アプリケーション情報を生成して前記画像処理装置に送信する、請求項８に記載のサーバー装置である。
【００１５】
請求項１０の発明は、前記実行アプリケーション情報の生成をさらに外部装置に依頼する、請求項８に記載のサーバー装置である。
【００１６】
請求項１１の発明は、アプリケーションの実行形式データを外部装置に依頼して取得する、請求項１０に記載のサーバー装置である。
【００１７】
請求項１２の発明は、画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送をサーバー装置に要求する転送要求手段、前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記サーバー装置から取得する取得手段、前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、を有する画像処理装置と、前記画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する第２の取得手段、前記第２の取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、を有するサーバー装置を有する画像処理システムである。
【００１８】
請求項１３の発明は、画像処理装置であるコンピュータを、前記画像処理装置が備えるＷｅｂブラウザ経由で取得した当該画像処理装置で実行可能なアプリケーションに関する情報の中から、操作者に選択されたアプリケーションに関する情報を特定する特定手段、前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションの転送を外部装置に要求する転送要求手段、前記転送要求手段によって転送を要求された前記アプリケーションを前記画像処理装置にインストールするときに用いる実行アプリケーション情報を、前記Ｗｅｂブラウザ経由で前記外部装置から取得する取得手段、前記取得手段が取得した前記実行アプリケーション情報を用いて、当該実行アプリケーション情報に係る前記アプリケーションを当該画像処理装置にインストールする処理を実行する実行手段、として機能させるための画像処理プログラムである。
【００１９】
請求項１４の発明は、画像処理装置であるコンピュータを、前記画像処理装置で実行可能なアプリケーションに関する情報を一覧表示するＷｅｂページを操作して、特定の前記アプリケーションに関する情報を特定する特定手段、前記特定手段が特定した前記アプリケーションに関する情報に基づいて、当該アプリケーションを当該画像処理装置にインストールするときに用いるデータ形式を含んだ実行アプリケーション情報の転送を、外部装置に要求する転送要求手段、当該画像処理装置が備えるＷｅｂブラウザ経由で取得した前記外部装置から転送された前記実行アプリケーション情報を処理し、当該画像処理装置へのインストールを実行する実行手段、前記実行手段による前記アプリケーションのインストールが完了した旨を通知する通知手段を表示する表示装置として機能させるための画像処理プログラムである。
【００２０】
請求項１５の発明は、コンピュータを、画像処理装置に表示されたＷｅｂページを経由して送信された当該画像処理装置へのインストールが要求されているアプリケーションを特定する情報を取得する取得手段、前記取得手段が取得した情報によって特定される前記アプリケーションを前記画像処理装置にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で前記画像処理装置に送信する送信手段、として機能させるための情報処理プログラムである。
【発明の効果】
【００２１】
請求項１の画像処理装置によれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページをアクセスしてアプリケーションがダウンロードされ、当該画像処理装置にインストールされる。
【００２２】
請求項２の画像処理装置によれば、実行アプリケーション情報内のアプリケーションの実行形式データが画像処理装置にインストールされる。
【００２３】
請求項３の画像処理装置によれば、実行形式データが画像処理装置にインストールされていない場合に、実行形式データがインストールされる。
【００２４】
請求項４の画像処理装置によれば、実行形式データが画像処理装置にインストールされている場合に、実行形式データが上書きインストールされる。
【００２５】
請求項５の画像処理装置によれば、機種特定情報が外部装置に送信される。
【００２６】
請求項６の画像処理装置によれば、データ形式情報が外部装置に送信される。
【００２７】
請求項７の画像処理装置によれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページをアクセスしてアプリケーションがダウンロードされ、当該画像処理装置にインストールされる。
【００２８】
請求項８のサーバー装置によれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページがアクセスされて、当該画像処理装置にインストール可能に、アプリケーションが送信される。
【００２９】
請求項９のサーバー装置によれば、アプリケーションを含めた実行アプリケーション情報が生成される。
【００３０】
請求項１０のサーバー装置によれば、実行アプリケーション情報の生成における負荷が減少される。
【００３１】
請求項１１のサーバー装置によれば、実行形式データが外部装置から取得される。
【００３２】
請求項１２の画像処理システムによれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページをアクセスしてアプリケーションがダウンロードされ、当該画像処理装置にインストールされる。
【００３３】
請求項１３の画像処理プログラムによれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページをアクセスしてアプリケーションがダウンロードされ、当該画像処理装置にインストールされる。
【００３４】
請求項１４の画像処理プログラムによれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページをアクセスしてアプリケーションがダウンロードされ、当該画像処理装置にインストールされる。
【００３５】
請求項１５の情報処理プログラムによれば、ＰＣのような情報処理装置を用いることなく、画像処理装置の操作画面からＷｅｂページがアクセスされて、当該画像処理装置にインストール可能に、アプリケーションが送信される。
【図面の簡単な説明】
【００３６】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を利用したシステム構成例を示す説明図である。
【図３】本実施の形態による処理例を示す説明図である。
【図４】本実施の形態による処理例を示すフローチャートである。
【図５】本実施の形態による処理例を示すフローチャートである。
【図６】画面の表示例を示す説明図である。
【図７】画面の表示例を示す説明図である。
【図８】リクエストのデータ内容例を示す説明図である。
【図９】レスポンスのデータ内容例を示す説明図である。
【図１０】リクエストのデータ内容例を示す説明図である。
【図１１】レスポンスのデータ内容例を示す説明図である。
【図１２】リクエストデータのデータ内容例を示す説明図である。
【図１３】ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータのデータ内容例を示す説明図である。
【図１４】プラグイン管理テーブルのデータ構造例を示す説明図である。
【図１５】画面の表示例を示す説明図である。
【図１６】本実施の形態を利用しない技術の例を示す説明図である。
【図１７】本実施の形態を利用しない技術の例を示す説明図である。
【図１８】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００３７】
まず、本実施の形態を説明する前に、本実施の形態を利用しないで、画像処理装置１６００に外部管理装置１６５０内のプラグインをインストールする処理について、図１６、図１７を用いて説明する。なお、この説明は、本実施の形態の理解を容易にすることを目的とするものである。
【００３８】
図１６は、本実施の形態を利用しない技術の例を示す説明図である。
画像処理装置１６００−１、画像処理装置１６００−２、画像処理装置１６００−３、ファイアーウォール装置１４０、管理者用装置１６７０は、通信回線１９０を介してそれぞれ接続されている。通信回線１９０は、例えば、社内ＬＡＮとしてのイントラネットであり、管理者が管理者用装置１６７０を用いて、画像処理装置１６００に外部管理装置１６５０内のアプリケーション（以下、プラグインともいう）をインストールする。例えば、画像処理装置１６００は複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）であり、管理者用装置１６７０はパーソナルコンピュータ等である。
ファイアーウォール装置１４５、外部管理装置１６５０は、通信回線１９４を介して接続されている。
ファイアーウォール装置１４０、ファイアーウォール装置１４５は、通信回線１９２を介して接続されている。
【００３９】
図１７は、本実施の形態を利用しない技術の例を示す説明図である。
ステップＳ１７０２では、管理者用装置１６７０は、管理者であるユーザー１３０の操作にしたがって、外部管理装置１６５０から、プラグインとＳＯＡＰ送信アプリケーションをダウンロードする。
ステップＳ１７０４では、管理者用装置１６７０は、画像処理装置１６００から、インストールのための情報を収集する。
ステップＳ１７０６では、管理者用装置１６７０は、画像処理装置１６００にＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを送信する。具体的には、ＳＯＡＰ送信アプリケーションが、画像処理装置１６００に、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓでプラグインを送信する。
ステップＳ１７０８では、画像処理装置１６００は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを処理することにより、プラグインをインストールする。
この処理では、管理者用装置１６７０は必要である。
【００４０】
本実施の形態に用いる技術であるＳＯＡＰ、Ｗｅｂブラウザについて、説明する。
ネットワーク上の別のコンピュータのプログラムを実行するための標準通信方式として、ＳＯＡＰが制定されている。ＳＯＡＰについては、以下の文献に詳しい。
https://www.ietf.org/rfc/rfc4227.txt
この規格には、ファイルを添付するための方式も含まれている。これは一般的にＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓと呼ばれている。なお、上述したようにＳＯＡＰは本発明に関連するコンピュータネットワーク通信の規格の一例であって、発明の実施をする上でＳＯＡＰに限定されるものではないことは、当業者であれば明らかである。
また、近年Ｗｅｂ関連技術の進歩にともない、Ｗｅｂブラウザも著しく進歩している。
ＪａｖａＳｃｒｉｐｔ（登録商標）というプログラム言語で記述することで、動的な画面表現や、簡単な処理の実行を実現することができる。
【００４１】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態にしたがって、又はそれまでの状況・状態にしたがって定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００４２】
本実施の形態である画像処理装置１００と外部管理装置１５０は、通信回線を介して接続されている。画像処理装置１００が所望の形式でのデータ転送を外部管理装置１５０に要求し、外部管理装置１５０は要求された形式に転送すべきデータを変換して画像処理装置１００に送り返すものである。
例えば、図１に示すように、ファイアーウォール装置１４０の内側に画像処理装置１００が接続されており、ファイアーウォール装置１４０の外側に外部管理装置１５０が接続されている。具体的には、社内に画像処理装置１００が設置されており、管理者であるユーザー１３０の操作にしたがって画像処理装置１００にアプリケーションがインストールされる。アプリケーションとして、例えば、前述したように、デジタルカメラから画像を抽出し、その画像を印刷するデジカメプリント、画像処理装置１００の操作ログを外部管理装置１５０に送信するデバイスログサービス等がある。
画像処理装置１００は、画像に関するオフィス機器であって、例えば、複写機、ファックス、スキャナ、プリンタ、複合機等が該当するが、以下の説明では、複合機を具体例として挙げる。外部管理装置１５０は、例えば、画像処理装置１００のメーカー等に設置されているサーバーであり、画像処理装置１００の管理をする。具体的には、画像処理装置１００にインストール可能なアプリケーションを管理している。その他、対象としている会社における複数の画像処理装置１００の使用量から料金を算出したり、修理、故障予防等の管理をしたりする。
【００４３】
画像処理装置１００は、通信管理モジュール１０５、プラグイン管理モジュール１１０、インストール処理モジュール１１５、ユーザーインタフェースモジュール１２０、Ｗｅｂブラウザモジュール１２５を有している。
通信管理モジュール１０５は、インストール処理モジュール１１５、Ｗｅｂブラウザモジュール１２５と接続されており、また、通信回線１９０を介してファイアーウォール装置１４０と接続されており、さらに、通信回線１９２を介してファイアーウォール装置１４５と接続されている。通信管理モジュール１０５は、外部管理装置１５０との通信を行う。
【００４４】
プラグイン管理モジュール１１０は、インストール処理モジュール１１５、Ｗｅｂブラウザモジュール１２５と接続されている。プラグイン管理モジュール１１０は、本画像処理装置１００にインストールされているアプリケーションに関する情報を管理する。また、プラグイン管理モジュール１１０は、本画像処理装置１００にアプリケーションをインストールするために関する情報を管理する。例えば、本画像処理装置１００の機種特定情報（機種コードともいう）、アプリケーション実行環境（例えば、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ＣＰＵ種類、メモリ容量等）等を管理する。
【００４５】
ユーザーインタフェースモジュール１２０は、Ｗｅｂブラウザモジュール１２５と接続されている。ユーザーインタフェースモジュール１２０は、本画像処理装置１００が備えるＷｅｂブラウザモジュール１２５経由で取得した本画像処理装置１００で実行可能なアプリケーションに関する情報の中から、操作者であるユーザー１３０に選択されたアプリケーションに関する情報を特定する。ここで「アプリケーションに関する情報」には、少なくとも、アプリケーションを特定する情報（例えば、アプリケーション名、アプリケーションＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ））が含まれる。
例えば、ユーザーインタフェースモジュール１２０は、タッチパネルを兼ねる液晶ディスプレイを制御して、ユーザー１３０の操作を受け付け、ユーザー１３０に対してメッセージ等を提示する。この他、マウス、キーボード、音声、視線、ジェスチャ等を用いたユーザー１３０の操作を受け付けるようにしてもよいし、スピーカーによる音声出力、触覚デバイスを用いて触感によって、ユーザー１３０へのメッセージを提示するようにしてもよい。
【００４６】
Ｗｅｂブラウザモジュール１２５は、通信管理モジュール１０５、プラグイン管理モジュール１１０、インストール処理モジュール１１５、ユーザーインタフェースモジュール１２０と接続されている。Ｗｅｂブラウザモジュール１２５は、ユーザーインタフェースモジュール１２０が特定したアプリケーションに関する情報に基づいて、そのアプリケーションの転送を外部装置である外部管理装置１５０に要求する。ここで、転送される「アプリケーション」のデータとして、そのアプリケーションの実行形式データと(インストール命令の)テキストデータの混在データであってもよい。
そして、Ｗｅｂブラウザモジュール１２５は、転送を要求したアプリケーションを本画像処理装置１００にインストールするときに用いる実行アプリケーション情報を、Ｗｅｂブラウザ経由で外部管理装置１５０から取得する。ここで「実行アプリケーション情報」として、アプリケーションの実行形式データを含めてもよい。なお、前述したように、「実行アプリケーション情報」が実行形式データとテキストデータの混在データの形式である場合、テキストデータ形式のインストール命令と実行形式データに区分して逐次転送されるケースであってもよいし、インストール命令と実行形式データが混在して転送されるケースのいずれであってもよい。
また、Ｗｅｂブラウザモジュール１２５は、本画像処理装置１００の機種を特定する機種特定情報を外部管理装置１５０に送信するようにしてもよい。つまり、外部管理装置１５０に画像処理装置１００の処理能力を伝える機能を有していてもよい。
さらに、Ｗｅｂブラウザモジュール１２５は、本画像処理装置１００にアプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報を、外部管理装置１５０に送信するようにしてもよい。つまり、ネゴシエーションの目的として、画像処理装置１００における実行形態を伝えるものである。
【００４７】
また、Ｗｅｂブラウザモジュール１２５は、ユーザーインタフェースモジュール１２０が制御するディスプレイに以下のものを表示させるようにしてもよい。
（１）本画像処理装置１００で実行可能なアプリケーションに関する情報を一覧表示するＷｅｂページを操作して、特定のアプリケーションに関する情報を選択するための表示要素。具体的には、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からアプリケーションを示すアイコン等が該当する。ユーザー１３０の操作によって、このアイコンが選択されることが、「特定のアプリケーションに関する情報を選択する」ことに該当する。後述する図６（ａ）の例に示すＤｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅアイコン６２０等が該当する。
（２）前述の（１）の選択によって特定されたアプリケーションに関する情報に基づいて、そのアプリケーションを本画像処理装置１００にインストールするときに用いるデータ形式を含んだ実行アプリケーション情報の転送を、外部管理装置１５０に要求するための表示要素。具体的には、ＧＵＩからアプリケーションの転送・インストールを要求することを表すボタン表示等が該当する。後述する図６（ｂ）の例に示す「画像処理装置連携ツールのインストール」ボタン６４０等が該当する。
（３）本画像処理装置１００が備えるＷｅｂブラウザ経由で取得した外部管理装置１５０から転送された実行アプリケーション情報を処理し、本画像処理装置１００へのインストールを実行するための表示要素。具体的には、ＧＵＩからインストール開始を表すボタン表示等が該当する。後述する図７（ｂ）の例に示す開始ボタン７２０等が該当する。
（４）前述の（３）の選択によってインストールが行われた後に、アプリケーションのインストールが完了した旨を通知するための表示要素。具体的には、後述する図１５の例に示すインストール完了提示領域１５１０内の表示内容等が該当する。
【００４８】
インストール処理モジュール１１５は、通信管理モジュール１０５、プラグイン管理モジュール１１０、Ｗｅｂブラウザモジュール１２５と接続されている。インストール処理モジュール１１５は、Ｗｅｂブラウザモジュール１２５が取得した実行アプリケーション情報を用いて、その実行アプリケーション情報に係るアプリケーションを本画像処理装置１００にインストールする処理を実行する。
また、インストール処理モジュール１１５は、Ｗｅｂブラウザモジュール１２５が取得した実行アプリケーション情報に含まれる実行形式データが本画像処理装置１００にインストールされていない場合に、実行形式データのインストールを実行するようにしてもよい。
また、インストール処理モジュール１１５は、Ｗｅｂブラウザモジュール１２５が取得した実行アプリケーション情報に含まれる実行形式データが本画像処理装置１００にインストールされている場合に、実行形式データの上書きインストールを実行するようにしてもよい。一般的には、アプリケーションのバージョンアップであるが、古い版に戻すバージョンダウンであってもよいし、データ等を更新、修正するパッチファイルの適用であってもよい。
【００４９】
外部管理装置１５０は、通信管理モジュール１５５、画像処理装置管理モジュール１６０、プラグイン管理モジュール１６５を有している。
通信管理モジュール１５５は、画像処理装置管理モジュール１６０、プラグイン管理モジュール１６５と接続されており、また、通信回線１９４を介してファイアーウォール装置１４５と接続されており、さらに、通信回線１９２を介してファイアーウォール装置１４０と接続されている。通信管理モジュール１５５は、画像処理装置１００との通信を行う。
【００５０】
画像処理装置管理モジュール１６０は、通信管理モジュール１５５と接続されている。画像処理装置管理モジュール１６０は、外部管理装置１５０が管理している画像処理装置１００に関する情報を管理する。管理する情報として、例えば、画像処理装置１００の機種特定情報、インストール可能なアプリケーション、設置されている場所、使用料等がある。
プラグイン管理モジュール１６５は、通信管理モジュール１５５と接続されている。プラグイン管理モジュール１６５は、画像処理装置１００に表示されたＷｅｂページを経由して送信されたその画像処理装置１００へのインストールが要求されているアプリケーションを特定する情報を取得する。
そして、プラグイン管理モジュール１６５は、取得した情報によって特定されるアプリケーションを画像処理装置１００にインストールするときに用いる形式のデータに変換した実行アプリケーション情報を、Ｗｅｂブラウザ経由で画像処理装置１００に送信する。
また、プラグイン管理モジュール１６５は、画像処理装置１００の機種を特定する機種特定情報又は画像処理装置１００にアプリケーションをインストールするために用いるデータの形式を特定するデータ形式情報をさらに取得するようにしてもよい。
そして、プラグイン管理モジュール１６５は、機種特定情報によって特定される機種又はデータ形式情報に適合するアプリケーションを含めた実行アプリケーション情報を生成して画像処理装置１００に送信するようにしてもよい。例えば、実行形式データを付加しているＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓ等を生成する。具体的には、前述のネゴシエーション結果にしたがって、アプリケーションを加工する。
また、プラグイン管理モジュール１６５は、実行アプリケーション情報の生成をさらに外部装置に依頼するようにしてもよい。外部管理装置１５０の負荷を軽減させるためである。ここでの外部装置としては、例えば、外部管理装置１５０と通信回線１９４で接続されている他のサーバー等が該当する。
また、プラグイン管理モジュール１６５は、アプリケーションの実行形式データを外部装置に依頼して取得するようにしてもよい。外部管理装置１５０の負荷を軽減させるためである。
なお、画像処理装置１００はアプリケーションの実行形式データを、外部管理装置１５０から受け取ってインストール処理を行うことを例示したが、画像処理装置１００（特に、インストール処理モジュール１１５）の処理能力によっては実行形式データでなくてもインストール処理することができる。例えば、アプリケーションの汎用形式データ（実行形式データの一歩手前の中間データ形式、ソースコード形式等）を、外部管理装置１５０は送信し、画像処理装置１００（特に、インストール処理モジュール１１５）が、本画像処理装置１００で実行できる実行形式に変換するようにしてもよい。
【００５１】
通信回線１９０と通信回線１９２の間には、ファイアーウォール装置１４０が設けられている。そして、画像処理装置１００は、ファイアーウォール装置１４０内に設置されており、外部管理装置１５０は、そのファイアーウォール装置１４０外に設置されている。例えば、画像処理装置１００は、社内のイントラネット内にある。したがって、ファイアーウォール装置１４０内の画像処理装置１００からファイアーウォール装置１４０外の外部管理装置１５０へは、任意のタイミングで通信を行うことができるが、外部管理装置１５０から画像処理装置１００へは、任意のタイミングで通信ができるわけではなく、画像処理装置１００から外部管理装置１５０に対して通信があった場合に、その返信として外部管理装置１５０から画像処理装置１００への通信が可能となる。
ファイアーウォール装置１４０は、通信回線１９０を介して画像処理装置１００の通信管理モジュール１０５と接続されており、また、通信回線１９２を介してファイアーウォール装置１４５と接続されている。
ファイアーウォール装置１４５は、通信回線１９２を介してファイアーウォール装置１４０と接続されており、また、通信回線１９４を介して外部管理装置１５０の通信管理モジュール１５５と接続されている。ファイアーウォール装置１４５は、必ずしも必要な構成ではないが、ファイアーウォール装置１４５内の装置を保護するために一般的に設けられる。ファイアーウォール装置１４５は、ファイアーウォール装置１４０と同等の機能を有している。
【００５２】
図２は、本実施の形態を利用したシステム構成例を示す説明図である。
画像処理装置１００Ａ１、画像処理装置１００Ａ２、画像処理装置１００Ａ３、ファイアーウォール装置１４０Ａは、通信回線１９０Ａを介してそれぞれ接続されている。
画像処理装置１００Ｂ１、画像処理装置１００Ｂ２、画像処理装置１００Ｂ３、画像処理装置１００Ｂ４、ファイアーウォール装置１４０Ｂは、通信回線１９０Ｂを介してそれぞれ接続されている。
ファイアーウォール装置１４５と外部管理装置１５０は、通信回線１９４を介して接続されている。
ファイアーウォール装置１４０Ａ、ファイアーウォール装置１４０Ｂ、ファイアーウォール装置１４５は、通信回線１９２を介してそれぞれ接続されている。通信回線１９０、通信回線１９２、通信回線１９４は、無線、有線、これらの組み合わせであってもよい。例えば、通信回線１９２は、通信インフラとしてのインターネット等、通信回線１９０、通信回線１９４は、社内でのイントラネット等であってもよい。また、外部管理装置１５０による機能は、クラウドサービスとして実現してもよい。
図１６で示した例とは、通信回線１９０に管理者用装置１６７０が接続されていない点が異なる。なお、図２の例は、プラグインのインストールにおいて、管理者用装置１６７０が不要であることを示しているのであり、通信回線１９０に管理者用装置１６７０が接続されていることを排除しているわけではない。
【００５３】
管理者用装置１６７０を使わずに画像処理装置１００のパネルだけでインストールしようとすると、ＷｅｂブラウザでＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓを送信する必要がある。
Ｗｅｂブラウザ上で動作するＪａｖａＳｃｒｉｐｔプログラムは、Ｗｉｎｄｏｗｓ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｊａｖａ（登録商標）や．ＮＥＴ  Ｆｒａｍｅｗｏｒｋなど他のプログラムに比べて記述できる処理が少ないため、処理が実現できなかったり、実行速度が遅かったり、使用するメモリが多くなったりという問題がある。
ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓは、通信内容にテキスト形式の部分とバイナリ形式の部分が混在する仕様となっており、これをＷｅｂブラウザ上で生成するのは困難である。
【００５４】
そこで、本実施の形態は、図３の例に示すような処理を行う。図３は、本実施の形態による処理例を示す説明図である。
ステップＳ３０２では、Ｗｅｂブラウザモジュール１２５は、プラグイン管理モジュール１１０からインストールのための情報を収集する。
ステップＳ３０４では、Ｗｅｂブラウザモジュール１２５は、インストールのための情報を外部管理装置１５０のプラグイン管理モジュール１６５に送信して、そのプラグイン管理モジュール１６５からＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを取得する。そして、Ｗｅｂブラウザモジュール１２５は、インストール処理モジュール１１５にＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを渡す。
ステップＳ３０６では、インストール処理モジュール１１５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを処理することにより、プラグインをインストールする。
【００５５】
つまり、外部管理装置１５０は、画像処理装置１００内のＷｅｂブラウザモジュール１２５にプラグイン本体を渡すのではなく、インストールのための情報を用いて、プラグイン本体を含むＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓ通信全体を返すようにした。
外部管理装置１５０に接続するＷｅｂブラウザモジュール１２５は、複雑な処理をすることなく、外部管理装置１５０から戻ってきたデータ全体をそのままインストール処理モジュール１１５に渡せば、それがＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータになっているため、プラグインをインストールすることができる。
複雑な処理が必要ないため、Ｗｅｂブラウザモジュール１２５で動作するＪａｖａＳｃｒｉｐｔプログラムとして記述することができるようになり、画像処理装置１００のユーザーインタフェースモジュール１２０に対する操作だけでもプラグインのインストールが実現できるようになった。
【００５６】
図４、図５を用いて、より詳細に説明する。図４、図５は、本実施の形態による処理例を示すフローチャートである。画像処理装置１００は、ＰＣのような情報処理装置を用いることなく、プラグインのインストール（セットアップ）機能を提供する。
ステップＳ４０２では、ユーザーインタフェースモジュール１２０は、管理者であるユーザー１３０の操作にしたがって、操作画面を表示する。
図６は、画面６００の表示例を示す説明図である。
図６（ａ）の例では、画面６００に操作提示領域６１０を表示し、その操作提示領域６１０には、画像処理装置１００の基本機能（図内では、スキャナー等）の他に、前述したデバイスログサービス（図では「Ｄｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅ」）を示すＤｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅアイコン６２０等を表示している。
ステップＳ４０４では、ユーザーインタフェースモジュール１２０は、ユーザー１３０の操作にしたがって、プラグインに関する操作を受け付ける。具体的には、ユーザー１３０の操作にしたがって、画像処理装置１００のＷｅｂブラウザで、外部管理装置１５０上のＷｅｂサイトを開く。開く方法は、アドレスバーにＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を打ち込んだり、ブックマークからＷｅｂサイトを選択したり、リンクをクリックしたりといった、通常のＷｅｂサイト閲覧の操作である。
図６（ａ）の例では、画面６００には、Ｄｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅアイコン６２０等が表示されており、Ｄｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅアイコン６２０をクリックすることが、外部管理装置１５０上のＷｅｂサイトを開く操作に該当する。つまり、この例は、リンクをクリックしている操作である。
ステップＳ４０６では、Ｗｅｂブラウザモジュール１２５は、外部管理装置１５０へのアクセスを要求する。
【００５７】
ステップＳ４０８では、画像処理装置管理モジュール１６０は、Ｗｅｂサイトの表示処理を行う。例えば、図６（ｂ）に示すように、画面６００に、プラグインインストール要求提示領域６３０を表示し、プラグインインストール要求提示領域６３０には、「画像処理装置連携ツールのインストール」ボタン６４０を表示する。プラグインインストール要求提示領域６３０に、例えば、「画像処理装置の使用状況を集計・参照。経費管理を効率化しＴＣＯ削減を推進します。」、「特別な設備や手間が不要。手軽に経費削減のＰＤＣＡサイクルを構築できます。」のように表示する。
ステップＳ４１０では、ユーザーインタフェースモジュール１２０は、ユーザー１３０の操作にしたがって、プラグインのインストール指示を受け付ける。例えば、図６（ｂ）（図７（ａ））に示す「画像処理装置連携ツールのインストール」ボタン６４０の選択により、ＪａｖａＳｃｒｉｐｔプログラムがＷｅｂブラウザ上で実行される。図７は、画面６００の表示例を示す説明図である。図７（ｂ）の例では、画面６００に、インストール確認提示領域７１０を表示し、インストール確認提示領域７１０には、開始ボタン７２０、キャンセルボタン７３０を表示する。インストール確認提示領域７１０には、例えば、「インストールを開始するには、Ｄｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅ利用のお申し込みと、画像処理装置のインターネット接続設定が必要です。詳細は弊社公式サイトをご確認ください。」のように表示する。開始ボタン７２０の選択が、インストール指示に該当する。なお、「画像処理装置連携ツールのインストール」ボタン６４０と開始ボタン７２０の両方の一連の選択を、インストール指示として把握してもよい。
【００５８】
ステップＳ４１２では、Ｗｅｂブラウザモジュール１２５は、プラグイン管理モジュール１１０から、インストールのための情報を収集する。
具体的には、ＪａｖａＳｃｒｉｐｔプログラムにより、画像処理装置１００のインストール処理モジュール１１５にＳＯＡＰリクエストが発行される。
図８、図９に、リクエストとレスポンスの例を示す。
図８は、リクエスト８００のデータ内容例を示す説明図である。Ｗｅｂブラウザモジュール１２５は、リクエスト８００として、例えば、以下のデータを生成する。
「<?xml version="1.0" ?>
<soapEnv:Envelope xmlns:soapEnv="http://schemas.xmlsoap.org/soap/envelope/">
<soapEnv:Body>
<GetAttribute xmlns="http://www.fujixerox.co.jp/">
<ProductCode/>
</GetAttribute>
</soapEnv:Body>
</soapEnv:Envelope>」
【００５９】
図９は、レスポンス９００のデータ内容例を示す説明図である。インストール処理モジュール１１５（又はプラグイン管理モジュール１１０）は、レスポンス９００として、例えば、以下のデータを生成する。
「<?xml version="1.0" ?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body xmlns:xsd="http://www.w3.org/2000/10/XMLSchema">
<GetAttributeResponse xmlns="http://www.fujixerox.co.jp/">
<ProductCode>NC100497</ProductCode>
</GetAttributeResponse>
</env:Body>
</env:Envelope>」
図８、図９の例は、リクエスト８００（特に、対象行８１０）で、画像処理装置１００の機種コード（ＰｒｏｄｕｃｔＣｏｄｅ）を取得要求し、インストール処理モジュール１１５（又はプラグイン管理モジュール１１０）からレスポンス９００（特に、対象行９１０）によって「ＮＣ１００４９７」というコードが返されていることを示している。
これはリクエスト８００もレスポンス９００もテキストデータなので、ＪａｖａＳｃｒｉｐｔプログラムで容易に処理できる。
なお、外部管理装置１５０上のＷｅｂサイトから、画像処理装置１００のインストール処理モジュール１１５に通信するためには、セキュリティ上の理由で、特殊な処理が必要になる。
一般的には、インストール処理モジュール１１５が、レスポンスのヘッダに、外部管理装置１５０のＵＲＬからの通信を許可する、という識別子を付加することでこれが実現される。
これはＣＯＲＳ（Ｃｒｏｓｓ−Ｏｒｉｇｉｎ  Ｒｅｓｏｕｒｃｅ  Ｓｈａｒｉｎｇ）と呼ばれる公知の技術である。
【００６０】
さらに、同様の手順で、画像処理装置１００のプラグインのインストールに必要な情報を収集する。
図１０は、リクエスト１０００のデータ内容例を示す説明図である。Ｗｅｂブラウザモジュール１２５は、リクエスト１０００として、例えば、以下のデータを生成する。
「<?xml version="1.0" ?>
<soapEnv:Envelope xmlns:soapEnv="http://schemas.xmlsoap.org/soap/envelope/">
<soapEnv:Body>
<GetPlugin xmlns="http://www.fujixerox.co.jp/">
<PluginID>DeviceLogService</PluginID>
</GetPlugin>
</soapEnv:Body>
</soapEnv:Envelope>」
【００６１】
図１１は、レスポンス１１００のデータ内容例を示す説明図である。インストール処理モジュール１１５（又はプラグイン管理モジュール１１０）は、レスポンス１１００として、例えば、以下のデータを生成する。
「<?xml version="1.0" ?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body xmlns:xsd="http://www.w3.org/2000/10/XMLSchema">
<GetPluginResponse xmlns="http://www.fujixerox.co.jp/" />
</env:Body>
</env:Envelope>」
図１０、図１１の例は、リクエスト１０００（特に、対象行１０１０）で、「ＤｅｖｉｃｅＬｏｇＳｅｒｖｉｃｅ」というプラグインがインストール済みか否かの問い合わせを要求し、インストール処理モジュール１１５（又はプラグイン管理モジュール１１０）からレスポンス１１００（特に、対象行１１１０と対象行１１２０の間が空であること）によって、空のレスポンス、つまりインストールされていないという結果が返ってきていることを示している。なお、インストールされている場合は、対象行１１１０と対象行１１２０の間に、インストールされているバージョン番号等が記載されている。
【００６２】
ステップＳ４１４では、Ｗｅｂブラウザモジュール１２５は、外部管理装置１５０にインストールのための情報を送信して、プラグインを要求する。例えば、図１２に示すリクエストデータ１２００を送信する。図１２は、リクエストデータ１２００のデータ内容例を示す説明図である。
リクエストデータ１２００として、例えば、「PluginID=DeviceLogService&ProductCode=NC100497&Installed=No」を生成し、送信する。
Ｗｅｂブラウザ上で動作中のＪａｖａＳｃｒｉｐｔプログラムは、外部管理装置１５０に対して、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストの生成を要求する。
リクエストデータ１２００には、これまでにインストール処理モジュール１１５（又はプラグイン管理モジュール１１０）から得られた情報が付与されている。
図１２の例に示すリクエストデータ１２００は、「ＰｌｕｇｉｎＩＤ＝ＤｅｖｉｃｅＬｏｇＳｅｒｖｉｃｅ」の部分が「ＤｅｖｉｃｅＬｏｇＳｅｒｖｉｃｅ」という拡張機能プラグインを画像処理装置１００にインストールするためのＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエスト追加要求であることを表し、「ＰｒｏｄｕｃｔＣｏｄｅ＝ＮＣ１００４９７」の部分が本画像処理装置１００の機種コードを表し、「Ｉｎｓｔａｌｌｅｄ＝Ｎｏ」の部分が、現在の画像処理装置１００にそのプラグインがインストールされていないことを表す。
なお、この要求に対する応答は、バイナリデータ（図１３の例で示すＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００）で返される。
【００６３】
ステップＳ４１６では、プラグイン管理モジュール１６５は、インストールのための情報を受信する。前述の例では、リクエストデータ１２００を受信する。
ステップＳ４１８では、プラグイン管理モジュール１６５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを生成する。例えば、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００を生成する。
図１３は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００のデータ内容例を示す説明図である。ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００として、例えば、以下のデータを生成する。
「--boundary
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: binary
Content-ID: <2>
<?xml version="1.0" ?>
<soapEnv:Envelope xmlns:soapEnv="http://schemas.xmlsoap.org/soap/envelope/">
<soapEnv:Body>
<InstallPlugin xmlns="http://www.fujixerox.co.jp/">
<PluginFile href="cid:1"/>
</InstallPlugin>
</soapEnv:Body>
</soapEnv:Envelope>
--boundary
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
Content-ID: <1>
(プラグインのバイナリデータ)
--boundary--」
【００６４】
外部管理装置１５０は要求（リクエストデータ１２００）に基づき、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００を生成する。
「−−ｂｏｕｎｄａｒｙ、Ｃｏｎｔｅｎｔ−Ｔｙｐｅ、Ｃｏｎｔｅｎｔ−Ｔｒａｎｓｆｅｒ−Ｅｎｃｏｄｉｎｇ、Ｃｏｎｔｅｎｔ−ＩＤ」の部分は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓの仕様で定義された書式である。外部管理装置１５０は、画像処理装置１００のＷｅｂブラウザモジュール１２５を介してインストール処理モジュール１１５が処理することができるデータを生成している。このようなデータを画像処理装置１００に送るために、一例としてＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓという標準規格に定義された枠組みが採用されているに過ぎない。
「ＩｎｓｔａｌｌＰｌｕｇｉｎ」は、プラグインの新規インストールであることを表す。
これは、Ｗｅｂブラウザモジュール１２５から送信されたリクエストデータ１２００内の「Ｉｎｓｔａｌｌｅｄ＝Ｎｏ」に対応する。
なお、「Ｉｎｓｔａｌｌｅｄ＝Ｙｅｓ」であった場合は、「ＵｐｄａｔｅＰｌｕｇｉｎ」（プラグインの上書きインストール要求）に変わる。
ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓには、外部管理装置１５０内に格納されている、「ＮＣ１００４９７」の機種用のプラグイン「ＤｅｖｉｃｅＬｏｇＳｅｒｖｉｃｅ」のファイルのバイナリデータが付加される。例えば、プラグインの実行形式プログラムは、プラグイン管理テーブル１４００によって管理されている。図１４は、プラグイン管理テーブル１４００のデータ構造例を示す説明図である。プラグイン管理テーブル１４００は、プラグイン欄１４１０、Ｐｒｏｄｕｃｔ  Ｃｏｄｅ欄１４２０、プラグイン本体欄１４３０を有している。プラグイン欄１４１０は、プラグインＩＤを記憶している。Ｐｒｏｄｕｃｔ  Ｃｏｄｅ欄１４２０は、機種コードを記憶している。プラグイン本体欄１４３０は、プラグイン本体（又は、プラグインの実行形式プログラムが格納されているＵＲＬ等であってもよい）を記憶している。
このファイルは、画像処理装置１００上で拡張機能プラグインを動作させるための実行モジュールや画像などのリソースをまとめた圧縮ファイルである。
テキストとバイナリの混在するデータ操作であるが、このデータの生成は画像処理装置１００のＪａｖａＳｃｒｉｐｔ上ではなく、外部管理装置１５０（又は外部管理装置１５０によって処理依頼される外部装置）上で行われるため、ＪａｖａＳｃｒｉｐｔの制約なくデータを生成することができる。
【００６５】
ステップＳ４２０では、プラグイン管理モジュール１６５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを返信する。例えば、前述のＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００を送信する。
ステップＳ４２２では、Ｗｅｂブラウザモジュール１２５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを受信する。
ステップＳ４２４では、Ｗｅｂブラウザモジュール１２５は、インストール処理モジュール１１５に、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを渡す。例えば、Ｗｅｂブラウザ上で動作するＪａｖａＳｃｒｉｐｔは、外部管理装置１５０から返された前述のＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００をそのまま、インストール処理モジュール１１５に渡す。本来、ＪａｖａＳｃｒｉｐｔでテキストとバイナリの混在するデータを扱うのは困難であるが、ここでは外部管理装置１５０から受信したデータ（ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００）を、加工せずにそのままインストール処理モジュール１１５に渡しているだけなので、ＪａｖａＳｃｒｉｐｔでも（制約による妨げなく）処理することができる。
ステップＳ４２６では、インストール処理モジュール１１５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓデータを処理する。
ステップＳ４２８では、インストール処理モジュール１１５は、プラグインをインストールする。ステップＳ４２６、ステップＳ４２８によって、インストール処理モジュール１１５は、ＳＯＡＰ  ｗｉｔｈ  Ａｔｔａｃｈｍｅｎｔｓリクエストデータ１３００による要求を処理し、画像処理装置１００に拡張機能プラグインをインストールすることになる。そして、プラグイン管理モジュール１１０は、インストールされたプラグインに関する情報を管理する。
【００６６】
ステップＳ４３０では、ユーザーインタフェースモジュール１２０は、インストール完了を提示する。例えば、プラグインのインストールが正しく行われた後、ＪａｖａＳｃｒｉｐｔプログラムは、Ｗｅｂブラウザ上に処理が完了した旨を表示する。具体的には、Ｗｅｂブラウザモジュール１２５は、ユーザーインタフェースモジュール１２０を制御して、画面６００にインストール完了提示領域１５１０を提示する。図１５は、インストール完了提示領域１５１０の表示例を示す説明図である。画面６００には、インストール完了提示領域１５１０を表示し、インストール完了提示領域１５１０には、閉じるボタン１５２０を表示する。インストール完了提示領域１５１０には、例えば、「Ｄｅｖｉｃｅ  Ｌｏｇ  Ｓｅｒｖｉｃｅの登録が完了しました。登録後数十分で最初のデータが通知されます。」のように表示する。閉じるボタン１５２０が選択された場合は、インストール完了提示領域１５１０を閉じて、図６（ａ）の例に示す操作提示領域６１０を提示する。
【００６７】
図１８を参照して、本実施の形態の画像処理装置１００、外部管理装置１５０のハードウェア構成例について説明する。図１８に示す構成は、例えばパーソナルコンピュータ（ＰＣ）等によって構成されるものであり、スキャナ等のデータ読み取り部１８１７と、プリンタ等のデータ出力部１８１８を備えたハードウェア構成例を示している。
【００６８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１８０１は、前述の実施の形態において説明した各種のモジュール、すなわち、通信管理モジュール１０５、プラグイン管理モジュール１１０、インストール処理モジュール１１５、ユーザーインタフェースモジュール１２０、Ｗｅｂブラウザモジュール１２５、通信管理モジュール１５５、画像処理装置管理モジュール１６０、プラグイン管理モジュール１６５等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００６９】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１８０２は、ＣＰＵ１８０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１８０３は、ＣＰＵ１８０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバス等から構成されるホストバス１８０４により相互に接続されている。
【００７０】
ホストバス１８０４は、ブリッジ１８０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バス等の外部バス１８０６に接続されている。
【００７１】
キーボード１８０８、マウス等のポインティングデバイス１８０９は、操作者により操作されるデバイスである。ディスプレイ１８１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等があり、各種情報をテキストやイメージ情報として表示する。また、ポインティングデバイス１８０９とディスプレイ１８１０の両方の機能を備えているタッチスクリーン等であってもよい。
【００７２】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１８１１は、ハードディスク（フラッシュ・メモリ等であってもよい）を内蔵し、ハードディスクを駆動し、ＣＰＵ１８０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、プラグインに関する情報、プラグイン、実行アプリケーション情報等が格納される。さらに、その他の各種データ、各種コンピュータ・プログラム等が格納される。
【００７３】
ドライブ１８１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１８１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１８０７、外部バス１８０６、ブリッジ１８０５、及びホストバス１８０４を介して接続されているＲＡＭ１８０３に供給する。なお、リムーバブル記録媒体１８１３も、データ記録領域として利用可能である。
【００７４】
接続ポート１８１４は、外部接続機器１８１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１８１４は、インタフェース１８０７、及び外部バス１８０６、ブリッジ１８０５、ホストバス１８０４等を介してＣＰＵ１８０１等に接続されている。通信部１８１６は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部１８１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１８１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００７５】
なお、図１８に示す画像処理装置１００、外部管理装置１５０のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１８に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続している形態でもよく、さらに図１８に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器（携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む）、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機などに組み込まれていてもよい。
【００７６】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラムの全体又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分若しくは全部であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００７７】
１００…画像処理装置
１０５…通信管理モジュール
１１０…プラグイン管理モジュール
１１５…インストール処理モジュール
１２０…ユーザーインタフェースモジュール
１２５…Ｗｅｂブラウザモジュール
１３０…ユーザー
１４０、１４５…ファイアーウォール装置
１５０…外部管理装置
１５５…通信管理モジュール
１６０…画像処理装置管理モジュール
１６５…プラグイン管理モジュール
１９０、１９２、１９４…通信回線
１６００…画像処理装置
１６５０…外部管理装置
１６７０…管理者用装置
【図１】
2018056645.tif 000003
【図２】
2018056645.tif 000004
【図３】
2018056645.tif 000005
【図４】
2018056645.tif 000006
【図５】
2018056645.tif 000007
【図６】
2018056645.tif 000008
【図７】
2018056645.tif 000009
【図８】
2018056645.tif 000010
【図９】
2018056645.tif 000011
【図１０】
2018056645.tif 000012
【図１１】
2018056645.tif 000013
【図１２】
2018056645.tif 000014
【図１３】
2018056645.tif 000015
【図１４】
2018056645.tif 000016
【図１５】
2018056645.tif 000017
【図１６】
2018056645.tif 000018
【図１７】
2018056645.tif 000019
【図１８】
2018056645.tif 000020