情報処理装置及びその制御方法、並びにプログラム
【課題】プリンタのプリント機能が、ローカル印刷のみに対応しているのかプリントサービス経由の印刷にも対応しているのかによって、クライアント装置側の表示方法を変える必要があるが、表示の使い分け方法が十分に確立されていない。
【解決手段】プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、前記ネットワークに接続されたプリンタを探索する探索手段と、前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段とを有する。
【解決手段】プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、前記ネットワークに接続されたプリンタを探索する探索手段と、前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアント装置がインターネット上のプリントサービスサーバを経由した印刷に対応するプリンタを検出し、ローカル印刷と区別して使用するための制御方法に関する。
【背景技術】
【0002】
従来のプリンタから属性を取得する方法には、エージェントからの要求に対し、プリンタが1つ以上の属性値を含む属性データを返し、エージェントは受信した属性データに基づいてプリンタマネージャにプリンタを登録するものがある(例えば、特許文献1)。また、機器情報取得の技術としてWSD(Web Service on Devices)という仕組みもある。
【0003】
また、プリンタドライバのインストール方法として、クライアント装置がネットワーク上のプリンタを探索し、検出されたプリンタの中からユーザにより選択されたプリンタに対応するドライバをクライアント装置にインストールする方法が知られている。このとき、インストールされるドライバは、プリンタ管理サーバやプリンタから提供される。そして、アプリケーションで開いた文書を印刷する場合、ユーザは出力先プリンタをクライアント装置にインストールされているドライバに対応するプリンタの中から選択し、印刷指示する。これは、主にローカル環境での印刷に用いられる方法である。
【0004】
一方、インターネット上のプリントサービスサーバ経由の印刷に対応したプリンタが登場している。プリントサービスサーバ経由の印刷(プリントサービス)では、ユーザはプリントサービスサーバに文書と出力先プリンタの情報、そして、必要に応じてジョブチケットを送信する。プリントサービスサーバ経由の印刷の際には、クライアント装置内部にプリントサービスサーバに対応したサービス依頼用のドライバが1つあればよい。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−334890号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、例えば、特許文献1では、1台のプリンタが複数種類の印刷方式に対応したプリンタとして応答した場合、エージェントの処理方法が明らかではない。また、WSDによる探索では、プリンタがファックス、スキャナ、プリントなどの複数(N個)の機能情報を返した場合、クライアント装置で該当プリンタの各機能アイコン(N個)を表示することはできる。しかし、クライアント装置は、プリンタが有する1つの機能情報に対して複数のアイコンを表示したり、当該1つの印刷機能に対する複数のアイコンに異なる処理を対応付けたりするなどの使い分けは確立されていない。
【0007】
先述のようにプリントサービスサーバ経由の印刷に対応したプリンタを使用する場合、プリントサービスサーバ経由の印刷用ドライバとローカル印刷用ドライバとが必要になる。クライアント装置の要求に対し、プリンタがプリントという1つの機能を備えると応答した場合でも、プリントサービス対応かローカル印刷対応かによって、クライアント装置がユーザに対して提示する方法を変える必要があるが、その方法が十分に確立されていない。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本願発明は以下の構成を有する。すなわち、プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、前記ネットワークに接続されたプリンタを探索する探索手段と、前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段とを有する。
【発明の効果】
【0009】
本発明によると、1台のプリンタが複数の印刷機能を有する場合、それらの機能ごとに簡単に識別できる表示形態でユーザに提供し、ユーザはその表示に基づいてプリンタを使用することができるようになる。
【0010】
また、ユーザがプリントサービスを利用する際、実際にプリントサービスを実現できるプリントサービス用プリンタをユーザに明示し、使用させることが可能となる。
【図面の簡単な説明】
【0011】
【図1】印刷システムの構成例を示すブロック図。
【図2】印刷システムを構成する各装置の構成例を示すブロック図。
【図3】印刷システムを構成するプリントサービスサーバ装置の構成例を示すブロック図。
【図4】クライアント装置上の表示画面の構成例を示す図。
【図5】印刷システムで通信されるデータの構成例を示す図。
【図6】探索プログラムの処理を示すフローチャート。
【図7】探索に応答するプリンタの処理を示すフローチャート。
【図8】プリントサービス用ドライバの処理を示すフローチャート。
【図9】プリントサービス用ドライバの処理を示すフローチャート。
【図10】プリントサービス用ドライバの処理を示すフローチャート。
【発明を実施するための形態】
【0012】
[システム構成]
以下、本発明を実施するための最良の形態について図面を用いて説明する。図1は、本発明の実施形態に係る印刷システムの概略構成を示すブロック図である。本実施形態の印刷システムは、ユーザが操作し印刷指示するクライアント装置101と、印刷の出力先となる複数のプリンタ102とを備える。情報処理装置であるクライアント装置101は、パーソナルコンピュータや携帯端末などである。プリンタ102は、ファックスやスキャナを備える複合機、MFP(MultiFunction Peripheral)などでもよい。なお、本実施形態に係る印刷システムにおいて、3台のプリンタが、ネットワーク104上に接続されている。しかし、これにプリンタの台数を限定するものではない。これらはEthernet(登録商標)などで構成されるネットワーク104を介して接続されている。ネットワーク104は、有線でも無線でもよい。クライアント装置101と、プリントサービスサーバ装置103とは、ネットワーク104上に存在するゲートウェイ装置105を介し、インターネット106経由で接続される。
【0013】
図2は、図1のクライアント装置101およびプリンタ102の装置構成を示すブロック図である。クライアント装置101において、CPU111は、記憶部であるRAM112に記憶されているプログラムに従って、システムバス121に接続される各デバイスを総括的に制御する。RAM112は、CPU111の主メモリ、ワークエリア等としても機能している。ROM113は、各種プログラム及びデータを格納している。操作部I/F116は、キーボード120やポインティングデバイス(タッチパネル、マウス等:不図示)からのキー入力を制御する。
【0014】
表示部I/F115は、表示部119への表示を制御している。外部メモリI/F117は、例えばフラッシュメモリ、SSD(Solid State Disk)等の外部メモリ131とのアクセスを制御する。外部メモリ131は、オペレーティングシステム(OS)132をはじめアプリケーション133、プリンタドライバ134を記憶するクライアント装置が保存または、読み取り可能な記憶媒体として機能する。ここで用いられるプリンタドライバ134には、ローカル印刷用ドライバやプリントサービス用ドライバが含まれる。
【0015】
ネットワークI/F118は、ネットワークとの接続I/Fであり、ローカルネットワーク(ネットワーク104)への接続を可能とし、データの送受信を制御する。なお、図2の構成に限定されるものではなく、クライアント装置101が第二のネットワークI/F(不図示)を備え、携帯網などへの通信を制御して無線基地局とのネットワーク接続を行い、プリントサービスサーバ装置103と接続可能であってもよい。探索プログラム135は、ネットワークに接続されたプリンタを探索する。なお、図2では、探索プログラム135は、外部メモリ131に格納されているが、外部メモリ131以外にもRAM112やROM113にて記憶されてもよい。
【0016】
次にプリンタ102の構成について図2を用いて説明する。CPU142は、プリンタ102の全体の動作を制御している。CPU142は、RAM143に記憶されているプログラムに従って、システムバス141に接続される各デバイスを総括的に制御している。RAM143は、CPU142の主メモリ、ワークエリア等として機能するとともに、入力情報展開領域、環境データ格納領域としても用いられる。またこのRAM143は、NVRAM(Non−volatile RAM:不揮発性RAM)領域も備えており、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。ROM144は、各種フォント、CPU142により実行される制御プログラム等、及び各種データを記憶している。
【0017】
ネットワークI/F145は、クライアント装置101やプリントサービスサーバ装置103との間でのデータの送受信を制御する。ネットワークI/F145は、ウェブサービスプロトコルなど実施環境に適した実装を備える。プリンタI/F148は、プリンタエンジンである印刷部149とのインタフェースを制御している。外部メモリ161は、外部メモリI/F150によりアクセスが制御されており、例えばフラッシュメモリ、SSD等が挙げられる。また、外部メモリ161は、本実施形態に係るハードウェア情報162を記憶することも可能である。なお、ハードディスク等の外部メモリ161が接続されていない場合には、ROM144に、クライアント装置101で利用される情報等を記憶することになる。操作部I/F146は、プリンタ102の各種設定を行うための操作部147とのインタフェースを制御している。
【0018】
図3においてプリントサービスサーバ装置103の構成について説明する。プリントサービスサーバ装置103において、CPU171は、RAM172に記憶されているプログラムに従って、システムバス180に接続される各デバイスを総括的に制御している。RAM172は、CPU171の主メモリ、ワークエリア等としても機能している。ROM173は、各種プログラム及びデータを格納している。操作部I/F175は、キーボード179やポインティングデバイス(タッチパネル、マウス等:不図示)からのキー入力を制御する。表示部I/F174は、表示部178への表示を制御している。
【0019】
外部メモリI/F176は、例えばハードディスク(HD)、SSD等の外部メモリ181とのアクセスを制御する。外部メモリ181は、OS182をはじめウェブサービスライブラリ183、プリントサービスプログラム184を備える。さらに、外部メモリ181はユーザファイル、編集ファイル等を記憶するコンピュータ(不図示)が保存または、読み取り可能な記憶媒体として機能する。
【0020】
プリントサービスプログラム184は、本実施形態に係るプリンタ登録プログラム185、ユーザ登録プログラム186、プリントジョブ受信プログラム187、プリントジョブ送信プログラム188を含む。これらのプログラムの処理に関しては、後述する。さらに、レンダリングプログラム189、データベース190を含んでいる。ネットワークI/F177は、インターネット106を介してクライアント装置101やプリンタ102との間で通信制御処理を行う。
【0021】
[画面構成]
図4(a)はプリンタ探索結果を表示するクライアント装置101上の表示画面例である。プリンタ探索は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなどに、プリンタを探索するための探索プログラム135が実行されることで実施される。探索プログラム135が検出したプリンタ102は、クライアント装置101が有する表示部119に表示画面201として表示される。探索プログラム135が検出したプリンタ情報はクライアント装置101内で保持される。表示画面201はプリントサービス用プリンタ表示領域202とローカル印刷用プリンタ表示領域204とから構成される。本実施形態では、図1に示すように、プリンタA102aと、プリンタB102bと、プリンタC102cとが印刷システム内に接続されているため、探索プログラム135によりこれらのプリンタが検出される。本実施形態において、プリンタA102aとプリンタB102bとがプリントサービス対応、かつ、ローカル印刷対応であるとする。また、プリンタC102cは、ローカル印刷にのみ対応しているとする。
【0022】
探索プログラム135は、検出したプリンタがプリントサービス対応であるか、ローカル印刷対応であるかを判定し、その結果に応じて、表示画面201の各領域に、該当するプリンタを表示する。本実施形態においては、検出されたプリンタのうち、プリンタA102a、プリンタB102bがプリントサービス対応の印刷機能を備えているため、プリントサービス用プリンタ表示領域202に表示される。さらに、探索プログラム135は、プリントサービスに対応する印刷機能が稼働しているかを判定し、稼働している場合と稼働していない場合とで異なる表示をすることで稼働状態が分かる表示をする。例えば、プリントサービスの印刷機能を備えているが、その機能が稼働されていない場合、プリンタアイコン203に示すように薄い色のプリンタアイコンを用いるなどする。ここで示す例によるとプリンタA102aはプリントサービス対応であり、そのサービスに対応する印刷機能が稼働していることを示している。また、プリンタB102bはプリントサービス対応であるが、そのサービスに対応する印刷機能が稼働していないことを示している。
【0023】
一方で、検出されたプリンタがローカル印刷対応であった場合、該当するプリンタがローカル印刷用プリンタ表示領域204に表示される。本実施形態においては、プリンタA102a、プリンタB102b、プリンタC102cが表示されている。さらに、探索プログラム135は、ローカル印刷の機能が稼働しているかを判定し、稼働している場合と稼働していない場合とで異なる表示をすることで稼働状態が分かる表示をする。なお、ここで示す例によると、いずれのプリンタにおけるローカル印刷の機能は稼働中であることを示している。プリントサービス用プリンタ表示領域202にて示されるプリンタアイコンと、ローカル印刷用プリンタ表示領域204にて示されるプリンタアイコンとは異なる形式、形状、及び色で表示してもよい。また、同じプリンタ表示領域中に表示されるプリンタアイコンであっても、印刷機能の稼働状態に応じて形状や色に差異を持たせて表示方法を区別してもよい。また、異なる領域に表示するアイコンであっても、同じプリンタを示す場合には、同じ表示形式で示すようにしても構わない。また、特定の印刷機能を有していても、当該印刷機能が稼働していない場合には、利用できないとして、非表示にしても構わない。
【0024】
表示画面201の特徴は、探索プログラム135が検出したプリンタをプリントサービス機能の有無に応じて表示領域を分けたり、アイコンの形状や色を異なるものにしたりすることにより表示する点である。これにより、1台のプリンタが複数の印刷機能を有していても、それぞれの印刷機能に応じて、通常のローカル印刷用プリンタとして、または、プリントサービス用プリンタとして簡単に識別して使用することができるようになる。
【0025】
表示画面201において、プリントサービス用プリンタ表示領域202内のプリンタアイコン203が押下されると、そのアイコンに対応するプリンタのプリントサービス用ドライバがクライアント装置101にインストールされる。また、ローカル印刷用プリンタ表示領域204内のプリンタアイコン205が押下されると、そのアイコンに対応するプリンタのローカル印刷用ドライバがインストールされる。ここでインストールされるドライバは、プリンタ管理サーバ(不図示)や選択されたプリンタからダウンロードされ、インストールされる。そして、プリンタドライバは、クライアント装置101の外部メモリ131にプリンタドライバ134として登録される。
【0026】
プリントサービス対応のプリンタドライバを使用する場合、プリンタドライバはプリントサービスサーバ装置103に文書、出力先プリンタの情報、及び必要に応じてジョブチケットを送信できればよい。このため、プリントサービス対応のプリンタドライバはプリントサービスサーバ装置103へのサービス要求するための機能を備えるプリンタドライバであればよく、出力先プリンタの機種に応じたプリンタドライバが複数用意される必要はない。
【0027】
図4(b)は、プリンタおよびプリンタドライバの選択画面である。プリントサービスサーバ装置103が提供するプリントサービスを利用する場合、ユーザはプリントサービス用ドライバを選択して起動し、プリントサービスサーバ装置103へアクセスを指示する。選択画面301は、ユーザの操作によりアプリケーション133で表示部119に表示されている文書に対し印刷指示がなされた際に、クライアント装置101の表示部119に表示される。選択画面301は、選択候補表示領域302と、詳細設定ボタン303と、選択ボタン304とを備える。選択候補表示領域302には、ローカル印刷を実行可能な出力先プリンタとともに、プリントサービス用ドライバが表示される。本実施形態においては、プリンタA102a、プリンタB102b、プリンタC102cがローカル印刷に対応しているため、これらのプリンタが表示されている。キーボード120やマウス等を用いたユーザ操作により、選択候補表示領域302から出力先プリンタもしくはプリントサービス用ドライバが指定される。そして、選択ボタン304が押下されることにより、文書の送信先が決定される。詳細設定ボタン303が押下されると、印刷にかかわる詳細な設定を行うための画面(不図示)を表示される。ここでの詳細設定については、本発明に係る重要部分ではないため、説明を省略する。
【0028】
図4(c)は、プリントサービスを利用する際における出力先プリンタの選択画面である。このプリンタ選択画面401は図4(b)でプリントサービス用ドライバが選択され、出力可能なプリントサービス用プリンタが存在する場合に表示される。ここで表示されるプリントサービス用プリンタは探索プログラム135で検出されたプリンタ情報に基づき、そのまま表示される訳ではなく、プリントサービス対応のプリンタのうち、利用可能な状態のプリンタが表示される。なお、これに限定するものではなく、プリントサービス対応のプリンタを全て表示し、利用不可の状態のプリンタは選択できないような構成として明示しても構わない。
【0029】
図4(b)の選択画面301でプリントサービス用ドライバが選択されると、プリントサービス用ドライバはプリントサービスを利用可能な状態であるかを確認する。本実施形態の確認処理において、起動されたプリントサービス用ドライバは、第一の通信チェックと第二の通信チェックを行う。第一の通信チェックでは、クライアント装置101とプリントサービスサーバ装置103との接続可否と、クライアント装置101が登録しいているプリントサービス用プリンタがプリントサービスサーバ装置103に登録されているかを確認する。この処理に関しては、図9を用いて後述する。第二の通信チェックでは、クライアント装置101と、クライアント装置101が登録しているプリントサービス用プリンタとの接続可否を確認する。さらに、当該プリンタにおいて、プリントサービス対応の印刷機能が稼働しているか、当該プリンタがプリントサービスサーバ装置103と通信可能であるかを確認する。この処理に関しては、図10を用いて後述する。
【0030】
プリントサービス用ドライバは、第一の通信チェックと第二の通信チェックにより、プリントサービスに利用できるプリントサービス用プリンタを抽出し、プリンタリスト402に表示する。プリンタ選択画面401はプリンタリスト402のほかに詳細設定ボタン403と選択ボタン404を備える。キーボード120やマウス等を用いたユーザ操作により、プリンタリスト402から出力先のプリンタが指定され、選択ボタン404が押下されることにより、文書の送信先が決定される。プリントサービス用ドライバは、文書と、出力先のプリンタ特定情報と、ジョブチケットとをプリントサービスサーバ装置103に送信する。ユーザによる送信の指示は、選択ボタン404の押下を送信指示とみなしてもよいし、別途、送信ボタンを設けて送信指示を発行してもよい。詳細設定ボタン403が押下されると、印刷にかかわる詳細な設定を行うための画面(不図示)を表示される。なお、ここでの詳細設定は、本発明において重要部分ではないため、説明を省略する。
【0031】
[データ構成例]
図5は、本実施形態の印刷システムで通信されるデータの構成例を示している。図5(a)は、探索プログラム135が検出したプリンタから取得する機器情報のデータである。探索プログラム135は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなどに、ユーザがプリンタを検出するために使用される。
【0032】
機器情報のデータは、プリンタ名501、IPアドレス502、ローカル印刷機能503、ローカル印刷状態504、プリントサービス機能505、及びプリントサービス状態506の情報を含む。プリンタ名501は、プリンタを一意に識別するための情報である。IPアドレス502は、クライアント装置101やプリントサービスサーバ装置103がプリントジョブを送信する送信先に関する情報である。ローカル印刷機能503は、プリンタが通常のローカル印刷を実現する機能を備えているか否かを示す情報である。ローカル印刷状態504は、プリンタがローカル印刷を実行できる状態になっているか否かを示す情報である。プリントサービス機能505は、プリンタがプリントサービスに対応した印刷機能を備えているか否かを示す情報である。プリントサービス状態506は、プリンタがプリントサービスによる印刷を実行できる状態になっているかを示す情報である。
【0033】
図5(b)は、後述する第一の通信チェックの処理において、プリントサービス用ドライバがプリントサービスサーバ装置103から取得するデータである。このデータには、プリントサービス用ドライバがプリントサービスサーバ装置103と通信可能であるかについての情報である通信可否511が含まれる。また、データには、検出された各プリンタの登録情報であるプリンタ登録状況512も含まれる。通信可否511は、プリントサービスサーバ装置103から応答があれば通信可能になるが、一定期間応答がなくプリントサービスサーバ装置103が停止しているとみなせる場合には通信不可になる。通信不可の場合には、プリンタ登録状況512は取得できない。プリンタ登録状況512は、探索プログラムで検出されクライアント装置101内で情報が保持されているプリントサービス用プリンタが、プリントサービスサーバ装置103にて、プリントサービス用プリンタとして登録管理されているかを示す情報である。通信可否511の値が“通信可能”であった場合、プリントサービス用ドライバは保持しているプリンタリストをプリントサービスサーバ装置103に送信し、登録確認を依頼することが可能である。プリントサービスサーバ装置103からの応答内容は、“登録済み”か“未登録”のいずれかとなる。
【0034】
図5(c)は、後述する第二の通信チェックの処理において、プリントサービス用ドライバがプリントサービス用プリンタから取得するデータである。第二の通信チェックは、プリントサービス用ドライバが起動されたとき、プリントサービスで利用可能な状態にあるプリントサービス用プリンタを抽出するために実施される処理である。図5(c)に示すデータには、プリンタの稼働状況521、プリントサービス機能522、及びサーバとの通信状況523の情報が含まれる。プリンタの稼働状況521は、プリントサービス用ドライバがプリントサービス用プリンタと通信可能であるか否かについての情報である。プリントサービス機能522は、プリンタが備えるプリントサービスに対応する機能が利用可能となっているか否かの情報である。サーバとの通信状況523は、プリントサービス用プリンタがプリントサービスサーバ装置103と通信可能な状態になっているか否かについての情報である。サーバとの通信状況523は、プリントサービス用ドライバからの依頼によりプリントサービス用プリンタがプリントサービスサーバ装置103との通信確認を行うことにより取得する情報である。
【0035】
図5(d)は、プリントサービス用ドライバがプリントサービスサーバ装置103に送信する印刷要求データ(プリントジョブ)である。印刷要求データには、プリンタ特定情報、印刷対象の文書やイメージ、及びジョブチケットが含まれる。プリンタ特定情報には、プリンタ名531やIPアドレス532が含まれる。印刷対象の文書やイメージの情報には、文書名533が含まれる。ジョブチケットの情報には、チケットID534が含まれる。
【0036】
プリントサービスサーバ装置103には、プリンタ登録プログラム185によりデータベース190にプリントサービス対応したプリンタ、機種ごとの機器情報などが登録されている。プリントサービスサーバ装置103は図5(d)に示すようなプリントジョブを受信すると、プリントジョブ受信プログラム187がプリンタ名531を用いてデータベース190を参照して出力先プリンタの機種を確定し、機種情報を取得する。レンダリングプログラム189は出力先プリンタの機種に応じたレンダリングを行い、プリントジョブ送信プログラム188はIPアドレス532などを用いて出力先プリンタにプリントジョブを送信する。このとき、ウェブサービスライブラリ183を利用する。
【0037】
[探索処理フロー]
図6は、クライアント装置101が有する探索プログラム135の処理を表すフローチャートである。プリンタ探索は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなど、ユーザがプリンタを検出するために探索プログラム135を実行することにより実施される。図1において探索プログラム135は、外部メモリ131に記憶されているが、これに限定するものではなく、RAM112やROM113などに格納されていてもよい。
【0038】
探索プログラム135の処理が開始されると、探索プログラム135はプリンタ探索パケットをネットワーク104に送信する(S1001)。探索プログラム135は、ネットワーク104に接続されたプリンタからプリンタ探索パケットの応答として、探索結果(図5(a))を受信する(S1002)。これにより、ネットワークに接続されたプリンタに関する機能および稼働状態の情報を収集している。そして、受信した探索結果に基づき、探索プログラム135は、検出されたプリンタがプリントサービス用プリンタの機能を備えているか否かを判定する(S1003)。探索プログラム135の処理は、プリンタがプリントサービス対応の機能を備えている場合(S1003にてYES)、S1004へ遷移し、備えていない場合(S1003にてNO)、S1007へ遷移する。
【0039】
S1004にて、探索プログラム135は、検出したプリントサービス用プリンタのプリントサービス対応の機能が有効になっているか否かを判定する。有効になっている場合(S1004にてYES)、S1005で探索プログラム135は、検出したプリンタを利用可能なプリントサービス用プリンタとして情報を保持し、S1007へ遷移する。無効になっている場合(S1004にてNO)、S1006で探索プログラム135は、検出したプリンタを現在利用できないプリントサービス用プリンタとして情報を保持し、S1007へ遷移する。
【0040】
S1007にて、探索プログラム135は、検出されたプリンタがローカル印刷用プリンタの機能を備えているか否かを判定する。探索プログラム135の処理は、プリンタがローカル印刷対応の機能を備えている場合(S1007にてYES)、S1008へ遷移し、備えていない場合(S1007にてNO)、S1011へ遷移する。S1008にて探索プログラム135は、検出したローカル印刷用プリンタのローカル印刷対応の機能が有効になっているか否かを判定する。有効になっている場合(S1008にてYES)、S1009にて探索プログラム135は、検出したプリンタを利用可能なローカル印刷用プリンタとして情報を保持し、S1011へ遷移する。無効になっている場合(S1008にてNO)、S1010にて探索プログラム135は、検出したプリンタを現在利用できないローカル印刷用プリンタとして情報を保持し、S1011へ遷移する。S1011で探索プログラム135は探索結果を表示し(図4(a))、処理を終了する。探索プログラム135がこのような処理を行うことにより、1台のプリントサービス対応のプリンタを通常のローカル印刷用プリンタとして、または、プリントサービス用プリンタとして簡単に識別して使用することができるようになる。
【0041】
[探索応答処理フロー]
図7は、探索に応答するプリンタの処理を表すフローチャートである。図6に示したクライアント装置101の探索プログラム135による問い合わせに対するプリンタ102の応答処理になる。本実施形態では、プリンタ102のCPU142が、記憶部に格納された、対応するプログラムを読み出し、実行することで実現される。なお、本実施形態では、プリンタA102a、プリンタB102b、プリンタC102cの3台のプリンタがネットワークに接続されている構成例を示しているが、各プリンタが有する機能については、上述した通りである。
【0042】
プリンタ102は、探索プログラム135から送信されたプリンタ探索パケットを受信すると(S2001)、プリンタ自身がプリントサービスに対応する機能を備えているかを判定する(S2002)。プリンタ102の処理は、上記機能を備えている場合(S2002にてYES)、S2003へ遷移し、備えていない場合(S2002にてNO)、S2007へ遷移する。S2003にて、プリンタ102は、プリンタサービス用プリンタとして応答を準備し、S2004へ遷移する。S2004にて、プリンタ102は、プリントサービスに対応する機能が有効になっているか否かを判定する。有効になっている場合(S2004にてYES)、S2005にてプリンタ102は、プリントサービス対応機能が有効である応答情報を保持し、S2007へ遷移する。無効になっている場合(S2004にてNO)、S2006にてプリンタ102は、プリントサービス対応機能が無効である応答情報を保持し、S2007へ遷移する。
【0043】
S2007でプリンタ102は、自身がローカル印刷に対応する機能を備えているか否かを判定する。ローカル印刷に対応する機能を備えている場合(S2007にてYES)、プリンタ102は、S2008でローカル印刷用プリンタであるという応答情報を保持し、S2009へ遷移する。ローカル印刷に対応する機能を備えていない場合(S2007にてNO)、S2012へ遷移する。S2009でプリンタ102は、ローカル印刷対応機能が有効になっているか否かを判定する。有効になっている場合(S2009にてYES)、S2010にてプリンタ102はローカル印刷の機能が有効である応答情報を保持し、S2012へ遷移する。無効になっている場合(S2009にてNO)、S2011にてプリンタはローカル印刷の機能が無効になっている応答情報を保持し、S2012へ遷移する。S2012にてプリンタ102は、保持した応答情報をクライアント装置101へ送信し、処理を終了する。なお、プリンタ自身のプリントサービス対応機能の有無に関する情報は、機能追加などにより外部メモリ161に格納されていてもよいし、出荷時からの常設機能としてROM144に格納されていてもよい。
【0044】
ネットワーク104に接続されたプリンタ102による応答方法の例として3つの例を示す。第一の例は、ローカル印刷用プリンタとプリントサービス用プリンタとに対してそれぞれの対応の有無を含む1つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135はプリンタ102から応答(図5(a))を受信したら、各プリンタについて、1つの応答からローカル印刷用プリンタへの対応とプリントサービス用プリンタへの対応について判定する。
【0045】
第二の例は、プリンタがプリントサービスに対応している場合、プリントサービスに対応しているという情報のみを含む1つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135はプリンタから応答を受信したら、当該プリンタがローカル印刷機能を有していることは自明とみなす。そして、受信した応答に基づき、プリントサービスに対応しているか否かを判定する。ただし、ローカル印刷機能に対応するとの前提であっても、ローカル印刷機能が無効になっている場合は、プリンタ102は、探索プログラム135に対して無効情報を返す必要がある。この無効情報に基づき、探索プログラム135は、当該プリンタにてローカル印刷機能が無効化されていると判定する。
【0046】
第三の例は、ローカル印刷用プリンタとプリントサービス用プリンタとに対してそれぞれ別々に対応の有無を含む応答を用意し、プリンタとしては2つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135は、応答を1つ受信し、更に2つ目の応答を無視しないように応答を受信し処理を行う。ただし、何らかの理由により、1つ目に受信した応答がプリントサービス用プリンタとしての応答であった場合、2つ目はローカル印刷用プリンタとしての応答となる。そのため、先にプリントサービス用プリンタとしての応答を受信した場合にローカル印刷対応は自明であるとみなすのであるならば、2つ目に受信する応答については無視してもよい。
【0047】
[プリントサービス用ドライバの処理フロー]
図8は、プリントサービス用ドライバの処理を表すフローチャートである。本処理は、CPU111が外部メモリ131に格納されたプリンタドライバ134を読み出し、実行される。
【0048】
クライアント装置101上のアプリケーション133からの印刷要求により、プリンタドライバ134は印刷設定の開始指示を検知する(S3001)。S3002でプリンタドライバ134は、図4(b)に示すようなプリンタおよびドライバの選択画面301を表示する。ユーザによるプリントサービス用ドライバの選択を検知すると(S3003)、プリンタドライバ134は、プリントサービス用ドライバが選択されたか否かを判定する(S3004)。プリントサービス用ドライバが選択された場合(S3004にてYES)、S3005へ遷移する。選択されなかった場合(S3004にてNO)、S3018へ遷移する。
【0049】
S3005でプリンタドライバ134は、プリントサービス用ドライバを稼働させる。S3006でプリントサービス用ドライバは、第一の通信チェックを行う。第一の通信チェックでは、プリントサービスサーバ装置103との接続可否を確認する。さらに、プリントサービス用ドライバは、クライアント装置101が登録しているプリントサービス用プリンタがプリントサービスサーバ装置103に登録されているかを確認する。この処理の詳細に関しては、図9を用いて後述する。S3007でプリントサービス用ドライバは、第二の通信チェックを行う。第二の通信チェックでは、クライアント装置101が登録しているプリントサービス用プリンタとの接続可否を確認する。さらに、プリントサービス対応の印刷機能が稼働しているか、プリンタがプリントサービスサーバ装置103と通信可能であるかを確認する。この処理の詳細に関しては、図10を用いて後述する。
【0050】
S3008にてプリントサービス用ドライバは、第一の通信チェックと第二の通信チェックとにより、プリントサービスを利用可能であるかを判定する。プリントサービス用ドライバを用いてプリントサービスの利用が可能である場合(S3008にてYES)、S3009へ遷移する。利用できない場合(S3008にてNO)、S3017へ遷移する。S3009でプリントサービス用ドライバは、プリントサービス用プリンタを抽出する。そして、S3010にてプリントサービス用ドライバは、探索結果として抽出したプリントサービス用プリンタのリスト(図4(c))を表示する。プリントサービス用ドライバは、ユーザによるプリントサービス用プリンタの選択を検知すると(S3011)、プリントサービスでの出力先として選択されたプリンタのプリンタ特定情報を保持する(S3012)。その後、プリントサービス用ドライバは、ユーザ操作による印刷指示を検知すると(S3013)、印刷対象文書あるいはイメージを取得し(S3014)、対応するジョブチケットを発行する(S3015)。そして、プリントサービス用ドライバは、プリンタ特定情報、印刷対象文書、及びジョブチケットをプリントサービスサーバ装置103へ送信する。
【0051】
一方で、プリンタ探索の結果、プリントサービス用の機能を備えるプリンタは検出できない場合(S3008にてNO)、プリントサービス用ドライバはプリントサービス用プリンタを検出できなかったことを表示部119に表示する(S3017)。そして、プリンタドライバはプリントサービス用ドライバの処理を停止し、S3002の処理へ戻る。S3017から遷移してS3002で表示する図4(b)のプリンタおよびドライバの選択画面301では、プリントサービス用ドライバを選択肢に含まない表示を行い、選択候補表示領域302にはローカル印刷での出力先となるプリンタのみを表示する。この場合、S3003の処理でプリントサービス用ドライバは選択されないので、S3004の判定ではS3018へ遷移することになる。
【0052】
S3018の処理でプリンタドライバ134は、ユーザによって選択されたローカル印刷用のプリンタ情報を保持する。プリンタドライバ134は、ユーザ操作による文書の印刷指示を検知すると(S3019)、印刷対象文書を取得する(S3020)。そして、プリンタドライバ134は、取得した印刷対象文書をユーザから指定されたローカル印刷用の出力先プリンタへ送信し(S3021)、処理を終了する。プリントサービスを利用するに当たり、プリントサービス用ドライバが第一の通信チェックと第二の通信チェックを行う。これにより、実際にプリントサービスを実現できるプリントサービス用プリンタのみを選択して使用することが可能となる。
【0053】
なお、本実施形態において、プリントサービスサーバ装置103はプリントジョブを受信すると、プリントジョブ受信プログラム187がプリンタ名531を用いてデータベース190を参照して出力先プリンタの機種を確定し、機種情報を取得する。レンダリングプログラム189は、出力先プリンタの機種に応じたレンダリングを行い、プリントジョブ送信プログラム188はIPアドレス532などを用いて出力先プリンタにプリントジョブを送信する。このとき、ウェブサービスライブラリ183を利用する。
【0054】
また、プリントサービス用ドライバが発行したジョブチケットはユーザに通知あるいは表示される。プリントサービス用プリンタはチケットIDの入力を検知したら、出力処理を行う。
【0055】
また、S3009にて抽出されたプリンタが1台のみであれば、S3010およびS3011の処理を省略し、S3012にて当該1台のプリンタの情報を保持するようにしても構わない。
【0056】
[第一の通信チェック]
図9は、プリントサービス用ドライバによる第一の通信チェックの処理を表すフローチャートである。本処理は、クライアント装置101のCPU111がプログラムを読み出すことにより実行される。なお、本処理により、第一の確認手段が実現される。
【0057】
S3031にて、プリントサービス用ドライバはクライアント装置101が管理するプリントサービスサーバ装置103の宛先情報を取得する。S3032でプリントサービス用ドライバは、プリントサービスサーバ装置103に通信チェックパケットを送信し、S3033でその応答を受信する。そして、S3034でプリントサービス用ドライバは、受信した応答に基づきプリントサービスサーバ装置103と通信可能であるかを判定する。例えば、所定時間内に応答が受信できない場合には、通信不可と判定してもよい。通信可能な場合(S3034にてYES)、S3035へ遷移する。通信不可能な場合(S3034にてNO)、S3040へ遷移する。
【0058】
S3035でプリントサービス用ドライバは、プリンタリストを取得する。このプリンタリストは探索プログラム135で検出し、保持していたプリントサービス用プリンタのリストである。本実施形態において、プリンタリストは、プリントサービス用ドライバによる処理に使用するため、複製したものを使用する。プリントサービス用ドライバはプリントサービスサーバ装置103に対し、プリンタリストを送信し、プリントサービス用にプリンタリストのプリンタが登録されているかを確認依頼する(S3036)。
【0059】
プリントサービス用ドライバは、プリントサービスサーバ装置103からプリンタ登録の状況を受信し(S3037)、プリントサービスを利用できないプリンタがあったかを判定する(S3038)。プリントサービスを利用できないプリントサービス用プリンタがあった場合(S3038にてYES)、プリントサービス用ドライバはプリンタリストを更新し(S3039)、処理を終了する。プリンタリストの更新が必要なければ、つまり、全てのプリンタが登録されていれば(S3038にてNO)、プリントサービス用ドライバはプリンタリストを保持したまま処理を終了する。また、プリントサービスサーバ装置103と通信不可である場合(S3034にてNO)、プリントサービス用ドライバは通信可否511として通信不可情報を保持し(S3040)、処理を終了する。
【0060】
[第二の通信チェック]
図10はプリントサービス用ドライバによる第二の通信チェックの処理を表すフローチャートである。本処理は、クライアント装置101のCPU111がプログラムを読み出すことにより実現される。なお、本処理により、第二の確認手段が実現される。
【0061】
プリントサービス用ドライバは、第一の通信チェックにおける通信可否511を取得する(S3051)。S3052でプリントサービス用ドライバは、通信可否511に基づいて、プリントサービスサーバ装置103との通信が可能であるか否かを判定する。通信可能な場合(S3052にてYES)、S3053に遷移する。通信不可能な場合(S3052にてNO)、S3067へ遷移する。S3053でプリントサービス用ドライバは、第一の通信チェック終了時のプリンタリストを取得する。S3054でプリントサービス用ドライバは、プリンタリストに記録されているプリントサービス用プリンタに通信チェックパケットを送信する。プリントサービス用ドライバは、プリントサービス用プリンタから通信チェックパケットに対する応答を受信すると(S3055)、受信した応答に基づきプリントサービス用プリンタとの通信が可能であるかを判定する(S3056)。例えば、所定時間内に応答が受信できない場合には通信不可と判定してもよい。
【0062】
通信可能な場合(S3056にてYES)、S3057へ遷移する。通信不可能な場合(S3056にてNO)、S3065へ遷移する。S3057でプリントサービス用ドライバは、通信可能なプリントサービス用プリンタにプリントサービスに対応する機能の稼働を確認依頼する。そして、プリントサービス用ドライバは、プリントサービス用プリンタからの応答を受信すると(S3058)、S3059にて受信した応答に基づきプリントサービスに対応する機能が稼働しているか判定する。稼働している場合(S3059にてYES)、S3060へ遷移する。稼働していない場合(S3059にてNO)、S3066へ遷移する。
【0063】
S3060でプリントサービス用ドライバは、プリントサービスサーバ装置103の宛先情報を取得する。そして、S3061にてプリントサービス用ドライバは、プリントサービス用プリンタに対して宛先情報を添えてプリントサービスサーバ装置103との通信チェックを依頼する。プリントサービス用ドライバは、通信チェックを依頼したプリンタから応答情報を受信すると(S3062)、S3063で受信した応答情報に基づきプリントサービスサーバ装置103と通信できないプリントサービス用プリンタがあったか否かを判定する。プリントサービスサーバ装置103とプリントサービス用プリンタとの通信結果は、図5(c)に示したサーバとの通信状況523の情報にて示される。通信できないプリントサービス用プリンタがあった場合(S3063にてYES)、S3064でプリントサービス用ドライバはプリンタリストを更新し、処理を終了する。通信できないプリントサービス用プリンタがなければ(S3063にてNO)、プリントサービス用ドライバはプリンタリストをそのまま保持し、処理を終了する。
【0064】
一方、S3065ではプリントサービス用ドライバは、図5(c)に示すプリントサービス用プリンタの稼働状況521において“稼働していない”という旨の情報を保持し、S3067へ遷移する。また、S3066でプリントサービス用ドライバは、図5(c)に示すプリントサービス機能522において“稼働していない”という旨、すなわち、“無効”として情報を保持し、S3067へ遷移する。S3067でプリントサービス用ドライバは、S3065やS3066等により更新されたプリントサービスの利用ができないという情報を保持し、処理を終了する。
【0065】
以上により、ユーザは、1台のプリンタを、ローカル印刷用プリンタ、または、プリントサービス用プリンタとして簡単に識別でき、使用することができるようになる。また、ユーザがプリントサービスを利用する際、実際にプリントサービスを実現できるプリントサービス用プリンタが明示され、ユーザは表示を参照して容易に印刷機能を使用できる。
【0066】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、クライアント装置がインターネット上のプリントサービスサーバを経由した印刷に対応するプリンタを検出し、ローカル印刷と区別して使用するための制御方法に関する。
【背景技術】
【0002】
従来のプリンタから属性を取得する方法には、エージェントからの要求に対し、プリンタが1つ以上の属性値を含む属性データを返し、エージェントは受信した属性データに基づいてプリンタマネージャにプリンタを登録するものがある(例えば、特許文献1)。また、機器情報取得の技術としてWSD(Web Service on Devices)という仕組みもある。
【0003】
また、プリンタドライバのインストール方法として、クライアント装置がネットワーク上のプリンタを探索し、検出されたプリンタの中からユーザにより選択されたプリンタに対応するドライバをクライアント装置にインストールする方法が知られている。このとき、インストールされるドライバは、プリンタ管理サーバやプリンタから提供される。そして、アプリケーションで開いた文書を印刷する場合、ユーザは出力先プリンタをクライアント装置にインストールされているドライバに対応するプリンタの中から選択し、印刷指示する。これは、主にローカル環境での印刷に用いられる方法である。
【0004】
一方、インターネット上のプリントサービスサーバ経由の印刷に対応したプリンタが登場している。プリントサービスサーバ経由の印刷(プリントサービス)では、ユーザはプリントサービスサーバに文書と出力先プリンタの情報、そして、必要に応じてジョブチケットを送信する。プリントサービスサーバ経由の印刷の際には、クライアント装置内部にプリントサービスサーバに対応したサービス依頼用のドライバが1つあればよい。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−334890号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、例えば、特許文献1では、1台のプリンタが複数種類の印刷方式に対応したプリンタとして応答した場合、エージェントの処理方法が明らかではない。また、WSDによる探索では、プリンタがファックス、スキャナ、プリントなどの複数(N個)の機能情報を返した場合、クライアント装置で該当プリンタの各機能アイコン(N個)を表示することはできる。しかし、クライアント装置は、プリンタが有する1つの機能情報に対して複数のアイコンを表示したり、当該1つの印刷機能に対する複数のアイコンに異なる処理を対応付けたりするなどの使い分けは確立されていない。
【0007】
先述のようにプリントサービスサーバ経由の印刷に対応したプリンタを使用する場合、プリントサービスサーバ経由の印刷用ドライバとローカル印刷用ドライバとが必要になる。クライアント装置の要求に対し、プリンタがプリントという1つの機能を備えると応答した場合でも、プリントサービス対応かローカル印刷対応かによって、クライアント装置がユーザに対して提示する方法を変える必要があるが、その方法が十分に確立されていない。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本願発明は以下の構成を有する。すなわち、プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、前記ネットワークに接続されたプリンタを探索する探索手段と、前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段とを有する。
【発明の効果】
【0009】
本発明によると、1台のプリンタが複数の印刷機能を有する場合、それらの機能ごとに簡単に識別できる表示形態でユーザに提供し、ユーザはその表示に基づいてプリンタを使用することができるようになる。
【0010】
また、ユーザがプリントサービスを利用する際、実際にプリントサービスを実現できるプリントサービス用プリンタをユーザに明示し、使用させることが可能となる。
【図面の簡単な説明】
【0011】
【図1】印刷システムの構成例を示すブロック図。
【図2】印刷システムを構成する各装置の構成例を示すブロック図。
【図3】印刷システムを構成するプリントサービスサーバ装置の構成例を示すブロック図。
【図4】クライアント装置上の表示画面の構成例を示す図。
【図5】印刷システムで通信されるデータの構成例を示す図。
【図6】探索プログラムの処理を示すフローチャート。
【図7】探索に応答するプリンタの処理を示すフローチャート。
【図8】プリントサービス用ドライバの処理を示すフローチャート。
【図9】プリントサービス用ドライバの処理を示すフローチャート。
【図10】プリントサービス用ドライバの処理を示すフローチャート。
【発明を実施するための形態】
【0012】
[システム構成]
以下、本発明を実施するための最良の形態について図面を用いて説明する。図1は、本発明の実施形態に係る印刷システムの概略構成を示すブロック図である。本実施形態の印刷システムは、ユーザが操作し印刷指示するクライアント装置101と、印刷の出力先となる複数のプリンタ102とを備える。情報処理装置であるクライアント装置101は、パーソナルコンピュータや携帯端末などである。プリンタ102は、ファックスやスキャナを備える複合機、MFP(MultiFunction Peripheral)などでもよい。なお、本実施形態に係る印刷システムにおいて、3台のプリンタが、ネットワーク104上に接続されている。しかし、これにプリンタの台数を限定するものではない。これらはEthernet(登録商標)などで構成されるネットワーク104を介して接続されている。ネットワーク104は、有線でも無線でもよい。クライアント装置101と、プリントサービスサーバ装置103とは、ネットワーク104上に存在するゲートウェイ装置105を介し、インターネット106経由で接続される。
【0013】
図2は、図1のクライアント装置101およびプリンタ102の装置構成を示すブロック図である。クライアント装置101において、CPU111は、記憶部であるRAM112に記憶されているプログラムに従って、システムバス121に接続される各デバイスを総括的に制御する。RAM112は、CPU111の主メモリ、ワークエリア等としても機能している。ROM113は、各種プログラム及びデータを格納している。操作部I/F116は、キーボード120やポインティングデバイス(タッチパネル、マウス等:不図示)からのキー入力を制御する。
【0014】
表示部I/F115は、表示部119への表示を制御している。外部メモリI/F117は、例えばフラッシュメモリ、SSD(Solid State Disk)等の外部メモリ131とのアクセスを制御する。外部メモリ131は、オペレーティングシステム(OS)132をはじめアプリケーション133、プリンタドライバ134を記憶するクライアント装置が保存または、読み取り可能な記憶媒体として機能する。ここで用いられるプリンタドライバ134には、ローカル印刷用ドライバやプリントサービス用ドライバが含まれる。
【0015】
ネットワークI/F118は、ネットワークとの接続I/Fであり、ローカルネットワーク(ネットワーク104)への接続を可能とし、データの送受信を制御する。なお、図2の構成に限定されるものではなく、クライアント装置101が第二のネットワークI/F(不図示)を備え、携帯網などへの通信を制御して無線基地局とのネットワーク接続を行い、プリントサービスサーバ装置103と接続可能であってもよい。探索プログラム135は、ネットワークに接続されたプリンタを探索する。なお、図2では、探索プログラム135は、外部メモリ131に格納されているが、外部メモリ131以外にもRAM112やROM113にて記憶されてもよい。
【0016】
次にプリンタ102の構成について図2を用いて説明する。CPU142は、プリンタ102の全体の動作を制御している。CPU142は、RAM143に記憶されているプログラムに従って、システムバス141に接続される各デバイスを総括的に制御している。RAM143は、CPU142の主メモリ、ワークエリア等として機能するとともに、入力情報展開領域、環境データ格納領域としても用いられる。またこのRAM143は、NVRAM(Non−volatile RAM:不揮発性RAM)領域も備えており、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。ROM144は、各種フォント、CPU142により実行される制御プログラム等、及び各種データを記憶している。
【0017】
ネットワークI/F145は、クライアント装置101やプリントサービスサーバ装置103との間でのデータの送受信を制御する。ネットワークI/F145は、ウェブサービスプロトコルなど実施環境に適した実装を備える。プリンタI/F148は、プリンタエンジンである印刷部149とのインタフェースを制御している。外部メモリ161は、外部メモリI/F150によりアクセスが制御されており、例えばフラッシュメモリ、SSD等が挙げられる。また、外部メモリ161は、本実施形態に係るハードウェア情報162を記憶することも可能である。なお、ハードディスク等の外部メモリ161が接続されていない場合には、ROM144に、クライアント装置101で利用される情報等を記憶することになる。操作部I/F146は、プリンタ102の各種設定を行うための操作部147とのインタフェースを制御している。
【0018】
図3においてプリントサービスサーバ装置103の構成について説明する。プリントサービスサーバ装置103において、CPU171は、RAM172に記憶されているプログラムに従って、システムバス180に接続される各デバイスを総括的に制御している。RAM172は、CPU171の主メモリ、ワークエリア等としても機能している。ROM173は、各種プログラム及びデータを格納している。操作部I/F175は、キーボード179やポインティングデバイス(タッチパネル、マウス等:不図示)からのキー入力を制御する。表示部I/F174は、表示部178への表示を制御している。
【0019】
外部メモリI/F176は、例えばハードディスク(HD)、SSD等の外部メモリ181とのアクセスを制御する。外部メモリ181は、OS182をはじめウェブサービスライブラリ183、プリントサービスプログラム184を備える。さらに、外部メモリ181はユーザファイル、編集ファイル等を記憶するコンピュータ(不図示)が保存または、読み取り可能な記憶媒体として機能する。
【0020】
プリントサービスプログラム184は、本実施形態に係るプリンタ登録プログラム185、ユーザ登録プログラム186、プリントジョブ受信プログラム187、プリントジョブ送信プログラム188を含む。これらのプログラムの処理に関しては、後述する。さらに、レンダリングプログラム189、データベース190を含んでいる。ネットワークI/F177は、インターネット106を介してクライアント装置101やプリンタ102との間で通信制御処理を行う。
【0021】
[画面構成]
図4(a)はプリンタ探索結果を表示するクライアント装置101上の表示画面例である。プリンタ探索は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなどに、プリンタを探索するための探索プログラム135が実行されることで実施される。探索プログラム135が検出したプリンタ102は、クライアント装置101が有する表示部119に表示画面201として表示される。探索プログラム135が検出したプリンタ情報はクライアント装置101内で保持される。表示画面201はプリントサービス用プリンタ表示領域202とローカル印刷用プリンタ表示領域204とから構成される。本実施形態では、図1に示すように、プリンタA102aと、プリンタB102bと、プリンタC102cとが印刷システム内に接続されているため、探索プログラム135によりこれらのプリンタが検出される。本実施形態において、プリンタA102aとプリンタB102bとがプリントサービス対応、かつ、ローカル印刷対応であるとする。また、プリンタC102cは、ローカル印刷にのみ対応しているとする。
【0022】
探索プログラム135は、検出したプリンタがプリントサービス対応であるか、ローカル印刷対応であるかを判定し、その結果に応じて、表示画面201の各領域に、該当するプリンタを表示する。本実施形態においては、検出されたプリンタのうち、プリンタA102a、プリンタB102bがプリントサービス対応の印刷機能を備えているため、プリントサービス用プリンタ表示領域202に表示される。さらに、探索プログラム135は、プリントサービスに対応する印刷機能が稼働しているかを判定し、稼働している場合と稼働していない場合とで異なる表示をすることで稼働状態が分かる表示をする。例えば、プリントサービスの印刷機能を備えているが、その機能が稼働されていない場合、プリンタアイコン203に示すように薄い色のプリンタアイコンを用いるなどする。ここで示す例によるとプリンタA102aはプリントサービス対応であり、そのサービスに対応する印刷機能が稼働していることを示している。また、プリンタB102bはプリントサービス対応であるが、そのサービスに対応する印刷機能が稼働していないことを示している。
【0023】
一方で、検出されたプリンタがローカル印刷対応であった場合、該当するプリンタがローカル印刷用プリンタ表示領域204に表示される。本実施形態においては、プリンタA102a、プリンタB102b、プリンタC102cが表示されている。さらに、探索プログラム135は、ローカル印刷の機能が稼働しているかを判定し、稼働している場合と稼働していない場合とで異なる表示をすることで稼働状態が分かる表示をする。なお、ここで示す例によると、いずれのプリンタにおけるローカル印刷の機能は稼働中であることを示している。プリントサービス用プリンタ表示領域202にて示されるプリンタアイコンと、ローカル印刷用プリンタ表示領域204にて示されるプリンタアイコンとは異なる形式、形状、及び色で表示してもよい。また、同じプリンタ表示領域中に表示されるプリンタアイコンであっても、印刷機能の稼働状態に応じて形状や色に差異を持たせて表示方法を区別してもよい。また、異なる領域に表示するアイコンであっても、同じプリンタを示す場合には、同じ表示形式で示すようにしても構わない。また、特定の印刷機能を有していても、当該印刷機能が稼働していない場合には、利用できないとして、非表示にしても構わない。
【0024】
表示画面201の特徴は、探索プログラム135が検出したプリンタをプリントサービス機能の有無に応じて表示領域を分けたり、アイコンの形状や色を異なるものにしたりすることにより表示する点である。これにより、1台のプリンタが複数の印刷機能を有していても、それぞれの印刷機能に応じて、通常のローカル印刷用プリンタとして、または、プリントサービス用プリンタとして簡単に識別して使用することができるようになる。
【0025】
表示画面201において、プリントサービス用プリンタ表示領域202内のプリンタアイコン203が押下されると、そのアイコンに対応するプリンタのプリントサービス用ドライバがクライアント装置101にインストールされる。また、ローカル印刷用プリンタ表示領域204内のプリンタアイコン205が押下されると、そのアイコンに対応するプリンタのローカル印刷用ドライバがインストールされる。ここでインストールされるドライバは、プリンタ管理サーバ(不図示)や選択されたプリンタからダウンロードされ、インストールされる。そして、プリンタドライバは、クライアント装置101の外部メモリ131にプリンタドライバ134として登録される。
【0026】
プリントサービス対応のプリンタドライバを使用する場合、プリンタドライバはプリントサービスサーバ装置103に文書、出力先プリンタの情報、及び必要に応じてジョブチケットを送信できればよい。このため、プリントサービス対応のプリンタドライバはプリントサービスサーバ装置103へのサービス要求するための機能を備えるプリンタドライバであればよく、出力先プリンタの機種に応じたプリンタドライバが複数用意される必要はない。
【0027】
図4(b)は、プリンタおよびプリンタドライバの選択画面である。プリントサービスサーバ装置103が提供するプリントサービスを利用する場合、ユーザはプリントサービス用ドライバを選択して起動し、プリントサービスサーバ装置103へアクセスを指示する。選択画面301は、ユーザの操作によりアプリケーション133で表示部119に表示されている文書に対し印刷指示がなされた際に、クライアント装置101の表示部119に表示される。選択画面301は、選択候補表示領域302と、詳細設定ボタン303と、選択ボタン304とを備える。選択候補表示領域302には、ローカル印刷を実行可能な出力先プリンタとともに、プリントサービス用ドライバが表示される。本実施形態においては、プリンタA102a、プリンタB102b、プリンタC102cがローカル印刷に対応しているため、これらのプリンタが表示されている。キーボード120やマウス等を用いたユーザ操作により、選択候補表示領域302から出力先プリンタもしくはプリントサービス用ドライバが指定される。そして、選択ボタン304が押下されることにより、文書の送信先が決定される。詳細設定ボタン303が押下されると、印刷にかかわる詳細な設定を行うための画面(不図示)を表示される。ここでの詳細設定については、本発明に係る重要部分ではないため、説明を省略する。
【0028】
図4(c)は、プリントサービスを利用する際における出力先プリンタの選択画面である。このプリンタ選択画面401は図4(b)でプリントサービス用ドライバが選択され、出力可能なプリントサービス用プリンタが存在する場合に表示される。ここで表示されるプリントサービス用プリンタは探索プログラム135で検出されたプリンタ情報に基づき、そのまま表示される訳ではなく、プリントサービス対応のプリンタのうち、利用可能な状態のプリンタが表示される。なお、これに限定するものではなく、プリントサービス対応のプリンタを全て表示し、利用不可の状態のプリンタは選択できないような構成として明示しても構わない。
【0029】
図4(b)の選択画面301でプリントサービス用ドライバが選択されると、プリントサービス用ドライバはプリントサービスを利用可能な状態であるかを確認する。本実施形態の確認処理において、起動されたプリントサービス用ドライバは、第一の通信チェックと第二の通信チェックを行う。第一の通信チェックでは、クライアント装置101とプリントサービスサーバ装置103との接続可否と、クライアント装置101が登録しいているプリントサービス用プリンタがプリントサービスサーバ装置103に登録されているかを確認する。この処理に関しては、図9を用いて後述する。第二の通信チェックでは、クライアント装置101と、クライアント装置101が登録しているプリントサービス用プリンタとの接続可否を確認する。さらに、当該プリンタにおいて、プリントサービス対応の印刷機能が稼働しているか、当該プリンタがプリントサービスサーバ装置103と通信可能であるかを確認する。この処理に関しては、図10を用いて後述する。
【0030】
プリントサービス用ドライバは、第一の通信チェックと第二の通信チェックにより、プリントサービスに利用できるプリントサービス用プリンタを抽出し、プリンタリスト402に表示する。プリンタ選択画面401はプリンタリスト402のほかに詳細設定ボタン403と選択ボタン404を備える。キーボード120やマウス等を用いたユーザ操作により、プリンタリスト402から出力先のプリンタが指定され、選択ボタン404が押下されることにより、文書の送信先が決定される。プリントサービス用ドライバは、文書と、出力先のプリンタ特定情報と、ジョブチケットとをプリントサービスサーバ装置103に送信する。ユーザによる送信の指示は、選択ボタン404の押下を送信指示とみなしてもよいし、別途、送信ボタンを設けて送信指示を発行してもよい。詳細設定ボタン403が押下されると、印刷にかかわる詳細な設定を行うための画面(不図示)を表示される。なお、ここでの詳細設定は、本発明において重要部分ではないため、説明を省略する。
【0031】
[データ構成例]
図5は、本実施形態の印刷システムで通信されるデータの構成例を示している。図5(a)は、探索プログラム135が検出したプリンタから取得する機器情報のデータである。探索プログラム135は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなどに、ユーザがプリンタを検出するために使用される。
【0032】
機器情報のデータは、プリンタ名501、IPアドレス502、ローカル印刷機能503、ローカル印刷状態504、プリントサービス機能505、及びプリントサービス状態506の情報を含む。プリンタ名501は、プリンタを一意に識別するための情報である。IPアドレス502は、クライアント装置101やプリントサービスサーバ装置103がプリントジョブを送信する送信先に関する情報である。ローカル印刷機能503は、プリンタが通常のローカル印刷を実現する機能を備えているか否かを示す情報である。ローカル印刷状態504は、プリンタがローカル印刷を実行できる状態になっているか否かを示す情報である。プリントサービス機能505は、プリンタがプリントサービスに対応した印刷機能を備えているか否かを示す情報である。プリントサービス状態506は、プリンタがプリントサービスによる印刷を実行できる状態になっているかを示す情報である。
【0033】
図5(b)は、後述する第一の通信チェックの処理において、プリントサービス用ドライバがプリントサービスサーバ装置103から取得するデータである。このデータには、プリントサービス用ドライバがプリントサービスサーバ装置103と通信可能であるかについての情報である通信可否511が含まれる。また、データには、検出された各プリンタの登録情報であるプリンタ登録状況512も含まれる。通信可否511は、プリントサービスサーバ装置103から応答があれば通信可能になるが、一定期間応答がなくプリントサービスサーバ装置103が停止しているとみなせる場合には通信不可になる。通信不可の場合には、プリンタ登録状況512は取得できない。プリンタ登録状況512は、探索プログラムで検出されクライアント装置101内で情報が保持されているプリントサービス用プリンタが、プリントサービスサーバ装置103にて、プリントサービス用プリンタとして登録管理されているかを示す情報である。通信可否511の値が“通信可能”であった場合、プリントサービス用ドライバは保持しているプリンタリストをプリントサービスサーバ装置103に送信し、登録確認を依頼することが可能である。プリントサービスサーバ装置103からの応答内容は、“登録済み”か“未登録”のいずれかとなる。
【0034】
図5(c)は、後述する第二の通信チェックの処理において、プリントサービス用ドライバがプリントサービス用プリンタから取得するデータである。第二の通信チェックは、プリントサービス用ドライバが起動されたとき、プリントサービスで利用可能な状態にあるプリントサービス用プリンタを抽出するために実施される処理である。図5(c)に示すデータには、プリンタの稼働状況521、プリントサービス機能522、及びサーバとの通信状況523の情報が含まれる。プリンタの稼働状況521は、プリントサービス用ドライバがプリントサービス用プリンタと通信可能であるか否かについての情報である。プリントサービス機能522は、プリンタが備えるプリントサービスに対応する機能が利用可能となっているか否かの情報である。サーバとの通信状況523は、プリントサービス用プリンタがプリントサービスサーバ装置103と通信可能な状態になっているか否かについての情報である。サーバとの通信状況523は、プリントサービス用ドライバからの依頼によりプリントサービス用プリンタがプリントサービスサーバ装置103との通信確認を行うことにより取得する情報である。
【0035】
図5(d)は、プリントサービス用ドライバがプリントサービスサーバ装置103に送信する印刷要求データ(プリントジョブ)である。印刷要求データには、プリンタ特定情報、印刷対象の文書やイメージ、及びジョブチケットが含まれる。プリンタ特定情報には、プリンタ名531やIPアドレス532が含まれる。印刷対象の文書やイメージの情報には、文書名533が含まれる。ジョブチケットの情報には、チケットID534が含まれる。
【0036】
プリントサービスサーバ装置103には、プリンタ登録プログラム185によりデータベース190にプリントサービス対応したプリンタ、機種ごとの機器情報などが登録されている。プリントサービスサーバ装置103は図5(d)に示すようなプリントジョブを受信すると、プリントジョブ受信プログラム187がプリンタ名531を用いてデータベース190を参照して出力先プリンタの機種を確定し、機種情報を取得する。レンダリングプログラム189は出力先プリンタの機種に応じたレンダリングを行い、プリントジョブ送信プログラム188はIPアドレス532などを用いて出力先プリンタにプリントジョブを送信する。このとき、ウェブサービスライブラリ183を利用する。
【0037】
[探索処理フロー]
図6は、クライアント装置101が有する探索プログラム135の処理を表すフローチャートである。プリンタ探索は、クライアント装置101をネットワーク104に初めて接続したときや新規にネットワーク104上にプリンタが設置されたときなど、ユーザがプリンタを検出するために探索プログラム135を実行することにより実施される。図1において探索プログラム135は、外部メモリ131に記憶されているが、これに限定するものではなく、RAM112やROM113などに格納されていてもよい。
【0038】
探索プログラム135の処理が開始されると、探索プログラム135はプリンタ探索パケットをネットワーク104に送信する(S1001)。探索プログラム135は、ネットワーク104に接続されたプリンタからプリンタ探索パケットの応答として、探索結果(図5(a))を受信する(S1002)。これにより、ネットワークに接続されたプリンタに関する機能および稼働状態の情報を収集している。そして、受信した探索結果に基づき、探索プログラム135は、検出されたプリンタがプリントサービス用プリンタの機能を備えているか否かを判定する(S1003)。探索プログラム135の処理は、プリンタがプリントサービス対応の機能を備えている場合(S1003にてYES)、S1004へ遷移し、備えていない場合(S1003にてNO)、S1007へ遷移する。
【0039】
S1004にて、探索プログラム135は、検出したプリントサービス用プリンタのプリントサービス対応の機能が有効になっているか否かを判定する。有効になっている場合(S1004にてYES)、S1005で探索プログラム135は、検出したプリンタを利用可能なプリントサービス用プリンタとして情報を保持し、S1007へ遷移する。無効になっている場合(S1004にてNO)、S1006で探索プログラム135は、検出したプリンタを現在利用できないプリントサービス用プリンタとして情報を保持し、S1007へ遷移する。
【0040】
S1007にて、探索プログラム135は、検出されたプリンタがローカル印刷用プリンタの機能を備えているか否かを判定する。探索プログラム135の処理は、プリンタがローカル印刷対応の機能を備えている場合(S1007にてYES)、S1008へ遷移し、備えていない場合(S1007にてNO)、S1011へ遷移する。S1008にて探索プログラム135は、検出したローカル印刷用プリンタのローカル印刷対応の機能が有効になっているか否かを判定する。有効になっている場合(S1008にてYES)、S1009にて探索プログラム135は、検出したプリンタを利用可能なローカル印刷用プリンタとして情報を保持し、S1011へ遷移する。無効になっている場合(S1008にてNO)、S1010にて探索プログラム135は、検出したプリンタを現在利用できないローカル印刷用プリンタとして情報を保持し、S1011へ遷移する。S1011で探索プログラム135は探索結果を表示し(図4(a))、処理を終了する。探索プログラム135がこのような処理を行うことにより、1台のプリントサービス対応のプリンタを通常のローカル印刷用プリンタとして、または、プリントサービス用プリンタとして簡単に識別して使用することができるようになる。
【0041】
[探索応答処理フロー]
図7は、探索に応答するプリンタの処理を表すフローチャートである。図6に示したクライアント装置101の探索プログラム135による問い合わせに対するプリンタ102の応答処理になる。本実施形態では、プリンタ102のCPU142が、記憶部に格納された、対応するプログラムを読み出し、実行することで実現される。なお、本実施形態では、プリンタA102a、プリンタB102b、プリンタC102cの3台のプリンタがネットワークに接続されている構成例を示しているが、各プリンタが有する機能については、上述した通りである。
【0042】
プリンタ102は、探索プログラム135から送信されたプリンタ探索パケットを受信すると(S2001)、プリンタ自身がプリントサービスに対応する機能を備えているかを判定する(S2002)。プリンタ102の処理は、上記機能を備えている場合(S2002にてYES)、S2003へ遷移し、備えていない場合(S2002にてNO)、S2007へ遷移する。S2003にて、プリンタ102は、プリンタサービス用プリンタとして応答を準備し、S2004へ遷移する。S2004にて、プリンタ102は、プリントサービスに対応する機能が有効になっているか否かを判定する。有効になっている場合(S2004にてYES)、S2005にてプリンタ102は、プリントサービス対応機能が有効である応答情報を保持し、S2007へ遷移する。無効になっている場合(S2004にてNO)、S2006にてプリンタ102は、プリントサービス対応機能が無効である応答情報を保持し、S2007へ遷移する。
【0043】
S2007でプリンタ102は、自身がローカル印刷に対応する機能を備えているか否かを判定する。ローカル印刷に対応する機能を備えている場合(S2007にてYES)、プリンタ102は、S2008でローカル印刷用プリンタであるという応答情報を保持し、S2009へ遷移する。ローカル印刷に対応する機能を備えていない場合(S2007にてNO)、S2012へ遷移する。S2009でプリンタ102は、ローカル印刷対応機能が有効になっているか否かを判定する。有効になっている場合(S2009にてYES)、S2010にてプリンタ102はローカル印刷の機能が有効である応答情報を保持し、S2012へ遷移する。無効になっている場合(S2009にてNO)、S2011にてプリンタはローカル印刷の機能が無効になっている応答情報を保持し、S2012へ遷移する。S2012にてプリンタ102は、保持した応答情報をクライアント装置101へ送信し、処理を終了する。なお、プリンタ自身のプリントサービス対応機能の有無に関する情報は、機能追加などにより外部メモリ161に格納されていてもよいし、出荷時からの常設機能としてROM144に格納されていてもよい。
【0044】
ネットワーク104に接続されたプリンタ102による応答方法の例として3つの例を示す。第一の例は、ローカル印刷用プリンタとプリントサービス用プリンタとに対してそれぞれの対応の有無を含む1つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135はプリンタ102から応答(図5(a))を受信したら、各プリンタについて、1つの応答からローカル印刷用プリンタへの対応とプリントサービス用プリンタへの対応について判定する。
【0045】
第二の例は、プリンタがプリントサービスに対応している場合、プリントサービスに対応しているという情報のみを含む1つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135はプリンタから応答を受信したら、当該プリンタがローカル印刷機能を有していることは自明とみなす。そして、受信した応答に基づき、プリントサービスに対応しているか否かを判定する。ただし、ローカル印刷機能に対応するとの前提であっても、ローカル印刷機能が無効になっている場合は、プリンタ102は、探索プログラム135に対して無効情報を返す必要がある。この無効情報に基づき、探索プログラム135は、当該プリンタにてローカル印刷機能が無効化されていると判定する。
【0046】
第三の例は、ローカル印刷用プリンタとプリントサービス用プリンタとに対してそれぞれ別々に対応の有無を含む応答を用意し、プリンタとしては2つの応答を返す応答方法である。具体的には、クライアント装置101の探索プログラム135は、応答を1つ受信し、更に2つ目の応答を無視しないように応答を受信し処理を行う。ただし、何らかの理由により、1つ目に受信した応答がプリントサービス用プリンタとしての応答であった場合、2つ目はローカル印刷用プリンタとしての応答となる。そのため、先にプリントサービス用プリンタとしての応答を受信した場合にローカル印刷対応は自明であるとみなすのであるならば、2つ目に受信する応答については無視してもよい。
【0047】
[プリントサービス用ドライバの処理フロー]
図8は、プリントサービス用ドライバの処理を表すフローチャートである。本処理は、CPU111が外部メモリ131に格納されたプリンタドライバ134を読み出し、実行される。
【0048】
クライアント装置101上のアプリケーション133からの印刷要求により、プリンタドライバ134は印刷設定の開始指示を検知する(S3001)。S3002でプリンタドライバ134は、図4(b)に示すようなプリンタおよびドライバの選択画面301を表示する。ユーザによるプリントサービス用ドライバの選択を検知すると(S3003)、プリンタドライバ134は、プリントサービス用ドライバが選択されたか否かを判定する(S3004)。プリントサービス用ドライバが選択された場合(S3004にてYES)、S3005へ遷移する。選択されなかった場合(S3004にてNO)、S3018へ遷移する。
【0049】
S3005でプリンタドライバ134は、プリントサービス用ドライバを稼働させる。S3006でプリントサービス用ドライバは、第一の通信チェックを行う。第一の通信チェックでは、プリントサービスサーバ装置103との接続可否を確認する。さらに、プリントサービス用ドライバは、クライアント装置101が登録しているプリントサービス用プリンタがプリントサービスサーバ装置103に登録されているかを確認する。この処理の詳細に関しては、図9を用いて後述する。S3007でプリントサービス用ドライバは、第二の通信チェックを行う。第二の通信チェックでは、クライアント装置101が登録しているプリントサービス用プリンタとの接続可否を確認する。さらに、プリントサービス対応の印刷機能が稼働しているか、プリンタがプリントサービスサーバ装置103と通信可能であるかを確認する。この処理の詳細に関しては、図10を用いて後述する。
【0050】
S3008にてプリントサービス用ドライバは、第一の通信チェックと第二の通信チェックとにより、プリントサービスを利用可能であるかを判定する。プリントサービス用ドライバを用いてプリントサービスの利用が可能である場合(S3008にてYES)、S3009へ遷移する。利用できない場合(S3008にてNO)、S3017へ遷移する。S3009でプリントサービス用ドライバは、プリントサービス用プリンタを抽出する。そして、S3010にてプリントサービス用ドライバは、探索結果として抽出したプリントサービス用プリンタのリスト(図4(c))を表示する。プリントサービス用ドライバは、ユーザによるプリントサービス用プリンタの選択を検知すると(S3011)、プリントサービスでの出力先として選択されたプリンタのプリンタ特定情報を保持する(S3012)。その後、プリントサービス用ドライバは、ユーザ操作による印刷指示を検知すると(S3013)、印刷対象文書あるいはイメージを取得し(S3014)、対応するジョブチケットを発行する(S3015)。そして、プリントサービス用ドライバは、プリンタ特定情報、印刷対象文書、及びジョブチケットをプリントサービスサーバ装置103へ送信する。
【0051】
一方で、プリンタ探索の結果、プリントサービス用の機能を備えるプリンタは検出できない場合(S3008にてNO)、プリントサービス用ドライバはプリントサービス用プリンタを検出できなかったことを表示部119に表示する(S3017)。そして、プリンタドライバはプリントサービス用ドライバの処理を停止し、S3002の処理へ戻る。S3017から遷移してS3002で表示する図4(b)のプリンタおよびドライバの選択画面301では、プリントサービス用ドライバを選択肢に含まない表示を行い、選択候補表示領域302にはローカル印刷での出力先となるプリンタのみを表示する。この場合、S3003の処理でプリントサービス用ドライバは選択されないので、S3004の判定ではS3018へ遷移することになる。
【0052】
S3018の処理でプリンタドライバ134は、ユーザによって選択されたローカル印刷用のプリンタ情報を保持する。プリンタドライバ134は、ユーザ操作による文書の印刷指示を検知すると(S3019)、印刷対象文書を取得する(S3020)。そして、プリンタドライバ134は、取得した印刷対象文書をユーザから指定されたローカル印刷用の出力先プリンタへ送信し(S3021)、処理を終了する。プリントサービスを利用するに当たり、プリントサービス用ドライバが第一の通信チェックと第二の通信チェックを行う。これにより、実際にプリントサービスを実現できるプリントサービス用プリンタのみを選択して使用することが可能となる。
【0053】
なお、本実施形態において、プリントサービスサーバ装置103はプリントジョブを受信すると、プリントジョブ受信プログラム187がプリンタ名531を用いてデータベース190を参照して出力先プリンタの機種を確定し、機種情報を取得する。レンダリングプログラム189は、出力先プリンタの機種に応じたレンダリングを行い、プリントジョブ送信プログラム188はIPアドレス532などを用いて出力先プリンタにプリントジョブを送信する。このとき、ウェブサービスライブラリ183を利用する。
【0054】
また、プリントサービス用ドライバが発行したジョブチケットはユーザに通知あるいは表示される。プリントサービス用プリンタはチケットIDの入力を検知したら、出力処理を行う。
【0055】
また、S3009にて抽出されたプリンタが1台のみであれば、S3010およびS3011の処理を省略し、S3012にて当該1台のプリンタの情報を保持するようにしても構わない。
【0056】
[第一の通信チェック]
図9は、プリントサービス用ドライバによる第一の通信チェックの処理を表すフローチャートである。本処理は、クライアント装置101のCPU111がプログラムを読み出すことにより実行される。なお、本処理により、第一の確認手段が実現される。
【0057】
S3031にて、プリントサービス用ドライバはクライアント装置101が管理するプリントサービスサーバ装置103の宛先情報を取得する。S3032でプリントサービス用ドライバは、プリントサービスサーバ装置103に通信チェックパケットを送信し、S3033でその応答を受信する。そして、S3034でプリントサービス用ドライバは、受信した応答に基づきプリントサービスサーバ装置103と通信可能であるかを判定する。例えば、所定時間内に応答が受信できない場合には、通信不可と判定してもよい。通信可能な場合(S3034にてYES)、S3035へ遷移する。通信不可能な場合(S3034にてNO)、S3040へ遷移する。
【0058】
S3035でプリントサービス用ドライバは、プリンタリストを取得する。このプリンタリストは探索プログラム135で検出し、保持していたプリントサービス用プリンタのリストである。本実施形態において、プリンタリストは、プリントサービス用ドライバによる処理に使用するため、複製したものを使用する。プリントサービス用ドライバはプリントサービスサーバ装置103に対し、プリンタリストを送信し、プリントサービス用にプリンタリストのプリンタが登録されているかを確認依頼する(S3036)。
【0059】
プリントサービス用ドライバは、プリントサービスサーバ装置103からプリンタ登録の状況を受信し(S3037)、プリントサービスを利用できないプリンタがあったかを判定する(S3038)。プリントサービスを利用できないプリントサービス用プリンタがあった場合(S3038にてYES)、プリントサービス用ドライバはプリンタリストを更新し(S3039)、処理を終了する。プリンタリストの更新が必要なければ、つまり、全てのプリンタが登録されていれば(S3038にてNO)、プリントサービス用ドライバはプリンタリストを保持したまま処理を終了する。また、プリントサービスサーバ装置103と通信不可である場合(S3034にてNO)、プリントサービス用ドライバは通信可否511として通信不可情報を保持し(S3040)、処理を終了する。
【0060】
[第二の通信チェック]
図10はプリントサービス用ドライバによる第二の通信チェックの処理を表すフローチャートである。本処理は、クライアント装置101のCPU111がプログラムを読み出すことにより実現される。なお、本処理により、第二の確認手段が実現される。
【0061】
プリントサービス用ドライバは、第一の通信チェックにおける通信可否511を取得する(S3051)。S3052でプリントサービス用ドライバは、通信可否511に基づいて、プリントサービスサーバ装置103との通信が可能であるか否かを判定する。通信可能な場合(S3052にてYES)、S3053に遷移する。通信不可能な場合(S3052にてNO)、S3067へ遷移する。S3053でプリントサービス用ドライバは、第一の通信チェック終了時のプリンタリストを取得する。S3054でプリントサービス用ドライバは、プリンタリストに記録されているプリントサービス用プリンタに通信チェックパケットを送信する。プリントサービス用ドライバは、プリントサービス用プリンタから通信チェックパケットに対する応答を受信すると(S3055)、受信した応答に基づきプリントサービス用プリンタとの通信が可能であるかを判定する(S3056)。例えば、所定時間内に応答が受信できない場合には通信不可と判定してもよい。
【0062】
通信可能な場合(S3056にてYES)、S3057へ遷移する。通信不可能な場合(S3056にてNO)、S3065へ遷移する。S3057でプリントサービス用ドライバは、通信可能なプリントサービス用プリンタにプリントサービスに対応する機能の稼働を確認依頼する。そして、プリントサービス用ドライバは、プリントサービス用プリンタからの応答を受信すると(S3058)、S3059にて受信した応答に基づきプリントサービスに対応する機能が稼働しているか判定する。稼働している場合(S3059にてYES)、S3060へ遷移する。稼働していない場合(S3059にてNO)、S3066へ遷移する。
【0063】
S3060でプリントサービス用ドライバは、プリントサービスサーバ装置103の宛先情報を取得する。そして、S3061にてプリントサービス用ドライバは、プリントサービス用プリンタに対して宛先情報を添えてプリントサービスサーバ装置103との通信チェックを依頼する。プリントサービス用ドライバは、通信チェックを依頼したプリンタから応答情報を受信すると(S3062)、S3063で受信した応答情報に基づきプリントサービスサーバ装置103と通信できないプリントサービス用プリンタがあったか否かを判定する。プリントサービスサーバ装置103とプリントサービス用プリンタとの通信結果は、図5(c)に示したサーバとの通信状況523の情報にて示される。通信できないプリントサービス用プリンタがあった場合(S3063にてYES)、S3064でプリントサービス用ドライバはプリンタリストを更新し、処理を終了する。通信できないプリントサービス用プリンタがなければ(S3063にてNO)、プリントサービス用ドライバはプリンタリストをそのまま保持し、処理を終了する。
【0064】
一方、S3065ではプリントサービス用ドライバは、図5(c)に示すプリントサービス用プリンタの稼働状況521において“稼働していない”という旨の情報を保持し、S3067へ遷移する。また、S3066でプリントサービス用ドライバは、図5(c)に示すプリントサービス機能522において“稼働していない”という旨、すなわち、“無効”として情報を保持し、S3067へ遷移する。S3067でプリントサービス用ドライバは、S3065やS3066等により更新されたプリントサービスの利用ができないという情報を保持し、処理を終了する。
【0065】
以上により、ユーザは、1台のプリンタを、ローカル印刷用プリンタ、または、プリントサービス用プリンタとして簡単に識別でき、使用することができるようになる。また、ユーザがプリントサービスを利用する際、実際にプリントサービスを実現できるプリントサービス用プリンタが明示され、ユーザは表示を参照して容易に印刷機能を使用できる。
【0066】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、
前記ネットワークに接続されたプリンタを探索する探索手段と、
前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、
前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、
前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段と
を有することを特徴とする情報処理装置。
【請求項2】
前記表示手段は、前記判定手段にて判定されたプリンタの印刷機能の状態ごとに、それぞれ異なる表示形式、もしくは異なる表示領域に表示することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
当該情報処理装置とプリントサービスサーバとの通信可否を確認する第一の確認手段と、
前記探索手段にて検出したプリンタのうち、前記プリントサービスサーバを介した印刷機能を有し、かつ前記プリントサービスサーバに登録されているプリンタを抽出する抽出手段と、
前記抽出手段にて抽出したプリンタと、当該情報処理装置および前記プリントサービスサーバとの通信可否を確認する第二の確認手段と、
前記情報処理装置および前記プリントサービスサーバと通信可能であり、前記プリントサービスサーバを介した印刷機能が稼働しているプリンタを特定する特定手段と
を更に有し、
前記表示手段は、前記特定手段にて特定されたプリンタを、前記プリントサービスサーバを介して印刷が可能であるプリンタとして表示することを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記表示手段は、前記特定手段にて、通信不可もしくは前記プリントサービスサーバを介した印刷機能が稼働していないプリンタとして特定されたプリンタを非表示、もしくはユーザにより利用できない旨の表示をすることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記収集手段が収集する情報は、ローカル印刷機能の有無、前記プリントサービスサーバを介した印刷機能の有無、前記ローカル印刷機能の稼働状態、および前記プリントサービスサーバを介した印刷機能の稼働状態を含むことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
【請求項6】
プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置の制御方法であって、
探索手段が、前記ネットワークに接続されたプリンタを探索する探索工程と、
収集手段が、前記探索工程にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集工程と、
判定手段が、前記収集工程にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定工程と、
表示手段が、前記判定工程にて判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示工程と
を有することを特徴とする制御方法。
【請求項7】
コンピュータを、
ネットワークに接続されたプリンタを探索する探索手段、
前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段、
前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段、
前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段
として機能させるためのプログラム。
【請求項1】
プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置であって、
前記ネットワークに接続されたプリンタを探索する探索手段と、
前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段と、
前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段と、
前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段と
を有することを特徴とする情報処理装置。
【請求項2】
前記表示手段は、前記判定手段にて判定されたプリンタの印刷機能の状態ごとに、それぞれ異なる表示形式、もしくは異なる表示領域に表示することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
当該情報処理装置とプリントサービスサーバとの通信可否を確認する第一の確認手段と、
前記探索手段にて検出したプリンタのうち、前記プリントサービスサーバを介した印刷機能を有し、かつ前記プリントサービスサーバに登録されているプリンタを抽出する抽出手段と、
前記抽出手段にて抽出したプリンタと、当該情報処理装置および前記プリントサービスサーバとの通信可否を確認する第二の確認手段と、
前記情報処理装置および前記プリントサービスサーバと通信可能であり、前記プリントサービスサーバを介した印刷機能が稼働しているプリンタを特定する特定手段と
を更に有し、
前記表示手段は、前記特定手段にて特定されたプリンタを、前記プリントサービスサーバを介して印刷が可能であるプリンタとして表示することを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記表示手段は、前記特定手段にて、通信不可もしくは前記プリントサービスサーバを介した印刷機能が稼働していないプリンタとして特定されたプリンタを非表示、もしくはユーザにより利用できない旨の表示をすることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記収集手段が収集する情報は、ローカル印刷機能の有無、前記プリントサービスサーバを介した印刷機能の有無、前記ローカル印刷機能の稼働状態、および前記プリントサービスサーバを介した印刷機能の稼働状態を含むことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
【請求項6】
プリントサービスサーバと、ローカル印刷もしくは前記プリントサービスサーバを介した印刷の少なくとも一方の印刷機能を有するプリンタとに、ネットワークを介して接続された情報処理装置の制御方法であって、
探索手段が、前記ネットワークに接続されたプリンタを探索する探索工程と、
収集手段が、前記探索工程にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集工程と、
判定手段が、前記収集工程にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定工程と、
表示手段が、前記判定工程にて判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示工程と
を有することを特徴とする制御方法。
【請求項7】
コンピュータを、
ネットワークに接続されたプリンタを探索する探索手段、
前記探索手段にて検出されたプリンタそれぞれが有する印刷機能、および当該印刷機能の稼働状態に関する情報を収集する収集手段、
前記収集手段にて収集した情報を用いてプリンタそれぞれの印刷機能の状態を判定する判定手段、
前記判定手段により判定したプリンタそれぞれの印刷機能の状態を当該印刷機能ごとに表示する表示手段
として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−190187(P2012−190187A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−52120(P2011−52120)
【出願日】平成23年3月9日(2011.3.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願日】平成23年3月9日(2011.3.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]