説明

サーバー、データ処理装置、データ処理方法

【課題】データ処理装置における処理中断の理由をユーザーに報知する。
【解決手段】データ処理装置からの処理データのHTTP接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理部と、前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記HTTP接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記HTTP接続を切断する切断処理部と、前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存部と、保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知部と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバー、データ処理装置、データ処理方法に関し、クラウドコンピューティングシステムにおいてユーザーからサーバー経由で取得した要求に応じて処理を実行する技術に関する。
【背景技術】
【0002】
従来、電子メールの送信によって特定のプリンターに印刷を実行させることができるサービスを提供するクラウドコンピューティングシステムが知られている(例えば特許文献1)。このクラウドコンピューティングシステム(以下,単に印刷システムという)は、特定の電子メールを受信すると電子メールに基づいて特定のプリンターに対応した印刷データを生成するサーバーを備え、サーバーに登録されている特定のプリンターはサーバーから印刷データを取得して印刷を実行する。したがって印刷システムの利用者は、PC(Personal Computer)、スマートフォン等のクライアント端末にプリンタードライバーがインストールされていない場合であっても、印刷システムに登録されているプリンターを利用することが可能になる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−71257号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このような印刷システムにおいては、ユーザーが送信した電子メールに基づいてサーバーが印刷データを生成し、プリンターに対して印刷ジョブの存在を通知し、通知を受けたプリンターはサーバーに対して印刷データの送信要求を行って印刷データを取得しながら印刷を実行している。プリンターが搭載しているメモリサイズにはコストの観点から制限があるので、印刷が終了した部分の印刷データについてはメモリから破棄し次に処理すべき部分の印刷データのためにメモリ領域を確保する。このようにプリンターは、印刷データを取得しながら印刷を行うため、印刷データの取得途中でプリンターにおいてエラーが発生した場合、印刷を続行することができないため印刷データをメモリから破棄することができず、メモリが未処理の印刷データでやがて満杯になり後続して送信された印刷データを受信できない状態となる。
【0005】
プリンターにおいてエラーが発生した場合、従来はエラーが発生したため印刷を終了するという動作となっており、エラー発生後の動作については特に考慮されていない。この印刷システムのユーザーはプリンターから離れた遠隔地から電子メールを送信することによってプリンターを利用することも想定されるため、従来の場合は遠隔地にいるユーザーは印刷が途中で終了した理由について知ることができなかった。
本発明は、上記課題にかんがみてなされたもので、データ処理装置における処理中断の理由をユーザーに報知することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するためのサーバーは、要求処理部と、切断処理部と、保存部と、報知部と、を備える。要求処理部は、データ処理装置からの処理データのHTTP接続での送信要求に応じて処理データをデータ処理装置に送信する。切断処理部は、処理データを用いた処理をデータ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記HTTP接続とは別の接続でデータ処理装置から通知されたことに応じて、前記HTTP接続を切断する。保存部は、エラー情報を、データ処理装置と前記処理とに対応付けて保存する。報知部は、保存されたエラー情報に基づいて、データ処理装置の処理がエラーによって中断したことと当該エラーの内容とをユーザーに報知する。報知部に関しては、サーバーを介してユーザーに報知することができればよく、報知の態様は特に限定されない。
【0007】
ユーザーはサーバーの報知部を利用することにより、データ処理装置から離れた遠隔地からであってもデータ処理装置における処理中断の原因となったエラーについて認識することができる。また、処理データの送信に使用されるHTTP接続をエラー情報の通知に応じて切断することにより、HTTP接続を維持するためにサーバーにかかる負荷を早期に解消することができる。なお、「前記HTTP接続とは別の接続」とは、処理データの送信要求や当該送信要求に応じた処理データの送信を行うHTTP接続とは別に確立されるHTTP接続であってもよい。あるいは、データ処理装置から任意のタイミングでサーバーへ任意の情報を送信することができれば、別のプロトコルを用いた接続でもよい。
【0008】
上記目的を達成するためのサーバーにおいては、さらに、電子メール受信部と、印刷データ生成部と、印刷ジョブ通知部と、を備えても良い。電子メール受信部は、データ処理装置としての印刷装置であって特定の印刷装置に割り当てられた電子メールアドレス宛の電子メールを受信する。印刷データ生成部は、受信した電子メールに基づいて処理データとしての印刷データを生成する。印刷ジョブ通知部は、生成された印刷データを含む印刷ジョブの存在を前記HTTP接続とは別の接続としてのXMPP接続で印刷装置に通知する。サーバーが電子メール受信部と印刷データ生成部と印刷ジョブ通知部とをさらに備える場合に、保存部は、印刷装置と印刷ジョブとに対応付けてエラー情報を保存し、報知部は、保存されたエラー情報に基づいて、印刷装置における印刷ジョブがエラーによって中断したことと当該エラーの内容とをユーザーに報知するようにしてもよい。
【0009】
印刷装置に割り当てられた電子メールアドレス宛に送信された電子メールに基づいて生成した印刷データに対応する印刷ジョブの存在を通知するために印刷装置との間で確立されているXMPP接続を利用して、エラー情報の通知を受け付けることにより、このXMPP接続とも前述のHTTP接続とも違う別の接続を印刷装置との間に新たに確立してエラー情報の通知を受け付ける場合と比較して、サーバーおよび印刷装置の両方における新たな接続確立のための処理負担を軽減できる。
【0010】
上記目的を達成するためのデータ処理装置は、要求部と、受信部と、処理部と、通知部と、を備える。要求部は、HTTP接続でサーバーに対して処理データの送信要求を行う。受信部は、送信要求に応じてサーバーから前記HTTP接続で送信された処理データを受信する。処理部は、受信した処理データを順次取得し、当該処理データを用いて処理を行う。通知部は、処理データを用いた処理を完了する前にエラーが発生した場合に、エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記HTTP接続とは別の接続でサーバーに通知する。
【0011】
データ処理装置がこのような構成を採用していることにより、エラーが発生した場合にサーバーにエラー情報を通知することができる。その結果、処理データの送信に用いられているHTTP接続であってエラー発生により処理データの受信を続行できないHTTP接続の切断をサーバーに促すことができる。サーバーはエラー情報の通知に応じてHTTP接続を切断することにより、HTTP接続を維持するためにサーバーにかかる負荷を早期に解消することができる。また、ユーザーに対してエラーについて報知するための情報(エラー情報)をサーバーに受け渡すことができる。
【0012】
なお、請求項に記載された各手段の機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら各手段の機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。また、サーバーは1台のコンピューター装置からなる構成に限らず、複数のコンピューター装置が協働して上述のサーバーとして動作する構成も含む。さらに、本発明は方法としても、コンピュータープログラムとしても、そのプログラムの記録媒体としても成立する。むろん、そのコンピュータープログラムの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体であってもよい。
【図面の簡単な説明】
【0013】
【図1】本発明の実施形態にかかる印刷システムを示すブロック図。
【図2】本発明の実施形態にかかる印刷シーケンスのシーケンスチャート。
【図3】第一実施形態にかかる接続を示す模式図。
【図4】第一実施形態にかかるエラー情報の報知例を示す模式図。
【図5】他の実施形態にかかる接続を示す模式図。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態を添付図面を参照しながら説明する。尚、各図において対応する構成要素には同一の符号が付され、重複する説明は省略される。
【0015】
1.第一実施形態
1−1.構成
図1は、本実施形態におけるプリンター(データ処理装置、印刷装置に相当する)3とサーバー2とを含む印刷システム全体の構成を示すブロック図である。図1に示す印刷システムは、サーバー2に登録された複数のプリンターのそれぞれに対応付けられた電子メールアドレスを宛先とする電子メールを任意の通信端末1から送信すると、宛先の電子メールアドレスに対応付けられたプリンター3において電子メールの添付ファイルや本文が印刷される機能を実現する。サーバー2、プリンター3、通信端末1はインターネット4に接続される。
【0016】
サーバー2は1以上のコンピューターによって構成され、アプリケーションサーバー21,SMTPサーバー22,HTTPサーバー23,XMPPサーバー24,HTTPサーバー25を含む。アプリケーションサーバー21,SMTPサーバー22,HTTPサーバー23,XMPPサーバー24,HTTPサーバー25のそれぞれは、図示しないCPUとRAMとROMとハードディスク装置と通信部とそれらを接続する内部インターフェースとを備えている。通信部はインターネットからLANを経由して受信する信号をプロトコルに従って変換して内部バスに送出し、内部バスから取り込んだ信号をプロトコルに従って変換してLANを経由してインターネットに送出する。サーバー2に含まれる各サーバーはLANに接続され互いに通信が可能である。
【0017】
SMTPサーバー22は、アプリケーションサーバー21に登録されたプリンター3に割り当てられた電子メールアドレス宛の電子メールをSMTP(Simple Mail Transfer Protocol)に基づいて送受信する機能を有し、「電子メール受信部」として機能する。HTTPサーバー23はプリンター3とHTTP(Hyper Text Transfer Protocol)に基づいて通信する機能を有し、印刷データ(処理データ)をプリンター3に送信する「要求処理部」として機能する。またHTTPサーバー23は、プリンター3から送信された後述するエラー情報に基づいてプリンター3とのHTTP接続を切断する機能を有し、「切断処理部」としても機能する。XMPPサーバー24はプリンター3とXMPP(Extensible Messaging and Presence Protocol)に基づいて通信する機能を有し、プリンター3に印刷ジョブ有り通知を送信する「印刷ジョブ通知部」として機能する。
【0018】
アプリケーションサーバー21は、SMTPに基づいて電子メールを受信すると、当該電子メールに基づいて対応するプリンター3に応じた印刷データを生成し(「印刷データ生成部」に相当)、XMPPに基づいて対応するプリンター3に印刷ジョブ有り通知を送信し、生成した印刷データをプリンター3からのHTTPに基づいた送信要求に応じてプリンター3に送信する機能を有する。また、アプリケーションサーバー21は、プリンター3に対応する内部IDと対応付けて、プリンター3に対応する電子メールアドレスやXMPPログインパスワードや管理ページのURLや管理ページのパスワードを保存し管理する機能を有する。さらにアプリケーションサーバー21は、プリンター3に要求した印刷ジョブごとに、印刷ジョブのステータスや、印刷ジョブに対応する各種の属性情報を保存する機能を有しており、「保存部」としても機能する。印刷ジョブのステータスは印刷ジョブの実行状況を示す情報であり、プリンター3における各種のエラー発生時にプリンター3から通知されたエラー情報や、印刷終了時にプリンター3から通知された情報等に基づいて更新される。より具体的には例えば、印刷ジョブのステータスは、アプリケーションサーバー21の履歴記録データベースに履歴情報として追加される。なお、各種のエラーとは例えば、印刷用紙やOHPシート等の印刷媒体がなくなったことを示すエラーや、インク等の着色剤がなくなったことを示すエラーや、紙詰まりエラーなどである。このようなエラーの内容を示す情報も履歴情報に追加され記憶される。管理ページとは、プリンターごとに記憶されているこれらの情報をユーザーが閲覧したり編集したりするためのWEBページである。本実施形態では特に、プリンター3に対して要求した印刷ジョブごとに、そのステータスをユーザー(閲覧者)に報知する(エラーが発生した印刷ジョブに関してはそのエラーの内容も報知する)ためのWEBページについて説明する。HTTPサーバー25は、この管理ページを表示するための表示データを生成し公開する機能を有し、「報知部」として機能する。
【0019】
プリンター3は、サーバー2とのXMPPを用いた常時接続によってサーバー2から印刷ジョブ有り通知を通知されると、HTTPを用いて印刷データをサーバー2から受信し、印刷を実行する機能を有する。したがってプリンター3は、CPU、ROM、RAM等を備えたコントローラー31、印刷部35等の通常のプリンターの構成要素に加えて、インターネット4を介して各種のデータを送受信するための通信部34を備えている。通信部34はインターネット4からLANを経由して受信する信号をプロトコルに従って変換して内部バスに送出し、内部バスから取り込んだ信号をプロトコルに従って変換してLANを経由してインターネットに送出する。コントローラー31のROMにはRAMに読み込まれCPUによって実行される通信プログラムや印刷プログラムなどの種々のコンピュータープログラムが記憶されている。これらのコンピュータープログラムをCPUが実行することによって、プリンター3の各種の機能が実現される。
【0020】
通信プログラムは、サーバー2とTCP/IP、HTTP、XMPP等の通信プロトコルに従った通信を行うためのプログラムである。なお、HTTPやXMPPを用いてサーバー2と接続するために必要な情報は後述する印刷シーケンスに先立って予めコントローラー31は取得済みである。受信バッファー32は、通信プログラムを実行するコントローラー31が通信部34を介して外部から受信したデータを記憶するメモリであり、印刷データやなど様々なデータが一旦格納されるメモリである。通信プログラムを実行するコントローラー31および通信部34は、印刷データの送信要求をサーバー2に対して行う「要求部」に相当する。また、通信プログラムを実行するコントローラー31と通信部34と受信バッファー32とは、サーバー2から送信された印刷データを受信する「受信部」に相当する。
【0021】
印刷プログラムは、受信バッファー32に記憶されている印刷データを読み出して処理バッファー33に転送し、印刷前処理を施してプリンター3における印刷に適した形式のデータに印刷データを変換し、変換後のデータに基づいて印刷部35を制御して印刷を行う機能を有するプログラムである。印刷プログラムを実行するコントローラー31と、印刷部35と処理バッファー33とは「処理部」に相当する。本実施形態においては、サーバー2が印刷対象をレンダリングして印刷データを生成しプリンター3に送信する。また本実施形態において、印刷前処理は、サーバー2から受信した印刷データに対して施す、解像度変換処理や、色変換処理や、ハーフトーン処理や、並べ替え処理等を指す。処理バッファー33は、受信バッファー32に記憶された様々なデータの中から抽出され読み出された印刷データに対して前述の印刷前処理を施す際に処理前や処理過程や処理後のデータを記憶するためのメモリである。印刷前処理に含まれる前述の各処理のデータ受け渡しのためにそれぞれ設けられたバッファーメモリをまとめて処理バッファー33と呼ぶ。また、印刷プログラムは、一つの印刷ジョブに含まれる印刷データに対する印刷前処理を全て完了する前にプリンター3においてエラーが発生した場合に、印刷前処理や印刷部35による印刷動作を中断させる機能を有する。また、通信プログラムは、プリンター3においてエラーが発生するとXMPP接続を利用してXMPPサーバー24にエラー情報を通知する機能を有する。そのため通信プログラムと印刷プログラムとを実行するコントローラー31および通信部34は「通知部」に相当する。
【0022】
1−2.印刷シーケンス
図1に示す印刷システムにおいては、通信端末1からプリンター3に対応付けられた電子メールアドレス宛の電子メールが添付ファイルとともに送信されたとき、プリンター3において添付ファイルの印刷が即座に実行されることが望まれる。また、プリンター3が印刷要求を即時に取得するためにサーバー2をHTTPに基づいたメッセージを使ってポーリングすることはサーバー2の負荷とネットワークトラフィックの観点から望ましくない。そこで、プリンター3はXMPPに基づいた印刷ジョブ有り通知をサーバー2から受信する。XMPPは、双方向にメッセージを送信できる所謂プッシュ型のプロトコルであるため、プリンター3によるサーバー2のポーリングは不要となる。プリンター3の電源がオン状態のとき、通信エラーやその他のエラーが特に発生していなければ、サーバー2とプリンター3とは、XMPP接続が常時確立された状態である。
【0023】
図2は、本実施形態における印刷シーケンスのシーケンスチャートであって、さらに詳細には、一つの印刷ジョブに含まれる印刷データに対するプリンター3における印刷前処理が完了する前にプリンター3にエラーが発生する場合のシーケンスチャートである。なお、図2のシーケンスチャートでは、発明の要部を明確にするため、HTTP接続の確立や切断のシーケンスの詳細や、各通信に応答するACKやFIN等の記載を省略している。
【0024】
はじめに、プリンター3に対応付けられた電子メールアドレス宛に通信端末1から送信された電子メールをSMTPサーバー22が受信する(S100)と、アプリケーションサーバー21は電子メールに基づいて添付ファイルなどの印刷対象をレンダリングして印刷データを生成する。また、アプリケーションサーバー21は、印刷データに対応する印刷ジョブのジョブIDや管理ページのURLを含んだ返信用の電子メールを生成し、SMTPサーバー22が当該返信用の電子メールを通信端末1に送信する(S105)。そしてXMPPを用いてXMPPサーバー24は印刷ジョブ有り通知をプリンター3に送信する(S110)。XMPPサーバー24からXMPP接続で送信された印刷ジョブ有り通知を受信すると、プリンター3のコントローラー31はHTTPサーバー23とHTTP接続を確立し(S115)、HTTPのgetリクエストでコンテンツ情報の送信要求をHTTPサーバー23に送信する(S120)。プリンター3から送信されたコンテンツ情報の送信要求を受信したHTTPサーバー23は、印刷ジョブのコンテンツ情報をプリンター3に送信する(S125)。ここでコンテンツ情報には、印刷ジョブのジョブIDや、印刷データのダウンロード先URIや、印刷データのドキュメントフォーマット等の印刷ジョブに関する情報が含まれている。コンテンツ情報は通信部34を経て受信バッファー32に記憶される。コントローラー31は受信バッファー32に記憶されているデータを解析しコンテンツ情報を取得する。コンテンツ情報取得後コントローラー31はコンテンツ情報を受信バッファー32から破棄する。
【0025】
続いてコントローラー31は、HTTPのgetリクエストで印刷データの送信要求をHTTPサーバー23に送信する(S130)。印刷データのダウンロード先URIはS125でプリンター3が受信したコンテンツ情報に含まれている。なおS130においては、S110で通知された印刷ジョブに含まれる印刷データ全体を対象とした送信要求を行う。HTTPサーバー23はプリンター3からの印刷データ送信要求を受けて、HTTP接続で印刷データを先頭から所定サイズずつプリンター3に送信する(S135)。
【0026】
サーバー2から送信された印刷データは通信部34や通信プログラムを実行するコントローラー31により、受信バッファー32に格納される。続いてコントローラー31は、受信バッファー32に格納されている印刷データを処理バッファー33に空きがあれば処理バッファー33に転送する。処理バッファー33に転送済みの印刷データは受信バッファー32から破棄される。コントローラー31は、処理バッファー33に転送した印刷データを対象に印刷前処理を施す。そして、印刷前処理を施されたデータに基づいてコントローラー31は印刷部35を制御して印刷を実行する。印刷が完了した部分に相当する処理バッファー33内のデータは破棄される。
【0027】
コントローラー31が、印刷データの受信、印刷データの受信バッファー32から処理バッファー33への転送、印刷前処理、印刷実行の工程を繰り返している途中で、プリンター3においてエラーが発生した場合のシーケンスについて以降で説明する。プリンター3においてエラーが発生すると、プリンター3では印刷を続行できないため、コントローラー31は印刷部35に印刷動作を中断させるとともに印刷前処理も中断する。コントローラー31は処理バッファー33内のデータを印刷再開に備えて破棄せずに一旦残す。そして、コントローラー31は、エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を、XMPPサーバー24との間で常時確立されているXMPP接続でXMPPサーバー24に送信する(S140)。
【0028】
図3は、図2に示すエラー発生時にプリンター3とサーバー2との間に確立されている接続を示している。このときサーバー2とプリンター3との間ではXMPP接続とHTTP接続が確立されている。XMPP接続は、上述したようにジョブ有り通知などの情報をXMPPサーバー24からプリンター3に送信するためにプリンター3との間で常時確立されている接続である。図中のHTTP接続は、プリンター3から要求されたコンテンツ情報や印刷データをサーバー2からプリンター3へ受け渡すためにプリンター3とHTTPサーバー23との間で一時的に確立される接続である。印刷データの送信が完了すればこのHTTP接続は解消されるが、エラーが発生すると、印刷動作および印刷前処理が停止し、処理バッファー33内に空きが生じないため、コントローラー31は受信バッファー32内の印刷データを処理バッファー33に転送しない。そのため受信バッファー32は、サーバー2から続々と受信した印刷データを含むデータで満たされ、後続の印刷データを受信できない状態(ゼロウィンドウ状態)でHTTP接続が保たれた状態となる。
【0029】
エラーが解消され印刷の再開が可能となる時期は未定であり、当該時期までこのHTTP接続を維持し続けることは、サーバー2に負荷を与える。具体的には、HTTP接続ごとに確保しておくメモリ領域を長期間解放できない状態となり、その結果、他の通信端末から送信された電子メールを受信してから印刷を実行するまでの時間が遅延しうる。プリンター3側のゼロウィンドウ状態が所定期間(例えば5分間)続いたことによって、HTTPサーバー23(あるいはHTTPサーバー23とプリンター3との間に存在するプロキシーサーバー等のネットワーク機器)がHTTP接続を切断することも考えられるが、いずれにしても前述の所定期間の長さによってはHTTPサーバー23に負荷をかけることになり遅延が生じやすくなる。この遅延を防止するために、XMPPサーバー24がプリンター3からXMPP接続でエラー情報を受信しアプリケーションサーバー21がエラーによって印刷が中断したことを示す情報を取得すると、HTTPサーバー23にプリンター3とのHTTP接続を切断する指示を行い、HTTPサーバー23は、プリンター3とのHTTP接続を切断するためのデータを送信する(S145)。具体的には例えば、HTTPサーバー23はRST(Reset)をプリンター3に送信する。この結果、プリンター3とHTTPサーバー23との間のHTTP接続は切断される。HTTP接続が切断されると、プリンター3のコントローラー31は、受信バッファー32に格納されていた印刷データを破棄する。また、S140でXMPPサーバー24がプリンター3からエラー情報を受信すると、アプリケーションサーバー21は、受信したエラー情報に基づいて決定される最新のステータス(すなわちこの場合「中断」)をプリンター3に現在要求している印刷ジョブのジョブIDに対応する履歴情報に追加してアプリケーションサーバー21の履歴記録データベースに保存する。
【0030】
HTTPサーバー25は、通信端末1のユーザーが通信端末1からプリンター3に割り当てられた電子メールアドレス宛に送信した電子メールに基づく印刷の状況をユーザーに報知するための管理ページを提供する。ユーザーはプリンター3に対応する管理ページを、WEBブラウザーを用いて閲覧することができる。管理ページのURLは、S105でSMTPサーバー22が通信端末1に対して返信した電子メールに記載されている。通信端末1のユーザーがWEBブラウザーを用いて管理ページを閲覧するための操作を行うと、通信端末1は、エラー情報を閲覧するための管理ページの表示データの送信要求をHTTPサーバー25に送信する(S150)と、HTTPサーバー25はアプリケーションサーバー21の履歴記録データベースに保存してあるプリンター3に要求した印刷ジョブごとの履歴情報を参照し、印刷ジョブごとの最新のステータス(中断の印刷ジョブについてはエラーの内容も含む)を示した表示データを生成し、当該表示データを通信端末1に送信する(S155)。このとき表示する印刷ジョブには、印刷が完了したことによって既にサーバー2から削除されている印刷ジョブも含まれていることが望ましい。通信端末1は、HTTPサーバー25から受信した表示データに基づいて管理ページをWEBブラウザーに表示する。ユーザーは通信端末1のWEBブラウザーを用いて印刷ジョブの状況を認知することができる。
【0031】
図4はプリンター3に依頼された印刷ジョブとそのステータスの一覧を表示する管理ページの例を示している。このページでは、エラー発生時にプリンター3から通知されたエラー情報や印刷終了時にプリンター3から通知された情報などに基づいて印刷ジョブごとにステータスが表示される。エラーにより印刷が中断している印刷ジョブに関しては、エラー情報に基づいて中断している旨と、エラー情報に基づいて中断理由(エラーの内容)が表示される。図4の例では、備考欄に中断理由が表示されている。なお、ステータスの種類としては「中断」の他に例えば、S110からS130までの状態であることを示す「印刷開始前」、S135からS145又は後述するS170からS175までの状態であることを示す「印刷中」、印刷が終了したことを示す「印刷終了」、などがあってもよい。このようにエラー情報をプリンター3から取得しユーザーに報知する構成を設けることにより、ユーザーは外出先からでも通信端末1を用いてプリンター3に実行させた印刷ジョブの状態を確認することができる。なお、このようなジョブごとのステータスの一覧を表示するようなページにおいては、他に様々な印刷ジョブの属性情報を表示してユーザーがステータスを確認したい印刷ジョブを区別しやすいようにしてもよい。例えば電子メールの受付日時や、電子メールの送信者の識別情報や印刷対象の識別情報(例えば電子メールの添付ファイルのファイル名)などが表示されてもよい。
【0032】
なお、その後プリンター3においてエラーが解消されると、プリンター3のコントローラー31は、改めてHTTPサーバー23とHTTP接続を確立して(S160)、再び印刷データの送信要求を送信し(S165)、HTTPサーバー23は送信要求に応じて印刷データをプリンター3に送信し、アプリケーションサーバー21も送信要求に応じてプリンター3の印刷が再開されて印刷中であるというステータスを、現在要求している印刷ジョブのジョブIDと対応付する履歴情報に追加してアプリケーションサーバー21内の履歴記録データベースに保存する(S170)。このとき、コントローラー31は中断時の続きから印刷を再開する場合は、印刷前処理の対象となった印刷データを除く残りの部分を範囲指定して送信要求するようにしてもよい。印刷前処理の対象となった印刷データのデータ量は、受信バッファー32から処理バッファー33への転送時に転送するデータの累積データ量をカウントしておくことで取得することができる。また範囲指定した送信要求はHTTPのrangeヘッダーを用いることで実現できる。範囲指定された送信要求をプリンター3から受けた場合、HTTPサーバー23は指定された範囲の印刷データをプリンター3に送信する。なお、もちろん、印刷を最初のページからやり直す場合は、S130と同様に印刷ジョブに含まれる印刷データ全体に対する送信要求を行ってもよい。
【0033】
プリンター3のコントローラー31および印刷部35は、受信した印刷データに基づいて印刷を実行する。一つの印刷ジョブに対応する印刷が完了すると、プリンター3は印刷ジョブステータス(印刷終了)をHTTPサーバー23にHTTP接続で通知し(S175)、他にプリンター3に対する印刷ジョブが存在しなければHTTPサーバー23はプリンター3とのHTTP接続を切断し(S180)、印刷シーケンスを終了する。
【0034】
2.他の実施形態
尚、本発明の技術的範囲は、上述した実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、上記実施形態においてエラー情報をサーバー2とプリンター3の間で常時接続しているXMPP接続を用いて送信していたが、印刷データの送信に使用されるHTTP接続とは別のHTTP接続を用いてエラー情報をサーバー2に送信してもよい。図5は、この場合のエラー情報を送信するための接続を説明する図である。図5に示すXMPP接続は、上記実施形態と同様の、印刷ジョブ有り通知を送信するために常時接続されている接続である。第一のHTTP接続は、印刷データ送信用の接続であり、プリンター3におけるエラー発生で残りの印刷データを送信できない状態で継続している接続である。第二のHTTP接続は、プリンター3においてエラーが発生した後、プリンター3からエラー情報をサーバー2に送信するためにプリンター3とHTTPサーバー23との間で新たに確立するHTTP接続である。印刷データの送信途中でプリンター3においてエラーが発生した場合にプリンター3は新たに確立された第二のHTTP接続でエラー情報をHTTPサーバー23に送信する。第二のHTTP接続はエラー情報を送信しサーバー2がエラー情報を受信した後に切断される。サーバー2は第二のHTTP接続でエラー情報を受信すると、上記実施形態のS145と同様に第一のHTTP接続を切断する。
【0035】
また、アプリケーションサーバー21が履歴情報として記憶するステータスやエラーは、XMPP接続や印刷データの送信に使用されるHTTP接続とは別のHTTP接続を用いてプリンター3から通知されるものに限定されない。例えば、印刷データの送信に使用されるHTTP接続の確立に失敗したというエラーや、その状態を示すステータスを履歴情報として記憶してもよい。また例えば、印刷データの送信に使用されるHTTP接続でプリンター3から通知された印刷キャンセルなどのエラーや、その状態を示すステータスを履歴情報として記憶してもよい。また例えば、通信端末1のユーザーからプリンター3を経由せずに通知された印刷キャンセルなどのエラーや、その状態を示すステータス、などについても履歴情報として記憶しても良い。
また、プリンター3の所有者が、自らの通信端末からWEBブラウザーを用いて管理ページを閲覧できるようにしても良い。この場合、管理ページのURLは、印刷シーケンスに先立ち予めプリンター3の所有者の通信端末において取得されている。
【0036】
また、上記実施形態ではデータ処理装置がプリンターに適用される例を説明したが、サーバーに対して処理データを要求し、サーバーから取得した処理データを用いてなんらかの処理を行う様々な装置に本発明を適用可能である。
また、上記実施形態では、「報知部」によるエラー情報に基づく情報の報知を、WEBページとして準備し当該ページを通信端末1から閲覧することで実現していたが、例えばサーバー2から通信端末1に対してエラー情報に基づいてエラーの発生とエラーの内容を通知する電子メールを送信することでユーザーに報知してもよい。
【0037】
なお、上記実施形態においては、コンテンツ情報の送信要求〜受信、および、印刷データの送信要求〜受信は、一続きのHTTPセッションで行われているが、コンテンツ情報の送信要求〜受信(図2のS120〜S125)の後にHTTPセッションを切断し、印刷データの送信要求(図2のS130)の前に新たにHTTPセッションを確立して印刷データの送信要求〜受信を行ってもよい。
【符号の説明】
【0038】
1:通信端末、2:サーバー、3:プリンター、4:インターネット、21:アプリケーションサーバー、22:SMTPサーバー、23:HTTPサーバー、24:XMPPサーバー、25:HTTPサーバー、31:コントローラー、32:受信バッファー、33:処理バッファー、34:通信部、35:印刷部

