(57)【要約】【課題】インターネットと直接接続する機能のないプリンタを管理する第２プログラムのインストール時における通信設定を容易にする手段を提供する。【解決手段】第１プログラム２４は、内部仲介装置１３からインストーラのダウンロード要求を受信すると（Ｓ７１）、ＧＵＩＤを生成し（Ｓ７６）、生成したＧＵＩＤと、自己のＵＲＬ及び通信設定を含む通信情報と、インストーラ及び第２プログラムのプログラムファイルを含むセット情報を生成し（Ｓ７７）、生成したセット情報を内部仲介装置１３に送信する（Ｓ７８）。第１プログラム２４は、ＧＵＩＤを含むインストール許可要求を内部仲介装置１３から受信し（Ｓ８０）、受信したＧＵＩＤが対応データベースに登録されていると判断すると（Ｓ８１：Ｙｅｓ）、インストール許可通知を内部仲介装置１３に送信する（Ｓ８３）。【選択図】図６
2019185519.tif 000002
【特許請求の範囲】
【請求項１】
インターネットに接続された第１情報処理装置が有する第１コンピュータによって実行されるプログラムであって、
仲介プログラムのインストーラを要求するインストーラ要求を受信するインストーラ要求受信手段として前記第１コンピュータを機能させ、前記仲介プログラムは、ローカルネットワークに接続された第２情報処理装置が有する第２コンピュータを機能させるプログラムであり、前記ローカルネットワークは、ファイアウォールを介して前記インターネットと接続しており、
前記第１情報処理装置のアドレスを取得する取得手段と、
前記インストーラ要求受信手段で前記インストーラ要求を受信したことに応じて、前記取得手段が取得したアドレスを含む通信情報と、前記インストーラを示すインストーラ情報とを含むセット情報を、前記インストーラ要求の要求元装置に送信するセット情報送信手段と、
前記セット情報送信手段が前記セット情報を送信した後に、前記セット情報に含まれる前記インストーラ情報が示すインストーラによって前記第２情報処理装置にインストールされた前記仲介プログラムによるセットアップにしたがって、指示コマンドを前記ファイアウォールを通じて前記第２情報処理装置に送信する指示コマンド送信手段として前記第１コンピュータを機能させ、前記セットアップは、前記セット情報送信手段が送信した前記セット情報に含まれる前記通信情報を用いて前記仲介プログラムによって実行され、前記セットアップは、前記第１情報処理装置から前記ファイアウォールを通じて前記第２情報処理装置にデータを送信することを可能にし、前記指示コマンドは、前記ローカルネットワークを通じて前記第２情報処理装置と通信するデバイスに対する指示を示すコマンドであり、
前記指示コマンドに対する応答を、前記ファイアウォールを通じて前記第２情報処理装置から受信する応答受信手段として前記第１コンピュータを機能させるプログラム。
【請求項２】
仲介装置ＩＤを生成する生成手段と、
前記生成手段が生成した前記仲介装置ＩＤを含むレコードを、前記第１情報処理装置が備えるメモリに記憶された対応データベースに登録する第１登録手段と、
前記生成手段が生成した前記仲介装置ＩＤをさらに含む前記セット情報を前記インストーラ要求の要求元装置に送信する前記セット情報送信手段と、
前記仲介装置ＩＤを含む登録要求を、前記セットアップにしたがって前記ファイアウォールを通じて前記仲介装置から受信する登録要求受信手段と、
前記登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤが前記対応データベースにあるか否かを判断する第１登録判断手段と、
前記第１登録判断手段で前記登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤが前記対応データベースにあると判断したことに応じて、当該仲介装置ＩＤを含むレコードに通信開始を示す通信開始情報を登録する第２登録手段と、
前記仲介装置ＩＤを含む指示要求を、前記セットアップにしたがって前記ファイアウォールを通じて前記第２情報処理装置から受信する指示要求受信手段と、
前記指示要求に含まれる前記仲介装置ＩＤに一致する仲介装置ＩＤを含む前記対応データベースのレコードに前記通信開始情報が含まれていることに応じて、前記指示コマンドを送信する前記指示コマンド送信手段として前記第１コンピュータを機能させる請求項１に記載のプログラム。
【請求項３】
前記第１登録判断手段で前記登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤが前記対応データベースにある前記第２情報処理装置から、前記デバイスを識別するデバイスＩＤを含むデバイス登録要求を、前記セットアップにしたがって前記ファイアウォールを通じて受信するデバイス登録要求受信手段と、
前記デバイス登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤを有する前記対応データベースのレコードに、当該デバイス登録要求に含まれるデバイスＩＤを登録するデバイスＩＤ登録手段と、
前記デバイスＩＤを特定可能な情報及び前記デバイスへの指示を含む指示情報を取得する指示取得手段と、
前記指示取得手段が取得した前記指示情報に基づいて、前記デバイスＩＤを特定し、特定したデバイスＩＤと一致するデバイスＩＤを有する前記対応データベースのレコードを特定し、特定したレコードが有する前記仲介装置ＩＤを特定する特定手段と、
前記指示情報に含まれる指示及び前記特定手段が特定した前記デバイスＩＤを含む前記指示コマンドを生成するコマンド生成手段として前記第１コンピュータを機能させ、
前記指示コマンド送信手段は、前記指示要求受信手段が受信した前記指示要求に含まれる前記仲介装置ＩＤと、前記特定手段が特定した前記仲介装置ＩＤとが一致したことに応じて、受信した指示要求の応答として、前記指示コマンドを送信する請求項２に記載のプログラム。
【請求項４】
前記第２登録手段が前記通信開始情報を登録したレコードに含まれる前記仲介装置ＩＤに一致する仲介装置ＩＤを含む前記指示要求を前記指示要求受信手段が受信したことに応じて、前記ローカルネットワークを介して前記第２情報処理装置と接続された前記デバイスの前記デバイスＩＤを取得することを指示するデバイス探索指示を前記指示要求の応答として前記ファイアウォールを通じて前記第２情報処理装置に送信する探索指示送信手段として前記第１コンピュータを機能させ、
前記デバイス登録要求受信手段は、前記探索指示送信手段の応答として、前記仲介装置ＩＤ及び前記デバイスＩＤを含む前記デバイス登録要求を受信する請求項３に記載のプログラム。
【請求項５】
前記デバイス登録要求受信手段が受信した前記デバイス登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤを含むレコードが前記対応データベースにあるか否かを判断する第１判断手段として前記第１コンピュータを機能させ、
前記デバイスＩＤ登録手段は、
前記デバイス登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤを含むレコードが前記対応データベースにあると前記第１判断手段が判断したことに応じて、前記デバイス登録要求に含まれるデバイスＩＤを前記対応データベースに登録し、
前記デバイス登録要求に含まれる前記仲介装置ＩＤと一致する仲介装置ＩＤを含むレコードが前記対応データベースにないと前記第１判断手段が判断したことに応じて、前記デバイス登録要求に含まれるデバイスＩＤを前記対応データベースに登録しない旨を示す不登録通知を前記デバイス登録要求の応答としてファイアウォールを通じて前記第２情報処理装置に送信する請求項３に記載のプログラム。
【請求項６】
前記第２情報処理装置にインストールされて起動された前記仲介プログラムから起動通知を前記ファイアウォールを通じて受信する起動通知受信手段と、
前記起動通知受信手段が前記起動通知を受信したことに応じて、前記仲介装置ＩＤを送信することの要求を、前記起動通知の応答として前記ファイアウォールを通じて前記第２情報処理装置に送信する装置ＩＤ要求手段として前記第１コンピュータを機能させ、
前記登録要求受信手段は、前記装置ＩＤ要求手段の応答として、前記仲介装置ＩＤ及び前記登録要求を受信し、
前記第２登録手段が前記対応データベースに前記通信開始情報を登録したことに応じて、前記指示要求を送信することを示す送信開始指示を前記ファイアウォールを通じて前記第２情報処理装置に送信する通信開始指示送信手段として前記第１コンピュータを機能させる請求項２から５のいずれかに記載のプログラム。
【請求項７】
前記対応データベースを示す表示データを生成する表示データ生成手段と、
前記表示データの要求を受け付ける受付手段と、
前記受付手段で前記表示データの要求を受け付けたことに応じて前記表示データを出力する出力手段として前記第１コンピュータを機能させる請求項２から６のいずれかに記載のプログラム。
【請求項８】
前記仲介プログラムの送信を要求し、かつ前記仲介装置ＩＤを含む要求であって、前記第２情報処理装置によって実行された前記インストーラが前記ファイアウォールを通じて送信した送信要求を受信する送信要求受信手段と、
前記送信要求に含まれる前記仲介装置ＩＤで特定される前記レコードに前記通信開始情報が登録されているか否かを判断する第２判断手段と、
前記レコードに前記通信開始情報が登録されていると前記第２判断手段が判断したことに応じて、前記仲介プログラムを送信しない非送信通知を前記ファイアウォールを通じて前記第２情報処理装置に送信する非送信通知送信手段と、
前記レコードに前記通信開始情報が登録されていないと前記第２判断手段が判断したことに応じて、前記仲介プログラムを送信する仲介プログラム送信手段として前記第１コンピュータを機能させる請求項２に記載のプログラム。
【請求項９】
ロケーション情報と前記仲介装置ＩＤとを含むレコードを前記対応データベースに登録する前記第１登録手段と、
前記第２情報処理装置によって実行された前記インストーラが送信した要求であって、前記仲介プログラムのインストール許可の要求と、前記仲介装置ＩＤと、ロケーション情報とを含む許可要求を受信する許可要求受信手段と、
前記許可要求に含まれる前記仲介装置ＩＤ及び前記ロケーション情報を含むレコードが前記対応データベースにあるか否かを判断する第２登録判断手段と、
前記許可要求に含まれる前記仲介装置ＩＤ及び前記ロケーション情報を含むレコードが前記対応データベースにないと前記第２登録判断手段が判断したことに応じて、前記仲介プログラムのインストールを許可しない不許可通知を前記許可要求の応答として、前記ファイアウォールを通じて前記第２情報処理装置に送信する不許可通知送信手段と、
前記許可要求に含まれる前記仲介装置ＩＤ及び前記ロケーション情報を含むレコードが前記対応データベースにあると前記第２登録判断手段が判断したことに応じて、前記仲介プログラムのインストールを許可する許可通知を前記許可要求の応答として、前記ファイアウォールを通じて前記第２情報処理装置に送信する許可通知送信手段として前記第１コンピュータを機能させる請求項２に記載のプログラム。
【請求項１０】
ロケーション情報の入力を受け付ける受付手段と、
前記受付手段で受け付けた前記ロケーション情報の数だけ仲介装置ＩＤを生成する生成手段と、
前記ロケーション情報と前記仲介装置ＩＤとを対応付けたレコードを生成し、前記第１情報処理装置が備えるメモリに記憶された対応データベースに登録する第１登録手段と、
前記登録要求受信手段で受信した前記登録要求に含まれる情報と対応する仲介装置ＩＤの有無を判断する登録判断手段と、
対応する仲介装置ＩＤがあると前記登録判断手段が判断した場合に実行する前記セット情報送信手段と、
対応する仲介装置ＩＤがないと前記登録判断手段が判断した場合は、前記セット情報送信手段を実行しないと決定する決定手段として前記第１コンピュータを機能させる請求項１に記載のプログラム。
【請求項１１】
前記第１登録手段は、前記セット情報送信手段が前記セット情報を送信したことに応じて、当該セット情報を送信したことを示すセット情報送信済情報を、当該セット情報を送信した前記仲介装置ＩＤと対応付けて前記対応データベースのレコードに登録し、
前記対応データベースを示す表示データを生成する表示データ生成手段と、
前記表示データの要求を受け付ける受付手段と、
前記受付手段で前記表示データの要求を受け付けたことに応じて前記表示データを出力する出力手段として前記第１コンピュータを機能させる請求項１０に記載のプログラム。
【請求項１２】
前記デバイスＩＤの登録を、前記インターネットに接続された管理サーバに、当該インターネットを通じて要求する登録要求手段と、
前記登録要求手段による要求の後に、当該要求の要求先である前記管理サーバから、前記デバイスＩＤ及び前記デバイスＩＤが示すデバイスへの指示を示す指示情報を前記インターネットを通じて受信する前記指示取得手段と、
前記応答受信手段が受信した前記応答に応じた情報を、前記指示情報に対する応答として、前記インターネットを通じて前記管理サーバに送信する応答送信手段として前記コンピュータを機能させる請求項３から５のいずれかに記載のプログラム。
【請求項１３】
インターネットに接続された第１情報処理装置と、
前記ファイアウォールを介して前記インターネットと接続するローカルネットワークに接続されており、当該ファイアウォールを通じて前記第１情報処理装置と相互に通信する第２情報処理装置と、を備えた通信システムであって、
前記第１情報処理装置は、コントローラを有しており、
前記コントローラは、
仲介プログラムのインストーラを要求するインストーラ要求を受信するインストーラ要求受信処理を実行し、前記仲介プログラムは、前記第２情報処理装置が有する第２コンピュータを機能させるプログラムであり、
前記コントローラは、
前記第１情報処理装置のアドレスを取得する取得処理と、
前記インストーラ要求受信処理で前記インストーラ要求を受信したことに応じて、前記取得処理が取得したアドレスを含む通信情報と、前記インストーラを示すインストーラ情報とを含むセット情報を、前記インストーラ要求の要求元装置に送信するセット情報送信処理と、
前記セット情報送信処理で前記セット情報を送信した後に、前記セット情報に含まれる前記インストーラ情報が示すインストーラによって前記第２情報処理装置にインストールされた前記仲介プログラムによるセットアップにしたがって、指示コマンドを前記ファイアウォールを通じて前記第２情報処理装置に送信する指示コマンド送信処理と、を実行し、前記セットアップは、前記セット情報送信処理が送信した前記セット情報に含まれる前記通信情報を用いて前記仲介プログラムによって実行され、前記セットアップは、前記第１情報処理装置から前記ファイアウォールを通じて前記第２情報処理装置にデータを送信することを可能にし、前記指示コマンドは、前記ローカルネットワークを通じて前記第２情報処理装置と通信するデバイスに対する指示を示すコマンドであり、
前記コントローラは、前記指示コマンドに対する応答を、前記ファイアウォールを通じて前記第２情報処理装置から受信する応答受信処理を実行する通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスの管理を行うプログラム、及び通信システムに関する。
【背景技術】
【０００２】
インターネット上の管理サーバが、携帯電話やタブレットなどのモバイルデバイスと通信を行って、モバイルデバイスの管理を行うモバイルデバイス管理（略して、ＭＤＭ）システムが知られている（例えば、特許文献１参照）。モバイルデバイスは、例えば、携帯電話やタブレットやノート型のパーソナルコンピュータなど、インターネットに直接接続して管理サーバと通信可能な端末である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１７−５３６５９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、管理サーバと直接通信を行わないデバイスを、モバイルデバイス管理システムを利用して管理することについて、十分な開示がされていない。
【０００５】
本発明は、前記の事情に鑑みてなされたものであり、その目的は、管理サーバと直接通信を行わないデバイスの管理を行う手段を提供することにある。
【課題を解決するための手段】
【０００６】
本明細書では様々な開示を行う。開示例の一例であるプログラムは、インターネットに接続された第１情報処理装置が有する第１コンピュータによって実行され、仲介プログラムのインストーラを要求するインストーラ要求を受信するインストーラ要求受信手段として前記第１コンピュータを機能させる。前記仲介プログラムは、ローカルネットワークに接続された第２情報処理装置が有する第２コンピュータを機能させる。前記ローカルネットワークは、ファイアウォールを介して前記インターネットと接続している。該プログラムは、前記第１情報処理装置のアドレスを取得する取得手段と、前記インストーラ要求受信手段で前記インストーラ要求を受信したことに応じて、前記取得手段が取得したアドレスを含む通信情報と、前記インストーラを示すインストーラ情報とを含むセット情報を、前記インストーラ要求の要求元装置に送信するセット情報送信手段と、前記セット情報送信手段が前記セット情報を送信した後に、前記セット情報に含まれる前記インストーラ情報が示すインストーラによって前記第２情報処理装置にインストールされた前記仲介プログラムによるセットアップにしたがって、指示コマンドを前記ファイアウォールを通じて前記第２情報処理装置に送信する指示コマンド送信手段として前記第１コンピュータを機能させる。前記セットアップは、前記セット情報送信手段が送信した前記セット情報に含まれる前記通信情報を用いて前記仲介プログラムによって実行される。前記セットアップは、前記第１情報処理装置から前記ファイアウォールを通じて前記第２情報処理装置にデータを送信することを可能にする。前記指示コマンドは、前記ローカルネットワークを通じて前記第２情報処理装置と通信するデバイスに対する指示を示すコマンドである。該プログラムは、前記指示コマンドに対する応答を、前記ファイアウォールを通じて前記第２情報処理装置から受信する応答受信手段として前記第１コンピュータを機能させる。
【０００７】
上記構成によれば、第１情報処理装置と直接通信を行わないデバイスの管理を行うことができる。また、アドレスをユーザに入力させることなく、第２情報処理装置にインストールされた仲介プログラムとプログラムとの間で通信を行わせることができる。その結果、ユーザの手間が低減する。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施形態に係る管理システム１０の模式的な構成図である。
【図２】図２（Ａ）は、プリンタ１４が登録される前の対応データベースを示す図であり、図２（Ｂ）は、プリンタ１４の管理開始後の対応データベースを示す図であり、図２（Ｃ）は、変形例１におけるプリンタ１４が登録される前の対応データベースを示す図である。
【図３】図３は、デバイスＩＤ及びＧＵＩＤを管理サーバ１１に登録する際の管理サーバ１１、外部仲介装置１２、内部仲介装置１３、及びプリンタ１４の処理を示す図である。
【図４】図４は、管理サーバ１１からの指示をプリンタ１４に実行させる際の管理サーバ１１、外部仲介装置１２、内部仲介装置１３、及びプリンタ１４の処理の一部を示す図である。
【図５】図５は、図４の処理の続きを示す図である。
【図６】図６は、内部仲介装置１３にインストーラ及び第２プログラム３４をダウンロードする際の外部仲介装置１２の第１プログラム２４の処理を示す図である。
【図７】図７は、変形例２における内部仲介装置１３にインストーラ及び第２プログラム３４をダウンロードする際の外部仲介装置１２の第１プログラム２４の処理を示す図である。
【発明を実施するための形態】
【０００９】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【００１０】
本実施形態では、図１に示される管理システム１０を説明する。管理システム１０は、いわゆるモバイルデバイス管理システムを利用してプリンタ１４の管理を行うシステムである。プリンタ１４の管理者は、ブラウザを用いて管理サーバ１１に記憶されたプリンタ１４の管理情報を閲覧し、或いは、管理サーバ１１を通じて、プリンタ１４に対して設定情報の変更等の指示を行う。
【００１１】
管理システム１０は、管理サーバ１１と直接通信を行う機能を有さないプリンタ１４を管理サーバ１１で管理できるように、外部仲介装置１２及び内部仲介装置１３を備える。プリンタ１４は、デバイスの一例である。
【００１２】
管理システム１０は、インターネット１５に接続された管理サーバ１１及び外部仲介装置１２と、ローカルネットワーク１６に接続された内部仲介装置１３及びプリンタ１４と、を備える。外部仲介装置１２は、第１情報処理装置の一例である。内部仲介装置１３は、第２情報処理装置の一例である。管理システム１０は、通信システムの一例である。
【００１３】
管理サーバ１１は、例えば、モバイルデバイスを管理するサービスを提供する会社が有するサーバである。外部仲介装置１２は、例えば、モバイルデバイスを管理するサービスの提供を受ける会社が有するサーバである。内部仲介装置１３は、例えば、モバイルデバイスを管理するサービスの提供を受ける会社の各支店に設置されたサーバやパーソナルコンピュータである。例えば、支店ごとにローカルネットワーク１６が構築される。各支店は、一乃至複数のプリンタ１４をそれぞれ有する。各支店のプリンタ１４は、各支店のローカルネットワーク１６にそれぞれ接続される。
【００１４】
図示例では、３つのローカルネットワーク１６が構築され、各ローカルネットワーク１６に、２乃至３台のプリンタ１４が接続されている。但し、管理システム１０が有するローカルネットワーク１６の数や、各ローカルネットワーク１６にそれぞれ接続されるプリンタ１４の台数は、図示例に限られない。
【００１５】
管理サーバ１１と外部仲介装置１２とは、インターネット１５を通じて相互に通信することができる。具体的には、管理サーバ１１及び外部仲介装置１２は、グローバルＩＰアドレスをそれぞれ有しており、グローバルＩＰアドレスを用いたインターネットプロトコルを用いて相互に通信する。
【００１６】
ローカルネットワーク１６は、いわゆるイントラネットであり、例えば、有線ＬＡＮ、無線ＬＡＮ、ＷＡＮ、或いはこれらの組み合わせである。ローカルネットワーク１６に接続された内部仲介装置１３とプリンタ１４とは、ＴＣＰ／ＩＰなどの通信プロトコルを用いて相互に通信可能である。具体的には、内部仲介装置１３とプリンタ１４とは、プライベートＩＰアドレスやＭＡＣアドレスを用いて相互に通信する。
【００１７】
ローカルネットワーク１６は、ルータなどの不図示のゲートウェイ装置を有している。ゲートウェイ装置は、グローバルＩＰアドレスを有しており、インターネット１５と接続されている。ローカルネットワーク１６に接続された内部仲介装置１３は、ゲートウェイ装置を介して外部仲介装置１２と通信を行う。具体的には、内部仲介装置１３と外部仲介装置１２とは、ゲートウェイ装置が構築するファイアウォールを通じて相互に通信を行う。
【００１８】
管理システム１０では、管理サーバ１１と直接通信を行う機能を有さないプリンタ１４の管理サーバ１１による管理が、第１プログラム２４がインストールされた外部仲介装置１２及び第２プログラム３４がインストールされた内部仲介装置１３によって実現される。以下、外部仲介装置１２、内部仲介装置１３、及びプリンタ１４の構成について、詳しく説明する。第１プログラム２４は、プログラムの一例である。第２プログラム３４は、仲介プログラムの一例である。
【００１９】
外部仲介装置１２は、ＣＰＵ２１と、メモリ２２と、通信インタフェース２５（以下、通信Ｉ／Ｆ２５と記載する）と、ユーザＩ／Ｆ２６と、通信バス２７と、ディスプレイ３０とを備える。ＣＰＵ２１、メモリ２２、通信Ｉ／Ｆ２５、ユーザＩ／Ｆ２６、及びディスプレイ３０は、通信バス２７と接続されている。ＣＰＵ２１は、第１コンピュータの一例である。
【００２０】
メモリ２２は、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ、ＨＤＤ、ＵＳＢメモリ等の可搬記憶媒体、ＣＰＵ２１が備えるバッファ等である。メモリ２２は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する内部仲介装置１３のメモリ３２、及びプリンタ１４のメモリ４２についても同様である。
【００２１】
メモリ２２は、プログラム記憶領域２８及びデータ記憶領域２９を有している。プログラム記憶領域２８は、ＯＳ２３や第１プログラム２４等のプログラムを記憶している。
【００２２】
ＯＳ２３は、外部仲介装置１２の基本プログラムである。ＯＳ２３は、例えば、ＭａｃＯＳ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）ＯＳ等のオペレーティングシステムである。
【００２３】
第１プログラム２４は、ＯＳ２３と協働して、通信Ｉ／Ｆ２５を通じた管理サーバ１１及び内部仲介装置１３との通信を制御するプログラムである。第１プログラム２４は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。第１プログラム２４が実行する処理については後述する。
【００２４】
データ記憶領域２９は、プログラムの実行に必要なデータを記憶する。また、データ記憶領域２９は、図２（Ｂ）に示される対応データベースを記憶する。
【００２５】
対応データベースは、複数の項目と、複数のレコードとを有する。複数の項目は、項目「デバイスＩＤ」、「ＧＵＩＤ」、「ロケーション情報」、「ファームバージョン」、「設定情報」、「更新日時」、「状態情報」、及び「登録状態」を有する。なお、対応データベースは、前述の項目以外の項目を有していてもよい。
【００２６】
項目「デバイスＩＤ」は、プリンタ１４に付与された識別情報である。デバイスＩＤは、例えば、プリンタ１４のＭＡＣアドレスやＩＰアドレスやシリアル番号などである。各レコードは、デバイスＩＤによって区別される。すなわち、一のプリンタ１４に対して一のレコードが生成される。
【００２７】
項目「ＧＵＩＤ」は、デバイスＩＤで特定されるプリンタ１４が属する内部仲介装置１３を示す。プリンタ１４が属する内部仲介装置１３とは、プリンタ１４が接続されるローカルネットワーク１６と接続された内部仲介装置１３を意味する。項目「ＧＵＩＤ」は、第２プログラム３４に対して付与された識別情報である。なお、一の内部仲介装置１３に対して一の第２プログラム３４がインストールされる。したがって、ＧＵＩＤは、内部仲介装置１３に対して付与されているとも言える。ＧＵＩＤは、仲介装置ＩＤの一例である。なお、ＧＵＩＤは、数字や文字、その他、内部仲介装置１３を識別可能なものであれば、どのようなものがＧＵＩＤとして用いられてもよい。デバイスＩＤについても同様である。
【００２８】
項目「ロケーション情報」は、項目「ＧＵＩＤ」で示される内部仲介装置１３が属するローカルネットワーク１６を示す。項目「ロケーション情報」は、例えば、支店名や、支部名などである。ロケーション情報は、「Ａ支店」というテキスト情報や、内部仲介装置１３が接続されているローカルネットワークのゲートウェイ装置のグローバルＩＰアドレスなどを用いることができる。
【００２９】
項目「ファームバージョン」は、プリンタ１４にインストールされている後述の制御プログラム４４のバージョンを示す。なお、項目「ファームバージョン」の数字が大きい方が、より新しいバージョンである。
【００３０】
項目「設定情報」は、プリンタ１４に設定されているパラメータを示す。項目「設定情報」は、項目「フォント」、項目「フォントサイズ」、項目「濃度」などの複数の細分化された項目を有する。項目「フォント」は、プリンタ１４が印刷する文字のフォントを意味する。項目「フォントサイズ」は、プリンタ１４が印刷する文字のサイズを意味する。項目「濃度」は、プリンタ１４が印刷する文字や図形のインクの濃度を意味する。項目「設定情報」は、前記の項目に加え、自動電源オフ機能が有効か無効かを示す項目や、印刷速度を示す項目や、通信の設定パラメータを示す項目などの他の項目を有していてもよい。
【００３１】
項目「更新日時」は、レコードにおける各項目が示す内容が変更された日時を示す。
【００３２】
項目「状態情報」は、各レコードのプリンタ１４が、管理システム１０による管理の対象であるか否かを示す。「管理中」は、管理システム１０による管理の対象であることを意味する。「待機中」は、管理システム１０による管理の対象でないことを意味する。
【００３３】
項目「通信開始情報」は、内部仲介装置１３が対応データベースに登録されたか否かを示す。具体的には、内部仲介装置１３に第２プログラム３４がインストールされ、内部仲介装置１３にインストールされた第２プログラム３４の登録を外部仲介装置１２の第１プログラム２４が認めたか否かを示す。「レディ」は、第２プログラム３４の登録を外部仲介装置１２の第１プログラム２４が認めたことを示す。「ペンディング」は、第２プログラム３４の登録を外部仲介装置１２の第１プログラム２４が未だ認めていないことを示す。詳しくは後述するが、項目「通信開始情報」に「レディ」が登録された第２プログラム３４に対して、定期的なＨＴＴＰリクエストの送信を開始する指示が、外部仲介装置１２の第１プログラム２４から送信される。すなわち、項目「通信開始情報」は、外部仲介装置１２と内部仲介装置１３との間で定期的な通信が開始されているか否かを示す。
【００３４】
図１に示される外部仲介装置１２の通信Ｉ／Ｆ２５は、管理サーバ１１及び内部仲介装置１３と通信可能なインタフェースである。通信Ｉ／Ｆ２５は、ＬＡＮ  Ｉ／Ｆや無線ＬＡＮ  Ｉ／Ｆである。外部仲介装置１２と内部仲介装置１３とは、通信Ｉ／Ｆ２５、インターネット１５、ファイアウォール、ローカルネットワーク１６、通信Ｉ／Ｆ３５を通じて通信する。
【００３５】
ユーザＩ／Ｆ２６は、キーボードやマウスなどである。ユーザＩ／Ｆ２６は、管理者による入力を受け付ける。
【００３６】
内部仲介装置１３は、ＣＰＵ３１と、メモリ３２と、通信Ｉ／Ｆ３５と、ユーザＩ／Ｆ３６と、通信バス３７と、ディスプレイ４０とを備える。ＣＰＵ３１、メモリ３２、通信Ｉ／Ｆ３５、ユーザＩ／Ｆ３６、及び通信バス３７の構成は、ＣＰＵ２１、メモリ２２、ユーザＩ／Ｆ２６、通信バス２７、及びディスプレイ３０の構成と同様である。ＣＰＵ３１は、第２コンピュータの一例である。
【００３７】
メモリ３２は、プログラム記憶領域３８及びデータ記憶領域３９を有している。プログラム記憶領域３８は、ＯＳ３３や第２プログラム３４等のプログラムを記憶している。データ記憶領域３９は、プログラムの実行に必要なデータを記憶する。また、データ記憶領域３９は、後述のＧＵＩＤ（Globally Unique Identifierの略）を記憶する。
【００３８】
ＯＳ３３は、内部仲介装置１３の基本プログラムである。第２プログラム３４は、ＯＳ３３と協働して、通信Ｉ／Ｆ３５を通じた外部仲介装置１２及びプリンタ１４との通信を制御するプログラムである。第２プログラム３４は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。第２プログラム３４が実行する処理については後述する。
【００３９】
通信Ｉ／Ｆ３５は、外部仲介装置１２及びプリンタ１４と通信可能なインタフェースである。通信Ｉ／Ｆ３５は、ＬＡＮ  Ｉ／Ｆや無線ＬＡＮ  Ｉ／Ｆである。
【００４０】
プリンタ１４は、ＣＰＵ４１と、メモリ４２と、通信Ｉ／Ｆ４５と、バッテリ５０と、印刷エンジン５１と、通信バス４７とを備える。ＣＰＵ４１、メモリ４２、通信Ｉ／Ｆ４５、及び通信バス４７の構成は、ＣＰＵ２１、メモリ２２、通信Ｉ／Ｆ２５、及び通信バス２７の構成と同様である。
【００４１】
メモリ４２は、プログラム記憶領域４８及びデータ記憶領域４９を有している。プログラム記憶領域４８は、ＯＳ４３や制御プログラム４４等のプログラムを記憶している。データ記憶領域４９は、プログラムの実行に必要なデータを記憶する。また、データ記憶領域４９は、デバイスＩＤを記憶する。
【００４２】
ＯＳ４３は、プリンタ１４の基本プログラムである。制御プログラム４４は、ＯＳ４３と協働して、印刷エンジン５１に印刷を実行させ、また、通信Ｉ／Ｆ４５を通じた内部仲介装置１３との通信を制御するプログラムである。制御プログラム４４は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。制御プログラム４４が実行する処理については後述する。
【００４３】
通信Ｉ／Ｆ４５は、内部仲介装置１３と通信可能なインタフェースである。通信Ｉ／Ｆ４５は、内部仲介装置１３が送信したコマンドを受信し、当該コマンドに対する応答を内部仲介装置１３に送信する。
【００４４】
以下、第１プログラム２４、第２プログラム３４、及び制御プログラム４４が実行する処理を説明する。
【００４５】
なお、本明細書では、基本的に、プログラムに記述された命令に従ったＣＰＵの処理を説明する。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」、「設定」等の処理は、ＣＰＵの処理を表している。ＣＰＵによる処理は、ＯＳなどのコントローラを介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、ＣＰＵが要求することなくデータを受信するという処理も、「ＣＰＵがデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。
【００４６】
また、プログラムに記述された命令に従ったＣＰＵの処理を、省略した文言で記載することがある。例えば、「ＣＰＵ２１が行う」「プログラム２４が行う」「外部仲介装置１２が行う」のように記載することがある。ＣＰＵ３１、４１についても同様である。また、通信Ｉ／Ｆ、ユーザＩ／Ｆを通じてプログラムが情報の入出力を行うことを、省略した文言で記載することがある。例えば、「ＣＰＵ２１が受信する」、「プログラム２４が送信する」、「外部仲介装置１２が取得する」のように記載することがある。
【００４７】
また、ＣＰＵによる、情報Ａは事柄Ｂであることを示しているか否かを判断する処理を、「情報Ａから、事柄Ｂであるか否かを判断する」のように概念的に記載することがある。ＣＰＵによる、情報Ａが事柄Ｂであることを示しているか、事柄Ｃであるかを示しているかを判断する処理を、「情報Ａから、事柄Ｂであるか事柄Ｃであるかを判断する」のように概念的に記載することがある。
【００４８】
また、本明細書中の「データ」と「情報」とは、コンピュータによって取り扱い可能なビット或いはビット列である点において共通する。「データ」とは、各ビットが示す意味内容をコンピュータが考慮することなく取り扱えるものを指す。これに対して、「情報」とは、各ビットが示す意味内容によってコンピュータの動作が分岐するものを指す。さらに、「指示」は、送信先の装置に対して次の動作を促すための制御信号であって、情報を含んでいることもあるし、それ自体が情報としての性質を有していることもある。
【００４９】
また、「データ」及び「情報」は、形式（例えば、テキスト形式、バイナリ形式、フラグ形式等）がコンピュータ毎に変更されたとしても、同一の意味内容と認識される限り、同一のデータ及び情報として取り扱われる。例えば、「２つ」であることを示す情報が、あるコンピュータではＡＳＣＩＩコードで”０ｘ３２”というテキスト形式の情報として保持され、別のコンピュータでは二進数表記で”１０”というバイナリ形式の情報として保持されてもよい。
【００５０】
但し、上記の「データ」及び「情報」の区別は厳密なものではなく、例外的な取り扱いも許容される。例えば、データが一時的に情報として扱われてもよいし、情報が一時的にデータとして扱われてもよい。また、ある装置ではデータとして扱われるものが、他の装置では情報として扱われてもよい。さらには、データの中から情報が取り出されてもよいし、情報の中からデータが取り出されてもよい。
【００５１】
また、本明細書中の「に応じて」は、当該文字列の前に記載された条件が満たされた場合に、当該文字列の後に記載された処理が実行されることを示す。なお、処理が実行されるタイミングは、条件が満たされた後であればよく、当該条件が満たされた直後である必要は必ずしもない。
【００５２】
以下、図３から図５を参照して、外部仲介装置１２の第１プログラム２４、内部仲介装置１３の第２プログラム３４、及びプリンタ１４の制御プログラム４４が実行する処理について説明する。
【００５３】
まず、プリンタ１４のデバイスＩＤを外部仲介装置１２のメモリ２２に記憶された対応データベースに登録し、管理システム１０の管理を開始する処理について、図３を参照して説明する。
【００５４】
まず、内部仲介装置１３の第２プログラム３４は、プリンタ１４のデバイスＩＤを返信することを要求するコマンドをローカルネットワーク１６にブロードキャストする（Ｓ１１）。内部仲介装置１３の第２プログラム３４は、後述のＳ９１（図６）の指示を受信したことに応じて、コマンドをブロードキャストする。なお、詳しくは後述するが、外部仲介装置１２は、指示などの情報を、内部仲介装置１３から受信したＨＴＴＰリクエストに対するＨＴＴＰレスポンスに含めて内部仲介装置１３に送信する。
【００５５】
内部仲介装置１３の第２プログラム３４がローカルネットワーク１６にブロードキャストしたコマンドは、同一のローカルネットワーク１６に接続されたプリンタ１４によって受信される（Ｓ１１）。コマンドを受信したプリンタ１４の制御プログラム４４は、自己のデバイスＩＤを含む応答を返信する（Ｓ１２）。
【００５６】
内部仲介装置１３の第２プログラム３４は、プリンタ１４の制御プログラム４４が返信した応答を受信する（Ｓ１２）。次に、第２プログラム３４は、送信指示が入力されたか否かを判断する（Ｓ１３）。例えば、第２プログラム３４は、プリンタ１４のデバイスＩＤを含む応答を受信したことに応じて、受信したデバイスＩＤを内部仲介装置１３のディスプレイ４０に表示させる。担当者は、ディスプレイ４０に表示されたデバイスＩＤが管理対象のプリンタ１４のデバイスＩＤか否かを判断する。担当者は、ディスプレイ４０に表示されたデバイスＩＤが管理対象のプリンタ１４のデバイスＩＤであると判断すると、送信指示を内部仲介装置１３に入力する。一方、担当者は、ディスプレイ４０に表示されたデバイスＩＤが管理対象のプリンタ１４のデバイスＩＤでないと判断すると、当該デバイスＩＤを削除する指示を内部仲介装置１３に入力する。すなわち、内部仲介装置１３において、ブロードキャストによって収集されたデバイスＩＤが、管理システム１０を用いて管理すべき対象のプリンタ１４のデバイスＩＤであるか否かが、各支店の担当者によってそれぞれ確認される。
【００５７】
内部仲介装置１３の第２プログラム３４は、収集したデバイスＩＤを送信すべきでない旨の指示が入力されたと判断すると（Ｓ１３：Ｎｏ）、収集したデバイスＩＤを外部仲介装置１２に送信することなく、処理を終了する。一方、第２プログラム３４は、送信指示が入力されたと判断すると（Ｓ１３：Ｙｅｓ）、収集したデバイスＩＤ及びメモリ３２に記憶された自己のＧＵＩＤを含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ１４）。なお、複数のデバイスＩＤが収集された場合、各デバイスＩＤが個々に外部仲介装置１２に送信されてもよいし、収集した全てのデバイスＩＤがまとめて外部仲介装置１２に送信されてもよい。
【００５８】
内部仲介装置１３の第２プログラム３４が送信したデバイスＩＤ及びＧＵＩＤを含むＨＴＴＰリクエストは、外部仲介装置１２に受信される（Ｓ１４）。外部仲介装置１２の第１プログラム２４は、受信したＨＴＴＰリクエストに含まれるＧＵＩＤを含むレコードが対応データベースにあるか否かを判断する（Ｓ１５）。すなわち、第１プログラム２４は、対応データベースに登録された内部仲介装置１３からデバイスＩＤが送信されたか否かを判断する。デバイスＩＤ及びＧＵＩＤを含むＨＴＴＰリクエストは、デバイス登録要求の一例である。デバイスＩＤ及びＧＵＩＤを含むＨＴＴＰリクエストを第１プログラム２４が受信するＳ１４の処理は、デバイス登録要求受信手段の一例である。受信したＨＴＴＰリクエストに含まれるＧＵＩＤを含むレコードが対応データベースにあるか否かを判断するＳ１５の処理は、第１判断手段の一例である。
【００５９】
第１プログラム２４は、Ｓ１４で受信したＨＴＴＰリクエストに含まれるＧＵＩＤを含むレコードが対応データベース（図２（Ｂ））にないと判断すると（Ｓ１５：Ｎｏ）、Ｓ１４で受信したＨＴＴＰリクエストのＨＴＴＰレスポンスとして、受信したデバイスＩＤを登録しない旨を示す不登録通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ１６）。すなわち、第１プログラム２４は、対応データベースに登録していない内部仲介装置１３からデバイスＩＤを含むＨＴＴＰリクエストを受信しても、ＨＴＴＰリクエストに含まれるデバイスＩＤを対応データベースに登録しない。したがって、対応データベースに登録されていない内部仲介装置１３に対してデバイスＩＤが対応データベースに登録されることが防止される。
【００６０】
外部仲介装置１２の第１プログラム２４は、Ｓ１４で受信したＨＴＴＰリクエストに含まれるＧＵＩＤを含むレコードが対応データベースにあると判断すると（Ｓ１５：Ｙｅｓ）、Ｓ１４で受信したＨＴＴＰリクエストに含まれるデバイスＩＤを、ＨＴＴＰリクエストに含まれるＧＵＩＤと同一のＧＵＩＤを有するレコードにおいて、対応データベースに登録する（Ｓ１７）。その際、第１プログラム２４は、ＨＴＴＰリクエストに含まれるデバイスＩＤが対応データベース（図２（Ｂ））に既に登録されているか否かを判断し、登録されていないと判断すると、デバイスＩＤを対応データベースに登録する（Ｓ１７）。デバイスＩＤを対応データベースに登録するＳ１７の処理は、デバイスＩＤ登録手段の一例である。
【００６１】
フローチャートには示されていないが、外部仲介装置１２の第１プログラム２４は、対応データベースを示す表示データを生成し、メモリ２２に記憶させる。第１プログラム２４は、ユーザＩ／Ｆ２６を用いて管理者から表示データの入力指示を受け付けると、表示データをディスプレイ３０に表示させる。すなわち、管理者は、メモリ２２に記憶された対応データベースをディスプレイ３０に表示させて確認することができる。
【００６２】
また、第１プログラム２４は、ＵＲＬを有する。第１プログラム２４は、例えば、内部仲介装置１３のブラウザから表示データの送信要求を受信したことに応じて、メモリ２２に記憶された表示データを内部仲介装置１３に送信する。すなわち、内部仲介装置１３の担当者は、外部仲介装置１２のメモリ２２に記憶された対応データベースをＷｅｂページで閲覧することができる。また、管理者は、携帯端末などを用いて、外部仲介装置１２から離れた場所においても、対応データベースを確認することができる。外部仲介装置１２の第１プログラム２４が表示データを生成する処理は、表示データ生成手段の一例である。ユーザＩ／Ｆ２６、２６や携帯端末等のユーザＩ／Ｆを用いて表示データの要求を第１プログラム２４が受け付ける処理は、受付手段の一例である。第１プログラム２４が表示データをディスプレイ３０に出力し、或いは、内部仲介装置１３や携帯端末等に表示データを送信する処理は、出力手段の一例である。
【００６３】
また、フローチャートには示されていないが、外部仲介装置１２の第１プログラム２４は、デバイスＩＤを受信したことを示す応答を含むＨＴＴＰレスポンスを、Ｓ１４で受信したＨＴＴＰリクエストの応答として、内部仲介装置１３に返信する。或いは、外部仲介装置１２の第１プログラム２４は、対応データベースに登録したデバイスＩＤを含むＨＴＴＰレスポンスを、Ｓ１４で受信したＨＴＴＰリクエストの応答として、内部仲介装置１３に返信してもよい。内部仲介装置１３の第２プログラム３４は、対応データベースに登録したデバイスＩＤを含むＨＴＴＰレスポンスを受信したことに応じて、ＨＴＴＰレスポンスに含まれるデバイスＩＤを内部仲介装置１３のメモリ３２に記憶させる。第２プログラム３４は、当該ＨＴＴＰレスポンスを受信したことに応じて、或いは、担当者が入力した指示に応じて、対応データベースを内部仲介装置１３のディスプレイ４０に表示する。担当者は、ディスプレイ４０に表示された対応データベースにより、対応データベースに登録されたデバイスＩＤを確認することができる。
【００６４】
データベースに新たに追加されたデバイスＩＤにおいては、項目「状態情報」には、初期値の「待機状態」が記憶される。図２の例では、デバイスＩＤ「００９」のプリンタ１４を示すレコードが、新たに追加されたレコードである。「待機状態」であるレコードが示すプリンタ１４は、まだ管理サーバ１１には登録されていない。すなわち、管理システム１０の管理対象とはなっていない、仮の登録状態であると言える。なお、管理対象となったプリンタ１４を示すレコードは、「状態情報」が「待機状態」から「管理状態」に変更されている。
【００６５】
なお、フローチャートには示されていないが、外部仲介装置１２の第１プログラム２４は、受信したデバイスＩＤが既に対応データベースに登録されていると判断すると、受信したデバイスＩＤが対応データベースに登録済みである旨を示す応答を、内部仲介装置１３に返信する。
【００６６】
また、フローチャートには示されていないが、外部仲介装置１２の第１プログラム２４は、削除指示が入力されたか否かを判断する。削除指示は、例えば、管理者が外部仲介装置１２に入力する指示である。例えば、第１プログラム２４は、レコードを生成して対応データベースに登録したことを外部仲介装置１２のディスプレイ３０に表示させる。ディスプレイ３０を確認した管理者は、対応データベースを外部仲介装置１２のディスプレイ３０に表示させ、「待機状態」のデバイスＩＤが示すプリンタ１４が、管理すべき対象のプリンタ１４であるか否かを判断する。管理者は、管理システム１０によって管理すべき対象でないプリンタ１４のデバイスＩＤを対象に削除指示を入力する。すなわち、対応データベースに登録されるデバイスＩＤが適正か否かは、内部仲介装置１３において各担当者によってそれぞれ確認され、次いで、外部仲介装置１２において管理者によって確認される。なお、第２プログラム３４のＳ１３を省略し、対応データベースに登録されるデバイスＩＤが適正か否かを管理者のみが確認してもよい。すなわち、第２プログラム３４は、受信したデバイスＩＤを、担当者の確認を得ることなく外部仲介装置１２に送信してもよい。
【００６７】
外部仲介装置１２の第１プログラム２４は、削除指示が入力されたと判断すると、削除指示がされたレコードを対応データベースから削除する。
【００６８】
次に、外部仲介装置１２の第１プログラム２４は、管理システム１０の管理を開始する管理開始指示が入力されるまで待機する（Ｓ１８：Ｎｏ）。第１プログラム２４は、管理開始指示が入力されたと判断すると（Ｓ１８：Ｙｅｓ）、コマンドを管理サーバ１１に送信する（Ｓ１９）。当該コマンドは、対応データベースに登録されたデバイスＩＤを付帯情報として含む。また、当該コマンドは、付帯するデバイスＩＤを管理対象のプリンタ１４のデバイスＩＤとして登録することを管理サーバ１１に要求するコマンドである。Ｓ１９の処理は、登録要求手段の一例である。
【００６９】
なお、外部仲介装置１２の第１プログラム２４は、Ｓ１８において、管理の開始を拒否する旨の指示の入力を受け付けてもよい。その場合、第１プログラム２４は、Ｓ２２において、管理の開始を拒否する旨の指示が入力されたことを示すＨＴＴＰレスポンスを内部仲介装置１３の第２プログラム３４に送信する。第２プログラム３４は、当該ＨＴＴＰレスポンスを受信したことに応じて、管理の開始を拒否する旨の指示が外部仲介装置１２において入力されたことを示す情報を、内部仲介装置１３のディスプレイ４０に表示させる。担当者は、ディスプレイ４０に表示された情報により、管理の開始を拒否する旨の指示が外部仲介装置１２において入力されたことを確認することができる。
【００７０】
外部仲介装置１２が送信したコマンドは、管理サーバ１１によって受信される（Ｓ１９）。コマンドを受信した管理サーバ１１は、受信したコマンドに含まれるデバイスＩＤを不図示のメモリに記憶する。すなわち、管理サーバ１１は、受信したコマンドに含まれるデバイスＩＤを、管理対象のプリンタ１４のデバイスＩＤとして登録する。その後、管理サーバ１１は、コマンドに含まれるデバイスＩＤを登録した旨を示す応答を、インターネット１５を通じて外部仲介装置１２に返信する（Ｓ２０）。
【００７１】
管理サーバ１１が返信した応答は、外部仲介装置１２によって受信される（Ｓ２０）。外部仲介装置１２の第１プログラム２４は、管理サーバ１１からの応答を受信したことに応じて、管理システム１０の管理を開始する（Ｓ２１）。具体的には、図２（Ｂ）に示されるデータベースの項目「状態情報」を、「待機中」から「管理中」に変更する。
【００７２】
次に、外部仲介装置１２の第１プログラム２４は、内部仲介装置１３が定期的に送信するＨＴＴＰリクエストに対するＨＴＴＰレスポンスとして、「管理中」であるデバイスＩＤ、すなわち、管理を開始したプリンタ１４のデバイスＩＤを、内部仲介装置１３に送信する（Ｓ２２）。このとき、Ｓ１７で削除されたデバイスＩＤは、送信されない。
【００７３】
なお、外部仲介装置１２の第１プログラム２４は、Ｓ１４で受信したＨＴＴＰリクエストの応答として、Ｓ２２のＨＴＴＰレスポンスを内部仲介装置１３に送信してもよい。
【００７４】
フローチャートには示されていないが、内部仲介装置１３の第２プログラム３４は、管理を開始したデバイスＩＤを受信すると（Ｓ２２）、管理を開始したデバイスＩＤをメモリ３２に記憶する。第２プログラム３４は、管理を開始したデバイスＩＤを受信したことを、内部仲介装置１３のディスプレイ４０に表示させるなどして、担当者に認識させる。担当者は、メモリ３２に記憶されたデバイスＩＤを内部仲介装置１３のディスプレイ４０に表示させ、管理を開始されたプリンタ１４を確認することができる。なお、外部仲介装置１２の管理者は、メモリ２２に記憶された対応データベースを外部仲介装置１２のディスプレイ３０に表示させることにより、管理を開始されたプリンタ１４を確認することができる。また、内部仲介装置１３の担当者及び外部仲介装置１２の管理者は、ブラウザを用いて、管理サーバ１１に記憶されたデータをディスプレイ３０、４０に表示させることにより、管理を開始されたプリンタ１４を確認することもできる。
【００７５】
項目「状態情報」が「管理中」であるレコードのデバイスＩＤを有するプリンタ１４に対して、管理サーバ１１からの指示に応じたコマンドが入力される。すなわち、管理サーバ１１によってプリンタ１４の管理が行われる。図４及び図５を参照して詳しく説明する。なお、管理サーバ１１への指示は、ブラウザを用いて管理者が管理サーバ１１に入力する。
【００７６】
まず、管理サーバ１１は、インターネット１５を通じて、第２指示コマンドを外部仲介装置１２に送信する（Ｓ３１）。第２指示コマンドは、プリンタ１４に実行させる指示に応じた指示を外部仲介装置１２に実行させるコマンドである。第２指示コマンドは、指示を実行させるプリンタ１４を特定するためのデバイスＩＤを付帯情報として含む。第２指示コマンドが示す指示は、指示情報の一例である。
【００７７】
第２指示コマンドは、例えば、設定情報（図２）の「フォント」や「フォントサイズ」や「濃度」などの各項目についてプリンタ１４の設定値を変更する旨の指示や、プリンタ１４の制御プログラム４４のファームバージョン（図２）を更新する旨の指示や、プリンタ１４の現在の設定情報を返信することを要求する指示の実行を外部仲介装置１２に指示するコマンドである。ただし、第２指示コマンドが指示する内容は、上述の例に限られない。
【００７８】
外部仲介装置１２の第１プログラム２４は、管理サーバ１１が送信した第２指示コマンドを受信する（Ｓ３１）。第１プログラム２４は、第２指示コマンドを受信したことに応じて、第２指示コマンドを受信した旨を示す通知を管理サーバ１１に送信する（Ｓ３２）。第２指示コマンドを受信するＳ３１の処理は、指示取得手段の一例である。
【００７９】
外部仲介装置１２の第１プログラム２４は、第２指示コマンドを受信すると（Ｓ３１）、第２指示コマンドに含まれるデバイスＩＤと対応付けられたＧＵＩＤを、対応データベースから特定する。すなわち、第１プログラム２４は、指示を送信すべきプリンタ１４が属するローカルネットワーク１６上の内部仲介装置１３をＧＵＩＤによって特定する。具体的には、第１プログラム２４は、第２指示コマンドに含まれるデバイスＩＤを有するレコードを対応データベース上で特定し、特定したレコードにおける項目「ＧＵＩＤ」のＧＵＩＤを、対応するＧＵＩＤとして特定する。ＧＵＩＤを取得するＳ３３の処理は、特定手段の一例である。
【００８０】
次に、外部仲介装置１２の第１プログラム２４は、第２指示コマンドの指示に応じた第１指示コマンドを生成する（Ｓ３４）。第１指示コマンドは、内部仲介装置１３に入力可能なコマンドであって、第２指示コマンドが指示する内容に応じて生成されるコマンドである。第１指示コマンドは、第２指示コマンドに含まれるデバイスＩＤを付帯情報として含む。第１プログラム２４が第１指示コマンドを生成するＳ３４の処理は、コマンド生成手段の一例である。第１指示コマンドは、指示コマンドの一例である。
【００８１】
図２には示されていないが、外部仲介装置１２のメモリ２２のデータ記憶領域２９は、第１コマンドリストを記憶する。第１コマンドリストは、第２指示コマンドと第１指示コマンドとの対応が示されている。外部仲介装置１２の第１プログラム２４は、Ｓ３１で受信した第２指示コマンドに対応する第１指示コマンドを第１コマンドリストから決定し、決定した第１指示コマンドに、第２指示コマンドに含まれるデバイスＩＤを付帯情報として含ませて、第１指示コマンドを生成する（Ｓ３４）。
【００８２】
また、図示は省略するが、外部仲介装置１２の第１プログラム２４は、第２指示コマンドが示す指示が、プリンタ１４へのファイル送信である場合、送信対象のファイルを管理サーバ１１に要求する。要求を受信した管理サーバ１１は、ファイルを外部仲介装置１２に送信する。第１プログラム２４は、ファイルを受信し、メモリ２２に記憶する。例えば、プリンタ１４に設定変更を指示するテキストが含まれるファイルや、新しいバージョンの制御プログラム４４のプログラムファイルなどが、送信対象のファイルの例である。第１プログラム２４は、管理サーバ１１からファイルを受信した場合、Ｓ３４にて、フィルのダウンロードを内部仲介装置１３の第２プログラムに指示する第１指示コマンドを生成する。
【００８３】
外部仲介装置１２の第１プログラム２４は、第１指示コマンドの生成後、内部仲介装置１３からのＨＴＴＰリクエストを受信するまで待機する。
【００８４】
一方、内部仲介装置１３の第２プログラム３４は、予めメモリ３２に記憶された送信タイミングになったか否かを判断する（Ｓ３５）。送信タイミングは、例えば、１０秒間隔や１５秒間隔や、２０秒間隔など、数秒間隔から数十秒間隔に設定される。
【００８５】
内部仲介装置１３の第２プログラム３４は、送信タイミングになったと判断すると（Ｓ３５：Ｙｅｓ）、自己のＧＵＩＤを含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ３６）。外部仲介装置１２は、内部仲介装置１３からのＨＴＴＰリクエストに対するＨＴＴＰレスポンスに第１指示コマンドを含ませることにより、ファイアウォールを通じて第１指示コマンドを内部仲介装置１３に送信することができる。なお、ファイアウォールは、内部仲介装置１３からのＨＴＴＰリクエストに対するＨＴＴＰレスポンス以外は、外部仲介装置１２から内部仲介装置１３への送信を遮断する。そのため、内部仲介装置１３は、定期的にＨＴＴＰリクエストを外部仲介装置１２に送信している。ＨＴＴＰリクエストを定期的に送信するＳ３５及びＳ３６の処理は、セットアップの一例である。
【００８６】
外部仲介装置１２の第１プログラム２４は、内部仲介装置１３が送信したＨＴＴＰリクエストを受信する（Ｓ３６）。内部仲介装置１３が送信したＨＴＴＰリクエストは、指示要求の一例である。内部仲介装置１３が送信したＨＴＴＰリクエストを第１プログラム２４が受信するＳ３６の処理は、指示要求受信手段の一例である。
【００８７】
第１プログラム２４は、受信したＨＴＴＰリクエストに含まれるＧＵＩＤが、Ｓ３３で決定したＧＵＩＤと一致するか否かを判断する（Ｓ３７）。すなわち、第１プログラム２４は、ＨＴＴＰリクエストを送信した内部仲介装置１３が、Ｓ３４で生成した第１指示コマンドを送信すべき内部仲介装置１３であるか否かを判断する。
【００８８】
外部仲介装置１２の第１プログラム２４は、Ｓ３６で受信したＨＴＴＰリクエストに含まれるＧＵＩＤとＳ３３で決定したＧＵＩＤとが一致しないと判断すると（Ｓ３７：Ｎｏ）、第１指示コマンドを含まないＨＴＴＰレスポンスを送信する（Ｓ３８）。Ｓ３８で送信されるＨＴＴＰレスポンスは、Ｓ３６で送信されたＨＴＴＰリクエストを受信できたことを示す。
【００８９】
一方、外部仲介装置１２の第１プログラム２４は、Ｓ３６で受信したＨＴＴＰリクエストに含まれるＧＵＩＤとＳ３３で決定したＧＵＩＤとが一致すると判断すると（Ｓ３７：Ｙｅｓ）、第１指示コマンドを含むＨＴＴＰレスポンスを送信する（Ｓ３９）。第１指示コマンドを含むＨＴＴＰレスポンスを送信するＳ３９の処理は、指示コマンド送信手段の一例である。
【００９０】
内部仲介装置１３の第２プログラム３４は、外部仲介装置１２が送信したＨＴＴＰレスポンスを受信する（Ｓ３８、Ｓ３９）。第２プログラム３４は、受信したＨＴＴＰレスポンスに第１指示コマンドが含まれているか否かを判断する（Ｓ４０）。第２プログラム３４は、受信したＨＴＴＰレスポンスに第１指示コマンドが含まれていないと判断すると（Ｓ４０：Ｎｏ）、定期的なＨＴＴＰリクエストの送信を継続する。
【００９１】
一方、内部仲介装置１３の第２プログラム３４は、受信したＨＴＴＰレスポンスに第１指示コマンドが含まれていると判断すると（Ｓ４０：Ｙｅｓ）、第１指示コマンドを受信したことを示す通知（以下、受信通知とも記載する）を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ４１）。すなわち、第２プログラム３４は、第１指示コマンドを受信したことを外部仲介装置１２に通知する。上述のように、外部仲介装置１２の第１プログラム２４は、内部仲介装置１３が送信したＨＴＴＰリクエストのＨＴＴＰレスポンスとして、第１指示コマンドを返信する。したがって、受信通知を受信しなければ、第１指示コマンドに対応する応答（Ｓ５５）を受信するまで、内部仲介装置１３が第１指示コマンドを受信できたか否かを判断することができない。そうすると、第１指示コマンドに対応する応答を受信するまでの時間が、第１指示コマンドを再送信するまでの時間として決められた所定の時間を超え、内部仲介装置１３が第１指示コマンドを受信しているにも拘わらず、外部仲介装置１２が第１指示コマンドを再送してしまうことが生じ得る。内部仲介装置１３の第２プログラム３４は、第１指示コマンドに対応する応答（Ｓ５５）を送信する前に、受信通知を外部仲介装置１２に送信する。したがって、内部仲介装置１３が第１指示コマンドを受信しているにも拘わらず、外部仲介装置１２が第１指示コマンドを再送してしまうことが防止される。
【００９２】
外部仲介装置１２の第１プログラム２４は、受信通知を含むＨＴＴＰリクエストを受信する（Ｓ４１）。フローチャートには示されていないが、第１プログラム２４は、受信通知を含むＨＴＴＰリクエストを所定の時間内に受信しないと判断すると、内部仲介装置１３から定期的に送信されるＨＴＴＰリクエストのＨＴＴＰレスポンスとして、第１指示コマンドを内部仲介装置１３に再送する。また、第１プログラム２４は、受信通知を含むＨＴＴＰリクエストを受信したことに応じて、受信通知を受信したことを示すＨＴＴＰレスポンスを内部仲介装置１３に返信する。
【００９３】
内部仲介装置１３の第２プログラム３４は、Ｓ４１の処理の実行後、プリンタ１４に送信する第３指示コマンドを生成する（Ｓ４２）。第３指示コマンドは、プリンタ１４に入力可能なコマンドであって、第１指示コマンドが示す指示の内容に応じたコマンドである。
【００９４】
図１には示されていないが、内部仲介装置１３のメモリ３２のデータ記憶領域３９は、第１指示コマンドと第３指示コマンドとの対応が示された第２コマンドリストを記憶する。内部仲介装置１３の第２プログラム３４は、Ｓ３９で受信した第１指示コマンドに対応する第３指示コマンドを第２コマンドリストから決定し、第３指示コマンドを生成する（Ｓ４２）。
【００９５】
また、図４のフローチャートには示されていないが、Ｓ３９で受信した第１指示コマンドがファイルのダウンロードを示すコマンドである場合、内部仲介装置１３の第２プログラム３４は、ファイルの送信要求を含むＨＴＴＰリクエストを外部仲介装置１２に送信する。当該ＨＴＴＰリクエストを受信した外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるコマンドに応じて、ファイルを含むＨＴＴＰレスポンスを内部仲介装置１３に送信する。内部仲介装置１３の第２プログラム３４は、ＨＴＴＰレスポンスに含まれるファイルを受信する。第２プログラム３４は、受信したファイルの設定値やプログラムを含む第３指示コマンドを生成する。なお、ファイルは、第１指示コマンドに含めて送信されてもよい。この場合、第２プログラム３４から第１プログラム２４へ、ファイルの送信要求は送信されない。
【００９６】
なお、内部仲介装置１３の第２プログラム３４は、Ｓ３９で受信した第１指示コマンドが示す指示が、設定情報の変更やファームバージョンの更新であるか、設定情報の取得であるかを、第１指示コマンドに付帯された設定情報要求フラグで判断してもよい。例えば、外部仲介装置１２の第１プログラム２４は、Ｓ３１で受信した第１指示コマンドが設定情報を要求する指示である場合、「ＯＮ」に設定された設定情報要求フラグを第２指示コマンドに付帯させる。
【００９７】
内部仲介装置１３の第２プログラム３４は、図５に示されるように、第３指示コマンドの生成後、第１指示コマンドに含まれるデバイスＩＤに対して、生成した第３指示コマンドを送信する（Ｓ５１）。
【００９８】
内部仲介装置１３が送信した第３指示コマンドは、プリンタ１４によって受信される（Ｓ５１）。プリンタ１４の制御プログラム４４は、第３指示コマンドが示す指示を実行する（Ｓ５２）。例えば、第３指示コマンドが設定情報（図２）の「フォント」や「フォントサイズ」や「濃度」などの各項目についてプリンタ１４の設定を変更する旨の指示である場合、制御プログラム４４は、「フォント」や「フォントサイズ」や「濃度」などの設定値を、第３指示コマンドに含まれる設定値で変更する。また、第３指示コマンドが、ファームバージョンを更新する旨の指示である場合、制御プログラム４４は、第３指示コマンドに含まれるプログラムで自己を更新する。また、第３指示コマンドが、設定情報を返信することを要求する指示である場合、制御プログラム４４は、設定情報を返信する（Ｓ５３）。
【００９９】
プリンタ１４の制御プログラム４４は、第３指示コマンドが示す指示を実行したことを示す応答を内部仲介装置１３に送信する（Ｓ５３）。プリンタ１４が送信した応答は、内部仲介装置１３によって受信される。
【０１００】
内部仲介装置１３の第２プログラム３４は、プリンタ１４が送信した応答を受信する（Ｓ５３）。第２プログラム３４は、プリンタ１４が送信した応答を受信したことにより、設定情報を返信することを要求するコマンドをプリンタ１４に送信する（Ｓ５４）。設定情報は、設定値やファームバージョンなどである。なお、Ｓ５１で送信した第３指示コマンドが、プリンタ１４の設定情報を返信することを要求する指示である場合、Ｓ５４、Ｓ５５の処理がスキップされる。
【０１０１】
プリンタ１４の制御プログラム４４は、設定情報を返信することを要求するコマンドを受信すると（Ｓ５４）、設定情報を返信する（Ｓ５５）。プリンタ１４が送信した設定情報は、内部仲介装置１３によって受信される（Ｓ５５）。プリンタ１４が送信する設定情報は、第３指示コマンドが指示する内容をＳ５２でプリンタ１４の制御プログラム４４が実行した後の設定情報である。
【０１０２】
内部仲介装置１３の第２プログラム３４は、設定情報を受信すると、ＨＴＴＰリクエストを定期的に送信する送信タイミングになるまで待機する（Ｓ５６：Ｎｏ）。第２プログラム３４は、送信タイミングになったと判断すると（Ｓ５６：Ｙｅｓ）、Ｓ５２で変更された後の設定情報を含むＨＴＴＰリクエストを、Ｓ３９で受信した第１指示コマンドの応答として、外部仲介装置１２に送信する（Ｓ５７）。
【０１０３】
定期的に送信するＨＴＴＰリクエストに設定情報を含ませることにより、定期的に送信するＨＴＴＰリクエストとは別に設定情報を送信する場合に比べ、内部仲介装置１３と外部仲介装置１２との間の通信回数を低減することができる。なお、第２プログラム３４は、定期的に送信するＨＴＴＰリクエストとは別のＨＴＴＰリクエストに、変更後の設定情報を含ませて外部仲介装置１２に送信してもよい。その場合、定期的に送信するＨＴＴＰリクエストに設定情報を含ませる場合よりも、設定情報を迅速に外部仲介装置１２に送信することができる。
【０１０４】
外部仲介装置１２の第１プログラム２４は、変更後の設定情報を、第１指示コマンドの応答として受信する（Ｓ５７）。第１プログラム２４は、設定情報を受信すると、対応データベース（図２）の設定値やファームバージョンなどの値を、受信した設定情報で上書きする（Ｓ５８）。外部仲介装置１２が設定情報を受信するＳ５７の処理は、応答受信手段の一例である。
【０１０５】
なお、フローチャートには示されていないが、外部仲介装置１２の第１プログラム２４は、設定情報を含むＨＴＴＰリクエストを受信した後（Ｓ５７）、当該ＨＴＴＰリクエストを受信したことを示す旨を、当該ＨＴＴＰリクエストのＨＴＴＰレスポンスとして、内部仲介装置１３に送信する。
【０１０６】
次に、外部仲介装置１２の第１プログラム２４は、第２指示コマンドが示す指示をプリンタ１４が実行したことと、Ｓ５７で受信した設定情報とを含む設定完了情報を生成し、生成した設定完了情報をＳ３１で受信した第２指示コマンドの応答として、管理サーバ１１に送信する（Ｓ５９）。設定完了情報は、例えば、管理サーバ１１に入力可能なコマンドであって、設定情報を付帯情報として有するコマンドである。設定完了情報を管理サーバ１１に送信するＳ５９の処理は、応答送信手段の一例である。
【０１０７】
なお、外部仲介装置１２の第１プログラム２４は、設定完了情報とは別に、Ｓ５７で受信した設定情報を管理サーバ１１に送信してもよい。すなわち、設定を行った旨と、設定後の設定情報とが、別個に管理サーバ１１に送信されてもよい。
【０１０８】
管理サーバ１１は、設定完了情報をインターネット１５を通じて受信すると（Ｓ５９）、設定完了情報を受信したことを示す受信応答を外部仲介装置１２に送信する（Ｓ６０）。外部仲介装置１２の第１プログラム２４は、管理サーバ１１が送信した受信応答を受信し（Ｓ６０）、処理を終了する。
【０１０９】
次に、上述の処理を行う第２プログラム３４を内部仲介装置１３にインストールする際に第１プログラム２４が実行する処理について、図６及び図２（Ａ）を参照して説明する。具体的には、第１プログラム２４が、第２プログラム３４による外部仲介装置１２へのＨＴＴＰリクエストの送信における通信設定を容易にし、かつ、内部仲介装置１３に付与されるＧＵＩＤや内部仲介装置１３が接続するローカルネットワーク１６のロケーション情報を対応データベースに登録する処理について説明する。なお、内部仲介装置１３は、第２プログラム３４がインストールされるまでは情報処理装置であり、第２プログラム３４がインストールされた後（Ｓ８４）、内部仲介装置１３として機能する。しかしながら、以下では、「内部仲介装置１３」として統一して説明する。
【０１１０】
外部仲介装置１２のメモリ２２のデータ記憶領域２９は、第２プログラム３４のインストーラのダウンロードの要求を受け付けるインストーラ受付画面データを記憶する。内部仲介装置１３の担当者は、ユーザＩ／Ｆ３６を操作してブラウザを実行させる。当該ブラウザは、インストーラ受付画面データを第１プログラム２４から受信し、内部仲介装置１３のディスプレイ４０に表示させる。担当者は、インストーラ受付画面の表示内容にしたがって、ゲストＩＤなどの認証ＩＤを入力し、インストーラのダウンロードを指示する。具体的には、内部仲介装置１３は、認証ＩＤ及びインストーラのダウンロードの要求を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ７１）。インストーラのダウンロードの要求は、インストーラ要求の一例である。
【０１１１】
一方、外部仲介装置１２の第１プログラム２４は、認証ＩＤ及びインストーラのダウンロードの要求を含むＨＴＴＰリクエストを受信する（Ｓ７１）。インストーラのダウンロードの要求を含むＨＴＴＰリクエストを受信するＳ７１の処理は、インストーラ要求受信手段の一例である。
【０１１２】
次に、外部仲介装置１２の第１プログラム２４は、認証ＯＫか否かを判断する（Ｓ７２）。具体的には、受信したＨＴＴＰリクエストに含まれる認証ＩＤが、メモリ２２のデータ記憶領域２９に記憶された認証ＩＤと一致するか否かを判断する。第１プログラム２４は、受信したＨＴＴＰリクエストに含まれる認証ＩＤがメモリ２２に記憶された認証ＩＤと一致せず、認証不可と判断すると（Ｓ７２：Ｎｏ）、認証不可の通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ７３）。一方、第１プログラム２４は、受信したＨＴＴＰリクエストに含まれる認証ＩＤがメモリ２２に記憶された認証ＩＤと一致し、認証ＯＫと判断すると（Ｓ７２：Ｙｅｓ）、ロケーション情報の送信の要求を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ７４）。
【０１１３】
フローチャートには示されていないが、内部仲介装置１３のブラウザは、ロケーション情報の送信の要求を含むＨＴＴＰレスポンスを受信すると（Ｓ７４）、当該ＨＴＴＰレスポンスに含まれる画面データが示す画面であって、ロケーション情報の入力を受け付ける画面を内部仲介装置１３のディスプレイ４０に表示させる。担当者は、当該画面において、ロケーション情報を入力する。ブラウザは、入力されたロケーション情報を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ７５）。
【０１１４】
外部仲介装置１２の第１プログラム２４は、ロケーション情報を含むＨＴＴＰリクエストを受信すると（Ｓ７５）、ＧＵＩＤを生成し、生成したＧＵＩＤと、ＨＴＴＰリクエストに含まれるロケーション情報とを含むレコードを対応データベースに登録する（Ｓ７６）。図２（Ａ）に示される対応データベースは、後述のＳ７８でインストーラを送信した後の対応データベースを示す。対応データベースは、項目「ＧＵＩＤ」と、項目「ロケーション情報」と、項目「通信開始情報」と、項目「インストーラＤＬ日時」と、項目「インストール日時」とを有する。ＧＵＩＤを生成するＳ７６の処理は、生成手段の一例である。生成したＧＵＩＤを対応データベースに登録するＳ７６の処理は、第１登録手段の一例である。
【０１１５】
項目「ＧＵＩＤ」は、第１プログラム２４がＳ７６で生成したＧＵＩＤが登録される。項目「ロケーション情報」は、Ｓ７５で受信したＨＴＴＰリクエストに含まれるロケーション情報が登録される。項目「通信開始情報」は、「ペンディング」または「レディ」が登録される。第１プログラム２４は、レコードの生成時（Ｓ７６）において項目「通信開始情報」に「ペンディング」を登録し、後述のＳ９０で項目「通信開始情報」に「レディ」を登録する。項目「インストーラＤＬ日時」は、Ｓ７８でインストーラが内部仲介装置１３に送信された日時を示す。項目「インストール日時」は、Ｓ８３で第２プログラム３４のインストール許可通知が内部仲介装置１３に送信された日時を示す。
【０１１６】
外部仲介装置１２の第１プログラム２４は、Ｓ７６の実行後、インストーラ及び第２プログラム３４のプログラムファイル、ロケーション情報、及び通信情報を含むセット情報を生成する（Ｓ７７）。通信情報は、第１プログラム２４のＵＲＬや、外部仲介装置１２のグローバルＩＰアドレスや、第２プログラム３４に対する通信設定を含む。通信設定は、例えば、通信ポートの指定や、ＨＴＴＰやＨＴＴＰＳなどの通信プロトコルの指定や、通信を確立できない場合に通信確立を試みるリトライを実行する上限回数を示すリトライ回数の指定や、リトライを行う間隔を示すリトライ間隔の指定や、通信確立が行われる時間の上限を示すタイムアウト時間の指定などを示す情報である。通信設定は、例えば、メモリ２２のデータ記憶領域２９に予め記憶される。第１プログラム２４のＵＲＬや外部仲介装置１２のグローバルＩＰアドレスは、アドレスの一例である。
【０１１７】
外部仲介装置１２の第１プログラム２４は、例えば、ＵＲＬや外部仲介装置１２のグローバルＩＰアドレスをＯＳ３３から取得し、第２プログラム３４及びインストーラのプログラムファイル、ロケーション情報、通信設定、及び生成したＧＵＩＤをメモリ２２から読み出して取得し、取得したＵＲＬやグローバルＩＰアドレス、プログラムファイル、ロケーション情報、通信情報、及びＧＵＩＤを含むセット情報をＨＴＴＰレスポンスに含めて内部仲介装置１３に送信する（Ｓ７８）。ＵＲＬや外部仲介装置１２のグローバルＩＰアドレスをＯＳ３３から取得するＳ７６の処理は、取得手段の一例である。セット情報を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ７８の処理は、セット情報送信手段の一例である。インストーラのプログラムファイルは、インストーラ情報の一例である。
【０１１８】
フローチャートには示されていないが、第１プログラム２４は、Ｓ７８を実行した日時を、項目「インストーラＤＬ日時」に登録する。管理者は、ディスプレイ３０に表示された対応データベースを確認することにより、インストーラがダウンロードされた支店及び日時を確認することができる。インストーラＤＬ日時は、セット情報を送信したことを示すセット情報送信済情報の一例である。
【０１１９】
また、フローチャートには示されていないが、内部仲介装置１３のブラウザは、セット情報を含むＨＴＴＰレスポンスを受信すると（Ｓ７８）、受信したセット情報を内部仲介装置１３のメモリ３２に記憶させる。メモリ３２に記憶されたセット情報に含まれるインストーラは、担当者がユーザＩ／Ｆ３６を用いて内部仲介装置１３に入力した指示によって起動される（Ｓ７９）。起動されたインストーラは、セット情報に含まれるＧＵＩＤ及びロケーション情報を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ８０）。
【０１２０】
外部仲介装置１２の第１プログラム２４は、ＧＵＩＤ及びロケーション情報を含むＨＴＴＰリクエストを受信すると（Ｓ８０）、ＨＴＴＰリクエストに含まれるＧＵＩＤと一致するＧＵＩＤ及びロケーション情報を含むレコードが対応データベース（図２（Ａ））にあるか否かを判断する（Ｓ８１）。すなわち、Ｓ８１では、第２プログラム３４のインストールを許可するか否かが判断される。ＧＵＩＤ及びロケーション情報を含むＨＴＴＰリクエストは、許可要求の一例である。ＧＵＩＤ及びロケーション情報を含むＨＴＴＰリクエストを受信するＳ８０の処理は、許可要求受信手段の一例である。ＨＴＴＰリクエストに含まれるＧＵＩＤと一致するＧＵＩＤ及びロケーション情報を含むレコードが対応データベースにあるか否かを判断するＳ８１の処理は、第２登録判断手段の一例である。
【０１２１】
外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を含むレコードが対応データベースにないと判断すると（Ｓ８１：Ｎｏ）、第２プログラム３４のインストールの不許可を示すインストール不許可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ８２）。フローチャートには示されていないが、内部仲介装置１３のインストーラは、後述のインストール許可通知を受信したことに応じて、第２プログラム３４を内部仲介装置１３にインストールする。すなわち、インストール不許可通知を受信したことによっては、第２プログラム３４は内部仲介装置１３にインストールされない。第１プログラム２４は、インストール不許可通知を送信することにより、Ｓ７６で生成したＧＵＩＤ及び対応データベースに登録していないロケーション情報を用いて内部仲介装置１３に第２プログラム３４がインストールされることを防止する。インストール不許可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ８２の処理は、不許可通知送信手段の一例である。
【０１２２】
外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を含むレコードが対応データベースにあると判断すると（Ｓ８１：Ｙｅｓ）、第２プログラム３４のインストールの許可を示すインストール許可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ８３）。インストール許可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ８３の処理は、許可通知送信手段の一例である。
【０１２３】
フローチャートには示されていないが、第１プログラム２４は、インストール許可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信したことに応じて、対応データベースの項目「インストール日時」に、インストール許可通知を送信した日時を登録する。管理者は、ディスプレイ３０に表示された対応データベースを確認することにより、第２プログラム３４がインストールされた支店と、第２プログラム３４が未だインストールされていない支店とを確認することができる。
【０１２４】
内部仲介装置１３のインストーラは、インストール許可通知を含むＨＴＴＰレスポンスを受信する（Ｓ８３）。インストーラは、インストール許可通知を受信したことに応じて、第２プログラム３４を内部仲介装置１３にインストールする（Ｓ８４）。
【０１２５】
なお、外部仲介装置１２の第１プログラム２４は、Ｓ８８において、内部仲介装置１３にインストールされた第２プログラム３４を対応データベース（図２（Ａ））に登録するか否かを判断するので、Ｓ８０からＳ８３の処理は、省略されてもよい。すなわち、Ｓ７９で起動されたインストーラは、第１プログラム２４の許可を得ることなく、第２プログラム２４を内部仲介装置１３にインストールする。内部仲介装置１３にインストールされた第２プログラム３４は、対応データベースに登録することを第１プログラム２４に要求する（Ｓ８５、Ｓ８７）。以下、詳しく説明する。
【０１２６】
内部仲介装置１３にインストールされた第２プログラム３４は、初回起動通知を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ８５）。すなわち、初回起動通知は、第２プログラム３４が内部仲介装置１３にインストールされたことを示す通知である。
【０１２７】
外部仲介装置１２の第１プログラム２４は、初回起動通知を含むＨＴＴＰリクエストを受信すると（Ｓ８５）、ＧＵＩＤを送信することを要求する送信要求を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ８６）。第１プログラム２４が初回起動通知を含むＨＴＴＰリクエストを受信するＳ８５の処理は、起動通知受信手段の一例である。ＧＵＩＤを送信することを要求する送信要求を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ８６の処理は、装置ＩＤ要求手段の一例である。
【０１２８】
内部仲介装置１３の第２プログラム３４は、ＧＵＩＤの送信要求を含むＨＴＴＰレスポンスを受信すると（Ｓ８６）、メモリ３２に記憶されたＧＵＩＤと、対応データベースに登録することを要求する登録要求を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ８７）。
【０１２９】
外部仲介装置１２の第１プログラム２４は、ＧＵＩＤ及び登録要求を含むＨＴＴＰリクエストを受信する（Ｓ８７）。第１プログラム２４がＧＵＩＤ及び登録要求を含むＨＴＴＰリクエストを受信するＳ８７の処理は、登録要求受信手段の一例である。
【０１３０】
次に、外部仲介装置１２の第１プログラム２４は、登録を許可するか否かを判断する（Ｓ８８）。詳しく説明すると、まず、第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤが対応データベース（図２（Ａ））にあるか否かを判断する。すなわち、第１プログラム２４は、Ｓ７６で生成したＧＵＩＤを用いて内部仲介装置１３にインストールされた第２プログラム３４からの登録要求であるか否かを判断する。第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤが対応データベースにあると判断すると、さらに、当該ＧＵＩＤを含むレコードの項目「通信開始情報」が「ペンディング」であるか「レディ」であるかを判断する。すなわち、第１プログラム２４は、ＨＴＴＰリクエストを送信した内部仲介装置１３が対応データベースに既に登録されているか否かをさらに判断する。第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤが対応データベースにないと判断し、或いは、項目「通信開始情報」が「レディ」であると判断すると（Ｓ８８：Ｎｏ）、登録を許可しないと決定し、登録不可通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ８９）。すなわち、同一のＧＵＩＤを用いて複数の第２プログラム３４が内部仲介装置１３にインストールされることが防止される。第１プログラム２４が登録を許可するか否かを判断するＳ８８の処理は、第１登録判断手段の一例である。
【０１３１】
一方、外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤが対応データベースにあり、かつ、項目「通信開始情報」が「ペンディング」であると判断すると（Ｓ８８：Ｙｅｓ）、登録を許可すると決定し、対応データベースの項目「通信開始情報」を「ペンディング」から「レディ」に変更する（Ｓ９０）。
【０１３２】
なお、上述のように、Ｓ８０からＳ８３の処理が省略され、第１プログラム２４の許可を得ずに第２プログラム３４が内部仲介装置１３にインストールされた場合は、Ｓ８７において、ＧＵＩＤ及び登録要求に加え、メモリ３２に記憶されたロケーション情報をさらに含むＨＴＴＰリクエストが外部仲介装置１２に送信される（Ｓ３７）。そして、外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーションが対応データベース登録されたＧＵＩＤ及びロケーション情報と一致し、かつ、項目「通信開始情報」が「ペンディング」であると判断すると（Ｓ８８：Ｙｅｓ）、登録を許可すると決定し、対応データベースの項目「通信開始情報」を「ペンディング」から「レディ」に変更する（Ｓ９０）。
【０１３３】
Ｓ９０の処理の実行後、外部仲介装置１２の第１プログラム２４は、ローカルネットワーク１６に接続されたプリンタ１４の探索を指示するデバイス探索指示と、定期的なＨＴＴＰリクエストの送信を開始することを示す送信開始指示を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ９１）。第１プログラム２４が対応データベースの項目「通信開始情報」を「ペンディング」から「レディ」に変更するＳ９０の処理は、第２登録手段の一例である。第１プログラム２４がデバイス探索指示を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ９１の処理は、探索指示送信手段及び通信開始指示送信手段の一例である。
【０１３４】
内部仲介装置１３の第２プログラム３４は、Ｓ９１のＨＴＴＰレスポンスを受信したことに応じて、デバイス探索処理を実行する（Ｓ９２）。具体的には、デバイスＩＤを返信することを要求するコマンドをローカルネットワーク１６にブロードキャストする。すなわち、図３に示されるＳ１１の処理が実行され、プリンタ１４が探索される。
【０１３５】
また、内部仲介装置１３の第２プログラム３４は、Ｓ９１のＨＴＴＰレスポンスを受信したことに応じて、定期的なＨＴＴＰリクエストの送信を開始する。すなわち、外部仲介装置１２の第１プログラム２４と内部仲介装置１３の第２プログラム３４との間で、定期的な通信が開始される。
【０１３６】
なお、Ｓ９２のデバイス探索処理は、Ｓ８４で第２プログラム３４が内部仲介装置１３にインストールされたことに応じて、第２プログラム３４が実行してもよい。第２プログラム３４は、Ｓ８５で初回起動通知を含むリクエストを送信したことに応じて、或いは当該リクエストを送信する前に、Ｓ９２の探索処理を実行する。その場合、第２プログラム３４は、Ｓ８７において、登録要求、及び、プリンタ１４の登録を第１プログラム２４に要求するデバイス登録要求を含むリクエストを外部仲介装置１２に送信する。
【０１３７】
また、外部仲介装置１２の第１プログラム２４は、Ｓ９０で対応データベースの項目「通信開始情報」を「ペンディング」から「レディ」に変更して内部仲介装置１３の第２プログラム３４を対応データベースに登録したことに応じて、対応データベースに登録したことを示すトークンなどの認証情報を内部仲介装置１３の第２プログラム３４に送信してもよい。当該認証情報は、例えば、Ｓ９１のレスポンスに含まれて内部仲介装置１３に送信される。内部仲介装置１３の第２プログラム３４は、Ｓ９２の探索処理で取得したデバイスＩＤを外部仲介装置１２に送信してプリンタ１４の登録を外部仲介装置１２の第１プログラム２４に要求する際（Ｓ１４）、Ｓ１４で送信するリクエストに、取得したデバイスＩＤとともに、認証情報を含ませる。外部仲介装置１２の第１プログラム２４は、受信したリクエストに認証情報が含まれることに応じて、リクエストに含まれるデバイスＩＤを対応データベースに登録する。したがって、対応データベースに登録された第２プログラム３４に対してのみ、プリンタ１４が登録されることになる。すなわち、対応データベースに登録されていない第２プログラム３４に対してプリンタ１４が誤って対応データベースに登録されることが防止される。
【０１３８】
[作用効果]
本実施形態では、管理サーバ１１からの指示を、外部仲介装置１２の第１プログラム２４及び内部仲介装置１３の第２プログラム３４によって、プリンタ１４に入力する。したがって、インターネット１５に接続する機能を有さないプリンタ１４の管理を管理サーバ１１に行わせることができる。すなわち、インターネット１５に接続する機能を有さないプリンタ１４の管理を、ＭＤＭシステムを利用して行うことができる。
【０１３９】
また、本実施形態では、ＵＲＬやグローバルＩＰアドレスと通信設定とを含む通信情報と、第２プログラム３４及びインストーラのプログラムファイルとを含むセット情報が、内部仲介装置１３に送信される。したがって、担当者が通信設定を行うことなく、内部仲介装置１３にインストールされた第２プログラム３４と外部仲介装置１２の第１プログラム２４との間で通信を開始させることができる。その結果、通信設定に関する担当者の手間を省くことができる。
【０１４０】
また、本実施形態では、対応データベースに登録されたＧＵＩＤと一致するＧＵＩＤを用いて登録要求がされた内部仲介装置１３に対して、対応データベースの項目「通信開始情報」が「レディ」にされ、「レディ」にされたＧＵＩＤを有する内部仲介装置１３の第２プログラム３４に対して、デバイス探索指示や、定期的なＨＴＴＰリクエストの送信開始が指示される。したがって、対応データベースに登録されていない内部仲介装置１３に対して第１指示コマンドが送信されることが防止される。
【０１４１】
また、本実施形態では、対応データベースの項目「状態情報」に「管理中」が登録されたプリンタ１４、すなわち、対応データベースに登録されたプリンタ１４に対して、第３指示コマンドが入力される。したがって、対応データベースに登録されていないプリンタ１４に対して第３指示コマンドが入力されることが防止される。すなわち、管理者が意図しないプリンタ１４に誤って指示が入力されることが防止される。
【０１４２】
また、本実施形態では、対応データベースの項目「通信開始情報」が「レディ」である内部仲介装置１３の第２プログラム３４に対して、デバイス探索指示が送信される（Ｓ９２）。したがって、管理者や担当者がユーザＩ／Ｆ２６、３６を用いてデバイスＩＤを入力することなく、ローカルネットワーク１６に接続されたプリンタ１４のデバイスＩＤが対応データベースに登録される。その結果、デバイスＩＤを入力する管理者や担当者の手間を省くことができる。
【０１４３】
また、本実施形態では、対応データベースが有するＧＵＩＤを有する内部仲介装置１３の第２プログラム３４から送信されたデバイスＩＤのみが対応データベースに登録される（Ｓ１５、Ｓ１７）。したがって、対応データベースに登録されていない内部仲介装置１３の第２プログラム３４と接続されたプリンタ１４に第３指示コマンドが誤って送信されることが防止される。
【０１４４】
また、本実施形態では、対応データベースに登録されたＧＵＩＤと一致するＧＵＩＤを有する内部仲介装置１３の第２プログラム３４から登録要求を受けた場合に限り、対応データベースの項目「通信開始情報」が「レディ」にされる。したがって、対応データベースに登録されている内部仲介装置１３と外部仲介装置１２との間で、定期的な通信を行うことができる。
【０１４５】
また、本実施形態では、外部仲介装置１２のメモリ２２に記憶された対応データベースを、外部仲介装置１２のディスプレイ３０や内部仲介装置１３のディスプレイ４０や携帯端末等のディスプレイに表示させて、管理者や担当者が確認することができる。
【０１４６】
また、本実施形態では、対応データベースに登録されているＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を送信した内部仲介装置１３に対してのみ、第２プログラムのインストールが許可される（Ｓ８３）。したがって、誤ったＧＵＩＤ及びロケーション情報の組合せで第２プログラム３４が内部仲介装置１３にインストールされることが防止される。
【０１４７】
[変形例１]
上述の実施形態では、内部仲介装置１３において担当者がロケーション情報を入力し、担当者が入力したロケーション情報が外部仲介装置１２に送信され、対応データベースに登録される例を説明した。本変形例では、外部仲介装置１２において、管理者がロケーション情報を入力する例を説明する。なお、本変形例で説明する構成や処理以外の構成及び処理は、実施形態と同一である。
【０１４８】
外部仲介装置１２の第１プログラム２４は、ユーザＩ／Ｆ２６を用いた管理者の入力を受けたことに応じて、ロケーション情報の入力を受け付ける登録画面を外部仲介装置１２のディスプレイ３０に表示させる。そして、第１プログラム２４は、ユーザＩ／Ｆ２６を用いた管理者のロケーション情報の入力を受け付ける。第１プログラム２４がユーザＩ／Ｆ２６を用いたロケーション情報の入力を受け付ける処理は、受付手段の一例である。
【０１４９】
外部仲介装置１２の第１プログラム２４は、ロケーション情報の入力を受け付けると、受け付けたロケーション情報に対応するＧＵＩＤ及びキーを生成し、生成したＧＵＩＤ及びキーとロケーション情報とを含むレコードを生成し、図２（Ｃ）に示される対応データベースに登録する。なお、図２（Ｃ）では、キーの図示は省略されている。第１プログラム２４がロケーション情報に対応するＧＵＩＤを生成する処理は、生成手段の一例である。ロケーション情報及びＧＵＩＤを対応データベースに登録する処理は、第１登録手段の一例である。
【０１５０】
図２（Ｃ）に示される対応データベースは、図２（Ａ）に示される項目と同様の項目を有する。未登録の項目「インストーラＤＬ日時」は、インストーラが支店でダウンロードされていないことを示す。未登録の項目「インストール日時」は、第２プログラム３４が支店で内部仲介装置１３にインストールされていないことを示す。図示例では、Ａ支店でインストーラがダウンロードされておらず、Ｂ支店では、インストーラはダウンロードされたが、第２プログラム３４は内部仲介装置１３にインストールされていないことを示し、Ｃ支店では、インストーラがダウンロードされ、さらに、第２プログラム３４が内部仲介装置１３にインストールされたことを示す。
【０１５１】
第１プログラム２４は、生成したレコードを対応データベースに登録した後、内部仲介装置１３からのインストーラの送信を要求するＨＴＴＰリクエストを受信するまで待機する。一方、第１プログラム２４が生成したキーは、管理者によって、各内部仲介装置１３の各担当者にそれぞれ知らされる。管理者は、例えばキーを含むメールを各担当者にそれぞれ送信することにより、各担当者にキーをそれぞれ知らせる。なお、担当者ごと（支店ごと）にそれぞれ異なるキーが知らされる。管理者は、対応データベースが示すロケーション情報が示す支店の担当者に、当該ロケーション情報と対応するキーを知らせる。キーは、例えば、数字や文字、その他、外部仲介装置１２が識別可能なものであれば、どのようなものが用いられてもよい。
【０１５２】
キーを知らされた内部仲介装置１３の担当者は、実施形態と同様にして、インストーラのダウンロードの要求を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（図６、Ｓ７１）。但し、当該ＨＴＴＰリクエストには、ユーザＩ／Ｆ３６を用いて担当者が入力したキーが含まれる。
【０１５３】
外部仲介装置１２の第１プログラム２４は、キー及びインストーラのダウンロードの要求を含むＨＴＴＰリクエストを受信すると（Ｓ７１）、ＨＴＴＰリクエストに含まれるキーと一致するキーを有するレコードが対応データベースにあるか否かを判断する。第１プログラム２４は、ＨＴＴＰリクエストに含まれるキーと一致するキーを有するレコードが対応データベースにないと判断すると（Ｓ７２：Ｎｏ）、インストーラを送信しない旨を示す認証不可の通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ７３）。ＨＴＴＰリクエストに含まれるキーと一致するキーを有するレコードが対応データベースにあるか否かを判断する処理は、登録判断処理の一例である。認証不可の通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する処理は、セット情報を送信しないことに決定する決定手段の一例である。
【０１５４】
内部仲介装置１３のブラウザは、認証不可の通知を含むＨＴＴＰレスポンスを受信すると（Ｓ７３）、インストーラが送信されない旨を内部仲介装置１３のディスプレイ４０に表示させる。
【０１５５】
一方、外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるキーと一致するキーを有するレコードが対応データベースにあると判断すると（Ｓ７２：Ｙｅｓ）、セット情報を生成する（Ｓ７７）。但し、セット情報に含まれるＧＵＩＤは、ＨＴＴＰリクエストに含まれるキーと一致するキーを有するレコードに含まれるＧＵＩＤである。第１プログラム２４は、生成したセット情報を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ７８）。第１プログラム２４は、セット情報を内部仲介装置１３に送信したことに応じて、セット情報を送信した日時をインストーラＤＬ日時に登録する。
【０１５６】
その後、第１プログラム２４、インストーラ、及び内部仲介装置１３にインストールされた第２プログラム３４は、実施形態と同様にして、Ｓ７９からＳ９２までの処理を実行する。
【０１５７】
[変形例１の作用効果]
本変形例では、管理者は、対応データベースをディスプレイ３０に表示させて項目「インストーラＤＬ日時」を確認することにより、インストーラをダウンロードした支店と、インストーラを未だダウンロードしていない支店とを確認することができる。また、管理者は、対応データベースをディスプレイ３０に表示させて項目「インストール日時」を確認することにより、第２プログラム３４をインストールした支店と、第２プログラム３４を未だインストールしていない支店とを確認することができる。
【０１５８】
また、本変形例では、キー及びＧＵＩＤが一致しない場合、インストーラが内部仲介装置１３に送信されないので、管理者が意図しない内部仲介装置１３に誤ってセット情報が送信されることが防止される。
【０１５９】
また、本変形例では、ロケーション情報と対応させてＧＵＩＤが生成されるので、ロケーション情報とＧＵＩＤとが誤って対応されて対応データベースに登録されることを防止することができる。
【０１６０】
[変形例２]
上述の実施形態では、インストーラ及び第２プログラムのプログラムファイルを含むセット情報が内部仲介装置１３に送信される例を説明した。本変形例では、インストーラのプログラムファイルを含むセット情報が内部仲介装置１３に送信され、インストーラからの要求に応じて、第２プログラム３４のプログラムファイルが内部仲介装置１３に送信される例を、図７を参照して説明する。なお、実施形態と同一の処理については、実施形態と同一の符号を付して説明を省略する。
【０１６１】
外部仲介装置１２の第１プログラム２４は、実施形態と同様にして、Ｓ７１からＳ７８の処理を実行する。ただし、Ｓ７８で内部仲介装置１３に送信されるセット情報には、第２プログラム３４のプログラムファイルは含まれない。そして、Ｓ７９において、インストーラが内部仲介装置１３で起動される。起動されたインストーラは、ＧＵＩＤ、ロケーション情報、及び第２プログラム３４の送信を要求する送信要求を含むＨＴＴＰリクエストを外部仲介装置１２に送信する（Ｓ１０１）。
【０１６２】
外部仲介装置１２の第１プログラム２４は、インストーラが送信した送信要求を含むＨＴＴＰリクエストを受信すると（Ｓ１０１）、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を有するレコードが対応データベースにあるか否かを判断する（Ｓ１０２）。すなわち、第１プログラム２４は、第２プログラム３４を、ＨＴＴＰリクエストを送信した内部仲介装置１３に送信してもよいか否かを判断する。送信要求を含むＨＴＴＰリクエストを受信するＳ１０１の処理は、送信要求受信手段の一例である。Ｓ１０２の処理は、第２判断手段の一例である。
【０１６３】
外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を有するレコードが対応データベースにないと判断すると（Ｓ１０２：Ｎｏ）、第２プログラム３４を送信しないことを示す非送信通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ１０３）。したがって、対応データベースに登録されていないＧＵＩＤ及びロケーション情報を用いた第２プログラム３４の送信要求に対して第２プログラム３４が送信されることが防止される。非送信通知を含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ１０３の処理は、非送信通知送信手段の一例である。
【０１６４】
一方、外部仲介装置１２の第１プログラム２４は、ＨＴＴＰリクエストに含まれるＧＵＩＤ及びロケーション情報と一致するＧＵＩＤ及びロケーション情報を有するレコードが対応データベースにあると判断すると（Ｓ１０２：Ｙｅｓ）、第２プログラム３４のプログラムファイルを含むＨＴＴＰレスポンスを内部仲介装置１３に送信する（Ｓ１０４）。第２プログラム３４のプログラムファイルを含むＨＴＴＰレスポンスを内部仲介装置１３に送信するＳ１０４の処理は、仲介プログラム送信手段の一例である。
【０１６５】
内部仲介装置１３のインストーラは、ＨＴＴＰレスポンスに含まれる第２プログラム３４を内部仲介装置１３にインストールする（Ｓ１０５）。その後、内部仲介装置１３にインストールされた第２プログラム３４及び外部仲介装置１２の第１プログラム２４は、実施形態と同様に、Ｓ８５からＳ９２の処理を実行する。
【０１６６】
[変形例２の作用効果]
本変形例では、対応データベースに登録されたＧＵＩＤ及びロケーション情報と一致しないＧＵＩＤ及びロケーション情報を送信した内部仲介装置１３には、第２プログラム３４は送信されない。したがって、管理者が意図しない内部仲介装置１３に第２プログラム３４が誤ってインストールされることを防止することができる。
【０１６７】
[その他の変形例]
上述の実施形態では、管理者の指示を、管理サーバ１１を通じて外部仲介装置１２に入力する例を説明した。しかしながら、管理者の指示は、外部仲介装置１２に直接入力されてもよい。すなわち、管理サーバ１１が用いられなくてもよい。この場合、外部仲介装置１２が、プリンタ１４の管理を行う管理サーバとなる。管理者は、外部仲介装置１２のユーザＩ／Ｆ２６を用いて、デバイスＩＤと、当該デバイスＩＤが示すプリンタ１４に対する指示を示す指示情報とを外部仲介装置１２に入力する。外部仲介装置１２の第１プログラム２４は、管理者が入力したデバイスＩＤ及び指示情報を受け付ける。管理者が外部仲介装置１１に指示情報を直接入力することによっても、プリンタ１４の制御プログラム４４のファームバージョンを変更したり、設定情報を変更したりすることができる。
【０１６８】
また、上述の実施形態では、第２プログラム３４がインストールされる内部仲介装置１３からインストーラのダウンロードの要求を第１プログラム２４が受け付ける例を説明した。しかしながら、第１プログラム２４は、携帯端末やＰＣなど、内部仲介装置１３と別の情報処理装置からインストーラのダウンロードの要求を受け付けてもよい。当該別の情報処理装置のメモリにダウンロードされたインストーラを含むセット情報は、内部仲介装置１３に転送され、或いは、可搬記憶媒体を用いて内部仲介装置１３に入力される。
【０１６９】
また、上述の実施形態では、セット情報に、第２プログラム３４及びインストーラのプログラムファイルが含まれる例を説明した。しかしながら、インストーラのプログラムファイル及びダウンロード情報を含むセット情報に含まれて入れもよい。当該ダウンロード情報は、第２プログラム３４のプログラムファイルをダウンロードするための情報であり、ＵＲＬやダウンロードコードなどである。
【０１７０】
また、上述の実施形態では、内部仲介装置１３がＨＴＴＰリクエストを送信し、外部仲介装置１２がＨＴＴＰレスポンスを返信することにより、外部仲介装置１２から内部仲介装置１３へファイアウォールを通じて第１指示コマンドが送信される例を説明した。しかしながら、外部仲介装置１２から内部仲介装置１３へファイアウォールを通じて第１指示コマンドを送信可能であれば、他の通信プロトコルが用いられてもよい。例えば、外部仲介装置１２と内部仲介装置１３との間で、ＸＭＰＰｏｖｅｒＢＯＳＨにしたがった通信プロトコルが用いられてもよい。外部仲介装置１２から内部仲介装置１３へ、ＸＭＰＰｏｖｅｒＢＯＳＨのセッション開始リクエストを送信し、外部仲介装置１２がセッション開始レスポンスを返信することで成立したセッション内の通信により、外部仲介装置１２から内部仲介装置１３へファイアウォールを通じて第１指示コマンドを送信することができる。
【０１７１】
また、上述の実施形態では、プリンタ１４を管理するデバイスの例として説明した。しかしながら、管理するデバイスは、ＱＲコード（登録商標）リーダやバーコードリーダやハンドスキャナなどのスキャナや、携帯可能なミシンなどであってもよい。
【符号の説明】
【０１７２】
１０・・・管理システム
１１・・・管理サーバ
１２・・・外部仲介装置
１３・・・内部仲介装置
１４・・・プリンタ
２１・・・ＣＰＵ
２２・・・メモリ
２６・・・ユーザＩ／Ｆ
３０・・・ディスプレイ
２４・・・第１プログラム
３１・・・ＣＰＵ
３４・・・第２プログラム
３６・・・ユーザＩ／Ｆ
４０・・・ディスプレイ
【図１】
2019185519.tif 000003
【図２】
2019185519.tif 000004
【図３】
2019185519.tif 000005
【図４】
2019185519.tif 000006
【図５】
2019185519.tif 000007
【図６】
2019185519.tif 000008
【図７】
2019185519.tif 000009