(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024115108
(43)【公開日】2024-08-26
(54)【発明の名称】中継サーバー、印刷システム、中継方法、及びプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240819BHJP
【FI】
G06F3/12 336
G06F3/12 303
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023020590
(22)【出願日】2023-02-14
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【弁理士】
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【弁理士】
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【弁理士】
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】中島 祐介
(72)【発明者】
【氏名】竹田 優
(57)【要約】
【課題】印刷処理を行う印刷処理システムが複数連携するような印刷システムにおいて、ユーザー数を制限するような仕組みを提供する。
【解決手段】本発明の一態様にかかる中継サーバー50は、第1印刷処理システム30と、画像形成装置に接続される第2印刷処理システム40とを中継する。中継サーバー50は、第1印刷処理システム30から印刷データを取得する印刷データ取得部と、第1印刷処理システム30に印刷データを送信した送信者を示す送信者情報を取得する情報取得部と、を備える。中継サーバー50は、送信者情報に基づき、中継サーバー50のユーザーの上限数を示す第1閾値を超えているか否かを判定する判定部と、実行部と、を備える。実行部は、判定部が第1閾値を超えていないと判定した場合、印刷データ取得部で取得された印刷データについての画像形成装置での印刷処理を、第2印刷処理システム40を介して実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継サーバーであって、
前記第1印刷処理システムから印刷データを取得する印刷データ取得部と、
前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得する情報取得部と、
前記送信者情報に基づき、前記中継サーバーのユーザーの上限数を示す第1閾値を超えているか否かを判定する判定部と、
前記判定部が前記第1閾値を超えていないと判定した場合、前記印刷データ取得部で取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する実行部と、
を備える中継サーバー。
【請求項2】
前記情報取得部は、前記第1印刷処理システムから前記送信者情報を取得する、
請求項1に記載の中継サーバー。
【請求項3】
前記判定部が前記第1閾値を超えていないと判定した場合、前記送信者情報が示す前記送信者を前記ユーザーとしてカウントするカウント部と、
前記カウント部でのカウントに従い、前記ユーザーの総数を記憶する総数記憶部と、
を備え、
前記実行部は、前記印刷データ取得部で取得された前記印刷データについて、前記印刷データの前記送信者が前記ユーザーである場合、前記印刷データについての印刷処理を実行する、
請求項1又は2に記載の中継サーバー。
【請求項4】
前記カウント部は、前記判定部が前記第1閾値を超えていないと判定した場合で、且つ、前記送信者情報が示す前記送信者が前記ユーザーとしてカウントされていない場合、前記送信者情報が示す前記送信者を前記ユーザーとしてカウントする、
請求項3に記載の中継サーバー。
【請求項5】
前記判定部は、前記第1閾値の代わりに、前記上限数から前記ユーザーのうちの印刷を制限されない非制限ユーザーの数を差し引いた第2閾値を超えているか否かを判定し、
前記送信者情報で示される前記送信者が印刷を制限されない非制限ユーザーであった場合、前記カウント部は、前記送信者を前記ユーザーとしてカウントしない、
請求項3に記載の中継サーバー。
【請求項6】
前記判定部は、前記送信者情報で示される前記送信者が印刷を優先して実行させる優先送信者であった場合、前記上限数以下の、前記ユーザーのうちの印刷を優先させる優先ユーザーについての上限の数を示す第3閾値を超えているか否かを判定する処理を実行し、
前記中継サーバーは、
前記判定部が前記第3閾値を超えていないと判定した場合、前記送信者情報が示す前記優先送信者を前記優先ユーザーとしてカウントするカウント部と、
前記カウント部でのカウントに従い、前記優先ユーザーの総数を記憶する総数記憶部と、
を備え、
前記実行部は、前記印刷データ取得部で取得された前記印刷データについて、前記印刷データの前記送信者が前記優先ユーザーである場合、前記印刷データについての印刷処理を実行する、
請求項1又は2に記載の中継サーバー。
【請求項7】
前記情報取得部は、前記第1印刷処理システムから前記送信者が前記優先送信者であるか否かを示す情報を取得する、
請求項6に記載の中継サーバー。
【請求項8】
前記判定部は、前記送信者情報で示される前記送信者が前記優先送信者でなかった場合、前記第1閾値から前記第3閾値を差し引いた第4閾値を超えているか否かを判定する処理を実行し、
前記カウント部は、前記判定部が前記第4閾値を超えていないと判定した場合、前記送信者情報が示す前記送信者を前記ユーザーとしてカウントし、
前記総数記憶部は、前記カウント部でのカウントに従い、前記ユーザーの総数を記憶し、
前記実行部は、前記印刷データ取得部で取得された前記印刷データについて、前記印刷データの前記送信者が前記ユーザーである場合、前記印刷データについての印刷処理を実行する、
請求項6に記載の中継サーバー。
【請求項9】
前記判定部が前記第1閾値を超えていると判定した場合、前記第1印刷処理システムに通知する通知部を備える、
請求項1又は2に記載の中継サーバー。
【請求項10】
前記第2印刷処理システムを備える、
請求項1又は2に記載の中継サーバー。
【請求項11】
第1印刷処理システムに接続される中継サーバーと、
前記中継サーバーに接続され且つ画像形成装置に接続される第2印刷処理システムと、
を備え、
前記中継サーバーは、
前記第1印刷処理システムと前記第2印刷処理システムとの中継を行うサーバーであり、
前記第1印刷処理システムから印刷データを取得する印刷データ取得部と、
前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得する情報取得部と、
前記送信者情報に基づき、前記中継サーバーのユーザーの上限数を示す第1閾値を超えているか否かを判定する判定部と、
前記判定部が前記第1閾値を超えていないと判定した場合、前記印刷データ取得部で取得された前記印刷データについての前記画像形成装置での印刷処理の指示を、前記第2印刷処理システムに出力する処理を実行する実行部と、
を備え、
前記第2印刷処理システムは、前記指示に従い、前記画像形成装置に前記印刷処理を指示する、
印刷システム。
【請求項12】
第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継処理を行う中継方法であって、
前記第1印刷処理システムから印刷データを取得し、
前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得し、
前記送信者情報に基づき、前記中継処理のサービスを提供するユーザーの上限数を示す第1閾値を超えているか否かを判定し、
前記第1閾値を超えていないと判定した場合、取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する、
中継方法。
【請求項13】
コンピューターが、第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継処理を実行するためのプログラムであって、
前記中継処理は、
前記第1印刷処理システムから印刷データを取得し、
前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得し、
前記送信者情報に基づき、前記中継処理のサービスを提供するユーザーの上限数を示す第1閾値を超えているか否かを判定し、
前記第1閾値を超えていないと判定した場合、取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、中継サーバー、印刷システム、中継方法、及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、情報処理装置と、第1サーバーシステムと、管理サーバーシステムと、を備える印刷システムが開示されている。ここで、第1サーバーシステムは、第1権限の第1ユーザーからの指示に基づき管理サーバーシステムから出力される要求を受信した場合、第1サーバーシステムに第1プリンター情報を登録する登録手段を備える。管理サーバーシステムは、第1権限よりも制限された権限である第2権限の第2ユーザーからの指示に基づき、第1プリンター情報と、印刷装置の第2プリンター情報と、を関連付けて管理サーバーシステムの保存部に保存する保存処理を実行する制御手段を備える。第2プリンター情報は、第1サーバーシステム及び管理サーバーシステムとは異なる第2サーバーシステムに登録されている。管理サーバーシステムでは、上記の保存処理が実行されることにより、第2ユーザーからの印刷指示を受け付けた情報処理装置から出力される印刷ジョブが、第1サーバーシステム及び第2サーバーシステムを介して、印刷装置により受信可能となる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の印刷システムは、複数のサーバーシステムが連携するシステムであるが、ユーザー数を制限する仕組みがない。よって、印刷処理を行う印刷処理システムが複数連携するような印刷システムにおいて、ユーザー数を制限するような仕組みの開発が望まれる。
【課題を解決するための手段】
【0005】
本発明の一態様にかかる中継サーバーは、第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継サーバーであって、前記第1印刷処理システムから印刷データを取得する印刷データ取得部と、前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得する情報取得部と、前記送信者情報に基づき、前記中継サーバーのユーザーの上限数を示す第1閾値を超えているか否かを判定する判定部と、前記判定部が前記第1閾値を超えていないと判定した場合、前記印刷データ取得部で取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する実行部と、を備えるものである。
【0006】
本発明の一態様にかかる印刷システムは、第1印刷処理システムに接続される中継サーバーと、前記中継サーバーに接続され且つ画像形成装置に接続される第2印刷処理システムと、を備え、前記中継サーバーは、前記第1印刷処理システムと前記第2印刷処理システムとの中継を行うサーバーであり、前記第1印刷処理システムから印刷データを取得する印刷データ取得部と、前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得する情報取得部と、前記送信者情報に基づき、前記中継サーバーのユーザーの上限数を示す第1閾値を超えているか否かを判定する判定部と、前記判定部が前記第1閾値を超えていないと判定した場合、前記印刷データ取得部で取得された前記印刷データについての前記画像形成装置での印刷処理の指示を、前記第2印刷処理システムに出力する処理を実行する実行部と、を備え、前記第2印刷処理システムは、前記指示に従い、前記画像形成装置に前記印刷処理を指示する、ものである。
【0007】
本発明の一態様にかかる中継方法は、第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継処理を行う中継方法であって、前記第1印刷処理システムから印刷データを取得し、前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得し、前記送信者情報に基づき、前記中継処理のサービスを提供するユーザーの上限数を示す第1閾値を超えているか否かを判定し、前記第1閾値を超えていないと判定した場合、取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する、ものである。
【0008】
本発明の一態様にかかるプログラムは、コンピューターが、第1印刷処理システムと、画像形成装置に接続される第2印刷処理システムとを中継する中継処理を実行するためのプログラムであって、前記中継処理は、前記第1印刷処理システムから印刷データを取得し、前記第1印刷処理システムに前記印刷データを送信した送信者を示す送信者情報を取得し、前記送信者情報に基づき、前記中継処理のサービスを提供するユーザーの上限数を示す第1閾値を超えているか否かを判定し、前記第1閾値を超えていないと判定した場合、取得された前記印刷データについての前記画像形成装置での印刷処理を、前記第2印刷処理システムを介して実行する、ものである。
【図面の簡単な説明】
【0009】
【
図1】実施の形態にかかる印刷システムの一構成例を示すブロック図である。
【
図2】
図1の印刷システムにおける中継サーバーの一構成例を示すブロック図である。
【
図3】
図1の印刷システムにおいて実行される中継処理の一例を説明するためのシーケンス図である。
【
図4】
図1の印刷システムにおいて実行される中継処理の他の例を説明するためのシーケンス図である。
【
図5】
図4の中継処理で参照される或る時点での中継サーバーのユーザー総数に対する非制限ユーザー及び優先送信者の一例を示す図である。
【
図6】
図4の中継処理で参照される或る時点での中継サーバーのユーザー総数に対する非制限ユーザー及び優先送信者の他の例を示す図である。
【
図7】
図4の中継処理で参照される或る時点での中継サーバーのユーザー総数に対する非制限ユーザー及び優先送信者の他の例を示す図である。
【
図8】装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。なお、各図は、本発明の実施の形態を説明するための例示に過ぎない。また、本発明の実施の形態で説明する構成要素の全てが本発明の必須の構成要件とは限らない。
【0011】
(実施の形態)
本実施の形態にかかる印刷システムの一構成例について、
図1を参照しながら説明する。
図1は、実施の形態にかかる印刷システムの一構成例を示すブロック図である。
【0012】
図1に示すように、本実施の形態にかかる印刷システム1は、クライアント10、第1プリンター21、第2プリンター22、第3プリンター23、第1印刷処理システム30、第2印刷処理システム40、及び中継サーバー50を備えることができる。
【0013】
以下、
図1に示す印刷システム1を、本実施の形態にかかる印刷システムの一例として説明するが、例えば、中継サーバー50及び第2印刷処理システム40で構成される部分など、印刷システム1のうちの任意の複数の構成を、印刷システムと称することもできる。なお、本明細書中、サーバーとはサーバーコンピューターを指すことができるが、サーバープログラムと読み替えることもできる。
【0014】
クライアント10は、パーソナルコンピューター(PC)、スマートフォン、タブレット型端末等の通信機能を備えた情報処理装置であり、印刷を望むユーザーによって使用されることができる。クライアント10は、操作のためのインターフェイスとして、図示しない表示部や操作部を備えることができる。図示しないが、印刷システム1には、複数のクライアント10を備えることができる。
【0015】
クライアント10は、印刷要求を送信する処理などのために第1印刷処理システム30とネットワークを介するなどして接続される。クライアント10は、プリンターを選択して印刷要求を行うためのプリンタードライバー11を備えることができる。本実施の形態において、選択対象のプリンターは、印刷ジョブ等の管理のために、第1印刷処理システム30に登録されている後述の仮想プリンターとなる。
【0016】
選択されたプリンターについてのプリンタードライバー11は、クライアント10のユーザーが印刷を望む文書ファイル等の印刷対象ファイルを、そのプリンターで印刷可能な形式のデータである印刷データに変換することができる。クライアント10は、この印刷データが添付された又は含まれた印刷要求を第1印刷処理システム30に送信することができる。以下、印刷要求には、印刷データが添付されるものとして説明する。
【0017】
また、クライアント10は、第1印刷処理システム30、中継サーバー50、第2印刷処理システム40などにおける各種設定のためのユーザーインターフェイス画像を表示部に表示させるために、ブラウザー12を備えることができる。クライアント10のユーザーは、ブラウザー12から各種設定を行うことができる。この設定にはプリンターの登録設定も含むことができる。また、このような設定のために、クライアント10は、中継サーバー50、第2印刷処理システム40とネットワークを介するなどして接続されることができる。
【0018】
第1プリンター21、第2プリンター22、第3プリンター23は、いずれも画像形成装置の例であり、印刷データを受信した場合、媒体に印刷することができる。また、便宜上、印刷システム1はこのように3つのプリンターが含まれる構成であることを前提に説明するが、少なくとも1つの画像形成装置が含まれていればよい。また、画像形成装置は、通信機能と印刷機能をもつ装置であればよいが、スキャナー機能、コピー機能などの他の機能をもつ複合機であってもよい。また、画像形成装置における印刷方式は問わず、例えばインクジェット印刷方式、レーザー印刷方式など様々な印刷方式が適用できる。
【0019】
なお、以下、第1プリンター21、第2プリンター22、第3プリンター23を、それぞれ単にプリンター21、22、23と称する。プリンター21~23は、クライアント10のユーザーが印刷物を取りに行ける位置に配されているが、印刷物の配送を考慮すればプリンターとクライアント10との距離は問わない。
【0020】
第1印刷処理システム30は、クライアント10から印刷要求及び印刷データを受信し、印刷処理を行うシステムであり、その印刷処理として中継サーバー50にその印刷要求及び印刷データを送信することになる。また、第1印刷処理システム30は、1又は複数のプリンターについての印刷ジョブの管理や印刷設定に関するプロパティーの管理などを行うシステムとすることができる。この印刷ジョブは、受信された印刷要求及び印刷データについての印刷ジョブとなる。
図1の例では、第1印刷処理システム30は、印刷システム1に含まれるプリンター21~23のうち2つのプリンターの印刷ジョブ等の管理を行うように仮想プリンターが登録されている。
【0021】
ここでは、第1印刷処理システム30の管理対象のプリンターが第1仮想プリンター31及び第2仮想プリンター32である例を挙げているが、管理対象のプリンターの数はこれに限らない。この管理対象のプリンターは、任意にクライアント10あるいは管理者が使用するコンピューターから第1印刷処理システム30にアクセスして登録しておくことができる。なお、管理者が使用するコンピューターは、クライアント10と同様に情報処理装置とすることができ、クライアント10の1つであるとも言える。以下、便宜上、印刷指示を行うクライアント10が、事前に管理対象のプリンターの登録などの設定も行うものとして説明する。また、第1仮想プリンター31、第2仮想プリンター32を、それぞれ単に仮想プリンター31、32と称する。
【0022】
以下では、仮想プリンター31がプリンター23に対応付けられた仮想プリンターであり、仮想プリンター32がプリンター21に対応付けられた仮想プリンターである例を挙げて説明する。
【0023】
ここで、第1印刷処理システム30は、管理対象のプリンター23、21にネットワークを介するなどして接続されることで、それらのプリンターに対応する仮想プリンターの登録が可能となる。但し、この接続は、中継サーバー50及び第2印刷処理システム40を介した接続であってもよい。つまり、印刷システム1で印刷対象とするプリンターの第1印刷処理システム30への登録は、クライアント10から中継サーバー50を介して行うことができる。
【0024】
その登録内容である仮想プリンター31、32とプリンター23、21とをそれぞれ紐づけた対応情報は、中継サーバー50にも後述する第2印刷処理システム40における同様の対応情報と関連付けて登録される。中継サーバー50を介さない登録方法を採用した場合には、中継サーバー50は中継処理のために、第1印刷処理システム30から登録内容である対応情報を取得して後述する第2印刷処理システム40における同様の対応情報と関連付けて登録すればよい。
【0025】
なお、第1印刷処理システム30は、クライアント10からの利用が可能なように、クライアント10のユーザーを第1印刷処理システム30のユーザーとしてユーザー登録しておく必要があるシステムとすることができる。その場合、第1印刷処理システム30では、クライアント10からのアクセスに対し、ユーザー認証を行い、認証に成功した場合にのみ、印刷要求及び印刷データや仮想プリンターの登録などを受け付けるとよい。また、このユーザー登録は、ユーザー毎のライセンス制あるいはユーザー数を規定したライセンス制とすることもできる。
【0026】
また、第1印刷処理システム30は、サーバーで構成されることができ、第1印刷処理サーバーと称することができる。また、第1印刷処理システム30は、単体の装置で構成されることもできるが、複数の装置に機能を分散した分散システムとして構築することもできる。また、第1印刷処理システム30は、クラウド上で印刷サービスを提供するシステムとして構築されていることを前提に説明する。但し、第1印刷処理システム30は、ローカルネットワーク上のシステムとして構築することもできる。
【0027】
第2印刷処理システム40は、印刷を実行する1又は複数のプリンターにネットワークを介するなどして接続されるシステムであり、クライアント10から送信され第1印刷処理システム30を経て中継サーバー50から送信された印刷要求及び印刷データを受信する。そして、第2印刷処理システム40は、この印刷要求及び印刷データを接続されたプリンターに送信する。第2印刷処理システム40は、このような印刷要求の管理、つまり接続されたプリンターについての印刷ジョブの管理や、印刷設定に関するプロパティーの管理などを行うシステムとすることができる。
図1の例では、第2印刷処理システム40は、印刷システム1に含まれるプリンター21~23のうちの全てのプリンターの印刷ジョブ等の管理を行うシステムとなっている。
【0028】
ここでは、第2印刷処理システム40の管理対象のプリンターが第1仮想プリンター41、第2仮想プリンター42、及び第3仮想プリンター43である例を挙げているが、管理対象のプリンターの数はこれに限らない。この管理対象のプリンターは、任意にクライアント10あるいは管理者が使用するコンピューターから第2印刷処理システム40にアクセスして登録しておくことができる。以下、便宜上、第2印刷処理システム40についても、印刷指示を行うクライアント10が、事前に管理対象のプリンターの登録などの設定も行うものとして説明する。また、第1仮想プリンター41、第2仮想プリンター42、第3仮想プリンター43を、それぞれ単に仮想プリンター41、42、43と称する。
【0029】
以下では、仮想プリンター41、42、43がそれぞれプリンター21、22、23に対応付けられた仮想プリンターである例を挙げて説明する。ここで、第2印刷処理システム40は、管理対象のプリンター21~23にネットワークを介するなどして接続されており、それらのプリンターに対応する仮想プリンターの登録が可能である。但し、印刷システム1で印刷対象とするプリンターの第2印刷処理システム40への登録は、クライアント10から中継サーバー50を介して行うことができる。
【0030】
その登録内容である仮想プリンター41、42、43とプリンター21、22、23とをそれぞれ紐づけた対応情報は、中継サーバー50にも第1印刷処理システム30における同様の対応情報と関連付けて登録される。中継サーバー50を介さない登録方法を採用した場合には、中継サーバー50は中継処理のために、第2印刷処理システム40から登録内容である対応情報を取得して第1印刷処理システム30における同様の対応情報と関連付けて登録すればよい。
【0031】
なお、第2印刷処理システム40は、クライアント10からの中継サーバー50を介さない直接の利用が可能なように、クライアント10のユーザーを第2印刷処理システム40のユーザーとしてユーザー登録しておく必要があるシステムとすることもできる。その場合、第2印刷処理システム40では、クライアント10からのアクセスに対し、ユーザー認証を行い、認証に成功した場合にのみ、仮想プリンターの登録などを受け付けるとよい。また、このユーザー登録は、ユーザー毎のライセンス制あるいはユーザー数を規定したライセンス制とすることもできる。
【0032】
また、第2印刷処理システム40は、サーバーで構成されることができ、第2印刷処理サーバーと称することができる。また、第2印刷処理システム40は、単体の装置で構成されることもできるが、複数の装置に機能を分散した分散システムとして構築することもできる。
【0033】
また、第2印刷処理システム40は、クラウド上で印刷サービスを提供するシステムとして構築されていることを前提に説明する。特に、第2印刷処理システム40は、電子メールを使用した印刷要求及び印刷データの送信を可能とするシステムとして構築することができる。その場合、第2印刷処理システム40は、VPN(Virtual Private Network)を介しても印刷要求及び印刷データをプリンター21~23側に送信することができる利点がある。但し、第2印刷処理システム40は、ローカルネットワーク上のシステムとして構築することもできる。
【0034】
中継サーバー50は、第1印刷処理システム30と第2印刷処理システム40とを中継するサーバーであり、第1印刷処理システム30と第2印刷処理システム40にネットワークを介するなどして接続する通信機能を備える。
【0035】
中継サーバー50は、クライアント10から第1印刷処理システム30に送信された印刷要求及び印刷データに基づく印刷処理を遂行するために、その印刷要求及び印刷データを第2印刷処理システム40に中継する中継処理を行う。
【0036】
中継サーバー50では、その中継処理を行うために、プリンター21~23、仮想プリンター41~43、及び仮想プリンター31~32の紐づけを行っておく。
図1の例では、中継サーバー50には、この紐づけを行う対応情報として、第1紐づけ情報51及び第2紐づけ情報52が登録されている。中継サーバー50は、この登録のために、第1印刷処理システム30及び第2印刷処理システム40を介して、仮想プリンターとして登録されているプリンターや登録可能なプリンターに関する情報を取得することができる。
【0037】
中継サーバー50は、第1印刷処理システム30から印刷要求及び印刷データを取得する。この取得は、第1印刷処理システム30から印刷要求及び印刷データを取得した旨の通知を受けて、実行することもできる。また、中継サーバー50は、第1紐づけ情報51及び第2紐づけ情報52を参照し、その印刷要求の対象となる第2印刷処理システム40の仮想プリンターを指定した印刷要求と受信した印刷データとを送信する。また、この送信に先立ち、中継サーバー50は、上記通知又は取得した印刷要求に示されたプリンターの情報を取得し、そのプリンターが有効化された機器であるか否かを判定し、有効化されている場合のみ印刷データ等の送信を行うこともできる。
【0038】
第1紐づけ情報51は、第1印刷処理システム30の登録内容と第2印刷処理システム40の登録内容とに基づき、仮想プリンター31と仮想プリンター43とをプリンター23の仮想プリンターとして紐づけた情報である。第1紐づけ情報51が仮想プリンター31と仮想プリンター43とが紐づけられた情報であれば、中継処理により、プリンター23での印刷が可能となる。なお、第1印刷処理システム30では、仮想プリンター31として、第2印刷処理システム40で登録されている仮想プリンター43を登録することでも、同様の第1紐づけ情報51の登録及び中継処理が可能である。
【0039】
第2紐づけ情報52は、第1印刷処理システム30の登録内容と第2印刷処理システム40の登録内容とに基づき、仮想プリンター32と仮想プリンター41とをプリンター21の仮想プリンターとして紐づけた情報である。第2紐づけ情報52が仮想プリンター32と仮想プリンター41とが紐づけられた情報であれば、中継処理により、第2印刷処理システム40を介してプリンター21での印刷が可能となる。なお、第1印刷処理システム30では、仮想プリンター32として、第2印刷処理システム40で登録されている仮想プリンター41を登録することでも、同様の第2紐づけ情報52の登録及び中継処理が可能である。
【0040】
また、中継サーバー50は、単体の装置で構成されることもできるが、複数の装置に機能を分散した分散システムとして構築することもできる。また、中継サーバー50は、クラウドシステムとして構築されていることを前提に説明するが、ローカルネットワーク上のシステムとして構築することもできる。
【0041】
上述のような構成の印刷システム1は、クライアント10からの印刷要求及び印刷データを第1印刷処理システム30が受信し、中継サーバー50での中継処理を経て第2印刷処理システム40に渡され、最終的にプリンターで印刷を実行させることになる。
【0042】
そして、本実施の形態にかかる印刷システム1では、中継サービスのユーザーの数を予め定めた上限値で制限する処理を行い、この処理を中継サーバー50が担うことになる。つまり、中継サーバー50は、予め決められた上限値の人数の範囲内で印刷を利用させるような中継処理を行う。この中継処理では、クライアント10からの印刷が制限される場面もあることになる。
【0043】
次に、
図2を用いて、このような制限を伴う中継処理の一例について、並びにその中継処理を行う中継サーバー50の構成例について説明する。
図2は、
図1の印刷システム1における中継サーバー50の一構成例を示すブロック図である。
【0044】
図2に示すように、中継サーバー50は、制御部60、記憶部70、及び通信部80を備えることができる。制御部60は、印刷データ取得処理部61、送信者情報取得処理部62、判定部63、及び実行処理部64を備えることができる。さらに、制御部60は、カウント部65及び記憶処理部66を備えることもできる。さらに、制御部60は、通知処理部67を備えることもできる。
【0045】
制御部60は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の演算処理装置と、作業用メモリーと、制御用のプログラムやパラメーター等を記憶する記憶装置とを含んで構成されることができる。制御部60は、SoC(System on a Chip)として構成することもできる。これらの例からも分かるように、制御部60は、制御用のプログラムを実行可能な状態で記憶する構成とすることができる。但し、制御部60は、制御用のプログラムをFPGA(field-programmable gate array)のように回路構成として記憶する構成とすることや、あるいは専用の回路として構成することもできる。印刷データ取得処理部61、送信者情報取得処理部62、判定部63、実行処理部64、カウント部65、記憶処理部66、及び通知処理部67は上記のプログラムとして実装することができる。上記のプログラムは、演算処理装置が記憶部70及び通信部80と協働しながら各部61~67の機能を実現するためのプログラムを含むことができる。
【0046】
記憶部70は、例えば、ハードディスクドライブや、ソリッドステートドライブや、その他のメモリーによる記憶装置である。制御部60が備えるメモリーの一部を記憶部70と捉えてもよい。つまり、記憶部70は、制御部60の一部と捉えることもできる。
【0047】
記憶部70には、第1紐づけ情報51及び第2紐づけ情報52で例示した紐づけ情報71が記憶され、中継処理を行う際に参照されることで、クライアント10が望むプリンター21~23のいずれかに印刷データを送信して印刷を行うことができる。なお、紐づけ情報71はテーブルとて記憶されることができる。また、記憶部70には、後述する総数72も記憶されることができる。
【0048】
通信部80は、所定の通信規格を含む所定の通信プロトコルに準拠して有線接続又は無線接続により1又は複数の外部装置と通信を実行するための1又は複数の通信インターフェイスとすることができる。印刷システム1には、この外部装置として、少なくとも第1印刷処理システム30及び第2印刷処理システム40が含まれることになる。上述したように、印刷システム1は、通信部80が外部装置としてのクライアント10とも通信するように構成されることができる。
【0049】
印刷データ取得処理部61は、第1印刷処理システム30から通信部80を介して印刷データを取得する。この取得は、第1印刷処理システム30から印刷要求を受信した旨の通知を受けて実行されることができるが、第1印刷処理システム30側から自発的に印刷要求とともに印刷データを送信することでも実行されることができる。このように、取得される印刷データは、クライアント10から第1印刷処理システム30に印刷要求とともに送信され、第1印刷処理システム30により転送された印刷データである。印刷データ取得処理部61は、取得した印刷データを一時的に記憶部70に格納しておくことができる。印刷データ取得処理部61と通信部80とは、第1印刷処理システム30から印刷データを取得する印刷データ取得部の一例である。
【0050】
送信者情報取得処理部62は、送信者情報を、通信部80を介して取得する。ここで、送信者情報は、第1印刷処理システム30にこの印刷データを送信した送信者を示す情報である。送信者情報取得処理部62は、第1印刷処理システム30から送信者情報を取得することができ、そのような取得経路を前提として説明するが、図示しない別のシステムを経由して取得されることもできる。このような取得のために、第1印刷処理システム30は送信者情報を管理しておけばよい。
【0051】
また、送信者情報の取得のタイミングは、第1印刷処理システム30から取得される印刷データと同時でもよいし、印刷データの取得後であっても、取得前であっても、印刷データについての送信者情報であることが判別できればよい。また、この取得は、第1印刷処理システム30から印刷要求を受信した旨の通知を受けて実行されることができるが、第1印刷処理システム30側から自発的に印刷要求とともに又は印刷要求に含めて送信者情報を送信することでも実行されることができる。
【0052】
送信者情報取得処理部62は、取得した送信者情報を一時的に記憶部70に格納しておくことができる。送信者情報取得処理部62と通信部80とは、上述のような送信者情報を取得する情報取得部の一例である。
【0053】
判定部63は、送信者情報取得処理部62で取得された送信者情報に基づき、中継サーバー50のユーザーの上限数を示す第1閾値を超えているか否かを判定する。例えば、判定部63は、今回取得された送信者情報が示す送信者を中継サーバー50のユーザーとするような場合に第1閾値を超えると判定すればよい。この判定は、印刷データ取得処理部61で取得された印刷データに関して、印刷の制限を行うか否かの判定となる。
【0054】
以下、中継サーバー50のユーザー、つまり中継サーバー50による中継サービスを享受できるユーザーを、中継ユーザーと称し、また中継サーバー50のユーザー情報を中継ユーザー情報と称する。判定部63での判定は、今回取得された送信者情報も含め、この時点で取得されている送信者情報全てを参照してなされることができる。なお、送信者情報そのもの、あるいは送信者情報に含まれる送信者に関する情報、例えば印刷を制限しない送信者を示すことになる中継ユーザー情報は、参照するために記憶部70に記憶されることができる。
【0055】
実行処理部64は、判定部63が第1閾値を超えていないと判定した場合、印刷データ取得処理部61で取得された印刷データについてのプリンターでの印刷処理を、第2印刷処理システム40を介して実行する。つまり、実行処理部64は、判定部63が第1閾値を超えていないと判定した場合、印刷データ取得処理部61で取得された印刷データについてのプリンターでの印刷処理を許可し、その印刷処理を、第2印刷処理システム40を用いて実行することになる。
【0056】
このような第1閾値による印刷処理の実行/不実行は、上述した中継処理でなされる中継ユーザーの制限に該当する。第1閾値によるこのような印刷の制限は、中継ユーザー数のカウントを行うことで実施されることができ、そのような例についてはカウント部65等の説明として後述する。
【0057】
実行処理部64は、かかる印刷処理の指示を、通信部80を介して第2印刷処理システム40に出力することで、印刷処理を実行することができる。第2印刷処理システム40は、この指示に従い、プリンターに上記印刷処理を指示し、それを受けたプリンターが上記印刷処理を実行する。
【0058】
また、実行処理部64と通信部80とは、判定部63が第1閾値を超えていないと判定した場合、印刷データ取得処理部61で取得された印刷データについてのプリンターでの印刷処理を、第2印刷処理システム40を介して実行する実行部の一例である。
【0059】
中継サーバー50は、上述のような構成を備えることで、印刷処理を行う印刷処理システムが2つ連携するような印刷システムにおいて、中継ユーザー数を制限することができる。
【0060】
このように、中継サーバー50が実行する中継処理は、第1印刷処理システム30から印刷データを取得すること、第1印刷処理システム30にその印刷データを送信した送信者を示す送信者情報を取得することを含む。この中継処理は、さらに、送信者情報に基づき、中継処理のサービスを提供するユーザーの上限数を示す第1閾値を超えているか否かを判定することを含む。この中継処理は、さらに、第1閾値を超えていないと判定した場合、取得された印刷データについてのプリンターでの印刷処理を、第2印刷処理システム40を介して実行する処理を含む。
【0061】
次に、中継サーバー50に備えることができるカウント部65、記憶処理部66、及び通知処理部67について説明する。
【0062】
カウント部65は、判定部63が第1閾値を超えていないと判定した場合、送信者情報が示す送信者を中継ユーザーとしてカウントする。ここで、カウント部65は、中継ユーザーとしてカウントを行うため、第1閾値を超えていなかった場合でも送信者の重複カウントは行わないことを意味する。
【0063】
より具体的には、カウント部65は、判定部63が第1閾値を超えていないと判定した場合において、送信者情報が示す送信者が中継ユーザーとしてカウントされていない場合、その送信者を中継ユーザーとしてカウントすることができる。あるいは、判定部63は、まず今回の送信者が既に登録された中継ユーザーであるか否かを判定して、既に登録された中継ユーザーでなかった場合にのみ第1閾値を用いた判定を行うように構成しておくこともできる。その場合、カウント部65は、判定部63が第1閾値を超えていないと判定した場合、送信者情報が示す送信者を中継ユーザーとしてカウントすればよい。
【0064】
記憶処理部66は、カウント部65でのカウントに従い、中継ユーザーの総数72を記憶部70に記憶させる処理を行う。記憶処理部66及び記憶部70は、このような総数72、つまり総カウント数を記憶する総数記憶部の一例である。
【0065】
この総数72は、中継サーバー50における中継ユーザーの上限値とすることができ、中継サーバー50は、この上限値により中継ユーザー数を制限することになる。よって、中継サーバー50を提供する業者は、中継ユーザー数を上限値で規定したライセンス制の中継サービスを、例えばクライアント10が設置された企業等に提供することができる。
【0066】
また、記憶処理部66は、送信者情報の登録処理として、送信者情報が示す送信者が中継ユーザーとしてカウントされた場合、その送信者情報を記憶部70に中継ユーザー情報として登録する処理を行うことができる。無論、登録時には、送信者情報に含まれる内容そのものを中継ユーザー情報として登録しなくても、中継ユーザー情報がその送信者を示す情報を含んでいればよい。
【0067】
そして、実行処理部64は、印刷データ取得処理部61で取得された印刷データについて、その印刷データの送信者が中継ユーザーである場合には、印刷処理を許可し、通信部80を介して実行することになる。換言すれば、実行処理部64は、送信者が中継ユーザーとしてカウントされた場合、つまり総数72が更新された場合と、送信者が中継ユーザーとして既にカウントされていた場合との双方において、印刷処理を許可するとよい。このように、実行処理部64は、印刷データの送信者が総数72に含まれるようにカウントされた送信者であった場合には、そのカウントが現時点で加算されたカウントではなく過去のカウントであっても、印刷処理を許可することができる。
【0068】
一方で、カウント部65は、判定部63が第1閾値を超えたと判定した場合、送信者情報が示す送信者を中継ユーザーとしてカウントせず、実行処理部64は、その送信者の印刷要求を制限すること、つまり許可しないことになる。
【0069】
また、判定部63が第1閾値を超えていると判定した場合、このような制限に加えて、通知処理部67が、通信部80を介して、第1印刷処理システム30に通知する処理を行うこともできる。通知内容は、制限により印刷ができない旨を示す内容であればよい。通知処理部67及び通信部80は、このような通知を行う通知部を構成することができる。そして、このような通知を受けた第1印刷処理システム30は、同様の内容の通知をクライアント10に送信することで、クライアント10のユーザーが、印刷が制限によりできないことを知ることができる。
【0070】
また、実行処理部64での印刷処理は、記憶部70に記憶された紐づけ情報71を参照してなされることができる。そのため、記憶処理部66は、紐づけ情報の登録処理として、第1紐づけ情報51及び第2紐づけ情報52で例示したような紐づけ情報71を記憶部70に記憶させる処理も行うことができる。ここで、紐づけ情報71は、送信者としてのクライアント10のユーザー毎に記憶させておくこと、つまり登録しておくことができるが、送信者としてのクライアント10のユーザーに依らずに共通の情報として登録しておくこともできる。
【0071】
このように、記憶処理部66及び記憶部70は、紐づけ情報71を記憶することができ、また、第1印刷処理システム30及び第2印刷処理システム40の対応関係を登録する登録部の一例であると言える。
【0072】
また、中継サーバー50は、紐づけ情報71を変更する操作をクライアント10から受け付けてもよく、その場合、クライアント10のユーザーが中継ユーザーであった場合にのみ変更を受け付ければよい。但し、紐づけ情報71のうち、第2印刷処理システム40側の仮想プリンター41~43の入れ替え又は新規登録等の変更のみを受け付けるようにしてもよい。
【0073】
また、中継サーバー50は、記憶部70に管理者を示す情報を記憶しておくことで、紐づけ情報71の変更操作をクライアント10から受信した場合には、管理者であるか否かの判定を行い、管理者であった場合にのみ、その変更操作を受け付けてもよい。
【0074】
以上のような構成により、印刷システム1は、第1印刷処理システム30及び第2印刷処理システム40が連携するシステムにおいて、中継サーバー50についての利用可能な人数の上限値を超えていない場合に、印刷処理を実行することができる。また、上述したように、この上限値を超えるか否かの判定のために、中継サーバー50は、第1印刷処理システム30から印刷データを取得して印刷可能な送信者であると判定した場合に、印刷処理を実行する中継ユーザーをカウントする構成を採用することができる。
【0075】
また、印刷システム1について、便宜上、中継ユーザーの登録が印刷要求時になされることを前提に説明するが、例えば管理者等が、印刷要求の代わりに登録要求を行うことでも、中継ユーザーの登録を行うことができる。
【0076】
次に、
図3を用いて、上述のような中継処理の一例について説明する。
図3は、印刷システム1において実行される中継処理の一例を説明するためのシーケンス図である。なお、
図3では、クライアント10のユーザーと、第2印刷処理システム40に接続されたプリンター21~23と、については図示を省略する。
【0077】
まず、クライアント10のユーザーが印刷操作を実施し、それを受けたクライアント10が印刷要求として印刷データを含む印刷ジョブ情報を第1印刷処理システム30に送信する(ステップS1)。このとき、クライアント10は、印刷ジョブ情報とともに、送信者情報も第1印刷処理システム30に送信することができる。なお、以下では印刷ジョブ情報と送信者情報とは別の情報として説明するが、送信者情報は印刷ジョブ情報に含めておくこともできる。印刷ジョブ情報を受信した第1印刷処理システム30は、中継サーバー50に印刷ジョブを受け付けた旨を通知する(ステップS2)。
【0078】
中継サーバー50は、この通知を受けて、第1印刷処理システム30に印刷ジョブ情報を要求し(ステップS3)、印刷データを含む印刷ジョブ情報を、第1印刷処理システム30から受信することで取得する(ステップS4)。
【0079】
中継サーバー50は、取得した印刷ジョブ情報についての印刷要求を行った送信者が印刷を実施可能な送信者であるか否かの照合を行う(ステップS5)。この照合に際し、中継サーバー50は、第1印刷処理システム30に送信者情報を要求し(ステップS6)、送信者情報を受信することで取得する(ステップS7)。取得される送信者情報には、送信者を示す情報だけではなく、送信者が所属するグループである所属グループを示す情報も含めておくことができる。
【0080】
ステップS5の照合処理は、取得した送信者情報が示す送信者が中継ユーザーであるか否か、並びに、中継ユーザー以外の送信者である場合にその印刷要求を受け入れることで第1閾値を超えることになるか否かを判定することで実施されることができる。また、ステップS4で取得する送信者情報は、ステップS5の照合処理で印刷を行う資格がある送信者か否かを判定するために用いられることになるため、資格情報と称することもできる。
【0081】
中継サーバー50は、分岐処理SSaとして図示するように、中継ユーザーとして登録された送信者以外の印刷要求であった場合、分岐処理SSa1を実行する。分岐処理SSa1において、中継サーバー50は、上限数に対して印刷可能な枠が余っているか否かを判定する。中継サーバー50は、この判定の結果が、印刷可能な枠が余っていることを示す場合には、その送信者を中継ユーザーとしてカウントアップし(ステップS8)、第2印刷処理システム40に印刷処理の実施を要求する(ステップS9)。一方、中継サーバー50は、この判定の結果が、印刷可能な枠が余っていないことを示す場合には、その送信者を中継ユーザーとしてカウントアップせずに、印刷が失敗した旨を第1印刷処理システム30に通知する(ステップS10)。
【0082】
一方、中継サーバー50は、中継ユーザーとして登録された送信者の印刷要求であった場合、第2印刷処理システム40に印刷処理の実施を要求する(ステップS11)。
【0083】
ステップS9,S11における印刷処理の実施の要求は、例えば次のようにして行うことができる。中継サーバー50は、紐づけ情報71に基づき、送信者によって指定された第1印刷処理システム30の仮想プリンターに紐づけられた第2印刷処理システム40の仮想プリンターへの印刷要求を生成し、第2印刷処理システム40へ送信する。この印刷要求には、ステップS7で受信した印刷データを含めておくことになる。そして、ステップS9,S11のいずれの要求に対しても、第2印刷処理システム40は、受信した印刷要求で示される仮想プリンターに紐づけられたプリンターに対して印刷を指示することになる。
【0084】
このような処理により、例えば、クライアント10で仮想プリンター31が指定されて印刷要求がなされた場合、中継サーバー50が第1紐づけ情報51に基づきその印刷要求を仮想プリンター43への印刷要求に変換する。そして、第2印刷処理システム40がプリンター23に印刷を指示し、プリンター23で印刷がなされる。なお、このとき、第2印刷処理システム40は、プリンター23に印刷ジョブ情報がある旨を通知して、プリンター23がその印刷ジョブ情報を取得して、その印刷ジョブ情報に含まれる印刷データの印刷を実行してもよい。
【0085】
同様に、クライアント10で仮想プリンター32が指定されて印刷要求がなされた場合、中継サーバー50が第2紐づけ情報52に基づきその印刷要求を仮想プリンター41への印刷要求に変換する。そして、第2印刷処理システム40がプリンター21に印刷を指示し、プリンター21で印刷がなされる。なお、このとき、第2印刷処理システム40は、プリンター21に印刷ジョブ情報がある旨を通知して、プリンター21がその印刷ジョブ情報を取得して、その印刷ジョブ情報に含まれる印刷データの印刷を実行してもよい。
【0086】
第2印刷処理システム40は、ステップS11の処理後、プリンターでの印刷が正常に終了したかプリンターでエラーが生じたかなどを示す印刷結果を、中継サーバー50に通知する(ステップS12)。この印刷結果を受信した中継サーバー50は、第1印刷処理システム30にその印刷結果を通知する(ステップS13)。図示しないが、この印刷結果を受信した第1印刷処理システム30は、印刷要求を行ったクライアント10にこの印刷結果を通知することができる。
【0087】
以上に説明したように、中継サーバー50は、印刷要求を行った送信者を判定により識別し、印刷可能な中継ユーザーの最大人数に基づいてカウントアップする処理を行うことで、印刷要求を送信した先着順で印刷を許可することができる。また、中継サーバー50は、印刷可能な中継ユーザーを登録することができる。また、カウント部65では、中継サーバー50が第2印刷処理システム40に印刷データを送信した時点、つまり印刷が許可されたとみなされた時点でカウントを行う。これにより、中継サーバー50は、その後の印刷要求に対し、印刷可能な送信者をこのカウントに基づき正確に識別することができる。
【0088】
次に、
図4を用いて、このような中継処理の他の例について説明する。
図4は、印刷システム1において実行される中継処理の他の例を説明するためのシーケンス図である。
図4で示すシーケンスは、
図3で示したシーケンスにおける分岐処理SSaの代わりとして実行できる分岐処理の一例を分岐処理SSbとして示しており、その他の処理については
図3を参照して説明した通りである。
【0089】
中継サーバー50は、分岐処理SSbとして図示するように、中継ユーザーとして登録された送信者以外の印刷要求であった場合、分岐処理SSb1を実行する。分岐処理SSb1において、中継サーバー50は、上限数に対して印刷可能な枠が余っているか否かを判定する。
【0090】
中継サーバー50は、この判定の結果が、上限数に対して印刷可能な枠が余っていることを示す場合には、対象となっている送信者情報に基づき優先送信者の照合を行う(ステップS21)。ステップS21では、その送信者情報が示す送信者が優先送信者であるか否かの判定を行うことになり、この判定も判定部63が実行すればよい。
【0091】
ここで、優先送信者とは、印刷を優先して実行させる送信者である。この判定は、優先送信者を示す情報を、予め記憶部70に記憶させておけば可能である。あるいは、送信者情報取得処理部62が、第1印刷処理システム30から送信者が優先送信者であるか否かを示す情報を、通信部80を介して取得するように構成しておくこともできる。
【0092】
また、第1印刷処理システム30から受信される送信者情報において、送信者の所属グループ、役職等の属性情報を含めておき、記憶部70において、優先送信者を示す情報を、印刷を優先して実行させる属性を示す情報として登録しておいてもよい。このように、優先送信者は、送信者個々に優先メンバーとして登録されること、あるいは優先グループとして登録されることができる。優先送信者は、この双方の手法で登録されること、つまり、或る送信者については優先メンバーとして登録され他の送信者については優先グループに属するとして登録されることもできる。
【0093】
中継サーバー50は、優先送信者に登録されていることを示す場合には、その送信者を中継ユーザーとしてカウントアップし(ステップS22)、第2印刷処理システム40に印刷処理の実施を要求する(ステップS23)。
【0094】
ステップS22では、中継サーバー50は、その送信者を優先ユーザーとしてもカウントアップする。このカウントアップもカウント部65が実行することができる。優先ユーザーとは、中継ユーザーのうちの、印刷を優先させる優先送信者として登録されたユーザーを指す。優先ユーザーのカウントアップは、優先ユーザーの総数にも制限を設けるために実行される。ここで、優先ユーザーの総数は、第1閾値としての上限数以下の、中継ユーザーのうちの印刷を優先させる優先ユーザーについての上限の数を示す第3閾値を超えないように制限される。よって、優先送信者であっても第3閾値を超える数の送信者は、優先ユーザーとして登録されないことになる。
【0095】
一方、中継サーバー50は、優先送信者に登録されていないことを示す場合には、分岐処理SSb3を実行する。中継サーバー50では、送信者のうち何の制限もなく印刷を許可される送信者を非制限ユーザーとして登録しておくこともでき、分岐処理SSb3においては、このような非制限ユーザーの概念も採用した例を挙げる。非制限ユーザーは、制限無しの中継ユーザーに該当し、印刷要求を行っていない時点から中継ユーザーとして印刷が可能なように登録されているユーザーである。
【0096】
中継サーバー50は、分岐処理SSb3において、非制限ユーザーの数と優先ユーザー用に確保してある優先枠の数との合計が、第1閾値としての上限値を超えているか否かを判定する。この判定も判定部63が実行することができる。
【0097】
中継サーバー50は、この判定の結果が第1閾値としての上限値を超えていることを示す場合には、優先送信者であっても優先ユーザーとしてこれ以上登録できないため、印刷が失敗した旨を第1印刷処理システム30に通知する(ステップS24)。
【0098】
一方、中継サーバー50は、この判定の結果が第1閾値としての上限値を超えていないことを示す場合には、その送信者を中継ユーザーとしてカウントアップし(ステップS25)、第2印刷処理システム40に印刷処理の実施を要求する(ステップS26)。ステップS25においても、ステップS22と同様に、中継サーバー50は、その送信者を優先ユーザーとしてもカウントアップする。
【0099】
また、分岐処理SSb1において、中継サーバー50は、第1閾値としての上限数に対して印刷可能な枠が余っていなかった場合には、印刷が失敗した旨を第1印刷処理システム30に通知する(ステップS27)。
【0100】
また、分岐処理SSbにおいて、中継サーバー50は、中継ユーザーとして登録された送信者の印刷要求であった場合、第2印刷処理システム40に印刷処理の実施を要求する(ステップS28)。なお、ステップS23、S26,S28における印刷処理の実施の要求やその後の印刷については、ステップS9,S11について説明した通りである。
【0101】
図4に示した処理例において、具体例を挙げてどのような場面で印刷が制限されるのかについて、
図5~
図7を用いて説明する。
図5~
図7はいずれも、
図4の中継処理で参照される或る時点での中継ユーザー総数に対する非制限ユーザー及び優先送信者の一例を示す図であり、
図5~
図7では互いに異なる例を示す。
【0102】
図5に示す例91では、第1閾値としての上限数、つまり最大人数が100人の場合において、優先枠として確保されている数がこの最大人数を超えない場合の例である。例91では、制限無しの中継ユーザーである非制限ユーザーが20人登録されており、優先グループの登録可能枠として40人確保され、優先メンバーの登録可能枠として20人確保されており、自動割当が可能な枠が20人分となる。非制限ユーザーでも優先メンバーでも優先グループでもない送信者からの印刷要求については、自動割当が可能な枠の範囲内で先着順に割り当てられることになる。
【0103】
図6に示す例92では、最大人数が100人の場合において、優先枠として確保されている数がこの最大人数を超える場合の例である。例92では、非制限ユーザーが20人登録されており、優先グループの登録可能枠として50人確保され、優先メンバーの登録可能枠として50人確保されており、自動割当が可能な枠が存在しない。優先メンバー及び優先グループに該当する優先送信者は、最大人数の100人から非制限ユーザーの数を差し引いた80人を超えるまで先着順に印刷が実行できるが、優先送信者であっても80人を超えては印刷ができないことになる。また、非制限ユーザーでも優先送信者でもない送信者からの印刷要求については、常に印刷が実行されないことになる。
【0104】
図7に示す例93では、最大人数が100人の場合において、非制限ユーザーで100人全てが登録されている場合の例である。例93では、非制限ユーザーは常時利用可能であるものの、優先送信者であっても利用はできず、非制限ユーザーでも優先送信者でもない送信者も利用はできないことになる。
【0105】
また、分岐処理SSb1で例示したように、判定部63は、送信者情報で示される送信者が優先送信者であるか否かの判定を行うこと、並びに、送信者情報で示される送信者が優先送信者であった場合、第3閾値を超えているか否かの判定を行うことができる。
【0106】
このような判定を行う場合、分岐処理SSb2として例示したように、カウント部65は、判定部63が第3閾値を超えていないと判定した場合、送信者情報が示す優先送信者を優先ユーザーとしてカウントするとよい。そして、記憶処理部66は、総数72の一種として、カウント部65でのカウントに従い、優先ユーザーの総数を記憶部70に記憶させる処理を行えばよい。ステップS23,S28で例示したように、実行処理部64は、印刷データ取得処理部61で取得された印刷データについて、その印刷データの送信者が優先ユーザーである場合、その印刷データについての印刷処理を許可し、通信部80を介して実行することになる。
【0107】
また、分岐処理SSb3では、非制限ユーザーも加味した例を示すが、非制限ユーザーを加味しない処理も可能である。即ち、判定部63は、送信者情報で示される送信者が優先送信者でなかった場合、第1閾値から第3閾値を差し引いた第4閾値を超えているか否かを判定する処理を実行することもできる。そして、カウント部65は、判定部63が第4閾値を超えていないと判定した場合、送信者情報が示す送信者を中継ユーザーとしてカウントし、記憶処理部66が、カウント部65でのカウントに従い、中継ユーザーの総数を記憶することになる。この例により、全体の上限数から優先ユーザーの上限数を差し引いた第4閾値を超えていない場合、つまり自動的に先着で登録可能な枠が残っている場合には、送信者を中継ユーザーとして自動的に割り当てることができる。
【0108】
また、ステップS24,S27で例示したように、通知処理部67は、第1閾値以外の閾値を用いた判定についても、閾値を超えていると判定された場合に、第1印刷処理システム30にその旨を示す通知を送信するようにしてもよい。
【0109】
また、ステップS24,S25の分岐のための判定では、非制限ユーザーの数と優先ユーザー用に確保してある人数との合計が、第1閾値としての上限値を超えているか否かを判定した。但し、判定部63は、第1閾値の代わりに、上限数から中継ユーザーのうちの印刷を制限されない非制限ユーザーの数を差し引いた第2閾値を超えているか否かを判定することもできる。このような判定を行う場合、カウント部65は、送信者情報で示される送信者が印刷を制限されない非制限ユーザーであった場合、その送信者を中継ユーザーとしてカウントしないようにする。
【0110】
無論、このような第1閾値の代わりに第2閾値を用いた判定及び非制限ユーザーに対してカウントしない例は、
図3の例にも適用することができる。
【0111】
以上に説明したように、
図4の処理例における中継サーバー50は、
図3の処理例に加えて、印刷を制限されない非制限ユーザーの登録、印刷を優先して実行できる優先メンバーや優先グループの登録などを行い、それらの登録に基づき中継ユーザーの数の制限を行うことができる。特に、
図4の処理例では、印刷要求を行った送信者について、印刷可能な中継ユーザーの優先順位付けを行うことができるといった効果を奏す。なお、中継サーバー50は、まず送信者を非制限ユーザーと比較し、該当すれば新たにカウントせず、次いで送信者を優先メンバー及び優先グループと比較するが、これらの比較の順序は問わない。
【0112】
また、
図3の例や
図4の例に限らず、中継サーバー50は、定期的に、登録された中継ユーザーを自動的に削除することができる。ここで、定期的な削除は、特定の日数、特定の時間等、特定の期間が経過したタイミングで実行することや、月初め等の予め決められたタイミングで実行することもできる。また、中継サーバー50は、定期的な削除のタイミングの指定や変更を、管理者等から受け付けて反映させることが可能に構成することもできる。
【0113】
(その他の変形例)
本発明は、上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、中継サーバー50と第2印刷処理システム40とが別の構成である例を示したが、中継サーバー50は第2印刷処理システム40を備えること、つまり中継サーバー50と第2印刷処理システム40とは一体のシステムとして構築されることもできる。その場合、中継サーバー50の機能として説明した機能が第2印刷処理システム40として説明した機能へ印刷処理の指示を渡せばよい。
【0114】
また、本実施の形態にかかる中継サーバーは2つの印刷処理システムの間を中継するが、印刷システムとしては、3以上の印刷処理システムを備え、それらの間を中継するために1又は複数の中継サーバーを備えることもできる。
【0115】
また、上述した実施の形態に係る印刷システムに備えられる各装置は、いずれも、例えば次のようなハードウェア構成を備えることができる。ここで、各装置とは、
図1の例を挙げると、クライアント、第1印刷処理システム、第2印刷処理システム、及び中継サーバーが挙げられる。無論、例えば、第1印刷処理システム、第2印刷処理システム、及び中継サーバーはいずれも複数の装置に分散した分散システムとして構築することができ、その場合、上記の各装置とは上記複数の装置のそれぞれを指すことができる。
図8は、装置のハードウェア構成の一例を示す図である。
【0116】
図8に示す装置100は、プロセッサー101、メモリー102、及びインターフェイス103を備えることができる。インターフェイス103は、装置に応じて必要な、例えば通信インターフェイスや、入出力装置などとのインターフェイスを含むことができる。
【0117】
プロセッサー101は、例えば、CPU、GPU、マイクロプロセッサーとも称されるMPU(Micro Processor Unit)などであってもよい。プロセッサー101は、複数のプロセッサーを含んでもよい。メモリー102は、例えば、揮発性メモリー及び不揮発性メモリーの組み合わせによって構成される。各装置における機能は、プロセッサー101がメモリー102に記憶されたプログラムを読み込んで、インターフェイス103を介して必要な情報をやり取りしながら実行することにより実現される。例えば装置100が中継サーバーであった場合、このプログラムは、プロセッサー101に上述したような中継処理を実行させるためのプログラムを含むことができる。
【0118】
また、上述したプログラムは、コンピューターに読み込まれた場合に、実施の形態で説明された1又はそれ以上の機能をコンピューターに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピューター可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピューター可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリー、solid-state drive(SSD)又はその他のメモリー技術を含む。また、限定ではなく例として、コンピューター可読媒体又は実体のある記憶媒体は、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピューター可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピューター可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
【0119】
以上、本発明を上記実施の形態に即して説明したが、本発明は上記実施の形態の構成にのみ限定されるものではなく、本願特許請求の範囲の請求項の発明の範囲内で当業者であればなし得る各種変形、修正、組み合わせを含むことは勿論である。
【符号の説明】
【0120】
1…印刷システム、10…クライアント、11…プリンタードライバー、12…ブラウザー、21、22、23…プリンター、30…第1印刷処理システム、31、32…仮想プリンター、40…第2印刷処理システム、41、42、43…仮想プリンター、50…中継サーバー、51…第1紐づけ情報、52…第2紐づけ情報、60…制御部、61…印刷データ取得処理部、62…送信者情報取得処理部、63…判定部、64…実行処理部、65…カウント部、66…記憶処理部、67…通知処理部、70…記憶部、71…紐づけ情報、72…総数、80…通信部、100…装置、101…プロセッサー、102…メモリー、103…インターフェイス。