JP7259483B2 - print server program - Google Patents
print server program Download PDFInfo
- Publication number
- JP7259483B2 JP7259483B2 JP2019066079A JP2019066079A JP7259483B2 JP 7259483 B2 JP7259483 B2 JP 7259483B2 JP 2019066079 A JP2019066079 A JP 2019066079A JP 2019066079 A JP2019066079 A JP 2019066079A JP 7259483 B2 JP7259483 B2 JP 7259483B2
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- print server
- server program
- printer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Facsimiles In General (AREA)
Description
本明細書に開示される技術分野は、プリンタを制御するプリントサーバプログラムに関する。 The technical field disclosed in this specification relates to a print server program that controls a printer.
従来、プリンタドライバをインストールすることなく、オペレーティングシステム(以下、「OS」とする)の印刷機能を用いて印刷を行うドライバレス印刷技術が普及している。ここで、低価格機など、ドライバレス印刷技術に対応していないプリンタは、プリンタドライバをインストールできないOS環境では、印刷を実行できない。一方、例えば、特許文献1には、情報処理装置にプリンタドライバが組み込まれていない場合に、プリンタからプリンタドライバを送信し、情報処理装置がプリンタドライバのインストールを行い、プリントサーバとして動作する構成が開示されている。 2. Description of the Related Art Conventionally, a driverless printing technique has been widely used in which printing is performed using a printing function of an operating system (hereinafter referred to as "OS") without installing a printer driver. Printers that do not support driverless printing technology, such as low-end machines, cannot print in an OS environment in which a printer driver cannot be installed. On the other hand, for example, Japanese Patent Application Laid-Open No. 2002-200002 discloses a configuration in which, when a printer driver is not installed in an information processing device, the printer transmits the printer driver from the printer, the information processing device installs the printer driver, and operates as a print server. disclosed.
プリントサーバとして動作する情報処理装置は、他の情報処理装置からもプリントサーバとして利用される可能性がある。そのため、プリントサーバとして動作する情報処理装置に不具合が生じた場合に、他の情報処理装置からプリンタを利用できなくなる。 An information processing device that operates as a print server may be used as a print server by other information processing devices. Therefore, if an information processing apparatus operating as a print server fails, the printer cannot be used by other information processing apparatuses.
本明細書では、情報処理装置をプリントサーバとして利用させることが可能なプリントサーバプログラムにおいて、プリンタの利用可能性を高める技術を開示する。 This specification discloses a technique for increasing the usability of a printer in a print server program that allows an information processing apparatus to be used as a print server.
上述した課題の解決を目的としてなされたものであり、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置のオペレーティングシステムにプリンタとして登録可能なプリントサーバプログラムであって、前記コンピュータに、前記オペレーティングシステムに組み込まれた汎用印刷プログラムに対して、前記プリントサーバプログラムが出力先として指定された印刷指示があった場合に、前記印刷指示に基づく印刷ジョブを受け取る受取処理と、前記受取処理にて受け取った前記印刷ジョブの印刷データが、前記情報処理装置と接続するプリンタで印刷可能な特定の形式の印刷データか否かを判断する第1判断処理と、前記第1判断処理にて前記特定の形式の印刷データでないと判断した場合、前記受取処理にて受信した前記印刷ジョブの印刷データを、前記特定の形式に変換する変換処理と、前記第1判断処理にて前記特定の形式の印刷データであると判断した場合、前記受取処理にて受信した前記印刷ジョブの印刷データを前記プリンタに送信し、前記第1判断処理にて前記特定の形式の印刷データでないと判断した場合、前記変換処理による変換後の印刷データを前記プリンタに送信する印刷データ送信処理と、を実行させ、さらに前記コンピュータに、前記情報処理装置の稼働に関する情報である稼働情報を取得する取得処理と、前記取得処理にて取得した前記稼働情報に基づいて、前記印刷ジョブを受け取る情報処理装置を、自装置から、前記情報処理装置と通信可能な他の情報処理装置であって前記プリントサーバプログラムを実行可能なコンピュータを有する前記他の情報処理装置に切り換える切換条件を満たしているか否かを判断する第2判断処理と、を実行させ、さらに前記コンピュータに、前記第2判断処理にて前記切換条件を満たしていると判断した場合、自装置の前記プリントサーバプログラムによる、前記印刷指示に基づく前記印刷ジョブの受け取りを停止させる停止処理と、前記他の情報処理装置の前記プリントサーバプログラムによる、前記印刷指示に基づく前記印刷ジョブの受け取りを開始する開始コマンドを、前記他の情報処理装置に送信する開始コマンド送信処理と、を実行させる、ことを特徴とする。 A print server program that can be executed by a computer of an information processing device and that can be registered as a printer in an operating system of the information processing device, wherein the a reception process for receiving a print job based on the print instruction when the print server program is designated as an output destination for a general-purpose print program incorporated in an operating system; a first determination process for determining whether the print data of the received print job is print data in a specific format that can be printed by a printer connected to the information processing apparatus; a conversion process for converting the print data of the print job received in the reception process into the specific format when it is determined that the print data is not in the format; and print data in the specific format in the first determination process. If it is determined that the print data of the print job received in the reception process is transmitted to the printer, and if it is determined in the first determination process that the print data is not in the specific format, the conversion process a print data transmission process for transmitting the print data converted by the computer to the printer, and an acquisition process for acquiring operation information, which is information relating to the operation of the information processing apparatus, to the computer; based on the operation information acquired by the above-described operation information processing apparatus, an information processing apparatus that receives the print job is transferred from the own apparatus to another information processing apparatus that can communicate with the information processing apparatus and that is capable of executing the print server program. a second judgment process for judging whether or not a switching condition for switching to the other information processing apparatus is satisfied; if determined, stop processing for stopping reception of the print job based on the print instruction by the print server program of the own apparatus; and printing based on the print instruction by the print server program of the other information processing apparatus and a start command transmission process of transmitting a start command for starting reception of a job to the other information processing apparatus.
上述の構成によれば、情報処理装置の稼働情報に基づいて、他の情報処理装置に印刷ジョブを受け取らせる切換条件を満たすか否かを判断し、切換条件を満たすと判断した場合、他の情報処理装置に印刷ジョブの受け取りを行わせる開始コマンドを送信して自装置での印刷ジョブの受け取りを停止する、すなわち他の情報処理装置にプリントサーバとしての役割を切り換えることで、複数の情報処理装置からプリントサーバプログラムを介してプリンタを利用するシステム全体として、プリントサーバプログラムが動作できない状況を減らすことができ、プリンタの利用可能性が高まる。 According to the above configuration, it is determined whether or not a switching condition for receiving a print job to another information processing device is satisfied based on the operation information of the information processing device. By sending a start command to the information processing apparatus to start receiving print jobs and stopping the reception of print jobs by the own apparatus, that is, by switching the role of the print server to another information processing apparatus, multiple information processing can be performed. As a whole system in which the printer is used from the device via the print server program, the situations in which the print server program cannot operate can be reduced, and the usability of the printer is increased.
本明細書に開示されるアプリケーションプログラムによれば、情報処理装置からプリンタを利用する場合の、プリンタの利用可能性を高める技術が実現される。 According to the application program disclosed in this specification, a technique for increasing the usability of a printer when using the printer from an information processing apparatus is realized.
以下、本実施の形態にかかる情報処理システムについて、添付図面を参照しつつ詳細に説明する。 An information processing system according to this embodiment will be described in detail below with reference to the accompanying drawings.
本形態の情報処理システム5は、図1に示すように、3台の情報処理装置1、100、200と、2台のプリンタ2、3とにより構成され、それら3台の情報処理装置1、100、200と、2台のプリンタ2、3プリンタと、LAN(Local Area Network)を介して接続されている。情報処理装置1、100、200は、例えば、パーソナルコンピュータ、スマートフォン、タブレットコンピュータであり、プリンタに印刷させるコンテンツの生成及び編集、各プリンタへの印刷実行指示の送信等を行う装置である。
As shown in FIG. 1, an information processing system 5 of this embodiment includes three
本形態の情報処理装置1は、図2に示すように、CPU11と、ROM12と、RAM13と、不揮発性メモリ14と、を含むコントローラ10を備えている。さらに、ユーザインターフェース(以下、「ユーザIF」とする)15と、LAN5に接続されたネットワークインターフェース(以下、「ネットワークIF」とする)16と、USBインターフェース(以下、「USB-IF」とする)17と、を備え、これらがコントローラ10に電気的に接続されている。CPU11は、制御部の一例である。CPU11のバッファ、ROM12、RAM13、不揮発性メモリ14は、メモリの一例である。ネットワークIF16とUSB-IF17は、それぞれ通信インターフェースの一例である。
The
また、情報処理装置1は、2次電池、例えば、リチューム電池やニッケル水素電池などから構成されるバッテリ18を備え、情報処理装置1は、バッテリ18によって電力が供給される。また、情報処理装置1は、AC電源19を備え、情報処理装置1は、AC電源19からも電力が供給可能である。さらに、AC電源19は、バッテリ18を充電可能である。なお、AC電源19は、情報処理装置1に内蔵されていても良いし、外付けでも差し支えない。したがって、情報処理装置1は、AC電源19が外部のACコンセント(図示せず)に接続された状態では、AC電源19から電力が供給される。また、AC電源19が外部のACコンセントに接続されてない状態では、バッテリ18から電力が供給される。
The
ROM12には、情報処理装置1を起動するための起動プログラム等が記憶されている。RAM13は、各種の処理が実行される際の作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ14は、例えば、HDD、フラッシュメモリであり、各種のプログラムや画像データ等のデータや各種設定を記憶する領域として利用される。
The
CPU11は、ROM12や不揮発性メモリ14から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。なお、図2中のコントローラ10は、情報処理装置1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際に情報処理装置1に存在する単一のハードウェアを表すとは限らない。
The
ユーザIF15は、ユーザによる操作を受け付けるとともに情報の表示を行うハードウェアである。ユーザIF15は、タッチパネル等の入力機能と出力機能との両方を備えるものであっても良いし、ディスプレイとキーボードやマウスとの組み合わせによって構成されるものであっても良い。
The user IF 15 is hardware that receives user operations and displays information. The
ネットワークIF16は、インターネット等のネットワークを介して外部装置と通信を行うためのハードウェアを含む。ネットワークIF16の通信規格は、例えば、イーサネット(登録商標)、Wi-Fi(登録商標)などである。USB-IF17は、USB規格に基づく通信を行うためのハードウェアを含む。なお、ネットワークIF16やUSB-IF17の通信の態様は、有線でも無線でもよい。 The network IF 16 includes hardware for communicating with external devices via a network such as the Internet. The communication standard of the network IF 16 is, for example, Ethernet (registered trademark), Wi-Fi (registered trademark), or the like. The USB-IF 17 includes hardware for communication based on the USB standard. The form of communication of the network IF 16 and USB-IF 17 may be wired or wireless.
本形態の情報処理装置1は、プリンタドライバをインストールせずに印刷を行う機能であるドライバレス印刷機能を有する。ドライバレス印刷機能は、印刷対象のコンテンツなどに基づいて、プリンタの機種に依存しない汎用の印刷データである規格印刷データを含む印刷ジョブを作成し、プリンタに送信する印刷機能であり、例えば、AirPrint(登録商標)、Mopria(登録商標)がある。
The
そして、情報処理装置1には、図1に示すように、2台のプリンタ2、3がLAN4を介して接続されている。プリンタ2とプリンタ3とは、いずれも、印刷対象の媒体への画像の形成が可能な装置であり、例えば、ページプリンタ、コピー機、複合機、FAX装置である。
Two
プリンタ2は、ネットワークIF16を介して情報処理装置1に接続され、情報処理装置1のドライバレス印刷機能に対応可能なプリンタである。以下、プリンタ2を、「対応プリンタ2」とする。対応プリンタ2は、情報処理装置1から送信される印刷ジョブの規格印刷データに基づいて、自機にて印刷に用いる印刷用画像データを作成するプログラムを有している。対応プリンタ2は、受信した規格印刷データに基づいて印刷用画像データを作成し、作成した印刷用画像データを用いて、印刷を実行する。
The printer 2 is connected to the
一方、プリンタ3は、ネットワークIF16を介して情報処理装置1に接続され、情報処理装置1のドライバレス印刷機能に対応不可能なプリンタである。以下、プリンタ3を、「非対応プリンタ3」とする。なお、プリンタ3は、USB-IF17を介して情報処理装置1に接続されていてもよい。非対応プリンタ3は、規格印刷データから印刷用画像データを作成する構成を有していない。そのため、非対応プリンタ3は、規格印刷データを受信しても印刷を実行できない。非対応プリンタ3は、自身にて対応可能な印刷データを受信すると、受信した印刷データを印刷用画像データとして、あるいは、受信した印刷データを印刷用画像データに変換して、印刷を実行する。また、非対応プリンタ3は、ドライバレス印刷機能に基づくプリンタ検索信号に応答しない。そのため、情報処理装置1のドライバレス印刷機能は、非対応プリンタ3を印刷装置として認識しない。非対応プリンタ3は、特定のプリンタの一例である。
On the other hand, the
本形態の情報処理装置1は、非対応プリンタ3に印刷を実行させるためのアプリを備えている。情報処理装置1の不揮発性メモリ14には、図2に示すように、オペレーティングシステム(以下、OSと称す)41と、コンテンツ作成アプリ42と、管理プログラム43と、プリントサーバプログラム44と、を含む、各種のプログラムが記憶されている。なお、OS41の一部は、ROM12に含まれていてもよい。
The
本形態の情報処理装置1のOS41は、ドライバレス印刷機能を備え、個別の機種のプリンタに対応するプリンタドライバのインストールを受け付けないバージョンのものである。そのため、情報処理装置1の不揮発性メモリ14には、例えば、非対応プリンタ3のプリンタドライバプログラムは記憶されていない。
The
コンテンツ作成アプリ42は、文書、画像、図表等の印刷の対象となるコンテンツを作成するアプリである。そして、コンテンツ作成アプリ42には、ユーザ操作に基づく印刷の指示を受け付ける機能が含まれる。なお、情報処理装置1は、例えば、複数のコンテンツ作成アプリ42を有していてもよい。
The
また、管理プログラム43とプリントサーバプログラム44は、コンテンツ作成アプリ42などにて作成されたコンテンツに基づく印刷を、情報処理装置1に接続されている非対応プリンタ3に実行させる場合に使用されるプログラムである。また、管理プログラム43とプリントサーバプログラム44は、情報処理装置1のバッテリ18の残量やCPU11の使用率に基づいて、他の情報処理装置100、200にプリントサーバ機能を切り換える切換条件を満たすか否かを判断し、切換条件を満たすと判断した場合、自装置でのプリントサーバ機能を他の情報処理装置100、200へ切り換えることで、他の情報処理装置100、200において印刷を実行させる機能を備える。なお、管理プログラム43とプリントサーバプログラム44は、プリントサーバプログラムの一例である。
The
管理プログラム43は、非対応プリンタ3に対応するプリントサーバプログラム44を起動させ、プリントサーバプログラム44によって構成されるプリントサーバを、仮想プリンタとしてOS41に登録するプログラムである。OS41にプリントサーバを仮想プリンタとして登録することにより、コンテンツ作成アプリ42等では、その仮想プリンタを出力先として選択可能となる。プリントサーバプログラム44は、ドライバレス印刷機能によって出力される印刷ジョブを非対応プリンタ3にて対応可能な形式に変換して、非対応プリンタ3に送信するプログラムである。
The
なお、管理プログラム43は、一例として、情報処理装置1に1つであり、プリントサーバプログラム44は、1台の非対応プリンタ3ごとに1つである。複数の非対応プリンタ3が接続されている情報処理装置1では、非対応プリンタ3ごとにプリントサーバが起動され、それぞれ仮想のプリンタとして登録される。一方、1つのプリントサーバプログラム44が複数台のプリンタそれぞれの仮想プリンタとして動作するような構成であってもよい。
As an example, one
本形態の情報処理装置1は、例えば、図3に示すように、対応プリンタ2に印刷を実行させる場合と非対応プリンタ3に印刷を実行させる場合とで、異なる処理を実行する。情報処理装置1のOS41は、例えば、コンテンツ作成アプリ42にて印刷指示を受け付けた場合、受け付けた印刷指示にて指定されたプリンタが対応プリンタ2であれば、ドライバレス印刷機能にて作成した規格印刷データを、対応プリンタ2に送信する。対応プリンタ2は、規格印刷データに基づいて、印刷を実行する。
For example, as shown in FIG. 3, the
一方、印刷指示にて指定されたプリンタが非対応プリンタ3に対応する仮想プリンタである場合には、情報処理装置1は、ドライバレス印刷機能にて作成した規格印刷データを、プリントサーバプログラム44に渡す。プリントサーバプログラム44は、規格印刷データに基づいて、非対応プリンタ3にて対応可能な形式の印刷データである個別印刷データを取得し、非対応プリンタ3に送信する。個別印刷データは、特定の形式の印刷データの一例である。
On the other hand, if the printer specified by the print instruction is a virtual printer compatible with the
本形態の情報処理装置100、200は、図4に示すように、情報処理装置1と同じ構成であるが、不揮発性メモリ14に、管理プログラム43と、プリントサーバプログラム44とが記憶されていない点で異なる。したがって、情報処理装置100、200において、印刷指示にて指定されたプリンタが非対応プリンタ3に対応する仮想プリンタである場合には、ドライバレス印刷機能にて作成した規格印刷データを、情報処理装置1のプリントサーバプログラム44に渡す必要がある。情報処理装置1のプリントサーバプログラム44は、渡された規格印刷データに基づいて、非対応プリンタ3にて対応可能な形式の印刷データである個別印刷データを取得し、非対応プリンタ3に送信する。
As shown in FIG. 4, the
続いて、情報処理装置1にて非対応プリンタ3に印刷を実行させる動作について説明する。なお、以下の説明における処理およびフローチャートの各処理ステップは、基本的に、管理プログラム43やプリントサーバプログラム44などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、情報処理装置1のOS41の他のモジュールとデータ交換するためのIF(APIとも呼ばれる)を用いたハードウェア制御も含む。
Next, the operation of causing the
図5~図7のシーケンス図を参照して、動作の概要を説明する。まず、プリントサーバプログラム44を用いた印刷動作について、図5のシーケンス図を参照して説明する。情報処理装置1は、実行中のコンテンツ作成アプリ42にて、ユーザによるコンテンツの印刷指示を受け付ける(手順61)。コンテンツ作成アプリ42は、受け付けた印刷指示に基づいて印刷ジョブを作成し、OS41に登録する(手順62)。OS41は、受け付けた印刷ジョブをドライバレス印刷機能にて処理し、規格印刷データを含む印刷ジョブを生成する。
The outline of the operation will be described with reference to the sequence diagrams of FIGS. 5 to 7. FIG. First, the printing operation using the
OS41は、出力先として非対応プリンタ3に対応する仮想プリンタが指定されている印刷ジョブを、非対応プリンタ3に対応するプリントサーバプログラム44に渡す(手順63)。プリントサーバプログラム44は、出力先である非対応プリンタ3を検索し、印刷可能な状態であるか否かを判断する(手順64)。
The
非対応プリンタ3は、印刷可能な状態であれば、プリンタ情報をプリントサーバプログラム44に送信する(手順65)。プリントサーバプログラム44は、プリンタ情報に基づいて、規格印刷データから非対応プリンタ3にて対応可能な形式の個別印刷データを生成する。さらに、プリントサーバプログラム44は、プリンタ情報に基づいて、印刷ジョブに含まれる印刷設定を引き継ぎ、非対応プリンタ3にて対応可能な形式の情報とする(手順66)。
If the
そして、プリントサーバプログラム44は、生成した個別印刷データと印刷設定とを非対応プリンタ3に送信する(手順67)。非対応プリンタ3は、受信した個別印刷データに基づく印刷を実行し(手順68)、印刷完了などのステータス情報を、プリントサーバプログラム44に送信する(手順69)。プリントサーバプログラム44は、受信したステータス情報をOS41に渡す(手順70)。
The
一方、プリントサーバプログラム44は、手順64によるプリンタの検索によって、非対応プリンタ3を検索できなかった場合、非対応プリンタ3がオフライン状態であることを示すステータス情報をOS41に渡す(手順71)。OS41は、手順70または手順71にて受け取ったステータス情報を、例えば、コンテンツ作成アプリ42等を介してユーザに通知する(手順72)。
On the other hand, if the
次に、管理プログラム43によるプリントサーバの起動処理と登録処理について、図6のシーケンス図を参照して説明する。情報処理装置1は、例えば、情報処理装置1が起動されると、情報処理装置1に接続されている非対応プリンタ3を検索する(手順51)。情報処理装置1による検索は、ドライバレス印刷機能による検索とは異なり、情報処理装置1は、非対応プリンタ3であれば応答可能な検索信号をマルチキャストする。
Next, print server startup processing and registration processing by the
そして、情報処理装置1は、非対応プリンタ3が検索された場合、非対応プリンタ3にて印刷を実行させるためのプリンタ情報を取得する(手順52)。具体的には、情報処理装置1は、検索された非対応プリンタ3の機種情報、バージョン情報などを取得する。
Then, when the
そして、情報処理装置1は、検索された非対応プリンタ3に対応するプリントサーバプログラム44が起動していない場合、検索された非対応プリンタ3のモデル名を仮想プリントサーバ名に指定する(手順53)。その後、プリントサーバプログラム44を起動させる(手順54)。なお、複数の非対応プリンタ3が検索された場合、情報処理装置1は、1台ごとに手順52~手順54を行う。
Then, if the
次に、情報処理装置1は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせ(手順55)、それらの情報を取得する(手順56)。
Next, the
さらに、情報処理装置1は、OS41にプリントサーバプログラム44によって構成されるプリントサーバが登録されているか否かを判断する。つまり、情報処理装置1は、OS41に登録されているプリンタを検索し(手順57)、OS41からプリンタの一覧を取得する(手順58)。取得したプリンタの一覧の中に、プリントサーバプログラム44によって構成されるプリントサーバが含まれていない場合、情報処理装置1は、プリントサーバプログラム44によって構成されるプリントサーバを、検索された非対応プリンタ3に対応する仮想プリンタとして、OS41に登録する(手順59)。
Further, the
続いて、情報処理装置1によるプリントサーバの移動処理について、図7のシーケンス図を参照して説明する。
Next, the process of moving the print server by the
情報処理装置1は、手順56において取得したバッテリ18の残量が閾値以下となった場合やCPU11の使用率が閾値以上となった場合には、LAN4に接続された他の稼働中の情報処理装置100、200を検索する(手順80)。そして、稼働中の他の情報処理装置100、200が存在すれば、その情報処理装置100、200を特定する情報やOS41の情報などを取得する(手順81)。
When the remaining amount of the
そして、情報処理装置1は、管理プログラム43やプリントサーバプログラム44などのプログラムを稼働中の他の情報処理装置100、200の不揮発性メモリ14に複写し(手順82)、その後、プリントサーバを起動する(手順83)。また、稼働中の他の情報処理装置100、200は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせ(手順84)、それらの情報を取得する(手順85)。一方、情報処理装置1は、プリントサーバ機能を停止させる(手順86)。これにより、プリントサーバ機能が情報処理装置1から稼動中の他の情報処理装置100、200に移動する。この際、不要のプリントサーバプログラム44を終了させることで、情報処理装置1の処理の負荷が軽減される。
Then, the
続いて、上述した情報処理装置1の各動作について、図8~図12のフローチャートを参照して詳細に説明する。なお、以下の説明中に付記した手順番号は、図5~図7のシーケンス図中に示す手順番号に対応する。
Next, each operation of the
まず、情報処理装置1におけるプリントサーバ起動処理の手順について、図8のフローチャートを参照して説明する。このプリントサーバ起動処理は、例えば、情報処理装置1の起動時、情報処理装置1に新たにプリンタを接続した時、コンテンツ作成アプリ42にて印刷指示を受け付けた時などを契機に、CPU11にて実行される。なお、対応するシーケンス図を図6に示す。
First, the procedure of print server activation processing in the
すなわち、まず、CPU11は、情報処理装置1がドライバレス印刷環境であるか否かを判断する(S101)。CPU11は、例えば、情報処理装置1のOS41のバージョン情報を取得し、OS41がドライバレス印刷機能を備え、プリンタドライバのインストールを受け付けない動作環境であるか否かを判断する。また、CPU11は、プリンタドライバがインストールされているか否かを判断しても良い。ドライバレス印刷環境ではないと判断した場合(S101:NO)、CPU11は、本プリントサーバの起動処理を終了する。
First, the
ドライバレス印刷環境であると判断した場合(S101:YES)、CPU11は、情報処理装置1に接続されているプリンタを順に検索する(S102)。そして、CPU11は、検索されたプリンタがドライバレス印刷機能に非対応の非対応プリンタ3であるか否かを判断する(S103、手順51)。
When determining that the environment is a driverless printing environment (S101: YES), the
例えば、CPU11は、ネットワークIF16およびLAN4を介して接続されている各プリンタに問い合わせ、ドライバレス印刷機能に対応する能力を有しているか否かを判断する。また、例えば、情報処理装置1が接続されている外部機器のリストを備えていれば、CPU11は、S103にてリスト中の非対応プリンタ3の接続確認を行っても良い。
For example, the
非対応プリンタ3が検索されたと判断した場合(S103:YES)、CPU11は、プリンタ情報を取得する(S104、手順52)。CPU11は、プリンタ情報として、例えば、プリンタの機種情報やバージョン情報、プリンタにてサポートする印刷データのデータ形式を取得する。CPU11は、検索された非対応プリンタ3に問い合わせてプリンタ情報を取得しても良いし、外部機器のリスト等からプリンタ情報を取得しても良い。
When determining that the
次に、CPU11は、検索された非対応プリンタ3に対応するプリントサーバプログラム44が起動しているか否かを判断する(S105)。プリントサーバプログラム44が起動していないと判断した場合(S105:NO)、次に、CPU11は、情報処理装置1と通信可能な他の装置で、非対応プリンタ3に対応するプリントサーバプログラム44が稼動中か否かを判断する(S106)。
Next, the
本形態では、例えば、図1に示すように、複数の情報処理装置1、100、200はLAN4を介して互いに通信可能に接続されているので、同じ非対応プリンタ3を利用可能である。したがって、他の情報処理装置100にてプリントサーバプログラム44が起動している場合、情報処理装置1は、他の情報処理装置100のプリントサーバプログラム44を利用できる。この場合、他の情報処理装置100のプリントサーバプログラム44によって構成されるプリントサーバを仮想プリンタとして情報処理装置1のOS41に登録することで、情報処理装置1は、他の情報処理装置100のプリントサーバプログラム44を利用できる。
In this embodiment, for example, as shown in FIG. 1, the plurality of
そして、他の情報処理装置100でも、プリントサーバプログラム44が稼動していないと判断した場合(S106:NO)、次にCPU11は、非対応プリンタ3のモデル名をプリントサーバ名に指定する(S107、手順53)。次にCPU11は、検索された非対応プリンタ3に対応するプリントサーバプログラム44を起動する(S108、手順54)。次にCPU11は、バッテリの残量およびCPU11の使用率の監視を開始する(S109、手順55、56)。具体的には、CPU11は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせて取得できた情報に基づいて監視動作が開始される。なお、S109の処理が取得処理の一例であり、また、バッテリの残量やCPU11の使用率が稼働情報の一例である。
If it is determined that the
一方、検索された非対応プリンタ3に対応するプリントサーバプログラム44が他の情報処理装置100にて起動していると判断した場合(S106:YES)、CPU11は、プリントサーバプログラム44によって構成されるプリントサーバが自装置のOS41に登録されているか否かを判断する(S110)。具体的には、CPU11は、例えば、OS41に問い合わせてOS41に登録されているプリンタの一覧を取得し(手順57、58)、その一覧中に、非対応プリンタ3に対応する仮想プリンタとして登録されているプリントサーバが含まれているか否かを判断する。
On the other hand, if it is determined that the
一方、S105にて、プリントサーバプログラム44が起動していると判断した場合(S105:YES)、次にCPU11は、プリントサーバプログラム44によって構成されるプリントサーバがOS41に登録されているか否かを判断する(S111)。
そして、S109の後、または、非対応プリンタ3に対応するプリントサーバがOS41に登録されていないと判断した場合(S110:NO又はS111:NO)、CPU11は、プリントサーバプログラム44によって構成されるプリントサーバをプリンタとしてOS41に登録する(S112、手順59)。
On the other hand, if it is determined in S105 that the
After S109, or when it is determined that the print server corresponding to the
S112では、CPU11は、プリントサーバプログラム44によって構成されるプリントサーバを、検索された非対応プリンタ3のモデル名や愛称等を用いて登録する。ユーザによる名称の指定を受け付けても良い。プリントサーバプログラム44によって構成されるプリントサーバを非対応プリンタ3としてOS41に登録することで、非対応プリンタ3が、コンテンツ作成アプリ42等で印刷指示を行う際、印刷装置としての選択の対象となる。
In S112, the
一方、S103にて、非対応プリンタ3ではないと判断した場合(S103:NO)、または、S110やS111にて、他の装置のプリントサーバプログラム44によって構成されるプリントサーバが自装置のOS41に登録されていると判断した場合(S110:YES又はS111:YES、)、S112の後、CPU11は、プリンタの検索が終了したか否かを判断する(S113)。検索が終了していないと判断した場合(S113:NO)、CPU11は、S102に戻って、さらに次のプリンタの検索を行う。
一方、プリンタの検索が終了したと判断した場合(S113:YES)、CPU11は、サーバ起動処理を終了する。
On the other hand, if it is determined in S103 that the
On the other hand, when determining that the printer search has ended (S113: YES), the
次に、プリントサーバプログラム44によるプリントサーバの移動処理の手順について、図9のフローチャートを参照して説明する。このプリントサーバの移動処理は、図8に示すプリントサーバの起動処理のS108にてプリントサーバプログラム44が起動された後、所定時間間隔をおいて定期的にCPU11にて実行される。なお、対応するシーケンス図を図7に示す。
Next, the procedure of print server migration processing by the
まず、CPU11は、コンテンツ作成アプリ42にて印刷指示を受け付けて印刷処理中か否かを判断する(S200)。印刷処理中であると判断した場合(S200:YES)、他の処理へ移行して、印刷処理が終了するまでプリントサーバの移動処理を待機する。
First, the
このように本形態では、印刷処理が終了するまでプリントサーバの移動処理を待機するようにしたので、プリントサーバの移動処理が印刷処理と重複して複雑になることなく、スムースに移動処理を進めることができる。 As described above, in the present embodiment, the print server move processing is put on standby until the print processing is completed, so that the print server move processing does not overlap with the print processing and becomes complicated, and the move processing proceeds smoothly. be able to.
一方、印刷処理中ではないと判断した場合(S200:NO)、OS41にバッテリ18の残量やCPU11の使用率を問い合わせて取得できた情報に基づいてバッテリ18の残量が閾値以下であるか否か、および、CPU11の使用率が閾値以上であるか否かを判断する(S201)。なお、S201の処理が第2判断処理の一例である。
On the other hand, if it is determined that the printing process is not in progress (S200: NO), it asks the
そして、CPU11は、バッテリ18の残量が閾値以下である、或いは、CPU11の使用率が閾値以上であると判断した場合には(S201:YES)、LAN4を介し接続された他の情報処理装置100、200を検索する(S202、手順80、81)。そして、CPU11は、LAN4を介し接続された他の情報処理装置100、200が検出されたか否かを判断する(S203)。
Then, when the
そして、CPU11は、他の情報処理装置100、200が検出されたと判断した場合には(S203:YES)、プリントサーバが稼働している情報処理装置1と同じOS41か否かを判断する(S204)。同じOS41であると判断した場合には(S204:YES)、CPU11は、プリントサーバを、LAN4を介し接続された稼働中の他の情報処理装置100、200へ移動する(S205、手順82)。具体的には、CPU11は、情報処理装置1の不揮発性メモリ14に記憶された管理プログラム43、プリントサーバプログラム44、設定ファイルなどを稼働中の他の情報処理装置100、200へ送信して不揮発性メモリ14に複写する。
When the
このように本形態では、送信先の他の情報処理装置100、200にプリントサーバプログラムが組み込まれていない場合、管理プログラム43、プリントサーバプログラム44、設定ファイルなどをインストールすることで、他の情報処理装置100、200においてプリントサーバ機能を代替できるようになる。
As described above, in this embodiment, if the print server program is not installed in the other
次にCPU11は、他の情報処理装置100、200においてプリントサーバを起動する(S206、手順83)。具体的には、他の情報処理装置100、200に対して、プリントサーバの起動指示を送信する。S206の処理が開始コマンド送信処理の一例である。
Next, the
一方CPU11は、S203にて、他の情報処理装置100、200が検出されなかったと判断した場合には(S203:NO)、エラー表示を行う(S207)。具体的には、情報処理装置1において、バッテリ18の残量が閾値以下である旨の注意喚起やCPU11の使用率が閾値以上であって処理速度が低下する恐れがある旨の注意喚起をユーザIF上において表示する。それに併せて、それらの状況を改善するために、LAN4を介し接続された他の情報処理装置100、200を起動するなどの解決策をユーザIF上において表示する。
On the other hand, when the
そして、S204にて、同じOS41ではないと判断した場合(S204:NO)、またはS206の後、またはS207の後に、CPU11は、他の情報処理装置100、200にてプリントサーバの起動が成功したか否かを判断する(S208)。プリントサーバの起動が成功しなかった場合には(S208:NO)、CPU11は、S203の処理を再び実行し、今回対象としなかった他の情報処理装置100、200について、プリントサーバの移行処理を試みる。
Then, when it is determined in S204 that the
一方、プリントサーバの起動が成功した場合には(S208:YES)、CPU11は、移動元の情報処理装置1でのプリントサーバの動作を終了させ、コンテンツ作成アプリ42からのコンテンツの受付を終了する(S209、手順86)。なお、S209の処理が停止処理の一例である。
On the other hand, if the print server has been successfully started (S208: YES), the
このように本形態では、移動元の情報処理装置1でのプリントサーバの動作を終了させるようにしたので、情報処理装置1のCPU11の負荷や不揮発性メモリ14などのメモリの占有率をより軽減することができる。
As described above, in the present embodiment, the operation of the print server in the
そして、CPU11は、移動元である情報処理装置1でのバッテリ18の残量やCPU11の使用率の監視を終了する(S210)。次に、CPU11は、移動先の他の情報処理装置100、200に対して、バッテリ18の残量やCPU11の使用率の監視を開始させるための監視開始コマンドを送信し(S211、手順84、85)、本プリントサーバの移動処理を終了する。
Then, the
このように本形態では、移動元である情報処理装置1でのバッテリ18の残量やCPU11の使用率の監視を終了するようにしたので、情報処理装置1のCPU11の負荷をより軽減することができる。
As described above, in the present embodiment, the monitoring of the remaining amount of the
次に、印刷処理の手順について、図10のフローチャートを参照して説明する。なお、本印刷処理は、情報処理装置1が実行中のコンテンツ作成アプリ42にて、ユーザによるコンテンツの印刷指示を受け付け(手順61)、OS41にて生成された印刷ジョブ(手順62)を受信した際(手順63)に実行される。また、対応するシーケンス図を図5に示す。
Next, the print processing procedure will be described with reference to the flowchart of FIG. In this print process, the
まず、印刷処理では、CPU11は、受信した印刷ジョブにより指定されたプリントサーバに対応するプリンタを検索する(S301、手順64)。次に、CPU11は、対応するプリンタが検索されたか否かを判断する(S302)。ここで、対応するプリンタが検索されなかった場合には(S302:NO)、ステータスをオフラインとする(S303、手順71)。なお、S301の処理が受取処理の一例である。
First, in the print process, the
一方、S301にて、対応するプリンタが検索された場合には(S302:YES)、OS41から取得した印刷ジョブに含まれる印刷データを取得する(S304)。印刷ジョブに含まれる印刷データは、ドライバレス印刷機能によって作成された形式のデータであり、例えば、規格印刷データである。
On the other hand, if a corresponding printer is found in S301 (S302: YES), print data included in the print job acquired from the
そして、CPU11は、対応するプリンタのプリンタ情報をプリンタやOS41から取得する(S305、手順65)。そして、CPU11は、プリンタがサポート可能な形式のデータであるか否かを判断する(S306)。つまり、非対応プリンタ3にてサポート可能な形式は、個別印刷データのみとは限らない。また、ドライバレス印刷機能にて作成される印刷データは、規格印刷データのみとは限らない。つまり、非対応プリンタ3は、ドライバレス印刷機能にて作成された印刷データであっても、印刷可能な場合もある。なお、S306の処理が第1判断処理の一例である。
Then, the
印刷ジョブに含まれる印刷データが、非対応プリンタ3にてサポート不可能な形式のデータであると判断した場合(S306:NO)、CPU11は、印刷データを、非対応プリンタ3にてサポートする形式の印刷データである個別印刷データに変換する(S307、手順66)。なお、S307の処理が変換処理の一例である。
When it is determined that the print data included in the print job is data in a format that cannot be supported by the non-compatible printer 3 (S306: NO), the
なお、印刷データの変換は、プリントサーバプログラム44にて行っても良いし、管理プログラム43などの他のプログラムにて行っても良い。例えば、CPU11は、印刷ジョブに含まれる印刷データと非対応プリンタ3にて対応可能な印刷データの形式の情報とを管理プログラム43に渡し、管理プログラム43に印刷データの変換を要求しても良い。
Note that the print data conversion may be performed by the
そして、CPU11は、印刷設定を引き継ぐ(S308)。印刷設定には、例えば、印刷部数の設定や両面印刷の設定が含まれる。非対応プリンタ3は、ドライバレス印刷機能にて付加される印刷設定のコマンドに適切に対応できるとは限らない。CPU11は、ドライバレス印刷機能による印刷設定のコマンドを、非対応プリンタ3の印刷設定のコマンドに変更することで、非対応プリンタ3にて対応可能な印刷設定を付加した印刷ジョブを作成する。
Then, the
そして、CPU11は、ネットワークIF16またはUSB-IF17を制御し、S308にて引き継いだ印刷設定と、S304またはS307にて取得した印刷データと、を含む印刷ジョブを、非対応プリンタ3に送信する(S309、手順67)。さらに、CPU11は、送信を完了したか否かを判断する(S310)。なお、S309の処理が印刷データ送信処理の一例である。
Then, the
送信を完了したと判断した場合(S310:YES)、CPU11は、送信完了のステータス情報を正常終了と設定する(S311、手順69)。一方、送信中にエラーが発生した等により、送信を完了しなかったと判断した場合(S310:NO)、CPU11は、ステータス情報を印刷エラーと設定する(S312、手順69)。S303またはS311またはS312の後、CPU11は、ステータスをOS41へ送信した後(S313、手順70)、本印刷処理を終了する。なお、印刷ジョブが他の情報処理装置100、200から受信したものである場合、S313では、ステータス情報を印刷ジョブの送信元の情報処理装置100、200へ送信するとよい。
If it is determined that the transmission has been completed (S310: YES), the
次に、プリントサーバの終了処理の手順について、図11のフローチャートを参照して説明する。なお、本プリントサーバの終了処理は、情報処理装置1が稼働中に所定の間隔で定期的に実行される。なお、本プリントサーバの終了処理に対応するシーケンス図は存在しないので、図11に示すフローチャートを参照して説明する。
Next, a procedure for termination processing of the print server will be described with reference to the flowchart of FIG. It should be noted that this print server termination process is periodically executed at predetermined intervals while the
まず、CPU11は、プリントサーバプログラム44に対応する非対応プリンタ3を検索する(S401)。そして、CPU11は、プリンタが検索されたか否かを判断する(S402)。そして、検索によって非対応プリンタ3が検索されなかったと判断した場合(S402:NO)、CPU11は、エラーを通知する(S403)。CPU11は、例えば、ユーザIF15を制御して、非対応プリンタ3がオフラインであることを示すエラー情報を表示させる。非対応プリンタ3がオフラインであれば印刷を行わせることができない。本形態では、S402における判断が「NO」の場合に印刷処理を実行しないことで、CPU11の処理の負荷を軽減できる。
First, the
そして、CPU11は、プリントサーバプログラム44を終了させることが必要か否かを判断する(S404)。CPU11は、例えば、ユーザIF15を制御して、プリントサーバプログラム44を終了させるか否かをユーザに問い合わせる表示を行わせ、ユーザの指示を受け付ける。あるいは、CPU11は、非対応プリンタ3のオフライン状態が所定時間以上継続している等の条件を満たした場合、プリントサーバプログラム44を終了させると判断してもよい。
Then, the
S404にて、プリントサーバプログラム44を終了させることが必要と判断した場合(S404:YES)、CPU11は、このプリントサーバプログラム44によって構成されるプリントサーバがOS41に登録されているか否かを判断する(S405)。登録されていると判断した場合(S405:YES)、CPU11は、登録を削除する(S406)。
If it is determined in S404 that the
プリントサーバプログラム44によって構成されるプリントサーバの登録を削除することで、通常のアプリからも非対応プリンタ3に対応する仮想プリンタが選択できなくなり、ユーザが誤って印刷指示を入力することを抑制できる。なお、情報処理装置1のプリントサーバプログラム44によって構成されるプリントサーバが、他の装置に登録されている場合には、登録を削除するよう他の装置に通知するとよい。
By deleting the registration of the print server configured by the
S406の後、または、S405にて、登録されていないと判断した場合(S405:NO)、CPU11は、プリントサーバプログラム44を終了する(S407)。そして、CPU11は、情報処理装置1でのバッテリ18の残量やCPU11の使用率の監視を終了した後(S408)、本プリントサーバの終了処理を終了する。なお、プリントサーバプログラム44を終了する際、終了をユーザに通知しても良い。非対応プリンタ3がオフラインの場合、印刷を行わせることができない。そのため、プリントサーバプログラム44を終了させることで、情報処理装置1の処理の負荷が軽減される。
After S406, or if it is determined at S405 that the user is not registered (S405: NO), the
次に、プリントサーバの再起動処理の手順について、図12のフローチャートを参照して説明する。なお、本印刷処理は、情報処理装置1が稼働中、所定時間間隔をおいて定期的にCPU11にて実行される。なお、プリントサーバの再起動処理に対応するシーケンス図は存在しないので、図12に示すフローチャートを参照して説明する。
Next, a procedure for restarting the print server will be described with reference to the flowchart of FIG. This printing process is periodically executed by the
まず、CPU11は、情報処理装置1でプリントサーバが稼働中か否かを判断する(S501)。そして、情報処理装置1でプリントサーバが稼働中ではないと判断した場合(S501:NO)、次に、CPU11は、他の情報処理装置100、200から送信されたところのプリントサーバ開始指示コマンドを受信したか否かを判断する(S502)。そして、プリントサーバ開始指示コマンドを受信したと判断した場合(S502:YES)、次に、CPU11は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせて取得する(S503)。
First, the
次に、CPU11は、取得した情報に基づいてバッテリ18の残量が閾値以上であるか否か、および、CPU11の使用率が閾値以下であるか否かを判断する(S504)。CPU11は、バッテリ18の残量が閾値以上であり、且つ、CPU11の使用率が閾値以下であると判断した場合には(S504:YES)、他の情報処理装置100、200に対して、プリントサーバの動作停止コマンドを送信する(S505)。次に、CPU11は、他の情報処理装置100、200に対して、バッテリ18の残量やCPU11の使用率の監視を終了させるための監視終了コマンドを送信する(S506)。なお、S505の処理が停止コマンド送信処理の一例である。
Next, based on the acquired information, the
その後、CPU11は、図8に示すS101の処理に進んでプリントサーバの起動処理を実行し、情報処理装置1においてプリントサーバを再起動する。なお、図8に示すプリントサーバの起動処理が再開処理の一例である。
After that, the
一方、S501にて、情報処理装置1でプリントサーバが稼働中と判断した場合(S501:YES)、または、S502にて、プリントサーバ開始指示コマンドを受信していないと判断した場合(S502:NO)、または、S504にて、バッテリ18の残量が閾値以上ではない、または、CPU11の使用率が閾値以下ではないと判断した場合(S504:NO)、本プリントサーバの再起動処理を終了する。
On the other hand, if the
このように本形態では、プリントサーバ機能を停止している際、他の情報処理装置からのプリントサーバ開始指示コマンドを受信したことを契機に、情報処理装置1自身に常駐するプリントサーバプログラム44などを起動してプリントサーバ機能を再開することで、印刷ジョブの受け取り再開を速やかに行うことができる。
As described above, in this embodiment, when the print server function is stopped, the
以上、詳細に説明したように、本形態によれば、情報処理装置のバッテリ18の残量やCPU11の使用率などの稼働情報に基づいて、他の情報処理装置にプリントサーバ機能を移動させる条件を満たすか否かを判断し、条件を満たすと判断した場合、他の情報処理装置にプリントサーバ機能を移動させる。そして、他の情報処理装置において、プリントサーバ機能を稼働させ、すなわち、他の情報処理装置にプリントサーバとしての役割を切り換えることで、複数の情報処理装置からプリントサーバ機能を介してプリンタを利用するシステム全体として、プリントサーバ機能が動作しない状況を減らすことができ、プリンタの利用可能性が高まる。
As described in detail above, according to the present embodiment, conditions for transferring the print server function to another information processing device are based on operation information such as the remaining amount of the
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、本形態を構成する情報処理装置やプリンタの台数は、図1の例に限らない。例えば、対応プリンタ2は、接続されていなくてもよい。 It should be noted that the present embodiment is merely an example, and does not limit the present invention in any way. Therefore, the technology disclosed in this specification can naturally be improved and modified in various ways without departing from the gist thereof. For example, the number of information processing apparatuses and printers constituting this embodiment is not limited to the example in FIG. For example, the compatible printer 2 may not be connected.
また、本形態では、S205において、CPU11は、情報処理装置1の不揮発性メモリ14に記憶された管理プログラム43、プリントサーバプログラム44、設定ファイルなどを稼働中の他の情報処理装置100、200の不揮発性メモリ14に複写するようにしたが、これに限定されるものではなく、例えば、他の情報処理装置100、200の不揮発性メモリ14に、管理プログラム43、プリントサーバプログラム44などのプログラムを常駐させておき、設定ファイルのみを他の情報処理装置100、200へ送信するようにしても良い。この際、設定ファイルとプリントサーバの起動指示コマンドとを一緒に送信するようにしても良い。
In this embodiment, in S205, the
また、S209において、CPU11は、情報処理装置1でのプリントサーバの動作を終了させ、コンテンツ作成アプリ42からのコンテンツの受付を終了するように構成したが、情報処理装置1でのプリントサーバの動作は終了させることなく、プリントサーバがOS41からの印刷ジョブを受け付けなくするように構成しても良い。
In S209, the
また、S201において、CPU11は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせて取得できた情報に基づいてバッテリ18の残量が閾値以下であるか否か、或いは、CPU11の使用率が閾値以上であるか否かを判断するようにしたが、バッテリ18の残量が閾値以下か否かのみを判断するようにしても良い。この場合、バッテリ18の残量が少ない場合には、情報処理装置が動作できなくなるリスクが高いことから、他の情報処理装置にプリントサーバとしての役割を代替させる方がより好ましくなる。
In S201, the
また、S201において、CPU11は、情報処理装置1が商用電源(AC電源19)による駆動からバッテリ18による駆動に切り換わったか否かを判断し、切り換ったことを条件にプリントサーバを他の情報処理装置100、200へ移動させるようにしても良い。
In S201, the
また、S201において、CPU11は、OS41にバッテリ18の残量やCPU11の使用率を問い合わせて取得できた情報に基づいてバッテリ18の残量が閾値以上であるか否か、および、CPU11の使用率が閾値以下であるか否かを判断するようにしたが、CPU11の使用率が閾値以下であるか否かのみを判断するようにしても良い。この場合、バッテリ18の残量が少ない場合には、情報処理装置が動作できなくなるリスクが高いことから、他の情報処理装置にプリントサーバとしての役割を代替させる方がより好ましくなる。
In S201, the
また、S202において、CPU11がLAN4を介し接続された他の情報処理装置100、200を検索した際、複数の他の情報処理装置100、200が検索された場合、
商用電源(AC電源19)に接続された情報処理装置を優先してプリントサーバを移動する先の情報処理装置として選択するようにしても差し支えない。この場合、商用電源と接続される情報処理装置は電力不足に陥るリスクが低いため、代替候補としてより好ましい。
Further, when the
The information processing apparatus connected to the commercial power supply (AC power supply 19) may be preferentially selected as the information processing apparatus to which the print server is moved. In this case, the information processing apparatus connected to the commercial power source is more preferable as an alternative candidate because the risk of power shortage is low.
また、S202において、CPU11がLAN4を介し接続された他の情報処理装置100、200を検索した際、複数の他の情報処理装置100、200が検索された場合、CPU11の使用率が少ない情報処理装置を優先してプリントサーバを移動する先の情報処理装置として選択するようにしても差し支えない。この場合、CPU11の使用率が低い情報処理装置は処理遅延が生じるリスクが低いため、代替候補としてより好ましい。
Further, in S202, when the
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。 Also, the processing disclosed in the embodiments may be performed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination thereof. Further, the processes disclosed in the embodiments can be realized in various forms such as a recording medium recording a program for executing the processes, a method, and the like.
1 情報処理装置
3 非対応プリンタ
11 CPU
14 不揮発性メモリ
16 ネットワークIF
17 USB-IF
41 OS
43 管理プログラム
44 プリントサーバプログラム
100 情報処理装置
200 情報処理装置
1
14
17 USB-IF
41OS
43
Claims (11)
前記コンピュータに、
前記オペレーティングシステムに組み込まれた汎用印刷プログラムに対して、前記プリントサーバプログラムが出力先として指定された印刷指示があった場合に、前記印刷指示に基づく印刷ジョブを受け取る受取処理と、
前記受取処理にて受け取った前記印刷ジョブの印刷データが、前記情報処理装置と接続するプリンタで印刷可能な特定の形式の印刷データか否かを判断する第1判断処理と、
前記第1判断処理にて前記特定の形式の印刷データでないと判断した場合、前記受取処理にて受信した前記印刷ジョブの印刷データを、前記特定の形式に変換する変換処理と、
前記第1判断処理にて前記特定の形式の印刷データであると判断した場合、前記受取処理にて受信した前記印刷ジョブの印刷データを前記プリンタに送信し、前記第1判断処理にて前記特定の形式の印刷データでないと判断した場合、前記変換処理による変換後の印刷データを前記プリンタに送信する印刷データ送信処理と、
を実行させ、
さらに前記コンピュータに、
前記情報処理装置の稼働に関する情報である稼働情報を取得する取得処理と、
前記取得処理にて取得した前記稼働情報に基づいて、前記印刷ジョブを受け取る情報処理装置を、自装置から、前記情報処理装置と通信可能な他の情報処理装置であって前記プリントサーバプログラムを実行可能なコンピュータを有する前記他の情報処理装置に切り換える切換条件を満たしているか否かを判断する第2判断処理と、
を実行させ、
さらに前記コンピュータに、
前記第2判断処理にて前記切換条件を満たしていると判断した場合、
自装置の前記プリントサーバプログラムによる、前記印刷指示に基づく前記印刷ジョブの受け取りを停止させる停止処理と、
前記他の情報処理装置の前記プリントサーバプログラムによる、前記印刷指示に基づく前記印刷ジョブの受け取りを開始する開始コマンドを、前記他の情報処理装置に送信する開始コマンド送信処理と、
を実行させる、
ことを特徴とするプリントサーバプログラム。 A print server program executable by a computer of an information processing device and registerable as a printer in an operating system of the information processing device,
to the computer;
receiving processing for receiving a print job based on the print instruction when the print server program is designated as an output destination for a general-purpose print program incorporated in the operating system;
a first determination process for determining whether the print data of the print job received in the reception process is print data in a specific format that can be printed by a printer connected to the information processing device;
a conversion process for converting the print data of the print job received in the reception process into the specific format when the first determination process determines that the print data is not in the specific format;
If it is determined in the first determination process that the print data is in the specific format, the print data of the print job received in the reception process is transmitted to the printer, and the print data is specified in the first determination process. print data transmission processing for transmitting the print data converted by the conversion processing to the printer when it is determined that the print data is not in the format of
and
Furthermore, in said computer,
an acquisition process for acquiring operation information, which is information relating to the operation of the information processing device;
Based on the operation information acquired in the acquisition process, an information processing device that receives the print job is changed from the own device to another information processing device that can communicate with the information processing device, and the print server program is executed. a second judgment process for judging whether or not a switching condition for switching to the other information processing apparatus having a computer capable of
and
Furthermore, in said computer,
If it is determined in the second determination process that the switching condition is satisfied,
a stop process of stopping the reception of the print job based on the print instruction by the print server program of the own device;
a start command transmission process of transmitting a start command for starting reception of the print job based on the print instruction to the other information processing apparatus by the print server program of the other information processing apparatus;
to run
A print server program characterized by:
前記取得処理では、
前記稼働情報として、前記情報処理装置のバッテリの残量を取得し、
前記切換条件は、前記バッテリの残量が所定量以下であることである、
ことを特徴とするプリントサーバプログラム。 In the print server program according to claim 1,
In the acquisition process,
Acquiring the remaining amount of the battery of the information processing device as the operation information,
wherein the switching condition is that the remaining amount of the battery is equal to or less than a predetermined amount;
A print server program characterized by:
前記取得処理では、
前記稼働情報として、前記コンピュータの使用負荷率を取得し、
前記切換条件は、前記コンピュータの使用負荷率が所定値以上であることである、
ことを特徴とするプリントサーバプログラム。 In the print server program according to claim 1,
In the acquisition process,
Acquiring the usage load factor of the computer as the operating information,
wherein the switching condition is that the usage load factor of the computer is equal to or greater than a predetermined value;
A print server program characterized by:
前記停止処理では、
自プログラムを終了させることで、自装置の前記プリントサーバプログラムによる前記印刷ジョブの受け取りを停止させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 3,
In the stop processing,
Stop receiving the print job by the print server program of the own device by terminating the own program;
A print server program characterized by:
前記コンピュータに、
前記停止処理によって前記印刷ジョブの受け取りが停止されている状態で、前記他の情報処理装置から前記開始コマンドを受信した場合に、前記印刷ジョブの受け取りを再開させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 3,
to the computer;
resuming reception of the print job when receiving the start command from the other information processing device in a state where reception of the print job is stopped by the stop processing ;
A print server program characterized by:
前記コンピュータに、
前記他の情報処理装置が前記印刷ジョブを受け取ることが可能な期間中、前記取得処理の実行を停止させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to claim 5,
to the computer;
suspending execution of the acquisition process during a period in which the other information processing apparatus can receive the print job;
A print server program characterized by:
前記コンピュータに、
前記第2判断処理にて前記切換条件を満たしていると判断した後、前記第2判断処理にて前記切換条件を満たさなくなったと判断した場合、
前記印刷ジョブの受け取りを再開させる再開処理と、
前記他の情報処理装置に対して、前記他の情報処理装置の前記プリントサーバプログラムによる前記印刷指示に基づく前記印刷ジョブの受け取りを停止させる停止コマンドを、前記他の情報処理装置に送信する停止コマンド送信処理と、
を実行させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to claim 5,
to the computer;
When it is determined in the second determination process that the switching condition is no longer satisfied after determining in the second determination process that the switching condition is satisfied,
a resume process for resuming receipt of the print job ;
A stop command for transmitting to the other information processing apparatus a stop command for stopping reception of the print job based on the print instruction by the print server program of the other information processing apparatus, to the other information processing apparatus. a transmission process;
to run
A print server program characterized by:
前記情報処理装置は、複数の前記他の情報処理装置と接続されており、
前記開始コマンド送信処理では、
前記開始コマンドの送信先となる前記他の情報処理装置の候補が複数有る場合に、商用電源と接続している装置を優先する、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 7,
The information processing device is connected to a plurality of the other information processing devices,
In the start command transmission process,
When there are a plurality of candidates for the other information processing device to which the start command is to be sent, giving priority to the device connected to the commercial power source;
A print server program characterized by:
前記情報処理装置は、複数の前記他の情報処理装置と接続されており、
前記開始コマンド送信処理では、
前記開始コマンドの送信先となる前記他の情報処理装置の候補が複数有る場合に、前記他の情報処理装置のコンピュータの使用負荷率が低い装置を優先する、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 7,
The information processing device is connected to a plurality of the other information processing devices,
In the start command transmission process,
When there are a plurality of candidates for the other information processing device to which the start command is to be sent, giving priority to a device with a low computer usage load factor of the other information processing device;
A print server program characterized by:
前記コンピュータに、
前記開始コマンドの送信先となる前記他の情報処理装置に前記プリントサーバプログラムが組み込まれていない場合、前記プリントサーバプログラムを前記他の情報処理装置にインストールするインストール処理を実行させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 9,
to the computer;
if the print server program is not installed in the other information processing device to which the start command is to be sent, causing an installation process to install the print server program in the other information processing device;
A print server program characterized by:
前記コンピュータに、
前記第2判断処理にて前記切換条件を満たしていると判断した場合、前記第2判断処理にて前記切換条件を満たしていると判断する前に受け取った前記印刷ジョブに対する処理が完了した後に、前記開始コマンド送信処理を実行させる、
ことを特徴とするプリントサーバプログラム。 In the print server program according to any one of claims 1 to 10,
to the computer;
when it is determined in the second determination process that the switching condition is satisfied, after the processing for the print job received before it is determined in the second determination process that the switching condition is satisfied, causing the start command transmission process to be executed;
A print server program characterized by:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019066079A JP7259483B2 (en) | 2019-03-29 | 2019-03-29 | print server program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019066079A JP7259483B2 (en) | 2019-03-29 | 2019-03-29 | print server program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020166527A JP2020166527A (en) | 2020-10-08 |
JP7259483B2 true JP7259483B2 (en) | 2023-04-18 |
Family
ID=72716260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019066079A Active JP7259483B2 (en) | 2019-03-29 | 2019-03-29 | print server program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7259483B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009076068A (en) | 2007-08-30 | 2009-04-09 | Ricoh Co Ltd | Information processing apparatus, information processing method, information processing system, and program used in the information processing system and computer readable recording medium |
JP2010118788A (en) | 2008-11-11 | 2010-05-27 | Sharp Corp | Image forming apparatus with print server function |
JP2013196668A (en) | 2012-03-23 | 2013-09-30 | Ricoh Co Ltd | Information processing device, output control program, and output system |
JP2015125623A (en) | 2013-12-26 | 2015-07-06 | キヤノン株式会社 | Image forming apparatus management system |
JP2015185048A (en) | 2014-03-25 | 2015-10-22 | 富士ゼロックス株式会社 | Image forming system, repeating installation, and program |
JP2017159518A (en) | 2016-03-08 | 2017-09-14 | コニカミノルタ株式会社 | Image formation apparatus and program |
JP2019175313A (en) | 2018-03-29 | 2019-10-10 | ブラザー工業株式会社 | Application program |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3252727B2 (en) * | 1996-12-02 | 2002-02-04 | 富士ゼロックス株式会社 | Network print system |
-
2019
- 2019-03-29 JP JP2019066079A patent/JP7259483B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009076068A (en) | 2007-08-30 | 2009-04-09 | Ricoh Co Ltd | Information processing apparatus, information processing method, information processing system, and program used in the information processing system and computer readable recording medium |
JP2010118788A (en) | 2008-11-11 | 2010-05-27 | Sharp Corp | Image forming apparatus with print server function |
JP2013196668A (en) | 2012-03-23 | 2013-09-30 | Ricoh Co Ltd | Information processing device, output control program, and output system |
JP2015125623A (en) | 2013-12-26 | 2015-07-06 | キヤノン株式会社 | Image forming apparatus management system |
JP2015185048A (en) | 2014-03-25 | 2015-10-22 | 富士ゼロックス株式会社 | Image forming system, repeating installation, and program |
JP2017159518A (en) | 2016-03-08 | 2017-09-14 | コニカミノルタ株式会社 | Image formation apparatus and program |
JP2019175313A (en) | 2018-03-29 | 2019-10-10 | ブラザー工業株式会社 | Application program |
Also Published As
Publication number | Publication date |
---|---|
JP2020166527A (en) | 2020-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7355147B2 (en) | application program | |
US8543677B2 (en) | Communication control device, method, and computer readable medium allowing an information processing device to be in a power saving mode for an extended period and allowing an application part to continue functioning | |
JP2014102588A (en) | Image forming apparatus and image forming system | |
JP5743108B2 (en) | Image forming apparatus | |
JP6729268B2 (en) | Image forming device | |
JP6123393B2 (en) | Information processing system, information processing method, and program | |
US11301190B2 (en) | Non-transitory computer-readable recording medium, information processing apparatus and printing method | |
JP7259483B2 (en) | print server program | |
JP5725303B2 (en) | Image forming apparatus | |
JP2020194508A (en) | Virtual device, operating system, virtual device service, information processing apparatus, and control method for information processing apparatus | |
JP2012237905A (en) | Image forming device | |
WO2021230349A1 (en) | Support program, information processing device, program set, and printing method | |
JP2016081336A (en) | Printing system and printing control program | |
JP5954536B2 (en) | Image forming apparatus and image forming system | |
JP2014038390A (en) | Image forming apparatus and image formation system | |
JP2013126748A (en) | Image forming apparatus and image forming method | |
JP2012096455A (en) | Image forming apparatus, program, and storage medium | |
JP5173354B2 (en) | Printing system and printing program | |
JP5928874B2 (en) | Image forming apparatus | |
JP7404810B2 (en) | Image reading device | |
JP7207071B2 (en) | Print server program and printing system | |
JP2024026523A (en) | Program set, reading result acquisition method, and information processing device | |
JP5888508B2 (en) | Image forming apparatus | |
KR20140028334A (en) | Print controlling apparatus, image forming apparatus, image forming system and method for controlling thereof | |
JP2010228373A (en) | Image forming apparatus, its control method, and program and recording medium for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220322 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230131 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230131 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230307 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230320 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7259483 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |