JP6828424B2 - Print server - Google Patents
Print server Download PDFInfo
- Publication number
- JP6828424B2 JP6828424B2 JP2016250970A JP2016250970A JP6828424B2 JP 6828424 B2 JP6828424 B2 JP 6828424B2 JP 2016250970 A JP2016250970 A JP 2016250970A JP 2016250970 A JP2016250970 A JP 2016250970A JP 6828424 B2 JP6828424 B2 JP 6828424B2
- Authority
- JP
- Japan
- Prior art keywords
- printer
- file
- status
- determination
- 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
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Description
本発明は、外部装置からの指示に従って、プリンタにプリント動作を実行させるプリントサーバに関する。 The present invention relates to a print server that causes a printer to perform a print operation according to an instruction from an external device.
例えば特許文献1には、プリンタドライバ及びステータスモニタがインストールされたクライアントPCと、プリントサーバと、画像形成装置とを備える画像形成システムが開示されている。プリンタドライバは、文書データを印刷ジョブデータに変換し、変換した印刷ジョブデータをプリントサーバを介して画像形成装置に送信する。ステータスモニタは、画像形成装置の状態を示す情報をプリントサーバを介して受信し、受信した画像形成装置の状態をモニタに表示させる。 For example, Patent Document 1 discloses an image forming system including a client PC in which a printer driver and a status monitor are installed, a print server, and an image forming apparatus. The printer driver converts the document data into print job data, and transmits the converted print job data to the image forming apparatus via the print server. The status monitor receives information indicating the status of the image forming apparatus via the print server, and displays the received status of the image forming apparatus on the monitor.
特許文献1のように、画像形成装置に印刷を実行させるためには、画像形成装置が認識可能なプロトコルに従って文書データを変換するプリンタドライバを、クライアントPCに予めインストールしておくのが一般的である。しかしながら、例えば、外出先の画像形成装置を一時的に利用する場合に、当該画像形成装置に対応するプリンタドライバをインストールしなければならないとすると、ユーザの作業が繁雑になるという課題を生じる。 As in Patent Document 1, in order to cause the image forming apparatus to perform printing, it is common to install a printer driver that converts document data according to a protocol that the image forming apparatus can recognize in advance on the client PC. is there. However, for example, when the image forming apparatus on the go is used temporarily, if the printer driver corresponding to the image forming apparatus must be installed, there arises a problem that the work of the user becomes complicated.
本発明は、上記の事情に鑑みてなされたものであり、その目的は、プリンタドライバがインストールされていない外部装置からの指示に従って、プリンタにプリント動作を実行させることが可能なプリントサーバを提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a print server capable of causing a printer to execute a print operation according to an instruction from an external device in which a printer driver is not installed. There is.
本明細書では様々な開示を行う。開示例の1つであるプリントサーバは、メモリと、通信インタフェースと、コントローラとを備える。前記コントローラは、ファイル共有プロトコルによって、前記メモリの記憶領域の一部である共有領域を、前記通信インタフェースを通じて該プリントサーバに接続された外部装置がアクセス可能に公開する公開処理と、前記外部装置が前記通信インタフェースを通じて前記共有領域に書き込んだファイルを取得する第1取得処理と、前記第1取得処理で取得したファイルで示される画像をシートに記録するプリント動作を、前記通信インタフェースを通じて接続されたプリンタに実行させるプリント指示処理とを実行する。 Various disclosures are made herein. The print server, which is one of the disclosure examples, includes a memory, a communication interface, and a controller. The controller uses a file sharing protocol to publish a shared area that is a part of the storage area of the memory so that an external device connected to the print server can access it through the communication interface. A printer connected through the communication interface performs a first acquisition process of acquiring a file written in the shared area through the communication interface and a print operation of recording an image indicated by the file acquired in the first acquisition process on a sheet. Executes the print instruction processing to be executed by.
上記構成によれば、外部装置は、プリントサーバが公開した共有領域に、ファイル共有プロトコルを用いて所望のファイルを書き込むだけで、当該ファイルを対象とするプリント動作をプリンタに実行させることができる。すなわち、ファイル共有プロトコルをサポートしている外部装置であれば、プリンタドライバがインストールされていなくてもプリンタを利用することができる。 According to the above configuration, the external device can cause the printer to execute a print operation targeting the file simply by writing a desired file in the shared area published by the print server using the file sharing protocol. That is, any external device that supports the file sharing protocol can use the printer even if the printer driver is not installed.
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings as appropriate. It goes without saying that the embodiments described below are merely examples of the present invention, and the embodiments of the present invention can be appropriately changed without changing the gist of the present invention.
図1は、本実施形態に係るシステム100の概略図である。図1に示されるシステム100は、プリンタ10A、10B(以下、これらを総称して、「プリンタ10」と表記することがある。)と、情報処理端末20A、20B(以下、これらを総称して、「情報処理端末20」と表記することがある。)と、プリントサーバ50とで構成されている。 FIG. 1 is a schematic view of the system 100 according to the present embodiment. The system 100 shown in FIG. 1 includes printers 10A and 10B (hereinafter, these may be collectively referred to as "printer 10") and information processing terminals 20A and 20B (hereinafter, these are collectively referred to as "printer 10"). , "Information processing terminal 20") and a print server 50.
情報処理端末20及びプリントサーバ50は、通信ネットワーク101を通じて接続されている。通信ネットワーク101の具体例は特に限定されないが、例えば、有線LAN、無線LAN、或いはこれらの組み合わせであってもよい。一方、プリンタ10及びプリントサーバ50は、USBケーブル102によって接続されている。なお、プリンタ10及びプリントサーバ50の間には、USBハブ等が介在してもよい。また、プリンタ10及びプリントサーバ50は、USBケーブル102に代えて、通信ネットワーク101を通じて接続されてもよい。 The information processing terminal 20 and the print server 50 are connected to each other through the communication network 101. Specific examples of the communication network 101 are not particularly limited, but may be, for example, a wired LAN, a wireless LAN, or a combination thereof. On the other hand, the printer 10 and the print server 50 are connected by a USB cable 102. A USB hub or the like may be interposed between the printer 10 and the print server 50. Further, the printer 10 and the print server 50 may be connected through the communication network 101 instead of the USB cable 102.
プリンタ10は、画像データで示される画像をシートに記録するプリント動作を実行する。より詳細には、プリンタ10は、USBケーブル102を通じてプリントサーバ50から受信したファイル或いはプリントデータを対象とするプリント動作を実行する。プリンタ10の記録方式としては、インクジェット方式や電子写真方式などの公知の方式を採用することができる。プリンタ10の構成は周知なので、詳細な説明は省略する。 The printer 10 executes a printing operation of recording an image represented by image data on a sheet. More specifically, the printer 10 executes a print operation targeting a file or print data received from the print server 50 through the USB cable 102. As the recording method of the printer 10, a known method such as an inkjet method or an electrophotographic method can be adopted. Since the configuration of the printer 10 is well known, detailed description thereof will be omitted.
プリンタ10は、1以上のプリンタ言語を解読することができる。より詳細には、プリンタ10は、プリンタ言語で記述されたプリントデータ(所謂、RAWデータ)に従って、プリント動作を実行することができる。プリンタ言語とは、プリンタに対して描画を指示するための言語であって、ページ記述言語等とも呼ばれる。プリンタ言語の具体例は特に限定されないが、例えば、PS(PostScriptの略、登録商標)、PCL(Printer control Languageの略、登録商標)等がある。本実施形態では、プリンタ10Aがプリンタ言語“PS”、“PCL”を両方を解読可能で、プリンタ10Bがプリンタ言語“PS”のみを解読可能とする。また、プリンタ10には、前述のページ記述言語で記述された印刷データによる印刷ジョブを管理するためのPJL(Priter Job Languageの略、登録商標)が実装されている。 The printer 10 can decode one or more printer languages. More specifically, the printer 10 can execute the printing operation according to the print data (so-called RAW data) described in the printer language. The printer language is a language for instructing the printer to draw, and is also called a page description language or the like. Specific examples of the printer language are not particularly limited, and examples thereof include PS (abbreviation of PostScript, registered trademark) and PCL (abbreviation of Printer control Language, registered trademark). In the present embodiment, the printer 10A can decipher both the printer languages "PS" and "PCL", and the printer 10B can decipher only the printer language "PS". Further, the printer 10 is equipped with PJL (abbreviation of Priter Job Language, a registered trademark) for managing a print job using print data described in the above-mentioned page description language.
また、プリンタ10Aは、JPEG形式のファイルを対象とするプリント動作を実行することができる。「ファイルを対象とするプリント動作」とは、例えば、プリントデータに変換されていないファイルで示される画像をシートに記録することを指す。一方、プリンタ10Bは、ファイルを対象とするプリント動作を実行することができない。ファイルの形式とは、ファイル名の末尾に付加された拡張子によって区別されるものであって、例えば、画像形式(例えば、“.JPG”、“.BMP”等)、テキスト形式(例えば、“.txt”、“.doc”等)、その他の任意の形式(例えば、“.PDF”、“.xls”等)がある。 In addition, the printer 10A can execute a printing operation for a JPEG format file. The "print operation for a file" refers to recording, for example, an image shown in a file that has not been converted into print data on a sheet. On the other hand, the printer 10B cannot execute the printing operation for the file. The file format is distinguished by the extension added to the end of the file name, and is, for example, an image format (for example, ".JPG", ".BMP", etc.), a text format (for example, "." There are .txt "," .doc ", etc.) and any other format (eg," .PDF "," .xls ", etc.).
なお、本明細書における「ファイル」とは、例えば、情報処理端末20にインストール可能なアプリケーションを用いて、当該ファイルで示される画像をユーザに視認させることを前提して生成されたデータを指す。換言すれば、「ファイル」とは、プリンタ言語でプリントデータに変換されていない汎用画像データを指す。一方、「プリントデータ」とは、プリンタ言語で変換されたファイルであって、中間ファイル等とも呼ばれる。すなわち、「プリントデータ」は、当該データで示される画像をディスプレイ上でユーザに視認させることを前提としていないデータを指す。 The "file" in the present specification refers to data generated on the premise that the image shown in the file is visually recognized by the user by using, for example, an application that can be installed in the information processing terminal 20. In other words, the "file" refers to general-purpose image data that has not been converted into print data in the printer language. On the other hand, the "print data" is a file converted in the printer language, and is also called an intermediate file or the like. That is, the "print data" refers to data that is not premised on allowing the user to visually recognize the image indicated by the data on the display.
プリンタ10は、プリンタ情報をメモリに記憶している。プリンタ情報は、例えば、サポートするプリンタ言語と、プリント動作の対象となり得るファイル形式(以下、「プリンタ対応形式」と表記する。)とを示す。すなわち、プリンタ10Aのプリンタ情報Aは、プリンタ言語“PS”、“PCL”と、プリンタ対応形式“JPEG”とを示す。一方、プリンタ10Bのプリンタ情報Bは、プリンタ言語“PS”と、プリンタ対応形式“なし”とを示す。プリンタ情報は、IEEE1284IDに含まれている。 The printer 10 stores the printer information in the memory. The printer information indicates, for example, the supported printer language and the file format that can be the target of the printing operation (hereinafter, referred to as "printer compatible format"). That is, the printer information A of the printer 10A indicates the printer languages "PS" and "PCL" and the printer compatible format "JPEG". On the other hand, the printer information B of the printer 10B indicates the printer language "PS" and the printer compatible format "none". The printer information is included in the IEEE1284 ID.
情報処理端末20は、外部装置の一例であって、例えば、携帯電話、スマートフォン、タブレット端末、PC等である。情報処理端末20は、ディスプレイと、メモリと、入力I/F(例えば、キーボード、タッチパネル、マウス)と、通信I/Fとを備える。情報処理端末20のOSは、例えば図9に示されるように、ポインタ画像(例えば、矢印を表す画像)110をディスプレイに表示させ、マウスの移動に追従してディスプレイ上におけるポインタ画像110の位置を移動させる。 The information processing terminal 20 is an example of an external device, and is, for example, a mobile phone, a smartphone, a tablet terminal, a PC, or the like. The information processing terminal 20 includes a display, a memory, an input I / F (for example, a keyboard, a touch panel, and a mouse), and a communication I / F. As shown in FIG. 9, the OS of the information processing terminal 20 displays a pointer image (for example, an image representing an arrow) 110 on the display, and follows the movement of the mouse to position the pointer image 110 on the display. Move it.
以下、ディスプレイに表示されたアイコンの位置にポインタ画像110を重ねた状態で、マウスの左ボタンを押下する操作を「アイコンに対する左クリック操作」と表記する。また、ディスプレイに表示されたアイコンの位置にポインタ画像110を重ねた状態で左ボタンを押下し、左ボタンを押下したままポインタ画像110を移動させ、移動開始位置と異なる移動終了位置で左ボタンの押下を解除する操作を「アイコンを移動終了位置に移動させるドラッグ操作」と表記する。 Hereinafter, the operation of pressing the left mouse button with the pointer image 110 superimposed on the position of the icon displayed on the display is referred to as "left-click operation on the icon". In addition, the left button is pressed with the pointer image 110 superimposed on the position of the icon displayed on the display, the pointer image 110 is moved while pressing the left button, and the left button is moved at a movement end position different from the movement start position. The operation of releasing the press is described as "drag operation of moving the icon to the movement end position".
また、情報処理端末のOSは、例えば図9に示されるように、複数の画面(すなわち、ウィンドウ)を、ディスプレイに同時に表示させることが可能である。すなわち、OSは、所謂マルチウィンドウ機能を有する。なお、ディスプレイに表示される画面は、OS自身が表示させるもの(例えば、デスクトップ画面)であってもよい。 Further, the OS of the information processing terminal can display a plurality of screens (that is, windows) on the display at the same time, as shown in FIG. 9, for example. That is, the OS has a so-called multi-window function. The screen displayed on the display may be one displayed by the OS itself (for example, a desktop screen).
また、情報処理端末20には、例えば、「Explorer」、「Finder」等と呼ばれる所謂ファイル管理プログラムがインストールされている。ファイル管理プログラムは、例えば図9の一覧画面140のように、情報処理端末20のメモリに記憶されているファイルに対応するファイルアイコン141、142、143を一覧表示させることができる。 Further, for example, so-called file management programs called "Explorer", "Finder" and the like are installed in the information processing terminal 20. The file management program can display a list of file icons 141, 142, and 143 corresponding to the files stored in the memory of the information processing terminal 20, for example, as shown in the list screen 140 of FIG.
また、ファイル管理プログラムは、例えば図8(A)に示されるように、通信ネットワーク101に接続されたデバイス(例えば、プリントサーバ50、情報処理端末20A、20B)に対応するデバイスアイコン111、112、113を一覧表示させることができる。通信ネットワーク101に接続されたデバイスの検出は、例えば、DNS、mDNS、NetBIOS等の周知のプロトコルによって実現される。 Further, as shown in FIG. 8A, for example, the file management program has device icons 111, 112, corresponding to devices (for example, print server 50, information processing terminals 20A, 20B) connected to the communication network 101. 113 can be displayed in a list. Detection of devices connected to the communication network 101 is realized by well-known protocols such as DNS, mDNS, NetBIOS and the like.
さらに、ファイル管理プログラムは、例えば図9の一覧画面130のように、外部装置(例えば、プリントサーバ50)が通信ネットワーク101上に公開した共有フォルダに対応するフォルダアイコン132、133を一覧表示させることができる。共有フォルダへのアクセスは、例えば、SMB、CIFS等の周知のファイル共有プロトコルによって実現される。 Further, the file management program displays a list of folder icons 132, 133 corresponding to the shared folder published on the communication network 101 by an external device (for example, the print server 50), as shown in the list screen 130 of FIG. Can be done. Access to the shared folder is achieved by, for example, well-known file sharing protocols such as SMB and CIFS.
また、情報処理端末20には、HTML等で記述されたページをディスプレイに表示させるブラウザプログラム等がインストールされている。ブラウザプログラムは、通信ネットワーク101に接続されたWEBサーバにHTMLデータの送信を要求し、要求したHTMLデータをWEBサーバから受信し、受信したHTMLデータで示されるページをディスプレイに表示させる。HTMLデータの送受信は、例えば、HTTP等の周知のプロトコルによって実現される。 In addition, a browser program or the like for displaying a page described in HTML or the like on a display is installed in the information processing terminal 20. The browser program requests the WEB server connected to the communication network 101 to transmit the HTML data, receives the requested HTML data from the WEB server, and displays the page indicated by the received HTML data on the display. Transmission and reception of HTML data is realized by a well-known protocol such as HTTP.
図1に示されるように、プリントサーバ50上では、SMBサーバ41、WEBサーバ42、及びCUPSサーバ43が稼働している。また、プリントサーバ50は、図2(A)に示されるように、LAN−I/F55と、USB−I/F56と、スピーカ57と、CPU61と、メモリ62と、通信バス63とを主に備える。プリントサーバ50を構成する各構成要素は、通信バス63を通じて相互に接続されている。プリントサーバ50は、例えば、シングルボードコンピュータによって実現することができる。 As shown in FIG. 1, the SMB server 41, the WEB server 42, and the CUPS server 43 are running on the print server 50. Further, as shown in FIG. 2A, the print server 50 mainly includes a LAN-I / F55, a USB-I / F56, a speaker 57, a CPU 61, a memory 62, and a communication bus 63. Be prepared. The components constituting the print server 50 are connected to each other through the communication bus 63. The print server 50 can be realized by, for example, a single board computer.
SMBサーバ41は、ファイル共有プロトコルを用いてメモリ62の記憶領域の一部を、通信ネットワーク101を通じて接続された情報処理端末20がアクセス可能な共有フォルダとして公開する。共有フォルダは、共有領域及び退避領域の一例である。WEBサーバ42は、LAN−I/F55を通じて外部装置からHTTPリクエストを受信し、当該HTTPリクエストで示されるHTMLデータをLAN−I/F55を通じて外部装置に送信する。 The SMB server 41 publishes a part of the storage area of the memory 62 as a shared folder accessible to the information processing terminal 20 connected through the communication network 101 by using the file sharing protocol. The shared folder is an example of a shared area and a backup area. The WEB server 42 receives the HTML request from the external device through the LAN-I / F55, and transmits the HTML data indicated by the HTTP request to the external device through the LAN-I / F55.
CUPSサーバ43は、USB−I/F56を通じて接続されたプリンタ10にプリント動作を指示し、プリンタ10の状態を示すプリンタステータスを取得する。また、CUPSサーバ43は、USB−I/F56を通じて接続されたプリンタ10A、10B毎にRAWポートキューを管理している。すなわち、CUPSサーバ43は、RAWポートキューに登録されたファイル或いはプリントデータを対象とするプリント動作を、対応するプリンタ10に対して登録された順に指示する。 The CUPS server 43 instructs the printer 10 connected through the USB-I / F56 to perform the printing operation, and acquires the printer status indicating the status of the printer 10. Further, the CUPS server 43 manages the RAW port queue for each of the printers 10A and 10B connected through the USB-I / F56. That is, the CUPS server 43 instructs the corresponding printer 10 to perform a print operation targeting the file or print data registered in the RAW port queue in the order of registration.
また、CUPSサーバ43は、通信ネットワーク101上のデバイス(例えば、情報処理端末20等)に対して、下記(1)、(2)の2種類の印刷キューを公開する機能を有する。これらの機能は、IPPプロトコル等により実現されている。
(1) TCPプロトコルのポート番号9100によるRAWデータの印刷キュー
(2) ネットワーク共有プリンタの印刷キュー(後述のSMBサーバと協働)
Further, the CUPS server 43 has a function of publishing the following two types of print queues (1) and (2) to a device (for example, an information processing terminal 20 or the like) on the communication network 101. These functions are realized by the IPP protocol and the like.
(1) RAW data print queue by TCP port number 9100 (2) Print queue of network shared printer (in cooperation with SMB server described later)
SMBサーバ41、WEBサーバ42、及びCUPSサーバ43は、プリントサーバ50の起動時に起動され、CPU61によって実行される。SMBサーバ41、WEBサーバ42、及びCUPSサーバ43は周知のサーバプログラムで実現できるので、詳細な説明は省略する。また、WEBサーバ42は、サーバプログラムに代えて、所謂EWS(Embedded Web Serverの略)で実現されてもよい。さらに、前述の共有フォルダは、SMBサーバ41により実現される。このSMBサーバ41には、SMB或いはCIFS等の周知のプロトコルが使用される。 The SMB server 41, the WEB server 42, and the CUPS server 43 are started when the print server 50 is started, and are executed by the CPU 61. Since the SMB server 41, the WEB server 42, and the CUPS server 43 can be realized by a well-known server program, detailed description thereof will be omitted. Further, the WEB server 42 may be realized by a so-called EWS (abbreviation of Embedded Web Server) instead of the server program. Further, the shared folder described above is realized by the SMB server 41. A well-known protocol such as SMB or CIFS is used for the SMB server 41.
PJLは、プリンタと通信するための第1プロトコルの一例である。但し、第1プロトコルの具体例はPJLに限定されず、例えばPSデータ、PCLデータを直に送るものであってもよいし、IPP over USBに準拠したものであってもよい。さらに本実施例では、第1プロトコルとしてUSBプリンタクラス仕様に規定されたプリンタステータスも使用する。また、HTTPは、第1プロトコルと異なる第2プロトコルの一例である。但し、第2プロトコルの具体例はHTTPに限定されず、SNMP、HTTPS等であってもよい。なお、第2プロトコルは、例えば、一般に普及している情報処理端末20に標準でインストールされている汎用ツール(例えば、ブラウザプログラム、MIBビューア)がサポートしているプロトコルを想定している。また、本明細書中の「プロトコル」とは、例えば、IPP/USB、HTTP、SNMP等のような通信プロトコルに限定されず、PS、PCL、或いはPJL等のような使用言語を指してもよい。 PJL is an example of a first protocol for communicating with a printer. However, the specific example of the first protocol is not limited to PJL, and may be, for example, one that directly sends PS data or PCL data, or one that is compliant with IPP over USB. Further, in this embodiment, the printer status specified in the USB printer class specification is also used as the first protocol. In addition, HTTP is an example of a second protocol different from the first protocol. However, the specific example of the second protocol is not limited to HTTP, and may be SNMP, HTTPS, or the like. The second protocol assumes, for example, a protocol supported by a general-purpose tool (for example, a browser program or a MIB viewer) installed as standard in a generally popular information processing terminal 20. Further, the "protocol" in the present specification is not limited to a communication protocol such as IPP / USB, HTTP, SNMP, etc., and may refer to a language used such as PS, PCL, PJL, etc. ..
LAN−I/F55は、通信ネットワーク101を通じて外部装置と通信可能な第2インタフェースの一例である。すなわち、プリントサーバ50は、LAN−I/F55を通じて外部装置に各種情報を送信し、LAN−I/F55を通じて外部装置から各種情報を受信する。LAN−I/F55の具体的な通信手順は特に限定されないが、例えば、Ethernet(登録商標)或いはWi−Fi(登録商標)を採用することができる。 The LAN-I / F55 is an example of a second interface capable of communicating with an external device through the communication network 101. That is, the print server 50 transmits various information to the external device through the LAN-I / F55, and receives various information from the external device through the LAN-I / F55. The specific communication procedure of LAN-I / F55 is not particularly limited, and for example, Ethernet (registered trademark) or Wi-Fi (registered trademark) can be adopted.
USB−I/F56は、USBケーブル102が接続される第1インタフェースの一例である。USB−I/F56の回路は、USBケーブルから入力された電気信号に応じた制御信号を後述する各種プログラムに出力し、各種プログラムから入力された制御信号に応じた電気信号をUSBケーブル102に出力する。 The USB-I / F56 is an example of the first interface to which the USB cable 102 is connected. The USB-I / F56 circuit outputs control signals corresponding to the electric signals input from the USB cable to various programs described later, and outputs electric signals corresponding to the control signals input from various programs to the USB cable 102. To do.
スピーカ57は、音声を出力する。なお、プリントサーバ50は、スピーカ57を接続可能な装着インタフェースのみを有しており、装着インタフェースに接続されたスピーカ57に音声を出力させてもよい。 The speaker 57 outputs sound. The print server 50 has only a mounting interface to which the speaker 57 can be connected, and the speaker 57 connected to the mounting interface may output audio.
CPU61は、プリントサーバ50の全体動作を制御するものである。CPU61は、LAN−I/F55及びUSB−I/F56を通じて外部装置から受信した各種情報等に基づいて、後述する各種プログラムをメモリ62から取得して実行する。CPU61及びメモリ62はコントローラの一例である。 The CPU 61 controls the overall operation of the print server 50. The CPU 61 acquires various programs to be described later from the memory 62 and executes them based on various information received from the external device through the LAN-I / F55 and the USB-I / F56. The CPU 61 and the memory 62 are examples of the controller.
メモリ62は、OS64と、プリントプログラム65と、モニタプログラム66とを記憶している。プリントプログラム65及びモニタプログラム66それぞれは、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。また、メモリ62は、プリントプログラム65及びモニタプログラム66の実行に必要なデータ或いは情報等を記憶する。メモリ62は、例えば、RAM、ROM、EEPROM、HDD、プリントサーバ50に着脱されるUSBメモリ等の可搬記憶媒体、CPU61が備えるバッファ等、或いはそれらの組み合わせによって構成される。 The memory 62 stores the OS 64, the print program 65, and the monitor program 66. Each of the print program 65 and the monitor program 66 may be a single program or a collection of a plurality of programs. Further, the memory 62 stores data or information necessary for executing the print program 65 and the monitor program 66. The memory 62 is composed of, for example, a RAM, a ROM, an EEPROM, an HDD, a portable storage medium such as a USB memory attached / detached to / from the print server 50, a buffer included in the CPU 61, or a combination thereof.
メモリ62は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。 The memory 62 may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, the non-transitory medium also includes recording media such as a CD-ROM and a DVD-ROM. The non-transitory medium is also a tangible medium. On the other hand, an electric signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a kind of computer-readable medium, but is a storage that can be read by a non-transitory computer. Not included in the medium.
プリントプログラム65は、例えば、図3〜図5に示される処理を実行する。より詳細には、プリントプログラム65は、LAN−I/F55を通じて情報処理端末20からファイルを受信し、受信したファイルを対象とするプリント動作をUSB−I/F56を通じて接続されたプリンタ10に実行させる。プリントプログラム65は、例えば、SMBサーバ41及びCUPSサーバ43の機能を利用して実現される。 The print program 65 executes, for example, the processes shown in FIGS. 3 to 5. More specifically, the print program 65 receives a file from the information processing terminal 20 through the LAN-I / F55, and causes the printer 10 connected through the USB-I / F56 to execute a print operation targeting the received file. .. The print program 65 is realized by utilizing, for example, the functions of the SMB server 41 and the CUPS server 43.
モニタプログラム66は、例えば、図6及び図7に示される処理を実行する。より詳細には、モニタプログラム66は、USB−I/F56を通じて接続されたプリンタ10のプリンタステータスを取得し、取得したプリンタステータス及びデータステータスを含むHTMLデータ(以下、「ステータスHTML」と表記する。)をLAN−I/F55を通じて情報処理端末20に送信する。モニタプログラム66は、例えば、WEBサーバ42の機能を利用して実現される。 The monitor program 66 executes, for example, the processes shown in FIGS. 6 and 7. More specifically, the monitor program 66 acquires the printer status of the printer 10 connected through the USB-I / F56, and HTML data including the acquired printer status and data status (hereinafter, referred to as "status HTML"). ) Is transmitted to the information processing terminal 20 through the LAN-I / F55. The monitor program 66 is realized by using, for example, the function of the WEB server 42.
また、メモリ62は、例えば図2(B)に示されるデバイスリストを記憶することができる。デバイスリストは、1以上のデバイスレコードを含む。デバイスレコードは、USB−I/F56を通じて接続可能なデバイス(以下、「USBデバイス」と表記する。)に対応する。デバイスレコードは、例えば、デバイスID、プリンタ情報、ステータス情報、URL、及び実行パラメータを含む。デバイスレコードは、例えば、後述するS15、S34でプリントプログラム65によって登録され、後述するS18でプリントプログラム65によって削除される。 Further, the memory 62 can store, for example, the device list shown in FIG. 2 (B). The device list contains one or more device records. The device record corresponds to a device that can be connected via USB-I / F56 (hereinafter, referred to as "USB device"). The device record includes, for example, device ID, printer information, status information, URL, and execution parameters. The device record is registered by the print program 65 in S15 and S34 described later, and deleted by the print program 65 in S18 described later.
デバイスIDは、USBデバイスを一意に識別するための情報である。デバイスIDの具体例は特に限定されないが、例えば、IEEE1284ID、或いはUSBベンダーID、プロダクトID,シリアル番号の組み合わせ等を用いることができる。本実施形態では簡易的に、プリンタ10AがデバイスID“プリンタA”で識別され、プリンタ10BがデバイスID“プリンタB”で識別されるものとする。 The device ID is information for uniquely identifying the USB device. Specific examples of the device ID are not particularly limited, but for example, an IEEE1284 ID or a combination of a USB vendor ID, a product ID, and a serial number can be used. In the present embodiment, it is assumed that the printer 10A is simply identified by the device ID "printer A" and the printer 10B is identified by the device ID "printer B".
プリンタ情報、ステータス情報、URL、実行パラメータは、USBデバイスがプリンタクラスのデバイス(すなわち、プリンタ10)である場合に、デバイスレコードとして記憶される。プリンタ情報は、後述するS32で対応するプリンタ10から取得する情報である。URLは、対応するプリンタ10のステータス等を記載したHTMLデータの所在を示す。URLはアドレス情報の一例であり、URLで所在が示されるステータス等を記載したHTMLデータは画面情報の一例である。実行パラメータは、対応するプリンタ10に実行させるプリント動作の実行条件を示す。 The printer information, status information, URL, and execution parameters are stored as device records when the USB device is a printer class device (that is, printer 10). The printer information is information acquired from the corresponding printer 10 in S32 described later. The URL indicates the location of HTML data that describes the status of the corresponding printer 10. The URL is an example of address information, and the HTML data describing the status or the like indicating the location by the URL is an example of screen information. The execution parameter indicates the execution condition of the print operation to be executed by the corresponding printer 10.
ステータス情報は、対応するプリンタ10の状態を示すプリンタステータスと、プリント動作の対象となるデータの受け付け状況を示すデータステータスとを含む。プリンタステータスには、例えば、プリンタ10と接続されていることを示す“ONLINE”、プリンタ10がプリント動作を実行可能なことを示す“READY”、プリンタ10の内部にシートが詰まったことを示す“SHEET JAM”、或いはプリンタ10と接続されていないことを示す“OFFLINE”等が設定される。 The status information includes a printer status indicating the status of the corresponding printer 10 and a data status indicating the acceptance status of data to be printed. The printer status includes, for example, "ONLINE" indicating that the printer 10 is connected, "READY" indicating that the printer 10 can execute a printing operation, and "READY" indicating that the inside of the printer 10 is jammed with a sheet. "SHEET JAM" or "OFFLINE" indicating that the printer 10 is not connected is set.
データステータスには、例えば、共有フォルダに書き込まれたファイルを受け付けたことを示す“ACCEPT”、共有フォルダに書き込まれたファイルを受け付けなかったことを示す“REFUSE”、或いは共有フォルダを通じてファイルを受け付け可能なことを示す“IDLE”等が設定される。“ACCEPT”は第1値の一例であり、“IDLE”は第2値の一例である。 For the data status, for example, "ACCEPT" indicating that the file written in the shared folder was accepted, "REFUSE" indicating that the file written in the shared folder was not accepted, or the file can be accepted through the shared folder. "IDLE" or the like indicating that is set. "ACCEPT" is an example of the first value, and "IDLE" is an example of the second value.
プリント動作の実行条件は、複数の項目(例えば、“サイズ”、“用紙種”、“色”)それぞれに対応する複数の実行パラメータの組み合わせによって特定される。項目“サイズ”の実行パラメータは、画像を記録するシートの大きさ(例えば、“A4”、“B5”、“ハガキ”)を示す。項目“用紙種”の実行パラメータは、画像を記録するシートの種類(例えば、“普通紙”、“光沢紙”)を示す。項目“色”の実行パラメータは、シートに画像を記録するのに用いる色(例えば、“カラー”、“モノクロ”)を示す。但し、プリント動作の実行条件は、前述の例に限定されない。 The execution condition of the printing operation is specified by a combination of a plurality of execution parameters corresponding to each of the plurality of items (for example, "size", "paper type", and "color"). The execution parameter of the item "size" indicates the size of the sheet on which the image is recorded (for example, "A4", "B5", "postcard"). The execution parameter of the item "paper type" indicates the type of sheet on which the image is recorded (for example, "plain paper", "glossy paper"). The execution parameter of the item "color" indicates the color (eg, "color", "monochrome") used to record the image on the sheet. However, the execution conditions of the print operation are not limited to the above-mentioned example.
[システム100の動作]
図3〜図7を参照して、本実施形態に係るシステム100の動作を説明する。なお、本実施形態では、図3〜図5の処理がプリントプログラム65によって実行され、図6及び図7の処理がモニタプログラム66によって実行される例を説明する。しかしながら、プリントプログラム65及びモニタプログラム66の役割分担は前述の例に限定されず、図3〜図5の処理の一部がモニタプログラム66によって実行されてもよいし、図6及び図7の処理の一部がプリントプログラム65によって実行されてもよい。さらには、図3〜図7の処理が1つのプログラムによって実行されてもよい。
[Operation of system 100]
The operation of the system 100 according to the present embodiment will be described with reference to FIGS. 3 to 7. In this embodiment, an example will be described in which the processes of FIGS. 3 to 5 are executed by the print program 65, and the processes of FIGS. 6 and 7 are executed by the monitor program 66. However, the division of roles between the print program 65 and the monitor program 66 is not limited to the above-mentioned example, and a part of the processes of FIGS. 3 to 5 may be executed by the monitor program 66, or the processes of FIGS. 6 and 7 may be executed. A part of may be executed by the print program 65. Furthermore, the processes of FIGS. 3 to 7 may be executed by one program.
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU61の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「制御」等の処理は、CPU61の処理を表している。CPU61による処理は、OS64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。 The flowchart of the present specification basically shows the processing of the CPU 61 according to the instruction described in the program. That is, the processes such as "determination", "extraction", "selection", "calculation", "determination", "specification", and "control" in the following description represent the processes of the CPU 61. The processing by the CPU 61 also includes hardware control via the OS 64. Further, the "data" in the present specification is represented by a computer-readable bit string. Then, data having the same substantial meaning and contents but different formats are treated as the same data. The same applies to "information" in the present specification.
プリントプログラム65は、デバイス管理処理を実行する。デバイス管理処理は、図2(B)に示されるデバイスリストを用いて、USBデバイスを管理する処理である。図3を参照して、デバイス管理処理の詳細を説明する。 The print program 65 executes the device management process. The device management process is a process for managing a USB device using the device list shown in FIG. 2 (B). The details of the device management process will be described with reference to FIG.
まず、プリントプログラム65は、USBデバイスの接続及び切断をUSB−I/F56を通じて監視する(S11、S12)。USBデバイスの接続とは、例えば、電源ONされたUSBデバイスから延びるUSBケーブル102がUSB−I/F56に接続されたこと、或いは既にUSBケーブル102で接続されたUSBデバイスが電源ONされたこと等を含む。また、USBデバイスの切断とは、USBケーブル102がUSB−I/F56から抜去されたこと、或いはUSBケーブル102で接続されたUSBデバイスが電源OFFされたこと等を含む。USBデバイスの接続及び切断は、周知の方法で検出することができる。 First, the print program 65 monitors the connection and disconnection of the USB device through the USB-I / F56 (S11, S12). The connection of the USB device means, for example, that the USB cable 102 extending from the powered-on USB device is connected to the USB-I / F56, or that the USB device already connected by the USB cable 102 is turned on. including. Further, the disconnection of the USB device includes the removal of the USB cable 102 from the USB-I / F56, the power off of the USB device connected by the USB cable 102, and the like. The connection and disconnection of the USB device can be detected by a well-known method.
プリントプログラム65は、USB−I/F56を通じてUSBデバイスの接続を検出したことに応じて(S11:Yes)、プリンタクラスのUSBデバイスが接続されたか否かを判断する(S13)。USBデバイスのクラスは、例えば、当該USBデバイスのデバイスディスクリプタを取得することによって判断できる。そして、プリントプログラム65は、プリンタクラスのUSBデバイスが接続されたと判断したことに応じて(S13:Yes)、後述するプリンタ接続処理を実行する(S14)。一方、プリントプログラム65は、プリンタクラスでないUSBデバイスが接続されたと判断したことに応じて(S13:No)、当該USBデバイスのデバイスIDを含むデバイスレコードをデバイスリストに登録する(S15)。 The print program 65 determines whether or not a printer-class USB device is connected in response to detecting the connection of the USB device through the USB-I / F56 (S11: Yes) (S13). The class of the USB device can be determined, for example, by acquiring the device descriptor of the USB device. Then, the print program 65 executes the printer connection process described later (S14) in response to the determination that the printer class USB device is connected (S13: Yes). On the other hand, the print program 65 registers the device record including the device ID of the USB device in the device list in response to the determination that the USB device other than the printer class is connected (S13: No) (S15).
また、プリントプログラム65は、USB−I/F56を通じてUSBデバイスの切断を検出したことに応じて(S12:Yes)、プリンタクラスのUSBデバイスが切断されたか否かを判断する(S16)。そして、プリントプログラム65は、プリンタクラスのUSBデバイスが切断されたと判断したことに応じて(S16:Yes)、後述するS37で当該USBデバイスに対応付けて公開した共有フォルダを、非公開にする(S17)。一方、プリントプログラム65は、プリンタクラスでないUSBデバイスが切断されたと判断したことに応じて(S16:No)、当該USBデバイスのデバイスIDを含むデバイスレコードを、デバイスリストから削除する(S18)。 Further, the print program 65 determines whether or not the printer-class USB device has been disconnected in response to detecting the disconnection of the USB device through the USB-I / F56 (S12: Yes) (S16). Then, the print program 65 makes the shared folder published in association with the USB device in S37, which will be described later, private in response to the determination that the USB device of the printer class has been disconnected (S16: Yes). S17). On the other hand, the print program 65 deletes the device record including the device ID of the USB device from the device list in response to the determination that the USB device that is not the printer class has been disconnected (S16: No) (S18).
次に図4を参照して、プリンタ10Aが接続された場合のプリンタ接続処理を説明する。まず、プリントプログラム65は、プリンタ10Aが初めて接続されたか否かを判断する(S31)。より詳細には、プリントプログラム65は、プリンタ10AのデバイスID“プリンタA”を含むデバイスレコードがデバイスリストに登録されているか否かを判断する。そして、プリントプログラム65は、デバイスID“プリンタA”を含むデバイスレコードがデバイスリストに登録されていると判断したことに応じて(S31:No)、S32〜S34の処理をスキップする。 Next, the printer connection process when the printer 10A is connected will be described with reference to FIG. First, the print program 65 determines whether or not the printer 10A is connected for the first time (S31). More specifically, the print program 65 determines whether or not a device record including the device ID "printer A" of the printer 10A is registered in the device list. Then, the print program 65 skips the processes of S32 to S34 in response to the determination that the device record including the device ID "printer A" is registered in the device list (S31: No).
一方、プリントプログラム65は、デバイスID“プリンタA”を含むデバイスレコードがデバイスリストに登録されていないと判断したことに応じて(S31:Yes)、USB−I/F56を通じてプリンタ10Aからプリンタ情報Aを受信する(S32)。S32の処理は、第2取得処理の一例である。 On the other hand, the print program 65 determines that the device record including the device ID "printer A" is not registered in the device list (S31: Yes), and the printer information A is transmitted from the printer 10A through the USB-I / F56. Is received (S32). The process of S32 is an example of the second acquisition process.
次に、プリントプログラム65は、デバイスリスト内でユニークなURLを生成する(S33)。一例として、URLは、“http://print-server/printer-a/status.html”、“http://print-server/printer-b/status.html”のように、異なるディレクトリ名によってユニークにされてもよい。他の例として、URLは、“http://print-server:50000/status.html”、“http://print-server:50001/status.html”のように、異なるポート番号によってユニークにされてもよい。 Next, the print program 65 generates a unique URL in the device list (S33). As an example, the URL is unique due to different directory names, such as “http://print-server/printer-a/status.html” and “http://print-server/printer-b/status.html”. May be made. As another example, the URL is uniqueed by different port numbers, such as “http://print-server:50000/status.html”, “http://print-server:50001/status.html”. You may.
次に、プリントプログラム65は、プリンタ10AのデバイスID“プリンタA”と、S32で取得したプリンタ情報Aと、S33で生成したURL−Aとを含むデバイスレコードを、デバイスリストに登録する(S34)。なお、S34の時点において、ステータス情報には、プリンタステータス“ONLINE”、データステータス“IDLE”が設定される。また、実行パラメータには、予め定められたデフォルトの実行パラメータが設定される。このステップS31〜S34の処理により、同一のプリンタ10が接続された場合に、接続の順番や接続されたUSBソケットに拘わらず、必ず同一のURLが割り当てられる。 Next, the print program 65 registers the device record including the device ID “printer A” of the printer 10A, the printer information A acquired in S32, and the URL-A generated in S33 in the device list (S34). .. At the time of S34, the printer status "ONLINE" and the data status "IDLE" are set in the status information. In addition, a predetermined default execution parameter is set as the execution parameter. By the processing of steps S31 to S34, when the same printer 10 is connected, the same URL is always assigned regardless of the order of connection and the connected USB socket.
次に、プリントプログラム65は、モニタプログラム66の新規スレッドを、接続されたプリンタ10Aに対応付けて起動する(S35)。新たに起動されたモニタプログラム66のスレッドは、後述するモニタ処理を実行する。すなわち、モニタプログラム66のスレッド(以下、単に「モニタプログラム66」と表記することがある。)は、プリントサーバ50に接続されたプリンタ10の数だけ起動され、対応するプリンタ10に対するモニタ処理を独立して実行する。また、プリントプログラム65は、プリンタ10Aがプリンタ言語“PJL”を解読可能な場合において、起動したモニタプログラム66がS63の処理を実行するまで、S36以降の処理の実行を待機する。 Next, the print program 65 starts the new thread of the monitor program 66 in association with the connected printer 10A (S35). The newly started thread of the monitor program 66 executes the monitor process described later. That is, the threads of the monitor program 66 (hereinafter, may be simply referred to as "monitor program 66") are started by the number of printers 10 connected to the print server 50, and the monitor processing for the corresponding printer 10 is independent. And execute. Further, when the printer 10A can decipher the printer language "PJL", the print program 65 waits for the execution of the processing after S36 until the started monitor program 66 executes the processing of S63.
次に、プリントプログラム65は、起動したモニタプログラム66がS63の処理を実行したことに応じて、プリンタが下記(A)又は(B)のデータを印刷可能か否かを判断する(S36)。S36の処理は、第1判断処理の一例である。そして、プリントプログラム65は、下記の(A)及び(B)のデータをプリンタ10が印刷可能でないと判断したことに応じて(S36:No)、S37の処理をスキップしてプリンタ接続処理を終了する。
(A)当該プリンタ10が直接印刷可能なデータ形式(IEEE1284ID内に対応言語として記載されるデータ形式)
(B)後述するS48において変換可能なデータ形式
Next, the print program 65 determines whether or not the printer can print the following data (A) or (B) according to the activated monitor program 66 executing the process of S63 (S36). The process of S36 is an example of the first determination process. Then, the print program 65 skips the process of S37 and ends the printer connection process in response to the determination that the printer 10 cannot print the following data (A) and (B) (S36: No). To do.
(A) Data format that the printer 10 can print directly (data format described as a corresponding language in the IEEE1284 ID)
(B) Data format that can be converted in S48 described later
一方、プリントプログラム65は、上記(A)、(B)の少なくとも1つをサポートしていると判断したことに応じて(S36:Yes)、プリンタ10Aに対応付けた共有フォルダを通信ネットワーク101に公開する(S37)。ここで公開される共有フォルダは、例えば、図8(B)に示される親フォルダと、親フォルダの下の階層の印刷データフォルダ及び退避フォルダとを含む。S37の処理は、公開処理の一例である。なお、このフォルダ名は、前述のURLとの関連がある名称とする。すなわちこのフォルダ名は、USBの接続順や接続されたソケットに依存せず、且つ同一のプリンタ10を接続した際には同一の名称で公開される。 On the other hand, the print program 65 sets the shared folder associated with the printer 10A to the communication network 101 in response to the determination that it supports at least one of the above (A) and (B) (S36: Yes). It will be made public (S37). The shared folder published here includes, for example, the parent folder shown in FIG. 8B, and the print data folder and the backup folder in the hierarchy below the parent folder. The process of S37 is an example of a public process. In addition, this folder name is a name related to the above-mentioned URL. That is, this folder name does not depend on the USB connection order or the connected socket, and is published with the same name when the same printer 10 is connected.
これにより、フォルダ名と先のURLとの対応が容易に判断できる。この共有フォルダは、図9のフォルダアイコン132に付加された文字列“プリンタA印刷データフォルダ”、フォルダアイコン133に付加された文字列“プリンタA退避フォルダ”に対応する。次に、プリントプログラム65は、接続されたプリンタ10を、CUPSサーバ43及びSMBサーバ41の機能を使用して、共有プリンタに設定する。この共有プリンタは、図9のキューアイコン131に対応する。 As a result, the correspondence between the folder name and the destination URL can be easily determined. This shared folder corresponds to the character string “Printer A print data folder” added to the folder icon 132 in FIG. 9 and the character string “Printer A backup folder” added to the folder icon 133. Next, the print program 65 sets the connected printer 10 as a shared printer by using the functions of the CUPS server 43 and the SMB server 41. This shared printer corresponds to the queue icon 131 in FIG.
次に図3に戻って、プリントプログラム65は、S14〜S18のいずれかを実行したことに応じて、USBデバイスの接続及び切断をUSB−I/F56を通じて再び監視する(S11、S12)。すなわち、プリントプログラム65は、USB−I/F56を通じてプリンタ10が接続される度に、当該プリンタ10に対応付けられた共有フォルダを通信ネットワーク101に公開する。 Then, returning to FIG. 3, the print program 65 again monitors the connection and disconnection of the USB device through the USB-I / F56 in response to executing any of S14 to S18 (S11, S12). That is, every time the printer 10 is connected through the USB-I / F56, the print program 65 publishes the shared folder associated with the printer 10 to the communication network 101.
また、プリントプログラム65は、USB−I/F56を通じて接続されたプリンタ10を共有プリンタとして公開したことに応じて、プリント処理を実行する。プリント処理は、情報処理端末20からファイル或いはプリントデータを取得し、取得したファイル或いはプリントデータを対象とするプリント動作をプリンタ10に実行させる処理である。図5を参照して、プリント処理の詳細を説明する。 Further, the print program 65 executes the print process in response to publishing the printer 10 connected through the USB-I / F56 as a shared printer. The print process is a process of acquiring a file or print data from the information processing terminal 20 and causing the printer 10 to execute a print operation for the acquired file or print data. The details of the printing process will be described with reference to FIG.
まず、プリントプログラム65は、LAN−I/F55を通じて情報処理端末20からファイル或いはプリントデータを受信するまで待機する(S41)。「ファイルを受信する」とは、S37で公開した印刷データフォルダに対して、情報処理端末20のファイル管理プログラム等を使用してファイルがコピーされたこと、或いはCUPSサーバ43により公開された共有プリンタキュー或いはTCPプロトコルのポート番号9100に対して、情報処理端末20からプリントデータが送信されること等を指す。なお、ポート番号9100に対するプリント動作の指示は、予め設定された特定の一種類のプリンタ10に対してのみ作用する。 First, the print program 65 waits until a file or print data is received from the information processing terminal 20 through the LAN-I / F55 (S41). “Receiving a file” means that the file is copied to the print data folder published in S37 using the file management program of the information processing terminal 20, or the shared printer queue published by the CUPS server 43. Alternatively, it means that print data is transmitted from the information processing terminal 20 to the port number 9100 of the TCP program. It should be noted that the instruction of the print operation for the port number 9100 acts only on a specific type of printer 10 set in advance.
次に図8及び図9を参照して、情報処理端末20がプリントサーバ50にファイル或いはプリントデータを送信する手順の一例を説明する。なお、プリントサーバ50には、プリンタ10A、10Bが接続されているものとする。 Next, with reference to FIGS. 8 and 9, an example of a procedure in which the information processing terminal 20 transmits a file or print data to the print server 50 will be described. It is assumed that the printers 10A and 10B are connected to the print server 50.
まず、情報処理端末20のファイル管理プログラムは、図8(A)に示されるように、通信ネットワーク101に接続されたデバイスに対応するデバイスアイコン111、112、113を含む一覧画面をディスプレイに表示させる。デバイスアイコン111はプリントサーバ50に対応し、デバイスアイコン112は情報処理端末20Aに対応し、デバイスアイコン113は情報処理端末20Bに対応する。デバイスアイコン111〜113には、例えば、対応するデバイスのデバイス名(例えば、NetBIOS名)を示す文字列が付加される。 First, as shown in FIG. 8A, the file management program of the information processing terminal 20 displays a list screen including device icons 111, 112, and 113 corresponding to the devices connected to the communication network 101 on the display. .. The device icon 111 corresponds to the print server 50, the device icon 112 corresponds to the information processing terminal 20A, and the device icon 113 corresponds to the information processing terminal 20B. For example, a character string indicating the device name (for example, NetBIOS name) of the corresponding device is added to the device icons 111 to 113.
次に、ファイル管理プログラムは、例えば、デバイスアイコン111に対する左クリック操作を受け付けたことに応じて、図8(B)に示されるように、プリントサーバ50が公開した親フォルダに対応するフォルダアイコン121、122を含む一覧画面をディスプレイに表示させる。フォルダアイコン121はプリンタ10Aの親フォルダに対応し、フォルダアイコン122はプリンタ10Bの親フォルダに対応する。フォルダアイコン121、122には、例えば、対応するプリンタ10A、10BのデバイスIDを示す文字列“プリンタA”、“プリンタB”が付加される。すなわち、図8(B)に示されるフォルダ名も、USBの接続順や接続されたソケットに依存せず、且つ同一のプリンタ10を接続した際には同一の名称で公開される。 Next, the file management program receives, for example, a left-click operation on the device icon 111, and as shown in FIG. 8B, the folder icon 121 corresponding to the parent folder published by the print server 50. , 122 is displayed on the display. The folder icon 121 corresponds to the parent folder of the printer 10A, and the folder icon 122 corresponds to the parent folder of the printer 10B. For example, the character strings "printer A" and "printer B" indicating the device IDs of the corresponding printers 10A and 10B are added to the folder icons 121 and 122. That is, the folder name shown in FIG. 8B does not depend on the USB connection order or the connected socket, and is published with the same name when the same printer 10 is connected.
次に、ファイル管理プログラムは、例えば、フォルダアイコン121に対する左クリック操作を受け付けたことに応じて、図9に示されるように、キューアイコン131と、フォルダアイコン132、133とを含む一覧画面130をディスプレイに表示させる。キューアイコン131は、共有プリンタとして公開されたプリンタ10Aに対応する。フォルダアイコン132はプリンタ10Aの印刷データフォルダに対応し、フォルダアイコン133はプリンタ10Aの退避フォルダに対応する。 Next, the file management program displays the list screen 130 including the queue icon 131 and the folder icons 132 and 133, as shown in FIG. 9, in response to receiving the left-click operation on the folder icon 121, for example. Display on the display. The queue icon 131 corresponds to the printer 10A published as a shared printer. The folder icon 132 corresponds to the print data folder of the printer 10A, and the folder icon 133 corresponds to the save folder of the printer 10A.
また、ファイル管理プログラムは、図9に示されるように、ファイルアイコン141、142、143を含む一覧画面140を、ディスプレイ上の一覧画面130と別の領域に表示させることができる。ファイルアイコン141〜143は、情報処理端末20のメモリに記憶されているファイルに対応する。ファイルアイコン141〜143には、対応するファイルのファイル名を示す文字列が付加される。 Further, as shown in FIG. 9, the file management program can display the list screen 140 including the file icons 141, 142, and 143 in an area different from the list screen 130 on the display. The file icons 141 to 143 correspond to the files stored in the memory of the information processing terminal 20. A character string indicating the file name of the corresponding file is added to the file icons 141 to 143.
図9の例において、ファイルアイコン141に対応するファイル“写真.JPG”は、プリンタ10により直接印刷不可で、且つS48で変換可能とする。また、ファイルアイコン142に対応するファイル“テキスト.PDF”は、プリンタ10により直接印刷可能とする。さらに、ファイルアイコン143に対応するファイル“報告書.DOC”は、プリンタ10により直接印刷不可で、且つS48で変換不可とする。 In the example of FIG. 9, the file "photograph.JPG" corresponding to the file icon 141 cannot be directly printed by the printer 10 and can be converted by S48. Further, the file "text.PDF" corresponding to the file icon 142 can be directly printed by the printer 10. Further, the file "report.DOC" corresponding to the file icon 143 cannot be directly printed by the printer 10 and cannot be converted by S48.
まず、ファイル“報告書.DOC”を印刷する場合について説明する。ユーザがファイルアイコン143をマウスにてダブルクリックすると、そのファイルに関連付けられたアプリケーションが起動され、ファイル“報告書.DOC”が読み込まれる。さらに、ユーザは、起動したアプリケーションを操作して印刷を指示すると、アプリケーションは当該プリンタ10に対応する不図示のプリンタドライバを呼び出して、対応するプリントデータを生成する。この作成されたプリントデータはポート番号9100或いは対応する共有プリンタキューに対して送信される。 First, the case of printing the file "report.DOC" will be described. When the user double-clicks the file icon 143 with the mouse, the application associated with the file is started and the file "report.DOC" is read. Further, when the user operates the started application to instruct printing, the application calls a printer driver (not shown) corresponding to the printer 10 and generates the corresponding print data. The created print data is transmitted to port number 9100 or the corresponding shared printer queue.
一方、ファイル管理プログラムは、例えば、ファイルアイコン141をフォルダアイコン132の位置に移動させるドラッグ操作を受け付けたことに応じて、ファイルアイコン141に対応付けられたファイル“写真.JPG”を、プリントデータに変換せずに、通信ネットワーク101に公開されたプリンタ10Aの印刷データフォルダに書き込む。ファイルアイコン142、143をフォルダアイコン132の位置に移動させるドラッグ操作がなされた場合も、対応するファイルが印刷データフォルダに書き込まれる。 On the other hand, the file management program converts the file "photo.JPG" associated with the file icon 141 into print data in response to receiving, for example, a drag operation for moving the file icon 141 to the position of the folder icon 132. The file is written to the print data folder of the printer 10A published on the communication network 101 without conversion. When the drag operation for moving the file icons 142 and 143 to the position of the folder icon 132 is performed, the corresponding file is also written to the print data folder.
次に図5に戻って、プリントプログラム65は、LAN−I/F55を通じて情報処理端末20からプリントデータを受信したことに応じて(S41:Yes&S42:共有プリンタ)、後述する“USTATUS DEVICE”コマンドを打ち消すコマンドを、受信したプリントデータから削除する(S43)。なお、当該コマンドがプリンデータに含まれていない場合は、S43の処理はスキップされる。このS43の処理により、プリントデータ中にステータス情報の送信を停止する情報があったとしても、ステータスモニタの機能を継続できる。 Next, returning to FIG. 5, the print program 65 issues a “USTATTUS DEVICE” command, which will be described later, in response to receiving print data from the information processing terminal 20 through the LAN-I / F55 (S41: Yes & S42: shared printer). The cancel command is deleted from the received print data (S43). If the command is not included in the pudding data, the process of S43 is skipped. By the process of S43, even if there is information in the print data to stop the transmission of the status information, the function of the status monitor can be continued.
そして、プリントプログラム65は、当該プリントデータをプリンタAに対応付けられたRAWポートキューに登録する(S44)。そして、CUPSサーバ43は、RAWポートキューに登録されたプリントデータを対象とするプリント動作を、プリンタ10Aに実行させる。S44の処理は、プリント指示処理の一例である。 Then, the print program 65 registers the print data in the RAW port queue associated with the printer A (S44). Then, the CUPS server 43 causes the printer 10A to execute a print operation targeting the print data registered in the RAW port queue. The process of S44 is an example of a print instruction process.
一方、プリントプログラム65は、通信ネットワーク101に公開されたプリンタ10Aの印刷データフォルダにファイル“写真.JPG”が書き込まれたことに応じて(S41:Yes&S42:共有フォルダ)、当該ファイルをメモリ62(すなわち、プリンタ10Aの印刷データフォルダ)から読み出す。この処理は、第1取得処理の一例である。次に、プリントプログラム65は、取得したファイル“写真.JPG”が印刷可能形式か否かを判断する(S45)。印刷可能形式とは、例えば、プリントプログラム65がプリントデータに変換可能な予め定められたファイル形式を指す。S45の処理は、第3判断処理の一例である。 On the other hand, the print program 65 stores the file in the memory 62 (that is, the shared folder) in response to the file "photograph.JPG" being written in the print data folder of the printer 10A published on the communication network 101 (S41: Yes & S42: shared folder). , Print data folder of printer 10A). This process is an example of the first acquisition process. Next, the print program 65 determines whether or not the acquired file "photograph.JPG" is in a printable format (S45). The printable format refers to, for example, a predetermined file format that can be converted into print data by the print program 65. The process of S45 is an example of the third determination process.
次に、プリントプログラム65は、取得したファイル“写真.JPG”が印刷可能形式だと判断したことに応じて(S45:Yes)、プリンタ10Aのデバイスレコードのデータステータスに“ACCEPT”を設定する(S46)。また、プリントプログラム65は、取得したファイル“写真.JPG”がプリンタ対応形式か否かを判断する(S47)。S47の処理は、第2判断処理の一例である。 Next, the print program 65 sets "ACCEPT" in the data status of the device record of the printer 10A according to the determination that the acquired file "photo.JPG" is in a printable format (S45: Yes) (S45: Yes). S46). Further, the print program 65 determines whether or not the acquired file "photograph.JPG" is in a printer-compatible format (S47). The process of S47 is an example of the second determination process.
次に、プリントプログラム65は、取得したファイル“写真.JPG”がプリンタ対応形式でないと判断したことに応じて(S47:No)、取得したファイル“写真.JPG”を、プリンタ情報で示されるプリンタ言語で記述されたプリントデータに変換する(S48)。ここで生成されるプリントデータは、ファイル“写真.JPG”を対象とするプリント動作を、プリンタ10Aのデバイスレコードに含まれる実行パラメータ“A4”、“普通紙”、“カラー”に従って実行させるためのデータである。S48の処理は、変換処理の一例である。 Next, the print program 65 determines that the acquired file "photo.JPG" is not in a printer-compatible format (S47: No), and displays the acquired file "photograph.JPG" in the printer information. It is converted into print data described in a language (S48). The print data generated here is for executing the print operation for the file "Photo.JPG" according to the execution parameters "A4", "plain paper", and "color" included in the device record of the printer 10A. It is data. The process of S48 is an example of the conversion process.
そして、プリントプログラム65は、S48で生成したプリントデータを、S42でファイルを取得した印刷データフォルダに対応するプリンタ10AのRAWポートキューに登録する(S49)。次に、プリントプログラム65は、印刷データフォルダに書き込まれたファイル“写真.JPG”を退避フォルダに移動させ(S50)、プリンタ10Aのデータステータスに“IDLE”を設定する(S51)。S49の処理はプリント指示処理の一例であり、S50の処理は退避処理の一例である。 Then, the print program 65 registers the print data generated in S48 in the RAW port queue of the printer 10A corresponding to the print data folder for which the file was acquired in S42 (S49). Next, the print program 65 moves the file "photo.JPG" written in the print data folder to the save folder (S50), and sets the data status of the printer 10A to "IDLE" (S51). The process of S49 is an example of a print instruction process, and the process of S50 is an example of a save process.
他の例として、通信ネットワーク101に公開されたプリンタ10Aの印刷データフォルダにファイル“テキスト.PDF”が書きこまれた場合、プリントプログラム65は、取得したファイル“テキスト.PDF”が印刷可能形式で且つプリンタ対応形式だと判断して(S45:Yes&S47:Yes)、S48の処理をスキップして、取得したファイル及びプリンタ10Aの実行パラメータをプリンタ10AのRAWポートキューに登録する(S49)。 As another example, when the file "text.PDF" is written in the print data folder of the printer 10A published on the communication network 101, the print program 65 can print the acquired file "text.PDF" in a printable format. It is determined that the format is compatible with the printer (S45: Yes & S47: Yes), the processing of S48 is skipped, and the acquired file and the execution parameters of the printer 10A are registered in the RAW port queue of the printer 10A (S49).
なお、PDF形式のファイルには、実行パラメータの一部(例えば、項目“サイズ”の実行パラメータ)が含まれている。そして、PDF形式のファイルに含まれる実行パラメータは、デバイスレコードに含まれる実行パラメータより優先して適用される。すなわち、プリントプログラム65は、プリンタ10Aのデバイスレコードに含まれる実行パラメータ“A4”、“普通紙”、“カラー”のうち、ファイル“テキスト.PDF”に含まれない項目(例えば、“用紙種”、“色”)の実行パラメータ“普通紙”、“カラー”をファイル“テキスト.PDF”に付加して、RAWポートキューに登録する。 The PDF format file contains some execution parameters (for example, execution parameters of the item "size"). Then, the execution parameters included in the PDF format file are applied in preference to the execution parameters included in the device record. That is, in the print program 65, among the execution parameters "A4", "plain paper", and "color" included in the device record of the printer 10A, the items not included in the file "text.PDF" (for example, "paper type"". , "Color") execution parameters "plain paper" and "color" are added to the file "text.PDF" and registered in the RAW port queue.
さらに他の例として、ファイル “報告書.DOC”が通信ネットワーク101に公開されたプリンタ10Aの印刷データフォルダに書きこまれた場合、プリントプログラム65は、取得したファイル“報告書.DOC”が印刷可能形式でないと判断して(S45:No)、データステータスに“REFUSE”を設定して(S52)、S46〜S49の処理をスキップして、S50以降の処理を実行する。 As yet another example, when the file "report.DOC" is written in the print data folder of the printer 10A published on the communication network 101, the print program 65 can print the acquired file "report.DOC". It is determined that the format is not (S45: No), "REFUSE" is set in the data status (S52), the processes of S46 to S49 are skipped, and the processes after S50 are executed.
次に図6を参照して、モニタ処理の詳細を説明する。まず、モニタプログラム66は、プリンタ10AのデバイスレコードからURLを読み出す。ここで読み出されるURLは、プリンタ10Aがプリントサーバ50に初めて接続された際に、S33で生成されたものである。すなわち、プリントサーバ50に対してプリンタ10Aが接続される度に、同一のURLが読み出される。 Next, the details of the monitoring process will be described with reference to FIG. First, the monitor program 66 reads the URL from the device record of the printer 10A. The URL read here is the one generated in S33 when the printer 10A is connected to the print server 50 for the first time. That is, the same URL is read each time the printer 10A is connected to the print server 50.
次に、モニタプログラム66は、プリンタ10Aのステータを記述したスHTMLデータを、読み出したURLで示されるメモリ領域に記憶させる(S61)。モニタプログラム66は、例えば、メモリ62に予め記憶されたテンプレートHTMLをURLで示されるメモリ領域にコピーし、コピーしたテンプレートHTMLにプリンタ10のステータス情報及び実行パラメータを設定する。また、モニタプログラム66は、プリンタ10Aが特定言語“PJL”を解読可能か否かを判断する(S62)。PJLを解読可能か否かは、USBプリンタクラス仕様に規定されたプリンタ10のIEEE1284IDを読み取ることにより判断できる。 Next, the monitor program 66 stores the HTML data describing the stator of the printer 10A in the memory area indicated by the read URL (S61). The monitor program 66, for example, copies the template HTML stored in advance in the memory 62 to the memory area indicated by the URL, and sets the status information and execution parameters of the printer 10 in the copied template HTML. Further, the monitor program 66 determines whether or not the printer 10A can decipher the specific language "PJL" (S62). Whether or not the PJL can be deciphered can be determined by reading the IEEE1284 ID of the printer 10 specified in the USB printer class specification.
例えば、プリンタ10Aに対応付けられたモニタプログラム66のスレッドは、プリンタ10Aがプリンタ言語“PJL”を解読可能だと判断したことに応じて(S62:Yes)、プリンタ言語“PJL”に規定された“INFO DEVICE”コマンドと、“USTATUS DEVICE”コマンドとを、USB−I/F56を通じてプリンタ10Aに送信する(S63)。“INFO DEVICE”コマンドは、現在のプリンタステータスの送信を指示する第1指示情報の一例である。“USTATUS DEVICE”コマンドは、プリンタステータスが変化したタイミングで当該プリンタステータスの送信を指示する第2指示情報の一例である。 For example, the thread of the monitor program 66 associated with the printer 10A is defined in the printer language "PJL" in response to the determination that the printer 10A can decode the printer language "PJL" (S62: Yes). The "INFO DEVICE" command and the "USTATTUS DEVICE" command are transmitted to the printer 10A via USB-I / F56 (S63). The "INFO DEVICE" command is an example of the first instruction information instructing the transmission of the current printer status. The "USTATUS DEVICE" command is an example of the second instruction information for instructing the transmission of the printer status at the timing when the printer status changes.
次に、モニタプログラム66は、プリンタステータスを受信するか、プリンタ10Aの切断を検出するまで待機するまで(S65:No&S67:No)、プリンタステータスの送信をプリンタ10Aに所定の時間間隔で繰り返し要求する(S64)。そして、モニタプログラム66は、USB−I/F56を通じてプリンタ10Aからプリンタステータスを受信したことに応じて(S65:Yes)、受信したプリンタステータスでプリンタ10Aのデバイスレコードのステータス情報を更新する。 Next, the monitor program 66 repeatedly requests the printer 10A to transmit the printer status at predetermined time intervals until it receives the printer status or waits until it detects the disconnection of the printer 10A (S65: No & S67: No). (S64). Then, the monitor program 66 updates the status information of the device record of the printer 10A with the received printer status in response to receiving the printer status from the printer 10A through the USB-I / F56 (S65: Yes).
なお、プリンタ10Aから受信するプリンタステータスは、PJLの規約に準拠したフォーマットのテキストデータである。そこで、モニタプログラム66は、S65で受信したプリンタステータスを、当該プリンタステータスで示されるプリンタ10Aの状態を表す文字列に変換する。そして、モニタプログラム66は、プリンタ10AのステータスHTMLに変換した文字列を設定する(S68)。 The printer status received from the printer 10A is text data in a format conforming to the PJL rules. Therefore, the monitor program 66 converts the printer status received in S65 into a character string representing the status of the printer 10A indicated by the printer status. Then, the monitor program 66 sets the character string converted into the status HTML of the printer 10A (S68).
次に、モニタプログラム66は、S65で受信したプリンタステータスが特定ステータスか否かを判断する(S69)。特定ステータスとは、例えば、ユーザが解消可能なステータス、解消しないとプリント動作を継続できないステータス等の予め定められたプリンタステータス(例えば、紙無し、紙詰まり、インク無し等)である。そして、モニタプログラム66は、特定ステータスだと判断したことに応じて(S69:Yes)、当該ステータスを示す音声をスピーカ57に出力させる(S70)。一方、モニタプログラム66は、特定ステータスでないと判断したことに応じて(S69:No)、S70の処理をスキップする。そして、モニタプログラム66は、S64以降の処理を再び実行する。 Next, the monitor program 66 determines whether or not the printer status received in S65 is a specific status (S69). The specific status is, for example, a predetermined printer status (for example, no paper, no paper jam, no ink, etc.) such as a status that can be resolved by the user and a status that the printing operation cannot be continued unless the status is resolved. Then, the monitor program 66 causes the speaker 57 to output a sound indicating the status in response to the determination that the status is specific (S69: Yes) (S70). On the other hand, the monitor program 66 skips the process of S70 according to the determination that the status is not specific (S69: No). Then, the monitor program 66 executes the processing after S64 again.
また、モニタプログラム66は、USB−I/F56を通じてプリンタ10Aの切断を検出したことに応じて(S67:Yes)、プリンタ10Aのデバイスレコードのプリンタステータス、及びHTMLデータに記述されたプリンタステータスを“OFFLINE”に変更する(S71)。そして、モニタプログラム66は、S71の処理を実行してから一定時間(例えば、30秒)が経過したことに応じて、プリンタ10AのステータスHTMLを、メモリ62から削除する(S72)。そして、プリンタ10Aに対応するモニタプログラム66のスレッドは、処理を終了する(S73)。 Further, the monitor program 66 sets the printer status of the device record of the printer 10A and the printer status described in the HTML data to "Yes" in response to detecting the disconnection of the printer 10A through the USB-I / F56 (S67: Yes). Change to "OFFLINE" (S71). Then, the monitor program 66 deletes the status HTML of the printer 10A from the memory 62 according to the elapse of a certain time (for example, 30 seconds) after executing the process of S71 (S72). Then, the thread of the monitor program 66 corresponding to the printer 10A ends the process (S73).
一方、プリンタ10Bに対応付けられたモニタプログラム66のスレッドは、プリンタ10Bがプリンタ言語“PJL”を解読不能だと判断したことに応じて(S62:No)、USBのプリンタクラスのプリンタステータスを、USB−I/F56を通じてプリンタ10Bから受信する(S74)。このUSBプリンタクラスのプリンタステータスは、エラーの有無、用紙エラーの有無のみを示すビット列である。モニタプログラム66は、S74で受信したビット列を解析して、ステータスを示す文字列を生成する(S75)。S76〜S77の処理は、前述のS69〜S70と同様である。そして、モニタプログラム66は、USB−I/F56を通じてプリンタ10Bの切断を検出するまで(S78:No)、S74〜77の処理を所定の時間間隔(例えば、1秒)で繰り返し実行する。さらに、モニタプログラム66は、USB−I/F56を通じてプリンタ10Bの切断を検出したことに応じて(S78:Yes)、前述したS71〜S73の処理を実行する。 On the other hand, the thread of the monitor program 66 associated with the printer 10B determines the printer status of the USB printer class according to the determination that the printer 10B cannot decode the printer language "PJL" (S62: No). Received from the printer 10B through USB-I / F56 (S74). The printer status of this USB printer class is a bit string indicating only the presence / absence of an error and the presence / absence of a paper error. The monitor program 66 analyzes the bit string received in S74 and generates a character string indicating the status (S75). The processing of S76 to S77 is the same as that of S69 to S70 described above. Then, the monitor program 66 repeatedly executes the processes of S74 to 77 at predetermined time intervals (for example, 1 second) until the disconnection of the printer 10B is detected through the USB-I / F56 (S78: No). Further, the monitor program 66 executes the above-described processes S71 to S73 in response to detecting the disconnection of the printer 10B through the USB-I / F56 (S78: Yes).
また図示は省略するが、モニタプログラム66は、S46、S51、S52でデバイスレコードのデータステータスが変更される度に、変更後のデータステータスを示す文字列を対応するステータスHTMLに設定する。さらに図示は省略するが、モニタプログラム66は、後述するS88でデバイスレコードの実行パラメータが変更される度に、変更後の実行パラメータを示す文字列を対応するステータスHTMLに設定する。すなわち、情報処理端末20のブラウザプログラムにおいて、ステータスHTMLで示される画面を表示している場合、定常時はその時点のプリンタステータスが表示され、プリンタ10が電源OFFあるいはUSBケーブルが取り外された場合は、一定時間“OFFLINE”が表示された後にページが無くなる。 Although not shown, the monitor program 66 sets a character string indicating the changed data status to the corresponding status HTML each time the data status of the device record is changed in S46, S51, and S52. Further, although not shown, the monitor program 66 sets a character string indicating the changed execution parameter to the corresponding status HTML each time the execution parameter of the device record is changed in S88 described later. That is, in the browser program of the information processing terminal 20, when the screen indicated by the status HTML is displayed, the printer status at that time is displayed in the steady state, and when the printer 10 is turned off or the USB cable is disconnected. , The page disappears after "OFFLINE" is displayed for a certain period of time.
また、モニタプログラム66は、モニタ処理と並行してステータス通知処理を実行する。ステータス通知処理は、モニタ処理で更新したステータスHTMLを情報処理端末20に送信し、情報処理端末20から送信された実行パラメータを対応するデバイスレコードに登録する処理である。この処理は、HTMLデータ及び当該HTMLデータに埋め込まれたCGIプログラムに基づいてWEBサーバ42によって実行されるものであるが、ここでは機能説明のために本発明の機能を分離した形で模式的に図7を参照して、ステータス通知処理の詳細を説明する。 Further, the monitor program 66 executes the status notification process in parallel with the monitor process. The status notification process is a process of transmitting the status HTML updated by the monitor process to the information processing terminal 20 and registering the execution parameters transmitted from the information processing terminal 20 in the corresponding device record. This process is executed by the WEB server 42 based on the HTML data and the CGI program embedded in the HTML data, but here, for the purpose of explaining the functions, the functions of the present invention are schematically performed in a separated form. The details of the status notification process will be described with reference to FIG. 7.
まず、モニタプログラム66は、一覧ページ要求情報、個別ステータス要求情報、或いは登録要求情報を、LAN−I/F55を通じて情報処理端末20から受信するまで待機する(S81、S82、S83)。一覧ページ要求情報は、図10(A)に示される一覧ページを示すHTMLデータ(以下、「一覧HTML」と表記する。)の送信を要求するHTTPリクエストである。個別ステータス要求情報は、ステータスHTMLの送信を要求するHTTPリクエストである。登録要求情報は、実行パラメータをデバイスレコードへの登録を要求するHTTPリクエストである。 First, the monitor program 66 waits until the list page request information, the individual status request information, or the registration request information is received from the information processing terminal 20 through the LAN-I / F55 (S81, S82, S83). The list page request information is an HTTP request for requesting transmission of HTML data (hereinafter, referred to as “list HTML”) indicating the list page shown in FIG. 10 (A). The individual status request information is an HTTP request requesting transmission of the status HTML. The registration request information is an HTTP request requesting registration of the execution parameter in the device record.
次に、モニタプログラム66は、LAN−I/F55を通じて情報処理端末20から一覧ページ要求情報を受信したことに応じて(S81:Yes)、現時点でメモリ62に記憶されているデバイスリストに基づいて一覧HTMLを生成する(S84)。そして、モニタプログラム66は、S84で生成したHTMLを一覧ページ要求情報の応答として、LAN−I/F55を通じて情報処理端末20に送信する(S85)。 Next, the monitor program 66 responds to receiving the list page request information from the information processing terminal 20 through the LAN-I / F55 (S81: Yes), based on the device list currently stored in the memory 62. Generate list HTML (S84). Then, the monitor program 66 transmits the HTML generated in S84 to the information processing terminal 20 through the LAN-I / F55 as a response to the list page request information (S85).
より詳細には、モニタプログラム66は、デバイスリストに登録されたデバイスレコードそれぞれに対応するデバイスアイコン151、152を一覧HTMLに含める。また、デバイスアイコン151、152には、対応するデバイスレコードのプリンタステータスを示す文字列が記述される。さらに、デバイスアイコン151、152に対応する<a>タグの“href”属性には、対応するデバイスレコードのURLが設定される。 More specifically, the monitor program 66 includes the device icons 151 and 152 corresponding to the device records registered in the device list in the list HTML. Further, in the device icons 151 and 152, a character string indicating the printer status of the corresponding device record is described. Further, the URL of the corresponding device record is set in the "href" attribute of the <a> tag corresponding to the device icons 151 and 152.
一方、情報処理端末20のブラウザプログラムは、プリントサーバ50から受信した一覧HTMLに従って、図10(A)に示される一覧ページをディスプレイに表示させる。そして、ブラウザプログラムは、例えば、デバイスアイコン151に対する左クリック操作を受け付けたことに応じて、個別ステータス要求情報をプリントサーバ50に送信する。ここで送信される個別ステータス要求情報は、デバイスアイコン151に対応する<a>タグの“href”属性に設定されたURL−Aで所在が示されるステータスHTMLの送信を要求するための情報である。 On the other hand, the browser program of the information processing terminal 20 displays the list page shown in FIG. 10A on the display according to the list HTML received from the print server 50. Then, the browser program transmits the individual status request information to the print server 50 in response to receiving the left-click operation for the device icon 151, for example. The individual status request information transmitted here is information for requesting transmission of the status HTML whose location is indicated by the URL-A set in the "href" attribute of the <a> tag corresponding to the device icon 151. ..
次に、モニタプログラム66は、LAN−I/F55を通じて情報処理端末20から個別ステータス要求情報を受信したことに応じて(S82:Yes)、要求されたステータスHTMLをCGI機能により生成する(S86)。そして、モニタプログラム66は、読み出したステータスHTMLを個別ステータス要求情報の応答として、LAN−I/F55を通じて情報処理端末20に送信する(S87)。 Next, the monitor program 66 generates the requested status HTML by the CGI function in response to receiving the individual status request information from the information processing terminal 20 through the LAN-I / F55 (S82: Yes) (S86). .. Then, the monitor program 66 transmits the read status HTML as a response to the individual status request information to the information processing terminal 20 through the LAN-I / F55 (S87).
一方、情報処理端末のブラウザプログラムは、プリントサーバ50から受信したステータスHTMLに従って、ステータスページをディスプレイに表示させる。ステータスページは、例えば図10(B)に示されるように、プリンタ10Aのデバイスレコードに含まれるステータス情報を示す文字列“READY”、“IDLE”と、プルダウンメニュー161、162、163と、[変更]アイコン164とを含む。 On the other hand, the browser program of the information processing terminal displays the status page on the display according to the status HTML received from the print server 50. As shown in FIG. 10B, for example, the status page includes the character strings “READY” and “IDLE” indicating the status information included in the device record of the printer 10A, the pull-down menus 161 and 162, 163, and [change]. ] Icon 164 and included.
プルダウンメニュー161〜163は、プリント動作の実行条件を構成する複数の項目“サイズ”、“用紙種”、“色”に対応する実行パラメータを、ユーザに指定させるためのオブジェクトである。最初に表示されるプルダウンメニュー161〜163には、プリンタ10Aのデバイスレコードに含まれる実行パラメータ“A4”、“普通紙”、“カラー”が指定された状態になっている。 The pull-down menus 161 to 163 are objects for allowing the user to specify execution parameters corresponding to a plurality of items "size", "paper type", and "color" that constitute execution conditions for the print operation. In the pull-down menus 161 to 163 displayed first, the execution parameters "A4", "plain paper", and "color" included in the device record of the printer 10A are specified.
また、項目“サイズ”に対応するプルダウンメニュー161は、実行パラメータの候補“A4”、“B5、“ハガキ”に対応する3つの選択肢を有する。項目“用紙種”に対応するプルダウンメニュー162は、実行パラメータの候補“普通紙”、“光沢紙”に対応する2つの選択肢を有する。項目“色”に対応するプルダウンメニュー163は、実行パラメータの候補“カラー”、“モノクロ”に対応する2つの選択肢を有する。 Further, the pull-down menu 161 corresponding to the item "size" has three options corresponding to the execution parameter candidates "A4", "B5", and "postcard". The pull-down menu 162 corresponding to the item "paper type" has three options. It has two options corresponding to the execution parameter candidates "plain paper" and "glossy paper". The pull-down menu 163 corresponding to the item "color" has two options corresponding to the execution parameter candidates "color" and "monochrome". Have a choice.
そして、ブラウザプログラムは、プルダウンメニュー161〜163で指定された実行パラメータの変更を受け付けたことに応じて、変更後の実行パラメータをプルダウンメニュー161〜163に表示させる。また、ブラウザプログラムは、[変更]アイコン164に対する左クリック操作を受け付けたことに応じて、プリントサーバ50に登録要求情報を送信する。登録要求情報は、プルダウンメニュー161〜163に表示された実行パラメータを含む。登録要求情報の送信は、例えば、HTTPに規定されたPOSTメソッドによって実現される。 Then, the browser program displays the changed execution parameters in the pull-down menus 161 to 163 in response to the acceptance of the change in the execution parameters specified in the pull-down menus 161 to 163. Further, the browser program transmits the registration request information to the print server 50 in response to the acceptance of the left-click operation for the [change] icon 164. The registration request information includes the execution parameters displayed in the pull-down menus 161 to 163. The transmission of registration request information is realized by, for example, the POST method specified in HTTP.
次に、モニタプログラム66は、LAN−I/F55を通じて情報処理端末20から登録要求情報を受信したことに応じて(S83:Yes)、受信した登録要求情報に含まれる実行パラメータで、プリンタ10Aのデバイスレコードの実行パラメータを上書きする(S88)。そして、モニタプログラム66は、S85、S87、S88のいずれかを実行したことに応じて、LAN−I/F55を通じて情報処理端末20からHTTPリクエストを受信するまで再び待機する(S81〜S83)。 Next, the monitor program 66 receives the registration request information from the information processing terminal 20 through the LAN-I / F55 (S83: Yes), and is an execution parameter included in the received registration request information of the printer 10A. The execution parameter of the device record is overwritten (S88). Then, the monitor program 66 waits again until it receives the HTTP request from the information processing terminal 20 through the LAN-I / F55 in response to executing any one of S85, S87, and S88 (S81 to S83).
[本実施形態の作用効果]
上記の実施形態によれば、情報処理端末20のユーザは、プリントサーバ50が公開した共有フォルダに、ファイル共有プロトコルを用いて所望のファイルを書き込むだけで、当該ファイルを対象とするプリント動作をプリンタ10に実行させることができる。すなわち、ファイル共有プロトコルをサポートしている情報処理端末20であれば、プリンタドライバがインストールされていなくてもプリンタ10を利用することができる。
[Action and effect of this embodiment]
According to the above embodiment, the user of the information processing terminal 20 simply writes a desired file to the shared folder published by the print server 50 using the file sharing protocol, and the printer performs a print operation targeting the file. It can be executed by 10. That is, if the information processing terminal 20 supports the file sharing protocol, the printer 10 can be used even if the printer driver is not installed.
また、上記の実施形態によれば、プリントサーバ50がサポートするプリンタ言語を解読可能なプリンタ10が接続されたことに応じて、共有フォルダが情報処理端末20に公開される。一方、プリントサーバ50がサポートしていないプリンタ言語のみを解読可能なプリンタ10が接続された場合、当該プリンタ10に対応する共有フォルダは公開されない。しかしながら、当該プリンタ10は共有プリンタとしては公開されるので、情報処理端末20のOSが変換したプリントデータを対象とするプリント動作を、当該プリンタ10に実行させることができる。 Further, according to the above embodiment, the shared folder is opened to the information processing terminal 20 in response to the connection of the printer 10 capable of decoding the printer language supported by the print server 50. On the other hand, when a printer 10 capable of decoding only a printer language not supported by the print server 50 is connected, the shared folder corresponding to the printer 10 is not disclosed. However, since the printer 10 is open to the public as a shared printer, the printer 10 can perform a print operation targeting the print data converted by the OS of the information processing terminal 20.
また、上記の実施形態によれば、共有フォルダに書き込まれたファイルがプリンタ対応形式でない場合に、当該ファイルがプリントデータに変換されてプリンタ10に送信される。これにより、プリンタドライバがインストールされていない情報処理端末20とプリンタ10との間の通信を、適切に中継することが可能となる。 Further, according to the above embodiment, when the file written in the shared folder is not in a printer-compatible format, the file is converted into print data and transmitted to the printer 10. This makes it possible to appropriately relay the communication between the information processing terminal 20 and the printer 10 in which the printer driver is not installed.
また、上記の実施形態では、印刷データフォルダにコピーすることにより印刷されたファイルは、退避フォルダにコピーされる。したがって、情報処理端末20のユーザは、退避フォルダを開き、その中に記憶されたファイルを再度印刷データフォルダにドラッグ&ドロップすることにより、容易にリプリントを行うことができる。この退避フォルダされたファイルは一定時間経過後に、プリントプログラム65或いはモニタプログラム66によって削除されてもよい。 Further, in the above embodiment, the file printed by copying to the print data folder is copied to the save folder. Therefore, the user of the information processing terminal 20 can easily perform reprinting by opening the saved folder and dragging and dropping the file stored in the saved folder into the print data folder again. The saved file may be deleted by the print program 65 or the monitor program 66 after a certain period of time has elapsed.
また、上記の実施形態では、PJLをサポートしていないプリンタ10Bが接続された場合には、USBプリンタクラスにより規定されたプリンタステータスを用いるようにしている。これは、プリンタクラスのUSBデバイスならば必ず装備されている機能だからである。このため、本実施形態のプリントサーバ50は、汎用的に使用できるとともに、PJLをサポートしたプリンタ10Aが接続された場合にはより細かいステータス情報を提供できる。 Further, in the above embodiment, when the printer 10B that does not support PJL is connected, the printer status defined by the USB printer class is used. This is because it is a function that is always provided in printer-class USB devices. Therefore, the print server 50 of the present embodiment can be used for general purposes and can provide more detailed status information when the printer 10A supporting PJL is connected.
また、プリントサーバ50は、情報処理端末20が共有フォルダに書き込み得るあらゆる形式のファイルを、プリントデータに変換できるとは限らない。そこで上記の実施形態のように、共有フォルダに書き込まれたファイルの形式が印刷可能形式か否かを事前に判断することによって、プリント指示処理におけるプリンタ10の誤動作を抑制することができる。 Further, the print server 50 cannot always convert a file in any format that the information processing terminal 20 can write to the shared folder into print data. Therefore, as in the above embodiment, by determining in advance whether or not the format of the file written in the shared folder is a printable format, it is possible to suppress a malfunction of the printer 10 in the print instruction processing.
また、上記の実施形態によれば、プリントサーバ50に接続された複数のプリンタ10A、10Bのうち、ファイルが書き込まれた共有フォルダに対応するプリンタ10Aにプリント動作を実行させることができる。すなわち、情報処理端末20のユーザにとっては、プリントサーバ50が公開した複数の共有フォルダのうち、所望のプリンタ10Aに対応付けられた共有フォルダにファイルを書き込めばよいので、プリンタ10Aを簡単に利用することができる。 Further, according to the above embodiment, among the plurality of printers 10A and 10B connected to the print server 50, the printer 10A corresponding to the shared folder in which the file is written can be made to execute the print operation. That is, the user of the information processing terminal 20 can easily use the printer 10A because the file can be written to the shared folder associated with the desired printer 10A among the plurality of shared folders published by the print server 50. be able to.
なお、プリントサーバ50は、1台のプリンタ10に対応付けられた複数の印刷データフォルダを通信ネットワーク101に公開してもよい。また、複数の印刷データフォルダそれぞれには、異なる実行パラメータが対応付けられていてもよい。すなわち、1つのデバイスレコードは、複数の実行パラメータを含んでいてもよい。そして、プリントプログラム65は、ファイルの取得元の印刷データフォルダに対応付けられた実行パラメータに従って、プリンタ10にプリント動作を実行させてもよい。 The print server 50 may publish a plurality of print data folders associated with one printer 10 to the communication network 101. Further, different execution parameters may be associated with each of the plurality of print data folders. That is, one device record may include a plurality of execution parameters. Then, the print program 65 may cause the printer 10 to execute the print operation according to the execution parameters associated with the print data folder from which the file is acquired.
上記の変形例によれば、情報処理端末20のユーザは、プリントサーバ50が公開した複数の印刷データフォルダのうち、所望の実行パラメータに対応付けられた印刷データフォルダにファイルを書き込むだけで、所望の実行パラメータに従ったプリント動作をプリンタ10に簡単に実行させることができる。 According to the above modification, the user of the information processing terminal 20 simply writes a file to the print data folder associated with the desired execution parameter among the plurality of print data folders published by the print server 50, and the desired execution is performed. The printer 10 can easily execute the printing operation according to the parameters.
また、上記の実施形態によれば、プリンタ10と通信するためのプロトコルをサポートしていない情報処理端末20に、HTTPを用いてステータスHTMLが送信される。すなわち、専用のステータスモニタを情報処理端末20にインストールすることなく、情報処理端末20にプリンタ10の状態を通知することが可能となる。また、図6に示されるモニタ処理によれば、PJLをサポートするプリンタ10Aのみならず、PJLをサポートしていないプリンタ10Bのステータスも取得することができる。さらに、上記の実施形態によれば、情報処理端末20から指示されたプリント動作の状況を、データステータスとしてさらに通知することができる。 Further, according to the above embodiment, the status HTML is transmitted using HTTP to the information processing terminal 20 that does not support the protocol for communicating with the printer 10. That is, it is possible to notify the information processing terminal 20 of the status of the printer 10 without installing a dedicated status monitor on the information processing terminal 20. Further, according to the monitor process shown in FIG. 6, not only the status of the printer 10A that supports PJL but also the status of the printer 10B that does not support PJL can be acquired. Further, according to the above embodiment, the status of the print operation instructed by the information processing terminal 20 can be further notified as the data status.
なお、ステータスHTMLには、例えば、<meta>タグの“http−equiv”属性に“refresh”が設定されていていることが望ましい。これにより、ブラウザプログラムは、<meta>タグの“content”属性に設定された時間が経過したことに応じて、当該ステータスHTMLをプリントサーバ50から自動的に再取得する。これにより、上記構成のように、ステータスHTMLの更新タイミング(S68、S75等)と、ステータスHTMLの送信タイミング(S87)とが非同期の場合でも、プリンタステータスの変化を情報処理端末20のユーザに適切に通知することができる。 For the status HTML, for example, it is desirable that "refresh" is set in the "http-equiv" attribute of the <meta> tag. As a result, the browser program automatically reacquires the status HTML from the print server 50 when the time set in the "content" attribute of the <meta> tag has elapsed. As a result, even when the update timing of the status HTML (S68, S75, etc.) and the transmission timing of the status HTML (S87) are asynchronous as in the above configuration, the change in the printer status is appropriate for the user of the information processing terminal 20. Can be notified to.
また、上記の実施形態では、データステータスをステータスHTMLに書き込み、個別ステータス要求情報を受信したタイミングで当該ステータスHTMLが送信される。しかしながら、情報処理端末20へのデータステータスの送信タイミングは、前述の例に限定されない。他の例として、モニタプログラム66は、プリントプログラム65がデータステータスを書き換えたタイミング(S46、S51、S52)で、書き換えられたデータステータスを示す文字列を、LAN−I/F55を通じて情報処理端末20に送信してもよい。この場合において、S46の処理は第1通知処理の一例であり、S52の処理は第2通知処理の一例である。これにより、データステータスの変化を情報処理端末20のユーザにリアルタイムに認識させることができる。 Further, in the above embodiment, the data status is written in the status HTML, and the status HTML is transmitted at the timing when the individual status request information is received. However, the timing of transmitting the data status to the information processing terminal 20 is not limited to the above example. As another example, the monitor program 66 sends a character string indicating the rewritten data status at the timing (S46, S51, S52) when the print program 65 rewrites the data status to the information processing terminal 20 through the LAN-I / F55. May be sent to. In this case, the process of S46 is an example of the first notification process, and the process of S52 is an example of the second notification process. As a result, the user of the information processing terminal 20 can recognize the change in the data status in real time.
また、上記の実施形態によれば、プリンタ10A、10B毎に発行されたURLに対応付けて、当該プリンタ10A、10Bの状態を示すステータスHTMLがメモリ62に記憶される。また、URLを指定した個別ステータス要求情報の応答として、当該URLに対応付けられたステータスHTMLが情報処理端末20に送信される。これにより、プリントサーバ50に接続された複数のプリンタ10A、10Bのうち、情報処理端末20のユーザが所望するプリンタ10Aの状態を選択的に通知することができる。 Further, according to the above embodiment, the status HTML indicating the status of the printers 10A and 10B is stored in the memory 62 in association with the URL issued for each of the printers 10A and 10B. Further, as a response of the individual status request information for which the URL is specified, the status HTML associated with the URL is transmitted to the information processing terminal 20. Thereby, among the plurality of printers 10A and 10B connected to the print server 50, the state of the printer 10A desired by the user of the information processing terminal 20 can be selectively notified.
また、上記の実施形態によれば、プリントサーバ50に対してプリンタ10が接続及び切断を繰り返したとしても、当該プリンタ10のステータスHTMLの所在を示すURLが変更されない。これにより、例えば情報処理端末20が頻繁に利用するプリンタ10AのURL−Aをブックマークしておけば、一覧ページを経由しなくてもプリンタ10Aのステータスページにアクセスすることが可能になる。 Further, according to the above embodiment, even if the printer 10 repeatedly connects and disconnects from the print server 50, the URL indicating the location of the status HTML of the printer 10 is not changed. As a result, for example, if the URL-A of the printer 10A frequently used by the information processing terminal 20 is bookmarked, the status page of the printer 10A can be accessed without going through the list page.
また、プリントサーバ50は、プリンタ10の近くに設置されるのが一般的である。一方、情報処理端末20は、プリンタ10の近くに設置されるとは限らない。そこで、プリントサーバ50に接続されたスピーカ57を通じてプリンタ10の特定ステータスを報知することによって、特定ステータスに応じた処理をプリンタ10の近くにいるユーザが実行することが期待できる。 Further, the print server 50 is generally installed near the printer 10. On the other hand, the information processing terminal 20 is not always installed near the printer 10. Therefore, by notifying the specific status of the printer 10 through the speaker 57 connected to the print server 50, it can be expected that a user near the printer 10 executes a process according to the specific status.
なお、上記の実施形態では、プリンタ10及びプリントサーバ50がUSBケーブル102で接続されている例を説明したが、プリントサーバ50はプリンタ10に内蔵されていてもよい。より詳細には、プリントプログラム65及びモニタプログラム66は、プリンタ10に搭載されたCPUによって実行されてもよい。すなわち、プリント動作を実現する構成要素(例えば、搬送ローラ、記録ヘッド等)と、プリントサーバ50の機能を実現する構成要素(例えば、CPU、メモリ等)とは、プリンタ10の内部バスによって接続されていてもよい。 In the above embodiment, the example in which the printer 10 and the print server 50 are connected by the USB cable 102 has been described, but the print server 50 may be built in the printer 10. More specifically, the print program 65 and the monitor program 66 may be executed by the CPU mounted on the printer 10. That is, the component that realizes the print operation (for example, the transfer roller, the recording head, etc.) and the component that realizes the function of the print server 50 (for example, the CPU, the memory, etc.) are connected by the internal bus of the printer 10. You may be.
また、上記の実施形態のプリントサーバ50において、メモリ62に記憶された各種プログラムがCPU61によって実行されることによって、本発明のコントローラが実行する各処理が実現される例を説明した。しかしながら、コントローラの構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。 Further, in the print server 50 of the above embodiment, an example has been described in which various processes stored in the memory 62 are executed by the CPU 61 to realize each process executed by the controller of the present invention. However, the configuration of the controller is not limited to this, and a part or all of the controller configuration may be realized by hardware such as an integrated circuit.
さらに、本発明は、プリントサーバ50として実現できるだけでなく、プリントサーバ50に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワーク101を通じてプリントサーバ50に接続可能なサーバに搭載されたメモリを含んでもよい。そして、サーバのメモリに記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワークを通じて配信されてもよい。 Further, the present invention can be realized not only as a print server 50 but also as a program for causing the print server 50 to execute a process. Then, the program may be recorded and provided on a non-transitory recording medium. The non-transitory recording medium may include a memory mounted on a server that can be connected to the print server 50 through the communication network 101, in addition to a CD-ROM, a DVD-ROM, and the like. Then, the program stored in the memory of the server may be distributed through a communication network such as the Internet as information or a signal indicating the program.
10・・・プリンタ
20・・・情報処理端末
50・・・プリントサーバ
55・・・LAN−I/F
56・・・USB−I/F
61・・・CPU
62・・・メモリ
65・・・プリントプログラム
66・・・モニタプログラム
10 ... Printer 20 ... Information processing terminal 50 ... Print server 55 ... LAN-I / F
56 ... USB-I / F
61 ... CPU
62 ... Memory 65 ... Print program 66 ... Monitor program
Claims (6)
前記コントローラは、
ファイル共有プロトコルによって、前記メモリの記憶領域の一部である共有領域を、前記通信インタフェースを通じて該プリントサーバに接続された外部装置がアクセス可能に公開する公開処理と、
前記外部装置が前記通信インタフェースを通じて前記共有領域に書き込んだファイルを取得する第1取得処理と、
前記第1取得処理で取得したファイルで示される画像をシートに記録するプリント動作を、前記通信インタフェースを通じて接続されたプリンタに実行させるプリント指示処理と、
前記通信インタフェースを通じて通信可能なプリンタを検出したことに応じて、当該プリンタが解読可能なプリンタ言語を示すプリンタ情報を、前記通信インタフェースを通じて当該プリンタから取得する第2取得処理と、
前記第2取得処理で取得したプリンタ情報に基づいて前記プリンタが直接印刷可能なファイル形式の有無を判断し、当該プリンタが上記プリントサーバにより変換可能な形式のファイルを印刷可能か否かを判断する第1判断処理と、を実行し、
前記プリンタが直接印刷可能なファイル形式が有るか、当該プリンタが上記プリントサーバにより変換可能な形式のファイルを印刷可能であると、前記第1判断処理で判断したことに応じて前記公開処理を実行し、
前記第2取得処理において、前記プリント動作の対象となり得るファイル形式をさらに示す前記プリンタ情報を取得し、
前記第1取得処理で取得したファイルの形式が前記プリンタ情報で示される前記ファイル形式と一致するか否かを判断する第2判断処理と、
前記第2判断処理で一致すると判断したことに応じて、前記プリント指示処理とを実行し、
前記第2判断処理で一致しないと判断したことに応じて、前記第1取得処理で取得したファイルを、前記プリンタ情報で示される前記プリンタ言語で記述されたプリントデータに変換する変換処理と、
前記変換処理で変換した前記プリントデータで示される画像をシートに記録する前記プリント動作を前記プリンタに実行させる前記プリント指示処理と、
前記第1取得処理で取得したファイルの形式が前記プリントデータに変換可能か否かを判断する第3判断処理と、
前記第3判断処理で変換可能だと判断したことに応じて、前記第2判断処理とを実行し、
前記第3判断処理で変換不能だと判断したことに応じて、前記第1取得処理で取得したファイルを、前記共有領域と異なる前記メモリの記憶領域の一部である退避領域に退避する退避処理を実行するプリントサーバ。 A print server equipped with a memory, a communication interface, and a controller.
The controller
A public process in which a shared area, which is a part of the storage area of the memory, is made publicly accessible by an external device connected to the print server through the communication interface by a file sharing protocol.
The first acquisition process of acquiring the file written in the shared area by the external device through the communication interface,
A print instruction process for causing a printer connected through the communication interface to execute a print operation for recording an image indicated by a file acquired in the first acquisition process on a sheet .
A second acquisition process of acquiring printer information indicating a printer language that can be decoded by the printer from the printer through the communication interface in response to detecting a printer that can communicate through the communication interface.
Based on the printer information acquired in the second acquisition process, it is determined whether or not the printer has a file format that can be directly printed, and whether or not the printer can print a file in a format that can be converted by the print server. Execute the first judgment process and
The publishing process is executed according to the determination in the first determination process that the printer has a file format that can be directly printed or that the printer can print a file in a format that can be converted by the print server. And
In the second acquisition process, the printer information further indicating the file format that can be the target of the print operation is acquired.
A second determination process for determining whether or not the file format acquired in the first acquisition process matches the file format indicated in the printer information, and
In response to the determination that the second determination process matches, the print instruction process is executed.
A conversion process for converting the file acquired in the first acquisition process into print data described in the printer language indicated by the printer information in response to the determination that the files do not match in the second determination process.
The print instruction process of causing the printer to execute the print operation of recording the image indicated by the print data converted in the conversion process on the sheet.
A third determination process for determining whether the file format acquired in the first acquisition process can be converted into the print data, and a third determination process.
In response to the determination that conversion is possible in the third determination process, the second determination process is executed.
A save process for saving a file acquired in the first acquisition process to a save area which is a part of a storage area of the memory different from the shared area in response to the determination that conversion is not possible in the third determination process. Print server to run.
前記第3判断処理で変換可能だと判断したことに応じて、当該ファイルを受け付けたことを示すデータステータスを、当該ファイルの送信元の前記外部装置に通知する第1通知処理と、
前記第3判断処理で変換不能だと判断したことに応じて、当該ファイルを受け付けなかったことを示すデータステータスを、当該ファイルの送信元の前記外部装置に通知する第2通知処理とを実行する請求項1に記載のプリントサーバ。 The controller
The first notification process for notifying the external device of the source of the file of the data status indicating that the file has been accepted in response to the determination that the file can be converted in the third determination process.
In response to the determination that conversion is not possible in the third determination process, the second notification process for notifying the external device of the source of the file of the data status indicating that the file has not been accepted is executed. The print server according to claim 1 .
前記公開処理において、各々に複数の前記プリンタのうちの1つが対応付けられた複数の前記共有領域を公開し、
前記プリント指示処理において、前記第1取得処理におけるファイルの取得元の前記共有領域に対応付けられた前記プリンタに、前記プリント動作を実行させる請求項1または2に記載のプリントサーバ。 The controller
In the publishing process, a plurality of the shared areas to which one of the plurality of printers is associated with each are published.
The print server according to claim 1 or 2 , wherein in the print instruction process, the printer associated with the shared area of the file acquisition source in the first acquisition process executes the print operation.
前記公開処理において、各々に前記プリント動作の実行条件が対応付けられた複数の前記共有領域を公開し、
前記プリント指示処理において、前記第1取得処理におけるファイルの取得元の前記共有領域に対応付けられた前記実行条件に従って、前記プリンタに前記プリント動作を実行させる請求項1から3のいずれかに記載のプリントサーバ。 The controller
In the publishing process, a plurality of the shared areas to which the execution conditions of the printing operation are associated with each are published.
The method according to any one of claims 1 to 3 , wherein in the print instruction process, the printer is made to execute the print operation according to the execution condition associated with the shared area of the file acquisition source in the first acquisition process. Print server.
Ethernet(登録商標)或いはWi−Fi(登録商標)に準拠した方式で前記外部装置と通信する第1インタフェースと、
一端に前記プリンタが接続されたUSBケーブルの他端を着脱可能な第2インタフェースとを備える請求項1から4のいずれかに記載のプリントサーバ。 The communication interface is
A first interface that communicates with the external device in a manner compliant with Ethernet (registered trademark) or Wi-Fi (registered trademark).
The print server according to any one of claims 1 to 4, further comprising a second interface to which the other end of the USB cable to which the printer is connected can be attached and detached.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016250970A JP6828424B2 (en) | 2016-12-26 | 2016-12-26 | Print server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016250970A JP6828424B2 (en) | 2016-12-26 | 2016-12-26 | Print server |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018106362A JP2018106362A (en) | 2018-07-05 |
JP6828424B2 true JP6828424B2 (en) | 2021-02-10 |
Family
ID=62787882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016250970A Active JP6828424B2 (en) | 2016-12-26 | 2016-12-26 | Print server |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6828424B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7322443B2 (en) * | 2019-03-20 | 2023-08-08 | ブラザー工業株式会社 | communication device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006164071A (en) * | 2004-12-09 | 2006-06-22 | Canon Inc | Information processor, its control method, computer program, and computer readable memory medium |
JP4270152B2 (en) * | 2005-04-05 | 2009-05-27 | ブラザー工業株式会社 | Print control program, print control apparatus, and print control method |
JP2007235748A (en) * | 2006-03-02 | 2007-09-13 | Murata Mach Ltd | Image-forming device |
JP2008152545A (en) * | 2006-12-18 | 2008-07-03 | Seiko Epson Corp | Print processing system and print method |
JP2013222350A (en) * | 2012-04-17 | 2013-10-28 | Canon Inc | Information processing apparatus, information processing method, and program |
JP2014002688A (en) * | 2012-06-21 | 2014-01-09 | Canon Inc | Information processing apparatus, job processing method of information processing apparatus, and program |
JP2015200996A (en) * | 2014-04-07 | 2015-11-12 | セイコーエプソン株式会社 | Data processing device, data processing system, and data processing method |
JP6489880B2 (en) * | 2015-03-09 | 2019-03-27 | キヤノン株式会社 | Image forming apparatus, image forming apparatus control method, and program |
-
2016
- 2016-12-26 JP JP2016250970A patent/JP6828424B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018106362A (en) | 2018-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8582162B2 (en) | Information processing apparatus, output method, and storage medium | |
JP5180676B2 (en) | Image forming apparatus, control method thereof, and program thereof | |
JP5995525B2 (en) | System, image forming apparatus, server, and control method thereof | |
WO2016034054A1 (en) | Print device monitoring method and system, and print monitoring server | |
JP5436195B2 (en) | Image processing apparatus, control method, and program | |
JP2008123298A (en) | Information processing method and system | |
JP2007328558A (en) | Data processor, data processing system, control method of data processor, method for adding data conversion function, program and recording medium | |
JP6225586B2 (en) | Output system, terminal device, program, and output method | |
JP2017173892A (en) | Information processing device, program, and printing system | |
US10154167B2 (en) | Image data management system, image data management method, and storage medium | |
JP2017228823A (en) | Image processing apparatus and system | |
JP5838795B2 (en) | Print data generation program, terminal device, and control method of terminal device | |
JP2016083870A (en) | Image formation device, and control method and system therefor | |
US8665478B2 (en) | Printing system, control method of the same, print server, control method of the print server, and storage medium | |
JP2000118085A (en) | Image forming apparatus and method, and recording medium | |
JP6190207B2 (en) | System, information processing method, processing apparatus, processing method, and program | |
JP2015014954A (en) | Data processing device, synchronization system, and data processing program | |
JP6828424B2 (en) | Print server | |
JP5990893B2 (en) | Extended function processing device, extended function processing system, and extended function processing program | |
JP2018205995A (en) | Program and portable terminal | |
US20130215451A1 (en) | Method and apparatus for automatically detecting page description languages supported by image production devices | |
JP6841031B2 (en) | Print server | |
JP5900013B2 (en) | Information processing apparatus, file processing method, and program | |
US9509871B2 (en) | Information processing apparatus, information processing system, information processing method, and non-transitory computer readable medium | |
JP6834716B2 (en) | Print management program, print management method, print management device and print management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180219 |
|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20180219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201020 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201209 |
|
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: 20201222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210104 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6828424 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |