JP4231241B2 - Network communication - Google Patents

Network communication Download PDF

Info

Publication number
JP4231241B2
JP4231241B2 JP2002155159A JP2002155159A JP4231241B2 JP 4231241 B2 JP4231241 B2 JP 4231241B2 JP 2002155159 A JP2002155159 A JP 2002155159A JP 2002155159 A JP2002155159 A JP 2002155159A JP 4231241 B2 JP4231241 B2 JP 4231241B2
Authority
JP
Japan
Prior art keywords
request
response
identifier
client
server computer
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.)
Expired - Fee Related
Application number
JP2002155159A
Other languages
Japanese (ja)
Other versions
JP2003345743A5 (en
JP2003345743A (en
Inventor
智明 桑原
康児 秋吉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2002155159A priority Critical patent/JP4231241B2/en
Publication of JP2003345743A publication Critical patent/JP2003345743A/en
Publication of JP2003345743A5 publication Critical patent/JP2003345743A5/ja
Application granted granted Critical
Publication of JP4231241B2 publication Critical patent/JP4231241B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、クライアントとサーバコンピュータ(以下、単にサーバとも言う)間の通信に関する。
【0002】
【従来の技術】
従来、ネットワークを介してクライアントとWebサーバが通信を行う場合、クライアントは既に発行したリクエストに対応するレスポンスの受信を待って次のリクエストを発行していた。ただし、単純なHTML文書の閲覧等の目的では、サーバからレスポンスを待たずに次のリクエストを送信する場合があった。このような目的では、レスポンスを待たずに次の文書を取得するリクエストを発行してもユーザに何ら不都合はないからである。
【0003】
【発明が解決しようとする課題】
しかし、近年、Webサーバは電子商取引やメール配信サービスといった種々のサービスをクライアントに提供することが可能となっている。このようなサービスの提供を受ける場合、クライアントは送信したリクエストと、そのリクエストに対するサーバからのレスポンスを厳密に対応付けなければならい。ユーザに不測の損害を与えないためである。そのため、クライアントはサーバからのレスポンスがあるまで次のリクエストを送信することができなかった。
【0004】
本発明は上記課題に鑑みなされたものであり、連続してリクエストを送信してもレスポンスとの対応付けが適切に行われる技術の提供を目的としている。
【0005】
【課題を解決するための手段およびその作用・効果】
上述の課題を解決するため、本発明を次のように構成した。すなわち、
ネットワークを介して接続され、印刷ジョブが蓄積されたサーバコンピュータからHTTPプロトコルを用いて印刷ジョブを取得し、自身に接続されたプリンタを用いて印刷を行うクライアントであって、
前記HTTPプロトコルの書式に従って印刷に関するリクエストを生成するとともに、少なくとも前記サーバコンピュータからのレスポンスが未了のリクエストを識別するための第1の識別子を前記リクエストのボディ部に付与するリクエスト生成部と、
前記リクエストを前記サーバコンピュータに送信するリクエスト送信部と、
前記HTTPプロトコルの書式に従うレスポンスのボディ部に第2の識別子が付与されたレスポンスを前記サーバコンピュータから受信するレスポンス受信部と、
前記第1の識別子と前記第2の識別子とに基づいて、前記レスポンスが前記リクエストに対応しているか否かを判定する識別子判定部と、
を備えることを要旨としている。
【0006】
本発明のクライアントによれば、リクエストに付与した第1の識別子と、レスポンスに付与された第2の識別子とに基づいて、リクエストとレスポンスとの対応関係を照合することができる。そのため、連続してリクエストを送信してもレスポンスとの対応付けが容易に可能となる。
【0007】
なお、前記リクエスト生成部は、対応するレスポンスが既に返信されているリクエストに対して付与した識別子と重複する識別子を新たに生成するリクエストに付与してもよい。既にレスポンスが返信されていれば、そのレスポンスに対応するリクエストと新たに生成するリクエストとを判別する必要はないからである。
【0008】
前記識別子判定部は、前記第1の識別子と前記第2の識別子とが同一である場合に前記第1の識別子と前記第2の識別子とが対応していると判定するものとしてもよい。こうすることにより、判定が容易となるからである。他にも、例えば、第1の識別子と第2の識別子とが逆数の関係にある場合や、両者の和が1あるいは0になるといった場合に対応していると判定するものとしてもよい。
【0009】
また、前記リクエスト生成部は、前記クライアントに固有の情報と、前記リクエストデータの生成順序に関連した情報とに基づき前記第1の識別子を生成することとすれば、他のクライアントが生成する識別子とも重複することのないユニークな識別子をリクエストに付与することができる。クライアントに固有の情報としては、例えば、クライアントに付与されたMACアドレスやIPアドレス、製造番号等とすることができる。また、生成順序に関連した情報としては、例えば、識別子を生成した日付・時刻、生成した識別子の通し番号などとすることができる。
【0010】
また、本発明は、上記所定のプロトコルがHTTP(Hypertext Transport Protocol)である場合に特に効果が高い。HTTPは、ファイアウォールを越えることが容易なため、例えば、本発明のクライアントをセキュアな会社内に設置した場合でも容易にインターネット上に存在するサーバにアクセスすることが可能となるからである。
【0011】
本発明は、このようなクライアントとして構成できるほか、次のようなサーバコンピュータとしても構成することができる。すなわち、
ネットワークを介して接続されたクライアントからの要求に応じて、蓄積された印刷ジョブを、HTTPプロトコルを用いて転送するサーバコンピュータであって、
前記HTTPプロトコルの書式に従うリクエストのボディ部に識別子が付与されたリクエストであって、印刷に関するリクエストを、前記クライアントから受信するリクエスト受信部と、
前記リクエストに応じたレスポンスであって、前記HTTPプロトコルの書式に従うレスポンスのボディ部に前記識別子に対応した返信用識別子を含めて、当該レスポンスを生成するレスポンス生成部と、
前記クライアントに前記レスポンスを送信するレスポンス送信部と、
を備えるサーバコンピュータである。
【0012】
本発明のサーバによれば、リクエストに応じたレスポンスを生成する際に、そのリクエストに付与された識別子に対応する返信用識別子をレスポンスに付与することとなる。従って、このようなレスポンスを受信するクライアントは、発行したリクエストと受信したレスポンスとの対応付けを適切に行うことができる。なお、レスポンス生成部は、リクエストに付与された識別子と同一の識別子を返信用識別子としてレスポンスに付与するものとすれば好適である。新たに識別子を生成する必要がないため処理を簡略化することができるからである。
【0013】
本発明は、上述したクライアントやサーバとしての態様の他、種々の態様で構成可能である。例えば、クライアントがネットワーク上に存在するサーバと所定のプロトコルを用いて通信を行う通信方法、サーバがネットワーク上に存在するクライアントと所定のプロトコルを用いて通信を行う通信方法、クライアントがネットワーク上に存在するサーバと所定のプロトコルを用いて通信を行うためのコンピュータプログラム、サーバがネットワーク上に存在するクライアントと所定のプロトコルを用いて通信を行うためのコンピュータプログラム、かかるコンピュータプログラムを記録した記録媒体等の態様である。
【0014】
ここで記録媒体としては、フレキシブルディスクやCD−ROM、DVD、光磁気ディスク、ICカード、ROMカートリッジ、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置などコンピュータが読取り可能な種々の媒体を利用できる。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態について実施例に基づき次の順序で説明する。
A.印刷システム:
B.エージェント:
C.プリント仲介サーバ:
D.通信処理:
E.効果:
F.変形例:
【0016】
A.印刷システム:
図1は、本実施例における印刷システムの概略構成を示す説明図である。印刷システム10は、主に携帯情報端末12を用いて外出先で閲覧したコンテンツを、家庭や会社のプリンタPTで印刷することを目的としたシステムである。印刷システム10を構成するコンテンツサーバ11、携帯情報端末12、プリント仲介サーバ13、クライアントPC14は、インターネットINTを介して相互に接続されている。
【0017】
以下、本システムを用いた印刷手順の大まかな流れを説明する。まず、ユーザは、ノートパソコンやPDA、携帯電話等の携帯情報端末12を用いてコンテンツサーバ11が保持する所望のコンテンツを表示する。コンテンツサーバ11は、メールの配信サービスや地図の配信サービス等といった種々のサービスをユーザに提供するサーバである。本実施例では、コンテンツサーバ11は、地図の配信サービスを行っているものとした。従って、図中の携帯情報端末12にはコンテンツサーバから配信された地図画像MIが表示されている。
【0018】
携帯情報端末12に表示された地図画像MI上には、印刷ボタンPBが配置されている。ユーザは、このボタンを押すことにより印刷ジョブをプリント仲介サーバ13に転送することができる。印刷ボタンPBは、プリント仲介サーバ13へのハイパーリンクとなっており、ユーザがこのボタンを押すことにより地図画像MIのリンク元であるコンテンツサーバのURL(Uniform Resource Locator)がプリント仲介サーバ13に転送される仕組みとなっている。なお、ここではURLが転送されることとしたが、地図画像MIの画像データそのものを転送することとしてもかまわない。
【0019】
ユーザは、外出先から帰宅し、家庭あるいは会社のコンピュータ(クライアントPC14)で上記印刷ジョブの印刷を行うために、クライアントPC14にインストールされたエージェントと呼ばれるプログラムを用いる。エージェントは、プリント仲介サーバ13へのログオン、印刷ジョブの要求/ダウンロード、プリンタへの印刷といった一連の印刷処理を行うソフトウェアである。ユーザは、エージェントを用いることにより、外出先で閲覧したコンテンツを家庭や会社のプリンタで容易に印刷することが可能となる。
【0020】
エージェントとプリント仲介サーバ13とは、プロトコルとしてHTTPを用いた通信を行う。HTTPは、ファイアウォールを容易に越えることができるという特徴がある。従って、ファイアウォールを介してインターネットに接続された企業内のコンピュータであってもエージェントを用いて容易にプリント仲介サーバ13との通信が可能となる。
【0021】
B.エージェント:
図2は、エージェントの機能ブロック図である。エージェント15は、図示するようにモジュール化された複数のプログラムにより構成されている。以下、各モジュールについて図3および図4を交えて説明する。通信制御モジュール20は、他のモジュールが発行する仮想メッセージに従ってプリント仲介サーバ13との通信を仲介するインターフェースとしての機能を備えている。「仮想メッセージ」とは、各モジュールが、プリント仲介サーバ13とあたかも直接メッセージを送受信しているかのように見せかけるために用意されたメッセージ群である。各モジュールは、この仮想メッセージを用いることにより、通信制御モジュール20の存在を意識することなくプリント仲介サーバ13にアクセスすることが可能となる。
【0022】
図3は、仮想メッセージの一例を示す表である。「RegPrinter」とは、エージェント15のプリンタ設定モジュール21が発行する仮想メッセージであり、ユーザのプリンタをプリント仲介サーバ13に登録する際に用いるメッセージである。ユーザは、エージェントにプリンタの機種名、利用可能な用紙、カラー対応であるか否かといったパラメータを入力する。するとプリンタ設定モジュール21がこれらのパラメータを引数とした「RegPrinter」メッセージを発行して、プリント仲介サーバ13にユーザが利用するプリンタを登録する。プリント仲介サーバ13で登録が成功すると、戻り値としてプリンタIDが返信される。登録台数が所定の台数を越えたり、サポートしていないプリンタであった場合には戻り値として「NG」と返信される。
【0023】
「DelPrinter」もプリンタ設定モジュール21が発行するメッセージである。これは、「RegPrinter」によってプリント仲介サーバ13に登録したプリンタを削除する際に用いるメッセージである。削除するプリンタは、プリンタIDによって指定する。プリント仲介サーバ13が削除を成功したら戻り値として「OK」が返信され、指定したプリンタが存在しなかった場合等には「NG」と返信される。
【0024】
「GetJob」は、プリンタ管理モジュール22が発行するメッセージであり、プリント仲介サーバ13から印刷ジョブを取得する際に用いるメッセージである。プリント仲介サーバ13は、このメッセージをエージェント15から受信すると、印刷ジョブをエージェント15に転送する。後述するように、プリント仲介サーバ13は印刷ジョブをすべてPDFファイルに変換する機能を備えることから、PDFファイルの実体が戻り値として返信されることとなる。もし、プリント仲介サーバ13に蓄積されていないジョブを指定してしまった場合には、「File Not Found」なるメッセージが戻り値として返信される。エージェント15は、「GetJob」によって取得したPDFファイルを、印刷処理モジュール24によって印刷を行う。
【0025】
「PrinterStatus」も、プリンタ管理モジュール22が発行するメッセージである。プリンタ管理モジュール22は、プリンタの稼動状態を監視しており、例えば、「ready(印刷可能)」や「busy(印刷不可)」といったプリンタの状態をプリント仲介サーバ13に通知する。
【0026】
「JobStatus」も、プリンタ管理モジュール22が発行するメッセージであり、「GetJob」によって取得した印刷ジョブが正常に印刷されたか否かをプリント仲介サーバ13に対して通知する際に用いるメッセージである。
【0027】
「GetModule」は、バージョン管理モジュール23が発行するメッセージであり、プリント仲介サーバ13から新しいバージョンのモジュールを取得する際に用いるメッセージである。
【0028】
エージェント管理モジュール25は、上述したプリンタ管理モジュール22およびバージョン管理モジュール23を統括管理するモジュールである。
【0029】
エージェントブラウザ26は、プリント仲介サーバ13のホームページの表示を行う。このホームページ上で、ログイン名、パスワード等を登録することにより、ユーザはユーザ登録を行う。
【0030】
次に、上述した通信制御モジュール20の詳細な構成について説明する。通信制御モジュール20は、仮想メッセージを各モジュールから受信すると、仮想メッセージキュー27に蓄積する。そして所定のタイミングで、リクエスト生成部28により仮想メッセージをHTTPリクエストに変換する。所定のタイミングとは、例えばユーザによって設定された時刻や、ダイアルアップ時にインターネットに接続されたタイミング等である。変換時には、その変換時刻とエージェント15がインストールされたコンピュータに付与されたMACアドレスとに基づきユニークなメッセージIDを生成する。そして生成したメッセージIDをHTTPリクエストのボディ部内に記録する。
【0031】
このように生成されたメッセージIDは、例えば次のようになる。
「aabbccddeeff20020416110114」
このうち、「aabbccddeeff」がMACアドレスを表し、「20020416」が日付、「110114」が時刻を表す。
【0032】
図4(a)は、このように生成されたHTTPリクエストの一例を示している。本図ではメッセージIDを簡略化して「ABC」と示している。HTTPリクエストは、ヘッダ部とボディ部とからなり、ヘッダ部には、HTTPの規格上定められた種々のコマンドが記述される。一方、ボディ部には、仮想メッセージとメッセージIDとが記録される。図の場合では、仮想メッセージとして「PrinterStatus」が記録されたことを示している。図中「ready」とあるのは、この仮想メッセージに対する引数であり、プリンタが印刷可能状態であることを示している。
【0033】
通信制御モジュール20は、リクエスト送信部29によってHTTPリクエストをプリント仲介サーバ13に送信する。このとき、リクエスト履歴保持部30に、発行したHTTPリクエストの履歴を記録する。記録されるパラメータには少なくともメッセージIDと仮想メッセージとが含まれる。
【0034】
レスポンス受信部31は、プリント仲介サーバ13が返信するHTTPレスポンスを受信する。図4(b)にHTTPレスポンスの一例を示した。HTTPレスポンスも、ヘッダ部とボディ部とにより構成されており、図示するように、ボディ部にはメッセージIDと仮想メッセージ、および仮想メッセージに対する戻り値が記録されている。図の場合では、「PrinterStatus」に対する戻り値が「OK」である旨が記録されている。すなわち、プリント仲介サーバ13が正常にプリンタの稼動状態を把握したことを表している。
【0035】
ID判定部32は、このHTTPレスポンスと、リクエスト履歴保持部に記録されたHTTPリクエストとの照合を行う。照合は、両者に付与されたメッセージIDが同一かどうかを判定することにより行う。照合した結果、同一のメッセージIDを持つHTTPリクエストがある場合、そのHTTPリクエストの変換元となった仮想メッセージを発行したモジュールに対して、HTTPレスポンスに記録された戻り値を転送する。戻り値は、戻り値転送部33により転送される。
【0036】
C.プリント仲介サーバ:
図5は、プリント仲介サーバ13の機能ブロック図である。プリント仲介サーバ13は、図示する各機能部を実現するソフトウェアを汎用のコンピュータにインストールすることにより構成されている。
【0037】
通信制御部40は、他のサーバやクライアント等との通信を司る。通信制御部40は、HTTPリクエストを受信するリクエスト受信部41と、HTTPレスポンスを送信するレスポンス送信部42とを備える。
【0038】
UI提供部43は、携帯情報端末12やクライアントPC14等からの要求に従いHTMLによるユーザインターフェースを提供する。例えば、上記エージェントブラウザ26からホームページの閲覧要求があった場合等に利用される。
【0039】
ユーザ管理部44はユーザのログインID、パスワード、利用するプリンタ等の管理を行う。エージェント15からのプリンタの登録、解除要求があった場合に設定の変更を行う。
【0040】
ジョブ格納部45には、携帯情報端末12から転送された印刷ジョブが格納されている。エージェント15から印刷ジョブの転送要求があった場合、PDF変換部46を用いて印刷ジョブをPDFファイルに変換する。格納された印刷ジョブが単にURLの場合は、そのURL先のコンテンツサーバ11からHTML文書や画像を取得してPDFファイルに変換する。
【0041】
主制御部47は、通信制御部40が受信したHTTPリクエストに応じて種々の処理を行う。HTTPリクエストにメッセージID、仮想メッセージが格納されている場合には、その仮想メッセージに応じて上述の各機能部を用いてプリンタの登録、解除、ジョブの転送等の処理を行う。処理終了後は、その処理に応じた戻り値を記録したHTTPレスポンスを生成する。HTTPレスポンス生成時には、処理対象としたHTTPリクエストに記録されたメッセージIDと同一のメッセージIDを付与する(図4(b)参照)。生成したHTTPレスポンスは、通信制御部40によってHTTPリクエストの送信元に返信する。
【0042】
なお、プリント仲介サーバ13は、上述した機能部の一部を他のサーバが代行するいわゆる分散型のシステムとして構築してもよい。例えば、PDF変換を独立した他のサーバが代行するものとしてもよいし、ユーザ管理を他のサーバが受け持つものとしてもよい。
【0043】
D.通信処理:
図6は、エージェント15とプリント仲介サーバ13とにおける通信処理のフローチャートである。まず、エージェント15は、各モジュールから仮想メッセージを受信すると(ステップS10)、仮想メッセージキューにその仮想メッセージを格納する(ステップS11)。そして所定のタイミングで順次仮想メッセージを読み出してHTTPリクエストを生成する(ステップS12)。このとき、HTTPリクエストにはメッセージIDが付与される。エージェント15は、このように生成したHTTPリクエストをプリント仲介サーバ13へ送信するとともにリクエスト履歴保持部30に送信したHTTPリクエストの履歴を記録する(ステップS13)。
【0044】
プリント仲介サーバ13は、このように送信されたHTTPリクエストを受信すると(ステップS20)、そのHTTPリクエストに記録された仮想メッセージに応じて種々の処理を行う(ステップS21)。そして、その処理結果である戻り値を記録したHTTPレスポンスを生成する(ステップS22)。このとき、処理対象としたHTTPリクエストに付与されたメッセージIDと同じメッセージIDをHTTPレスポンスに記録する。生成したHTTPレスポンスは、エージェント15に送信する(ステップS23)。
【0045】
エージェント15は、HTTPレスポンスを受信すると(ステップS14)、受信したHTTPレスポンスに記録されたメッセージIDを参照して、同一のメッセージIDが付与されたHTTPリクエストをリクエスト履歴保持部30から検索する(ステップS15)。そして、検索した結果、該当するHTTPリクエストの生成元となった仮想メッセージの発行元であるモジュールに対して、HTTPレスポンスに記録された戻り値を転送する(ステップS16)。このような処理を経ることによりエージェント15の各モジュールは、発行した仮想メッセージに対応する戻り値をプリント仲介サーバ13から適切に取得することが可能となる。
【0046】
E.効果:
図7は、エージェント15とプリント仲介サーバ13との通信例を示す説明図である。図では、メッセージIDをID1、ID2、…と示した。図中、左から右へ向かう矢印がHTTPリクエストを表し、右から左へ向かう矢印がHTTPレスポンスを表している。下向きの矢印は時間経過を表す。本実施例で説明したエージェント15とプリント仲介サーバ13によれば、エージェント15は、既に発行したHTTPリクエストに対するHTTPレスポンスを待つことなく次々にHTTPリクエストを送信することができる。HTTPリクエストとそのHTTPリクエストに対応するHTTPレスポンスとには、共通するユニークなメッセージID(ID1〜ID5)が付与されるため、図示するようにプリント仲介サーバ13から返信されるHTTPレスポンスの順序がHTTPリクエストの送信された順序と異なる場合であっても、HTTPリクエストとHTTPレスポンスとの対応を適切に照合することができる。
【0047】
F.変形例:
実施例では、エージェントは、メッセージIDをMACアドレスと時刻とに基づき生成するものとした。従って、生成するメッセージIDは、全て重複することなく唯一無比のものとなる。しかし、エージェント15は、少なくともレスポンスが返信されていないリクエストと、新たに生成するリクエストとを判別できればよい。そのため、既にレスポンスが返信されたリクエストに対して付与したメッセージIDと重複するメッセージIDを新たに生成するリクエストに付与しても差し支えない。
【0048】
図8は、重複したメッセージIDを利用した場合の通信例を示す説明図である。図示するように、エージェント15は、ID1〜ID4を付与したリクエストを送信した後、プリント仲介サーバ13からID1およびID2の付与されたレスポンスを受信している。従って、エージェントは、ID1またはID2のメッセージIDを再利用してリクエストに付与しても、他のリクエストと判別を行うことができる。図の場合では、ID1を再利用した場合を示している。このように、メッセージIDを重複して利用するものとすれば、例えば、メッセージIDを限られた数しか用いることのできないシステム等に特に有効である。
【0049】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてソフトウェアで実現した機能を、ハードウェア的に実現するものとしてもよい。また、印刷システム10以外のシステムにおけるサーバ/クライアント間の通信に用いてもよい。また、実施例では通信制御モジュールが一元的にメッセージIDを生成するものとしたが、各モジュールが生成するものとしてもよい。また、メッセージIDをHTTPリクエスト/レスポンスのボディ部に記録するものとしたが、ヘッダ部に記録するものとしてもよい。
【図面の簡単な説明】
【図1】印刷システムの概略構成を示す説明図である。
【図2】エージェントの機能ブロック図である。
【図3】仮想メッセージの一例を示す表である。
【図4】HTTPリクエストとHTTPレスポンスの一例を示す説明図である。
【図5】プリント仲介サーバの機能ブロック図である。
【図6】エージェントとプリント仲介サーバとにおける通信処理のフローチャートである。
【図7】エージェントとプリント仲介サーバとの通信例を示す説明図である。
【図8】メッセージIDを再利用した場合の通信例を示す説明図である。
【符号の説明】
10…印刷システム
11…コンテンツサーバ
12…携帯情報端末
13…プリント仲介サーバ
14…クライアントPC
15…エージェント
20…通信制御モジュール
21…プリンタ設定モジュール
22…プリンタ管理モジュール
23…バージョン管理モジュール
24…印刷処理モジュール
25…エージェント管理モジュール
26…エージェントブラウザ
27…仮想メッセージキュー
28…リクエスト生成部
29…リクエスト送信部
30…リクエスト履歴保持部
31…レスポンス受信部
32…ID判定部
33…戻り値転送部
40…通信制御部
41…リクエスト受信部
42…レスポンス送信部
43…UI提供部
44…ユーザ管理部
45…ジョブ格納部
46…PDF変換部
47…主制御部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to communication between a client and a server computer (hereinafter also simply referred to as a server) .
[0002]
[Prior art]
Conventionally, when a client communicates with a Web server via a network, the client issues a next request after receiving a response corresponding to the already issued request. However, for the purpose of browsing a simple HTML document, the next request may be transmitted without waiting for a response from the server. For this purpose, there is no inconvenience to the user even if a request for acquiring the next document is issued without waiting for a response.
[0003]
[Problems to be solved by the invention]
However, in recent years, Web servers can provide clients with various services such as electronic commerce and mail distribution services. When receiving such a service, the client must strictly associate the transmitted request with the response from the server to the request. This is to prevent unexpected damage to the user. Therefore, the client cannot send the next request until there is a response from the server.
[0004]
The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a technique in which association with a response is appropriately performed even when requests are continuously transmitted.
[0005]
[Means for solving the problems and their functions and effects]
In order to solve the above-described problems, the present invention is configured as follows. That is,
A client that is connected via a network , acquires a print job from a server computer in which the print job is stored, using an HTTP protocol, and performs printing using a printer connected to the client;
To generate a request for print I follow the format of the HTTP protocol, at least the request generating unit response from the server computer to impart a first identifier for identifying the request for unfinished the body of the request When,
A request transmitter for transmitting the request to the server computer ;
A response receiving unit that receives from the server computer a response in which a second identifier is attached to a body part of a response that conforms to the format of the HTTP protocol;
An identifier determination unit that determines whether or not the response corresponds to the request based on the first identifier and the second identifier;
The gist is to provide.
[0006]
According to the client of the present invention, the correspondence between the request and the response can be collated based on the first identifier assigned to the request and the second identifier assigned to the response. For this reason, even if requests are continuously transmitted, it is possible to easily associate them with responses.
[0007]
The request generation unit may add an identifier that overlaps with an identifier assigned to a request for which a corresponding response has already been returned to a newly generated request. This is because if a response has already been returned, there is no need to distinguish between a request corresponding to the response and a newly generated request.
[0008]
The identifier determination unit may determine that the first identifier and the second identifier correspond to each other when the first identifier and the second identifier are the same. This is because the determination is facilitated. In addition, for example, it may be determined that the first identifier and the second identifier have a reciprocal relationship or the case where the sum of the two is 1 or 0.
[0009]
In addition, if the request generation unit generates the first identifier based on information unique to the client and information related to the generation order of the request data, the request generation unit may be an identifier generated by another client. A unique identifier without duplication can be given to the request. Information unique to the client can be, for example, a MAC address, an IP address, a manufacturing number, or the like assigned to the client. The information related to the generation order may be, for example, the date / time when the identifier is generated, the serial number of the generated identifier, or the like.
[0010]
The present invention is particularly effective when the predetermined protocol is HTTP (Hypertext Transport Protocol). This is because HTTP can easily cross a firewall, and for example, even when the client of the present invention is installed in a secure company, it is possible to easily access a server existing on the Internet.
[0011]
The present invention can be configured as such a client, and can also be configured as the following server computer. That is,
A server computer that transfers an accumulated print job using a HTTP protocol in response to a request from a client connected via a network,
A request with an identifier assigned to the body part of the request according to the format of the HTTP protocol, the request receiving unit receiving a request regarding printing from the client;
A response according to the request, including a response identifier corresponding to the identifier in a response body portion according to the format of the HTTP protocol, and generating a response,
A response transmitter for transmitting the response to the client;
Is a server computer.
[0012]
According to the server of the present invention, when a response corresponding to a request is generated, a reply identifier corresponding to the identifier given to the request is given to the response. Therefore, a client that receives such a response can appropriately associate the issued request with the received response. Note that it is preferable that the response generation unit assigns the same identifier as that assigned to the request to the response as a reply identifier. This is because the process can be simplified because it is not necessary to newly generate an identifier.
[0013]
The present invention can be configured in various modes in addition to the above-described modes as a client and a server. For example, a communication method in which a client communicates with a server on the network using a predetermined protocol, a communication method in which a server communicates with a client on the network using a predetermined protocol, and the client exists on the network A computer program for communicating with a server using a predetermined protocol, a computer program for a server to communicate with a client existing on a network using a predetermined protocol, a recording medium storing such a computer program, etc. It is an aspect.
[0014]
Here, the recording medium may be a computer readable medium such as a flexible disk, a CD-ROM, a DVD, a magneto-optical disk, an IC card, a ROM cartridge, a computer internal storage device (memory such as RAM or ROM), and an external storage device. Can be used.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in the following order based on examples.
A. Printing system:
B. Agent:
C. Print mediation server:
D. Communication processing:
E. effect:
F. Variations:
[0016]
A. Printing system:
FIG. 1 is an explanatory diagram showing a schematic configuration of a printing system according to the present embodiment. The printing system 10 is a system for the purpose of printing content browsed on the go mainly using the portable information terminal 12 with a printer PT at home or company. The content server 11, the portable information terminal 12, the print mediation server 13, and the client PC 14 constituting the printing system 10 are connected to each other via the Internet INT.
[0017]
Hereinafter, a rough flow of a printing procedure using this system will be described. First, the user displays desired content held by the content server 11 using a portable information terminal 12 such as a notebook computer, PDA, or mobile phone. The content server 11 is a server that provides users with various services such as a mail distribution service and a map distribution service. In this embodiment, it is assumed that the content server 11 provides a map distribution service. Accordingly, the map image MI distributed from the content server is displayed on the portable information terminal 12 in the figure.
[0018]
On the map image MI displayed on the portable information terminal 12, a print button PB is arranged. The user can transfer the print job to the print mediation server 13 by pressing this button. The print button PB is a hyperlink to the print mediation server 13, and when the user presses this button, the URL (Uniform Resource Locator) of the content server that is the link source of the map image MI is transferred to the print mediation server 13. It is a mechanism to be done. Although the URL is transferred here, the image data of the map image MI itself may be transferred.
[0019]
The user returns home from whereabouts and uses a program called an agent installed in the client PC 14 to print the print job on a home or company computer (client PC 14). The agent is software that performs a series of printing processes such as logon to the print mediation server 13, request / download of a print job, and printing to a printer. By using the agent, the user can easily print the content browsed on the go with a home or company printer.
[0020]
The agent and the print mediation server 13 perform communication using HTTP as a protocol. HTTP has the feature that it can easily cross firewalls. Accordingly, even an in-house computer connected to the Internet via a firewall can easily communicate with the print mediation server 13 using an agent.
[0021]
B. Agent:
FIG. 2 is a functional block diagram of the agent. The agent 15 includes a plurality of programs that are modularized as illustrated. Hereinafter, each module will be described with reference to FIGS. The communication control module 20 has a function as an interface that mediates communication with the print mediation server 13 in accordance with a virtual message issued by another module. A “virtual message” is a group of messages prepared to make each module appear as if it is directly sending / receiving a message to / from the print mediation server 13. By using this virtual message, each module can access the print mediation server 13 without being aware of the presence of the communication control module 20.
[0022]
FIG. 3 is a table showing an example of a virtual message. “RegPrinter” is a virtual message issued by the printer setting module 21 of the agent 15, and is a message used when registering a user's printer in the print mediation server 13. The user inputs parameters such as the printer model name, available paper, and whether or not the printer is compatible with color. Then, the printer setting module 21 issues a “RegPrinter” message with these parameters as arguments, and registers the printer used by the user in the print mediation server 13. If the registration is successful in the print mediation server 13, a printer ID is returned as a return value. If the registered number exceeds the specified number or the printer does not support it, “NG” is returned as a return value.
[0023]
“DelPrinter” is also a message issued by the printer setting module 21. This is a message used when deleting a printer registered in the print mediation server 13 by “RegPrinter”. The printer to be deleted is designated by the printer ID. If the print mediation server 13 has successfully deleted, “OK” is returned as a return value. If the designated printer does not exist, “NG” is returned.
[0024]
“GetJob” is a message issued by the printer management module 22 and used when acquiring a print job from the print mediation server 13. When receiving this message from the agent 15, the print mediation server 13 transfers the print job to the agent 15. As will be described later, since the print mediation server 13 has a function of converting all print jobs into PDF files, the substance of the PDF file is returned as a return value. If a job that is not stored in the print mediation server 13 is specified, a message “File Not Found” is returned as a return value. The agent 15 causes the print processing module 24 to print the PDF file acquired by “GetJob”.
[0025]
“PrinterStatus” is also a message issued by the printer management module 22. The printer management module 22 monitors the operating status of the printer, and notifies the print mediation server 13 of the status of the printer such as “ready (printable)” or “busy (unprintable)”, for example.
[0026]
“JobStatus” is also a message issued by the printer management module 22 and used when notifying the print mediation server 13 whether or not the print job acquired by “GetJob” has been printed normally.
[0027]
“GetModule” is a message issued by the version management module 23 and used when acquiring a new version of the module from the print mediation server 13.
[0028]
The agent management module 25 is a module that centrally manages the printer management module 22 and the version management module 23 described above.
[0029]
The agent browser 26 displays the home page of the print mediation server 13. The user performs user registration by registering a login name, password, and the like on this home page.
[0030]
Next, a detailed configuration of the communication control module 20 described above will be described. When the communication control module 20 receives a virtual message from each module, the communication control module 20 stores it in the virtual message queue 27. At a predetermined timing, the request generation unit 28 converts the virtual message into an HTTP request. The predetermined timing is, for example, a time set by the user or a timing when connected to the Internet at the time of dial-up. At the time of conversion, a unique message ID is generated based on the conversion time and the MAC address assigned to the computer on which the agent 15 is installed. The generated message ID is recorded in the body part of the HTTP request.
[0031]
The message ID generated in this way is, for example, as follows.
"Aabbccddeeff200204416110114"
Of these, “aabbccddeeff” represents the MAC address, “20020416” represents the date, and “110114” represents the time.
[0032]
FIG. 4A shows an example of the HTTP request generated in this way. In this figure, the message ID is simplified and indicated as “ABC”. The HTTP request includes a header part and a body part, and various commands defined in the HTTP standard are described in the header part. On the other hand, a virtual message and a message ID are recorded in the body part. In the case of the figure, it indicates that “PrinterStatus” is recorded as a virtual message. In the figure, “ready” is an argument for this virtual message and indicates that the printer is in a printable state.
[0033]
The communication control module 20 transmits an HTTP request to the print mediation server 13 by the request transmission unit 29. At this time, the history of the issued HTTP request is recorded in the request history holding unit 30. The recorded parameter includes at least a message ID and a virtual message.
[0034]
The response receiving unit 31 receives an HTTP response returned from the print mediation server 13. FIG. 4B shows an example of the HTTP response. The HTTP response is also composed of a header part and a body part, and as shown in the figure, a message ID, a virtual message, and a return value for the virtual message are recorded in the body part. In the case of the figure, the fact that the return value for “PrinterStatus” is “OK” is recorded. That is, it indicates that the print mediation server 13 has normally grasped the operating state of the printer.
[0035]
The ID determination unit 32 collates this HTTP response with the HTTP request recorded in the request history holding unit. The collation is performed by determining whether or not the message IDs given to both are the same. If there is an HTTP request having the same message ID as a result of the collation, the return value recorded in the HTTP response is transferred to the module that issued the virtual message that is the conversion source of the HTTP request. The return value is transferred by the return value transfer unit 33.
[0036]
C. Print mediation server:
FIG. 5 is a functional block diagram of the print mediation server 13. The print mediation server 13 is configured by installing software for realizing each functional unit shown in a general-purpose computer.
[0037]
The communication control unit 40 manages communication with other servers and clients. The communication control unit 40 includes a request reception unit 41 that receives an HTTP request, and a response transmission unit 42 that transmits an HTTP response.
[0038]
The UI providing unit 43 provides an HTML user interface in accordance with a request from the portable information terminal 12, the client PC 14, or the like. For example, it is used when there is a homepage browsing request from the agent browser 26.
[0039]
The user management unit 44 manages user login IDs, passwords, printers to be used, and the like. When there is a printer registration / cancellation request from the agent 15, the setting is changed.
[0040]
The job storage unit 45 stores a print job transferred from the portable information terminal 12. When there is a print job transfer request from the agent 15, the PDF conversion unit 46 is used to convert the print job into a PDF file. If the stored print job is simply a URL, an HTML document or image is acquired from the content server 11 at the URL destination and converted to a PDF file.
[0041]
The main control unit 47 performs various processes according to the HTTP request received by the communication control unit 40. When a message ID and a virtual message are stored in the HTTP request, processing such as printer registration, cancellation, and job transfer is performed using the above-described functional units in accordance with the virtual message. After the process is completed, an HTTP response in which a return value corresponding to the process is recorded is generated. When generating an HTTP response, the same message ID as the message ID recorded in the HTTP request to be processed is assigned (see FIG. 4B). The generated HTTP response is returned by the communication control unit 40 to the transmission source of the HTTP request.
[0042]
Note that the print mediation server 13 may be constructed as a so-called distributed system in which a part of the functional units described above is substituted for another server. For example, another independent server may perform PDF conversion, or another server may be responsible for user management.
[0043]
D. Communication processing:
FIG. 6 is a flowchart of communication processing between the agent 15 and the print mediation server 13. First, when receiving a virtual message from each module (step S10), the agent 15 stores the virtual message in the virtual message queue (step S11). Then, the virtual messages are sequentially read at a predetermined timing to generate an HTTP request (step S12). At this time, a message ID is given to the HTTP request. The agent 15 transmits the HTTP request generated in this way to the print mediation server 13 and records the history of the HTTP request transmitted to the request history holding unit 30 (step S13).
[0044]
When the print mediation server 13 receives the HTTP request transmitted in this manner (step S20), the print mediation server 13 performs various processes according to the virtual message recorded in the HTTP request (step S21). And the HTTP response which recorded the return value which is the processing result is produced | generated (step S22). At this time, the same message ID as the message ID assigned to the HTTP request to be processed is recorded in the HTTP response. The generated HTTP response is transmitted to the agent 15 (step S23).
[0045]
When the agent 15 receives the HTTP response (step S14), the agent 15 refers to the message ID recorded in the received HTTP response and searches the request history holding unit 30 for an HTTP request to which the same message ID is assigned (step S14). S15). Then, as a result of the search, the return value recorded in the HTTP response is transferred to the module that issued the virtual message that is the generation source of the corresponding HTTP request (step S16). Through such processing, each module of the agent 15 can appropriately acquire the return value corresponding to the issued virtual message from the print mediation server 13.
[0046]
E. effect:
FIG. 7 is an explanatory diagram illustrating an example of communication between the agent 15 and the print mediation server 13. In the figure, message IDs are indicated as ID1, ID2,. In the figure, an arrow from left to right represents an HTTP request, and an arrow from right to left represents an HTTP response. A downward arrow indicates the passage of time. According to the agent 15 and the print mediation server 13 described in this embodiment, the agent 15 can transmit HTTP requests one after another without waiting for an HTTP response to an already issued HTTP request. Since a common unique message ID (ID1 to ID5) is assigned to the HTTP request and the HTTP response corresponding to the HTTP request, the order of the HTTP responses returned from the print mediation server 13 is HTTP as illustrated. Even if the request is transmitted in a different order, the correspondence between the HTTP request and the HTTP response can be appropriately verified.
[0047]
F. Variations:
In the embodiment, the agent generates the message ID based on the MAC address and time. Therefore, the message IDs to be generated are all unique without overlapping. However, the agent 15 only needs to be able to distinguish between a request for which no response is returned and a newly generated request. Therefore, a message ID that overlaps the message ID assigned to the request for which a response has already been returned may be assigned to a newly generated request.
[0048]
FIG. 8 is an explanatory diagram showing an example of communication when duplicate message IDs are used. As shown in the figure, the agent 15 receives a response with ID1 and ID2 from the print mediation server 13 after transmitting a request with ID1 to ID4. Therefore, the agent can discriminate from other requests even if the message ID of ID1 or ID2 is reused and added to the request. In the case of the figure, the case where ID1 is reused is shown. As described above, if message IDs are used redundantly, for example, it is particularly effective for a system or the like that can use only a limited number of message IDs.
[0049]
As mentioned above, although the various Example of this invention was described, it cannot be overemphasized that this invention is not limited to these Examples, and can take a various structure in the range which does not deviate from the meaning. For example, the functions realized by software in the embodiments may be realized by hardware. Further, it may be used for communication between a server and a client in a system other than the printing system 10. In the embodiment, the communication control module generates the message ID in a unified manner, but each module may generate the message ID. In addition, although the message ID is recorded in the body part of the HTTP request / response, it may be recorded in the header part.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram illustrating a schematic configuration of a printing system.
FIG. 2 is a functional block diagram of an agent.
FIG. 3 is a table showing an example of a virtual message.
FIG. 4 is an explanatory diagram illustrating an example of an HTTP request and an HTTP response.
FIG. 5 is a functional block diagram of a print mediation server.
FIG. 6 is a flowchart of communication processing between an agent and a print mediation server.
FIG. 7 is an explanatory diagram illustrating an example of communication between an agent and a print mediation server.
FIG. 8 is an explanatory diagram illustrating an example of communication when a message ID is reused.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 ... Printing system 11 ... Content server 12 ... Portable information terminal 13 ... Print mediation server 14 ... Client PC
DESCRIPTION OF SYMBOLS 15 ... Agent 20 ... Communication control module 21 ... Printer setting module 22 ... Printer management module 23 ... Version management module 24 ... Print processing module 25 ... Agent management module 26 ... Agent browser 27 ... Virtual message queue 28 ... Request generation part 29 ... Request Transmission unit 30 ... Request history holding unit 31 ... Response reception unit 32 ... ID determination unit 33 ... Return value transfer unit 40 ... Communication control unit 41 ... Request reception unit 42 ... Response transmission unit 43 ... UI providing unit 44 ... User management unit 45 ... Job storage unit 46 ... PDF conversion unit 47 ... Main control unit

Claims (9)

ネットワークを介して接続され、印刷ジョブが蓄積されたサーバコンピュータからHTTPプロトコルを用いて印刷ジョブを取得し、自身に接続されたプリンタを用いて印刷を行うクライアントであって、
前記HTTPプロトコルの書式に従って印刷に関するリクエストを生成するとともに、少なくとも前記サーバコンピュータからのレスポンスが未了のリクエストを識別するための第1の識別子を前記リクエストのボディ部に付与するリクエスト生成部と、
前記リクエストを前記サーバコンピュータに送信するリクエスト送信部と、
前記HTTPプロトコルの書式に従うレスポンスのボディ部に第2の識別子が付与されたレスポンスを前記サーバコンピュータから受信するレスポンス受信部と、
前記第1の識別子と前記第2の識別子とに基づいて、前記レスポンスが前記リクエストに対応しているか否かを判定する識別子判定部と、
を備えるクライアント。
A client that is connected via a network , acquires a print job from a server computer in which the print job is stored, using an HTTP protocol, and performs printing using a printer connected to the client;
To generate a request for print I follow the format of the HTTP protocol, at least the request generating unit response from the server computer to impart a first identifier for identifying the request for unfinished the body of the request When,
A request transmitter for transmitting the request to the server computer ;
A response receiving unit that receives from the server computer a response in which a second identifier is attached to a body part of a response that conforms to the format of the HTTP protocol;
An identifier determination unit that determines whether or not the response corresponds to the request based on the first identifier and the second identifier;
With client.
請求項1に記載のクライアントであって、
前記識別子判定部は、前記第1の識別子と前記第2の識別子とが同一である場合に前記第1の識別子と前記第2の識別子とが対応していると判定するクライアント。
The client of claim 1,
The identifier determining unit determines that the first identifier and the second identifier correspond to each other when the first identifier and the second identifier are the same.
請求項1に記載のクライアントであって、
前記リクエスト生成部は、前記クライアントに固有の情報と、前記リクエストの生成順序に関連した情報とに基づき前記第1の識別子を生成するクライアント。
The client of claim 1,
The request generation unit is a client that generates the first identifier based on information unique to the client and information related to a generation order of the requests.
ネットワークを介して接続されたクライアントからの要求に応じて、蓄積された印刷ジョブを、HTTPプロトコルを用いて転送するサーバコンピュータであって、
前記HTTPプロトコルの書式に従うリクエストのボディ部に識別子が付与されたリクエストであって、印刷に関するリクエストを、前記クライアントから受信するリクエスト受信部と、
前記リクエストに応じたレスポンスであって、前記HTTPプロトコルの書式に従うレスポンスのボディ部に前記識別子に対応した返信用識別子を含めて、当該レスポンスを生成するレスポンス生成部と、
前記クライアントに前記レスポンスを送信するレスポンス送信部と、
を備えるサーバコンピュータ。
A server computer that transfers an accumulated print job using a HTTP protocol in response to a request from a client connected via a network,
A request with an identifier assigned to the body part of the request according to the format of the HTTP protocol, the request receiving unit receiving a request regarding printing from the client;
A response according to the request, including a response identifier corresponding to the identifier in a response body portion according to the format of the HTTP protocol, and generating a response,
A response transmitter for transmitting the response to the client;
A server computer comprising:
ネットワークを介して接続され、印刷ジョブが蓄積されたサーバコンピュータからHTTPプロトコルを用いて印刷ジョブを取得し、自身に接続されたプリンタを用いて印刷を行うクライアントが前記サーバコンピュータと通信を行う通信方法であって、
(a) 前記HTTPプロトコルの書式に従って印刷に関するリクエストを生成するとともに、少なくとも前記サーバコンピュータからのレスポンスが未了のリクエストを識別するための第1の識別子を前記リクエストのボディ部に付与する工程と、
(b) 前記リクエストを前記サーバコンピュータに送信する工程と、
(c) 前記HTTPプロトコルの書式に従うレスポンスのボディ部に第2の識別子が付与されたレスポンスを前記サーバコンピュータから受信する工程と、
(d) 前記第1の識別子と前記第2の識別子とに基づいて、前記レスポンスが前記リクエストに対応しているか否かを判定する工程と、
を含む通信方法。
A communication method for acquiring a print job using a HTTP protocol from a server computer connected via a network and storing the print job, and for a client performing printing using a printer connected to the server computer to communicate with the server computer Because
(A) to generate a request for print I follow the format of the HTTP protocol, a response from at least the server computer to impart a first identifier for identifying the request for unfinished the body of the request Process,
(B) transmitting the request to the server computer;
(C) receiving from the server computer a response in which a second identifier is assigned to a body part of the response according to the format of the HTTP protocol;
(D) determining whether the response corresponds to the request based on the first identifier and the second identifier;
Including a communication method.
ネットワークを介して接続されたクライアントからの要求に応じて、蓄積された印刷ジョブを、HTTPプロトコルを用いて転送するサーバコンピュータが前記クライアントと通信を行う通信方法であって、
(a) 前記HTTPプロトコルの書式に従うリクエストのボディ部に識別子が付与されたリクエストであって、印刷に関するリクエストを、前記クライアントから受信する工程と、
(b) 前記リクエストに応じたレスポンスであって、前記HTTPプロトコルの書式に従うレスポンスのボディ部に前記識別子に対応した返信用識別子を含めて、当該レスポンスを生成する工程と、
(c) 前記クライアントに前記レスポンスを送信する工程と、
を含む通信方法。
A communication method in which a server computer that transfers an accumulated print job using a HTTP protocol in response to a request from a client connected via a network communicates with the client .
(A) a request in which an identifier is given to a body part of a request according to the format of the HTTP protocol, and a request regarding printing is received from the client;
(B) a response corresponding to the request, including a reply identifier corresponding to the identifier in a body part of the response according to the format of the HTTP protocol, and generating the response;
(C) sending the response to the client;
Including a communication method.
ネットワークを介して接続され、印刷ジョブが蓄積されたサーバコンピュータからHTTPプロトコルを用いて印刷ジョブを取得し、自身に接続されたプリンタを用いて印刷を行うクライアントが前記サーバコンピュータと通信を行うためのコンピュータプログラムであって、
前記HTTPプロトコルの書式に従って印刷に関するリクエストを生成するとともに、少なくとも前記サーバコンピュータからのレスポンスが未了のリクエストを識別するための第1の識別子を前記リクエストのボディ部に付与する機能と、
前記リクエストを前記サーバコンピュータに送信する機能と、
前記HTTPプロトコルの書式に従うレスポンスのボディ部に第2の識別子が付与されたレスポンスを前記サーバコンピュータから受信する機能と、
前記第1の識別子と前記第2の識別子とに基づいて、前記レスポンスが前記リクエストに対応しているか否かを判定する機能と、
をコンピュータに実現させるためのコンピュータプログラム。
A client connected via a network , obtains a print job using a HTTP protocol from a server computer in which the print job is stored, and a client that performs printing using a printer connected to the server computer communicates with the server computer A computer program,
To generate a request for print I follow the format of the HTTP protocol, a function of imparting a first identifier for a response from at least the server computer to identify a request for unfinished body portion of the request,
A function of transmitting the request to the server computer;
A function of receiving from the server computer a response in which a second identifier is assigned to the body part of the response according to the HTTP protocol format;
A function for determining whether or not the response corresponds to the request based on the first identifier and the second identifier;
A computer program for realizing a computer.
ネットワークを介して接続されたクライアントからの要求に応じて、蓄積された印刷ジョブを、HTTPプロトコルを用いて転送するサーバコンピュータが前記クライアントと通信を行うためのコンピュータプログラムであって、
前記HTTPプロトコルの書式に従うリクエストのボディ部に識別子が付与されたリクエストであって、印刷に関するリクエストを、前記クライアントから受信する機能と、
前記リクエストに応じたレスポンスであって、前記HTTPプロトコルの書式に従うレスポンスのボディ部に前記識別子に対応した返信用識別子を含めて、当該レスポンスを生成する機能と、
前記クライアントに前記レスポンスを送信する機能と、
をコンピュータに実現させるためのコンピュータプログラム。
A computer program for communicating with a client by a server computer that transfers an accumulated print job using a HTTP protocol in response to a request from a client connected via a network,
A function in which an identifier is given to a body part of a request according to the format of the HTTP protocol, and a request for printing is received from the client;
A response corresponding to the request, including a reply identifier corresponding to the identifier in a response body part according to the format of the HTTP protocol, and generating the response;
A function of transmitting the response to the client;
A computer program for realizing a computer.
請求項7または8に記載のコンピュータプログラムをコンピュータ読取可能に記録した記録媒体。Recording medium the computer program and computer readable recording according to claim 7 or 8.
JP2002155159A 2002-05-29 2002-05-29 Network communication Expired - Fee Related JP4231241B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002155159A JP4231241B2 (en) 2002-05-29 2002-05-29 Network communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002155159A JP4231241B2 (en) 2002-05-29 2002-05-29 Network communication

Publications (3)

Publication Number Publication Date
JP2003345743A JP2003345743A (en) 2003-12-05
JP2003345743A5 JP2003345743A5 (en) 2005-03-03
JP4231241B2 true JP4231241B2 (en) 2009-02-25

Family

ID=29771742

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002155159A Expired - Fee Related JP4231241B2 (en) 2002-05-29 2002-05-29 Network communication

Country Status (1)

Country Link
JP (1) JP4231241B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917443A (en) * 2005-08-19 2007-02-21 华为技术有限公司 Process method for realizing interaction between control message and response message
JP4760234B2 (en) * 2005-08-31 2011-08-31 ソニー株式会社 License acquisition apparatus and license acquisition method
JP4760232B2 (en) * 2005-08-31 2011-08-31 ソニー株式会社 Time setting device and time setting method
JP4760233B2 (en) * 2005-08-31 2011-08-31 ソニー株式会社 Group registration device, group registration method, group registration release device, and group registration release method
US20090151006A1 (en) * 2005-08-31 2009-06-11 Sony Corporation Group registration device, group registration release device, group registration method, license acquisition device, license acquisition method, time setting device, and time setting method
JP6680060B2 (en) * 2016-04-18 2020-04-15 セイコーエプソン株式会社 Print control device and print control program

Also Published As

Publication number Publication date
JP2003345743A (en) 2003-12-05

Similar Documents

Publication Publication Date Title
US20200412911A1 (en) Data processing system, data processing apparatus, and data processing method for transferring image data to an output destination
US9354828B2 (en) Print system, print server, control method thereof, and program
US7562217B2 (en) Web service provider and authentication service provider
US9065939B2 (en) Printing management system using correspondence between user identification information of an information system and user identification information of a printing system
JP5703791B2 (en) Printing system and printer
JP4045798B2 (en) Printing system
US20100134818A1 (en) Data processing apparatus, printer network system, data processing method, and computer-readable recording medium thereof
US8988706B2 (en) Printer data collection cable
JP2008071154A (en) Program and layout plan forming device
US7970866B2 (en) Print system including application server to select printer driver for client specific print information
US20150022847A1 (en) Information processing system, method of processing information, program, and recording medium
US20150009539A1 (en) Information processing method, information processing apparatus and program
JP2005278144A (en) Communication device, service providing method, service providing program, and storage medium
KR100547117B1 (en) Method and apparatus for remote control a network electron device
JP4231241B2 (en) Network communication
JP7052497B2 (en) Information processing systems, information processing equipment, information processing methods, and programs
US20050097074A1 (en) Built-in apparatus, HTTP request distribution method, recording medium for storing implementation program and Web system
JP4001047B2 (en) Relay device
US20080174804A1 (en) Method and System for Transmitting Print Information Between A Client and A Server Over A Wide Area Network
JP5884884B2 (en) Data processing apparatus, printing system, data processing method, program, and recording medium
JP5935384B2 (en) Printing apparatus management apparatus, printing apparatus management system, and program
US11836404B2 (en) Print management system and method for managing settings for a print apparatus and registers the print apparatus associated with an account and further transmits first setting information to the print apparatus if the print apparatus is registered
JP6477929B2 (en) Information processing system, information processing apparatus, information processing method, and program
JP2003054084A (en) Network apparatus
JP2002108587A (en) System for managing number of sheets for printing

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040330

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20040330

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20040421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040810

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041006

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041109

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081205

R150 Certificate of patent or registration of utility model

Ref document number: 4231241

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees