JP6962116B2 - Computer programs and communication equipment for communication equipment - Google Patents
Computer programs and communication equipment for communication equipment Download PDFInfo
- Publication number
- JP6962116B2 JP6962116B2 JP2017189928A JP2017189928A JP6962116B2 JP 6962116 B2 JP6962116 B2 JP 6962116B2 JP 2017189928 A JP2017189928 A JP 2017189928A JP 2017189928 A JP2017189928 A JP 2017189928A JP 6962116 B2 JP6962116 B2 JP 6962116B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- printer
- request
- command
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
本明細書では、プリンタから情報を受信して外部装置に送信する通信装置に関する技術を開示する。 This specification discloses a technique relating to a communication device that receives information from a printer and transmits it to an external device.
特許文献1には、SNMP(Simple Network Management Protocolの略)マネージャ機能を有するデータ処理装置(以下では「マネージャ装置」と呼ぶ)と、SNMPエージェント機能を有するデータ処理装置(以下では「エージェント装置」と呼ぶ)と、エージェント装置に接続されているローカルプリンタと、を備える管理システムが開示されている。ローカルプリンタは、エージェント装置と通信可能であるが、マネージャ装置と通信不可能である。エージェント装置は、ローカルプリンタの状態が変化する場合に、ローカルプリンタから変化後の状態を示す情報を取得し、当該情報をマネージャ装置に送信する。これにより、マネージャ装置は、マネージャ装置と通信不可能であるローカルプリンタの状態を示す情報を管理することができる。
上記の管理システムでは、エージェント装置が印刷データをローカルプリンタに送信する通信を実行している間に、エージェント装置がローカルプリンタから当該ローカルプリンタの情報を受信する通信が実行されると、印刷データの通信が妨げられる可能性がある。 In the above management system, when the agent device executes the communication of transmitting the print data to the local printer while the agent device receives the information of the local printer from the local printer, the print data is transmitted. Communication may be interrupted.
本明細書では、通信装置からプリンタに送信される印刷実行コマンドの通信が妨げられるのを抑制する技術を開示する。 The present specification discloses a technique for suppressing interference in communication of a print execution command transmitted from a communication device to a printer.
本明細書は、第1の通信インターフェースと第2通信のインターフェースと所定のメモリ領域とを備える通信装置のためのコンピュータプログラムを開示する。所定のメモリ領域は、前記第1の通信インターフェースを介して前記通信装置に接続されるプリンタに印刷を実行させるための印刷指示が、前記通信装置によって取得される場合に、印刷スクリプトによって記述された印刷実行コマンドを記憶可能なメモリ領域であって、前記印刷スクリプトで記述された各コマンドを取得する場合に、前記各コマンドを取得した順に、前記第1の通信インターフェースを介して、前記各コマンドを前記プリンタに順次送信するために用いられるメモリ領域である。コンピュータプログラムは、通信装置のコンピュータを、外部装置から、前記第2の通信インターフェースを介して、前記プリンタの情報を要求するための第1の情報要求を受信する第1の要求受信部であって、前記第1の情報要求は、前記プリンタの前記情報を識別する情報識別子を含む、前記第1の要求受信部と、前記外部装置から前記第1の情報要求が受信される場合に、前記印刷スクリプトで記述されたスクリプトコードを特定する特定部であって、前記スクリプトコードは、前記第1の情報要求に含まれる前記情報識別子に対応する、前記特定部と、特定済みの前記スクリプトコードを含む要求コマンドを、前記印刷実行コマンドを記憶可能である前記所定のメモリ領域に供給する供給部であって、前記要求コマンドは、特定済みの前記スクリプトコードに対応する前記情報識別子によって識別される前記プリンタの前記情報の送信を前記プリンタに要求するためのコマンドである、前記供給部と、前記所定のメモリ領域から前記第1の通信インターフェースを介して前記要求コマンドが前記プリンタに送信されることに応じて、前記プリンタから、前記第1の通信インターフェースを介して、前記プリンタの前記情報を受信する情報受信部と、前記プリンタから前記プリンタの前記情報が受信された後に、前記第2の通信インターフェースを介して、前記プリンタの前記情報を前記外部装置に送信する送信部と、として機能させてもよい。 The present specification discloses a computer program for a communication device including a first communication interface, a second communication interface, and a predetermined memory area. The predetermined memory area is described by a print script when a print instruction for causing a printer connected to the communication device to execute printing via the first communication interface is acquired by the communication device. It is a memory area that can store a print execution command, and when each command described by the print script is acquired, each command is transmitted via the first communication interface in the order in which each command is acquired. This is a memory area used for sequentially transmitting to the printer. The computer program is a first request receiving unit that receives a computer of a communication device from an external device via the second communication interface to receive a first information request for requesting information on the printer. The first information request includes the information identifier that identifies the information of the printer, and the printing is performed when the first information request is received from the first request receiving unit and the external device. A specific part that specifies the script code described in the script, and the script code includes the specific part corresponding to the information identifier included in the first information request and the specified script code. A supply unit that supplies a request command to the predetermined memory area that can store the print execution command, and the request command is the printer identified by the information identifier corresponding to the identified script code. In response to the request command being transmitted from the supply unit and the predetermined memory area to the printer via the first communication interface, which is a command for requesting the printer to transmit the information. Then, the information receiving unit that receives the information of the printer from the printer via the first communication interface, and the second communication interface after receiving the information of the printer from the printer. It may function as a transmission unit that transmits the information of the printer to the external device via the printer.
上記の構成によると、通信装置は、外部装置から第1の情報要求を受信する場合に、印刷スクリプトで記述されたスクリプトコードを特定し、特定済みのスクリプトコードを含む要求コマンドを、印刷実行コマンドを記憶可能である所定のメモリ領域に供給する。このために、例えば、所定のメモリ領域から印刷実行コマンドがプリンタに送信されている間に、要求コマンドが所定のメモリ領域に供給される場合に、印刷実行コマンドがプリンタに送信された後に、要求コマンドがプリンタに送信される。このために、通信装置からプリンタに送信される印刷実行コマンドの通信が妨げられるのを抑制することができる。 According to the above configuration, when the communication device receives the first information request from the external device, the communication device identifies the script code described in the print script, and issues a request command including the identified script code to the print execution command. Is supplied to a predetermined memory area that can be stored. For this purpose, for example, when the request command is supplied to the predetermined memory area while the print execution command is transmitted from the predetermined memory area to the printer, the request is made after the print execution command is transmitted to the printer. The command is sent to the printer. Therefore, it is possible to suppress the communication of the print execution command transmitted from the communication device to the printer from being hindered.
上記の通信装置そのもの、及び、通信装置によって実行される方法も、新規で有用である。また、上記の通信装置と、他の装置(例えば外部装置、プリンタ)と、を備える通信システムも、新規で有用である。 The above-mentioned communication device itself and the method executed by the communication device are also new and useful. In addition, a communication system including the above-mentioned communication device and another device (for example, an external device or a printer) is also new and useful.
(通信システム2の構成;図1)
図1に示されるように、通信システム2は、複数個のPC(Personal Computerの略)10,80と、複数個のプリンタ50,70と、管理装置60と、を備える。各PC10,80と管理装置60とプリンタ70とはLAN4に接続されている。従って、各デバイス10,60,70,80は、LAN4を介して、相互に通信可能である。プリンタ50は、LAN4に接続されておらず、LAN4を介して、各デバイス10,60,70,80と通信することができない。プリンタ50は、USB(Universal Serial Busの略)ケーブルを介して、PC10に接続されている。従って、PC10とプリンタ50とは、USBケーブルを介して、相互に通信可能である。
(Configuration of
As shown in FIG. 1, the
プリンタ50は、ベンダV1によって提供されるプリンタであり、モデル名「L8900CDW」とシリアル番号「XXX12345678」とを有する。プリンタ50は、USBI/F(図示省略)を備えるが、LAN4に接続するためのネットワークI/Fを備えない。このために、プリンタ50の構成を簡易化することができる。一方、プリンタ70は、ベンダV1とは異なるベンダV2によって提供されるプリンタであり、LAN4に接続するためのネットワークI/F(図示省略)を備える。
The
管理装置60は、PC、サーバ等のデバイスであり、各プリンタ50,70の情報(例えば、プリンタの現在の動作状態を示す情報)を管理する。具体的には、管理装置60は、LAN4を介して、SNMP(Simple Network Management Protocolの略)に従った通信をプリンタ70と実行して、プリンタ70から情報を受信して記憶する。即ち、管理装置60がSNMPマネージャとして機能し、プリンタ70がSNMPエージェントとして機能する。しかしながら、管理装置60は、LAN4を介してプリンタ50と通信不可能であるので、プリンタ50から情報を受信することができない。そこで、本実施例では、PC10がプリンタ50から情報を受信して記憶しておき、管理装置60は、LAN4を介して、SNMPに従った通信をPC10と実行して、PC10からプリンタ50の情報を受信する。
The
例えば、管理装置60が、SNMPに従った通信ではなく、ベンダV1によって開発された独自プロトコルに従った通信をPC10と実行して、PC10からプリンタ50の情報を受信するという比較例の構成を想定する。この場合、ベンダV2によって提供されるプリンタ70は、ベンダV1の独自プロトコルに従った通信を実行することができない。従って、管理装置60は、独自プロトコルに従った通信をプリンタ70と実行することができず、この結果、プリンタ70から情報を受信することができない。これに対し、本実施例では、管理装置60は、多くのプリンタが利用可能であるSNMPを利用するので、プリンタ70から情報を適切に受信して管理することができる。
For example, it is assumed that the
(PC10の構成)
PC10は、据置型のPCである。PC10は、操作部12と、表示部14と、USBインターフェース16と、ネットワークインターフェース18と、制御部30と、を備える。各部12〜30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。なお、変形例では、PC10は、携帯電話(例えばスマートフォン)、PDA、ノートPC、タブレットPC等の可搬型の端末装置であってもよい。
(Configuration of PC10)
The PC 10 is a stationary PC. The PC 10 includes an
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をPC10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。USBI/F16には、USBケーブルの一端が接続されている。USBケーブルの他端は、プリンタ50に接続されている。ネットワークI/F18は、IP(Internet Protocolの略)に従った通信を実行するためのI/Fであり、LAN4に接続されている。LAN4は、有線LANでもよいし、無線LANでもよい。
The
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されているプログラム36,38に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。OSプログラム36は、PC10の基本的な動作を実現するためのプログラムであり、印刷スプーラ37を含む。印刷スプーラ37は、USBI/F16を介して、プリンタ50に印刷を実行させるための印刷指示が、CPU32によって取得される場合に、プリンタ50が解釈可能な印刷スクリプトであるPJL(Printer Job Languageの略)によって記述された印刷実行コマンドを記憶可能である。また、印刷スプーラ37は、PJLによって記述されたPJLコマンドを含む印刷ジョブを記憶可能である。PJLコマンドの例としては、例えば、印刷の実行をプリンタ50に要求するコマンド、プリンタ50の情報の送信をプリンタ50に要求するコマンド等を挙げることができる。印刷スプーラ37は、CPU32から印刷ジョブに含まれる各PJLコマンドを取得する場合に、各PJLコマンドを取得した順に、USBI/F16を介して、各PJLコマンドをプリンタ50に順次送信する。
The
また、メモリ34は、プリンタアプリケーション38(以下では「アプリ38」と呼ぶ)を格納する。アプリ38は、プリンタ50に送信されるべきPJLコマンドを生成するためのアプリケーションであり、プリンタ50のベンダによって提供される。アプリ38は、例えば、プリンタ50のベンダによって提供されるインターネット上のサーバからPC10にインストールされてもよいし、プリンタ50と共に出荷されるメディアからPC10にインストールされてもよい。
Further, the
アプリ38は、PJL変換リスト40と、OID(Object IDの略)パターンリスト42と、MIB値リスト44と、PJL供給リスト46と、管理装置領域48と、をメモリ34内に実現する。管理装置領域48は、管理装置60のIPアドレスを記憶するための領域である。管理装置領域48は、アプリ38がPC10にインストールされる段階ではIPアドレスを記憶しておらず、管理装置60との通信が実行された後に、管理装置60のIPアドレスを記憶する。
The
(各リスト40,42,44,46の内容;図2)
続いて、図2を参照して、メモリ34内の各リスト40,42,44,46について説明する。PJL変換リスト40及びOIDパターンリスト42内の各情報は、アプリ38がPC10にインストールされる際に、メモリ34に記憶される。一方、MIB値リスト44及びPJL供給リスト46は、アプリ38がPC10にインストールされる際には、空の状態である。そして、アプリ38に従った処理が実行される過程で、各リスト44,46に情報が記憶される。
(Contents of each
Subsequently, with reference to FIG. 2, each
PJL変換リスト40は、プリンタ50の情報の名称(即ちName)と、SNMPに従った情報識別子であるOIDと、PJLによって記述されるPJLコードと、を関連付けて記憶している。ここで、OIDについて説明しておく。各プリンタ50,70は、MIB(Management Information Baseの略)のツリー構造を利用して、モデル名、シリアル番号、ステータス(例えば印刷実行中、待機中)等の複数個の情報を記憶している。本実施例では、プリンタの各情報を識別する識別子のことを「OID」と呼び、OIDによって識別される情報を示す値のことを「MIB値」と呼ぶ。PJLコードは、関連付けられているOIDによって識別されるMIB値の送信をプリンタ50に要求するためのコードである。例えば、OID「X1」に関連付けられているPJLコード「MODELNAME」は、プリンタ50のモデル名を示すMIB値の送信をプリンタ50に要求するためのコードである。また、OID「X4」〜「X8」のそれぞれは、レーザー方式のプリンタに対応するPJLコード(例えばLASER)と、インクジェット方式のプリンタに対応するPJLコード(例えばINK)と、の双方に関連付けられている。
The
OIDパターンリスト42は、複数個のOIDパターンを記憶している。各OIDパターンは、複数個のOIDの組み合わせである。例えば、第1のOIDパターンは、3個のOID「X1」,「X2」,「X4」の組み合わせである。例えば、管理装置60は、プリンタから情報(即ちMIB値)を受信することを望む場合に、まず、第1のOIDパターンに含まれる3個のOID「X1」,「X2」,「X4」を含むGetリクエストをプリンタに送信する。管理装置60は、プリンタから当該3個のOIDに対応する3個のMIB値を受信する場合に、さらに、他のOIDを含むGetリクエストをプリンタに送信する。このように、管理装置60は、Getリクエストをプリンタに送信することを繰り返して、プリンタから様々なMIB値を受信する。プリンタ50のベンダは、管理装置60によって最初に利用される3個のOIDを調査しておき、当該3個のOIDの組み合わせを第1のOIDパターンとしてOIDパターンリスト42に記述する。同様に、ベンダは、他の様々な管理装置のそれぞれについて、当該管理装置によって最初に利用される複数個のOIDの組み合わせを調査しておき、当該組み合わせを他のOIDパターンとしてOIDパターンリスト42に記述する。これにより、アプリ38は、Getリクエストを受信する場合に、当該Getリクエストに含まれる各OIDの組み合わせがOIDパターンリスト42に記憶されているのか否かを判断することによって、当該Getリクエストの送信元の装置が、管理装置(例えば60)であるのか、管理装置以外の装置(例えばPC80)であるのか、を判断することができる。
The
MIB値リスト44は、情報の名称とOIDとPJLコードとMIB値とを関連付けて記憶するためのリストである。上述したように、MIB値リスト44は、初期状態では空の状態であり、プリンタ50からMIB値が受信される際に、MIB値を含む情報を記憶する。その後、管理装置60からGetコマンドが受信されると、MIB値が管理装置60に送信される。
The
図2では図示省略しているが、PJL供給リスト46は、OIDとPJLコマンドとを関連付けて記憶するためのリストである。上述したように、PJL供給リスト46は、初期状態では空の状態であり、管理装置60からGetコマンドが受信される際に、当該Getコマンドに含まれるOIDと、PJL変換リスト40において当該OIDに関連付けられているPJLコードを含むPJLコマンドと、を記憶する。その後、所定のタイミングにおいて、当該PJLコマンドを含む印刷ジョブが印刷スプーラ37に供給される。
Although not shown in FIG. 2, the
(実施例の概要;図3)
続いて、図3を参照して、本実施例の概略を説明する。(1)PC10は、管理装置60から、ネットワークI/F18を介して、SNMPに従ったGetリクエストを受信する。当該Getリクエストは、OID(以下では「対象OID」と呼ぶ)を含む。この時点では、MIB値リスト44が対象OIDによって識別されるMIB値をまだ記憶していないので、PC10は、当該MIB値を管理装置60に送信することができず、MIB値を送信不可能であることを示す文字列「No Such」を含むGetレスポンス(図示省略)を管理装置60に送信する。
(Outline of Example; Fig. 3)
Subsequently, the outline of this embodiment will be described with reference to FIG. (1) The
(2)PC10は、PJL変換リスト40(図2参照)から、対象OIDに関連付けられているPJLコード(以下では「対象PJLコード」と呼ぶ)を特定し、対象PJLコードに記号「@PJL」を付加してPJLコマンド(以下では「対象PJLコマンド」と呼ぶ)を生成し、対象OIDと対象PJLコマンドとを関連付けてPJL供給リスト46に登録する。
(2) The
(3)PC10は、所定タイミングでPJL供給リスト46内の対象PJLコマンドを含む印刷ジョブを印刷スプーラ37に供給する。この場合、(4)印刷スプーラ37は、USBI/F16を介して、対象PJLコマンドをプリンタ50に送信する。この結果、(5)PC10は、プリンタ50から、USBI/F16を介して、MIB値を受信する。そして、PC10は、名前と対象OIDと対象PJLコードと受信済みのMIB値とを関連付けてMIB値リスト44に記憶する。
(3) The
その後、(6)PC10は、管理装置60から、ネットワークI/F18を介して、対象OIDを含むGetリクエストを再度受信する場合に、(7)MIB値リスト44から対象OIDに関連付けられているMIB値を特定し、特定済みのMIB値を含むGetレスポンスを管理装置60に送信する。
After that, when (6) the
上述した各処理が実行されるので、管理装置60は、プリンタ50との通信を実行不可能であるにも関わらず、PC10からプリンタ50の情報を受信して管理することができる。
Since each of the above-described processes is executed, the
(PC10の応答処理;図4)
続いて、図4を参照して、PC10のCPU32がアプリ38に従って実行する応答処理を説明する。応答処理は、外部装置(例えば管理装置60、PC80)から受信されるGetリクエストに対する応答を実行するための処理であり、PC10においてアプリ38が起動されると開始される。
(Response processing of PC10; FIG. 4)
Subsequently, with reference to FIG. 4, the response process executed by the
S5では、CPU32は、外部装置から、ネットワークI/F18を介して、Getリクエストを受信することを監視する。CPU32は、外部装置からGetリクエストを受信する場合(S5でYES)に、S10に進む。Getリクエストは、送信元の外部装置(以下では「対象外部装置」と呼ぶ)のIPアドレスと、1個以上のOIDと、を含む。
In S5, the
S10では、CPU32は、Getリクエスト内のIPアドレスが管理装置領域48に登録されているのか否かを判断する。CPU32は、当該IPアドレスが登録されていると判断する場合(S10でYES)に、S25に進み、当該IPアドレスが登録されていないと判断する場合(S10でNO)に、S15に進む。
In S10, the
S15では、CPU32は、Getリクエスト内の1個以上のOIDの組み合わせがOIDパターンリスト42に記憶されているのか否かを判断する。CPU32は、1個以上のOIDの組み合わせがOIDパターンリスト42に記憶されていると判断する場合(S15でYES)、即ち、対象外部装置が管理装置であると判断する場合に、S20に進む。一方、CPU32は、1個以上のOIDの組み合わせがOIDパターンリスト42に記憶されていないと判断する場合(S15でNO)、即ち、対象外部装置が管理装置以外の装置(例えばPC80)であると判断する場合に、S50に進む。
In S15, the
S50では、CPU32は、「No Such」を含むGetレスポンスを対象外部装置に送信する。このように、CPU32は、管理装置以外の装置からGetリクエストを受信する場合に、当該Getリクエストに応じてプリンタ50からMIB値を受信するための処理を実行しない。このために、PC10の処理負荷が増加するのを抑制できる。S50が終了すると、S5に戻る。
In S50, the
S20では、CPU32は、Getリクエスト内の対象外部装置のIPアドレス(例えば管理装置60のIPアドレス)を管理装置領域48に登録する。S20が終了すると、S25に進む。
In S20, the
S25では、CPU32は、Getリクエスト内の1個以上のOIDの全てがMIB値リスト44に記憶されているのか否かを判断する。CPU32は、1個以上のOIDの全てがMIB値リスト44に記憶されていると判断する場合(S25でYES)に、S30に進み、1個以上のOIDのうちの少なくとも1個のOIDがMIB値リスト44に記憶されていないと判断する場合(S25でNO)に、S40に進む。
In S25, the
S30では、CPU32は、まず、MIB値リスト44から、Getリクエスト内の1個以上のOIDに関連付けられている1個以上のMIB値を特定する。そして、CPU32は、ネットワークI/F18を介して、特定済みの1個以上のMIB値を含むGetレスポンスを対象外部装置に送信する。S30が終了すると、S5に戻る。
In S30, the
S40では、CPU32は、まず、Getリクエスト内の1個以上のOIDのうち、MIB値リスト44に記憶されていないOID(以下では「対象OID」と呼ぶ)を特定する。次いで、CPU32は、PJL変換リスト40から、対象OIDに関連付けられているPJLコード(以下では「対象PJLコード」と呼ぶ)を特定する。CPU32は、例えば、対象OIDが「X1」である場合には、PJL変換リスト40から「X1」に関連付けられている「MODELNAME」を特定する(図2のリスト40参照)。なお、CPU32は、プリンタ50がPC10に接続される際に、プリンタ50から、プリンタ50の印刷機構がレーザー方式であるのかインクジェット方式であるのかを示す方式情報を受信してメモリ34に記憶している。CPU32は、例えば、対象OIDが「X4」である場合には、PJL変換リスト40から、「X4」に関連付けられている「LASER」及び「INK」のうち、メモリ34内の当該方式情報に応じたPJLコードを特定する。
In S40, the
S43では、CPU32は、対象PJLコードに記号「@PJL」を付加することによって、対象PJLコードと記号「@PJL」とを含むPJLコマンド(以下では「対象PJLコマンド」と呼ぶ)を生成する。
In S43, the
S45では、CPU32は、対象OIDと対象PJLコマンドとを関連付けて、PJL供給リスト46に登録する。S45が終了すると、S50に進む。
In S45, the
(PC10の取得処理;図5)
続いて、図5を参照して、PC10のCPU32がアプリ38に従って実行する取得処理を説明する。取得処理は、プリンタ50からMIB値を取得する処理であり、PC10においてアプリ38が起動されると開始される。
(PC10 acquisition process; FIG. 5)
Subsequently, with reference to FIG. 5, the acquisition process executed by the
S100では、CPU32は、ユーザによって予め設定されている所定タイミングが到来することを監視する。所定タイミングは、1日のうちの予め決められている1回又は2回以上の時刻であり、例えば、夜間帯又は早朝帯のようにプリンタ50が利用される頻度が少ないタイミングに設定されることが好ましい。また、S100でYESと判断される周期が、管理装置60がGetリクエストをPC10に送信する周期よりも長くなるように、所定タイミングが設定されることが好ましい。CPU32は、所定タイミングが到来する場合(S100でYES)に、S105に進む。
In S100, the
S105では、CPU32は、1個以上のPJLコマンドがPJL供給リスト46に登録されているのか否かを判断する。CPU32は、1個以上のPJLコマンドが登録されている場合(S105でYES)、即ち、図4のS45が実行済みである場合に、S110に進む。一方、CPU32は、1個のPJLコマンドも登録されていない場合(S105でNO)、即ち、図4のS45が実行済みでない場合に、S110以降の処理を実行せずにS100に戻る。
In S105, the
S110では、CPU32は、PJL供給リスト46内の1個以上のPJLコマンドを含む1個の印刷ジョブを印刷スプーラ37に供給して、1個以上のPJLコマンドを含む1個の印刷ジョブを印刷スプーラ37に記憶させる。これにより、印刷スプーラ37は、USBI/F16を介して、1個以上のPJLコマンドをプリンタ50に送信する。印刷スプーラ37は、CPU32から供給された印刷ジョブからPJLコマンドを順次取得し、各PJLコマンドを取得した順に、各PJLコマンドをプリンタ50に順次送信する。
In S110, the
S115では、CPU32は、プリンタ50から、USBI/F16を介して、MIB値を受信することを監視する。CPU32は、S110で供給された1個以上のPJLコマンドに対応する1個以上のMIB値の全てを受信する場合に、S115でYESと判断して、S120に進む。特に、CPU32は、S110で複数個のPJLコマンドが供給される場合には、各PJLコマンドを供給した順に、各PJLコマンドに対応する各MIB値を順次受信する。
In S115, the
S120では、CPU32は、まず、PJL供給リスト46内の各OIDと各PJLコマンドとを特定し、次いで、PJL変換リスト40から、特定済みの各OIDに関連付けられている各名称を特定する。そして、CPU32は、特定済みの各名称と特定済みの各OIDと特定済みの各PJLコマンドと受信済みの各MIB値とを関連付けて、MIB値リスト44に記憶する。ここで、各情報(即ち、名称、OID、及び、PJLコマンド)がMIB値リスト44に既に記憶されている場合には、CPU32は、当該各情報をMIB値リスト44に新たに記憶することなく、当該各情報に関連付けられているMIB値を受信済みのMIB値に更新する。このように、OID、MIB値等がMIB値リスト44に記憶されるので、CPU32は、管理装置60から当該OIDを含むGetリクエストを受信する場合(図4のS5でYES)に、当該MIB値を含むGetレスポンスを管理装置60に送信することができる。S120が終了すると、S100に戻る。
In S120, the
例えば、CPU32が、管理装置60からGetリクエストを受信する毎に、PJLコマンドを含む印刷ジョブを印刷スプーラ37に供給する比較例の構成を想定する。この場合、仮に、管理装置60が高頻度でGetリクエストを送信するものであると、印刷スプーラ37とプリンタ50との間でPJLコマンド及びMIB値の通信が高頻度で行われるので、印刷スプーラ37とプリンタ50との間において、例えば、印刷をプリンタ50に実行させるための印刷実行コマンドの通信が妨げられ得る。これに対し、本実施例では、CPU32は、ユーザによって設定される所定タイミングが到来する毎に、PJLコマンドを含む印刷ジョブを印刷スプーラ37に供給する構成を採用している。このために、プリンタ50との間でPJLコマンド及びMIB値の通信が高頻度で行われるのを抑制することができ、この結果、印刷実行コマンドの通信が妨げられるのを抑制することができる。
For example, assume the configuration of a comparative example in which the
(具体的なケース;図6〜図9)
続いて、図6〜図9を参照して、図4及び図5の処理によって実現される具体的なケースを説明する。なお、以下では、理解の容易化のために、各デバイスのCPU(例えばPC10のCPU32)が実行する動作を、CPUを主体として記載せずに、各デバイス(例えばPC10)を主体として記載する。図6の初期状態では、MIB値リスト44、PJL供給リスト46、及び、管理装置領域48がいずれも空の状態である。
(Specific case; FIGS. 6 to 9)
Subsequently, a specific case realized by the processing of FIGS. 4 and 5 will be described with reference to FIGS. 6 to 9. In the following, for ease of understanding, the operations executed by the CPU of each device (for example, the
T5では、PC10は、管理装置60からGetリクエストを受信する(図4のS5でYES)。当該Getリクエストは、管理装置60のIPアドレス「A」と、3個のOID「X1」,「X2」,「X4」と、を含む。この場合、PC10は、管理装置領域48にIPアドレス「A」が登録されておらず、かつ、Getリクエスト内の3個のOIDの組み合わせがOIDパターンリスト42内の第1のOIDパターン(図2参照)に一致すると判断し(S10でNOかつS15でYES)、T6において、IPアドレス「A」を管理装置領域48に登録する(S20)。
At T5, the
MIB値リスト44が空の状態であるので、PC10は、受信済みの3個のOIDがMIB値リスト44に記憶されていないと判断して(S25でNO)、T7において、PJL変換リスト40から、受信済みの3個のOIDに関連付けられている3個のPJLコード「MODELNAME」,「SERIALNUMBER」,「LASER」を特定する(S40)。次いで、PC10は、3個のPJLコードに記号「@PJL」を付加して、3個のPJLコマンド「@PJL MODELNAME」,「@PJL SERIALNUMBER」,「@PJL LASER」を生成する(S43)。そして、PC10は、T8において、受信済みの3個のOIDと生成済みの3個のPJLコマンドとを関連付けてPJL供給リスト46に登録する(S45)。
Since the
T10では、PC10は、「No Such」を含むGetレスポンスを管理装置60に送信する(S50)。
At T10, the
一方、T20では、PC10は、PC80から、PC80のIPアドレス「B」とOID「X1」とを含むGetリクエストを受信する(S5でYES)。この場合、PC10は、受信済みのIPアドレス「B」が管理装置領域48に登録されておらず、かつ、OID「X1」がOIDパターンリスト42内のいずれのOIDパターンにも一致しないと判断する(S10でNOかつS15でNO)。この場合、T30では、PC10は、「No Such」を含むGetレスポンスをPC80に送信する(S50)。このように、PC10は、管理装置60以外のPC80からGetリクエストを受信する場合に、プリンタ50からMIB値を受信するための処理を実行しない。このために、PC10の処理負荷が増加するのを抑制できる。
On the other hand, in T20, the
(図6の続き;図7)
続いて、図7を参照して、図6の続きの処理を説明する。PC10は、T100において、ユーザからプリンタ50に印刷を実行させるための印刷指示を取得し、T102において、PJLで記述された印刷ジョブJを作成して、印刷実行コマンドを含む印刷ジョブJ1を印刷スプーラ37に供給する。
(Continued from FIG. 6; FIG. 7)
Subsequently, the subsequent processing of FIG. 6 will be described with reference to FIG. 7. At T100, the
また、PC10は、T104において、所定タイミングが到来したと判断する(図5のS100でYES)。この場合、PC10は、T108において、3個のPJLコマンドがPJL供給リスト46に登録されていると判断し(S105でYES)、3個のPJLコマンドを含む1個の印刷ジョブJ2を印刷スプーラ37に供給する(S110)。これにより、印刷スプーラ37では、各印刷ジョブJ1,J2を取得した順に各印刷ジョブJ1,J2が記憶される。
Further, the
次いで、PC10は、印刷スプーラ37が各印刷ジョブJ1,J2からコマンドを取得した順に、USBI/F16を介して、各コマンドをプリンタ50に送信する。即ち、まず、T110では、PC10は、印刷実行コマンドを含む印刷ジョブJ1をプリンタ50に送信する。この結果、T112では、プリンタ50では、印刷ジョブJ1に従った印刷が実行される。次いで、PC10は、T120において、PJLコマンド「@PJL MODELNAME」をプリンタ50に送信し、T122において、プリンタ50から、プリンタ50のモデル名を示すMIB値「L8900CDW」を受信する。次いで、PC10は、T130において、PJLコマンド「@PJL SERIALNUMBER」をプリンタ50に送信し、T132において、プリンタ50から、プリンタ50のシリアル番号を示すMIB値「XXX12345678」を受信する。最後に、PC10は、T140において、PJLコマンド「@PJL LASER」をプリンタ50に送信し、T142において、PC10は、プリンタ50から、プリンタ50に現在装着されているトナーカートリッジの型番を示すMIB値「3」を受信する。
Next, the
T144では、PC10は、プリンタ50から、4個のコマンドに従った処理が終了したことを示す完了通知を受信する。この場合、T150では、PC10は、受信済みの3個のMIB値「L8900CDW」,「XXX12345678」,「3」を含む各情報をMIB値リスト44に記憶する(S120)。
At T144, the
(図7の続き;図8)
続いて、図8を参照して、図7の続きの処理を説明する。T205では、PC10は、管理装置60からGetリクエストを受信する(図4のS5でYES)。当該Getリクエストは、図6のT5と同じ内容を含む。この場合、PC10は、受信済みのIPアドレス「A」が管理装置領域48に登録されており、かつ、受信済みの3個のOID「X1」,「X2」,「X4」の全てがMIB値リスト44に記憶されていると判断する(S10でYESかつS25でYES)。そして、PC10は、T206において、MIB値リスト44において受信済みの3個のOIDに関連付けられている3個のMIB値「L8900CDW」,「XXX12345678」,「3」を含むGetレスポンスを管理装置60に送信する(S30)。
(Continued from FIG. 7; FIG. 8)
Subsequently, the subsequent processing of FIG. 7 will be described with reference to FIG. In T205, the
管理装置60は、PC10から各MIB値を含むGetレスポンスを受信すると、さらなるMIB値をPC10から取得することを試みる。即ち、管理装置60は、T207において、T205内の各OIDとは異なるOID「X3」を含むGetリクエストをPC10に送信する。
Upon receiving the Get response including each MIB value from the
PC10は、T207において、管理装置60からGetリクエストを受信すると(S5)、管理装置領域48に受信済みのIPアドレス「A」が登録されており、かつ、受信済みのOID「X3」がMIB値リスト44に記憶されていないと判断する(S10でYESかつS25でNO)。この場合、PC10は、T208において、PJL変換リスト40からOID「X3」に関連付けられているPJLコード「STATUS」を特定し(S40)、PJLコマンド「@PJL STATUS」を生成し(S43)、PJLコマンド「@PJL STATUS」をPJL供給リスト46に登録する(S45)。これにより、PJL供給リスト46には、4個のPJLコマンドが登録された状態となる。PC10は、T210において、「No Such」を含むGetレスポンスを管理装置60に送信する(S50)。
When the
(図8の続き;図9)
続いて、図9を参照して、図8の続きの処理を説明する。T304、T308、及び、T320〜T342は、図7のT104、T108、T120〜T142と同様である。ただし、T308では、登録済みの4個のPJLコマンドを含む印刷ジョブJ3が印刷スプーラ37に供給される。PC10は、T344において、PJLコマンド「@PJL STATUS」をプリンタ50に送信し、T346において、プリンタ50から、プリンタ50の現在の動作状態を示すMIB値「4000」を受信する。例えば、MIB値「4000」は、プリンタ50の現在の動作状態がアイドル状態であることを示す値である。T348は、図7のT150と同様である。
(Continued from FIG. 8; FIG. 9)
Subsequently, the subsequent processing of FIG. 8 will be described with reference to FIG. T304, T308, and T320 to T342 are the same as T104, T108, and T120 to T142 in FIG. However, in T308, the print job J3 including the four registered PJL commands is supplied to the
T350では、PC10は、MIB値「4000」をさらにMIB値リスト44に記憶する(S120)。この結果、PC10は、T360〜T370において、図8のT205〜207と同様の処理を実行した後に、T372において、MIB値リスト44においてOID「X3」に関連付けられているMIB値「4000」を含むGetレスポンスを管理装置60に送信する。T372の処理が終了すると、図9の処理が終了する。
In T350, the
(本実施例の効果)
本実施例では、PC10は、管理装置60からGetリクエストを受信する場合(図6のT5、図8のT205)に、PJLで記述されたPJLコードを特定し(T7、T208)、特定済みのPJLコードを含むPJLコマンドを、印刷実行コマンドを記憶可能である印刷スプーラ37に供給する(T108、T308)。このために、例えば、印刷スプーラ37から印刷実行コマンドがプリンタ50に送信されている間に、PJLコマンドが印刷スプーラ37に供給される場合(T108)に、印刷実行コマンドがプリンタ50に送信された後に、PJLコマンドがプリンタに送信される(T120〜T142)。このために、PC10からプリンタ50に送信される印刷実行コマンドの通信が妨げられるのを抑制することができる。
(Effect of this example)
In this embodiment, when the
また、PC10は、管理装置60から受信される各OIDに対応する各PJLコマンドのみをPJL供給リスト46に登録し(図6のT8、図8のT208)、管理装置60から受信されない各OIDに対応する各PJLコマンドをPJL供給リスト46に登録しない。このために、PC10は、管理装置60から受信されない各OIDに対応する各PJLコマンドをプリンタ50に送信しないので、PC10と管理装置60との間において、各PJLコマンド及び各MIB値の通信のための通信時間が長くなるのを抑制できる。
Further, the
(対応関係)
PC10、管理装置60、プリンタ50が、それぞれ、「通信装置」、「外部装置」、「プリンタ」の一例である。USBI/F16、ネットワークI/F18が、それぞれ、「第1の通信インターフェース」、「第2の通信インターフェース」の一例である。印刷スプーラ37が、「所定のメモリ領域」の一例であり、PJLコード、PJLコマンドが、それぞれ、「スクリプトコード」、「要求コマンド」の一例である。図5のT5のGetリクエスト、図8のT205のGetリクエストが、それぞれ、「第1の情報要求」、「第2の情報要求」の一例である。OID、MIB値が、それぞれ、「情報識別子」、「プリンタの情報」の一例である。MIB値リスト44、PJL供給リスト46、PJL変換リスト40、OIDパターンリスト42が、それぞれ、「第1のデータベース」、「第2のデータベース」、「第3のデータベース」、「第4のデータベース」の一例である。
(Correspondence)
The
また、図4のS5の処理、S40の処理、図5のS110の処理、S115の処理、S30の処理が、それぞれ、「第1の要求受信部」、「特定部」、「供給部」、「情報受信部」、「送信部」によって実行される処理の一例である。 Further, the processing of S5 in FIG. 4, the processing of S40, the processing of S110 in FIG. 5, the processing of S115, and the processing of S30 are the "first request receiving unit", "specific unit", and "supply unit", respectively. This is an example of processing executed by the "information receiving unit" and the "transmitting unit".
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。 Although specific examples of the present invention have been described in detail above, these are merely examples and do not limit the scope of claims. The techniques described in the claims include various modifications and modifications of the specific examples illustrated above. Modifications of the above embodiment are listed below.
(変形例1)PC10は、管理装置60から、SNMPとは異なるプロトコル(例えばプリンタ50のベンダによって開発された独自プロトコル)に従った情報要求を受信してもよい。この場合、情報要求に含まれる情報識別子は、OIDでなくてもよく、情報を識別するための他の種類の識別子であってもよい。
(Modification 1) The
(変形例2)PC10は、上記の実施例で例示されたプリンタ50の情報(モデル名、シリアル番号、カートリッジの型番、及び、現在の動作状態)のみならず、プリンタ50から他の情報を受信して、当該他の情報を管理装置60に送信してもよい。上記の他の情報としては、例えば、プリンタ50に装着される消耗品の現在の残量を示す情報と、プリンタ50における印刷枚数を示す情報と、プリンタ50の消耗品の交換回数を示す情報と、を挙げることができる。
(Modification 2) The
(変形例3)PJL変換リスト40は、PJLコードに代えて、PJLコードに記号「@PJL」が付加されたPJLコマンドを記憶していてもよい。この場合、図4のS40において、CPU32は、PJL変換リスト40から、対象OIDに関連付けられている対象PJLコマンドを特定し、S43を省略して、S45において、特定済みの対象PJLコマンドをPJL供給リスト46に登録する。本変形例では、「生成部」を省略可能である。また、本実施例では、PJLコードに記号「@PJL」が付加されたPJLコマンドを採用しているが、PJLコマンド規則に基づく他の形式を有するPJLコマンドが採用されてもよい。
(Modification 3) The
(変形例4)印刷スクリプトは、PJLでなくてもよく、他のスクリプトであってもよい。 (Modification 4) The print script does not have to be PJL, and may be another script.
(変形例5)PC10は、管理装置60からGetコマンドを受信する毎に、PJLコマンドを印刷スプーラ37に供給してもよい。即ち、PC10は、S43でPJLコマンドを生成する際に、当該PJLコマンドを印刷スプーラ37に供給し、プリンタ10からMIB値を受信し、当該MIB値を含むGetレスポンスを管理装置60に送信する。本変形例では、「第1のデータベース」、「第1の記憶制御部」、「第2の要求受信部」、「第2のデータベース」、及び、「第2の記憶制御部」を省略可能である。
(Modification 5) The
(変形例6)PC10は、図4のS10〜S20の処理を省略し、S5でYESの場合にS25に進んでもよい。本変形例では、「判断部」及び「第4のデータベース」を省略可能である。
(Modification 6) The
(変形例7)PC10は、USBI/F16及びネットワークI/F18に代えて、WFD(Wi-Fi Directの略)機能をサポートしているWi−FiI/Fを備えてもよい。この場合、PC10は、WFDに従った通信をプリンタ50と実行し、WFDではない通常のWi−Fiに従った通信を管理装置60と実行してもよい。本変形例では、Wi−FiI/Fが「第1の通信インターフェース」及び「第2の通信インターフェース」の一例であり、WFD、通常のWi−Fiが、それぞれ、「第1の通信規格」、「第2の通信規格」の一例である。また、別の変形例では、PC10は、USBI/F16に代えて、BT(Bluetooth(登録商標)の略)I/Fを備えてもよく、BTI/Fを介して、プリンタ50との通信を実行してもよい。本変形例では、BTI/Fが、「第1の通信インターフェース」の一例であり、BTが、「第1の通信規格」の一例である。
(Modification 7) The
(変形例8)「プリンタ」は、印刷機能を備えるあらゆる装置を含み、例えば、スキャン機能をさらに備える多機能機を含む。 (Modification 8) The “printer” includes any device having a printing function, and includes, for example, a multifunctional machine further having a scanning function.
(変形例9)上記の各実施例では、図4〜図9の各処理がソフトウェア(即ち各プログラム36、38)によって実現されるが、これらの各処理のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
(Modification 9) In each of the above embodiments, each process of FIGS. 4 to 9 is realized by software (that is, each
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。 In addition, the technical elements described in the present specification or the drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. In addition, the techniques illustrated in the present specification or drawings achieve a plurality of objectives at the same time, and achieving one of the objectives itself has technical usefulness.
2:通信システム、4:LAN、10,80:PC、12:操作部、14:表示部、16:USBI/F、18:ネットワークI/F18、30:制御部、36:OSプログラム、37:印刷スプーラ、38:プリンタアプリケーション、40:PJL変換リスト、42:OIDパターンリスト、44:MIB値リスト、46:PJL供給リスト、48:管理装置領域、50,70:プリンタ、60:管理装置
2: Communication system, 4: LAN, 10,80: PC, 12: Operation unit, 14: Display unit, 16: USBI / F, 18: Network I / F18, 30: Control unit, 36: OS program, 37: Print spooler, 38: Printer application, 40: PJL conversion list, 42: OID pattern list, 44: MIB value list, 46: PJL supply list, 48: Management device area, 50, 70: Printer, 60: Management device
Claims (12)
前記所定のメモリ領域は、前記第1の通信インターフェースを介して前記通信装置に接続されるプリンタに印刷を実行させるための印刷指示が、前記通信装置によって取得される場合に、印刷スクリプトによって記述された印刷実行コマンドを記憶可能なメモリ領域であって、前記印刷スクリプトで記述された各コマンドを取得する場合に、前記各コマンドを取得した順に、前記第1の通信インターフェースを介して、前記各コマンドを前記プリンタに順次送信するために用いられるメモリ領域であり、
前記コンピュータプログラムは、前記通信装置のコンピュータを、
外部装置から、前記第2の通信インターフェースを介して、前記プリンタの情報を要求するための第1の情報要求を受信する第1の要求受信部であって、前記第1の情報要求は、前記プリンタの複数個の前記情報を識別する複数個の情報識別子を含む、前記第1の要求受信部と、
前記外部装置から前記第1の情報要求が受信される場合に、前記第1の情報要求に含まれる前記複数個の情報識別子に対応する複数個のスクリプトコードであって、前記印刷スクリプトで記述された前記複数個のスクリプトコードを特定する特定部と、
特定済みの前記複数個のスクリプトコードを含む複数個の要求コマンドを、前記印刷実行コマンドを記憶可能である前記所定のメモリ領域に供給する供給部であって、前記複数個の要求コマンドのそれぞれは、当該要求コマンドに含まれる特定済みのスクリプトコードに対応する情報識別子によって識別される前記プリンタの情報の送信を前記プリンタに要求するためのコマンドである、前記供給部と、
前記所定のメモリ領域から前記第1の通信インターフェースを介して前記複数個の要求コマンドが前記プリンタに順次送信されることに応じて、前記プリンタから、前記第1の通信インターフェースを介して、前記プリンタの前記複数個の情報を順次受信する情報受信部と、
前記プリンタから前記プリンタの前記複数個の情報が受信された後に、前記第2の通信インターフェースを介して、前記プリンタの前記複数個の情報を前記外部装置に送信する送信部と、
として機能させる、コンピュータプログラム。 A computer program for a communication device including a first communication interface, a second communication interface, and a predetermined memory area.
The predetermined memory area is described by a print script when a print instruction for causing a printer connected to the communication device to execute printing via the first communication interface is acquired by the communication device. It is a memory area that can store the print execution command, and when each command described in the print script is acquired, each command is acquired via the first communication interface in the order in which each command is acquired. Is a memory area used for sequentially transmitting to the printer.
The computer program is a computer of the communication device.
A first request receiving unit that receives a first information request for requesting information on the printer from an external device via the second communication interface, and the first information request is the said. A first request receiving unit including a plurality of information identifiers for identifying the plurality of the information of the printer, and a plurality of request receiving units.
When the first information request is received from the external device, a plurality of script codes corresponding to the plurality of information identifiers included in the first information request are described in the print script. A specific part that identifies the plurality of script codes,
A supply unit that supplies a plurality of request commands including the specified plurality of script codes to the predetermined memory area that can store the print execution command, and each of the plurality of request commands is is a command for requesting transmission of information of the printer identified by the information identifier that corresponds to a particular pre-script code included in the request command to the printer, and the supply unit,
In response to the plurality of request commands being sequentially transmitted from the predetermined memory area to the printer via the first communication interface, the printer from the printer via the first communication interface. An information receiving unit that sequentially receives the plurality of pieces of information, and
After receiving the plurality of information of the printer from the printer, a transmission unit that transmits the plurality of information of the printer to the external device via the second communication interface.
A computer program that acts as.
特定済みの前記複数個のスクリプトコードのそれぞれについて、当該スプリクトコードに所定記号を付加して、当該スクリプトコードを含む要求コマンドを生成する生成部として機能させる、請求項1に記載のコンピュータプログラム。 The computer program further adds to the computer.
For each particular already said plurality of script code, by adding a predetermined symbol to the Supurikuto code, to function the script code as a generation unit for generating including request command, according to claim 1 computer program ..
前記プリンタから前記プリンタの前記複数個の情報が受信される場合に、前記第1の情報要求に含まれる前記複数個の情報識別子のそれぞれについて、当該情報識別子と、当該情報識別子によって識別される前記プリンタの情報と、を関連付けて、前記通信装置の第1のデータベースに記憶する第1の記憶制御部と、
前記複数個の情報識別子のそれぞれについて、当該情報識別子と、当該情報識別子によって識別される前記プリンタの情報と、が前記第1のデータベースに記憶された後に、前記外部装置から、前記第2の通信インターフェースを介して、前記プリンタの前記複数個の情報を要求するための第2の情報要求であって、前記複数個の情報識別子を含む前記第2の情報要求を受信する第2の要求受信部と、として機能させ、
前記送信部は、前記外部装置から前記第2の情報要求が受信される場合に、前記第1のデータベースに記憶されている前記プリンタの前記複数個の情報であって、前記第2の情報要求に含まれる前記複数個の情報識別子に関連付けられている前記プリンタの前記複数個の情報を前記外部装置に送信する、請求項1から3のいずれか一項に記載のコンピュータプログラム。 The computer program further adds to the computer.
When the plurality of information of the printer is received from the printer, each of the plurality of information identifiers included in the first information request is identified by the information identifier and the information identifier. and information of the printer, the association, the first storage control unit for storing in the first database of said communication device,
For each of the plurality of information identifiers , the information identifier and the information of the printer identified by the information identifier are stored in the first database, and then the second communication is performed from the external device. A second request receiving unit that receives the second information request including the plurality of information identifiers, which is a second information request for requesting the plurality of information of the printer via the interface. And let it function as
The transmitting unit is the plurality of information of the printer stored in the first database when the second information request is received from the external device, and is the second information request. The computer program according to any one of claims 1 to 3, which transmits the plurality of information of the printer associated with the plurality of information identifiers included in the external device to the external device.
前記第1の情報要求に含まれる前記複数個の情報識別子のそれぞれについて、当該情報識別子と、当該情報識別子に対応する特定済みのスクリプトコードを含む要求コマンドと、を関連付けて、前記通信装置の第2のデータベースに記憶する第2の記憶制御部として機能させ、
前記供給部は、所定タイミングが到来する毎に、前記第2のデータベースに記憶されている前記複数個の要求コマンドを前記所定のメモリ領域に供給する、請求項4に記載のコンピュータプログラム。 The computer program further adds to the computer.
For each of the plurality of information identifier included in the first information request, in association with the information identifier, and including requests command certain pre script code corresponding to the information identifier, the said communication To function as a second storage control unit that stores in the second database of the device,
The computer program according to claim 4, wherein the supply unit supplies the plurality of request commands stored in the second database to the predetermined memory area each time a predetermined timing arrives.
前記第1の情報要求に含まれる前記複数個の情報識別子のそれぞれは、前記SNMPに従ったOID(Object IDの略)であり、
前記送信部は、前記SNMPに従ったGetレスポンスであって、前記プリンタの前記複数個の情報を含む前記Getレスポンスを前記外部装置に送信する、請求項1から5のいずれか一項に記載のコンピュータプログラム。 The first information request is a Get request according to SNMP (abbreviation of Simple Network Management Protocol).
Each of the plurality of information identifiers included in the first information request is an OID (abbreviation of Object ID) according to the SNMP.
The method according to any one of claims 1 to 5, wherein the transmission unit is a Get response according to the SNMP, and transmits the Get response including the plurality of information of the printer to the external device. Computer program.
前記第3のデータベースは、複数個のOIDのそれぞれについて、当該OIDと、当該OIDによって識別される前記プリンタの情報の送信を前記プリンタに要求するためのスクリプトコードと、を関連付けて記憶している、請求項6に記載のコンピュータプログラム。 The identification unit identifies the plurality of script codes associated with the plurality of OIDs included in the first information request from the third database of the communication device.
The third database stores the OID and the script code for requesting the printer to transmit the information of the printer identified by the OID in association with each of the plurality of OIDs. , The computer program according to claim 6.
前記外部装置から前記第1の情報要求が受信される場合に、前記第1の情報要求に含まれる前記複数個の情報識別子の組み合わせが、前記通信装置の第4のデータベースに記憶されているのか否かを判断する判断部であって、前記第4のデータベースは、前記プリンタの情報を管理すべき管理装置が利用する複数個の情報識別子の組み合わせを予め記憶している、前記判断部として機能させ、
前記第1の情報要求に含まれる前記複数個の情報識別子の組み合わせが前記第4のデータベースに記憶されていると判断される場合に、
前記特定部は、前記複数個のスクリプトコードを特定し、
前記供給部は、特定済みの前記複数個のスクリプトコードを含む前記複数個の要求コマンドを前記所定のメモリ領域に供給し、
前記情報受信部は、前記プリンタから前記複数個の情報を受信し、
前記送信部は、前記複数個の情報を前記外部装置に送信し、
前記第1の情報要求に含まれる前記複数個の情報識別子の組み合わせが前記第4のデータベースに記憶されていないと判断される場合に、
前記特定部は、前記複数個のスクリプトコードを特定せず、
前記供給部は、前記複数個の要求コマンドを前記所定のメモリ領域に供給しない、請求項7に記載のコンピュータプログラム。 The computer program further adds to the computer.
When the first information request is received from the external device, is the combination of the plurality of information identifiers included in the first information request stored in the fourth database of the communication device? The fourth database is a determination unit that determines whether or not the information is to be determined, and functions as the determination unit that stores in advance a combination of a plurality of information identifiers used by the management device that should manage the information of the printer. Let me
When it is determined that the combination of the plurality of information identifiers included in the first information request is stored in the fourth database,
The specific part identifies the plurality of script codes, and the specific part identifies the plurality of script codes.
The supply unit supplies the plurality of request commands including the specified plurality of script codes to the predetermined memory area.
The information receiving unit receives the plurality of information from the printer and receives the information.
The transmission unit transmits the plurality of information to the external device, and the transmission unit transmits the plurality of information to the external device.
When it is determined that the combination of the plurality of information identifiers included in the first information request is not stored in the fourth database,
The specific part does not specify the plurality of script codes,
The computer program according to claim 7 , wherein the supply unit does not supply the plurality of request commands to the predetermined memory area.
前記第2の通信インターフェースは、前記第1種の通信規格とは異なる第2種の通信規格に従った通信を実行するためのインターフェースである、請求項1から8のいずれか一項に記載のコンピュータプログラム。 The first communication interface is an interface for executing communication in accordance with the first type communication standard.
The second communication interface is the interface for executing communication according to a second type communication standard different from the first type communication standard, according to any one of claims 1 to 8. Computer program.
前記第2種の通信規格は、IP(Internet Protocolの略)である、請求項9に記載のコンピュータプログラム。 The first type of communication standard is USB (abbreviation of Universal Serial Bus).
The computer program according to claim 9 , wherein the second type of communication standard is IP (abbreviation of Internet Protocol).
第1の通信インターフェースと、
第2の通信インターフェースと、
所定のメモリ領域であって、前記第1の通信インターフェースを介して前記通信装置に接続されるプリンタに印刷を実行させるための印刷指示が、前記通信装置によって取得される場合に、印刷スクリプトによって記述された印刷実行コマンドを記憶可能なメモリ領域であって、前記印刷スクリプトで記述された各コマンドを取得する場合に、前記各コマンドを取得した順に、前記第1の通信インターフェースを介して、前記各コマンドを前記プリンタに順次送信するために用いられるメモリ領域である、前記所定のメモリ領域と、
外部装置から、前記第2の通信インターフェースを介して、前記プリンタの情報を要求するための第1の情報要求を受信する第1の要求受信部であって、前記第1の情報要求は、前記プリンタの複数個の前記情報を識別する複数個の情報識別子を含む、前記第1の要求受信部と、
前記外部装置から前記第1の情報要求が受信される場合に、前記第1の情報要求に含まれる前記複数個の情報識別子に対応する複数個のスクリプトコードであって、前記印刷スクリプトで記述された前記複数個のスクリプトコードを特定する特定部と、
特定済みの前記複数個のスクリプトコードを含む複数個の要求コマンドを、前記印刷実行コマンドを記憶可能である前記所定のメモリ領域に供給する供給部であって、前記複数個の要求コマンドのそれぞれは、当該要求コマンドに含まれる特定済みのスクリプトコードに対応する情報識別子によって識別される前記プリンタの情報の送信を前記プリンタに要求するためのコマンドである、前記供給部と、
前記所定のメモリ領域から前記第1の通信インターフェースを介して前記複数個の要求コマンドが前記プリンタに順次送信されることに応じて、前記プリンタから、前記第1の通信インターフェースを介して、前記プリンタの前記複数個の情報を順次受信する情報受信部と、
前記プリンタから前記プリンタの前記複数個の情報が受信された後に、前記第2の通信インターフェースを介して、前記プリンタの前記複数個の情報を前記外部装置に送信する送信部と、
を備える、通信装置。 It ’s a communication device,
The first communication interface and
The second communication interface and
Described by a print script when a print instruction for causing a printer connected to the communication device to execute printing in a predetermined memory area via the first communication interface is acquired by the communication device. It is a memory area that can store the printed execution command, and when each command described in the print script is acquired, the respective commands are acquired in the order of acquisition via the first communication interface. The predetermined memory area, which is a memory area used for sequentially transmitting commands to the printer, and
A first request receiving unit that receives a first information request for requesting information on the printer from an external device via the second communication interface, and the first information request is the said. A first request receiving unit including a plurality of information identifiers for identifying the plurality of the information of the printer, and a plurality of request receiving units.
When the first information request is received from the external device, a plurality of script codes corresponding to the plurality of information identifiers included in the first information request are described in the print script. A specific part that identifies the plurality of script codes,
A supply unit that supplies a plurality of request commands including the specified plurality of script codes to the predetermined memory area that can store the print execution command, and each of the plurality of request commands is is a command for requesting transmission of information of the printer identified by the information identifier that corresponds to a particular pre-script code included in the request command to the printer, and the supply unit,
In response to the plurality of request commands being sequentially transmitted from the predetermined memory area to the printer via the first communication interface, the printer from the printer via the first communication interface. An information receiving unit that sequentially receives the plurality of pieces of information, and
After receiving the plurality of information of the printer from the printer, a transmission unit that transmits the plurality of information of the printer to the external device via the second communication interface.
A communication device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017189928A JP6962116B2 (en) | 2017-09-29 | 2017-09-29 | Computer programs and communication equipment for communication equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017189928A JP6962116B2 (en) | 2017-09-29 | 2017-09-29 | Computer programs and communication equipment for communication equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019067021A JP2019067021A (en) | 2019-04-25 |
JP6962116B2 true JP6962116B2 (en) | 2021-11-05 |
Family
ID=66340743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017189928A Active JP6962116B2 (en) | 2017-09-29 | 2017-09-29 | Computer programs and communication equipment for communication equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6962116B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851086A (en) * | 2019-10-11 | 2020-02-28 | 杭州珐珞斯科技有限公司 | Data reading method, device, system and equipment of printing equipment |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6058445A (en) * | 1997-05-13 | 2000-05-02 | Micron Electronics, Inc. | Data management method for adding or exchanging components on a running computer |
JP3755320B2 (en) * | 1999-01-11 | 2006-03-15 | セイコーエプソン株式会社 | Network connection server |
JP3950575B2 (en) * | 1999-04-09 | 2007-08-01 | キヤノン株式会社 | Data processing apparatus, data processing method, and storage medium storing computer-readable program |
JP4196835B2 (en) * | 2004-01-08 | 2008-12-17 | ブラザー工業株式会社 | Information acquisition processing program, computer, and information acquisition processing system |
JP2008027128A (en) * | 2006-07-20 | 2008-02-07 | Brother Ind Ltd | Device management system, management apparatus, and program |
JP4894680B2 (en) * | 2007-08-22 | 2012-03-14 | セイコーエプソン株式会社 | Electronic device, external device, device system, status information transmission method |
JP6269353B2 (en) * | 2014-06-30 | 2018-01-31 | 京セラドキュメントソリューションズ株式会社 | Image forming apparatus |
-
2017
- 2017-09-29 JP JP2017189928A patent/JP6962116B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019067021A (en) | 2019-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5870679B2 (en) | Printer | |
US8947693B2 (en) | Server system, method for printing system, and storage medium | |
JP7355147B2 (en) | application program | |
JP6402668B2 (en) | Multi-function machine | |
JP5321929B2 (en) | Universal device driver, device control program, information processing apparatus, server apparatus, and method | |
JP6841052B2 (en) | Communication system and registration server | |
JP5370265B2 (en) | Common printer driver and print port management method | |
US8867071B2 (en) | Printer for requiring terminal device to supply target data and terminal device for supplying target data in response to requirement from printer | |
JP2014063421A (en) | Printer server and printing control program | |
JP4639917B2 (en) | Image forming apparatus and image forming system | |
JP6962116B2 (en) | Computer programs and communication equipment for communication equipment | |
US20230315361A1 (en) | Information processing apparatus, print setting application, and print system | |
CN113168296B (en) | Information processing device, server device, control method, and control program | |
JP2019036801A (en) | Image processing apparatus | |
JP6590056B2 (en) | Multi-function machine | |
JP2006243840A (en) | Print information processor, print information processing method, print information processing program, and computer-readable storage medium | |
JP5817545B2 (en) | Print trial device, print trial program, print trial method, print control server | |
JP6973056B2 (en) | Computer programs and communication equipment for communication equipment | |
US10891096B2 (en) | Communication device, non-transitory computer-readable recording medium storing computer-readable instructions for communication device, and method performed by communication device | |
JP7077590B2 (en) | Computer programs and communication equipment for communication equipment | |
JP7510889B2 (en) | Print instruction device | |
JP2019067010A (en) | Communication device and computer program | |
JP2012168807A (en) | Print instruction program, print instruction method, print instruction device, and print instruction system | |
JP4262007B2 (en) | Network device and data processing system control method | |
US20220308802A1 (en) | Information processing apparatus, method of controlling information processing apparatus, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200918 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210608 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210629 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210824 |
|
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: 20210914 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210927 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6962116 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |