JP6155607B2 - 通信中継プログラム、及び、通信中継装置 - Google Patents
通信中継プログラム、及び、通信中継装置 Download PDFInfo
- Publication number
- JP6155607B2 JP6155607B2 JP2012253270A JP2012253270A JP6155607B2 JP 6155607 B2 JP6155607 B2 JP 6155607B2 JP 2012253270 A JP2012253270 A JP 2012253270A JP 2012253270 A JP2012253270 A JP 2012253270A JP 6155607 B2 JP6155607 B2 JP 6155607B2
- Authority
- JP
- Japan
- Prior art keywords
- printer
- communication
- request
- information
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1827—Accessing generic data, e.g. fonts
- G06K15/1828—Accessing generic data, e.g. fonts characterized by the kind of storage accessed
- G06K15/183—Removable memories, e.g. font cartridges
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1205—Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1236—Connection management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1288—Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1292—Mobile client, e.g. wireless printing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/002—Interacting with the operator
- G06K15/007—Interacting with the operator only remotely, e.g. at a host computer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Description
そして、画像処理装置と端末装置とがUSB(Universal Serial Bus)によって接続されている環境において上述したIPPによる通信を行うためのIPP over USBという規格のドラフト(2012年11月19日時点においてVersion 1.0 Draft 20)が知られている。
IPP over USBのドラフトでは、画像処理装置にHTTPサーバ機能を持たせて、HTTPプロトコルによる画像処理装置の設定の管理を行うことも記載されている。
これに対し、目的の画像処理装置のネットワークポートを知らない場合は、特定のネットワークポートを指定した処理要求を送信することにより、選択画面情報によって表示される画面で目的の画像処理装置を選択することができる。
上記通信中継プログラムによると、クライアントアプリケーションが特定のアプリケーションである場合に選択画面情報を送信するので、画面を表示できないアプリケーションに選択画面情報を送信してしまわないようにすることができる。
(1)画像処理システム
先ず、図1を参照して、画像処理システム1について説明する。画像処理システム1はパーソナルコンピュータ(PCと記す)2と複数のプリンタ3(3a〜3c)とで構成されている。PC2とプリンタ3a〜3cとはUSB(Universal Serial Bus、ユニバーサルシリアルバス)ケーブル4(4a〜4c)によって通信可能に接続されている。
PC2は情報処理装置及び通信中継装置の一例である。プリンタ3は画像処理装置の一例である。また、USBは通信回線の一例である。
(a)プリンタ3を設定するための通信
(b)プリンタ3に印刷データを送信するための通信
これらの通信はIPP over USB規格(2012年11月19日時点においてVersion 1.0 Draft 20)に従って行われる。IPP(Internet Printing Protocol)とは、HTTP(HyperText Transfer Protocol)をベースにした規格であって、インターネットやLAN(Local Area Network)などのTCP/IPネットワークを介してプリンタ3と通信するための規格である。
図1を参照して、PC2の電気的構成について説明する。PC2は、CPU21、ROM22、RAM23、表示部24、操作部25、記憶部26、及び、USBホストインタフェース部(図1ではUSBホストIF部と記す)27を備えて構成されている。
操作部25は、キーボードやマウス、それらが接続されるインタフェースなどで構成されている。
IPP/USB変換プログラム43は通信中継プログラムの一例である。Webブラウザ42はクライアントアプリケーション及び特定のアプリケーションの一例である。また、記憶部26は記憶装置の一例である。
次に、図2を参照して、プリンタ3の電気的構成について説明する。プリンタ3は、制御部31、USBクライアントインタフェース部(図2ではUSBクライアントIF部と記す)32、印刷部33、操作部34、及び、記憶部35を備えて構成されている。
操作部34は、液晶ディスプレイなどの表示装置や各種の操作ボタンなどを備えて構成されている。
記憶部35は、ハードディスクやフラッシュメモリなどの不揮発性のメモリを用いて各種のデータを記憶する装置である。
また、USBの仕様により、USBクライアントインタフェース部32にはデバイスディスクリプタ、ストリングディスクリプタ、ベンダクラスディスクリプタ、インタフェースディスクリプタなどの各種のディスクリプタが記憶されている。ディスクリプタはプリンタ3に関する情報である。
次に、図3を参照して、プリンタ3の設定画面50について説明する。設定画面50はWebブラウザ42によって表示されるものである。設定画面50の画面データはHTML(HyperText Markup Language)やXML(Extensible Markup Language)によって記述されている。以後はHTMLで記述されているものとして説明する。
詳しくは後述するが、画面データはプリンタ3のWebサーバ機能62(図4参照)が設定画面CGI(Common Gateway Interface )を実行することによって生成される。Webブラウザ42はIPP over USBによってプリンタ3からその画面データを取得して設定画面50を表示する。設定画面50の画面データのファイル名はmain.htmlであるとする。
なお、図3に示す設定画面50は一例であり、設定画面50はプリンタ3の機種によって異なる。
次に、図4を参照して、IPP over USBによって通信を行うためのPC2のプログラム構成、及び、プリンタ3の機能について説明する。
先ず、PC2のプログラム構成について説明する。PC2は、IPP/USB変換プログラム43、Webブラウザ42、及び、スプーラ44を実行する。
IPP/USB変換プログラム43は、Webブラウザ42とプリンタ3のIPP機能61との間でプリンタ3を設定するための通信(a)を中継するとともに、スプーラ44とIPP機能61との間でプリンタ3に印刷データを送信するための通信(b)を中継するプログラムである。
また、IPP/USB変換プログラム43はIPP機能61とUSBを介して通信する。IPP/USB変換プログラム43の詳細については後述する。
PC2とプリンタ3とがUSBによって接続されている環境では、Webブラウザ42はlocalhostの前記ポートに、設定画面50の画面データの送信を要求するHTTPリクエストや、設定画面50上に表示する部品画像の送信を要求するHTTPリクエストなどを送信する。これらのHTTPリクエストはそれぞれ処理要求の一例である。以降の説明ではHTTPリクエストを単に処理要求という。
IPP/USB変換プログラム43はWebブラウザ42から処理要求を受信すると、USBを介してIPP機能61にその処理要求を送信する。
IPP/USB変換プログラム43はスプーラ44から印刷データを受信すると、USBを介してプリンタ3のIPP機能61にその印刷データを送信する。
次に、プリンタ3の機能について説明する。プリンタ3は、IPP機能61、Webサーバ機能62、及び、印刷部33を備えている。
IPP機能61はプリンタ3の制御部31が制御プログラムを実行することによって実現される機能である。IPP機能61はIPP/USB変換プログラム43とUSBを介して通信する。また、IPP機能61はWebサーバ機能62とHTTPによって通信するとともに、印刷部33と所定のプロトコルに従って通信する。
次に、USBにおけるインタフェースについて説明する。USBでは物理的に一本のUSBケーブル4にインタフェースと呼ばれる1以上の論理的な通信回線が構成される。
USBではコントロール転送を行うためのエンドポイント0と呼ばれる特殊なエンドポイントが必ず構成される。エンドポイント0は双方向通信が可能なエンドポイントである。インタフェースはエンドポイント0を介してプリンタ3から取得されるインタフェースディスクリプタに従って構成される。各インタフェースは通常1ないし複数のエンドポイントを有する。
なお、インタフェース2を構成せず、プリンタ3を設定するための通信(a)、及び、プリンタ3に印刷データを送信するための通信(b)をどちらもインタフェース1を用いて行ってもよい。
次に、1台のPC2に複数のプリンタ3がUSBによって接続されている場合の課題について説明する。ここではプリンタ3を設定するための通信(a)を例に説明する。
プリンタ3とPC2とがUSBによって接続されている環境では、通常、ユーザはWebブラウザ42に以下のURLを入力することによってIPP/USB変換プログラム43に設定画面50の画面データの送信を要求する。
http://localhost/main.html
ポート番号はネットワークポート、及び、通信パスの一例である。またポート番号80は特定のネットワークポートの一例である。
GET /main.html HTTP/1.0 ・・・ 処理要求A
そこで、IPP/USB変換プログラム43は、プリンタ3を識別するための装置固有情報に対して固有のポート番号を割り当て、割り当てたポート番号を用いて処理要求の送信先のプリンタ3を特定する。以下、具体的に説明する。
先ず、図5を参照して、通信処理の全体的な流れについて説明する。ここでは前述したプリンタ3を設定するための通信(a)を例に説明する。また、ここでは設定の対象としてプリンタ3aを例に説明する。
また、詳しくは後述するが、プリンタ選択画面55には過去にUSBによってPC2に接続されていたプリンタ3dであって現在は接続されていないプリンタ3dのモデル名56dも表示される。ただし、プリンタ3dのモデル名56dは表示されるのみであり、リンクは設定されていない。
具体的には、IPP/USB変換プログラム43は、プリンタ選択画面55の画面データを生成するとき、プリンタ3a〜3cのそれぞれのUSBクライアントインタフェース部32からモデル名、ベンダーID、製品ID、及び、シリアル番号を取得する。ここではこれら一組の情報をプリンタ3の装置固有情報という。そして、IPP/USB変換プログラム43は各装置固有情報に対して固有のポート番号を割り当てる。そして、IPP/USB変換プログラム43は、図7に示すように、装置固有情報に割り当てた固有のポート番号をURLに設定する。例えば図7において4001はプリンタ3aの装置固有情報に割り当てた固有のポート番号である。同様に4002はプリンタ3b、4003はプリンタ3cの装置固有情報に割り当てた固有のポート番号である。
また、識別情報はモデル名に限られるものではない。例えばプリンタ3を表す画像であってもよい。あるいは画像とそのプリンタ3に付与したプリンタ名との組み合わせなどであってもよい。
例えばユーザはプリンタ3とPC2との接続を解除してしまう場合もある。ユーザがプリンタ3の接続を解除しても、そのプリンタ3の装置固有情報はポート番号に対応付けられて記憶部26に記憶されたままである。
そこで、IPP/USB変換プログラム43は、PC2との接続が解除されているプリンタ3であっても装置固有情報がポート番号に対応付けられて記憶部26に記憶されている場合はそのプリンタ3のモデル名(例えばPRINTER3d)もプリンタ選択画面55に表示させる。
ユーザがプリンタ選択画面55で接続が解除されているプリンタ3のラジオボタン57を選択して削除ボタン58をクリックすると、選択したプリンタ3のポート番号と装置固有情報とを記憶部26から削除するポート番号削除要求がIPP/USB変換プログラム43に送信される。これにより、接続が解除されたプリンタ3の装置固有情報とポート番号とが記憶部26に残ってしまわないようにすることができる。ポート番号削除要求は通信パス削除要求の一例である。
Webブラウザ42は、ユーザがプリンタ選択画面55でクリックしたモデル名を受付けると(S004)、そのモデル名に設定されているリンクに設定されているポート番号によって識別される通信ポートにセッションの確立を要求する。例えばユーザがプリンタ選択画面55でPRINTER3aをクリックしたとする。この場合、Webブラウザ42はlocalhostのポート番号4001によって識別される通信ポートにセッションの確立を要求する。
IPP/USB変換プログラム43はプリンタ3aから画面データを受信すると、受信した画面データをWebブラウザ42に送信する(S008)。
Webブラウザ42は受信した設定画面50の画面データを解析し(S009)、部品画像の送信を要求する処理要求BをIPP/USB変換プログラム43に送信する(S010)。例えばGIF1の送信を要求する場合、IPP/USB変換プログラム43には以下の処理要求Bが送信される。
GET /GIF1 HTTP/1.0 ・・・ 処理要求B
IPP/USB変換プログラム43はプリンタ3aから部品画像を受信すると、受信した部品画像をWebブラウザ42に送信する(S013)。
これら一連の処理をGIF1〜GIF3について繰り返すことにより、GIF1〜GIF3がWebブラウザ42に読み込まれ、設定画面60上に表示される。
次に、IPP/USB変換プログラム43による通信中継処理の詳細について説明する。
まず、図8及び図9を参照して、IPP/USB変換プログラム43がWebブラウザ42から処理要求を受信する処理について説明する。前述したようにIPP/USB変換プログラム43は常駐プログラムとして実行されるものであり、本処理はPC2に電源が投入されると開始される。
S103では、IPP/USB変換プログラム43はS101で処理要求を受信した通信ポートのポート番号がデフォルトのポート番号80であるか否かを判断する。
例えば、ユーザがWebブラウザ42にポート番号が設定されていないURLを設定して設定画面50の画面データの送信を要求した場合は、S102において設定画面50の送信を要求する処理要求Aであると判断され、S103においてデフォルトのポート番号80であると判断される。これに対し、ユーザがプリンタ選択画面55でモデル名をクリックした場合は、S102において設定画面50の送信を要求する処理要求Aであると判断されるものの、その場合の処理要求はプリンタ3の装置固有情報に固有のポート番号の通信ポートを介して受信されるので、S103においてデフォルトのポート番号80ではないと判断される。
IPP/USB変換プログラム43はデフォルトのポート番号80である場合はS104に進み、デフォルトのポート番号80以外である場合はS106に進む。
S105では、IPP/USB変換プログラム43はS104で生成したプリンタ選択画面55の画面データをWebブラウザ42に送信する。S105は画面情報送信処理の一例である。また、プリンタ選択画面55の画面データは選択画面情報の一例である。
S108では、IPP/USB変換プログラム43は受信した処理要求に対応した処理を実行する。
例えば部品画像の送信を要求する処理要求BはS102において否定判断され、S107において肯定判断され、S109において否定判断される。これに対し、例えばポート削除要求はPOSTコマンドとしてデフォルトのポート番号80によって識別される通信ポートを介して送信されるので、S102において否定判断され、S107において肯定判断され、S109において肯定判断される。
IPP/USB変換プログラム43は、デフォルトのポート番号80ではない場合、すなわちプリンタ3の装置固有情報毎に割り当てたポート番号である場合はS110に進み、デフォルトのポート番号80である場合はS111に進む。
S111では、IPP/USB変換プログラム43はポート80対応処理を実行する。ポート80対応処理とは、例えばポート番号を削除する処理である。例えば処理要求がポート番号削除要求である場合、IPP/USB変換プログラム43はPOSTコマンドに設定されているポート番号とそのポート番号に対応付けられている装置固有情報とを記憶部26から削除する。なお、ポート80対応処理はポート番号を削除する処理に限られるものではない。S111は削除処理の一例である。
IPP/USB変換プログラム43は、S108,S110,又はS111のいずれかの処理を終了するとS101に戻る。
次に、図10及び図11を参照して、S104で実行されるプリンタ選択画面生成処理について説明する。
S201では、IPP/USB変換プログラム43はプリンタ選択画面55を表示するための画面データのテンプレート画面データを記憶部26から読み込む。このテンプレート画面データにはモデル名やリンクは記述されていない。
S203では、IPP/USB変換プログラム43は記憶部26に記憶されているポート番号を一つ選択する。
S205では、IPP/USB変換プログラム43はS204で読み出した装置固有情報によって識別されるプリンタ3がPC2に接続されているか否かを判断し、接続されている場合はS206に進み、接続されていない場合はS208に進む。S205は接続判断処理の一例である。
http://localhost/main.html:4001
<a href=”http://localhost/main.html:4001”>PRINTER3a</a>
S209では、IPP/USB変換プログラム43は記憶されている全てのポート番号を選択したか否かを判断し、全て選択した場合はS210に進み、未だ選択していないポート番号がある場合はS203に戻って処理を繰り返す。
S211では、IPP/USB変換プログラム43はS210で検索したプリンタ3を一つ選択する。
S212では、IPP/USB変換プログラム43はS211で選択したプリンタ3からUSBを介して装置固有情報を取得する。S212は取得処理の一例である。
ここで、装置固有情報が記憶部26に記憶されているか否かを判断する理由は、装置固有情報が記憶部26に記憶されているプリンタ3は既にS207でテンプレート画面データにリンクが追加されているので、以降のS214〜S218の処理をスキップすることによってリンクを二重に追加しないようにするためである。一方、例えば前回本処理を実行してから今回本処理を実行するまでの間にPC2に接続されたプリンタ3は装置固有情報が記憶部26に記憶されておらず、S207でリンクが追加されていないので、S214〜S218を実行してそのプリンタ3の装置固有情報に対して固有のポート番号を割り当てるためである。
・ウエルノウンポートと重複しない
・他のプリンタ3の装置固有情報に割り当てられているポート番号と重複しない
・PC2で実行されている他のサービスのポート番号と重複しない
そして、IPP/USB変換プログラム43は選択したポート番号をS212で取得した装置固有情報に割り当てる。
上述したS214は通信パス生成処理の一例である。また、選択したポート番号は画像処理装置に固有の通信パスの一例である。ここで画像処理装置に固有とは、USBによってPC2に接続されている複数のプリンタ3の間で重複しないという意味である。
S217では、IPP/USB変換プログラム43はS216で生成したURLをテンプレート画面データにリンクとして追加する。
S219では、IPP/USB変換プログラム43はS210で検索したプリンタ3を全て選択したか否かを判断し、全て選択した場合はS220に進み、まだ選択していないプリンタ3がある場合はS211に戻って処理を繰り返す。
S221では、IPP/USB変換プログラム43は生成したプリンタ選択画面55の画面データをWebブラウザ42に送信する。
次に、図12を参照して、S106及びS110で実行されるプリンタ3との通信処理について説明する。
S301では、IPP/USB変換プログラム43はS101で処理要求を受信した通信ポートのポート番号と同じポート番号が記憶部26に記憶されているか否かを判断し、記憶されていない場合はS302に進み、記憶されている場合はS303に進む。
S302では、IPP/USB変換プログラム43は404(Not Found)エラーをWebブラウザ42に送信する。
排他処理は例えばミューテックスを用いることによって行うことができる。ミューテックスは排他処理を行うための仕組みであって、プログラム言語によって提供される仕組みである。なお、ここではミューテックスを用いて排他処理を行う場合を例に説明するが、排他処理を行う方法はこれに限られない。例えばセマフォを用いて行ってもよいし、ミューテックスやセマフォを用いず独自の方法で行ってもよい。
上述したS301〜S306は要求送信処理の一例である。
S308では、IPP/USB変換プログラム43はS307で受信した応答をWebブラウザ42に送信する。
S309では、IPP/USB変換プログラム43はインタフェース1の排他処理を終了する。
以上説明した実施形態に係るIPP/USB変換プログラム43によると、プリンタ選択画面55の画面データであって、ユーザがプリンタ選択画面55でモデル名を選択すると当該選択したモデル名によって識別されるプリンタ3に対応するポート番号の通信ポートを介してWebブラウザ42から処理要求が送信されるように構成された画面データをWebブラウザ42に送信する。そして、IPP/USB変換プログラム43はWebブラウザ42から処理要求を受信すると、当該処理要求を受信した通信ポートのポート番号に対応するプリンタ3に当該処理要求を送信する。
よってIPP/USB変換プログラム43によると、Webブラウザ42と複数のプリンタ3との間で通信を中継する場合に、Webブラウザ42から送信された処理要求の送信先のプリンタ3を特定することができる。
上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も技術的範囲に含まれる。
モデル名_ベンダーID_製品ID_シリアル番号
モデル名=PRINTER3a
ベンダーID=04F9
製品ID=00A3
シリアル番号=SER1111
この場合、フォルダ名は以下のフォルダ名となる。
PRINTER3a_VID04F9_PID00A3_SER1111
<a href=”http://localhost/PRINTER3a_VID04F9_PID00A3_SER1111/main.html”>PRINTER3a</a>
GET /PRINTER3a_VID04F9_PID00A3_SER1111/main.html HTTP/1.0
PRINTER3a_VID04F9_PID00A3_SER1111
そして、上述した処理要求(GET /PRINTER3a_VID04F9_PID00A3_SER1111/main.html HTTP/1.0)が送信されたとする。この場合、Webサーバ機能62は上述したHTTPリクエストを、仮想的なフォルダ「/PRINTER3a_VID04F9_PID00A3_SER1111」の下にあるmain.htmlというファイルを取得する命令として解釈する。よって、Webサーバ機能62はmain.htmlというファイルを返信する。
つまり、IPP/USB変換プログラム43は、クライアントアプリケーションが特定のアプリケーションである場合にプリンタ選択画面55の画面データを送信し、それ以外のアプリケーションである場合は画面データを送信しないようにしてもよい。これにより、画面を表示できないアプリケーションにプリンタ選択画面55の画面データを送信してしまわないようにすることができる。
なお、上述した例とは逆に、クライアントアプリケーションがスプーラ44である場合に、設定画面50の画面データを返し、Webブラウザ42である場合に返さないようにしてもよい。この場合、スプーラ44が特定のアプリケーションの一例である。
なお、特定のアプリケーションは、プリンタ選択画面55の画面データを表示できるものであればWebブラウザ42に限定されない。
つまり、IPP/USB変換プログラム43は、Webブラウザ42から受信した処理要求で指定されたポート番号によりプリンタ3を特定できない場合に、プリンタ選択画面55の画面データをWebブラウザ42に送信してもよい。
これにより、例えばユーザが既にPC2との接続が解除されてしまっているプリンタ3のポート番号を指定して設定画面50の送信を要求した場合に、プリンタ選択画面55の画面データを送信してプリンタ3を選択させ直すことができる。
Claims (12)
- 画像処理装置と通信回線を介して通信可能に接続されている情報処理装置で実行される通信中継プログラムであって、
前記画像処理装置に固有の通信パスを生成する通信パス生成処理と、
前記画像処理装置の識別情報の選択を受け付ける画面を表示するための選択画面情報であって、当該画面で前記識別情報を選択すると当該選択した識別情報によって識別される前記画像処理装置の前記通信パスを指定した処理要求がクライアントアプリケーションによって送信されるように構成された選択画面情報を生成する画面情報生成処理と、
前記画面情報生成処理によって生成された前記選択画面情報を前記クライアントアプリケーションに送信する画面情報送信処理と、
前記クライアントアプリケーションから前記処理要求を受信する要求受信処理と、
前記要求受信処理によって受信された前記処理要求を当該処理要求で指定された前記通信パスに対応する前記画像処理装置に送信する要求送信処理と、
を前記情報処理装置に実行させ、
前記画面情報送信処理において、前記クライアントアプリケーションから受信した処理要求で指定された前記通信パスにより前記画像処理装置を特定できない場合に、前記画面情報生成処理により生成された前記選択画面情報を前記クライアントアプリケーションに送信する、通信中継プログラム。 - 請求項1に記載の通信中継プログラムであって、
前記通信パス生成処理において、ネットワークポートを含む前記通信パスを生成する、通信中継プログラム。 - 請求項2に記載の通信中継プログラムであって、
前記画面情報送信処理において、前記クライアントアプリケーションから特定のネットワークポートが指定された処理要求を受信した場合に、前記画面情報生成処理により生成された前記選択画面情報を前記クライアントアプリケーションに送信する、通信中継プログラム。 - 請求項1乃至請求項3のいずれか一項に記載の通信中継プログラムであって、
前記画面情報送信処理において、前記クライアントアプリケーションが特定のアプリケーションである場合に、前記画面情報生成処理により生成された前記選択画面情報を前記クライアントアプリケーションに送信する、通信中継プログラム。 - 請求項4に記載の通信中継プログラムであって、
前記特定のアプリケーションはWebブラウザである、通信中継プログラム。 - 請求項1乃至請求項5のいずれか一項に記載の通信中継プログラムであって、
前記画像処理装置が個別に有する装置固有情報と前記通信パス生成処理によって生成された前記通信パスとを対応付けて記憶装置に記憶する記憶処理を前記情報処理装置に実行させ、
前記要求送信処理において、前記要求受信処理によって受信された前記処理要求を当該処理要求で指定された前記通信パスに対応付けられている前記装置固有情報によって識別される前記画像処理装置に送信する、通信中継プログラム。 - 請求項6に記載の通信中継プログラムであって、
前記記憶装置に記憶されている各前記装置固有情報について、当該装置固有情報によって識別される前記画像処理装置が前記情報処理装置に接続されているか否かを判断する接続判断処理を前記情報処理装置に実行させ、
前記画面情報生成処理において、前記接続判断処理によって接続されていると判断された前記画像処理装置の識別情報の選択を受け付ける前記選択画面情報を生成する、通信中継プログラム。 - 請求項7に記載の通信中継プログラムであって、
前記画面情報生成処理において、前記記憶装置に記憶されている前記装置固有情報によって識別される前記画像処理装置のうち前記接続判断処理によって前記情報処理装置に接続されていないと判断された前記画像処理装置の識別情報が前記画面に選択不能に表示される前記選択画面情報を生成する、通信中継プログラム。 - 請求項6乃至請求項8のいずれか一項に記載の通信中継プログラムであって、
前記画面情報生成処理において、前記記憶装置に記憶されている前記通信パスを削除する指示を受け付ける削除ボタンが前記画面に表示され、前記クライアントアプリケーションで前記削除ボタンの押下が受け付けられると通信パス削除要求が送信されるように構成されている前記選択画面情報を生成し、
前記クライアントアプリケーションから前記通信パス削除要求を受信する削除要求受信処理と、
前記削除要求受信処理によって前記通信パス削除要求が受信されると、前記記憶装置に記憶されている前記通信パスと前記装置固有情報とを削除する削除処理と、
を前記情報処理装置に実行させる、通信中継プログラム。 - 請求項1に記載の通信中継プログラムであって、
前記通信パス生成処理において、前記画像処理装置が個別に有する装置固有情報を含む前記通信パスを生成する、通信中継プログラム。 - 請求項1乃至請求項10のいずれか一項に記載の通信中継プログラムであって、
前記通信回線はユニバーサルシリアルバスである、通信中継プログラム。 - 画像処理装置と通信回線を介して通信する通信部と、
処理部と、
を備え、
前記処理部は、
前記画像処理装置に固有の通信パスを生成する通信パス生成処理と、
前記画像処理装置の識別情報の選択を受け付ける画面を表示するための選択画面情報であって、当該画面で前記識別情報を選択すると当該選択した識別情報によって識別される前記画像処理装置の前記通信パスを指定した処理要求がクライアントアプリケーションによって送信されるように構成された選択画面情報を生成する画面情報生成処理と、
前記画面情報生成処理によって生成された前記選択画面情報を前記クライアントアプリケーションに送信する画面情報送信処理と、
前記クライアントアプリケーションから前記処理要求を受信する要求受信処理と、
前記要求受信処理によって受信された前記処理要求を当該処理要求で指定された前記通信パスに対応する前記画像処理装置に送信する要求送信処理と、
を実行し、
前記画面情報送信処理において、前記クライアントアプリケーションから受信した処理要求で指定された前記通信パスにより前記画像処理装置を特定できない場合に、前記画面情報生成処理により生成された前記選択画面情報を前記クライアントアプリケーションに送信する、通信中継装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012253270A JP6155607B2 (ja) | 2012-11-19 | 2012-11-19 | 通信中継プログラム、及び、通信中継装置 |
| US14/083,497 US9734437B2 (en) | 2012-11-19 | 2013-11-19 | Communication relaying technology and communication relaying apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012253270A JP6155607B2 (ja) | 2012-11-19 | 2012-11-19 | 通信中継プログラム、及び、通信中継装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014102620A JP2014102620A (ja) | 2014-06-05 |
| JP6155607B2 true JP6155607B2 (ja) | 2017-07-05 |
Family
ID=50727674
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012253270A Active JP6155607B2 (ja) | 2012-11-19 | 2012-11-19 | 通信中継プログラム、及び、通信中継装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US9734437B2 (ja) |
| JP (1) | JP6155607B2 (ja) |
Families Citing this family (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6245902B2 (ja) * | 2013-09-04 | 2017-12-13 | キヤノン株式会社 | 画像形成装置及びその制御方法並びにプログラム |
| JP6325796B2 (ja) * | 2013-11-06 | 2018-05-16 | キヤノン株式会社 | 情報処理端末およびその制御方法、並びにプログラム |
| JP6270576B2 (ja) * | 2014-03-24 | 2018-01-31 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
| US10116814B2 (en) * | 2014-10-10 | 2018-10-30 | Seiko Epson Corporation | Electronic apparatus and display control method for electronic apparatus |
| JP2017091041A (ja) * | 2015-11-05 | 2017-05-25 | Jbアドバンスト・テクノロジー株式会社 | 帳票印刷方法、帳票印刷システムおよび帳票印刷プログラム |
| JP6700894B2 (ja) * | 2016-03-25 | 2020-05-27 | キヤノン株式会社 | 画像処理装置、制御方法、プログラム |
| JP6889397B2 (ja) * | 2017-07-18 | 2021-06-18 | コニカミノルタ株式会社 | 画像処理システム、および画像形成装置 |
| JP7240118B2 (ja) * | 2018-09-14 | 2023-03-15 | キヤノン株式会社 | 情報処理装置、その制御方法およびプログラム |
| JP7346862B2 (ja) * | 2019-03-20 | 2023-09-20 | 株式会社リコー | 情報処理装置、システム、及びプログラム |
| JP7398881B2 (ja) * | 2019-05-07 | 2023-12-15 | キヤノン株式会社 | 電子機器およびその制御方法 |
| JP7331599B2 (ja) * | 2019-09-30 | 2023-08-23 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置およびプログラム |
| JP7413750B2 (ja) * | 2019-12-16 | 2024-01-16 | ブラザー工業株式会社 | プログラム、プログラム群、および情報処理装置 |
| JP7338461B2 (ja) * | 2019-12-26 | 2023-09-05 | ブラザー工業株式会社 | プログラム、プログラム群、および情報処理装置 |
| EP3889758B1 (en) * | 2020-03-31 | 2024-01-10 | Brother Kogyo Kabushiki Kaisha | Image processing device and computer program |
Family Cites Families (48)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5580177A (en) * | 1994-03-29 | 1996-12-03 | Hewlett-Packard Company | Printer/client network with centrally updated printer drivers and printer status monitoring |
| US6157950A (en) * | 1997-12-05 | 2000-12-05 | Encanto Networks, Inc. | Methods and apparatus for interfacing a computer or small network to a wide area network such as the internet |
| US6493749B2 (en) * | 1998-08-17 | 2002-12-10 | International Business Machines Corporation | System and method for an administration server |
| JP2001290812A (ja) | 2000-04-05 | 2001-10-19 | Gk Associates:Kk | Webページの配信方法、Webサーバーシステム、並びに、記録媒体 |
| JP2002182866A (ja) * | 2000-12-13 | 2002-06-28 | Fujitsu Ltd | ネットワーク環境における印刷制御方法、プリントサーバ、クライアント、および記録媒体 |
| US7187461B2 (en) * | 2001-06-25 | 2007-03-06 | Xerox Corporation | System for managing digital printers and servers via a network |
| JP4224958B2 (ja) | 2001-08-10 | 2009-02-18 | 富士ゼロックス株式会社 | インターネット印刷方法、そのシステム、プロキシ装置及びプリントサーバ |
| JP4072370B2 (ja) * | 2002-04-04 | 2008-04-09 | キヤノン株式会社 | プリンタ、印刷方法、プログラム、及び記憶媒体 |
| JP2003316712A (ja) | 2002-04-22 | 2003-11-07 | Canon Inc | 画像処理装置及び通信制御方法 |
| US20030227641A1 (en) | 2002-06-07 | 2003-12-11 | Xerox Corporation | Mobile USB printer driver |
| JP3846384B2 (ja) * | 2002-08-28 | 2006-11-15 | ブラザー工業株式会社 | 端末装置、接続制御方法、接続制御用プログラム及び記録媒体 |
| US7312887B2 (en) * | 2003-01-03 | 2007-12-25 | Toshiba Corporation | Internet print protocol print dispatch server |
| US20040190042A1 (en) * | 2003-03-27 | 2004-09-30 | Ferlitsch Andrew Rodney | Providing enhanced utilization of printing devices in a cluster printing environment |
| US20040252333A1 (en) * | 2003-06-16 | 2004-12-16 | Blume Leo Robert | Mobile communication device printing |
| US6931456B2 (en) * | 2003-09-09 | 2005-08-16 | Transact Technologies Incorporated | Standard configurable universal serial bus (USB) device identifier |
| US20090024746A1 (en) * | 2003-09-25 | 2009-01-22 | Eric Welch | Method and apparatus for host controller operations over a network |
| JP3793197B2 (ja) * | 2003-12-03 | 2006-07-05 | キヤノン株式会社 | 情報処理装置、情報処理方法、情報処理プログラム並びに記憶媒体 |
| JP2005346584A (ja) | 2004-06-04 | 2005-12-15 | Canon Inc | 文書管理方法及び装置、並びにプログラム及び記憶媒体 |
| JP4207864B2 (ja) * | 2004-08-10 | 2009-01-14 | ブラザー工業株式会社 | 状態情報処理装置、および状態情報処理装置用データ処理プログラム |
| JP4438068B2 (ja) | 2004-11-26 | 2010-03-24 | キヤノン株式会社 | 画像形成装置、画像形成装置と接続するホスト装置 |
| US8064081B2 (en) | 2004-11-26 | 2011-11-22 | Canon Kabushiki Kaisha | Print system and printing method for transmitting print data from a host device to an image forming apparatus by radio communication and performing printing |
| US7493373B2 (en) * | 2004-12-27 | 2009-02-17 | Nokia Corporation | Providing service distribution between distributed applications |
| KR100727946B1 (ko) * | 2005-06-29 | 2007-06-14 | 삼성전자주식회사 | 오프라인 상태의 화상 형성 장치에 대한 인쇄 작업 제어방법 및 장치. |
| JP2007128215A (ja) * | 2005-11-02 | 2007-05-24 | Seiko Epson Corp | ネットワークデバイスに関する情報収集 |
| JP4844105B2 (ja) * | 2005-12-01 | 2011-12-28 | セイコーエプソン株式会社 | ローカルデバイスが接続される制御装置におけるメニューデータの生成 |
| JP4760460B2 (ja) * | 2006-03-13 | 2011-08-31 | ブラザー工業株式会社 | スキャナ制御システム、およびスキャナドライバプログラム |
| US20070268838A1 (en) * | 2006-05-16 | 2007-11-22 | Cisco Technology, Inc. | System and Method For Facilitating An Internet Protocol Based Personal Area Network |
| US7886000B1 (en) | 2006-06-27 | 2011-02-08 | Confluence Commons, Inc. | Aggregation system for social network sites |
| JP4143659B2 (ja) * | 2006-07-07 | 2008-09-03 | キヤノン株式会社 | プリンタユーティリティ手段による制御方法および情報処理装置 |
| JP4877013B2 (ja) | 2007-03-30 | 2012-02-15 | ブラザー工業株式会社 | スキャナ |
| JP4966097B2 (ja) | 2007-05-30 | 2012-07-04 | キヤノン株式会社 | 情報処理装置および情報処理方法 |
| US8155019B2 (en) * | 2008-01-07 | 2012-04-10 | Canon Kabushiki Kaisha | Information processing apparatus, device information display method, and computer-readable storage medium |
| US20100097632A1 (en) * | 2008-10-21 | 2010-04-22 | Tomoki Hattori | Vertical print |
| JP5054047B2 (ja) | 2009-01-30 | 2012-10-24 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置及び画像形成プログラム |
| JP2011028390A (ja) | 2009-07-22 | 2011-02-10 | Brother Industries Ltd | サーバ、プリンタ及びコンピュータプログラム |
| EP2492820B1 (en) * | 2009-10-20 | 2016-03-23 | Canon Kabushiki Kaisha | Information processing device communicating with peripheral device, information processing method, and control program |
| JP5761923B2 (ja) * | 2010-04-28 | 2015-08-12 | キヤノン株式会社 | 印刷システム、情報処理装置及びその方法 |
| JP5370265B2 (ja) * | 2010-05-26 | 2013-12-18 | ブラザー工業株式会社 | 共通プリンタドライバ、及び印刷ポートの管理方法 |
| JP5539043B2 (ja) | 2010-06-08 | 2014-07-02 | キヤノン株式会社 | 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム |
| JP5392201B2 (ja) * | 2010-07-29 | 2014-01-22 | ブラザー工業株式会社 | ユニバーサルドライバ、及びデバイス制御方法 |
| JP5321929B2 (ja) * | 2010-11-26 | 2013-10-23 | ブラザー工業株式会社 | ユニバーサルデバイスドライバ、デバイス制御プログラム、情報処理装置、サーバ装置、及び、方法 |
| JP5673177B2 (ja) * | 2011-02-10 | 2015-02-18 | セイコーエプソン株式会社 | ネットワークシステム、ネットワークシステムの印刷制御方法およびクライアント端末 |
| CN104898995B (zh) * | 2011-02-10 | 2019-04-23 | 精工爱普生株式会社 | 网络系统、网络系统的打印控制方法及客户终端 |
| JP5752464B2 (ja) | 2011-04-04 | 2015-07-22 | 富士通コンポーネント株式会社 | インターフェース装置 |
| JP5893298B2 (ja) * | 2011-08-31 | 2016-03-23 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びにプログラム |
| US9179016B2 (en) * | 2011-10-25 | 2015-11-03 | Hewlett-Packard Development Company, L.P. | Communication architectures for direct printing and scanning |
| US20130201519A1 (en) | 2012-02-03 | 2013-08-08 | Apple Inc. | Bridging Non-Network Interfaces and Network Interfaces |
| JP6011266B2 (ja) | 2012-11-19 | 2016-10-19 | ブラザー工業株式会社 | 通信中継プログラム、通信中継方法、情報処理装置及び画像処理装置 |
-
2012
- 2012-11-19 JP JP2012253270A patent/JP6155607B2/ja active Active
-
2013
- 2013-11-19 US US14/083,497 patent/US9734437B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US20140139878A1 (en) | 2014-05-22 |
| US9734437B2 (en) | 2017-08-15 |
| JP2014102620A (ja) | 2014-06-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6155607B2 (ja) | 通信中継プログラム、及び、通信中継装置 | |
| JP6167502B2 (ja) | 通信中継プログラム、通信中継装置、及び、画像処理装置 | |
| JP6011266B2 (ja) | 通信中継プログラム、通信中継方法、情報処理装置及び画像処理装置 | |
| JP7059752B2 (ja) | アプリケーションプログラム | |
| JP6011167B2 (ja) | 通信中継プログラム、及び、通信中継装置 | |
| JP6075010B2 (ja) | 通信中継プログラム、及び、画像処理装置 | |
| JP6142511B2 (ja) | 通信中継プログラム、通信中継装置、及び、画像処理装置 | |
| JP2008027128A (ja) | デバイス管理システム、管理装置、プログラム。 | |
| CN102597974B (zh) | 装置控制设备、客户端设备、装置控制方法和装置控制系统 | |
| JP6714839B2 (ja) | 印刷システム、印刷管理サーバ、通信中継装置およびプログラム | |
| JP2005218036A (ja) | ネットワークサーバ | |
| JP2019179311A (ja) | アプリケーションプログラム | |
| JP2017170826A (ja) | 画像処理装置、制御方法、プログラム | |
| JP2012064091A (ja) | 情報処理システム、情報処理装置、及びプログラム | |
| JP2016083870A (ja) | 画像形成装置及びその制御方法、システム | |
| JP2008097587A (ja) | クライアント装置、ネットワークシステムおよびプログラム | |
| JP5974364B2 (ja) | デバイス制御装置、デバイス装置、制御方法および制御プログラム | |
| JP2007213501A (ja) | 文書処理装置、文書処理システムおよび文書ファイルのデータ構造 | |
| JP4710468B2 (ja) | 印刷要求装置、印刷システムおよび印刷要求方法 | |
| JP2005148953A (ja) | 情報処理装置、周辺装置制御システム及び情報処理装置に適用される周辺装置制御方法並びにそのプログラム | |
| JP7236243B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
| JP2012252411A (ja) | 選択プログラム、画像処理装置、及び、コンピュータ | |
| JP7676884B2 (ja) | 通信ユニットおよび印刷システム | |
| JP5174126B2 (ja) | 情報処理装置及びクライアント装置 | |
| JP4857211B2 (ja) | 画像形成装置、分散印刷システム、分散印刷方法、プログラムおよび記録媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20140409 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150930 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160826 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160906 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20161101 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161202 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170310 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170420 |
|
| 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: 20170509 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170522 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6155607 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |