(57)【要約】【課題】データ処理装置における処理中断の理由をユーザーに報知する。【解決手段】データ処理装置からの処理データのＨＴＴＰ接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理部と、前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記ＨＴＴＰ接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記ＨＴＴＰ接続を切断する切断処理部と、前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存部と、保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知部と、を備える。【選択図】図２
2013061836.tif 000002
【特許請求の範囲】
【請求項１】
データ処理装置からの処理データのＨＴＴＰ接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理部と、
前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記ＨＴＴＰ接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記ＨＴＴＰ接続を切断する切断処理部と、
前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存部と、
保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知部と、
を備えるサーバー。
【請求項２】
前記データ処理装置としての印刷装置であって特定の前記印刷装置に割り当てられた電子メールアドレス宛の電子メールを受信する電子メール受信部と、
受信した前記電子メールに基づいて前記処理データとしての印刷データを生成する印刷データ生成部と、
前記印刷データに関する印刷ジョブの存在を前記ＨＴＴＰ接続とは別の接続としてのＸＭＰＰ接続で前記印刷装置に通知する印刷ジョブ通知部と、
を備え、
前記保存部は、前記印刷装置と前記印刷ジョブとに対応付けて前記エラー情報を保存し、
前記報知部は、保存された前記エラー情報に基づいて、前記印刷装置における前記印刷ジョブが前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する、
請求項１に記載のサーバー。
【請求項３】
ＨＴＴＰ接続でサーバーに対して処理データの送信要求を行う要求部と、
前記送信要求に応じて前記サーバーから前記ＨＴＴＰ接続で送信された前記処理データを受信する受信部と、
受信した前記処理データを順次取得し、当該処理データを用いて処理を行う処理部と、
前記処理データを用いた前記処理を完了する前にエラーが発生した場合に、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記ＨＴＴＰ接続とは別の接続で前記サーバーに通知する通知部と、
を備えるデータ処理装置。
【請求項４】
データ処理装置からの処理データのＨＴＴＰ接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理工程と、
前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記ＨＴＴＰ接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記ＨＴＴＰ接続を切断する切断処理工程と、
前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存工程と、
保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知工程と、
を含むサーバーのデータ処理方法。
【請求項５】
ＨＴＴＰ接続でサーバーに対して処理データの送信要求を行う要求工程と、
前記送信要求に応じて前記サーバーから前記ＨＴＴＰ接続で送信された前記処理データを受信する受信工程と、
受信した前記処理データを順次取得し、当該処理データを用いて処理を行う処理工程と、
前記処理データを用いた前記処理を完了する前にエラーが発生した場合に、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記ＨＴＴＰ接続とは別の接続で前記サーバーに通知する通知工程と、
を含むデータ処理装置のデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバー、データ処理装置、データ処理方法に関し、クラウドコンピューティングシステムにおいてユーザーからサーバー経由で取得した要求に応じて処理を実行する技術に関する。
【背景技術】
【０００２】
従来、電子メールの送信によって特定のプリンターに印刷を実行させることができるサービスを提供するクラウドコンピューティングシステムが知られている（例えば特許文献１）。このクラウドコンピューティングシステム（以下，単に印刷システムという）は、特定の電子メールを受信すると電子メールに基づいて特定のプリンターに対応した印刷データを生成するサーバーを備え、サーバーに登録されている特定のプリンターはサーバーから印刷データを取得して印刷を実行する。したがって印刷システムの利用者は、ＰＣ（Personal Computer）、スマートフォン等のクライアント端末にプリンタードライバーがインストールされていない場合であっても、印刷システムに登録されているプリンターを利用することが可能になる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−７１２５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このような印刷システムにおいては、ユーザーが送信した電子メールに基づいてサーバーが印刷データを生成し、プリンターに対して印刷ジョブの存在を通知し、通知を受けたプリンターはサーバーに対して印刷データの送信要求を行って印刷データを取得しながら印刷を実行している。プリンターが搭載しているメモリサイズにはコストの観点から制限があるので、印刷が終了した部分の印刷データについてはメモリから破棄し次に処理すべき部分の印刷データのためにメモリ領域を確保する。このようにプリンターは、印刷データを取得しながら印刷を行うため、印刷データの取得途中でプリンターにおいてエラーが発生した場合、印刷を続行することができないため印刷データをメモリから破棄することができず、メモリが未処理の印刷データでやがて満杯になり後続して送信された印刷データを受信できない状態となる。
【０００５】
プリンターにおいてエラーが発生した場合、従来はエラーが発生したため印刷を終了するという動作となっており、エラー発生後の動作については特に考慮されていない。この印刷システムのユーザーはプリンターから離れた遠隔地から電子メールを送信することによってプリンターを利用することも想定されるため、従来の場合は遠隔地にいるユーザーは印刷が途中で終了した理由について知ることができなかった。
本発明は、上記課題にかんがみてなされたもので、データ処理装置における処理中断の理由をユーザーに報知することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するためのサーバーは、要求処理部と、切断処理部と、保存部と、報知部と、を備える。要求処理部は、データ処理装置からの処理データのＨＴＴＰ接続での送信要求に応じて処理データをデータ処理装置に送信する。切断処理部は、処理データを用いた処理をデータ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記ＨＴＴＰ接続とは別の接続でデータ処理装置から通知されたことに応じて、前記ＨＴＴＰ接続を切断する。保存部は、エラー情報を、データ処理装置と前記処理とに対応付けて保存する。報知部は、保存されたエラー情報に基づいて、データ処理装置の処理がエラーによって中断したことと当該エラーの内容とをユーザーに報知する。報知部に関しては、サーバーを介してユーザーに報知することができればよく、報知の態様は特に限定されない。
【０００７】
ユーザーはサーバーの報知部を利用することにより、データ処理装置から離れた遠隔地からであってもデータ処理装置における処理中断の原因となったエラーについて認識することができる。また、処理データの送信に使用されるＨＴＴＰ接続をエラー情報の通知に応じて切断することにより、ＨＴＴＰ接続を維持するためにサーバーにかかる負荷を早期に解消することができる。なお、「前記ＨＴＴＰ接続とは別の接続」とは、処理データの送信要求や当該送信要求に応じた処理データの送信を行うＨＴＴＰ接続とは別に確立されるＨＴＴＰ接続であってもよい。あるいは、データ処理装置から任意のタイミングでサーバーへ任意の情報を送信することができれば、別のプロトコルを用いた接続でもよい。
【０００８】
上記目的を達成するためのサーバーにおいては、さらに、電子メール受信部と、印刷データ生成部と、印刷ジョブ通知部と、を備えても良い。電子メール受信部は、データ処理装置としての印刷装置であって特定の印刷装置に割り当てられた電子メールアドレス宛の電子メールを受信する。印刷データ生成部は、受信した電子メールに基づいて処理データとしての印刷データを生成する。印刷ジョブ通知部は、生成された印刷データを含む印刷ジョブの存在を前記ＨＴＴＰ接続とは別の接続としてのＸＭＰＰ接続で印刷装置に通知する。サーバーが電子メール受信部と印刷データ生成部と印刷ジョブ通知部とをさらに備える場合に、保存部は、印刷装置と印刷ジョブとに対応付けてエラー情報を保存し、報知部は、保存されたエラー情報に基づいて、印刷装置における印刷ジョブがエラーによって中断したことと当該エラーの内容とをユーザーに報知するようにしてもよい。
【０００９】
印刷装置に割り当てられた電子メールアドレス宛に送信された電子メールに基づいて生成した印刷データに対応する印刷ジョブの存在を通知するために印刷装置との間で確立されているＸＭＰＰ接続を利用して、エラー情報の通知を受け付けることにより、このＸＭＰＰ接続とも前述のＨＴＴＰ接続とも違う別の接続を印刷装置との間に新たに確立してエラー情報の通知を受け付ける場合と比較して、サーバーおよび印刷装置の両方における新たな接続確立のための処理負担を軽減できる。
【００１０】
上記目的を達成するためのデータ処理装置は、要求部と、受信部と、処理部と、通知部と、を備える。要求部は、ＨＴＴＰ接続でサーバーに対して処理データの送信要求を行う。受信部は、送信要求に応じてサーバーから前記ＨＴＴＰ接続で送信された処理データを受信する。処理部は、受信した処理データを順次取得し、当該処理データを用いて処理を行う。通知部は、処理データを用いた処理を完了する前にエラーが発生した場合に、エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記ＨＴＴＰ接続とは別の接続でサーバーに通知する。
【００１１】
データ処理装置がこのような構成を採用していることにより、エラーが発生した場合にサーバーにエラー情報を通知することができる。その結果、処理データの送信に用いられているＨＴＴＰ接続であってエラー発生により処理データの受信を続行できないＨＴＴＰ接続の切断をサーバーに促すことができる。サーバーはエラー情報の通知に応じてＨＴＴＰ接続を切断することにより、ＨＴＴＰ接続を維持するためにサーバーにかかる負荷を早期に解消することができる。また、ユーザーに対してエラーについて報知するための情報（エラー情報）をサーバーに受け渡すことができる。
【００１２】
なお、請求項に記載された各手段の機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら各手段の機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。また、サーバーは１台のコンピューター装置からなる構成に限らず、複数のコンピューター装置が協働して上述のサーバーとして動作する構成も含む。さらに、本発明は方法としても、コンピュータープログラムとしても、そのプログラムの記録媒体としても成立する。むろん、そのコンピュータープログラムの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体であってもよい。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態にかかる印刷システムを示すブロック図。
【図２】本発明の実施形態にかかる印刷シーケンスのシーケンスチャート。
【図３】第一実施形態にかかる接続を示す模式図。
【図４】第一実施形態にかかるエラー情報の報知例を示す模式図。
【図５】他の実施形態にかかる接続を示す模式図。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を添付図面を参照しながら説明する。尚、各図において対応する構成要素には同一の符号が付され、重複する説明は省略される。
【００１５】
１．第一実施形態
１−１．構成
図１は、本実施形態におけるプリンター（データ処理装置、印刷装置に相当する）３とサーバー２とを含む印刷システム全体の構成を示すブロック図である。図１に示す印刷システムは、サーバー２に登録された複数のプリンターのそれぞれに対応付けられた電子メールアドレスを宛先とする電子メールを任意の通信端末１から送信すると、宛先の電子メールアドレスに対応付けられたプリンター３において電子メールの添付ファイルや本文が印刷される機能を実現する。サーバー２、プリンター３、通信端末１はインターネット４に接続される。
【００１６】
サーバー２は１以上のコンピューターによって構成され、アプリケーションサーバー２１，ＳＭＴＰサーバー２２，ＨＴＴＰサーバー２３，ＸＭＰＰサーバー２４，ＨＴＴＰサーバー２５を含む。アプリケーションサーバー２１，ＳＭＴＰサーバー２２，ＨＴＴＰサーバー２３，ＸＭＰＰサーバー２４，ＨＴＴＰサーバー２５のそれぞれは、図示しないＣＰＵとＲＡＭとＲＯＭとハードディスク装置と通信部とそれらを接続する内部インターフェースとを備えている。通信部はインターネットからＬＡＮを経由して受信する信号をプロトコルに従って変換して内部バスに送出し、内部バスから取り込んだ信号をプロトコルに従って変換してＬＡＮを経由してインターネットに送出する。サーバー２に含まれる各サーバーはＬＡＮに接続され互いに通信が可能である。
【００１７】
ＳＭＴＰサーバー２２は、アプリケーションサーバー２１に登録されたプリンター３に割り当てられた電子メールアドレス宛の電子メールをＳＭＴＰ（Simple Mail Transfer Protocol）に基づいて送受信する機能を有し、「電子メール受信部」として機能する。ＨＴＴＰサーバー２３はプリンター３とＨＴＴＰ（Hyper Text Transfer Protocol）に基づいて通信する機能を有し、印刷データ（処理データ）をプリンター３に送信する「要求処理部」として機能する。またＨＴＴＰサーバー２３は、プリンター３から送信された後述するエラー情報に基づいてプリンター３とのＨＴＴＰ接続を切断する機能を有し、「切断処理部」としても機能する。ＸＭＰＰサーバー２４はプリンター３とＸＭＰＰ（Extensible Messaging and Presence Protocol）に基づいて通信する機能を有し、プリンター３に印刷ジョブ有り通知を送信する「印刷ジョブ通知部」として機能する。
【００１８】
アプリケーションサーバー２１は、ＳＭＴＰに基づいて電子メールを受信すると、当該電子メールに基づいて対応するプリンター３に応じた印刷データを生成し（「印刷データ生成部」に相当）、ＸＭＰＰに基づいて対応するプリンター３に印刷ジョブ有り通知を送信し、生成した印刷データをプリンター３からのＨＴＴＰに基づいた送信要求に応じてプリンター３に送信する機能を有する。また、アプリケーションサーバー２１は、プリンター３に対応する内部ＩＤと対応付けて、プリンター３に対応する電子メールアドレスやＸＭＰＰログインパスワードや管理ページのＵＲＬや管理ページのパスワードを保存し管理する機能を有する。さらにアプリケーションサーバー２１は、プリンター３に要求した印刷ジョブごとに、印刷ジョブのステータスや、印刷ジョブに対応する各種の属性情報を保存する機能を有しており、「保存部」としても機能する。印刷ジョブのステータスは印刷ジョブの実行状況を示す情報であり、プリンター３における各種のエラー発生時にプリンター３から通知されたエラー情報や、印刷終了時にプリンター３から通知された情報等に基づいて更新される。より具体的には例えば、印刷ジョブのステータスは、アプリケーションサーバー２１の履歴記録データベースに履歴情報として追加される。なお、各種のエラーとは例えば、印刷用紙やＯＨＰシート等の印刷媒体がなくなったことを示すエラーや、インク等の着色剤がなくなったことを示すエラーや、紙詰まりエラーなどである。このようなエラーの内容を示す情報も履歴情報に追加され記憶される。管理ページとは、プリンターごとに記憶されているこれらの情報をユーザーが閲覧したり編集したりするためのＷＥＢページである。本実施形態では特に、プリンター３に対して要求した印刷ジョブごとに、そのステータスをユーザー（閲覧者）に報知する（エラーが発生した印刷ジョブに関してはそのエラーの内容も報知する）ためのＷＥＢページについて説明する。ＨＴＴＰサーバー２５は、この管理ページを表示するための表示データを生成し公開する機能を有し、「報知部」として機能する。
【００１９】
プリンター３は、サーバー２とのＸＭＰＰを用いた常時接続によってサーバー２から印刷ジョブ有り通知を通知されると、ＨＴＴＰを用いて印刷データをサーバー２から受信し、印刷を実行する機能を有する。したがってプリンター３は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を備えたコントローラー３１、印刷部３５等の通常のプリンターの構成要素に加えて、インターネット４を介して各種のデータを送受信するための通信部３４を備えている。通信部３４はインターネット４からＬＡＮを経由して受信する信号をプロトコルに従って変換して内部バスに送出し、内部バスから取り込んだ信号をプロトコルに従って変換してＬＡＮを経由してインターネットに送出する。コントローラー３１のＲＯＭにはＲＡＭに読み込まれＣＰＵによって実行される通信プログラムや印刷プログラムなどの種々のコンピュータープログラムが記憶されている。これらのコンピュータープログラムをＣＰＵが実行することによって、プリンター３の各種の機能が実現される。
【００２０】
通信プログラムは、サーバー２とＴＣＰ／ＩＰ、ＨＴＴＰ、ＸＭＰＰ等の通信プロトコルに従った通信を行うためのプログラムである。なお、ＨＴＴＰやＸＭＰＰを用いてサーバー２と接続するために必要な情報は後述する印刷シーケンスに先立って予めコントローラー３１は取得済みである。受信バッファー３２は、通信プログラムを実行するコントローラー３１が通信部３４を介して外部から受信したデータを記憶するメモリであり、印刷データやなど様々なデータが一旦格納されるメモリである。通信プログラムを実行するコントローラー３１および通信部３４は、印刷データの送信要求をサーバー２に対して行う「要求部」に相当する。また、通信プログラムを実行するコントローラー３１と通信部３４と受信バッファー３２とは、サーバー２から送信された印刷データを受信する「受信部」に相当する。
【００２１】
印刷プログラムは、受信バッファー３２に記憶されている印刷データを読み出して処理バッファー３３に転送し、印刷前処理を施してプリンター３における印刷に適した形式のデータに印刷データを変換し、変換後のデータに基づいて印刷部３５を制御して印刷を行う機能を有するプログラムである。印刷プログラムを実行するコントローラー３１と、印刷部３５と処理バッファー３３とは「処理部」に相当する。本実施形態においては、サーバー２が印刷対象をレンダリングして印刷データを生成しプリンター３に送信する。また本実施形態において、印刷前処理は、サーバー２から受信した印刷データに対して施す、解像度変換処理や、色変換処理や、ハーフトーン処理や、並べ替え処理等を指す。処理バッファー３３は、受信バッファー３２に記憶された様々なデータの中から抽出され読み出された印刷データに対して前述の印刷前処理を施す際に処理前や処理過程や処理後のデータを記憶するためのメモリである。印刷前処理に含まれる前述の各処理のデータ受け渡しのためにそれぞれ設けられたバッファーメモリをまとめて処理バッファー３３と呼ぶ。また、印刷プログラムは、一つの印刷ジョブに含まれる印刷データに対する印刷前処理を全て完了する前にプリンター３においてエラーが発生した場合に、印刷前処理や印刷部３５による印刷動作を中断させる機能を有する。また、通信プログラムは、プリンター３においてエラーが発生するとＸＭＰＰ接続を利用してＸＭＰＰサーバー２４にエラー情報を通知する機能を有する。そのため通信プログラムと印刷プログラムとを実行するコントローラー３１および通信部３４は「通知部」に相当する。
【００２２】
１−２．印刷シーケンス
図１に示す印刷システムにおいては、通信端末１からプリンター３に対応付けられた電子メールアドレス宛の電子メールが添付ファイルとともに送信されたとき、プリンター３において添付ファイルの印刷が即座に実行されることが望まれる。また、プリンター３が印刷要求を即時に取得するためにサーバー２をＨＴＴＰに基づいたメッセージを使ってポーリングすることはサーバー２の負荷とネットワークトラフィックの観点から望ましくない。そこで、プリンター３はＸＭＰＰに基づいた印刷ジョブ有り通知をサーバー２から受信する。ＸＭＰＰは、双方向にメッセージを送信できる所謂プッシュ型のプロトコルであるため、プリンター３によるサーバー２のポーリングは不要となる。プリンター３の電源がオン状態のとき、通信エラーやその他のエラーが特に発生していなければ、サーバー２とプリンター３とは、ＸＭＰＰ接続が常時確立された状態である。
【００２３】
図２は、本実施形態における印刷シーケンスのシーケンスチャートであって、さらに詳細には、一つの印刷ジョブに含まれる印刷データに対するプリンター３における印刷前処理が完了する前にプリンター３にエラーが発生する場合のシーケンスチャートである。なお、図２のシーケンスチャートでは、発明の要部を明確にするため、ＨＴＴＰ接続の確立や切断のシーケンスの詳細や、各通信に応答するＡＣＫやＦＩＮ等の記載を省略している。
【００２４】
はじめに、プリンター３に対応付けられた電子メールアドレス宛に通信端末１から送信された電子メールをＳＭＴＰサーバー２２が受信する（Ｓ１００）と、アプリケーションサーバー２１は電子メールに基づいて添付ファイルなどの印刷対象をレンダリングして印刷データを生成する。また、アプリケーションサーバー２１は、印刷データに対応する印刷ジョブのジョブＩＤや管理ページのＵＲＬを含んだ返信用の電子メールを生成し、ＳＭＴＰサーバー２２が当該返信用の電子メールを通信端末１に送信する（Ｓ１０５）。そしてＸＭＰＰを用いてＸＭＰＰサーバー２４は印刷ジョブ有り通知をプリンター３に送信する（Ｓ１１０）。ＸＭＰＰサーバー２４からＸＭＰＰ接続で送信された印刷ジョブ有り通知を受信すると、プリンター３のコントローラー３１はＨＴＴＰサーバー２３とＨＴＴＰ接続を確立し（Ｓ１１５）、ＨＴＴＰのｇｅｔリクエストでコンテンツ情報の送信要求をＨＴＴＰサーバー２３に送信する（Ｓ１２０）。プリンター３から送信されたコンテンツ情報の送信要求を受信したＨＴＴＰサーバー２３は、印刷ジョブのコンテンツ情報をプリンター３に送信する（Ｓ１２５）。ここでコンテンツ情報には、印刷ジョブのジョブＩＤや、印刷データのダウンロード先ＵＲＩや、印刷データのドキュメントフォーマット等の印刷ジョブに関する情報が含まれている。コンテンツ情報は通信部３４を経て受信バッファー３２に記憶される。コントローラー３１は受信バッファー３２に記憶されているデータを解析しコンテンツ情報を取得する。コンテンツ情報取得後コントローラー３１はコンテンツ情報を受信バッファー３２から破棄する。
【００２５】
続いてコントローラー３１は、ＨＴＴＰのｇｅｔリクエストで印刷データの送信要求をＨＴＴＰサーバー２３に送信する（Ｓ１３０）。印刷データのダウンロード先ＵＲＩはＳ１２５でプリンター３が受信したコンテンツ情報に含まれている。なおＳ１３０においては、Ｓ１１０で通知された印刷ジョブに含まれる印刷データ全体を対象とした送信要求を行う。ＨＴＴＰサーバー２３はプリンター３からの印刷データ送信要求を受けて、ＨＴＴＰ接続で印刷データを先頭から所定サイズずつプリンター３に送信する（Ｓ１３５）。
【００２６】
サーバー２から送信された印刷データは通信部３４や通信プログラムを実行するコントローラー３１により、受信バッファー３２に格納される。続いてコントローラー３１は、受信バッファー３２に格納されている印刷データを処理バッファー３３に空きがあれば処理バッファー３３に転送する。処理バッファー３３に転送済みの印刷データは受信バッファー３２から破棄される。コントローラー３１は、処理バッファー３３に転送した印刷データを対象に印刷前処理を施す。そして、印刷前処理を施されたデータに基づいてコントローラー３１は印刷部３５を制御して印刷を実行する。印刷が完了した部分に相当する処理バッファー３３内のデータは破棄される。
【００２７】
コントローラー３１が、印刷データの受信、印刷データの受信バッファー３２から処理バッファー３３への転送、印刷前処理、印刷実行の工程を繰り返している途中で、プリンター３においてエラーが発生した場合のシーケンスについて以降で説明する。プリンター３においてエラーが発生すると、プリンター３では印刷を続行できないため、コントローラー３１は印刷部３５に印刷動作を中断させるとともに印刷前処理も中断する。コントローラー３１は処理バッファー３３内のデータを印刷再開に備えて破棄せずに一旦残す。そして、コントローラー３１は、エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を、ＸＭＰＰサーバー２４との間で常時確立されているＸＭＰＰ接続でＸＭＰＰサーバー２４に送信する（Ｓ１４０）。
【００２８】
図３は、図２に示すエラー発生時にプリンター３とサーバー２との間に確立されている接続を示している。このときサーバー２とプリンター３との間ではＸＭＰＰ接続とＨＴＴＰ接続が確立されている。ＸＭＰＰ接続は、上述したようにジョブ有り通知などの情報をＸＭＰＰサーバー２４からプリンター３に送信するためにプリンター３との間で常時確立されている接続である。図中のＨＴＴＰ接続は、プリンター３から要求されたコンテンツ情報や印刷データをサーバー２からプリンター３へ受け渡すためにプリンター３とＨＴＴＰサーバー２３との間で一時的に確立される接続である。印刷データの送信が完了すればこのＨＴＴＰ接続は解消されるが、エラーが発生すると、印刷動作および印刷前処理が停止し、処理バッファー３３内に空きが生じないため、コントローラー３１は受信バッファー３２内の印刷データを処理バッファー３３に転送しない。そのため受信バッファー３２は、サーバー２から続々と受信した印刷データを含むデータで満たされ、後続の印刷データを受信できない状態（ゼロウィンドウ状態）でＨＴＴＰ接続が保たれた状態となる。
【００２９】
エラーが解消され印刷の再開が可能となる時期は未定であり、当該時期までこのＨＴＴＰ接続を維持し続けることは、サーバー２に負荷を与える。具体的には、ＨＴＴＰ接続ごとに確保しておくメモリ領域を長期間解放できない状態となり、その結果、他の通信端末から送信された電子メールを受信してから印刷を実行するまでの時間が遅延しうる。プリンター３側のゼロウィンドウ状態が所定期間（例えば５分間）続いたことによって、ＨＴＴＰサーバー２３（あるいはＨＴＴＰサーバー２３とプリンター３との間に存在するプロキシーサーバー等のネットワーク機器）がＨＴＴＰ接続を切断することも考えられるが、いずれにしても前述の所定期間の長さによってはＨＴＴＰサーバー２３に負荷をかけることになり遅延が生じやすくなる。この遅延を防止するために、ＸＭＰＰサーバー２４がプリンター３からＸＭＰＰ接続でエラー情報を受信しアプリケーションサーバー２１がエラーによって印刷が中断したことを示す情報を取得すると、ＨＴＴＰサーバー２３にプリンター３とのＨＴＴＰ接続を切断する指示を行い、ＨＴＴＰサーバー２３は、プリンター３とのＨＴＴＰ接続を切断するためのデータを送信する（Ｓ１４５）。具体的には例えば、ＨＴＴＰサーバー２３はＲＳＴ（Reset）をプリンター３に送信する。この結果、プリンター３とＨＴＴＰサーバー２３との間のＨＴＴＰ接続は切断される。ＨＴＴＰ接続が切断されると、プリンター３のコントローラー３１は、受信バッファー３２に格納されていた印刷データを破棄する。また、Ｓ１４０でＸＭＰＰサーバー２４がプリンター３からエラー情報を受信すると、アプリケーションサーバー２１は、受信したエラー情報に基づいて決定される最新のステータス（すなわちこの場合「中断」）をプリンター３に現在要求している印刷ジョブのジョブＩＤに対応する履歴情報に追加してアプリケーションサーバー２１の履歴記録データベースに保存する。
【００３０】
ＨＴＴＰサーバー２５は、通信端末１のユーザーが通信端末１からプリンター３に割り当てられた電子メールアドレス宛に送信した電子メールに基づく印刷の状況をユーザーに報知するための管理ページを提供する。ユーザーはプリンター３に対応する管理ページを、ＷＥＢブラウザーを用いて閲覧することができる。管理ページのＵＲＬは、Ｓ１０５でＳＭＴＰサーバー２２が通信端末１に対して返信した電子メールに記載されている。通信端末１のユーザーがＷＥＢブラウザーを用いて管理ページを閲覧するための操作を行うと、通信端末１は、エラー情報を閲覧するための管理ページの表示データの送信要求をＨＴＴＰサーバー２５に送信する（Ｓ１５０）と、ＨＴＴＰサーバー２５はアプリケーションサーバー２１の履歴記録データベースに保存してあるプリンター３に要求した印刷ジョブごとの履歴情報を参照し、印刷ジョブごとの最新のステータス（中断の印刷ジョブについてはエラーの内容も含む）を示した表示データを生成し、当該表示データを通信端末１に送信する（Ｓ１５５）。このとき表示する印刷ジョブには、印刷が完了したことによって既にサーバー２から削除されている印刷ジョブも含まれていることが望ましい。通信端末１は、ＨＴＴＰサーバー２５から受信した表示データに基づいて管理ページをＷＥＢブラウザーに表示する。ユーザーは通信端末１のＷＥＢブラウザーを用いて印刷ジョブの状況を認知することができる。
【００３１】
図４はプリンター３に依頼された印刷ジョブとそのステータスの一覧を表示する管理ページの例を示している。このページでは、エラー発生時にプリンター３から通知されたエラー情報や印刷終了時にプリンター３から通知された情報などに基づいて印刷ジョブごとにステータスが表示される。エラーにより印刷が中断している印刷ジョブに関しては、エラー情報に基づいて中断している旨と、エラー情報に基づいて中断理由（エラーの内容）が表示される。図４の例では、備考欄に中断理由が表示されている。なお、ステータスの種類としては「中断」の他に例えば、Ｓ１１０からＳ１３０までの状態であることを示す「印刷開始前」、Ｓ１３５からＳ１４５又は後述するＳ１７０からＳ１７５までの状態であることを示す「印刷中」、印刷が終了したことを示す「印刷終了」、などがあってもよい。このようにエラー情報をプリンター３から取得しユーザーに報知する構成を設けることにより、ユーザーは外出先からでも通信端末１を用いてプリンター３に実行させた印刷ジョブの状態を確認することができる。なお、このようなジョブごとのステータスの一覧を表示するようなページにおいては、他に様々な印刷ジョブの属性情報を表示してユーザーがステータスを確認したい印刷ジョブを区別しやすいようにしてもよい。例えば電子メールの受付日時や、電子メールの送信者の識別情報や印刷対象の識別情報（例えば電子メールの添付ファイルのファイル名）などが表示されてもよい。
【００３２】
なお、その後プリンター３においてエラーが解消されると、プリンター３のコントローラー３１は、改めてＨＴＴＰサーバー２３とＨＴＴＰ接続を確立して（Ｓ１６０）、再び印刷データの送信要求を送信し（Ｓ１６５）、ＨＴＴＰサーバー２３は送信要求に応じて印刷データをプリンター３に送信し、アプリケーションサーバー２１も送信要求に応じてプリンター３の印刷が再開されて印刷中であるというステータスを、現在要求している印刷ジョブのジョブＩＤと対応付する履歴情報に追加してアプリケーションサーバー２１内の履歴記録データベースに保存する（Ｓ１７０）。このとき、コントローラー３１は中断時の続きから印刷を再開する場合は、印刷前処理の対象となった印刷データを除く残りの部分を範囲指定して送信要求するようにしてもよい。印刷前処理の対象となった印刷データのデータ量は、受信バッファー３２から処理バッファー３３への転送時に転送するデータの累積データ量をカウントしておくことで取得することができる。また範囲指定した送信要求はＨＴＴＰのｒａｎｇｅヘッダーを用いることで実現できる。範囲指定された送信要求をプリンター３から受けた場合、ＨＴＴＰサーバー２３は指定された範囲の印刷データをプリンター３に送信する。なお、もちろん、印刷を最初のページからやり直す場合は、Ｓ１３０と同様に印刷ジョブに含まれる印刷データ全体に対する送信要求を行ってもよい。
【００３３】
プリンター３のコントローラー３１および印刷部３５は、受信した印刷データに基づいて印刷を実行する。一つの印刷ジョブに対応する印刷が完了すると、プリンター３は印刷ジョブステータス（印刷終了）をＨＴＴＰサーバー２３にＨＴＴＰ接続で通知し（Ｓ１７５）、他にプリンター３に対する印刷ジョブが存在しなければＨＴＴＰサーバー２３はプリンター３とのＨＴＴＰ接続を切断し（Ｓ１８０）、印刷シーケンスを終了する。
【００３４】
２．他の実施形態
尚、本発明の技術的範囲は、上述した実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、上記実施形態においてエラー情報をサーバー２とプリンター３の間で常時接続しているＸＭＰＰ接続を用いて送信していたが、印刷データの送信に使用されるＨＴＴＰ接続とは別のＨＴＴＰ接続を用いてエラー情報をサーバー２に送信してもよい。図５は、この場合のエラー情報を送信するための接続を説明する図である。図５に示すＸＭＰＰ接続は、上記実施形態と同様の、印刷ジョブ有り通知を送信するために常時接続されている接続である。第一のＨＴＴＰ接続は、印刷データ送信用の接続であり、プリンター３におけるエラー発生で残りの印刷データを送信できない状態で継続している接続である。第二のＨＴＴＰ接続は、プリンター３においてエラーが発生した後、プリンター３からエラー情報をサーバー２に送信するためにプリンター３とＨＴＴＰサーバー２３との間で新たに確立するＨＴＴＰ接続である。印刷データの送信途中でプリンター３においてエラーが発生した場合にプリンター３は新たに確立された第二のＨＴＴＰ接続でエラー情報をＨＴＴＰサーバー２３に送信する。第二のＨＴＴＰ接続はエラー情報を送信しサーバー２がエラー情報を受信した後に切断される。サーバー２は第二のＨＴＴＰ接続でエラー情報を受信すると、上記実施形態のＳ１４５と同様に第一のＨＴＴＰ接続を切断する。
【００３５】
また、アプリケーションサーバー２１が履歴情報として記憶するステータスやエラーは、ＸＭＰＰ接続や印刷データの送信に使用されるＨＴＴＰ接続とは別のＨＴＴＰ接続を用いてプリンター３から通知されるものに限定されない。例えば、印刷データの送信に使用されるＨＴＴＰ接続の確立に失敗したというエラーや、その状態を示すステータスを履歴情報として記憶してもよい。また例えば、印刷データの送信に使用されるＨＴＴＰ接続でプリンター３から通知された印刷キャンセルなどのエラーや、その状態を示すステータスを履歴情報として記憶してもよい。また例えば、通信端末１のユーザーからプリンター３を経由せずに通知された印刷キャンセルなどのエラーや、その状態を示すステータス、などについても履歴情報として記憶しても良い。
また、プリンター３の所有者が、自らの通信端末からＷＥＢブラウザーを用いて管理ページを閲覧できるようにしても良い。この場合、管理ページのＵＲＬは、印刷シーケンスに先立ち予めプリンター３の所有者の通信端末において取得されている。
【００３６】
また、上記実施形態ではデータ処理装置がプリンターに適用される例を説明したが、サーバーに対して処理データを要求し、サーバーから取得した処理データを用いてなんらかの処理を行う様々な装置に本発明を適用可能である。
また、上記実施形態では、「報知部」によるエラー情報に基づく情報の報知を、ＷＥＢページとして準備し当該ページを通信端末１から閲覧することで実現していたが、例えばサーバー２から通信端末１に対してエラー情報に基づいてエラーの発生とエラーの内容を通知する電子メールを送信することでユーザーに報知してもよい。
【００３７】
なお、上記実施形態においては、コンテンツ情報の送信要求〜受信、および、印刷データの送信要求〜受信は、一続きのＨＴＴＰセッションで行われているが、コンテンツ情報の送信要求〜受信（図２のＳ１２０〜Ｓ１２５）の後にＨＴＴＰセッションを切断し、印刷データの送信要求（図２のＳ１３０）の前に新たにＨＴＴＰセッションを確立して印刷データの送信要求〜受信を行ってもよい。
【符号の説明】
【００３８】
１：通信端末、２：サーバー、３：プリンター、４：インターネット、２１：アプリケーションサーバー、２２：ＳＭＴＰサーバー、２３：ＨＴＴＰサーバー、２４：ＸＭＰＰサーバー、２５：ＨＴＴＰサーバー、３１：コントローラー、３２：受信バッファー、３３：処理バッファー、３４：通信部、３５：印刷部
【図１】
2013061836.tif 000003
【図２】
2013061836.tif 000004
【図３】
2013061836.tif 000005
【図４】
2013061836.tif 000006
【図５】
2013061836.tif 000007