(57)【要約】【課題】印刷装置と、制御機能を有する装置とが通信経路により通信する印刷制御システムについて、印刷装置が、通信経路を確立する装置のアドレスを管理することなく、対応する装置と通信経路を確立できるようにし、また、システムを、印刷装置と装置とが通信経路で通信する構成に対応させる。【解決手段】印刷制御システム１は、印刷制御データを送信する印刷制御サーバー１０Ａと、印刷制御データを送信し、通信経路の確立の要求を受信した場合、印刷制御サーバー１０Ａとゲートサーバー６０とのいずれかの装置との間で通信経路を確立させるゲートサーバー６０と、ゲートサーバー６０に通信経路の確立の要求を送信し、当該要求に応じてゲートサーバー６０と印刷制御サーバー１０Ａとのいずれかと通信経路を確立する印刷装置１２と、を備える。【選択図】図３
2015127877.tif 000002
【特許請求の範囲】
【請求項１】
印刷制御データを生成する第１印刷データ処理部、及び前記第１印刷データ処理部で生成された前記印刷制御データを送信する接続部を有する印刷制御装置と、
所定のサーバーアドレスに配設され、前記印刷制御データを生成する第２印刷データ処理部、前記第２印刷データ処理部で生成された前記印刷制御データを送信する通信接続部、前記印刷制御装置の装置アドレスを記憶するサーバー記憶部、及び通信経路の確立の要求を受信した場合に、前記サーバーアドレスもしくは前記サーバー記憶部に記憶された前記装置アドレスを送信する通信管理部を有するゲートサーバーと、
印刷を行う印刷部、前記サーバーアドレスを記憶する装置記憶部、前記装置記憶部が記憶する前記サーバーアドレスに前記通信経路の確立の要求を送信して当該要求に応じて受信した前記サーバーアドレスもしくは前記装置アドレスに基づいて前記通信経路を確立する通信制御部、前記通信制御部で確立された前記通信経路で前記印刷制御データを受信する通信部、及び前記通信部で受信した前記印刷制御データに基づいて前記印刷部を制御する印刷制御部を有する印刷装置と、
を備えることを特徴とする印刷制御システム。
【請求項２】
前記ゲートサーバーの前記通信管理部は、前記ゲートサーバーの負荷の状態、及び、前記印刷制御装置の負荷の状態を取得し、
取得された前記ゲートサーバーの負荷の状態及び前記印刷制御装置の負荷の状態に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する請求項１に記載の印刷制御システム。
【請求項３】
前記印刷制御装置は、複数の印刷装置と接続し、
前記ゲートサーバーの前記通信管理部は、前記印刷制御装置に接続される印刷装置の数を取得する請求項２に記載の印刷制御システム。
【請求項４】
前記ゲートサーバーは複数の印刷装置と接続し、
前記ゲートサーバーの前記通信管理部は、前記ゲートサーバーに接続される印刷装置の数を取得し、前記印刷制御装置に接続される印刷装置の数と前記ゲートサーバーに接続される印刷装置との数に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する請求項３に記載の印刷制御システム。
【請求項５】
前記印刷装置の前記通信制御部は、前記印刷装置に電源が投入されたときに、前記通信経路の確立の要求を送信する請求項１乃至４のいずれか１項に記載の印刷制御システム。
【請求項６】
前記通信経路は、非同期の双方向通信を行う通信経路である請求項１乃至５のいずれか１項に記載の印刷制御システム。
【請求項７】
印刷装置に予め記憶されたサーバーアドレスに基づいて前記印刷装置からゲートサーバーに通信経路の確立を要求し、
要求を受信した時、前記ゲートサーバーで前記サーバーアドレスもしくは印刷制御装置の装置アドレスのいずれかを送信するかを決定し、
決定された前記サーバーアドレスもしくは前記装置アドレスを前記印刷装置に送信し、
前記印刷制御装置で送信された前記サーバーアドレスもしくは前記装置アドレスに基づいて前記ゲートサーバーもしくは前記印刷制御装置と通信経路を確立することを特徴とする印刷制御方法。
【請求項８】
前記ゲートサーバーは、前記ゲートサーバーの負荷の状態、及び前記印刷制御装置の負荷の状態を取得し、
取得された前記ゲートサーバーの負荷の状態及び前記印刷制御装置の負荷の状態に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する請求項７に記載の印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置を備える印刷制御システム、及び、印刷制御方法に関する。
【背景技術】
【０００２】
従来、印刷制御装置の制御の下、印刷装置によって印刷媒体に印刷し、レシートを発行する印刷制御システムが知られている（例えば、特許文献１参照）。この種の印刷制御システムでは、印刷装置と、印刷装置を制御する制御機能を有する装置とが通信経路を確立し、通信経路により通信するものがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１０８０９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した印刷制御システムのように、印刷装置と、制御機能を有する装置とが通信経路により通信するシステムを構築する場合、印刷装置が、通信経路を確立する装置のアドレスを管理することなく、対応する装置と通信経路を確立できるようにし、例えば、印刷装置をシステムに導入する時や、通信経路の確立時、通信経路を確立する装置の変更があった場合等にアドレスを入力する等の作業を行わなくて済むようにしたいとするニーズがある。また、システムを、印刷装置と対応する装置とが通信経路で通信する構成に対応させる必要がある。
本発明は、上述した事情に鑑みてなされたものであり、印刷装置と、制御機能を有する装置とが通信経路により通信する印刷制御システムについて、印刷装置が、通信経路を確立する装置のアドレスを管理することなく、対応する装置と通信経路を確立できるようにし、また、システムを、印刷装置と装置とが通信経路で通信する構成に対応させることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の印刷制御システムは、印刷制御データを生成する第１印刷データ処理部、及び前記第１印刷データ処理部で生成された前記印刷制御データを送信する接続部を有する印刷制御装置と、所定のサーバーアドレスに配設され、前記印刷制御データを生成する第２印刷データ処理部、前記第２印刷データ処理部で生成された前記印刷制御データを送信する通信接続部、前記印刷制御装置の装置アドレスを記憶するサーバー記憶部、及び通信経路の確立の要求を受信した場合に、前記サーバーアドレスもしくは前記サーバー記憶部に記憶された前記装置アドレスを送信する通信管理部を有するゲートサーバーと、印刷を行う印刷部、前記サーバーアドレスを記憶する装置記憶部、前記装置記憶部が記憶する前記サーバーアドレスに前記通信経路の確立の要求を送信して当該要求に応じて受信した前記サーバーアドレスもしくは前記装置アドレスに基づいて前記通信経路を確立する通信制御部、前記通信制御部で確立された前記通信経路で前記印刷制御データを受信する通信部、及び前記通信部で受信した前記印刷制御データに基づいて前記印刷部を制御する印刷制御部を有する印刷装置と、を備えることを特徴とする。
本発明の構成によれば、印刷装置は、ゲートサーバーのアドレスを記憶する。ゲートサーバーは、印刷制御データを生成し、送信することにより印刷装置を制御する機能を有する。印刷装置は、装置と通信経路を確立する場合、ゲートサーバーに対して、通信経路の確立を要求する。ゲートサーバーは、ゲートサーバーのアドレス、もしくは、ゲートサーバーと同様に制御機能を有する印刷制御装置のアドレスを印刷装置に通知する。印刷装置は、当該通知に基づいて、ゲートサーバー、もしくは、印刷制御装置のいずれかと通信経路を確立し、以後は、確立した通信経路に対応する装置の制御で印刷を実行する。このように、印刷装置は、通信経路の確立に際し、ゲートサーバーにアクセスすれば、ゲートサーバーの機能により、通信経路を確立する装置のアドレスを取得でき、アドレスに基づいて通信経路を確立できるため、印刷装置は、ゲートサーバーのアドレスを記憶すればよく、制御機能を有する装置のアドレスを管理する必要がない。従って、ユーザーは、印刷装置をシステムに導入する時や、通信経路の確立時、通信経路を確立する装置の変更があった場合等にアドレスを入力する等の作業を行わなくてよい。
【０００６】
また、前記ゲートサーバーの前記通信管理部は、前記ゲートサーバーの負荷の状態、及び、前記印刷制御装置の負荷の状態を取得し、取得された前記ゲートサーバーの負荷の状態及び前記印刷制御装置の負荷の状態に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する。
本発明の構成によれば、ゲートサーバーは、印刷装置から通信経路の要求があった場合に、ゲートサーバー、及び、印刷制御装置のうち、加わっている負荷が小さい装置との間で、通信経路を確立させることができる。
【０００７】
また、前記印刷制御装置は、複数の印刷装置と接続し、前記ゲートサーバーの前記通信管理部は、前記印刷制御装置に接続される印刷装置の数を取得する。
印刷制御装置に接続される印刷装置の数は、印刷制御装置に加わる負荷を推測するのに有効な情報であり、本発明の構成によれば、ゲートサーバーは、印刷制御装置に接続される印刷装置の数に基づいて、印刷制御装置の負荷の状態を推測可能である。
【０００８】
また、前記ゲートサーバーは複数の印刷装置と接続し、前記ゲートサーバーの前記通信管理部は、前記ゲートサーバーに接続される印刷装置の数を取得し、前記印刷制御装置に接続される印刷装置の数と前記ゲートサーバーに接続される印刷装置との数に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する。
ここで、接続される印刷装置が少ない装置は、多い装置と比較して、加わる各種負荷（ＣＰＵの負荷、通信の負荷、その他の負荷等）が小さい蓋然性が高い。そして、本発明の構成によれば、ゲートサーバーは、加わる負荷の小さい装置と、印刷装置とを接続させることができる。
【０００９】
また、前記印刷装置の前記通信制御部は、前記印刷装置に電源が投入されたときに、前記通信経路の確立の要求を送信する。
本発明の構成によれば、印刷装置は、電源投入時に、ユーザーの作業を経ることなく、対応する装置のアドレスを取得して、対応する装置と通信経路を確立できる。
【００１０】
また、前記通信経路は、非同期の双方向通信を行う通信経路である。
本発明の構成によれば、ゲートサーバー、及び、印刷制御装置の各装置は、印刷装置に印刷させるトリガーが発生した場合に、印刷制御データを印刷装置に送信して印刷処理を実行させることができる。
【００１１】
また、本発明の印刷制御方法は、印刷装置に予め記憶されたサーバーアドレスに基づいて前記印刷装置からゲートサーバーに通信経路の確立を要求し、要求を受信した時、前記ゲートサーバーで前記サーバーアドレスもしくは印刷制御装置の装置アドレスのいずれかを送信するかを決定し、決定された前記サーバーアドレスもしくは前記装置アドレスを前記印刷装置に送信し、前記印刷制御装置で送信された前記サーバーアドレスもしくは前記装置アドレスに基づいて前記ゲートサーバーもしくは前記印刷制御装置と通信経路を確立することを特徴とする。
本発明の構成によれば、印刷装置は、通信経路の確立に際し、ゲートサーバーにアクセスすれば、ゲートサーバーの機能により、通信経路を確立する装置のアドレスを取得でき、アドレスに基づいて通信経路を確立できるため、印刷装置は、ゲートサーバーのアドレスを記憶すればよく、制御機能を有する装置のアドレスを管理する必要がない。従って、ユーザーは、印刷装置をシステムに導入する時や、通信経路の確立時、通信経路を確立する装置の変更があった場合等にアドレスを入力する等の作業を行わなくてよい。
【００１２】
また、前記ゲートサーバーは、前記ゲートサーバーの負荷の状態、及び前記印刷制御装置の負荷の状態を取得し、取得された前記ゲートサーバーの負荷の状態及び前記印刷制御装置の負荷の状態に基づいて送信するアドレスが前記サーバーアドレスであるか前記装置アドレスであるかを決定する。
本発明の構成によれば、ゲートサーバーは、印刷装置から通信経路の要求があった場合に、ゲートサーバー、及び、印刷制御装置のうち、加わっている負荷が小さい装置との間で、通信経路を確立させることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る印刷制御システムの構成を示す図。
【図２】制御サーバーと印刷装置との間で確立される通信経路を示す図。
【図３】印刷装置、制御サーバー、管理装置の機能的構成を示すブロック図。
【図４】印刷装置、制御サーバーの動作を示すフローチャート。
【図５】印刷装置、制御サーバーの動作を示すフローチャート。
【図６】管理装置、制御サーバーの動作を示すフローチャート。
【図７】管理装置が提供するユーザーインターフェースを示す図。
【図８】管理装置、制御サーバー、印刷装置の動作を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係る印刷制御システム１の構成を示す図である。
図１に示すように、印刷制御システム１は、制御サーバー１０を備え、制御サーバー１０にインターネット等のネットワークＧＮを介して複数の店舗システム１１と接続する。また、ネットワークＧＮには、複数の管理装置１４を接続する。
店舗システム１１は、スーパーマーケットや、コンビニエンスストア、デパート、飲食店等の店舗に用いるシステムである。店舗システム１１は、店舗に来店した顧客に対してレシートを発行する機能を備える。
店舗システム１１は、印刷媒体に印刷を行う印刷機能を有し、レシートを発行可能な１又は複数の印刷装置１２を備える。印刷装置１２は、店舗に構築されたローカルエリアネットワークＬＮに接続する。ローカルエリアネットワークＬＮには、ネットワークルーターや、モデム等の通信機器を含んで構成されたネットワーク通信制御装置１３が接続する。印刷装置１２は、ネットワーク通信制御装置１３を介して、ネットワークＧＮにアクセスする。
例えば、店舗システム１１Ａは、スーパーマーケットＳＭに用いるシステムである。スーパーマーケットＳＭには、複数のレジカウンターＲＣが設けられ、レジカウンターＲＣには、印刷装置１２が設けられる。店舗システム１１Ａの印刷装置１２は、ローカルエリアネットワークＬＮに接続し、ネットワーク通信制御装置１３を介して、ネットワークＧＮにアクセスする。
本実施形態に係る印刷制御システム１では、店舗システム１１の印刷装置１２が、制御サーバー１０との間で通信経路を確立し、制御サーバー１０と通信する。そして、印刷装置１２は、制御サーバー１０の制御に従って、印刷に係る処理を実行する。
管理装置１４は、後述するように１又は複数の店舗システム１１を管理する装置である。例えば、管理装置１４は、店舗を運営する企業の本社に設けられ、当該店舗を運営する企業のグループに属する複数の店舗に設けられた店舗システム１１を管理する。後述するように、管理装置１４は、管理する店舗システム１１の所定の印刷装置１２を制御して、当該所定の印刷装置１２に印刷を実行させることができる。
【００１５】
図２は、印刷制御システム１における制御サーバー１０と、印刷装置１２との間に確立される通信経路を示す図である。
図２に示すように、印刷制御システム１において、制御サーバー１０と、店舗システム１１の印刷装置１２との間には、ＷｅｂＳｏｃｋｅｔで通信を行うＷｅｂＳｏｃｋｅｔコネクションＣＴ（通信経路）が確立される。
なお、ＷｅｂＳｏｃｋｅｔは、非同期な双方向通信を可能とする通信規格の１つである。ＷｅｂＳｏｃｋｅｔでは、サーバーとクライアントがＷｅｂＳｏｃｋｅｔコネクションＣＴを確立した後は、データの送受信を、当該コネクションによりプロトコルを用いて行う。このため、データの送信が発生する度に、コネクションを確立する必要がない。
また、ＷｅｂＳｏｃｋｅｔコネクションＣＴは、当該コネクションで接続された印刷装置１２と、制御サーバー１０との間で、ＷｅｂＳｏｃｋｅｔのプロトコル、手続きに従ってデータを送受信する論理的な通信経路である。従って、印刷装置１２と、制御サーバー１０との間で、所定のハンドシェイクが行われ、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立した後は、印刷装置１２と、制御サーバー１０とは、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、非同期にデータを送受信できる。制御サーバー１０は、任意のタイミングでＷｅｂＳｏｃｋｅｔコネクションＣＴにより印刷装置１２にデータを送信でき、印刷装置１２は、任意のタイミングでＷｅｂＳｏｃｋｅｔコネクションＣＴにより制御サーバー１０にデータを送信できる。
また、ＷｅｂＳｏｃｋｅｔ通信は、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより印刷装置１２と、制御サーバー１０との間で行われる、ＷｅｂＳｏｃｋｅｔのプロトコル、手続きに従った非同期な双方向通信である。
ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立により、印刷装置１２、及び、制御サーバー１０は、非同期で、双方向通信できる。つまり、制御サーバー１０は、クライアントとしての印刷装置１２からリクエストを受けることなく、任意のタイミングで、ＷｅｂＳｏｃｋｅｔコネクションＣＴによりＷｅｂＳｏｃｋｅｔ通信で印刷装置１２にデータをプッシュ送信できる。同様に、印刷装置１２は、任意のタイミングで、ＷｅｂＳｏｃｋｅｔコネクションＣＴで制御サーバー１０に対してデータをプッシュ送信できる。
また、制御サーバー１０は、複数の管理装置１４と通信可能に接続する。後述するように、管理装置１４は、制御サーバー１０を介して、所定の印刷装置１２に印刷制御データを送信し、当該所定の印刷装置１２に印刷を実行させることができる。
【００１６】
本実施形態において、制御サーバー１０は、印刷装置１２をクライアントとする、クラウドシステムのクラウドサーバーである。すなわち、制御サーバー１０は、演算処理機能を有し、印刷装置１２の要求や、管理装置１４の要求、所定の条件の成立等をトリガーとして所定の演算処理を実行し、演算処理の結果に基づくデータを、ＷｅｂＳｏｃｋｅｔコネクションＣＴで印刷装置１２に送信する。
なお、図２では、制御サーバー１０を、１つのブロックによって表現するが、これは、制御サーバー１０が単一のサーバー装置により構成されることを意味するものではない。本実施形態では、制御サーバー１０は、複数のサーバー装置を含んで構成される。すなわち、制御サーバー１０は、後述する各種処理を実現可能な構成であれば、その形態を問わない。
また、本実施形態では、制御サーバー１０と、印刷装置１２との間で、ＷｅｂＳｏｃｋｅｔ通信を行う。しかしながら、これら装置が、ＷｅｂＳｏｃｋｅｔ通信に代えて、ＷｅｂＳｏｃｋｅｔ通信と同様な非同期な双方向通信を行う構成であってもよい。
【００１７】
このように、印刷制御システム１は、印刷機能を有する印刷装置１２を、複数台（例えば、１０００台）、ＷｅｂＳｏｃｋｅｔコネクションＣＴで、制御サーバー１０との間で通信可能に接続する。
このため、以下の効果を得ることができる。
すなわち、制御サーバー１０は、複数の店舗システム１１に接続された複数の印刷装置１２から受信したデータに基づく情報を収集し、管理、分析できる。このため、制御サーバー１０は、有益な情報を蓄積することができる。蓄積した情報は、いわゆるビッグデータとして利用可能である。
また、店舗システム１１の構築の簡易化、及び、低コスト化を図ることが可能となる。すなわち、印刷制御システム１では、印刷装置１２がＷｅｂＳｏｃｋｅｔコネクションＣＴにより制御サーバー１０に接続される。このため、制御サーバー１０が提供するサービスを用いて、制御サーバー１０の制御で、印刷装置１２に各種処理を実行させることが可能である。従って、店舗システム１１を構築する管理者は、店舗システム１１の構築に際し、印刷装置１２を所望の場所に設置し、印刷装置１２をネットワークＧＮに接続する、という簡易な作業を行えばよい。これにより、制御サーバー１０が提供するサービスを用いて、印刷装置１２に所望の処理、例えば、レシートの発行に係る処理を実行させることが可能となる。管理装置１４においても、構築の簡易化、及び、低コスト化を図ることができる。
特に、店舗システム１１を構築する管理者は、１又は複数の店舗システム１１を管理する管理装置１４に、印刷装置１２を制御する機能を有する必要がない。管理装置１４は、制御サーバー１０にアクセスし、制御サーバー１０が提供するサービスを用いることによって、制御サーバー１０に接続された印刷装置１２を制御できる。これにより、店舗システム１１の構築の簡易化、及び、低コスト化を図ることが可能となる。
また、制御サーバー１０に、異なる店舗システム１１の印刷装置１２がＷｅｂＳｏｃｋｅｔコネクションＣＴで接続されるため、制御サーバー１０は、複数の店舗システム１１に接続された複数の印刷装置１２を管理できる。また、制御サーバー１０は、複数の店舗システム１１に接続された複数の印刷装置１２を動作させることが可能となる。
【００１８】
図３は、本実施形態に係る印刷装置１２、制御サーバー１０、及び、管理装置１４の機能的構成を示すブロック図である。
図３に示すように、印刷装置１２は、通信制御部１５と、第１通信部１６と、印刷制御部１７と、印刷部１８と、設定制御部２３と、印刷装置記憶部１９（装置記憶部）と、第２通信部２４と、を備える。
通信制御部１５、第１通信部１６、印刷制御部１７、及び、設定制御部２３の機能については後述する。
印刷部１８は、印刷媒体に印刷する印刷機構、印刷媒体を搬送する搬送機構、印刷媒体を切断する切断機構等の印刷に係る機構、及び、各機構の制御に係る制御基板等を備える。
印刷装置記憶部１９は、不揮発性メモリーを備え、各種データを記憶する。印刷装置記憶部１９は、サーバーアドレス情報データ１９ａと、印刷装置識別情報データ１９ｂと、機能部管理データベース１９ｃと、を記憶するが、これらデータについては後述する。
第２通信部２４は、後述するゲートサーバー６０を含む外部機器と、ネットワークＧＮを介して、所定の通信規格で通信する。
以下の説明では、印刷制御部１７、及び、設定制御部２３を区別せずに表現する場合、これら機能ブロックを総称して「機能部」と表現する。
印刷装置１２は、印刷制御部１７と、設定制御部２３との２つの機能部を有する。
【００１９】
図３に示すように、制御サーバー１０は、印刷制御サーバー１０Ａ（印刷制御装置）と、ゲートサーバー６０と、を備える。制御サーバー１０は、複数の印刷制御サーバー１０Ａを備えてもよい。印刷制御サーバー１０Ａと、ゲートサーバー６０とは、ＬＡＮ等のネットワークを含んで構成されたサーバー間ネットワークＳＮを介して通信可能に接続される。
【００２０】
図３に示すように、印刷制御サーバー１０Ａは、第１通信管理部２５と、第１接続部２６（接続部）と、第１印刷データ処理部２７と、第１設定処理部３１と、第１記憶部２８と、第２接続部３０と、第３接続部２９と、を備える。
第１通信管理部２５、第１接続部２６、第１印刷データ処理部２７、及び、第１設定処理部３１の機能については、後述する。
第１記憶部２８は、不揮発性メモリーを備え、各種データを記憶する。第１記憶部２８は、コネクション管理データベース２８ａと、処理部管理データベース２８ｂと、設定情報データベース２８ｃと、を記憶するが、これについては後述する。
第２接続部３０は、第１通信管理部２５の制御に従って、管理装置１４との間で、ＨＴＴＰ通信を行う。すなわち、管理装置１４にウェブブラウザーがインストールされており、第２接続部３０は、管理装置１４との間でＨＴＴＰ通信をコネクションにより行う。
第３接続部２９は、サーバー間ネットワークＳＮを介して、所定の通信規格で、制御サーバー１０が備える他の装置と通信する。
以下の説明では、第１印刷データ処理部２７、及び、第１設定処理部３１を区別せずに表現する場合、これら機能ブロックを総称して「処理部」と表現する。制御サーバー１０は、第１印刷データ処理部２７と、第１設定処理部３１の２つの処理部を有する。
【００２１】
図３に示すように、ゲートサーバー６０は、第２通信管理部６１（通信管理部）と、第２印刷データ処理部６２と、第２設定処理部６３と、第２記憶部６４（サーバー記憶部）と、第１通信接続部６５（通信接続部）と、第２通信接続部６６と、第３通信接続部６７と、ネットワーク通信インターフェース６８とを備える。
第１通信接続部６５、第２印刷データ処理部６２、及び、第２設定処理部６３の機能は、印刷制御サーバー１０Ａが備える第１接続部２６、第１印刷データ処理部２７、及び、第１設定処理部３１の機能と同様であり、後に説明する。また、第２通信管理部６１の機能については後述する。
第２通信接続部６６は、第２通信管理部６１の制御に従って、管理装置１４との間で、ＨＴＴＰ通信を行う。
第３通信接続部６７は、第２通信管理部６１の制御に従って、サーバー間ネットワークＳＮを介して、所定の通信規格で、制御サーバー１０が備える他の装置と通信する。
第２記憶部６４は、第１記憶部２８と同様のデータを記憶するほか、制御サーバー管理データベース８０を記憶するが、これについては後述する。
ネットワーク通信インターフェース６８は、印刷装置１２を含む外部機器と、ネットワークＧＮを介して、所定の通信規格で通信する。
【００２２】
図３に示すように、管理装置１４は、管理装置制御部４０と、通信インターフェース４１と、表示部４２と、を備える。
管理装置制御部４０は、ＣＰＵ等を備え、管理装置１４を制御する。管理装置１４は、機能ブロックとして、ブラウザー実行部４０ａを備える。ブラウザー実行部４０ａは、ウェブブラウザーによって実現される機能ブロックである。
通信インターフェース４１は、管理装置制御部４０の制御に従って、印刷制御サーバー１０ＡとＨＴＴＰ通信を行う。
表示部４２は、液晶表示パネル等の表示パネルを備え、管理装置制御部４０の制御に従って、表示パネルに画像を表示する。
【００２３】
なお、図３では、印刷制御サーバー１０Ａと、印刷制御サーバー１０Ａに接続された１つの印刷装置１２との関係を示す。印刷制御サーバー１０Ａに、複数の印刷装置１２が接続される場合は、印刷制御サーバー１０Ａは、複数の印刷装置１２に対応して複数の第１接続部２６（ＷｅｂＳｏｃｋｅｔインターフェース）を備え、印刷装置１２との間でＷｅｂＳｏｃｋｅｔコネクションＣＴを確立し、印刷装置１２とＷｅｂＳｏｃｋｅｔコネクションＣＴでＷｅｂＳｏｃｋｅｔ通信する。
また、図３では、印刷制御サーバー１０Ａと、印刷制御サーバー１０Ａに接続された１つの管理装置１４との関係を示す。印刷制御サーバー１０Ａに、複数の管理装置１４が接続される場合は、印刷制御サーバー１０Ａは、複数の管理装置１４に対応して複数の第２接続部３０を備え、管理装置１４との間で通信する。
このことは、ゲートサーバー６０と、印刷装置１２及び管理装置１４との関係についても同様である。
【００２４】
次に、印刷装置１２の電源投入時における、印刷装置１２、ゲートサーバー６０、及び、印刷制御サーバー１０Ａの動作について説明する。
図４、５は、印刷装置１２に電源が投入された後の印刷装置１２、ゲートサーバー６０、及び、印刷制御サーバー１０Ａの動作を示すフローチャートである。（Ａ）は印刷装置１２の動作を示し、（Ｂ）はゲートサーバー６０の動作を示し、（Ｃ）は印刷制御サーバー１０Ａの動作を示す。
なお、図４、５のフローチャートの処理のトリガーは、電源投入時に限らない。例えば、印刷装置１２がネットワークＧＮに通信可能に接続された場合や、ユーザーから指示があった場合等であってもよい。
また、以下の説明では、印刷装置１２は、対応する店舗システム１１のローカルエリアネットワークＬＮに接続され、ネットワークＧＮにアクセス可能である。
【００２５】
また、以下の説明において、印刷装置１２が備える通信制御部１５、印刷制御部１７、設定制御部２３、印刷制御サーバー１０Ａが備える第１通信管理部２５、第１印刷データ処理部２７、第１設定処理部３１、及び、ゲートサーバー６０が備える第２通信管理部６１、第２印刷データ処理部６２、第２設定処理部６３の機能は、例えば、以下のようにして実現される。
これら機能ブロックは、オブジェクトである。オブジェクトは、オブジェクト指向プログラミングで生成されるインスタンス、すなわち、データ及びメソッドの集合として定義された機能ブロックである。そして、これら機能ブロックの機能は、機能ブロックに実装されたメソッドが呼び出されることによって実現される。
また例えば、これら機能ブロックの機能は、アプリケーションがＣＰＵ等のハードウェアによって読み出され実行されることによって、実現される。１つのアプリケーションにより１つの機能ブロックの機能が実現される構成であってもよい。また、１つのアプリケーションにより複数の機能ブロックの機能が実現される構成であってもよい。また、複数のアプリケーションにより１つの機能ブロックの機能が実現される構成であってもよい。
すなわち、機能ブロックは、機能をブロックとして表現したものであり、特定のアプリケーションや、ハードウェア等を意味するものではない。
【００２６】
図４（Ａ）に示すように、印刷装置１２の電源が投入されると（ステップＳＸ１）、印刷装置１２の通信制御部１５は、印刷装置記憶部１９にアクセスし（ステップＳＡ１）、印刷装置記憶部１９が記憶するサーバーアドレス情報データ１９ａを取得する（ステップＳＡ２）。サーバーアドレス情報データ１９ａは、ゲートサーバー６０のアドレスを示すデータである。
次いで、通信制御部１５は、第２通信部２４を制御して、ステップＳＡ２で取得したサーバーアドレス情報データ１９ａが示すアドレスのゲートサーバー６０にアクセスし、通信確立要求コマンドを送信する（ステップＳＡ３）。通信確立要求コマンドは、ゲートサーバー６０に対して、ゲートサーバー６０、又は、制御サーバー１０が備える印刷制御サーバーのいずれかとの間で、ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立を要求するコマンドである。
【００２７】
図４（Ｂ）に示すように、ゲートサーバー６０の第２通信管理部６１は、ネットワーク通信インターフェース６８を制御して、通信確立要求コマンドを受信する（ステップＳＢ１）。
次いで、第２通信管理部６１は、第２記憶部６４が記憶する制御サーバー管理データベース８０を参照する（ステップＳＢ２）。
制御サーバー管理データベース８０は、ゲートサーバー６０及び印刷制御サーバー１０Ａについて、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立している印刷装置１２の個数を示す情報が格納されたデータベースである。従って、第２通信管理部６１は、制御サーバー管理データベース８０を参照することにより、ゲートサーバー６０に接続された印刷装置１２の個数、及び、印刷制御サーバー１０Ａに接続された印刷装置１２の個数を取得できる。
第２通信管理部６１は、ゲートサーバー６０及び印刷制御サーバー１０Ａに接続された印刷装置１２の個数を管理し、当該管理に基づいて、制御サーバー管理データベース８０を更新する。
第２通信管理部６１は、ゲートサーバー６０に接続された印刷装置１２の個数を、後述するコネクション管理データベース２８ａの内容に基づいて管理する。
第２通信管理部６１は、印刷制御サーバー１０Ａに接続された印刷装置１２の個数を、例えば、以下のようにして管理する。例えば、第２通信管理部６１は、印刷制御サーバー１０Ａに対して、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立している印刷装置１２の個数を定期的に問い合わせる。そして、第２通信管理部６１は、問い合わせに対する応答に基づいて、印刷制御サーバー１０Ａに接続された印刷装置１２の個数を管理する。また、例えば、印刷制御サーバー１０Ａは、新たに印刷装置１２が接続された場合や、接続された印刷装置１２の接続が切断された場合に、ゲートサーバー６０に通知する。そして、第２通信管理部６１は、受けた通知に基づいて、印刷制御サーバー１０Ａに接続された印刷装置１２の個数を管理する。
【００２８】
次いで、第２通信管理部６１は、制御サーバー管理データベース８０の内容に基づいて、ゲートサーバー６０、及び、印刷制御サーバー１０Ａのうち、接続された印刷装置１２の個数が少ない方の装置を特定する（ステップＳＢ３）。
ここで、接続される印刷装置１２の個数が少ない装置は、個数が多い装置と比較して、加わる各種負荷（ＣＰＵの負荷、通信の負荷、その他の負荷等）が小さい蓋然性が高い。装置は、接続された印刷装置１２に対応する処理を実行する必要があるが、接続される印刷装置１２の個数が少ない分、実行する処理が少ないからである。
【００２９】
次のステップＳＢ４で、第２通信管理部６１は、以下の処理を実行する。
第２通信管理部６１は、ステップＳＢ３で特定した装置がゲートサーバー６０である場合、印刷装置１２に対して、ゲートサーバー６０のアドレスを示すサーバーアドレス情報を含むデータ（以下、「サーバーアドレス情報データ」という。）を送信する。後述するように、この場合、ゲートサーバー６０と印刷装置１２との間でＷｅｂＳｏｃｋｅｔコネクションＣＴが確立され、印刷装置１２は、ゲートサーバー６０の制御に従って印刷処理を含む処理を実行する。なお、ステップＳＢ３で特定した装置がゲートサーバー６０である場合、サーバーアドレス情報データに対応するデータ、例えば、ゲートサーバー６０とＷｅｂＳｏｃｋｅｔコネクションＣＴを確立することを指示するデータ等を送信してもよい。
一方、第２通信管理部６１は、ステップＳＢ３で特定した装置が印刷制御サーバー１０Ａである場合、印刷装置１２に対して、印刷制御サーバー１０Ａのアドレスを示す装置アドレス情報を含むデータ（以下、「装置アドレス情報データ」という。）を送信する。この場合、印刷制御サーバー１０Ａと印刷装置１２との間でＷｅｂＳｏｃｋｅｔコネクションＣＴが確立され、印刷装置１２は、印刷制御サーバー１０Ａの制御に従って印刷処理を含む処理を実行する。ゲートサーバー６０の第２記憶部６４は、装置アドレス情報データを記憶する。
このように、本実施形態では、ゲートサーバー６０は、印刷装置１２からＷｅｂＳｏｃｋｅｔコネクションＣＴの確立の要求があった場合、以下の処理を行う。ゲートサーバー６０は、当該ゲートサーバー６０、及び、制御サーバー１０が備える印刷制御サーバー（本例では、印刷制御サーバー１０Ａ）のうち、処理負荷が小さいと想定される装置との間でのＷｅｂＳｏｃｋｅｔコネクションＣＴの確立を要求する。これにより、制御サーバー１０での負荷分散を図ることができ、通信効率、処理効率の向上を図ることができる。なお、処理負荷が小さいと想定される装置の判別の際に、装置のスペックや、現時点での処理負荷の状況、予測される処理負荷の状況、その他の条件を反映してもよいことはもちろんである。
本例では、印刷制御サーバー１０Ａに接続されている印刷装置１２の個数の方が、ゲートサーバー６０に接続されている印刷装置１２の個数よりも少ない。従って、第２通信管理部６１は、ステップＳＢ３で、印刷制御サーバー１０Ａを、接続された印刷装置１２の個数が少ない方の装置として特定し、ステップＳＢ４で、装置アドレス情報データを、印刷装置１２に送信する。
以下の説明では、印刷装置１２と印刷制御サーバー１０Ａとが通信経路を確立し、通信経路の確立後、印刷装置１２が、印刷制御サーバー１０Ａの制御に従って、設定処理等の処理を実行するフローについて説明する。ただし、ゲートサーバー６０の方が接続された印刷装置１２の個数が少なく、ステップＳＢ４でゲートサーバー６０が、印刷装置１２に対してサーバーアドレス情報データの送信を行った場合、印刷装置１２及びゲートサーバー６０は、以下で説明する処理と同様の処理を実行する。ゲートサーバー６０は、以下で説明する印刷制御サーバー１０Ａと同様の処理を実行する機能を有する。
【００３０】
ステップＳＢ４で、ゲートサーバー６０の第２通信管理部６１は、印刷制御サーバー１０Ａのアドレスを示す装置アドレス情報データを送信する。
図４（Ａ）に示すように、印刷装置１２の通信制御部１５は、第２通信部２４を制御して、装置アドレス情報データを受信する（ステップＳＡ４）。次いで、通信制御部１５は、印刷装置記憶部１９にアクセスし（ステップＳＡ５）、受信した装置アドレス情報データを、印刷装置記憶部１９に記憶する（ステップＳＡ６）。
次いで、通信制御部１５は、印刷装置記憶部１９に記憶した装置アドレス情報データが示すアドレスを取得する（ステップＳＡ７）。
次いで、通信制御部１５は、装置アドレス情報データが示す印刷制御サーバー１０Ａのアドレスに基づいて、印刷制御サーバー１０Ａにアクセスする。通信制御部１５は、印刷制御サーバー１０Ａの第１通信管理部２５と通信し、第１通信部１６と第１接続部２６との間に、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する（ステップＳＡ８、ステップＳＣ１）。印刷装置１２は、ユーザーによる指示や、印刷制御サーバー１０Ａからの要求を受けることなく、電源の投入をトリガーとしてＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する。ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立は、ＷｅｂＳｏｃｋｅｔに従って行われる。
【００３１】
第１通信部１６、及び、第１接続部２６は、ＷｅｂＳｏｃｋｅｔの規格、手続きに従ってデータの送受信を行うＷｅｂＳｏｃｋｅｔインターフェースである。これら機能ブロックは、例えば、ＷｅｂＳｏｃｋｅｔのＳｏｃｋｅｔライブラリーを用いて生成される。
すなわち、第１通信部１６は、通信制御部１５や、印刷制御部１７、設定制御部２３から受信したデータについて、ＷｅｂＳｏｃｋｅｔのプロトコルに従って処理を行い、ＷｅｂＳｏｃｋｅｔの手続きでＷｅｂＳｏｃｋｅｔコネクションＣＴによりデータを送信する機能を有する。また、第１通信部１６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより受信したデータについて、ＷｅｂＳｏｃｋｅｔに従った処理を行って、通信制御部１５等に送信する機能を有する。以上のことは、第１接続部２６、及び、第１通信接続部６５についても同様である。
ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立に伴って、印刷装置１２、及び、印刷制御サーバー１０Ａは、非同期で、双方向通信できる。印刷制御サーバー１０Ａは、クライアントとしての印刷装置１２からリクエストを受けることなく、ＷｅｂＳｏｃｋｅｔコネクションＣＴによりプッシュ送信で印刷装置１２にデータを送信できる。同様に、印刷装置１２は、ＷｅｂＳｏｃｋｅｔコネクションＣＴによりプッシュ送信で印刷制御サーバー１０Ａにデータを送信できる。
【００３２】
また、ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立により、印刷装置１２の印刷制御部１７と、印刷制御サーバー１０Ａの第１印刷データ処理部２７との間で、ＷｅｂＳｏｃｋｅｔコネクションＣＴに基づく第１機能部間通信経路ＫＴ１が確立する。第１機能部間通信経路ＫＴ１は、印刷制御部１７と、第１印刷データ処理部２７との間で通信するデータを送受信する論理的な通信経路である。印刷制御部１７と第１印刷データ処理部２７とは、第１機能部間通信経路ＫＴ１により、非同期な双方向通信を行う。第１機能部間通信経路ＫＴ１により行われる非同期な双方向通信については後述する。
また、ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立により、印刷装置１２の設定制御部２３と、印刷制御サーバー１０Ａの第１設定処理部３１との間で、ＷｅｂＳｏｃｋｅｔコネクションＣＴに基づく第２機能部間通信経路ＫＴ２が確立する。第２機能部間通信経路ＫＴ２は、設定制御部２３と第１設定処理部３１との間で通信するデータを送受信する論理的な通信経路である。設定制御部２３と第１設定処理部３１とは、第２機能部間通信経路ＫＴ２により、非同期な双方向通信を行う。第２機能部間通信経路ＫＴ２により行われる非同期な双方向通信については後述する。
【００３３】
次いで、通信制御部１５は、印刷装置記憶部１９にアクセスし、印刷装置記憶部１９で記憶する印刷装置識別情報データ１９ｂを取得する（ステップＳＡ９）。
次いで、通信制御部１５は、取得した印刷装置識別情報データ１９ｂを第１通信部１６に送信する（ステップＳＡ１０）。
第１通信部１６は、受信した印刷装置識別情報データ１９ｂを、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、印刷制御サーバー１０Ａに送信する（ステップＳＡ１１）。
【００３４】
図４（Ｃ）に示すように、印刷制御サーバー１０Ａの第１接続部２６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、印刷装置識別情報データ１９ｂを受信する（ステップＳＣ２）。
次いで、第１接続部２６は、受信した印刷装置識別情報データ１９ｂを、第１通信管理部２５に送信する（ステップＳＣ３）。
第１通信管理部２５は、第１記憶部２８が記憶するコネクション管理データベース２８ａにアクセスする（ステップＳＣ４）。コネクション管理データベース２８ａは、確立しているＷｅｂＳｏｃｋｅｔコネクションＣＴについて、ＷｅｂＳｏｃｋｅｔコネクションＣＴの識別情報であるコネクション識別情報と、上述した印刷装置識別情報とを対応付けて記憶するデータベースである。
次いで、第１通信管理部２５は、コネクション管理データベース２８ａに１件のレコードを生成する。そして、第１通信管理部２５は、生成したレコードにおいて、ステップＳＣ１で確立したＷｅｂＳｏｃｋｅｔコネクションＣＴのコネクション識別情報と、ステップＳＣ２で受信した印刷装置識別情報データ１９ｂが示す印刷装置識別情報とを対応付けて記憶する（ステップＳＣ５）。第１通信管理部２５は、ＷｅｂＳｏｃｋｅｔコネクションＣＴが確立したときに、既に確立しているＷｅｂＳｏｃｋｅｔコネクションＣＴのコネクション識別情報と異なる値のコネクション識別情報を生成する。このステップＳＣ５の処理により、印刷制御サーバー１０Ａで、ＷｅｂＳｏｃｋｅｔコネクションＣＴと、印刷装置１２との対応関係が管理される。
このように、印刷装置１２は、ユーザーによる指示や、印刷制御サーバー１０Ａからの要求を受けることなく、電源の投入をトリガーとしてＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する。このため、ユーザーは、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立するために、煩雑な作業を行う必要がない。また、ユーザーは、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立するために、専門的な知識も必要ない。電源投入後、印刷装置１２を、印刷制御サーバー１０Ａの制御で各種処理を実行できる状態とすることができる。
【００３５】
図４（Ａ）に示すように、印刷装置１２の設定制御部２３は、要求コマンドを生成する（ステップＳＡ１２）。要求コマンドは、制御サーバー１０に対して設定制御データ（後述）の送信を要求するコマンドである。要求コマンドは、所定のフォーマットに従ったデータである。
次いで、設定制御部２３は、生成した要求コマンドに、印刷装置識別情報、及び、設定制御部２３の機能部識別情報を付加する（ステップＳＡ１３）。機能部識別情報は、印刷装置１２が備える機能部の識別情報である。従って、印刷装置１２が備える印刷制御部１７、及び、設定制御部２３には、異なる値の機能部識別情報が割り当てられる。ステップＳＡ１３では、設定制御部２３は、印刷装置記憶部１９が記憶する印刷装置識別情報データ１９ｂを参照し、当該データに基づいて、要求コマンドに印刷装置識別情報を付加する。また、設定制御部２３は、当該設定制御部２３に割り当てられた機能部識別情報を管理し、当該管理に基づいて、要求コマンドに機能部識別情報を付加する。
次いで、設定制御部２３は、要求コマンドを、第１通信部１６に送信する（ステップＳＡ１４）。
第１通信部１６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴで、要求コマンドを、印刷制御サーバー１０Ａに送信する（ステップＳＡ１５）。
【００３６】
図４（Ｃ）に示すように、印刷制御サーバー１０Ａの第１接続部２６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、要求コマンドを受信する（ステップＳＣ６）。
次いで、第１接続部２６は、受信した要求コマンドを第１通信管理部２５に送信する（ステップＳＣ７）。
第１通信管理部２５は、要求コマンドに付加された印刷装置識別情報、及び、機能部識別情報を取得する（ステップＳＣ８）。次いで、第１通信管理部２５は、第１記憶部２８が記憶する処理部管理データベース２８ｂを参照する（ステップＳＣ９）。処理部管理データベース２８ｂは、印刷装置識別情報及び機能部識別情報の組合せと、処理部識別情報と、を対応づけて記憶するデータベースである。次いで、第１通信管理部２５は、ステップＳＣ８で取得した印刷装置識別情報、及び、機能部識別情報の組合せをキーとして、処理部管理データベース２８ｂで、当該識別情報の組合せと対応付けられた処理部識別情報を取得する（ステップＳＣ１０）。処理部識別情報は、印刷制御サーバー１０Ａが備える処理部の識別情報である。従って、印刷制御サーバー１０Ａが備える第１印刷データ処理部２７、及び、第１設定処理部３１には、異なる値の処理部識別情報が割り当てられる。
次いで、第１通信管理部２５は、ステップＳＣ１０で取得した処理部識別情報が示す処理部（本例では、第１設定処理部３１）に、要求コマンドを送信する（ステップＳＣ１１）。なお、第１通信管理部２５は、処理部と処理部識別情報との関係を管理し、１の処理部識別情報に基づいて、当該１の処理部識別情報に対応する処理部にデータを送信できる。
【００３７】
図５（Ｃ）に示すように、印刷制御サーバー１０Ａの第１設定処理部３１は、要求コマンドを受信すると、第１記憶部２８が記憶する設定情報データベース２８ｃを参照する（ステップＳＣ１２）。
設定情報データベース２８ｃは、印刷制御サーバー１０Ａと接続する印刷装置１２について、印刷装置識別情報と、設定情報と、を対応付けて記憶するデータベースである。
設定情報は、印刷装置１２の印刷部１８に関する１又は複数の設定項目と、各設定項目に設定する設定値とを対応付けた情報である。
本実施形態に係る印刷装置１２は、設定項目として、印刷時の濃度に関する設定である印字濃度設定と、印刷時の速度に関する設定である印字速度設定と、印刷装置１２にセットされる印刷媒体（本例では、ロール紙）の紙幅に関する設定である紙幅設定と、を有する。設定項目は、本実施形態で例示するものに限らず、例えば、ネットワークに関する設定や、音声出力機能を有する場合は音声に関する設定等、他の設定項目を含んでいてもよい。
また、本実施形態に係る印刷装置１２は、印字濃度設定の設定値として、印字濃度が濃いことを示す「設定値：濃」と、印字濃度が薄いことを示す「設定値：薄」と、を有する。また、印刷装置１２は、印字速度設定の設定値として、印字速度が速いことを示す「設定値：速」と、印字速度が遅いことを示す「設定値：遅」と、を有する。また、印刷装置１２は、紙幅設定の設定値として、セットされるロール紙が８０ｍｍであることを示す「設定値：８０ｍｍ」と、セットされるロール紙が５８ｍｍであることを示す「設定値：５８ｍｍ」と、を有する。
例えば、設定情報は、印字濃度設定と「設定値：濃」とを対応付け、印字速度設定と「設定値：速」とを対応付け、紙幅設定と「設定値：８０ｍｍ」とを対応付けた情報である。
【００３８】
次いで、第１設定処理部３１は、要求コマンドに付加された印刷装置識別情報をキーとして、設定情報データベース２８ｃで、当該識別情報と対応付けられた設定情報を取得する（ステップＳＣ１３）。
次いで、第１設定処理部３１は、取得した設定情報に基づいて、設定制御データを生成する（ステップＳＣ１４）。
設定制御データは、設定項目の設定値を指定し、印刷装置１２の設定制御部２３に、設定項目の設定値を、指定した設定値となるよう設定させることを指示するデータである。例えば、設定制御データは、印字濃度設定の設定値を「設定値：濃」と設定させ、印字速度設定の設定値を「設定値：速」と設定させ、紙幅設定の設定値を「設定値：８０ｍｍ」と設定させることを指示するデータである。
次いで、第１設定処理部３１は、設定制御データに、処理部識別情報を付加する（ステップＳＣ１５）。第１設定処理部３１は、当該第１設定処理部３１に割り当てられた処理部識別情報を管理し、当該管理に基づいて、設定制御データに処理部識別情報を付加する。
次いで、第１設定処理部３１は、設定制御データを、第１接続部２６に送信する（ステップＳＣ１６）。
第１接続部２６は、受信した設定制御データを、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、印刷装置１２に送信する（ステップＳＣ１７）。
【００３９】
図５（Ａ）に示すように、印刷装置１２の第１通信部１６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴにより、設定制御データを受信する（ステップＳＡ１６）。次いで、第１通信部１６は、通信制御部１５に、設定制御データを送信する（ステップＳＡ１７）。
通信制御部１５は、設定制御データに付加された処理部識別情報を取得する（ステップＳＡ１８）。
次いで、通信制御部１５は、機能部管理データベース１９ｃを参照する（ステップＳＡ１９）。
機能部管理データベース１９ｃは、印刷装置１２が備える機能部の機能部識別情報と、対応する処理部の処理部識別情報と、を対応付けて記憶するデータベースである。
１の機能部と１の処理部とが対応する場合、当該１の処理部が送信したデータを当該１の機能部が処理でき、逆に、当該１の機能部が送信したデータを当該１の処理部が処理できる関係にある。従って、当該１の処理部は、対応関係にある当該１の機能部に対してデータを送信して、当該１の機能部に、当該１の機能部が有する機能に基づく処理を実行させることができる。また、当該１の機能部は、対応関係にある当該１の処理部に対してデータを送信して、当該１の処理部に、当該１の処理部が有する機能に基づく処理を実行させることができる。本例では、印刷装置１２の印刷制御部１７と、印刷制御サーバー１０Ａの第１印刷データ処理部２７とが対応する。また、印刷装置１２の設定制御部２３と、印刷制御サーバー１０Ａの第１設定処理部３１とが対応する。
次いで、通信制御部１５は、ステップＳＡ１８で取得した処理部識別情報をキーとして、機能部管理データベース１９ｃで、当該識別情報と対応付けられた機能部識別情報を取得する（ステップＳＡ２０）。
次いで、通信制御部１５は、ステップＳＡ２０で取得した機能部識別情報が示す機能部（本例では、設定制御部２３）に、設定制御データを送信する（ステップＳＡ２１）。通信制御部１５は、機能部識別情報と機能部との関係を管理する。従って、通信制御部１５は、１の機能部識別情報に基づいて、当該１の機能部識別情報が示す機能部にデータを送信できる。
【００４０】
設定制御部２３は、受信した設定制御データに基づいて、設定処理を行う（ステップＳＡ２２）。
設定処理は、設定制御部２３が、設定項目の設定値を、設定制御データで指定された設定値に設定する処理である。
本実施形態では、印刷装置１２の印刷装置記憶部１９は、設定項目と、設定値とを対応付けた情報を有する設定ファイルを記憶する。そして、ステップＳＡ１６の設定処理で、設定制御部２３は、設定ファイルにアクセスし、設定項目と、設定制御データで指定された対応する設定値とが対応付けられるように、設定ファイルの内容を書き換える。このほか、設定処理において、プログラムに定義された設定に関する変数の値を変更する等の処理を行ってもよい。
【００４１】
以上のように、本実施形態では、印刷装置１２の電源投入をトリガーとして、印刷装置１２と、印刷制御サーバー１０Ａとの間で、ＷｅｂＳｏｃｋｅｔコネクションＣＴが確立される。そして、このＷｅｂＳｏｃｋｅｔコネクションＣＴの確立後に、当該コネクションにより、印刷装置１２は設定制御データの送信を要求し、印刷制御サーバー１０Ａは当該要求に応じて設定制御データを送信する。印刷装置１２は、受信した設定制御データに基づいて設定処理を行う。このため、印刷装置１２は、ユーザーによる指示や、印刷制御サーバー１０Ａからの要求を受けることなく、設定項目について対応する設定値を設定できる。また、ユーザーが設定に係る作業を行う必要がなく、また、ユーザーが設定を行うための専門的な知識を取得する必要がない。
また、以上のように、ＷｅｂＳｏｃｋｅｔコネクションＣＴが確立した後は、印刷制御サーバー１０Ａの第１設定処理部３１と、印刷装置１２の設定制御部２３とは、ＷｅｂＳｏｃｋｅｔコネクションＣＴに基づく第２機能部間通信経路ＫＴ２で、非同期の双方向通信を行う。
また、以上のように、印刷制御サーバー１０Ａの第１通信管理部２５は、受信した要求コマンドを、第１設定処理部３１に送信する。この構成のため、印刷制御サーバー１０Ａが受信した要求コマンドは、第１設定処理部３１に送信され、第１設定処理部３１により対応する処理が実行される。同様に、印刷装置１２の通信制御部１５は、受信した設定制御データを、設定制御部２３に送信する。この構成のため、印刷装置１２が受信した設定制御データは、設定制御部２３に送信され、設定制御部２３により対応する処理が実行される。
【００４２】
また、本実施形態では、印刷装置１２は、ゲートサーバー６０のアドレスを記憶する。ゲートサーバー６０は、後述するように、印刷制御データを生成し、送信することにより印刷装置１２を制御する機能を有する。そして、印刷装置１２は、ＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する場合、記憶したアドレスのゲートサーバー６０に対して、通信経路の確立を要求する。ゲートサーバー６０は、制御機能を有する印刷制御サーバー１０Ａと、当該ゲートサーバー６０との負荷の状態とに基づいて、印刷装置１２に、負荷が小さいと想定される装置と、通信経路を確立させる。
このため、以下の効果を奏する。
印刷装置１２は、処理負荷が小さいと想定される装置との間でのＷｅｂＳｏｃｋｅｔコネクションＣＴを確立するため、制御サーバー１０での負荷分散を図ることができ、通信効率、処理効率の向上を図ることができる。
また、印刷装置１２は、電源投入時に、ゲートサーバー６０の機能を用いて、対応する印刷制御サーバーとＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する。このため、ユーザーは、ＷｅｂＳｏｃｋｅｔコネクションＣＴの確立時に作業を行う必要がなく、ユーザーの利便性が向上する。
また、印刷装置１２の製造段階や、印刷装置１２を店舗システム１１に導入する際に、印刷装置１２に応じて、異なる印刷制御サーバーのアドレスを記憶させる必要がなく、各印刷装置１２にゲートサーバー６０のアドレスを記憶させればよい。このため、印刷装置１２の製造容易性の向上をはかることができ、また、印刷装置１２が誤ったアクセス先にアクセスすることを防止できる。
【００４３】
次に、所定の印刷装置１２の設定情報の内容を変更する場合の、印刷制御サーバー１０Ａと、管理装置１４との動作について説明する。
上述したように、印刷制御サーバー１０Ａの第１記憶部２８は、設定情報データベース２８ｃを記憶する。設定情報データベース２８ｃは、印刷制御サーバー１０Ａと接続する印刷装置１２について、印刷装置識別情報と、設定情報とを対応付けて記憶する。
そして、本実施形態に係る印刷制御システム１では、管理装置１４は、所定の印刷装置１２の設定情報の内容を変更することができる。
図６は、所定の印刷装置１２の設定情報の内容を変更する場合の、印刷制御サーバー１０Ａと、管理装置１４との動作を示すフローチャートである。図６（Ａ）は管理装置１４の動作を示し、（Ｂ）は印刷制御サーバー１０Ａの動作を示す。
なお、以下の説明において、管理装置１４の管理装置制御部４０のブラウザー実行部４０ａの機能は、例えば、ブラウザー上で動作するアプリケーションや、描画ファイル（後述）が有するスクリプトの機能により実行される。
以下では、印刷制御サーバー１０Ａの処理を説明するが、ゲートサーバー６０も、以下で説明する印刷制御サーバー１０Ａの処理と同様の処理を実行する機能を有する。
【００４４】
まず、ユーザーは、管理装置１４のブラウザーを立ち上げ、所定のＵＲＬへのアクセスを指示する（ステップＳＹ１）。当該所定のＵＲＬは、後述する印刷装置識別情報入力ユーザーインターフェース５０（以下、「印刷装置識別情報入力ＵＩ５０」と表現する。）を、ブラウザーウィンドーに表示する場合に管理装置１４がアクセスするＵＲＬである。当該所定のＵＲＬは、印刷制御サーバー１０Ａが管理するＵＲＬであり、ユーザーに対して予め通知される。
図６（Ａ）に示すように、ステップＳＹ１のユーザーの指示に応じて、管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、指定されたＵＲＬへアクセスし、印刷装置識別情報入力ＵＩ５０の表示に係る描画ファイルを要求する（ステップＳＤ１）。描画ファイルは、ＨＴＭＬ（HyperText Markup Language）等のマークアップ言語で記述されたファイルであり、管理装置１４のブラウザーウィンドーにウェブページを表示させるファイルである。
図６（Ｂ）に示すように、ステップＳＤ１における管理装置１４の要求に応じて、印刷制御サーバー１０Ａは、印刷装置識別情報入力ＵＩ５０に係る描画ファイルを生成し、管理装置１４に送信する（ステップＳＥ１）。
図６（Ａ）に示すように、管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、ステップＳＤ１の要求に応じて取得した描画ファイルに基づいて、印刷装置識別情報入力ＵＩ５０を表示する（ステップＳＤ２）。
【００４５】
図７（Ａ）は、印刷装置識別情報入力ＵＩ５０の一例を示す図である。
図７（Ａ）に示すように、印刷装置識別情報入力ＵＩ５０は、ユーザーが印刷装置識別情報を入力する入力欄Ｒ１と、入力欄Ｒ１への入力を確定するボタンＢ１とを有する。
ユーザーは、入力欄Ｒ１に、設定情報の内容を変更する印刷装置１２の印刷装置識別情報を入力し、ボタンＢ１を操作する（ステップＳＹ２）。
管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、印刷装置識別情報入力ＵＩ５０に入力された印刷装置識別情報を示すデータを、所定のプロトコルに従って、印刷制御サーバー１０Ａに送信する（ステップＳＤ３）。ステップＳＤ３の処理は、例えば、印刷装置識別情報入力ＵＩ５０に係る描画ファイルに含まれるスクリプトの機能により実行される。
【００４６】
図６（Ｂ）に示すように、印刷装置識別情報を示すデータを受信すると、印刷制御サーバー１０Ａは、以下の処理を実行する。印刷制御サーバー１０Ａは、印刷装置識別情報が示す印刷装置１２に対応する設定値変更ユーザーインターフェース５１（以下、「設定値変更ＵＩ５１」と表現する。）に係る描画ファイルを生成し、管理装置１４に送信する（ステップＳＥ２）。ここで、印刷制御サーバー１０Ａの第１記憶部２８は、印刷制御サーバー１０Ａと接続する印刷装置１２について、印刷装置識別情報と対応付けて、設定変更ユーザーインターフェースに係る描画ファイルを生成するために必要な情報（以下、「描画情報」という。）を記憶する。ステップＳＥ２では、印刷制御サーバー１０Ａは、受信したデータが示す印刷装置識別情報に対応する描画情報を取得し、取得した描画情報に基づいて、描画ファイルを生成する。
【００４７】
図６（Ａ）に示すように、管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、ステップＳＤ３の要求に応じて取得した描画ファイルに基づいて、設定値変更ＵＩ５１を表示する（ステップＳＤ４）。
図７（Ｂ）は、設定値変更ＵＩ５１の一例を示す図である。
図７（Ｂ）は、設定項目について、設定する設定値を入力するユーザーインターフェースである。
図７（Ｂ）に示すように、設定値変更ＵＩ５１には、設定情報を変更する印刷装置１２の印刷装置識別情報が表示される。
また、設定値変更ＵＩ５１は、印字濃度設定の設定値を指定する印字濃度設定変更エリアＡＲ１を有する。印字濃度設定変更エリアＡＲ１は、印字濃度設定値入力欄ＲＡ１を有する。印字濃度設定値入力欄ＲＡ１は、印字濃度設定の設定値を入力する欄である。印字濃度設定値入力欄ＲＡ１は、プルダウンメニューとなっている。ユーザーは、プルダウンメニューに表示された「設定値：濃」、又は、「設定値：薄」のいずれかを選択することにより、印字濃度設定値入力欄ＲＡ１に印字濃度設定の設定値を入力できる。
また、設定値変更ＵＩ５１は、印字速度設定の設定値を指定する印字速度設定変更エリアＡＲ２を有する。印字速度設定変更エリアＡＲ２は、印字速度設定値入力欄ＲＡ２を有する。印字速度設定値入力欄ＲＡ２は、印字速度設定の設定値を入力する欄である。印字速度設定値入力欄ＲＡ２は、プルダウンメニューとなっている。ユーザーは、プルダウンメニューに表示された「設定値：速」、又は、「設定値：遅」のいずれかを選択することにより、印字速度設定値入力欄ＲＡ２に印字速度設定の設定値を入力できる。
また、設定値変更ＵＩ５１は、紙幅設定の設定値を指定する紙幅設定変更エリアＡＲ３を有する。紙幅設定変更エリアＡＲ３は、紙幅設定値入力欄ＲＡ３を有する。紙幅設定値入力欄ＲＡ３は、紙幅設定の設定値を入力する欄である。紙幅設定値入力欄ＲＡ３は、プルダウンメニューとなっている。ユーザーは、プルダウンメニューに表示された「設定値：８０ｍｍ」、又は、「設定値：５８ｍｍ」のいずれかを選択することにより、紙幅設定値入力欄ＲＡ３に紙幅設定の設定値を入力できる。
また、設定値変更ＵＩ５１は、印字濃度設定値入力欄ＲＡ１、印字速度設定値入力欄ＲＡ２、及び、紙幅設定値入力欄ＲＡ３への入力を確定するボタンＢ２を有する。
【００４８】
ユーザーは、設定値変更ＵＩ５１の印字濃度設定値入力欄ＲＡ１、印字速度設定値入力欄ＲＡ２、及び、紙幅設定値入力欄ＲＡ３に対応する設定値を入力し、ボタンＢ２を操作する（ステップＳＹ３）。
ブラウザー実行部４０ａは、設定値変更ＵＩ５１に対するユーザーの入力に基づいて、変更コマンドを生成する（ステップＳＤ５）。変更コマンドは、印刷装置識別情報を含み、印刷装置識別情報に対応する設定情報について、設定項目の設定値を、ユーザーが設定値変更ＵＩ５１へ入力した設定値に変更することを指示するコマンドである。
次いで、ブラウザー実行部４０ａは、生成した変更コマンドに、当該変更コマンドに基づく処理をさせる処理部（本例では、第１設定処理部３１）の処理部識別情報を付加する（ステップＳＤ６）。ブラウザー実行部４０ａは、変更コマンドを処理させる処理部の処理部識別情報を管理しており、当該管理に基づいて、変更コマンドに処理部識別情報を付加する。ユーザーが処理部識別情報を入力する構成であってもよい。
次いで、ブラウザー実行部４０ａは、通信インターフェース４１を制御して、変更コマンドを印刷制御サーバー１０Ａに送信する（ステップＳＤ７）。
管理装置１４と、印刷制御サーバー１０ＡとがＨＴＴＰ通信をする場合、ステップＳＤ７でブラウザー実行部４０ａは、印刷制御サーバー１０Ａとの間でＨＴＴＰのハンドシェイクを行い、コネクションを確立する。次いで、ブラウザー実行部４０ａは、通信インターフェース４１を制御して、確立したコネクションにより、変更コマンドを送信する。
【００４９】
図６（Ｂ）に示すように、第１通信管理部２５は、第２接続部３０を制御して、変更コマンドを受信する（ステップＳＥ３）。
次いで、第１通信管理部２５は、変更コマンドに含まれる処理部識別情報を取得する（ステップＳＥ４）。
次いで、第１通信管理部２５は、ステップＳＥ４で取得した処理部識別情報が示す処理部（本例では、第１設定処理部３１）に、変更コマンドを送信する（ステップＳＥ５）。
次いで、第１設定処理部３１は、変更コマンドに基づいて、設定値変更処理を実行する（ステップＳＥ６）。
設定値変更処理は、設定情報データベース２８ｃの対応する設定情報の内容を変更する処理である。上述したように、設定情報データベース２８ｃは、印刷制御サーバー１０Ａと接続する印刷装置１２について、印刷装置識別情報と、設定情報と、を対応付けて記憶するデータベースである。
設定値変更処理において、第１設定処理部３１は、設定情報データベース２８ｃにアクセスする。次いで、第１設定処理部３１は、変更コマンドに含まれる印刷装置識別情報をキーとして、対応するレコードを特定する。次いで、第１設定処理部３１は、特定したレコードの設定情報について、設定項目の設定値を、変更コマンドで指定された設定値に変更する。
設定値変更処理の実行後は、設定情報に基づいて生成される設定制御データは、変更コマンドに基づく設定値の変更を反映したデータとなる。
【００５０】
以上のようにして、設定情報の内容は、管理装置１４が生成する変更コマンドに基づいて変更される。
変更コマンドに基づく設定情報の変更は、例えば、以下のタイミングで、以下のようにして印刷装置１２の設定に反映される。
例えば、印刷制御サーバー１０Ａの第１設定処理部３１は、変更コマンドに基づく設定情報の変更を行った場合、変更後の設定情報に基づいて設定制御データを生成し、対応する印刷装置１２に送信する。この構成によれば、設定情報の内容に変更があった場合、より迅速に、設定情報の内容の変更を、印刷装置１２の設定に反映することができる。
また例えば、上述したように、印刷制御サーバー１０Ａの第１設定処理部３１は、１の印刷装置１２から要求コマンドを受信した場合、当該１の印刷装置１２に対応する設定情報に基づいて設定制御データを生成し、送信する。その際、第１設定処理部３１は、設定情報の内容に変更があった場合は、変更後の設定情報に基づいて、設定制御データを生成する。印刷装置１２は、受信した設定制御データに基づいて設定処理を行う。このように、当該１の印刷装置１２が印刷制御サーバー１０Ａに対して要求コマンドを送信したときに、設定情報の内容の変更が、当該１の印刷装置１２の設定に反映される。なお、本実施形態に係る印刷装置１２は、電源投入時に要求コマンドを送信する構成である。このため、電源投入の前に、変更コマンドに基づく設定情報の内容の変更があった場合は、電源投入時に、設定情報の内容の変更が、印刷装置１２の設定に反映される。従って、例えば、店舗の開店時に、当該店舗の店舗システム１１が有する複数の印刷装置１２について、同時に設定を変更する、といった処理が可能となる。なお、印刷装置１２について、電源が投入された後、定期的に要求コマンドを送信する構成としてもよい。
なお、印刷制御サーバー１０Ａの第１設定処理部３１は、要求コマンドを受信した場合、以下の処理を行ってもよい。すなわち、第１設定処理部３１は、印刷制御サーバー１０Ａと接続する印刷装置１２について、設定項目に現時点で設定されている設定値を管理する。そして、第１設定処理部３１は、１の印刷装置１２から要求コマンドを受信した場合、当該１の印刷装置１２の設定項目について、当該１の印刷装置１２に現時点で設定されている設定値と、当該１の印刷装置１２に対応する設定情報が示す設定値とに差があるか否かを判別する。変更コマンドに基づいて設定情報の内容が変更された場合は、第１設定処理部３１により、差があると判別される。次いで、第１設定処理部３１は、設定値に差がある設定項目について、設定値を指定して、指定した設定値の設定を指示する設定制御データを生成する。次いで、第１設定処理部３１は、生成した設定制御データを送信する。一方、第１設定処理部３１は、設定値に差がある設定項目が存在しない場合、その旨、通知する。この構成によれば、設定制御データのデータ量を小さくすることができ、通信効率の向上を図ることができる。
【００５１】
次に、管理装置１４が印刷装置１２の印刷を制御する場合における管理装置１４、印刷制御サーバー１０Ａ、及び、印刷装置１２の動作について説明する。
図８は、管理装置１４が印刷装置１２の印刷を制御する場合の各装置の動作を示すフローチャートであり、（Ａ）は管理装置１４の動作を、（Ｂ）は印刷制御サーバー１０Ａの動作を、（Ｃ）は印刷装置１２の動作を示す。
また、図８のフローチャートを用いて、印刷制御サーバー１０Ａの第１印刷データ処理部２７と、印刷装置１２の印刷制御部１７との間で行われる第１機能部間通信経路ＫＴ１による非同期な双方向通信について、第１印刷データ処理部２７がデータ（本例では、印刷制御データ）を送信する場合を例にして説明する。
以下では、印刷制御サーバー１０Ａの処理を説明するが、ゲートサーバー６０も、以下で説明する印刷制御サーバー１０Ａの処理と同様の処理を実行する機能を有する。
【００５２】
図８（Ａ）に示すように、印刷装置１２による印刷に際し、ユーザーは、管理装置１４のブラウザーを立ち上げ、所定のＵＲＬへのアクセスを指示する（ステップＳＺ１）。当該ＵＲＬは、後述する印刷情報入力用ユーザーインターフェース（以下、「印刷ＵＩ」と表現する。）を、ブラウザーウィンドーに表示する場合にアクセスするＵＲＬである。当該所定のＵＲＬは、ユーザーに対して予め通知される。なお、ＵＲＬは、印刷制御サーバー１０Ａが管理するＵＲＬであってもよく、他のサーバーが管理するＵＲＬであってもよい。
ステップＳＺ１の指示に応じて、管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、指定されたＵＲＬへアクセスし、印刷ＵＩの表示に係る描画ファイルを要求する（ステップＳＦ１）。描画ファイルは、ＨＴＭＬ（HyperText Markup Language）等のマークアップ言語で記述されたファイルであり、管理装置１４のブラウザーウィンドーにウェブページを表示させるファイルである。
【００５３】
次いで、ブラウザー実行部４０ａは、ステップＳＦ１の要求に応じて取得した描画ファイルに基づいて、印刷ＵＩを表示する（ステップＳＦ２）。
印刷ＵＩは、印刷装置１２に印刷させる印刷情報を、ユーザーが入力するユーザーインターフェースである。印刷情報は、画像データが格納されたファイル名や、印刷媒体における画像の位置に関する情報等である。印刷ＵＩでは、印刷制御サーバー１０Ａの第１印刷データ処理部２７が印刷制御データの生成に用いる情報を入力可能である。
また、印刷ＵＩは、印刷させる印刷装置１２の印刷装置識別情報、及び、印刷制御サーバー１０Ａの処理部のうち、後述する印刷指示データを送信して印刷指示データに基づく処理を実行させる処理部（本例では、第１印刷データ処理部２７。）の処理部識別情報をユーザーが入力するユーザーインターフェースである。印刷ＵＩには、印刷情報、印刷装置識別情報、及び、処理部識別情報を入力する欄が設けられ、ユーザーは、当該欄に印刷情報、印刷装置識別情報、及び、処理部識別情報を入力する。
【００５４】
ユーザーが、印刷ＵＩに対して印刷情報、印刷装置識別情報、及び、処理部識別情報を入力し、入力を確定すると（ステップＳＺ２）、ブラウザー実行部４０ａは、以下の処理を実行する。
ブラウザー実行部４０ａは、印刷指示データを生成する（ステップＳＦ３）。印刷指示データは、印刷ＵＩに入力された情報に基づく印刷情報、印刷装置識別情報、及び、処理部識別情報が含まれた所定のフォーマットのデータである。印刷指示データは、印刷制御サーバー１０Ａの第１印刷データ処理部２７がデータに基づく処理を実行可能なデータ形式である。
次いで、ブラウザー実行部４０ａは、通信インターフェース４１を制御して、印刷制御サーバー１０Ａに印刷指示データを送信する（ステップＳＦ４）。ステップＳＦ４において、通信インターフェース４１は、印刷制御サーバー１０Ａとの間で、例えば、ＨＴＴＰでハンドシェイクを行ってコネクションを確立し、コネクションにより印刷指示データを送信する。
なお、本実施形態では、印刷ＵＩにユーザーが処理部識別情報を入力し、印刷指示データには、ユーザーが入力した処理部識別情報が付加される構成である。この構成に限らず、管理装置制御部４０が、印刷制御サーバー１０Ａに送信するデータについて、当該データを処理させる処理部を判別し、処理部の処理部識別情報をデータに付加する構成であってもよい。例えば、管理装置制御部４０は、送信するデータの種類と、データを処理する処理部との関係を管理し、管理した関係に基づいて、送信するデータに付加する処理部識別情報を特定する。
【００５５】
図８（Ｂ）に示すように、第１通信管理部２５は、第２接続部３０を制御して、印刷指示データを受信する（ステップＳＧ１）。
次いで、第１通信管理部２５は、印刷指示データに含まれる処理部識別情報を取得する（ステップＳＧ２）。
次いで、第１通信管理部２５は、ステップＳＧ２で取得した処理部識別情報が示す処理部（本例では、第１印刷データ処理部２７）に印刷指示データを送信する（ステップＳＧ３）。第１通信管理部２５は、処理部と処理部識別情報との関係を管理し、１の処理部識別情報に基づいて、当該１の処理部識別情報が示す処理部にデータを送信できる。
第１印刷データ処理部２７は、受信した印刷指示データに基づいて、印刷制御データを生成する（ステップＳＧ４）。印刷制御データは、印刷装置１２に印刷させる印刷情報を有するＸＭＬ（Extensible Markup Language）ファイルである。印刷制御データは、ＸＭＬフォーマットに従って、印刷装置１２に印刷させる印刷情報、例えば、画像データや、画像の位置を示す情報等が記述される。
印刷制御データは、印刷させる印刷装置１２の印刷装置識別情報が付加される。第１印刷データ処理部２７は、印刷指示データに含まれる印刷装置識別情報に基づいて、印刷制御データに、印刷装置識別情報を付加する。
印刷装置識別情報は、印刷制御データのヘッダー等の制御情報が記述される領域に記述されてもよく、また、印刷制御データ内の所定のタグに記述されてもよい。
次いで、第１印刷データ処理部２７は、第１記憶部２８に記憶されたコネクション管理データベース２８ａを参照する（ステップＳＧ５）。
【００５６】
次いで、第１印刷データ処理部２７は、印刷装置識別情報をキーとして、コネクション管理データベース２８ａで、当該識別情報と対応付けられたＷｅｂＳｏｃｋｅｔコネクションＣＴのコネクション識別情報を取得する（ステップＳＧ６）。取得されたコネクション識別情報は、印刷させる印刷装置１２との間で確立されたＷｅｂＳｏｃｋｅｔコネクションＣＴのコネクション識別情報である。
次いで、第１印刷データ処理部２７は、印刷制御データに、第１印刷データ処理部２７の処理部識別情報を付加する（ステップＳＧ７）。第１印刷データ処理部２７は、当該第１印刷データ処理部２７に割り当てられた処理部識別情報を管理する。
次いで、第１印刷データ処理部２７は、印刷制御データを、ステップＳＧ６で取得したコネクション識別情報に対応する第１接続部２６に送信する（ステップＳＧ８）。
第１接続部２６は、受信した印刷制御データを、ＷｅｂＳｏｃｋｅｔコネクションＣＴで、印刷装置１２にプッシュ送信する（ステップＳＧ９）。
【００５７】
図５（Ｃ）に示すように、第１通信部１６は、ＷｅｂＳｏｃｋｅｔコネクションＣＴで、印刷制御データを受信する（ステップＳＨ１）。
次いで、第１通信部１６は、通信制御部１５に、印刷制御データを送信する（ステップＳＨ２）。
通信制御部１５は、印刷制御データに付加された処理部識別情報を取得する（ステップＳＨ３）。次いで、通信制御部１５は、機能部管理データベース１９ｃを参照する（ステップＳＨ４）。次いで、通信制御部１５は、ステップＳＨ３で取得した処理部識別情報をキーとして、機能部管理データベース１９ｃで、当該識別情報と対応付けられた機能部識別情報を取得する（ステップＳＨ５）。次いで、通信制御部１５は、ステップＳＨ５で取得した機能部識別情報が示す機能部（本例では、印刷制御部１７）に、印刷制御データを送信する（ステップＳＨ６）。通信制御部１５は、機能部識別情報と機能部との関係を管理する。従って、通信制御部１５は、１の機能部識別情報に基づいて、当該１の機能部識別情報が示す機能部にデータを送信できる。
印刷制御部１７は、受信した印刷制御データを、印刷部１８のコマンド体系の制御コマンドに変換する（ステップＳＨ７）。印刷制御部１７は、ＸＭＬファイルである印刷制御データを、印刷部１８が解釈可能なコマンドに変換する。次いで、印刷制御部１７は、制御コマンドを、印刷部１８に送信する（ステップＳＨ８）。
印刷部１８は、制御コマンドに基づいて、印刷媒体への印刷を実行する（ステップＳＨ９）。印刷部１８は、設定ファイルの設定を反映して、印刷を実行する。
【００５８】
このように、印刷制御サーバー１０Ａは、印刷装置１２に印刷を実行させる事象が発生した場合に、印刷装置１２からのリクエストを受けることなく、印刷装置１２に印刷制御データを送信して、印刷装置１２に印刷させることができる。印刷装置１２に印刷を実行させる事象が発生した場合とは、例えば、上記例のように通信可能に接続された外部機器からの要求があった場合や、ユーザーからの指示があった場合、予め定めた条件が成立した場合等、である。
このため、印刷装置１２から印刷制御サーバー１０Ａに対して間欠的にリクエストを送り、印刷装置１２に印刷をさせたい場合に、当該リクエストに応じて印刷制御データを送信する構成とした場合と比較して、印刷を実行させる事象の発生後、より迅速に印刷を開始させることができる。また、印刷制御サーバー１０Ａがリクエストに対する保留状態を作る構成とした場合と比較して、リソースの消費を抑制できる。
【００５９】
なお、印刷部１８による印刷が行われた後は、印刷装置１２、印刷制御サーバー１０Ａ、及び、管理装置１４は、以下の処理を実行する。
すなわち、印刷制御部１７は、印刷部１８による印刷の結果に基づいて、印刷結果データを生成する。印刷結果データは、印刷部１８による印刷が成功したか失敗したかを示す情報、及び、失敗した場合はその原因を示す情報を含むデータである。
印刷制御部１７は、ＷｅｂＳｏｃｋｅｔコネクションＣＴに基づく第１機能部間通信経路ＫＴ１により、第１印刷データ処理部２７に印刷結果データを送信する。なお、第１機能部間通信経路ＫＴ１を用いた印刷制御部１７から第１印刷データ処理部２７へのデータの送信は、第２機能部間通信経路ＫＴ２を用いた設定制御部２３から第１設定処理部３１へのデータの送信と同様の方法で行われる。
第１印刷データ処理部２７は、受信した印刷結果データを、印刷指示データを送信した管理装置１４に対して送信する。例えば、第１印刷データ処理部２７は、印刷指示データの送信に用いたコネクションを管理し、当該コネクションを用いて、印刷結果データを管理装置１４に送信する。管理装置１４の管理装置制御部４０のブラウザー実行部４０ａは、受信した印刷結果データに基づいて対応する処理を実行する。例えば、管理装置制御部４０は、印刷結果を示す情報を表示部４２に表示し、印刷結果をユーザーに報知する処理を行う。
【００６０】
ここで、本実施形態では、印刷制御サーバー１０Ａは、第１印刷データ処理部２７と、第１設定処理部３１という異なる機能を有する処理部を有する。
これにより以下の効果を奏する。
すなわち、上述したように、第１印刷データ処理部２７は、印刷結果データを受信した場合、印刷指示データを送信した管理装置１４に対して、印刷結果データを送信する。これにより、印刷を指示した管理装置１４が、印刷の結果を取得できる。一方で、第１設定処理部３１は、印刷装置１２から要求コマンドを受信した場合、設定制御データを生成して印刷装置１２に送信する。
このように、第１印刷データ処理部２７と、第１設定処理部３１とでは、受信したデータの処理方法、特に、管理装置１４との関係でデータをどのようにするかが異なる。このことに基づいて、印刷制御サーバー１０Ａは、第１印刷データ処理部２７とは独立して、処理部として、第１設定処理部３１を備える。なお、上述した方法により、印刷制御部１７が送信したデータは、第１印刷データ処理部２７に送信され、また、設定制御部２３が送信したデータは、第１設定処理部３１に送信される。ゲートサーバー６０についても同様である。
【００６１】
以上説明したように、本実施形態に係る印刷制御システムは、印刷制御サーバー１０Ａ（印刷制御装置）と、ゲートサーバー６０と、印刷装置１２と、を備える。
印刷制御サーバー１０Ａは、印刷制御データを生成する第１印刷データ処理部２７、及び第１印刷データ処理部２７で生成された印刷制御データを送信する第１接続部２６（接続部）を有する。
ゲートサーバー６０は、印刷制御データを生成する第２印刷データ処理部６２、第２印刷データ処理部６２で生成された印刷制御データを送信する第１通信接続部６５（通信接続部）、印刷制御サーバー１０Ａのアドレス（装置アドレス）を記憶する第２記憶部６４（サーバー記憶部）、及び通信経路の確立の要求を受信した場合に、サーバーアドレスもしくは第２記憶部６４に記憶された印刷制御サーバー１０Ａのアドレスを送信する第２通信管理部６１を有する。
印刷装置１２は、印刷を行う印刷部１８、ゲートサーバー６０のアドレスを示すサーバーアドレス情報を記憶する印刷装置記憶部１９（装置記憶部）、印刷装置記憶部１９が記憶するサーバーアドレス情報が示すアドレスのゲートサーバー６０に通信経路の確立の要求を送信し、当該要求に応じて受信したゲートサーバー６０のアドレス、もしくは、印刷制御サーバー１０Ａのアドレスに基づいてＷｅｂＳｏｃｋｅｔコネクションＣＴを確立する通信制御部１５、通信制御部１５で確立されたＷｅｂＳｏｃｋｅｔコネクションＣＴで印刷制御データを受信する第１通信部１６（通信部）、及び通信部１６で受信した印刷制御データに基づいて印刷部１８を制御する印刷制御部１７を有する。
この構成によれば、印刷装置１２は、通信経路の確立に際し、ゲートサーバー６０にアクセスすれば、ゲートサーバー６０の機能により、通信経路を確立する装置のアドレスを取得でき、アドレスに基づいて通信経路を確立できる。このため、印刷装置１２は、ゲートサーバー６０のアドレスを記憶すればよく、印刷制御サーバー１０Ａ等のサーバーのアドレスを管理する必要がない。従って、ユーザーは、印刷装置１２をシステムに導入する時や、通信経路の確立時、通信経路を確立する装置の変更があった場合等にアドレスを入力する等の作業を行わなくてよい。
【００６２】
また、ゲートサーバー６０の第２通信管理部６１は、ゲートサーバー６０の負荷の状態、及び、印刷制御サーバー１０Ａの負荷の状態を取得し、取得されたゲートサーバー６０の負荷の状態及び印刷制御サーバー１０Ａの負荷の状態に基づいて送信するアドレスがサーバーアドレスであるか装置アドレスであるかを決定する。
この構成によれば、ゲートサーバー６０は、印刷装置１２から通信経路の要求があった場合に、ゲートサーバー６０、及び、印刷制御サーバー１０Ａのうち、加わっている負荷が小さい装置との間で、通信経路を確立させることができる。
【００６３】
また、ゲートサーバー６０の第２通信管理部６１は、印刷制御サーバー１０Ａに接続される印刷装置１２の数を取得する。
この構成によれば、ゲートサーバー６０は、印刷制御サーバー１０Ａに接続される印刷装置１２の数に基づいて、印刷制御サーバー１０Ａの負荷の状態を推測可能である。
【００６４】
また、ゲートサーバー６０は複数の印刷装置１２と接続し、ゲートサーバー６０の第２通信管理部６１は、ゲートサーバー６０に接続される印刷装置１２の数を取得し、印刷制御サーバー１０Ａに接続される印刷装置１２の数とゲートサーバー６０に接続される印刷装置１２との数に基づいて送信するアドレスがサーバーアドレスであるか装置アドレスであるかを決定する。
ここで、接続される印刷装置１２が少ない装置は、多い装置と比較して、加わる各種負荷（ＣＰＵの負荷、通信の負荷、その他の負荷等）が小さい蓋然性が高い。そして、上記構成によれば、ゲートサーバー６０は、加わる負荷の小さい装置と、印刷装置１２とを接続させることができる。
【００６５】
また、印刷装置１２の通信制御部１５は、印刷装置１２に電源が投入されたときに、通信経路の確立の要求を送信する。
この構成によれば、印刷装置１２は、電源投入時に、ユーザーの作業を経ることなく、対応する装置のアドレスを取得して、対応する装置と通信経路を確立できる。
【００６６】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
上述した実施形態では、印刷装置１２は店舗に用いる店舗システム１１に設けられていた。しかしながら、印刷装置１２は、必ずしも、店舗システム１１に設けられたものでなくてもよい。例えば、他のシステムに設けられたものであってもよい。
また、上述した実施形態では、印刷制御サーバー１０Ａから、印刷装置１２に対して、ＸＭＬファイルの印刷制御データを送信していたが、印刷制御データのデータ形式はＸＭＬでなくともよい。例えば、他のマークアップ言語で生成されたデータであってもよく、また、印刷部１８のコマンド体系の制御コマンドであってもよい。
また、図３に示す各機能ブロックはハードウェアとソフトウェアにより任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、印刷装置１２の機能を、当該装置に外部接続される別の装置に持たせるようにしてもよい。また、印刷装置１２は、外部接続される記憶媒体に記憶させたプログラムを実行することによって、各種処理を実行してもよい。
【符号の説明】
【００６７】
１…印刷制御システム、１０Ａ…印刷制御サーバー（印刷制御装置）、１２…印刷装置、１５…通信制御部、１６…第１通信部（通信部）、１７…印刷制御部、１８…印刷部、１９…印刷装置記憶部（装置記憶部）、２６…第１接続部（接続部）、２７…第１印刷データ処理部、６１…第２通信管理部（通信管理部）、６２…第２印刷データ処理部、６４…第２記憶部（サーバー記憶部）、６５…第１通信接続部（通信接続部）、ＣＴ…ＷｅｂＳｏｃｋｅｔコネクション。
【図１】
2015127877.tif 000003
【図２】
2015127877.tif 000004
【図３】
2015127877.tif 000005
【図４】
2015127877.tif 000006
【図５】
2015127877.tif 000007
【図６】
2015127877.tif 000008
【図７】
2015127877.tif 000009
【図８】
2015127877.tif 000010