【特許請求の範囲】
【請求項1】
データ処理装置からの処理データのHTTP接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理部と、
前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記HTTP接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記HTTP接続を切断する切断処理部と、
前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存部と、
保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知部と、
を備えるサーバー。
【請求項2】
前記データ処理装置としての印刷装置であって特定の前記印刷装置に割り当てられた電子メールアドレス宛の電子メールを受信する電子メール受信部と、
受信した前記電子メールに基づいて前記処理データとしての印刷データを生成する印刷データ生成部と、
前記印刷データに関する印刷ジョブの存在を前記HTTP接続とは別の接続としてのXMPP接続で前記印刷装置に通知する印刷ジョブ通知部と、
を備え、
前記保存部は、前記印刷装置と前記印刷ジョブとに対応付けて前記エラー情報を保存し、
前記報知部は、保存された前記エラー情報に基づいて、前記印刷装置における前記印刷ジョブが前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する、
請求項1に記載のサーバー。
【請求項3】
HTTP接続でサーバーに対して処理データの送信要求を行う要求部と、
前記送信要求に応じて前記サーバーから前記HTTP接続で送信された前記処理データを受信する受信部と、
受信した前記処理データを順次取得し、当該処理データを用いて処理を行う処理部と、
前記処理データを用いた前記処理を完了する前にエラーが発生した場合に、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記HTTP接続とは別の接続で前記サーバーに通知する通知部と、
を備えるデータ処理装置。
【請求項4】
データ処理装置からの処理データのHTTP接続での送信要求に応じて前記処理データを前記データ処理装置に送信する要求処理工程と、
前記処理データを用いた処理を前記データ処理装置が完了する前にエラーが発生し、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報が前記HTTP接続とは別の接続で前記データ処理装置から通知されたことに応じて、前記HTTP接続を切断する切断処理工程と、
前記エラー情報を、前記データ処理装置と前記処理とに対応付けて保存する保存工程と、
保存された前記エラー情報に基づいて、前記データ処理装置における前記処理が前記エラーによって中断したことと当該エラーの内容とをユーザーに報知する報知工程と、
を含むサーバーのデータ処理方法。
【請求項5】
HTTP接続でサーバーに対して処理データの送信要求を行う要求工程と、
前記送信要求に応じて前記サーバーから前記HTTP接続で送信された前記処理データを受信する受信工程と、
受信した前記処理データを順次取得し、当該処理データを用いて処理を行う処理工程と、
前記処理データを用いた前記処理を完了する前にエラーが発生した場合に、当該エラーによる処理中断を示す情報と当該エラーの内容を示す情報とを含むエラー情報を前記HTTP接続とは別の接続で前記サーバーに通知する通知工程と、
を含むデータ処理装置のデータ処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−61836(P2013−61836A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2011−200267(P2011−200267)
【出願日】平成23年9月14日(2011.9.14)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】