(57)【特許請求の範囲】
【請求項１】
通信部と、
表示部と、
操作部と、
記憶部と、
画像データに対する動作を実行する動作部と、
制御部とを備える画像処理装置であって、
前記制御部は、
データ識別情報を取得する取得処理と、
前記取得処理で取得した前記データ識別情報で識別される定義データを、前記通信部を通じてサーバから受信する第１受信処理と、
前記第１受信処理で受信した前記定義データが画面定義データであることに応じて、当該画面定義データに定義された定義画面を前記表示部に表示させる表示処理と、
前記表示処理で表示した前記定義画面が複数のパラメータを含む場合に、複数の前記パラメータの少なくとも１つを指定する指定操作を、前記操作部を通じて受け付ける受付処理とを少なくとも１回ずつ実行し、
前記受付処理で前記指定操作を受け付けたことに応じて、前記取得処理において、前記画面定義データに定義された前記データ識別情報をさらに取得し、
前記第１受信処理で受信した前記定義データが動作定義データであることに応じて、当該動作定義データに定義された前記動作を、前記受付処理で指定された前記パラメータに従って前記動作部に実行させる実行指示処理を実行し、
前記データ識別情報は、第１サーバに記憶された第１定義データを識別する第１識別情報、或いは第２サーバに記憶された第２定義データを識別する第２識別情報であり、
前記記憶部は、複数の前記第１識別情報のうちの１つである特定識別情報と、前記第２識別情報とを対応付けて記憶しており、
前記制御部は、
前記取得処理で取得した前記データ識別情報が前記第１識別情報であることに応じて、当該第１識別情報が前記特定識別情報に一致するか否かを判断する第１判断処理を、前記第１受信処理に先立って実行し、
前記第１識別情報が前記特定識別情報と一致しないと前記第１判断処理で判断したことに応じて、当該第１識別情報で識別される前記第１定義データを、前記第１受信処理で前記第１サーバから受信し、
前記第１識別情報が前記特定識別情報と一致すると前記第１判断処理で判断したことに応じて、当該特定識別情報に対応付けられた前記第２識別情報で識別される前記第２定義データを、前記第１受信処理で前記第２サーバから受信する画像処理装置。
【請求項２】
前記制御部は、前記第１受信処理で前記第２定義データを受信し且つ前記表示処理及び前記受付処理を実行したことに応じて、
当該第２定義データに定義された前記データ識別情報を前記取得処理で取得し、
前記取得処理で取得した前記データ識別情報が前記第１識別情報であることに応じて、当該第１識別情報で識別される前記第１定義データを前記第１受信処理で前記第１サーバから受信し、
前記取得処理で取得した前記データ識別情報が前記第２識別情報であることに応じて、当該第２識別情報で識別される前記第２定義データを前記第１受信処理で前記第２サーバから受信する請求項１に記載の画像処理装置。
【請求項３】
前記記憶部は、前記特定識別情報及び前記第２識別情報と対応付けて、種別情報をさらに記憶しており、
前記種別情報には、対応する前記特定識別情報で識別される前記第１定義データの前に前記第２定義データを使用する指示に対応する第１値、或いは対応する前記特定識別情報で識別される前記第１定義データに代えて前記第２定義データを使用する指示に対応する第２値が設定されており、
前記制御部は、
前記第１識別情報が前記特定識別情報と一致すると前記第１判断処理で判断したことに応じて、当該第１識別情報を前記記憶部に記憶させる第１記憶処理を実行し、
前記第１受信処理で前記第２定義データを受信し且つ前記表示処理及び前記受付処理を実行したことに応じて、
前記種別情報に設定されている値を判断する第２判断処理を実行し、
前記第１値が設定されていると前記第２判断処理で判断したことに応じて、前記第１記憶処理で記憶させた前記第１識別情報を前記取得処理で取得し、
前記第２値が設定されていると前記第２判断処理で判断したことに応じて、前記第１記憶処理で記憶させた前記第１識別情報で識別される前記第１定義データに定義された前記第１識別情報を前記取得処理で取得し、
前記取得処理で取得した前記第１識別情報で識別される前記第１定義データを、前記第１受信処理で前記第１サーバから受信する請求項１に記載の画像処理装置。
【請求項４】
前記制御部は、
前記第１受信処理で受信した前記定義データを前記記憶部に記憶させる第２記憶処理を実行し、
前記取得処理で取得した前記データ識別情報で識別され且つ前記サーバに記憶された前記定義データが、同一の前記データ識別情報で識別される前記定義データが前記第２記憶処理で記憶された後に更新されたか否かを判断する第３判断処理を、前記第１受信処理に先立って実行し、
更新されたと前記第３判断処理で判断したことに応じて、当該定義データを前記第１受信処理で前記サーバから受信し、
更新されていないと前記第３判断処理で判断したことに応じて、当該定義データを前記記憶部から読み出す読出処理を、前記第１受信処理に代えて実行する請求項１から３のいずれかに記載の画像処理装置。
【請求項５】
前記制御部は、
前記特定識別情報及び前記第２識別情報を、前記通信部を通じて外部装置から受信する第２受信処理と、
前記第２受信処理で受信した前記特定識別情報及び前記第２識別情報を、互いに対応付けて前記記憶部に記憶させる第３記憶処理とを実行する請求項１から４のいずれかに記載の画像処理装置。
【請求項６】
前記記憶部は、前記特定識別情報及び前記第２識別情報と対応付けて、状態情報をさらに記憶しており、前記状態情報は、該画像処理装置の特定状態を示す情報であり、
前記制御部は、
前記第１判断処理において、該画像処理装置の状態が前記状態情報で示される前記特定状態か否かをさらに判断し、
前記第１識別情報が前記特定識別情報と一致しない、或いは該画像処理装置が前記特定状態でないと前記第１判断処理で判断したことに応じて、前記第１受信処理で前記第１定義データを前記第１サーバから受信し、
前記第１識別情報が前記特定識別情報と一致し、且つ該画像処理装置が前記特定状態であると前記第１判断処理で判断したことに応じて、前記第１受信処理で前記第２定義データを前記第２サーバから受信する請求項１から５のいずれかに記載の画像処理装置。
【請求項７】
前記特定状態とは、前記動作部の前記動作に使用される消耗品の残量が閾値未満の状態、該画像処理装置が前記第１サーバと通信不能な状態、及び該画像処理装置が予め登録された登録ユーザと異なるユーザによって使用されている状態の少なくともいずれかである請求項６に記載の画像処理装置。
【請求項８】
前記制御部は、
前記取得処理で取得した前記データ識別情報で識別される前記定義データの送信を要求する送信要求情報を、前記通信部を通じて前記サーバに送信する送信処理を実行し、前記送信要求情報は、前記受付処理で指定された前記パラメータを含み、
前記制御部は、
前記第１受信処理において、前記送信要求情報の応答として前記定義データを受信し、
前記実行指示処理において、前記動作定義データに定義された前記動作を、前記動作定義データに含まれる前記パラメータに従って、前記動作部に実行させる請求項１から７のいずれかに記載の画像処理装置。
【請求項９】
前記制御部は、
前記第２定義データに定義されたスクリプトを解析する解析処理を実行し、
前記表示処理において、前記解析処理での解析結果に応じた前記定義画面を前記表示部に表示させる請求項１から８のいずれかに記載の画像処理装置。
【請求項１０】
前記制御部は、
サーバ識別情報及び前記データ識別情報を前記取得処理で取得した場合の前記第１受信処理において、前記サーバ識別情報で識別される前記サーバから、前記データ識別情報で識別される前記定義データを受信し、
前記データ識別情報のみを前記取得処理で取得した場合の前記第１受信処理において、直前の前記取得処理で取得した前記サーバ識別情報で識別される前記サーバから、当該データ識別情報で示される前記定義データを受信する請求項１から９のいずれかに記載の画像処理装置。
【請求項１１】
前記定義データは、ＸＭＬで記述されている請求項１から１０のいずれかに記載の画像処理装置。
【請求項１２】
通信部と、表示部と、操作部と、記憶部と、画像データに対する動作を実行する動作部とを備える画像処理装置によって実行可能なプログラムであって、
該プログラムは、
データ識別情報を取得する取得処理と、
前記取得処理で取得した前記データ識別情報で識別される定義データを、前記通信部を通じてサーバから受信する第１受信処理と、
前記第１受信処理で受信した前記定義データが画面定義データであることに応じて、当該画面定義データに定義された定義画面を前記表示部に表示させる表示処理と、
前記表示処理で表示した前記定義画面が複数のパラメータを含む場合に、複数の前記パラメータの少なくとも１つを指定する指定操作を、前記操作部を通じて受け付ける受付処理とを少なくとも１回ずつ前記画像処理装置に実行させ、
前記受付処理で前記指定操作を受け付けたことに応じて、前記取得処理において、前記画面定義データに定義された前記データ識別情報をさらに取得し、
前記第１受信処理で受信した前記定義データが動作定義データであることに応じて、当該動作定義データに定義された前記動作を、前記受付処理で指定された前記パラメータに従って前記動作部に実行させる実行指示処理を前記画像処理装置に実行させ、
前記データ識別情報は、第１サーバに記憶された第１定義データを識別する第１識別情報、或いは第２サーバに記憶された第２定義データを識別する第２識別情報であり、
前記記憶部は、複数の前記第１識別情報のうちの１つである特定識別情報と、前記第２識別情報とを対応付けて記憶しており、
該プログラムは、
前記取得処理で取得した前記データ識別情報が前記第１識別情報であることに応じて、当該第１識別情報が前記特定識別情報に一致するか否かを判断する第１判断処理を、前記第１受信処理に先立って前記画像処理装置に実行させ、
前記第１識別情報が前記特定識別情報と一致しないと前記第１判断処理で判断したことに応じて、当該第１識別情報で識別される前記第１定義データを、前記第１受信処理で前記第１サーバから受信し、
前記第１識別情報が前記特定識別情報と一致すると前記第１判断処理で判断したことに応じて、当該特定識別情報に対応付けられた前記第２識別情報で識別される前記第２定義データを、前記第１受信処理で前記第２サーバから受信するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバの指示に従って複数の動作を順番に実行することによって、当該サーバからサービスの提供を受ける画像処理装置に関する。
【背景技術】
【０００２】
例えば特許文献１に記載のサーバは、定義データを画像処理装置に送信し、当該定義データに定義された動作の実行結果を画像処理装置から受信し、受信した実行結果に応じて次の定義データを画像処理装置に送信することによって、例えば、スキャンアップロード或いはダウンロードプリント等のサービスを、画像処理装置に提供する。上記の方法によれば、画像処理装置にインストールされたプログラムを更新しなくても、画像処理装置に新たなサービスを提供することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１１３７００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しなしながら、インターネット上に設置されたサーバは、不特定多数の画像処理装置からアクセスされるので、全ての画像処理装置に同一の定義データを送信することしかできない。すなわち、特許文献１に記載のシステムでは、画像処理装置毎にカスタマイズされたサービスを提供できないという課題がある。
【０００５】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、サーバから受信した定義データに従って動作を実行することによって受けられるサービスをカスタマイズ可能な画像処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
本明細書に記載の画像処理装置は、通信部と、表示部と、操作部と、記憶部と、画像データに対する動作を実行する動作部と、制御部とを備える。前記制御部は、データ識別情報を取得する取得処理と、前記取得処理で取得した前記データ識別情報で識別される定義データを、前記通信部を通じてサーバから受信する第１受信処理と、前記第１受信処理で受信した前記定義データが画面定義データであることに応じて、当該画面定義データに定義された定義画面を前記表示部に表示させる表示処理と、前記表示処理で表示した前記定義画面が複数のパラメータを含む場合に、複数の前記パラメータの少なくとも１つを指定する指定操作を、前記操作部を通じて受け付ける受付処理とを少なくとも１回ずつ実行する。また、前記制御部は、前記受付処理で前記指定操作を受け付けたことに応じて、前記取得処理において、前記画面定義データに定義された前記データ識別情報をさらに取得し、前記第１受信処理で受信した前記定義データが動作定義データであることに応じて、当該動作定義データに定義された前記動作を、前記受付処理で指定された前記パラメータに従って前記動作部に実行させる実行指示処理を実行する。前記データ識別情報は、第１サーバに記憶された第１定義データを識別する第１識別情報、或いは第２サーバに記憶された第２定義データを識別する第２識別情報である。前記記憶部は、複数の前記第１識別情報のうちの１つである特定識別情報と、前記第２識別情報とを対応付けて記憶している。前記制御部は、前記取得処理で取得した前記データ識別情報が前記第１識別情報であることに応じて、当該第１識別情報が前記特定識別情報に一致するか否かを判断する第１判断処理を、前記第１受信処理に先立って実行し、前記第１識別情報が前記特定識別情報と一致しないと前記第１判断処理で判断したことに応じて、当該第１識別情報で識別される前記第１定義データを、前記第１受信処理で前記第１サーバから受信し、前記第１識別情報が前記特定識別情報と一致すると前記第１判断処理で判断したことに応じて、当該特定識別情報に対応付けられた前記第２識別情報で識別される前記第２定義データを、前記第１受信処理で前記第２サーバから受信する。
【０００７】
上記構成によれば、特定識別情報と異なる第１識別情報を取得したことに応じて、当該第１識別情報で識別される第１定義データを第１サーバから受信し、特定識別情報と同一の第１識別情報を取得したことに応じて、当該特定識別情報に対応付けられた第２識別情報で識別される第２定義データを第２サーバから受信する。このように、順番に取得する複数の第１識別情報のうち、処理をカスタマイズしたい定義データに対応する第１識別情報を予め記憶部に登録しておくことにより、画像処理装置毎にカスタマイズした第２定義データを受信することができる。
【０００８】
本明細書に記載のプログラムは、通信部と、表示部と、操作部と、記憶部と、画像データに対する動作を実行する動作部とを備える画像処理装置によって実行可能である。該プログラムは、データ識別情報を取得する取得処理と、前記取得処理で取得した前記データ識別情報で識別される定義データを、前記通信部を通じてサーバから受信する第１受信処理と、前記第１受信処理で受信した前記定義データが画面定義データであることに応じて、当該画面定義データに定義された定義画面を前記表示部に表示させる表示処理と、前記表示処理で表示した前記定義画面が複数のパラメータを含む場合に、複数の前記パラメータの少なくとも１つを指定する指定操作を、前記操作部を通じて受け付ける受付処理とを少なくとも１回ずつ前記画像処理装置に実行させる。該プログラムは、前記受付処理で前記指定操作を受け付けたことに応じて、前記取得処理において、前記画面定義データに定義された前記データ識別情報をさらに取得し、前記第１受信処理で受信した前記定義データが動作定義データであることに応じて、当該動作定義データに定義された前記動作を、前記受付処理で指定された前記パラメータに従って前記動作部に実行させる実行指示処理を前記画像処理装置に実行させる。前記データ識別情報は、第１サーバに記憶された第１定義データを識別する第１識別情報、或いは第２サーバに記憶された第２定義データを識別する第２識別情報である。前記記憶部は、複数の前記第１識別情報のうちの１つである特定識別情報と、前記第２識別情報とを対応付けて記憶している。該プログラムは、前記取得処理で取得した前記データ識別情報が前記第１識別情報であることに応じて、当該第１識別情報が前記特定識別情報に一致するか否かを判断する第１判断処理を、前記第１受信処理に先立って前記画像処理装置に実行させ、前記第１識別情報が前記特定識別情報と一致しないと前記第１判断処理で判断したことに応じて、当該第１識別情報で識別される前記第１定義データを、前記第１受信処理で前記第１サーバから受信し、前記第１識別情報が前記特定識別情報と一致すると前記第１判断処理で判断したことに応じて、当該特定識別情報に対応付けられた前記第２識別情報で識別される前記第２定義データを、前記第１受信処理で前記第２サーバから受信する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係るシステム１００の概要を示す図である。
【図２】図２は、メモリ３２に記憶される条件リストの例を示す。
【図３】図３は、スキャンアップロードを実現するＸＭＬファイルの一例であって、（Ａ）〜（Ｃ）は標準ＸＭＬを、（Ｄ）〜（Ｅ）はカスタムＸＭＬを示す。
【図４】図４は、ダウンロードプリントを実現するＸＭＬファイルの一例であって、（Ａ）〜（Ｃ）は標準ＸＭＬを、（Ｄ）〜（Ｅ）はカスタムＸＭＬを示す。
【図５】図５は、メイン処理のフローチャートである。
【図６】図６は、カスタム処理Ａのフローチャートである。
【図７】図７は、カスタム処理Ｂのフローチャートである。
【図８】図８は、表示部２３の表示例であって、（Ａ）はサービス選択画面を、（Ｂ）はセキュリティ報知画面を示す。
【図９】図９は、表示部２３の表示例であって、（Ａ）はサーバ選択画面を、（Ｂ）はカスタムＸＭＬに定義された形式選択画面を示す。
【図１０】図１０は、表示部２３の表示例であって、（Ａ）は標準ＸＭＬに定義された形式選択画面を、（Ｂ）はトナー交換報知画面を示す。
【図１１】図１１は、表示部２３の表示例であって、（Ａ）はカスタムＸＭＬに定義されたデータ選択画面を、（Ｂ）は標準ＸＭＬに定義されたデータ選択画面を示す。
【発明を実施するための形態】
【００１０】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【００１１】
図１は、本実施形態に係るシステム１００の概略図である。図１に示されるシステム１００は、複合機１０と、サーバ５０、６０とで構成されている。また、システム１００は、複合機１０に代えて、プリンタ単能機或いはスキャナ単能機等を含んでもよい。複合機１０及びサーバ５０、６０は、通信ネットワークを通じて通信可能に構成されている。通信ネットワークは、例えば、インターネット１０１、有線ＬＡＮ、無線ＬＡＮ１０２、或いはこれらの組み合わせであってもよい。
【００１２】
複合機１０及びサーバ６０は、無線ＬＡＮ１０２に属している。すなわち、複合機１０及びサーバ６０は、無線ＬＡＮ１０２の不図示のアクセスポイントを経由して、相互に通信することができる。また、無線ＬＡＮ１０２は、ルータ１０２Ａを通じてインターネット１０１に接続されている。さらに、サーバ５０は、インターネット１０１に接続されている。すなわち、複合機１０は、ルータ１０２Ａからインターネット１０１を経由して、サーバ５０と通信することができる。但し、サーバ５０、６０の両方がインターネット１０１或いは無線ＬＡＮ１０２に接続されていてもよい。
【００１３】
システム１００において、複合機１０は、サーバ５０、６０から順番に受信した複数の定義データそれぞれに定義された処理を実行することによって、サーバ５０、６０からサービスの提供を受ける。サーバ５０、６０が提供するサービスとは、例えば、スキャナ１２に生成させた画像データを不図示のストレージサーバにアップロードするスキャンアップロードサービス、不図示のストレージサーバからダウンロードした画像データに対するプリント動作をプリンタ１１に実行させるダウンロードプリントサービス等がある。なお、本実施形態に係る画像データとは、ＪＰＥＧ形式、ＴＩＦＦ形式、或いはビットマップ形式等に限定されず、ＰＤＦ形式、テキスト形式等であってもよい。
【００１４】
［複合機１０］
複合機１０は、図１に示されるように、プリンタ１１と、スキャナ１２と、表示部２３と、操作部２４と、通信部２５と、ＣＰＵ３１と、メモリ３２と、通信バス３３とを主に備える。複合機１０を構成する各構成要素は、通信バス３３を通じて相互に接続されている。複合機１０は、画像処理装置の一例である。
【００１５】
プリンタ１１は、画像データで示される画像をシートに記録するプリント動作を実行する。プリンタ１１の記録方式としては、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ１２は、原稿に記録されている画像を読み取って画像データを生成するスキャン動作を実行する。また、プリンタ１１は、外部装置に画像データをＦＡＸ送信するＦＡＸ送信動作、及び外部装置から画像データをＦＡＸ受信するＦＡＸ受信動作を実行するＦＡＸ部等を備えていてもよい。プリント動作、スキャン動作、ＦＡＸ送信動作、及びＦＡＸ受信動作は画像データに対する動作の一例であり、プリンタ１１、スキャナ１２、及びＦＡＸ部は動作部の一例である。
【００１６】
表示部２３は、液晶ディスプレイ、有機ＥＬディスプレイ等であり、各種情報を表示する表示面を備える。
【００１７】
操作部２４は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、操作部２４はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をＣＰＵ３１へ出力する。さらに、操作部２４は、表示部２３の表示面に重畳された膜状のタッチセンサを有していてもよい。表示部２３の表示面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、表示部２３に表示された文字列、アイコン、ボタン、リンク、ラジオボタン、チェックボックス、プルダウンメニュー等である。
【００１８】
タッチセンサとして実現される操作部２４は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示面に接触させる操作全般を含む。また、入力媒体が表示面に触れていなくても、表示面との間の距離がごく僅かな位置まで入力媒体を近接させる「ホバー」或いは「フローティングタッチ」を、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。表示部２３に表示されたアイコンの位置のタップするユーザ操作は、当該アイコンを指定する指定操作の一例である。
【００１９】
通信部２５は、通信ネットワークを通じて外部装置と通信を行うためのインタフェースである。すなわち、複合機１０は、通信部２５を通じてサーバ５０、６０に各種情報を送信し、通信部２５を通じてサーバ５０、６０から各種データ又は各種情報を受信する。通信部２５の具体的な通信手順は特に限定されないが、例えば、Ｗｉ−Ｆｉ（Wi-Fi Allianceの登録商標）を採用することができる。
【００２０】
ＣＰＵ３１は、複合機１０の全体動作を制御するものである。ＣＰＵ３１は、操作部２４から出力される各種信号、及び通信部２５を通じて外部装置から取得した各種情報等に基づいて、後述する各種プログラムをメモリ３２から取得して実行する。すなわち、ＣＰＵ３１及びメモリ３２は、制御部の一例を構成する。
【００２１】
メモリ３２には、ＯＳ３４と、装置プログラム３５とが記憶される。なお、装置プログラム３５は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。また、メモリ３２には、装置プログラム３５の実行に必要なデータ或いは情報が記憶される。メモリ３２は、例えば、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＨＤＤ、複合機１０に着脱されるＵＳＢメモリ等の可搬記憶媒体、ＣＰＵ３１が備えるバッファ等、或いはそれらの組み合わせによって構成される。
【００２２】
メモリ３２は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット１０１上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。
【００２３】
メモリ３２は、例えば図２に示されるように、条件リストを記憶することができる。条件リストは、１以上の条件レコードを含む。条件レコードは、互いに対応付けられた特定識別情報、状態情報、種別情報、カスタムＵＲＬの一部又は全部を含む。状態情報及び種別情報の一方又は両方は、省略可能である。条件レコードは、特定識別情報及び状態情報で示される条件に合致する場合に、対応するカスタムＵＲＬで示されるカスタムＸＭＬを取得し、取得したカスタムＸＭＬに定義された処理を実行することを示す。特定識別情報、状態情報、種別情報、及びカスタムＵＲＬの詳細は、後述する。
【００２４】
複合機１０の出荷時において、メモリ３２には条件レコードが記憶されていなくてもよい。装置プログラム３５は、例えば、条件レコードに含める情報の入力を促す画面を定義するＨＴＭＬファイルを、通信部２５を通じて外部装置（例えば、ＰＣ）に送信する。次に、装置プログラム３５は、通信部２５を通じて外部装置から条件レコードを受信する。この処理は、第２受信処理の一例である。そして、装置プログラム３５は、受信した条件レコードを条件リストに登録する。この処理は、第３記憶処理の一例である。
【００２５】
また図示は省略するが、メモリ３２は、後述するカスタムＸＭＬと、日時情報とを対応付けて記憶することができる。日時情報は、対応するカスタムＸＭＬの更新日時を示す情報である。装置プログラム３５は、例えば後述するＳ２４において、サーバ６０から受信したカスタムＸＭＬ及び日時情報を、メモリ３２に記憶させる。
【００２６】
［サーバ５０、６０］
サーバ５０、６０は、ＸＭＬファイルを記憶している。そして、サーバ５０、６０は、複合機１０からＸＭＬファイルの送信を要求されたことに応じて、要求されたＸＭＬファイルを複合機１０に送信する。サーバ５０、６０は、例えば、ＨＴＴＰによってＸＭＬファイルを送信する所謂Ｗｅｂサーバであってもよい。本実施形態において、サーバ５０はサーバ識別情報“www.server-std.com”で識別され、サーバ６０はサーバ識別情報“www.server-ctm.com”で識別される。
【００２７】
ＸＭＬファイルは、複合機１０に実行させる処理を定義する定義データの一例である。すなわち、ＸＭＬファイルには、複合機１０に実行させる処理がＸＭＬで記述されている。ＸＭＬファイルは、画面定義データの一例である画面定義ＸＭＬと、動作定義データの一例である動作定義ＸＭＬとに大別される。画面定義ＸＭＬは、複合機１０の表示部２３に表示させる画面を定義する。動作定義ＸＭＬは、複合機１０の動作部に実行させる動作を定義する。ＸＭＬファイルは、“scan-upload1.xml”、“download-print3.xml”等のデータ識別情報で識別される。
【００２８】
サーバ５０は、例えば、複合機１０の製造メーカによって設置された第１サーバの一例である。サーバ５０は、例えば、図３（Ａ）〜（Ｃ）に示される標準ＸＭＬ、或いは図４（Ａ）〜（Ｃ）に示される標準ＸＭＬを記憶している。サーバ５０に記憶されている標準ＸＭＬは、第１定義データの一例である。標準ＸＭＬを識別するデータ識別情報は、第１識別情報の一例である。サーバ５０は、製造メーカが製造した全ての複合機１０に対して、一律なサービスを提供する。
【００２９】
サーバ６０は、例えば、複合機１０を使用する組織（例えば、会社、学校等）によって設置された第２サーバの一例である。サーバ５０は、例えば、図３（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬ、或いは図４（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬを記憶している。サーバ６０に記憶されているカスタムＸＭＬは、第２定義データの一例である。カスタムＸＭＬを識別するデータ識別情報は、第２識別情報の一例である。サーバ６０は、設置した組織が使用する複合機１０に対して、カスタマイズしたサービスを提供する。
【００３０】
図５〜図７を参照して、本実施形態に係るシステム１００の動作を説明する。
【００３１】
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったＣＰＵ３１の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「制御」等の処理は、ＣＰＵ３１の処理を表している。ＣＰＵ３１による処理は、ＯＳ３４を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
【００３２】
まず、装置プログラム３５は、図８（Ａ）に示されるサービス選択画面を表示部２３に表示させる。サービス選択画面は、複合機１０を通じて利用するサービスの選択を促す画面である。サービス選択画面は、スキャンアップロードに対応するサービスアイコン１１１と、ダウンロードプリントに対応するサービスアイコン１１２とを含む。そして、装置プログラム３５は、サービス選択画面に対するユーザ操作を、操作部２４を通じて受け付ける。
【００３３】
また、メモリ３２には、サービスアイコン１１１に対応付けられた次動作ＵＲＬ“www.server-std.com/scan-upload1.xml”と、サービスアイコン１１２に対応付けられた次動作ＵＲＬ“www.server-std.com/download-print1.xml”とが記憶されている。次動作ＵＲＬは、次に実行すべき処理を定義するＸＭＬファイルを示す情報である。次動作ＵＲＬは、サーバ識別情報と、データ識別情報とを含む。次動作ＵＲＬは、サーバ５０のサーバ識別情報及び標準ＸＭＬのデータ識別情報を含む標準ＵＲＬ、或いはサーバ６０のサーバ識別情報及びカスタムＸＭＬのデータ識別情報を含むカスタムＵＲＬのいずれかである。
【００３４】
［スキャンアップロード］
装置プログラム３５は、例えば、サービスアイコン１１１の指定を操作部２４を通じて受け付けたことに応じて、スキャンアップロードサービスの提供を受ける。図５及び図６を参照して、複合機１０にスキャンアップロードを実行させる処理を説明する。なお、複合機１０のメモリ３２には図２（Ａ）に示される条件リストが登録されており、サーバ５０には図３（Ａ）〜（Ｃ）に示される標準ＸＭＬが記憶されており、サーバ６０には図３（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬが記憶されているものとする。
【００３５】
図２（Ａ）に示される条件リストにおいて、特定識別情報は、サーバ５０に記憶されている複数の標準ＸＭＬのうちの１つを識別する第１識別情報である。状態情報は、複合機１０の特定状態を示す情報である。本実施形態に係る特定状態は、ログインＩＤ“Ｇｕｅｓｔ”でログインされた状態を指す。
【００３６】
本実施形態に係る複合機１０は、ログイン状態と、非ログイン状態とに状態変化が可能である。ログイン状態とは、有効なログインＩＤ及びパスワードの組み合わせが操作部２４を通じて入力された状態を指す。ログイン状態の複合機１０は、入力されたログインＩＤに対応付けて許可された動作のみを実行可能で、それ以外の動作を実行不能な状態である。非ログイン状態とは、有効なログインＩＤ及びパスワードの組み合わせが入力されていない状態である。非ログイン状態の複合機１０は、全てのユーザに許可された基本的な動作のみを実行可能な状態である。
【００３７】
そして、ログインＩＤ “Ｇｕｅｓｔ”は、例えば、複合機１０に登録されたログインＩＤのうち、対応付けて許可された動作が最も少ないログインＩＤである。ログインＩＤ“Ｇｕｅｓｔ”は、例えば、不特定多数のユーザに発行されるログインＩＤである。複合機１０には、ログインＩＤ“Ｇｕｅｓｔ”と異なるログインＩＤ（以下、「登録ユーザのログインＩＤ」と表記する。）も登録されている。
【００３８】
装置プログラム３５は、例えば、ＯＳ３４によって提供されたＡＰＩを実行することによって、ログイン状態の複合機１０に入力されたログインＩＤを取得することができる。ログインＩＤ“Ｇｕｅｓｔ”でログインされた状態は、予め登録された登録ユーザと異なるユーザによって、複合機１０が使用されている特定状態の一例である。または、ログインＩＤ“Ｇｕｅｓｔ”でログインされた状態とは、前述の非ログイン状態のことを指してもよい。
【００３９】
まず、装置プログラム３５は、サービスアイコン１１１に対応付けてメモリに記憶された次動作ＵＲＬ“www.server-std.com/scan-upload1.xml”を、メモリ３２から読み出す。この処理は、取得処理の一例である。次に、装置プログラム３５は、条件リストに登録された条件レコードで示される条件に合致するか否かを判断する（Ｓ１１）。Ｓ１１の処理は、第１判断処理の一例である。
【００４０】
より詳細には、装置プログラム３５は、条件リストに登録された条件レコードそれぞれについて、以下の処理を実行する。まず、装置プログラム３５は、条件レコードの１つをメモリ３２から読み出す。次に、装置プログラム３５は、取得した次動作ＵＲＬに含まれるデータ識別情報と、読み出した条件レコードに含まれる特定識別情報とが一致するか否かを判断する。そして、装置プログラム３５は、データ識別情報と特定識別情報とが一致する場合に、読み出した条件レコードで示される条件に合致すると判断する。一方、装置プログラム３５は、データ識別情報と特定識別情報とが不一致の場合に、読み出した条件レコードで示される条件に合致しないと判断する。
【００４１】
また、読み出した条件レコードに状態情報が含まれている場合に、装置プログラム３５は、複合機１０の現在の状態と、読み出した条件レコードに含まれる状態情報で示される特定状態とが一致するか否かをさらに判断する。そして、装置プログラム３５は、データ識別情報と特定識別情報とが一致し、且つ複合機１０の現在の状態が特定状態である場合に、読み出した条件レコードで示される条件に合致すると判断する。一方、装置プログラム３５は、複合機１０の現在の状態が特定状態でない場合に、読み出した条件レコードで示される条件に合致しないと判断する。
【００４２】
本実施形態では、データ識別情報“scan-upload1.xml”と、図２（Ａ）の１行目の条件レコードの特定識別情報とが一致する。すなわち、装置プログラム３５は、複合機１０がログインＩＤ“Ｇｕｅｓｔ”でログインされた状態であることに応じて、当該条件レコードで示される条件に合致すると判断する。一方、装置プログラム３５は、複合機１０がログインＩＤ“Ｇｕｅｓｔ”でログインされていない状態であることに応じて、全ての条件レコードで示される条件に合致しないと判断する。
【００４３】
そして、装置プログラム３５は、図２（Ａ）の１行目の条件レコードで示される条件に合致すると判断したことに応じて（Ｓ１１：Ｙｅｓ）、当該条件レコードに含まれるカスタムＵＲＬ“www.server-ctm.com/scan-upload0.xml”を用いてカスタム処理Ａを実行する（Ｓ１２）。一方、装置プログラム３５は、条件レコードで示される条件に合致しないと判断したことに応じて（Ｓ１１：Ｎｏ）、カスタム処理Ａを実行することなく、Ｓ１３以降の処理を実行する。図６を参照して、本実施形態に係るカスタム処理Ａの詳細を説明する。
【００４４】
まず、装置プログラム３５は、取得したカスタムＵＲＬのデータ識別情報“scan-upload0.xml”で識別されるカスタムＸＭＬがサーバ６０で更新されたか否かを判断する（Ｓ２１）。具体的には、装置プログラム３５は、当該カスタムＸＭＬがメモリ３２に記憶されているか否かを判断する。また、装置プログラム３５は、当該カスタムＸＭＬの日時情報の送信を要求する日時要求情報を、通信部２５を通じてサーバ６０に送信する。次に、装置プログラム３５は、日時要求情報の応答としてサーバ６０が送信した日時情報を、通信部２５を通じて受信する。そして、装置プログラム３５は、カスタムＸＭＬに対応付けてメモリ３２に記憶されている日時情報と、サーバ６０から受信したカスタムＸＭＬの日時情報とを比較する。Ｓ２１の処理は、第３判断処理の一例である。
【００４５】
そして、装置プログラム３５は、カスタムＸＭＬがメモリ３２に記憶されていない、或いは２つの日時情報が一致しないと判断したことに応じて（Ｓ２１：Ｙｅｓ）、カスタムＵＲＬのサーバ識別情報“www.server-ctm.com”で識別されるサーバ６０に、通信部２５を通じてカスタムＸＭＬ要求情報を送信する（Ｓ２２）。カスタムＸＭＬ要求情報は、カスタムＵＲＬのデータ識別情報で示されるカスタムＸＭＬの送信を要求する送信要求情報の一例である。すなわち、カスタムＸＭＬ要求情報は、送信を要求するカスタムＸＭＬのデータ識別情報“scan-upload0.xml”を含む。Ｓ２２の処理は、送信処理の一例である。
【００４６】
次に、装置プログラム３５は、図３（Ｄ）に示されるカスタムＸＭＬを、カスタムＸＭＬ要求情報の応答として、通信部２５を通じてサーバ６０から受信する（Ｓ２３）。また、装置プログラム３５は、Ｓ２１で受信した日時情報と、Ｓ２３で受信したカスタムＸＭＬとを対応付けて、メモリ３２に記憶させる（Ｓ２４）。Ｓ２３の処理は第１受信処理の一例であり、Ｓ２４は第２記憶処理の一例である。一方、装置プログラム３５は、カスタムＸＭＬがメモリ３２に記憶されており、且つ２つの日時情報が一致すると判断したことに応じて（Ｓ２１：Ｎｏ）、Ｓ２２、Ｓ２３に代えて、カスタムＵＲＬのデータ識別情報“scan-upload0.xml”で示されるカスタムＸＭＬを、メモリ３２から読み出す（Ｓ２５）。Ｓ２５の処理は、読出処理の一例である。
【００４７】
次に、装置プログラム３５は、Ｓ２３で受信したカスタムＸＭＬ或いはＳ２５で読み出したカスタムＸＭＬに定義されたカスタム画面を、表示部２３に表示させる（Ｓ２６）。本実施形態では、図３（Ｄ）に示されるカスタムＸＭＬに定義されたカスタム画面として、図８（Ｂ）に示されるセキュリティ報知画面が表示部２３に表示される。そして、装置プログラム３５は、セキュリティ報知画面に対するユーザ操作を、操作部２４を通じて受け付ける（Ｓ２７）。Ｓ２６の処理は表示処理の一例であり、Ｓ２７の処理は受付処理の一例である。
【００４８】
セキュリティ報知画面は、スキャンアップロードサービスを利用するユーザに、セキュリティ上の注意事項を報知するための定義画面の一例である。セキュリティ報知画面は、「クラウドサーバにアップロードします！機密文書をスキャンしないで下さい！」とのメッセージと、［次へ］アイコン１２１と、［戻る］アイコン１２２とを含む。そして、装置プログラム３５は、［次へ］アイコン１２１の指定を操作部２４を通じて受け付けたことに応じて（Ｓ２７：Ｙｅｓ）、Ｓ２３で受信したカスタムＸＭＬ或いはＳ２５で読み出したカスタムＸＭＬに定義された次動作ＵＲＬ“www.server-std.com/scan-upload1.xml”を取得する（Ｓ２８）。
【００４９】
より詳細には、装置プログラム３５は、カスタムＸＭＬに含まれる＜ＮｅｘｔＵＲＬ＞タグの要素を、次動作ＵＲＬとして取得する。Ｓ２８の処理は、取得処理の一例である。次に、装置プログラム３５は、Ｓ２８で取得した次動作ＵＲＬが標準ＵＲＬ及びカスタムＵＲＬのどちらであるかを判断する（Ｓ２９）。具体的には、装置プログラム３５は、Ｓ２８で取得した次動作ＵＲＬが、サーバ５０のサーバ識別情報を含むことに応じて標準ＵＲＬと判断し、サーバ６０のサーバ識別情報を含むことに応じてカスタムＵＲＬと判断すればよい。
【００５０】
そして、装置プログラム３５は、Ｓ２８でカスタムＵＲＬを取得したと判断したことに応じて（Ｓ２９：カスタム）、当該カスタムＵＲＬを用いてＳ２１以降の処理を再び実行する。一方、装置プログラム３５は、Ｓ２８で標準ＵＲＬを取得したと判断したことに応じて（Ｓ２９：標準）、カスタム処理Ａを終了する。さらに図示は省略するが、装置プログラム３５は、セキュリティ報知画面の［戻る］アイコン１２２の指定を操作部２４を通じて受け付けたことに応じて、スキャンアップロードサービスに係る処理を終了する。
【００５１】
次に図５に戻って、装置プログラム３５は、直前の取得処理で取得した標準ＵＲＬのサーバ識別情報“www.server-std.com”で識別されるサーバ５０に、標準ＵＲＬのデータ識別情報“scan-upload1.xml”を含む標準ＸＭＬ要求情報を、通信部２５を通じて送信する（Ｓ１３）。標準ＸＭＬ要求情報は、標準ＵＲＬのデータ識別情報で示される標準ＸＭＬの送信を要求する送信要求情報の一例である。Ｓ１３の処理は、送信処理の一例である。
【００５２】
次に、装置プログラム３５は、図３（Ａ）に示される標準ＸＭＬを、標準ＸＭＬ要求情報の応答として、通信部２５を通じてサーバ５０から受信する（Ｓ１４）。Ｓ１４の処理は、受信処理の一例である。次に、装置プログラム３５は、受信した標準ＸＭＬが画面定義ＸＭＬ及び動作定義ＸＭＬのどちらであるかを判断する（Ｓ１４）。Ｓ１４おける判断手法は特に限定されないが、装置プログラム３５は、＜ＮｅｘｔＵＲＬ＞タグを含むＸＭＬファイルを画面定義ＸＭＬと判断し、＜スキャンアップロード＞タグ或いは＜ダウンロードプリント＞タグを含むＸＭＬファイルを動作定義ＸＭＬと判断してもよい。
【００５３】
次に、装置プログラム３５は、図３（Ａ）に示される標準ＸＭＬが画面定義ＸＭＬだと判断したことに応じて（Ｓ１４：画面定義）、当該標準ＸＭＬに定義された標準画面を表示部２３に表示させる（Ｓ１５）。本実施形態では、図３（Ａ）に示される標準ＸＭＬに定義された標準画面として、図９（Ａ）に示されるサーバ選択画面が表示部２３に表示される。そして、装置プログラム３５は、サーバ選択画面に対するユーザ操作を、操作部２４を通じて受け付ける（Ｓ１６）。Ｓ１５の処理は表示処理の一例であり、Ｓ１６の処理は受付処理の一例である。
【００５４】
サーバ選択画面は、スキャン動作で生成した画像データのアップロード先のサーバの指定を促す定義画面の一例である。サーバ選択画面は、インターネット１０１上の不図示のサーバＡ、Ｂのサーバ識別情報に対応するサーバアイコン１３１、１３２を含む。サーバアイコン１３１、１３２に対応付けられたサーバ識別情報は、パラメータの一例である。標準ＸＭＬには、例えば、ユーザに指定させるパラメータの候補が、＜選択肢＞タグの要素として定義されている。他のＸＭＬファイルについても同様である。但し、ＸＭＬファイル内における具体的な定義方法は、これに限定されない。
【００５５】
そして、装置プログラム３５は、例えばサーバアイコン１３１の指定を操作部２４を通じて受け付けたことに応じて（Ｓ１６：Ｙｅｓ）、サーバアイコン１３１に対応付けられたサーバ識別情報“サーバＡ”を、ユーザが指定したパラメータとしてメモリ３２に一時記憶させる。次に、装置プログラム３５は、Ｓ１４で受信した標準ＸＭＬに定義された次動作ＵＲＬ“www.server-std.com/scan-upload2.xml”を取得する（Ｓ１７）。より詳細には、装置プログラム３５は、標準ＸＭＬの＜ＮｅｘｔＵＲＬ＞タグの要素を、次動作ＵＲＬとして取得する。Ｓ１７の処理は、取得処理の一例である。そして、装置プログラム３５は、取得した次動作ＵＲＬを用いてＳ１１以降の処理を再び実行する。
【００５６】
すなわち、装置プログラム３５は、取得した次動作ＵＲＬのデータ識別情報“scan-upload2.xml”と、図２（Ａ）の２行目の条件レコードの特定識別情報とが一致すると判断する（Ｓ１１：Ｙｅｓ）。そして、装置プログラム３５は、当該条件レコードに含まれるカスタムＵＲＬ“www.server-ctm.com/scan-upload2.xml”を用いてカスタム処理Ａを実行する（Ｓ１２）。以下、前述のカスタム処理Ａとの共通点の詳しい説明を省略し、相違点を中心に説明する。
【００５７】
まず、装置プログラム３５は、カスタムＵＲＬのサーバ識別情報“www.server-ctm.com”で識別されるサーバ６０に、通信部２５を通じてカスタムＸＭＬ要求情報を送信する（Ｓ２２）。ここで送信するカスタムＸＭＬ要求情報は、カスタムＵＲＬのデータ識別情報“scan-upload2.xml”と、直前の受付処理で受け付けたパラメータ“サーバＡ”とを含む。次に、装置プログラム３５は、図３（Ｅ）に示されるカスタムＸＭＬを通信部２５を通じてサーバ６０から受信する（Ｓ２３）。なお図示は省略するが、ここで受信されるカスタムＸＭＬには、直前のカスタムＸＭＬ要求情報に含めたパラメータ“サーバＡ”が含まれる。
【００５８】
次に、装置プログラム３５は、図３（Ｅ）に示されるカスタムＸＭＬに定義されたカスタム画面を、表示部２３に表示させる（Ｓ２６）。本実施形態では、図３（Ｅ）に示されるカスタムＸＭＬに定義されたカスタム画面として、図９（Ｂ）に示される形式選択画面が表示部２３に表示される。そして、装置プログラム３５は、形式選択画面に対するユーザ操作を、操作部２４を通じて受け付ける（Ｓ２７）。
【００５９】
形式選択画面は、スキャン動作で生成する画像データのファイル形式の指定を促すと共に、スキャンする原稿の種類に応じて選択すべき形式を報知する定義画面の一例である。形式選択画面は、ＴＩＦＦ形式に対応する形式アイコン１４１と、ＰＤＦ形式に対応する形式アイコン１４２とを含む。形式アイコン１４１、１４２に対応付けられた形式情報は、パラメータの一例である。また、形式選択画面は、形式アイコン１４１の前に付加された「見積書のスキャンは」とのメッセージと、形式アイコン１４２の前に付加された「請求書のスキャンは」とのメッセージとを含む。
【００６０】
次に、装置プログラム３５は、例えば形式アイコン１４１の指定を操作部２４を通じて受け付けたことに応じて（Ｓ２７：Ｙｅｓ）、形式アイコン１４１に対応付けられた形式情報“ＴＩＦＦ”を、ユーザが指定したパラメータとしてメモリ３２に一時記憶させる。また、装置プログラム３５は、図３（Ｅ）に示されるカスタムＸＭＬに定義された次動作ＵＲＬ“www.server-std.com/scan-upload3.xml”を取得する（Ｓ２８）。そして、装置プログラム３５は、Ｓ２８で標準ＵＲＬを取得したと判断したことに応じて（Ｓ２９：標準）、カスタム処理Ａを終了する。
【００６１】
再び図５に戻って、装置プログラム３５は、直前の取得処理で取得した標準ＵＲＬのサーバ識別情報“www.server-std.com”で識別されるサーバ５０に、通信部２５を通じて標準ＸＭＬ要求情報を送信する（Ｓ１３）。ここで送信する標準ＸＭＬ要求情報は、標準ＵＲＬのデータ識別情報“scan-upload3.xml”と、直前に受信したカスタムＸＭＬに含まれるパラメータ“サーバＡ”と、直前の受付処理で受け付けたパラメータ“ＴＩＦＦ”とを含む。すなわち、標準ＸＭＬ要求情報は、過去の受付処理で受け付けた全てのパラメータを含む。
【００６２】
次に、装置プログラム３５は、図３（Ｃ）に示される標準ＸＭＬを通信部２５を通じてサーバ５０から受信する（Ｓ１４）。図３（Ｃ）に示される標準ＸＭＬは、＜スキャンアップロード＞タグと、直前の標準ＸＭＬ要求情報に含まれるパラメータ“サーバＡ”、“ＴＩＦＦ”とを含む。次に、装置プログラム３５は、図３（Ｃ）に示される標準ＸＭＬが動作定義データだと判断したことに応じて（Ｓ１４：動作定義）、当該標準ＸＭＬに定義された動作を動作部に実行させる（Ｓ１８）。すなわち、装置プログラム３５は、標準ＸＭＬに含まれるパラメータに従ってスキャンアップロードを実行する。Ｓ１８の処理は、実行指示処理の一例である。
【００６３】
より詳細には、装置プログラム３５は、ＴＩＦＦ形式の画像データをスキャン動作によってスキャナ１２に生成させる。次に、装置プログラム３５は、サーバ識別情報“サーバＡ”で識別される不図示のサーバに、スキャン動作で生成された画像データを通信部２５を通じて送信する。なお、Ｓ１８の処理を実行するか否かをユーザに確認する画面が動作定義データに定義されている場合、装置プログラム３５は、当該画面を表示部２３に表示させてもよい。そして、装置プログラム３５は、Ｓ１８の処理の実行を指示するユーザ操作を操作部２４を通じて受け付けたことに応じて、Ｓ１８の処理を実行してもよい。
【００６４】
一方、図２（Ａ）に示される条件レコードが条件リストに登録されていない場合、セキュリティ報知画面の表示が省略されると共に、図９（Ｂ）に示される形式選択画面に代えて図１０（Ａ）に示される形式選択画面が表示される。換言すれば、図２（Ａ）に示される条件レコードを予め条件リストに登録しておくことによって、セキュリティ報知画面を通じて注意事項が報知されると共に、図９（Ｂ）に示される形式選択画面を通じて選択すべき形式が報知される。これにより、スキャンアップロードに係る一連の処理を、カスタマイズすることができる。より詳細には、サーバ５０が提供するスキャンアップロードサービスを、企業のワークフローとして利用する場合等に、機密文書が誤ってアップロードされたり、予め定められた形式と異なる形式が指定されたりすることを抑制できる。
【００６５】
［ダウンロードプリント］
また、装置プログラム３５は、例えば、サービス選択画面のサービスアイコン１１２の指定を操作部２４を通じて受け付けたことに応じて、ダウンロードプリントサービスの提供を受ける。図５及び図７を参照して、複合機１０にダウンロードプリントを実行させる処理を説明する。なお、スキャンアップロードと共通する処理の詳しい説明は省略し、相違点を中心に説明する。
【００６６】
複合機１０のメモリ３２には、図２（Ｂ）に示される条件リストが登録されている。図２（Ｂ）に示される条件レコードは、種別情報をさらに含む点において、図２（Ａ）に示される条件レコードと相違する。種別情報には、第１値“挿入”或いは第２値“差替”が設定される。
【００６７】
第１値“挿入”は、対応する特定識別情報“download-print1.xml”で識別される標準ＸＭＬの前に、対応するカスタムＵＲＬ“www.server-ctm.com/download-print0.xml”で識別されるカスタムＸＭＬを使用する指示に対応する。第２値“差替”は、対応する特定識別情報“download-print2.xml”で識別される標準ＸＭＬに代えて、対応するカスタムＵＲＬ“www.server-ctm.com/download-print2.xml”で識別されるカスタムＸＭＬを使用する指示に対応する。
【００６８】
また、本実施形態に係るプリンタ１１は、着脱可能なトナーカートリッジに貯留されたトナーを用いて、シートに画像を記録する。そして、複合機１０は、トナーカットリッジに貯留されているトナーの残量を検出するセンサを備えている。複合機１０は、センサから出力される検出信号に基づいて、トナーカートリッジに貯留されているトナーの残量を知ることができる。トナーはプリンタ１１のプリント動作に使用される消耗品の一例であり、トナーの残量が閾値（例えば、１０％）未満の状態は特定状態の一例である。
【００６９】
さらに、サーバ５０には図４（Ａ）〜（Ｃ）に示される標準ＸＭＬが記憶されており、サーバ６０には図４（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬが記憶されているものとする。図４（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬは、＜ＮｅｘｔＵＲＬ＞タグが省略可能な点において、図３（Ｄ）〜（Ｅ）に示されるカスタムＸＭＬと相違する。また、カスタムＸＭＬに＜ＮｅｘｔＵＲＬ＞タグが含まれている場合、当該タグの要素にはカスタムＵＲＬが設定される。
【００７０】
まず、装置プログラム３５は、サービスアイコン１１２に対応付けてメモリ３２に記憶された次動作ＵＲＬ“www.server-std.com/download-print1.xml”を読み出す。この処理は、取得処理の一例である。次に、装置プログラム３５は、条件リストに登録された条件レコードで示される条件に合致するか否かを判断する（Ｓ１１）。
【００７１】
本実施形態では、データ識別情報“download-print1.xml”と、図２（Ｂ）の１行目の条件レコードの特定識別情報とが一致する。すなわち、装置プログラム３５は、トナーカートリッジに貯留されたトナーの残量が１０％未満であることに応じて、当該条件レコードで示される条件に合致すると判断する。一方、装置プログラム３５は、トナーカートリッジに貯留されたトナーの残量が１０％以上であることに応じて、全ての条件レコードで示される条件に合致しないと判断する。
【００７２】
そして、装置プログラム３５は、図２（Ｂ）の１行目の条件レコードで示される条件に合致すると判断したことに応じて（Ｓ１１：Ｙｅｓ）、当該条件レコードに含まれるカスタムＵＲＬ“www.server-ctm.com/download-print0.xml”を用いてカスタム処理Ｂを実行する（Ｓ１２）。図７を参照して、本実施形態に係るカスタム処理Ｂの詳細を説明する。但し、カスタム処理Ａと共通する処理の詳しい説明は省略し、相違点を中心に説明する。
【００７３】
まず、装置プログラム３５は、直前の取得処理で取得した標準ＵＲＬ“www.server-std.com/download-print1.xml”を、メモリ３２に一時記憶させる（Ｓ３１）。Ｓ３１の処理は、第１記憶処理の一例である。次に、装置プログラム３５は、カスタムＵＲＬのサーバ識別情報“www.server-ctm.com”で識別されるサーバ６０に、データ識別情報“download-print0.xml”を含むカスタムＸＭＬ要求情報を、通信部２５を通じて送信する（Ｓ３２）。Ｓ３２の処理は、送信処理の一例であって、Ｓ２２と同様であってもよい。次に、装置プログラム３５は、図４（Ｄ）に示されるカスタムＸＭＬを通信部２５を通じてサーバ６０から受信する（Ｓ３３）。Ｓ３３の処理は、受信処理の一例であって、Ｓ２３と同様であってもよい。
【００７４】
次に、装置プログラム３５は、図４（Ｄ）に示されるカスタムＸＭＬに定義されたカスタム画面を、表示部２３に表示させる（Ｓ３４）。本実施形態では、図４（Ｄ）に示されるカスタムＸＭＬに定義されたカスタム画面として、図１０（Ｂ）に示されるトナー交換報知画面が表示部２３に表示される。トナー交換報知画面は、ダウンロードプリントサービスを利用するユーザに、トナーの交換が必要なことを報知するための定義画面の一例である。トナー交換報知画面は、「トナーを交換して下さい。問い合わせ先（ｘｘｘ−ｙｙｙｙ−ｚｚｚｚ）」とのメッセージと、［次へ］アイコン１５１と、［戻る］アイコン１５２とを含む。そして、装置プログラム３５は、トナー交換報知画面に対するユーザ操作を、操作部２４を通じて受け付ける（Ｓ３５）。Ｓ３４の処理は表示処理の一例であり、Ｓ３５の処理は受付処理の一例である。
【００７５】
次に、装置プログラム３５は、［次へ］アイコン１５１の指定を操作部２４を通じて受け付けたことに応じて（Ｓ３５：Ｙｅｓ）、Ｓ３３で受信したカスタムＸＭＬにカスタムＵＲＬが含まれているか否かを判断する（Ｓ３６）。そして、装置プログラム３５は、カスタムＵＲＬが含まれていると判断したことに応じて（Ｓ３６：Ｙｅｓ）、当該カスタムＵＲＬを取得して（Ｓ３７）、Ｓ３２以降の処理を再び実行する。Ｓ３７の処理は、取得処理の一例である。一方、装置プログラム３５は、カスタムＵＲＬが含まれていないと判断したことに応じて（Ｓ３５：Ｎｏ）、直前のＳ１１で条件に合致すると判断した条件レコードの種別情報の設定値を判断する（Ｓ３８）。Ｓ３８の処理は、第２判断処理の一例である。
【００７６】
次に、装置プログラム３５は、種別情報に第１値“挿入”が設定されていると判断したことに応じて（Ｓ３８：挿入）、Ｓ３１で一時記憶させた標準ＵＲＬ“www.server-std.com/download-print1.xml”を、次動作ＵＲＬとしてメモリ３２から読み出す（Ｓ３９）。Ｓ３９の処理は、取得処理の一例である。Ｓ４０〜Ｓ４２の処理は、後述する。さらに図示は省略するが、装置プログラム３５は、セキュリティ報知画面の［戻る］アイコン１５２の指定を操作部２４を通じて受け付けたことに応じて、ダウンロードプリントサービスに係る処理を終了する。
【００７７】
次に図５に戻って、装置プログラム３５は、直前の取得処理で取得した標準ＵＲＬのサーバ識別情報“www.server-std.com”で識別されるサーバ５０に、データ識別情報“download-print1.xml”を含む標準ＸＭＬ要求情報を、通信部２５を通じて送信する（Ｓ１３）。次に、装置プログラム３５は、図４（Ａ）に示される標準ＸＭＬを通信部２５を通じてサーバ５０から受信する（Ｓ１４）。
【００７８】
次に、装置プログラム３５は、図４（Ａ）に示される標準ＸＭＬが画面定義ＸＭＬだと判断したことに応じて（Ｓ１４：画面定義）、当該標準ＸＭＬに定義された標準画面を表示部２３に表示させる（Ｓ１５）。本実施形態では、図４（Ａ）に示される標準ＸＭＬに定義された標準画面として、図９（Ａ）に示されるサーバ選択画面が表示部２３に表示される。そして、装置プログラム３５は、サーバ選択画面に対するユーザ操作を、操作部２４を通じて受け付ける（Ｓ１６）。
【００７９】
ここで表示されるサーバ選択画面は、プリント動作の対象となる画像データのダウンロード元のサーバの指定を促す定義画面の一例である。サーバ選択画面の表示内容は、スキャンアップロードの場合と同様であってもよい。そして、装置プログラム３５は、例えばサーバアイコン１３２の指定を操作部２４を通じて受け付けたことに応じて（Ｓ１６：Ｙｅｓ）、サーバアイコン１３２に対応付けられたサーバ識別情報“サーバＢ”を、ユーザが指定したパラメータとしてメモリ３２に一時記憶させる。
【００８０】
次に、装置プログラム３５は、図４（Ａ）に示される標準ＸＭＬに定義された次動作ＵＲＬ“www.server-std.com/download-print2.xml”を取得する（Ｓ１７）。次に、装置プログラム３５は、取得した次動作ＵＲＬに含まれるデータ識別情報“download-print2.xml”と、図２（Ｂ）の２行目の特定識別情報とが一致すると判断する（Ｓ１１：Ｙｅｓ）。そして、装置プログラム３５は、当該条件レコードに含まれるカスタムＵＲＬ“www.server-ctm.com/download-print2.xml”を用いてカスタム処理Ｂを実行する（Ｓ１２）。以下、前述のカスタム処理Ｂとの共通点の詳しい説明を省略し、相違点を中心に説明する。
【００８１】
まず、装置プログラム３５は、直前のＳ１７で取得した標準ＵＲＬ“www.server-std.com/download-print2.xml”を、メモリ３２に一時記憶させる（Ｓ３１）。次に、装置プログラム３５は、カスタムＵＲＬのサーバ識別情報“www.server-ctm.com”で識別されるサーバ６０に、通信部２５を通じてカスタムＸＭＬ要求情報を送信する（Ｓ３２）。ここで送信するカスタムＸＭＬ要求情報は、カスタムＵＲＬのデータ識別情報“download-print2.xml”と、直前の受付処理で受け付けたパラメータ“サーバＢ”とを含む。
【００８２】
次に、装置プログラム３５は、図４（Ｅ）に示されるカスタムＸＭＬを通信部２５を通じてサーバ６０から受信する（Ｓ３３）。なお図示は省略するが、ここで受信されるカスタムＸＭＬには、直前のカスタムＸＭＬ要求情報に含めたパラメータ“サーバＢ”が含まれる。次に、装置プログラム３５は、図４（Ｅ）に示されるカスタムＸＭＬに定義されたカスタム画面を、表示部２３に表示させる（Ｓ３４）。本実施形態では、図４（Ｅ）に示されるカスタムＸＭＬに定義されたカスタム画面として、図１１（Ａ）に示されるデータ選択画面が表示部２３に表示される。
【００８３】
データ選択画面は、プリント動作の対象となる画像データの指定を促すと共に、各画像データの用途を報知する定義画面の一例である。データ選択画面は、データ識別情報“有休申請書．ＰＤＦ”に対応するデータアイコン１６１と、データ識別情報“出張申請書．ＰＤＦ”に対応するデータアイコン１６２とを含む。データアイコン１６１、１６２に対応するデータ識別情報で識別される画像データは、サーバＢに記憶されている。データアイコン１６１、１６２に対応付けられた形式は、パラメータの一例である。また、データ選択画面は、データアイコン１６１の前に付加された「有休の申請は」とのメッセージと、データアイコン１６２の前に付加された「出張の申請は」とのメッセージとを含む。
【００８４】
次に、装置プログラム３５は、例えばデータアイコン１６２の指定を操作部２４を通じて受け付けたことに応じて（Ｓ３５：Ｙｅｓ）、データアイコン１６２に対応付けられたデータ識別情報“出張申請書．ＰＤＦ”を、ユーザが指定したパラメータとしてメモリ３２に一時記憶させる。次に、装置プログラム３５は、Ｓ３３で受信したカスタムＸＭＬにカスタムＵＲＬが含まれておらず、且つ直前のＳ１１で条件に合致すると判断した条件レコードの種別情報に第２値“差替”が設定されていると判断したことに応じて（Ｓ３６：Ｎｏ＆Ｓ３８：差替）、Ｓ３１で一時記憶させた標準ＵＲＬを読み出す。
【００８５】
次に、装置プログラム３５は、読み出した標準ＵＲＬのサーバ識別情報“www.server-std.com”で識別されるサーバ５０に、当該標準ＵＲＬのデータ識別情報“download-print2.xml”を含む標準ＸＭＬ要求情報を、通信部２５を通じて送信する（Ｓ４０）。次に、装置プログラム３５は、図４（Ｂ）に示される標準ＸＭＬを通信部２５を通じてサーバ５０から受信する（Ｓ４１：Ｙｅｓ）。そして、装置プログラム３５は、Ｓ４１で受信した標準ＸＭＬに定義された標準画面を表示させることなく、当該標準ＸＭＬに含まれる標準ＵＲＬ“www.server-std.com/download-print3.xml”を、次動作ＵＲＬとして取得する（Ｓ４２）。Ｓ４０〜Ｓ４２は、Ｓ３１で一時記憶させた標準ＵＲＬで識別される標準ＸＭＬに定義された標準ＵＲＬを取得する取得処理の一例である。
【００８６】
再び図５に戻って、装置プログラム３５は、直前の取得処理で取得した標準ＵＲＬのサーバ識別情報“www.server-std.com”で識別されるサーバ５０に、通信部２５を通じて標準ＸＭＬ要求情報を送信する（Ｓ１３）。ここで送信する標準ＸＭＬ要求情報は、標準ＵＲＬのデータ識別情報“download-print3.xml”と、直前に受信したカスタムＸＭＬに含まれるパラメータ“サーバＢ”と、直前の受付処理で受け付けたパラメータ“出張申請書．ＰＤＦ”とを含む。
【００８７】
次に、装置プログラム３５は、図４（Ｃ）に示される標準ＸＭＬを通信部２５を通じてサーバ５０から受信する（Ｓ１４）。次に、装置プログラム３５は、図４（Ｃ）に示される標準ＸＭＬが動作定義データだと判断したことに応じて（Ｓ１４：動作定義）、当該標準ＸＭＬに定義された動作を動作部に実行させる（Ｓ１８）。すなわち、装置プログラム３５は、標準ＸＭＬに含まれるパラメータに従ってダウンロードプリントを実行する。
【００８８】
より詳細には、すなわち、装置プログラム３５は、データ識別情報“出張申請書．ＰＤＦ”で識別される画像データを、サーバ識別情報“サーバＢ”で識別されるサーバＢから通信部２５を通じてダウンロードする。そして、装置プログラム３５は、受信した画像データで示される画像をシートに記録するプリント動作を、プリンタ１１に実行させる。
【００８９】
一方、図２（Ｂ）に示される条件レコードが条件リストに登録されていない場合、トナー交換報知画面の表示が省略されると共に、図１１（Ａ）に示されるデータ選択画面に代えて図１１（Ｂ）に示されるデータ選択画面が表示される。換言すれば、図２（Ｂ）に示される条件レコードを予め条件リストに登録しておくことによって、トナー交換報知画面を通じて注意事項が報知されると共に、図１１（Ａ）に示されるデータ選択画面を通じて選択すべき画像データが報知される。すなわち、ダウンロードプリントに係る一連の処理を、カスタマイズすることができる。より詳細には、サーバ５０が提供するダウンロードプリントサービスを、企業のワークフローとして利用する場合等に、複合機１０がプリント動作を実行不能なことが事前に認識させることができ、また所望のデータをユーザに適切に指定させることができる。
【００９０】
［本実施形態の作用効果］
上記の実施形態に係る装置プログラム３５は、特定識別情報と異なる標準ＵＲＬを取得したことに応じて、当該標準ＵＲＬで識別される標準ＸＭＬをサーバ５０から受信する。一方、装置プログラム３５は、特定識別情報と同一の標準ＵＲＬを取得したことに応じて、当該特定識別情報に対応付けられたカスタムＵＲＬで識別されるカスタムＸＭＬをサーバ６０から受信する。
【００９１】
このように、順番に取得する複数のＸＭＬファイルのうち、カスタマイズしたい標準ＸＭＬを識別するデータ識別情報を予めメモリ３２に登録しておくことにより、複合機１０毎にカスタマイズしたカスタムＸＭＬを受信することができる。また、サービスを実現する基本的な処理を標準ＸＭＬに定義し、複合機１０を利用する組織毎にカスタマイズしたい処理をカスタムＸＭＬに定義することによって、全ての処理をカスタムＸＭＬで実現する場合と比較して、低コストでサービスをカスタマイズすることができる。
【００９２】
また、上記の実施形態によれば、条件レコードに状態情報をさらに含めることによって、複合機１０が特定状態の時にのみ処理をカスタマイズすることができる。なお、複合機１０の特定状態は、ログインＩＤ“Ｇｕｅｓｔ”でログインされている状態、トナーの残量が１０％未満である状態等に限定されない。例えば、複合機１０とサーバ５０とが通信不能な状態、プリント動作に用いるシートが給紙トレイに収容されていない状態を、複合機１０の特定状態としてもよい。
【００９３】
一例として、図３（Ｄ）〜（Ｅ）に示されるように、カスタムＸＭＬの＜ＮｅｘｔＵＲＬ＞タグの要素に次動作ＵＲＬを設定してもよい。他の例として、図４（Ｄ）〜（Ｅ）に示されるように、カスタムＸＭＬの＜ＮｅｘｔＵＲＬ＞タグにカスタムＵＲＬを設定するか、条件レコードの種別情報に所望の値を設定してもよい。これにより、カスタムＸＭＬを連続して複合機１０に受信させることもできるし、カスタムＸＭＬから任意の標準ＸＭＬを複合機１０に受信させることができる。
【００９４】
図３（Ｄ）〜（Ｅ）の例によれば、条件リストに登録する情報量（すなわち、種別情報）を削減できる。一方、図４（Ｄ）〜（Ｅ）の例によれば、カスタムＸＭＬに標準ＵＲＬを定義する必要がないので、サーバ５０が移植された時にカスタムＸＭＬを修正する必要がなくなる。なお、上記の実施形態では、図３に示される形式のＸＭＬファイルによってスキャンアップロードを実現し、図４に示される形式のＸＭＬファイルによってダウンロードプリントを実現する例を説明したが、本発明はこれに限定されない。
【００９５】
また、カスタムＸＭＬの＜ＮｅｘｔＵＲＬ＞タグの要素にカスタムＵＲＬを設定する場合、当該カスタムＵＲＬはデータ識別情報を含み且つサーバ識別情報を含んでいなくてもよい。そして、装置プログラム３５は、データ識別情報のみを含むカスタムＵＲＬを取得処理で取得したことに応じて、直前に受信したカスタムＸＭＬの送信元のサーバ６０から、取得したデータ識別情報で識別されるカスタムＸＭＬを受信すればよい。これにより、例えば、サーバ６０に記憶されていたカスタムＸＭＬを他のサーバに移植する際に、カスタムＸＭＬ内のサーバ識別情報を修正する必要がなくなる。
【００９６】
また、カスタムＸＭＬは、スクリプトを含んでもよい。そして、装置プログラム３５は、受信したカスタムＸＭＬに定義されたスクリプトを解析し、解析結果に応じたカスタム画面を表示部２３に表示させてもよい。スクリプトを解析する処理は、解析処理の一例である。スクリプト言語は、例えば、Ｌｕａ、Ｒｕｂｙ、ＪａｖａＳｃｒｉｐｔ（登録商標）等であってもよい。これにより、カスタム画面のカスタマイズの幅がさらに広がる。
【００９７】
また、上記の実施形態に係るカスタム処理Ａにおいて、メモリ３２にキャッシュしたカスタムＸＭＬを読み出すことによって（Ｓ２１：Ｎｏ→Ｓ２５）、複合機１０とサーバ５０との間の通信量を削減することができる。但し、この処理は、カスタム処理ＡのＳ２２、Ｓ２３に代えて実行されることに限定されず、メイン処理のＳ１３、Ｓ１４或いはカスタム処理ＢのＳ３２、Ｓ３３に代えて実行されてもよい。また、これらの処理は、省略されてもよい。
【００９８】
また、上記の実施形態では、サーバ５０が提供するサービスを実現するための複数の標準ＸＭＬのうち、１番目の標準ＸＭＬの前にカスタムＸＭＬを挿入し、２番目の標準ＸＭＬをカスタムＸＭＬに差し替える例を説明した。しかしながら、カスタムＸＭＬの挿入及び差替は、前述の例に限定されず、例えば、複数の標準ＸＭＬの間にカスタムＸＭＬを挿入してもよいし、最後の標準ＸＭＬをカスタムＸＭＬに差し替えてもよい。
【００９９】
また、上記の実施形態では、画面定義データが次動作ＵＲＬを含み、動作定義データが次動作ＵＲＬを含まないＸＭＬファイルの例を説明したが、動作定義データが次動作ＵＲＬを含んでもよい。そして、装置プログラム３５は、動作定義データが次動作ＵＲＬを含むか否かを、例えばＳ１８の実行後に判断してもよい。そして、装置プログラム３５は、動作定義データが次動作ＵＲＬを含むと判断したことに応じて、Ｓ１７以降の処理を実行してもよい。
【０１００】
また、上記の実施形態の複合機１０において、メモリ３２に記憶された各種プログラムがＣＰＵ３１によって実行されることによって、本発明の制御部が実行する各処理が実現される例を説明した。しかしながら、制御部の構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。
【０１０１】
さらに、本発明は、複合機１０として実現できるだけでなく、複合機１０に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな記録媒体に記録されて提供されてもよい。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな記録媒体は、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の他、通信ネットワークを通じて複合機１０に接続可能なサーバに搭載されたメモリを含んでもよい。そして、サーバのメモリに記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット１０１等の通信ネットワークを通じて配信されてもよい。
【符号の説明】
【０１０２】
１０・・・複合機
１１・・・プリンタ
１２・・・スキャナ
２３・・・表示部
２４・・・操作部
２５・・・通信部
３１・・・ＣＰＵ
３２・・・メモリ
３５・・・装置プログラム
５０，６０・・・サーバ
【図１】
0006662146.tif 000002
【図２】
0006662146.tif 000003
【図３】
0006662146.tif 000004
【図４】
0006662146.tif 000005
【図５】
0006662146.tif 000006
【図６】
0006662146.tif 000007
【図７】
0006662146.tif 000008
【図８】
0006662146.tif 000009
【図９】
0006662146.tif 000010
【図１０】
0006662146.tif 000011
【図１１】
0006662146.tif 000012