説明

印刷システム、制御方法、情報処理装置、デバイスドライバプログラム、およびインストーラプログラム

【課題】ローカル接続されているプリントに対し、更にプリントサーバ接続のプリントキューを登録する場合、その画像出力装置と同じネットワーク上にある他の画像出力装置のプリントサーバのプリントキューを装置分だけインストール手順を踏む必要がある。
【解決手段】コンピュータに第一のドライバと、第二のドライバをインストールするための別のインストーラプログラムとをインストールさせ、インストールされた前記第一のドライバは、画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段、アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段、プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記別のインストーラプログラムを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段として機能させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークに接続された画像出力装置、プリントサーバ装置、及びクライアント装置を有する印刷システムにおいて、プリンタドライバのインストールおよびプリントキューの作成方法に関する。
【背景技術】
【0002】
クライアント装置から、ネットワークに接続された画像出力装置を用いて画像出力をする場合、クライアント装置に画像出力装置に対応するプリンタドライバをインストールし、プリントキューを登録する必要がある。この操作は通常、ユーザがプリンタドライバインストーラを入手、実行してプリンタドライバのインストールを行う。続いて、使用する画像出力装置のプリントキューをシステムに登録するという方法をとる。
【0003】
一方、ネットワークに接続される画像出力装置は、複数の接続プロトコルに対応していることが多く、その結果、様々な接続形態に対応することが可能となる。例えば、クライアント装置からローカルネットワーク経由で画像出力装置に直接接続する場合、LPR(Line PRinter daemon protocol)などのプロトコルを利用して接続することができる。また例えばインターネット上にあるプリントサーバ経由では、クライアント装置、プリントサーバ及び画像出力装置間はIPP(Internet Printing Protocol)などで接続することができる。
【0004】
このように様々な接続形態がある中で、ユーザ自身がプリンタドライバのインストールや設定を行う必要があるため、手間がかかる。
【0005】
そこで特許文献1のように、クライアント装置上にて同一セグメント内のプリンタを探索し、自動的にWebサイト等からプリンタドライバをダウンロード、イントール、及びプリントキューの追加をする方法が開示されている。また特許文献2では、まずクライアント装置上でプリンタを探索、その結果をユーザに提示する。続いてユーザが選択したプリンタ用のプリンタドライバを所定のサーバから自動取得しインストールを行う。さらに、プリントキューの登録、印刷設定までを行う方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−366502号公報
【特許文献2】特開2006−134245号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、すでにユーザがローカルネットワークでプリントキューを登録して画像出力装置を使用している場合において、さらに別の接続形態で同一の画像出力装置に接続し、印刷させたいケースがある。例えば、ローカルネットワーク接続の印刷に加え、インターネット上のプリントサービスを利用する場合である。このインターネット上のプリントサービスを介して画像出力装置を利用することにより、ローカルネットワーク接続では印刷できないネットワーク環境からも当該画像出力装置から印刷することが可能となる。例えば、あるオフィスにてノート型のクライアント装置からローカルネットワーク接続をしている画像出力装置を利用しているとする。そのユーザがクライアント装置を異なるネットワーク環境に移動させた場合、ローカルネットワーク接続ではパケットが指定した画像出力装置に到達できず、結果印刷できない場合がある。この場合、インターネット上のプリントサービス経由で印刷指示を行うことにより、その画像出力装置から出力を得ることが可能となる。
【0008】
このような場合、クライアント装置上では、ローカルネットワーク接続のプリントキューに加え、インターネット上のプリントサービスに接続するためのプリントキューを追加登録する必要がある。この追加登録によりクライアント装置上のプリントキューはインターネット上のプリントサービスに接続され、更にプリントサーバ装置と画像出力装置とが接続される。
【0009】
このように、すでにある画像出力装置のプリントキューが登録されている場合、用途に応じて追加でプリントキューを登録させたい場合がある。従来技術では、ユーザは再度異なる接続方法に対応する別のインストーラを準備し、再度インストーラを起動し、他の接続形態を設定する必要がある。そのため、ユーザには再度のインストーラの入手、実行、接続の設定、及びプリントキューの登録という手間がかかる。
【課題を解決するための手段】
【0010】
上記課題を達成するため、本発明は、以下の構成を有する。すなわち、プリントサーバ装置、クライアント装置、および画像出力装置がネットワークを介して接続された印刷システムであって、前記画像出力装置は、ローカル接続用の第一の接続ポートと前記プリントサーバ装置を介して印刷ジョブを受信するための第二の接続ポートとを備え、アドレス取得要求を受信した際に、前記第二の接続ポートのアドレスを返信する返信手段と、前記第一の接続ポートもしくは前記第二の接続ポートを介して受信した印刷ジョブを印刷する印刷手段とを備え、前記プリントサーバ装置は、印刷ジョブの送信先である画像出力装置を登録する画像出力装置登録手段と、印刷ジョブに設定あるいは指示され、前記画像出力装置登録手段にて登録されている画像出力装置に対し、指定された接続ポートを介して当該印刷ジョブを送信する送信手段とを備え、前記クライアント装置は、前記画像出力装置に対応するドライバをインストールするための第一のインストーラを備え、前記第一のインストーラは実行することで、第一のドライバと、第二のドライバをインストールするための第二のインストーラとを当該クライアント装置にインストールし、インストールされた前記第一のドライバは、前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段と、前記アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段と、前記プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記第二のインストーラを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段とを備え、起動された前記第二のインストーラは、前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成することを特徴とする。
【0011】
また、本発明に係る別の実施形態として、以下の構成を有する。すなわち、プリントサーバ装置および画像出力装置にネットワークを介して接続された情報処理装置であって、前記画像出力装置に対応するドライバをインストールするための第一のインストーラを備え、前記第一のインストーラは実行することで、第一のドライバと、第二のドライバをインストールするための第二のインストーラとを当該情報処理装置にインストールし、インストールされた前記第一のドライバは、前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段と、アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段と、前記プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記第二のインストーラを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段とを備え、起動された前記第二のインストーラは、前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成することを特徴とする。
【0012】
また、本発明に係る別の実施形態として、以下の構成を有する。すなわち、画像出力装置に対応するドライバをインストールするためのインストーラプログラムであって、コンピュータに第一のドライバと、第二のドライバをインストールするための別のインストーラプログラムとをインストールさせ、インストールされた前記第一のドライバは、コンピュータを、前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段、アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段、プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記別のインストーラプログラムを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段として機能させ、起動された前記別のインストーラプログラムは、コンピュータに前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成させることを特徴とする。
【0013】
また、本発明に係る別の実施形態として、以下の構成を有する。すなわち、デバイスプログラムは、コンピュータを、画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段、アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段、プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、インストーラプログラムを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段として機能させることを特徴とする。
【発明の効果】
【0014】
本発明により、ユーザがプリントサーバ装置に登録指示を行うのみで、プリントサーバ装置に接続するプリントキューが自動的に生成される。その結果、従来技術では必要とされていた、プリントサービスサーバ接続のプリントキューを追加する場合に、再度インストーラを入手し、インストーラを起動し、プリントキューの追加を行うという手間をなくすことが可能となる。
【0015】
また、同一ネットワーク上にある他の画像出力装置に対してもプリントサーバ装置に接続するプリントキューを登録することが可能となる。さらに、クライアント装置上に登録されている他のユーザもプリントサーバ装置に一度に登録することが可能となる。
【図面の簡単な説明】
【0016】
【図1】第一実施形態に係る印刷システムの構成例を示す図。
【図2】クライアント装置及び画像出力装置の構成例を示す図。
【図3】プリントサービスサーバ装置の構成例を示す図。
【図4】システム全体のシーケンス図。
【図5A】クライアント装置における処理のフローチャート。
【図5B】クライアント装置における処理のフローチャート。
【図6】プリントサービスサーバ装置における処理のフローチャート。
【図7】画像出力装置における処理のフローチャート。
【図8】プリンタダイアログの構成例を示す図。
【図9】プリントキューダイアログの構成例を示す図。
【図10】アドレス入力ダイアログの構成例を示す図。
【図11】画像出力装置の応答パケットに含まれる情報を示す図。
【図12】第二実施形態に係る印刷システムの構成例を示す図。
【図13】プリントサービスサーバ装置の構成例を示す図。
【図14】プリントサービスサーバ装置における処理のフローチャート。
【図15】クライアント装置における処理のフローチャート。
【図16】クライアント装置における処理のフローチャート。
【図17】ドキュメントサービスID入力ダイアログの構成例を示す図。
【発明を実施するための形態】
【0017】
<第一実施形態>
[システム構成]
以下、本発明を実施するための形態について図面を用いて説明する。図1は、本発明の第一実施形態に係る印刷システムの概略構成を示すブロック図である。本実施形態の印刷システムでは、ユーザが操作する情報処理装置であるクライアント装置101、印刷ジョブを受信し出力を行う複数の画像出力装置102を備える。これらはEthernet(登録商標)などで構成されるネットワーク104を介して接続されている。クライアント装置101とプリントサービスサーバ装置103は、ネットワーク104上に存在するゲートウェイ装置105を介しインターネット106経由で接続される。なお、画像出力装置102はクライアント装置101が生成した印刷ジョブをネットワーク104経由で受信し印刷する。これに加えて、画像出力装置102は、プリントサービスサーバ装置103からの印刷ジョブも受信し、印刷することが可能である。また、ローカルネットワーク(ネットワーク104)における複数の画像出力装置において、本明細書にて包括的に述べる場合には、“画像出力装置102”と表記し、個別に述べる場合には、例えば“画像出力装置A102a”と表記する。なお、本明細書にて記載する画像出力装置には、プリント機能を有するプリンタやMFP(MultiFunction Peripheral)などが該当する。また、本明細書において、単にネットワークと記載する場合は、ネットワーク104に示されるようなローカルネットワークを意味する。
【0018】
図2は、図1に示すクライアント装置101および画像出力装置102の装置構成を示すブロック図である。クライアント装置101において、CPU111は、記憶部であるRAM112等に記憶されているプログラムに従って、システムバス121に接続される各デバイスを総括的に制御している。このRAM112は、CPU111の主メモリ、ワークエリア等としても機能している。ROM113は、各種プログラム及びデータを格納している。キーボードI/F116は、キーボード120や不図示のポインティングデバイス(タッチパネル等)からの入力を制御する。表示部I/F115は、表示部119への表示を制御する。
【0019】
外部メモリI/F117は、例えばフラッシュメモリ、SSD(Solid State Disk)等の外部メモリ131とのアクセスを制御する。外部メモリ131は、OS(Operating System)132をはじめ、各種機能に応じたアプリケーション133、プリンタドライバ134(プリントドライバプログラム)を記憶し、クライアント装置101が保存または、読み取り可能な記憶媒体として機能する。ネットワークI/F118は、ネットワーク104への制御部であり、ネットワーク端子を通じてネットワーク104への接続を可能にする。
【0020】
次に画像出力装置102の構成について説明する。CPU142は、画像出力装置102の全体の動作を制御している。RAM143は、CPU142の主メモリ、ワークエリア等として機能するとともに、画像情報展開領域、環境データ格納領域としても用いられる。またRAM143は、NVRAM(Non−volatile RAM:不揮発性RAM)領域も備えており、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。ROM144は、各種フォント、CPU142により実行される制御プログラム等、及び各種データを記憶している。
【0021】
ネットワークI/F145は、クライアント装置101との間でデータの送受信を行う。プリンタI/F148は、プリンタエンジンであるプリンタ部149との処理を制御している。外部メモリ151は、外部メモリI/F152によりアクセスが制御されており、フラッシュメモリ、SSD等を含んでおり、ハードウェア情報153を記憶することが可能である。なお、ハードディスク等の外部メモリ151が接続されていない場合には、ROM144に、クライアント装置101で利用される情報等を記憶する。
【0022】
操作部I/F146は、画像出力装置102のスキャン処理を設定する操作部147との処理を制御している。操作部147には、ユーザによる操作を受け付ける操作パネル(不図示)が設けられ、その操作パネルには操作のためのスイッチ及びLED表示器等が配されている。また、操作部147は、NVRAM(不図示)を有し、操作パネルからの印刷設定情報を記憶するようにしてもよい。CPU142はネットワークI/F145を介してクライアント装置101との通信処理が可能となっており、クライアント装置101から印刷ジョブを受信する。それと共に、画像出力装置102内の情報等をクライアント装置101に通知可能に構成されている。
【0023】
本実施形態では、ネットワークI/F145はサービスプロトコルを実装している。また、印刷ジョブを受信するプロトコルとしても複数のプロトコルを実装している。具体的には、ローカルネットワークでの印刷ジョブの受信が可能なLPRやPort9100、またインターネット経由の印刷ジョブ受信に適しているIPPなどである。なお、実装可能なプロトコルは上記のものに限定されるものではなく、必要に応じて実装するプロトコルを増やしても構わない。またCPU142は、ROM144等に記憶された制御プログラム等に基づき、プリンタI/F148を介してプリンタ部149に画像データを送信し印刷を実行する。
【0024】
図3を用いてプリントサービスサーバ装置103の構成について説明する。プリントサービスサーバ装置103において、CPU171は、記憶部であるRAM172等に記憶されているプログラムに従って、システムバス180に接続される各デバイスを総括的に制御している。RAM172は、CPU171の主メモリ、ワークエリア等としても機能している。ROM173は、各種プログラム及びデータを格納している。キーボードI/F175は、キーボード179や不図示のポインティングデバイス(マウス等)からの入力を制御する。表示部I/F174は、表示部178への表示を制御している。外部メモリI/F176は、例えばハードディスク(HD)、SSD等の外部メモリ181とのアクセスを制御する。
【0025】
外部メモリ181は、OS182をはじめウェブサービスライブラリ183、各種プリントサービス処理に応じたプリントサービスプログラム184を備える。さらに、外部メモリ181は、ユーザファイル、その他設定ファイル等を記憶し、コンピュータが保存または、読み取り可能なデータベース190としても機能する。また、プリントサービスプログラム184は、具体的には、プリンタ登録プログラム185、ユーザ登録プログラム186、印刷ジョブ受信プログラム187、印刷データ送信プログラム188、レンダリングプログラム189などのプログラムを含んでいる。
【0026】
ネットワークI/F177は、インターネット106を介してクライアント装置101に接続され、その先に接続されている画像出力装置102との間で間接的に通信制御処理を行う。
【0027】
[システムにおける処理シーケンス]
続いて各装置の処理の流れを説明するが、その前に図4に示すシーケンスチャートを用いて各装置間でどのような処理がされるかを説明する。その後に各装置の処理を、フローチャートを用いて説明する。
【0028】
図4は、本実施形態に係るプリンタドライバインストールおよびプリントキュー登録処理のシーケンス図である。図4を用いて、プリンタドライバ(デバイスドライバプログラム)がインストールされ、プリントキューが登録される一連の流れを述べる。前提として、既にクライアント装置101がネットワーク104を介して画像出力装置102にアクセス可能の状態とする。さらにクライアント装置101は、プリントサービスサーバ装置103にゲートウェイ装置105を介してアクセス可能な状態とする。
【0029】
なお本実施形態では二つの印刷の指示経路がある。一つはネットワーク104を介して、クライアント装置101から画像出力装置102に直接出力指示を行い、出力するローカル接続用の経路である。本明細書において、この経路で接続される画像出力の形態を「ローカルプリンタ」と呼ぶこととする。もう一つはクライアント装置101が生成した印刷ジョブを、インターネット106を介してプリントサービスサーバ装置103に一旦送信する。そして、そこからインターネット106を介して画像出力装置102に再度出力指示を行い、出力する経路である。本明細書において、この経路で接続される画像出力の形態を「サーバプリンタ」と呼ぶこととする。なお、ローカルプリンタとして接続した場合に使用されるプリンタドライバを「ローカルプリンタドライバ」と呼ぶ(第一のドライバ)。またサーバプリンタとして接続した場合に使用されるプリンタドライバを「サーバプリンタドライバ」と呼ぶ(第二のドライバ)。
【0030】
さらに、ユーザはすでに所定のプリンタドライバインストーラ(インストーラプログラム)を入手し、クライアント装置101上に保存しているものと仮定する。このプリンタドライバインストーラの入手は、例えば該当のプリンタドライバインストーラをベンダのウェブサイトからダウンロード、あるいは製品に同梱されているCDメディアからクライアント装置101が読み込むことで可能である。なお、このプリンタドライバインストーラの構成は後のシーケンスにおいて具体的に説明する。
【0031】
画像出力装置102は、複数の接続ポートを備える。例えば、ネットワーク104に接続された画像出力装置102のうち、画像出力装置A102aはローカルプリンタとして接続可能なローカル接続ポート(第一の接続ポート)とプリントサービスサーバ装置103から接続可能なサーバ接続ポート(第二の接続ポート)とを備える。「ローカル接続ポート」とは、例えばLPRやPort9100など、TCP/IPプロトコルで接続されるものである。「サーバ接続ポート」とは、例えばIPPなどインターネット経由の通信を意識したプロトコルで接続されるものである。また画像出力装置B102bも画像出力装置A102aと同様の接続ポートをサポートしているものとする。画像出力装置C102cは、これらとは異なりプリントサービスサーバ装置103用の接続ポートおよびそこからの印刷データ受信機能は備えていないものとする。すなわち、画像出力装置C102cは、ローカルプリンタとしての接続ができるものとする。
【0032】
また、ローカル接続ポートに対して接続するプリントキューをローカルプリントキュー(第一のプリントキュー)とし、サーバ接続ポートに対して接続するプリントキューをサーバプリントキュー(第二のプリントキュー)とする。
【0033】
更にこれらの画像出力装置102は、クライアント装置101からのデバイス情報問い合わせに対して、デバイスプロファイルを返信できるものとする。具体的には、クライアント装置101はSNMP(Simple Network Management Protocol)などでデバイスクエリパケットをネットワーク104に対してマルチキャストする。各画像出力装置は、このマルチキャストに応答して自身のデバイス情報を含むデバイスプロファイルを返信する。なお、このデバイスプロファイルについては後の説明に詳述するが、ローカル接続ポートとサーバ接続ポートのアドレスなどの情報を含んでいる。
【0034】
まずS201においてユーザはクライアント装置101上にてプリンタドライバインストーラの起動を指示する。ここで起動されるプリンタドライバインストーラ(第一のインストーラ)とは、ローカルプリンタドライバのモジュールセットと、サーバプリンタドライバインストーラ(第二のインストーラ)を内包したインストーラである。通常のプリンタドライバインストーラは、一種類のプリンタドライバモジュールを内包しており、インストーラの起動によりそのプリンタドライバモジュールがクライアント装置にインストールされる。しかし、S201で起動されるプリンタドライバインストーラは、通常のローカルプリンタドライバモジュールに加え、サーバプリンタドライバモジュールをインストールするためのサーバプリンタドライバインストーラを内包することを特徴としている。
【0035】
このプリンタドライバインストーラの起動により、S202においてプリンタドライバインストーラがクライアント装置101上で実行され、ローカルプリンタに必要なローカルプリンタドライバモジュールがインストールされる。さらにS202におけるインストール時に、プリントサービスサーバ装置103用のサーバプリンタドライバインストーラもインストールされる。このプリントサービスサーバ装置用のサーバプリンタドライバインストーラは後のステップにて使用する。そのためサーバプリンタドライバインストーラは、クライアント装置101の外部メモリ131に保存しておく。保存場所は、例えば通常のアプリケーションがインストールされるディレクトリなどが挙げられる。S202のプリンタドライバのインストールが終わると、プリンタドライバはS203においてユーザにインストールが完了した旨を通知する。これは、例えばクライアント装置101は表示部119にて完了した旨を表示する。
【0036】
続いてユーザは実際に画像出力装置102にて印刷を行うためのプリントキューの作成を行う。まずS204において、ユーザはクライアント装置101に対し、OS132の機能を用いてローカルプリンタを使用するためのローカルプリントキューの作成指示を行う。ここではユーザは画像出力装置A102aのプリントキューを作成するものとする。この作成指示により、S205にてクライアント装置101にローカルプリントキューが作成される。続いて、S206にてクライアント装置101は、プリントキュー作成時に実行される実行コードにより、接続先の画像出力装置A102aにデバイスプロファイルの取得要求を行う。この取得要求により、接続ポートのアドレス取得要求を行う。画像出力装置A102aは、S207においてクライアント装置101からの取得要求に応答し、S208においてサーバ接続ポート情報を含むデバイスプロファイルをクライアント装置101に返信する。
【0037】
S208において返信されたデバイスプロファイルは、プリントキュー作成時に実行される実行コードがクライアント装置101の外部メモリ131に保存する。なお保存場所はOS132のレジストリやユーザディレクトリの特定のファイルなどに保存する。そして、クライアント装置101は、ユーザにローカルプリントキューの作成が完了した旨を通知する。これは、例えばクライアント装置101は表示部119にて完了した旨を表示する。通常のローカルプリンタを利用する場合、ここまでのステップでプリントキューの作成は終了する。
【0038】
しかし本実施形態では、S206〜S208にて自動的に取得したデバイスプロファイル情報を使用してサーバプリントキューを容易に作成することができる。具体的には、ユーザはローカルプリントキューを開き、そこに本実施形態で提供する「サーバプリンタ登録」というボタンをクリックすることでサーバプリントキューを作成可能とする。なお、一般的にプリントキューにはベンダ独自の実行コードを実行させるコントロールを配置することが可能である。
【0039】
ユーザはS210において、画像出力装置A102aのローカルプリントキューを開き、「サーバプリンタ登録」ボタンをクリックすることで、サーバプリンタの登録指示を行う。S211において、「サーバプリンタ登録」ボタンに対応付けられた実行コードがS206〜S208で取得したサーバ接続ポートの情報を利用して、クライアント装置101は、サーバプリントキューの作成を行う。そして、S212にて、クライアント装置101は、プリントサービスサーバ装置103へ画像出力装置およびユーザの登録依頼を行う。ここで登録する情報は、プリントサービスサーバ装置103から印刷ジョブを送信する際の送信先となる画像出力装置の接続ポートの情報と、その画像出力装置を使用するユーザIDである。クライアント装置101からの登録依頼にこれらの情報が併せて送信される。なお、送信される情報は、上記情報に限定するものではなく、プリントサービスサーバ装置103側で管理する情報があれば、必要に応じて送信する。ここで用いられるユーザIDについての扱いは後に説明するクライアント装置101上のソフトウェア動作の流れ図において説明する。
【0040】
S213において、プリントサービスサーバ装置103はクライアント装置101から受信した登録依頼に対応する情報を元に、画像出力装置とユーザIDの登録を行う。これにより、画像出力装置登録手段を実現する。S214において、プリントサービスサーバ装置103はクライアント装置101上の「サーバプリンタ登録」の実行コードに対して登録完了通知を行う。続いてS215において、クライアント装置101上の「サーバプリンタ登録」の実行コードは、ネットワーク104上にデバイス探索クエリパケットをマルチキャストする。S216において、マルチキャストパケットを受信した画像出力装置102は、自身のデバイスプロファイルを送信することで応答する。S217において、クライアント装置101上の「サーバプリンタ登録」の実行コードは画像出力装置102からのクエリリプライであるデバイスプロファイルを受信する。ここで、ネットワーク104には複数の画像形成装置が配置されているため、クライアント装置101から送信されたマルチキャストパケットに対する応答(クエリリプライ)は複数が返信されることとなる。その返信された応答により、いずれの接続ポートを保持した画像出力装置102がネットワーク104に接続されているかを検出することができる。
【0041】
続いて、S218において、複数の画像形成装置から受信したクエリリプライに基づき、S212にてプリントサービスサーバ装置103に登録した画像出力装置以外の画像出力装置があるか確認する。そして、クライアント装置101は、未登録の画像出力装置を抽出する。続いて、S219においてクライアント装置101上の「サーバプリンタ登録」の実行コードはS218において抽出した未登録の画像出力装置のサーバプリントキューを作成する。
【0042】
続いてS220において、S212と同様に「サーバプリンタ登録」の実行コードはS215〜S217にて取得したサーバ接続ポートの情報を利用して、S212にてプリントサービスサーバ装置103へ画像出力装置およびユーザの登録依頼を行う。ここで登録する情報は、プリントサービスサーバ装置103から印刷ジョブを送信する際の送信先となる画像出力装置の接続ポートの情報と、その画像出力装置を使用するユーザIDである。クライアント装置101からの登録依頼にこれらの情報が併せて送信される。
【0043】
続いてS221においてプリントサービスサーバ装置103はクライアント装置101から受信した登録依頼に対応する情報を元に、画像出力装置とユーザIDの登録を行う。S222において、プリントサービスサーバ装置103はクライアント装置101上の「サーバプリンタ登録」の実行コードに対して登録完了通知を行う。最後にS223において、「サーバプリンタ登録」の実行コードはユーザに対し、サーバプリントキューのプリントサービスサーバ装置103への登録が完了した旨を通知する。これは、例えばクライアント装置101は表示部119にて完了した旨を表示する。
【0044】
以上、ユーザがプリンタドライバインストーラを起動してからローカルプリントキューおよびサーバプリントキューが生成されるまでの各装置間における処理を述べた。
【0045】
[処理フロー]
次にクライアント装置101、プリントサービスサーバ装置103、および画像出力装置102それぞれの処理の流れを具体的に説明する。また図4で簡単に説明した部分についても装置ごとに詳細な図を用いて説明を行う。なお本実施形態では、画像出力装置A、画像出力装置B、画像出力装置CがそれぞれプリンタA、プリンタB、プリンタCとして、プリントキューを登録されるものとする。
【0046】
[クライアント装置における処理]
図5Aおよび図5Bは先に説明したシーケンスにおけるクライアント装置101に着目した処理のフローチャートである。S301において、ユーザはクライアント装置101の外部メモリ131に予め入手しているプリンタドライバインストーラを起動する。ここで起動されるインストーラは、ローカルプリンタドライバに対するインストーラである。続いてS302において、プリンタドライバインストーラはローカルプリンタドライバモジュール及びサーバプリンタドライバインストーラをクライアント装置101にインストールする。このとき、ローカルプリンタドライバモジュールはOS132の所定の場所にインストールされる。またサーバプリンタドライバインストーラは、後のステップで他モジュール(後述)により起動されるアプリケーションであるため、起動が可能なディレクトリ、例えば“/Applications”フォルダなどに保存する。このステップにおいてプリンタドライバのインストールが終了後、プリンタドライバインストーラはインストールを終了した旨のメッセージを表示部119に表示させ、ユーザに通知してもよい。
【0047】
続いてS303において、ユーザはOS132に対してローカルプリンタのプリントキューの作成指示を行う。図8(a)はOS132の登録されている各プリントキューを表示するダイアログである。図8(a)において、プリンタダイアログ400、プリントキューの追加を指示する追加ボタン401、登録されているプリントキューのリスト402を示す。なお、この図8(a)に示すダイアログは一例であり、他の表示方法によるOSも存在する。
【0048】
ユーザはプリントキューを登録する場合、このプリンタダイアログ400にて提供されているプリンタの追加ボタン401を押下する。この指示により、OS132はプリントキューを追加するためのダイアログを表示し、そのダイアログにてユーザはプリンタ製品の選択、接続ポートの指定などを行う。プリントキューの追加が完了すると、プリンタダイアログ400に新しく追加したプリントキューが表示される。なお、一般的なOSではプリントキュー追加時にベンダ独自の実行コードを実行させることが可能である。実行コードは、例えば、ドライバに含めて提供される。この実行コードの目的は、例えばプリントキュー追加時にプリンタから構成情報を取得し、プリントキューの設定を取得した構成情報に合わせた設定にする。また例えば動作しているOS132のロケール情報を取得し、北米であれば用紙サイズのデフォルト設定をLetterサイズに設定、北米以外ではデフォルト設定をA4に設定する、ということも可能となる。
【0049】
S304においてプリントキュー登録時の実行コードは、接続するプリンタのデバイスプロファイル情報取得の要求パケットを発行する。この要求はWSD(Web Service on Devices)やSNMPのMIB(Management Information Base)などを利用して発行する。次にS305において、実行コードは、デバイスプロファイルの取得に成功したか判定する。デバイスプロファイル取得に成功した場合(S305にてYES)、S307に進む。
【0050】
図11はプリントキュー登録時の実行コードが画像出力装置102から取得するデバイスプロファイルに含まれる情報の例を示したものである。図11に示す例では、ハードウェアを特定するためのハードウェアIDは、「16bdd1fc6−801f−11d0−bec7−08002be2092f」となっている。このハードウェアID(識別子)は、画像出力装置を一意に特定できるものであればよい。また、デバイスプロファイルには、MACアドレス702、TCP/IPポートに割り当てられているIPアドレス703、サポートしている通信プロトコル704を含む。ここに示す例において、通信プロトコル704は、LPR、IPP、Port9100、SNMPとなっている。さらにデバイスプロファイルは、ベンダ名706を含み、この例では「ABC」というベンダであることを示している。また、プリンタ名707は画像出力装置に設定された名称であり、ここでは「Printer A」が設定されている。また、プリントサービスアドレス708は、サーバ接続用のポートアドレスを示しており、ここでは「http://printerA.abc.jp/ipp」と指定されている。
【0051】
なお、このサーバ接続用のポートアドレスは、プリントサービスサーバ装置103から印刷データを受信する際の接続ポートとして使用される。最大用紙サイズ709は、画像出力装置が印刷可能な最大用紙サイズを示し、ここでは「A3」となっている。モノクロ/カラー種別710は、画像出力装置が対応するカラー種別を示し、ここでは「カラー」に対応可能な画像出力装置を意味している。
【0052】
一方、デバイスプロファイルの取得に失敗した場合(S305にてNO)、S306に進み、実行コードはアドレス入力ダイアログを、表示部を介して表示し、ユーザにデバイスプロファイルが取得できなかった画像出力装置102のサーバ接続ポートを入力させる。
【0053】
図10は、S306にて表示させるアドレス入力ダイアログの例を示したものであり、アドレス入力ダイアログ600、アドレス入力コントロール601、OKボタン602、キャンセルボタン603を示している。例えばローカルプリンタとして接続した画像出力装置102のサーバ接続ポートのアドレスが「http://printerA.abc.jp/ipp」の場合、図10に示すように入力を行う。ユーザはこの入力後、OKボタン602を押下してダイアログを閉じる。これにより、デバイスプロファイルの取得の成功/失敗のいずれの場合でも、プリントキュー登録時の実行コードは、画像出力装置のサーバ接続ポートのアドレスを入手することができる。
【0054】
次にS307においてプリントキュー登録時の実行モジュールは、取得したサーバ接続ポートを外部メモリ131に保存する。保存場所は、OS132のレジストリやサンドボックス、あるいはプリントキュー登録時の実行モジュールがアクセスできるディレクトリにファイルとしてもよい。続いてS308において、OS132は、新しく登録したローカルプリントキューをプリンタダイアログ400に表示する。ここまでの処理によりクライアント装置101と画像出力装置102とをローカル接続し、ネットワーク104を介してクライアント装置101から画像出力装置102に出力することが可能となる。
【0055】
続くステップにより、クライアント装置101からプリントサービスサーバ装置103を介して画像出力装置102に出力するためのプリントキューの登録を行う。ここでは、すでにローカルプリンタとしてプリントキューを登録しているプリンタAにおけるサーバプリンタとしてのプリントキューの登録を行うこととする。
【0056】
まずS309において、ユーザはローカルプリントキューのドライバダイアログを開き、プリントサービスサーバ装置103経由で印刷するためのプリントキューを作成する指示を行う。具体的にはまずユーザは、クライアント装置101上でプリンタダイアログ400を表示させる。続いてユーザはプリンタダイアログ400上でプリンタAのアイコンをダブルクリックする。この操作により、プリンタAのプリントキューのプリントダイアログが表示される。図9(a)はプリンタAのプリントダイアログの一例を示したものである。この図9(a)において、プリンタAのプリントダイアログ500、プリンタAの概略情報501、表示ボタン502、プリントサーバ登録ボタン503を示している。概略情報501は画像出力装置の概略を示し、この例では、プリンタAの外観、プリンタ名称である「プリンタA」、画像出力装置の印刷状態を示すステータス、画像出力装置の種別が表示されている。また、表示ボタン502は、印刷ジョブの処理状況を示すプリントキューを表示するためのボタンである。また、プリントサーバ登録ボタン503は、プリントサービスサーバ装置103に接続するためのプリントキューを登録するためのボタンである。
【0057】
ユーザはプリントサービスサーバ装置103経由で印刷するためのプリントキューを登録するために、プリントサーバ登録ボタン503を押下する。なお上述したように、プリントサーバ登録ボタン503の押下により実行されるベンダ独自の実行コードが定義可能であり、この操作により実行コードが実行される。
【0058】
S310において、プリントサーバ登録ボタンの実行コードは、ローカルプリントキューのドライバのデフォルトとして設定されている値を取得する。続いてS311において、実行コードは、取得したドライバ設定値が工場デフォルトであるか確認する。ここでの工場デフォルトとは、画像出力装置の出荷時において、予め定義されている値を示す。工場デフォルトであった場合(S311にてYES)、S312に進む。S312にて、プリントサーバ登録ボタン503の実行コードは、サーバプリンタドライバインストーラを起動し、プリントサービスサーバ装置103のアドレス、プリンタAのプリントサービスサーバ装置103のサーバ接続ポートアドレスをパラメータとして渡す。なお、ここで使用するプリントサービスサーバ装置103のアドレスは予めプリントサーバ登録ボタン503の実行コードが保持しているものとする。これは、プリントサービスサーバ装置103が提供するプリントサービスは通常、アドレスが決められており、頻繁な変更がないためである。
【0059】
続いてS313において、サーバプリンタドライバインストーラは、パラメータとして受け取ったプリントサービスサーバ装置103が提供するプリントサービスのアドレスを、出力ポートとしてプリントキューを作成する。またサーバプリンタドライバインストーラは、パラメータとしてプリンタAのサーバ接続ポートのアドレスを受け取る。このアドレスはプリントキューが保持しており、印刷ジョブをプリントサービスサーバ装置103に送信する際に、実際の出力をする画像出力装置のアドレスとして印刷ジョブ内に指定する際に使用する。ここで、サーバプリンタドライバインストーラは、プリントキューを構成するサーバプリンタドライバモジュールも併せてインストールする。なお、サーバプリンタドライバモジュールをインストールするタイミングはここでの処理に限定するものではなく、全てのプリントキューが登録されるまでに実行されればよいし、また、プリントサーバ登録ボタン503が最初に押下された時点でまずインストールするようにしても構わない。また、一度インストールされれば、以降の処理ではインストールしないようにしても構わない。
【0060】
一方、ローカルプリントキューのドライバ設定が工場デフォルトでなかった場合(S311にてNO)はS314に進む。S314の動作はS312とほぼ同様であるが、ここでは、サーバプリンタ登録ボタンの実行コードが取得したドライバ設定値をサーバプリンタドライバインストーラにパラメータとして渡す点が異なる。S315の動作はS313と同様であるが、サーバプリンタドライバインストーラがパラメータとして受け取ったドライバ設定を、作成するサーバプリントキューのドライバ設定とする点が異なる。ここまでの処理により、ユーザがプリンタAのプリントキュー上のプリントサーバ登録ボタン503を押下するのみで、サーバプリンタのプリントキューが生成される。
【0061】
図8(b)はプリンタAのサーバプリントキューが登録されたことを示すダイアログの一例を示す図である。図8(b)において、プリンタダイアログ410、プリンタの追加ボタン411、すでに登録されたプリンタA、プリンタB、プリンタCのプリントキュー412が表示されている。更に、ここまでのステップで新しく登録されたプリンタAのプリントサービスサーバ装置103経由で印刷するためのサーバプリントキュー413が新たに追加されている。
【0062】
次のステップからはプリントサーバ登録ボタンの実行コードにより引き続き処理することにより、付加的な機能を提供するものである。
【0063】
S316において、サーバプリンタ登録ボタンの実行コードは、現在ログインしているユーザのログインIDを取得する。これはOS132のシステムAPI(Application Programming Interface)経由で取得、あるいはレジストリや“/usr”ディレクトリの情報から取得可能である。続いてS317において、取得したログインIDと、プリントサービスサーバ装置103が提供するサービスIDが同じフォーマット(ID体系)であるか比較を行う。具体的には、サーバプリンタ登録ボタンの実行コードがプリントサービスに問い合わせするなどしてフォーマットの一致を確認することが可能である。ここでのフォーマット(体系)とは、例えば、使用可能な文字数、文字の形式などが該当する。
【0064】
この比較において、フォーマットが一致していた場合(S317にてYES)、S318においてプリントサーバ登録ボタンの実行コードは、クライアント装置101に登録されているユーザ権限を有する他のログインIDの情報を取得する。通常、プリントキューの登録などのシステムに変更を行う作業ができるユーザは管理者権限を有するユーザである。一方ユーザ権限を有するユーザは、プリントキューの登録などができない。そのためこの一連の処理でユーザ権限のユーザも一緒に登録すると管理者権限の手間が減ることになる。なお、ユーザ権限を有するユーザIDの取得は、OS132のレジストリからその情報を取得したり、“/usr”ディレクトリの情報から取得することが可能である。
【0065】
ログインIDがプリントサービスのサービスIDのフォーマットと異なる場合(S317にてNO)、取得したログインIDは使用サービス登録に使用できない。そのためS319において、プリントサーバ登録ボタンの実行コードはID入力ダイアログを表示し、ユーザにプリントサービスサーバ装置103のプリントサービスIDを入力させる。なお、このダイアログは、ユーザIDの入力のみの単純なダイアログであるため図示していない。続いてS320において、プリントサーバ登録ボタンの実行コードは取得したIDおよび、プリントサービスサーバ装置103から印刷ジョブを送信するためのプリンタAのサーバ接続ポートのアドレスを、プリントサービスに登録する。ここまでのステップにおいて、プリントサービスサーバ装置103が提供するプリントサービスに使用するユーザとプリンタの登録が完了する。
【0066】
続くステップでは、プリントサーバ登録ボタンの実行コードにより、さらにネットワーク104上にある画像出力装置A102aつまりプリンタA以外の画像出力装置を登録するステップである。
【0067】
S321において、プリントサーバ登録ボタンの実行コードはデバイス探索クエリパケットをネットワーク104にマルチキャストする。このステップにおいて、各画像出力装置はクエリに対するリプライパケットとしてデバイスプロファイルを返信する。なお、デバイスプロファイルは図11に示すものと同様であるため詳細な説明は省力する。
【0068】
続いてS322において、プリントサーバ登録ボタンの実行コードは各画像出力装置から返信されたデバイスプロファイルを受信する。次にS323において、取得したデバイスプロファイルとその画像出力装置のリストを作成する。このリストは、このあとのループ処理(S324からS331)で1台ずつ処理するために使用するリストであり単純に画像出力装置102と対応するデバイスプロファイルのテーブルであり、ここでは詳細な説明は省略する。
【0069】
続いてS324において、先に作成したプリンタリストから1台プリンタ情報を取得する。ここではまず画像出力装置B102bの情報を取得するものとする。S325において、取得する画像出力装置がリストに含まれているため(S325にてYES)、S326に進む。S326において、対応するデバイスプロファイルにサーバプリンタ接続プロトコルはあるか確認する。ここで、画像出力装置B102bはデバイスプロファイルの通信プロトコルとして少なくともIPPを対応しているものとする。IPPはサーバプリンタ接続対応プロトコルであるため、S326において、対応するプロトコルはあると判定される。この判定により(S326にてYES)、S327に進む。
【0070】
S327においてプリントサーバ登録ボタンの実行コードは、サーバプリンタドライバインストーラを起動し、プリントサービスサーバ装置のアドレス、プリンタBのプリントサービスサーバ装置のサーバ接続ポートアドレスをパラメータとして渡す。なお、ここで使用するプリントサービスサーバ装置のアドレスは先に例で示したように予めプリントサーバ登録ボタンの実行コードが保持しているものとする。続いてS328においてサーバプリンタドライバインストーラは、パラメータとして受け取ったプリントサービスサーバ装置103のプリントサービスのアドレスを、プリントキューの出力ポートとしてプリントキューを作成する。またサーバプリンタドライバインストーラは、パラメータとしてプリンタBのサーバ接続ポートのアドレスを受け取っている。このアドレスはプリントキューが保持しており、印刷ジョブをプリントサービスサーバ装置103に送信する際に、実際の出力プリンタのアドレスとして印刷ジョブ内に指定する際に使用する。
【0071】
続いて、S329においてプリントサーバ登録ボタンの実行コードは、S316とS318あるいはS319で取得したユーザIDとサーバプリンタ接続ポートのアドレスとをプリントサービスサーバ装置103のプリントサービスに登録する。
【0072】
S324に戻り、先に作成したプリンタリストから1台プリンタ情報を取得する。ここでは画像出力装置C102cの情報を取得するものとする。また、画像出力装置C102cは通信プロトコルとしてサーバプリンタに対応するプロトコルに対応していない、つまりIPPに対応していないものとする。
【0073】
S325において、取得する画像出力装置がリストにあるため(S325にてYES)、S326に進む。S326において、対応するデバイスプロファイルにサーバプリンタ接続プロトコルはあるか確認する。ここで、画像出力装置C102cはデバイスプロファイルの通信プロトコルとしてIPPに対応していない。IPPはサーバプリンタ接続対応プロトコルであるため、S326において、対応するプロトコルはないと判定される。この判定により(S326にてNO)、S330に進む。S330においてプリントサーバ登録ボタンの実行コードは、サーバプリンタドライバインストーラを起動する。その際、プリントサービスサーバ装置のアドレス、登録元プリントキューつまりプリンタAのサーバプリンタ接続ポートのアドレス、及び実際のジョブの出力先としてのプリンタCのローカルプリント接続ポートアドレスをパラメータとして渡す。なお、ここで使用するプリントサービスサーバ装置のアドレスは先に例で示したように予めプリントサーバ登録ボタンの実行コードが保持しているものとする。
【0074】
続いてS328においてサーバプリンタドライバインストーラは、パラメータとして受け取ったプリントサービスサーバ装置103のプリントサービスのアドレスを、プリントキューの出力ポートとしてプリントキューを作成する。またサーバプリンタドライバインストーラは、パラメータとしてプリンタAのサーバ接続ポートのアドレスを受け取っている。このアドレスはプリントキューが保持しており、印刷ジョブをプリントサービスサーバ装置103に送信する際に、実際の出力する画像出力装置のアドレスとして印刷ジョブ内に指定する際に使用する。
【0075】
またこのケースでは画像出力装置A102aがプリントサービスから印刷ジョブを受信するようになる。しかし、サーバプリンタドライバインストーラはパラメータとして実際の出力先としての画像出力装置C102cのローカル接続ポートアドレスを受け取っている。そのためこのケースで生成されるプリントキューは印刷ジョブ属性として、プリントサービスからの印刷ジョブの送信先は画像出力装置A102a、実際の印刷出力先は画像出力装置C102cと指定することになる。つまり、このケースではプリントサービスサーバ装置103から送信される印刷ジョブは、画像出力装置A102aに送信される。しかし、そのジョブは画像出力装置C102cから出力されるため、画像出力装置A102aはプロキシとして機能し、受信した印刷ジョブを画像出力装置C102cへ転送する。続いて、S329においてプリントサーバ登録ボタンの実行コードは、S316とS318あるいはS319で取得したユーザIDとサーバプリンタ接続ポートのアドレスをプリントサービスサーバ装置103のプリントサービスに登録する。
【0076】
ここで再度S324に戻るが、すでにプリンタリストに取得するプリンタ情報はないため(S325にてNO)、処理を終了する。
【0077】
ここまでの処理で画像出力装置B102bと画像出力装置C102cが追加された。図8(c)はプリントキューが追加されたプリンタダイアログを示したものである。図8(c)において、プリンタダイアログ420、プリンタの追加ボタン421、すでに登録されていたプリンタA、プリンタB、プリンタCのプリントキュー422が表示されている。更にここまでのステップで新しく登録されたプリンタBおよびプリンタCのプリントサービスサーバ装置103経由で印刷するためのサーバプリントキュー423が表示されている。
【0078】
[プリントサービスサーバ装置における処理]
続いてプリントサービスサーバ装置103の処理を図6の流れ図を用いて説明する。プリントサービスサーバ装置103は、S351においてネットワークパケットの受信処理を行う。ネットワークパケットを受信した後、S352に進み、自分宛のパケットであるか判定を行う。自分宛のパケットではない場合(S352にてNO)、S351に戻り再度ネットワークパケットの受信処理を行う。一方自分宛のパケットである場合(S352にてYES)、S353に進み、プリントサービスサーバ装置103はパケットの種別を判定する。パケットの種別が画像出力装置およびユーザID登録である場合、S354に進む。S354では、プリントサービスサーバ装置103は受信した画像出力装置の情報、ここでは画像出力装置のプリントサーバ接続ポートアドレスとその画像出力装置を使用するユーザIDの情報を登録する。この登録は、プリントサービスサーバ装置103のプリンタ登録プログラム185およびユーザ登録プログラム186により実行される。この実行により画像出力装置の情報とユーザ情報はプリントサービスサーバ装置のデータベース190に保存される。
【0079】
S353にて、パケットの種別が印刷ジョブである場合、S355に進む。S355では、プリントサービスサーバ装置103は印刷ジョブに含まれる属性を確認し、出力先の画像出力装置および使用ユーザがデータベース190に登録されているか確認を行う。登録されていない場合(S355にてNO)、S356に進み、プリントサービスサーバ装置103はジョブをキャンセルする。登録されている場合(S355にてYES)、S357に進み、印刷ジョブ受信プログラム187により受信した印刷ジョブをレンダリングプログラム189でレンダリングを行う。さらにレンダリングした印刷データを印刷データ送信プログラム188により出力先の画像出力装置102に送信する。その後、S351へ戻り、ネットワークパケットを受信するまで待機する。
【0080】
[画像出力装置における処理]
続いて画像出力装置102の処理を図7に示す流れ図を用いて説明する。S371において、画像出力装置102はネットワークパケットの受信処理を行う。ネットワークパケットを受信した後、S372に進み、自分宛のパケットであるか判定を行う。自分宛のパケットではない場合(S372にてNO)、S371に戻り、画像出力装置102は再度ネットワークパケットの受信処理を行う。
【0081】
一方自分宛のパケットである場合(S372にてYES)、S373に進み、画像出力装置102はパケットの種別を判定する。パケットの種別がクエリパケットである場合、S375に進む。S375では、画像出力装置102は自身のデバイスプロファイルのパケットを生成し、問い合わせ元に返信する。S373にてパケットの種別が印刷ジョブパケットである場合、S374にて画像出力装置102は印刷データを受信し、印刷ジョブを実行する。
【0082】
以上の一連の処理により、ユーザがプリントサービスサーバ装置に登録したい画像出力装置のプリントキューのプリントサーバ登録ボタンを押下するのみで登録が可能となる。またローカルネットワーク上に他の画像出力が存在する場合、それらの登録も合わせて行うことが可能となる。
【0083】
<第二実施形態>
以下、本発明に係る第二実施形態について図面を用いて説明する。図9(b)および図12乃至17は本発明に係る第二実施形態を説明する図である。本実施形態では、印刷システムがドキュメントサービスサーバ装置(ドキュメントサーバ装置)を新たに備える。このドキュメントサービスサーバ装置とプリントサービスサーバ装置とが連携する際に用いられる、プリントサービスサーバ装置に登録されている画像出力装置を容易にドキュメントサービスサーバ装置に登録可能とする。
【0084】
図12は、本発明の第二実施形態に係る印刷システムの概略構成を示すブロック図である。本実施形態の印刷システムでは、ユーザが操作するクライアント装置801、印刷ジョブを受信し出力を行う複数の画像出力装置802を備える。これらはEthernet(登録商標)などで構成されるネットワーク804を介して接続されている。クライアント装置801、プリントサービスサーバ装置803、およびドキュメントサービスサーバ装置807は、ネットワーク804上に存在するゲートウェイ装置805を介しインターネット806経由で接続される。
【0085】
なお、画像出力装置802はクライアント装置801が生成した印刷ジョブをネットワーク804経由で受信し印刷する。これに加えて、画像出力装置802は、プリントサービスサーバ装置803からのジョブも受信し印刷することが可能である。また、ドキュメントサービスサーバ装置807は、クライアント装置801のブラウザやアプリケーションからインターネット806を経由して、ドキュメントの編集、管理、印刷などのアプリケーションサービスを提供するサーバ装置である。また、ドキュメントサービスサーバ装置807はプリントサービスサーバ装置803と連携して、処理を行うことが可能である。
【0086】
具体的には、ユーザはドキュメントサービスサーバ装置807に対する管理画面などを参照して、プリントサービスサーバ装置803に登録された画像出力装置802を登録させる。この後、ユーザはドキュメントサービスサーバ装置807が提供するアプリケーションサービスを使用してドキュメントを作成し、プリントサービスサーバ装置803に登録された画像出力装置802に印刷指示を行う。続いてドキュメントサービスサーバ装置807からプリントサービスサーバ装置803に、印刷ジョブが送信される。これにより、ジョブ送信が実現される。プリントサービスサーバ装置803は受信した印刷ジョブをレンダリングし、指定されている画像出力装置802に印刷データを送信する。
【0087】
このようにドキュメントサービスサーバ装置807およびプリントサービスサーバ装置803を、クライアント装置101のブラウザ上から利用することにより、ドキュメントサービスサーバ装置上に保持されたドキュメントを印刷することが可能となる。
【0088】
なお図12において、ドキュメントサービスサーバ装置807を除く構成、装置、および要素は第一実施形態にて述べた図1と同様のため、各装置のブロック図による詳細な説明は省略する。
【0089】
[ドキュメントサービスサーバ装置]
ここでは図13を用いてドキュメントサービスサーバ装置807の構成について説明する。ドキュメントサービスサーバ装置807において、CPU811は、記憶部であるRAM812等に記憶されているプログラムに従って、システムバス814に接続される各デバイスを総括的に制御している。RAM812は、CPU811の主メモリ、ワークエリア等としても機能している。ROM813は、各種プログラム及びデータを格納している。キーボードコントローラI/F816は、キーボード820や不図示のポインティングデバイス(マウス)からの入力を制御する。表示部I/F815は、表示部819への表示を制御している。
【0090】
外部メモリI/F817は、例えばHD、SSD等の外部メモリ821とのアクセスを制御する。外部メモリ821は、OS822をはじめウェブサービスライブラリ823、ドキュメントサービスプログラム824を備える。さらに、ユーザファイル、その他設定ファイル等をデータベース830として記憶するコンピュータが保存または、読み取り可能な記憶媒体として機能する。ドキュメントサービスプログラム824は、ユーザ登録プログラム825、プリンタ登録プログラム826、印刷ジョブ生成プログラム827、印刷データ送信プロクラム828、アプリケーションスクリプト829を含んでいる。また、ネットワークI/F818は、インターネット806を介してクライアント装置801、プリントサービスサーバ装置803に接続され、通信制御処理を行う。
【0091】
[システムにおける処理シーケンス]
次に図14乃至16の流れ図を用いて各装置の処理の流れを説明する。なお、ローカルプリントキューおよびサーバプリントキューの登録は第一実施形態と同様のため説明は省略する。ここでは、第二実施形態に係る部分の説明を行う。
【0092】
[ドキュメントサービスサーバ装置における処理]
図14はドキュメントサービスサーバ装置807の処理の流れ図を示したものである。S901において、ドキュメントサービスサーバ装置807は、ネットワークI/F818を介してネットワークパケットを受信する。ネットワークパケットの受信の後、S902において、ドキュメントサービスサーバ装置807は受信したネットワークパケットが自分宛か判定する。自分宛ではない場合(S902にてNO)、S901に戻り、ドキュメントサービスサーバ装置807は、再度ネットワークパケットの受信を行う。
【0093】
自分宛である場合(S902にてYES)、S903に進み、ドキュメントサービスサーバ装置807は、ネットワークパケットの種別の判定を行う。受信したネットワークパケットが「ドキュメントサービス処理」の場合、S904に進み、各種ドキュメントサービス処理を行う。ここでのドキュメントサービス処理とは、例えばウェブブラウザベースのアプリケーションサービスの場合を考える。この場合は、クライアント装置801からURLページの要求を受け付けると、アプリケーションスクリプトをクライアント装置801に送信する、などである。
【0094】
S903においてネットワークパケットの種別が「プリンタ登録」である場合、S905に進み、ドキュメントサービスサーバ装置807はプリンタ登録処理を行う。これは、ドキュメントサービスサーバ装置807の外部メモリに保存されているプリンタ登録プログラム826により実行される。
【0095】
S903においてパケット種別が「ユーザ登録」である場合、S906に進み、ドキュメントサービスサーバ装置807はユーザ登録処理を行う。これは、ドキュメントサービスサーバ装置807の外部メモリ821に保存されているユーザ登録プログラム825により実行される。ネットワークパケットの種別に応じた処理が完了した後、S901に戻り、次のネットワークパケットを受信するまで待機する。
【0096】
[クライアント装置における処理]
図15および図16はクライアント装置801上の処理の流れの説明である。図15はユーザがOS822にログインする際の処理を示したものである。なお、ログインする際に実行される処理はログインスクリプトなどと呼ばれ、OS822がログイン時に処理を実行するものである。
【0097】
S911において、ユーザはクライアント装置801のOS822にログインする。続いてS912において、OS822はクライアント装置801の外部メモリに保存されているログインスクリプトを起動する。S913において、起動されたログインスクリプトは、ログインしたユーザのドキュメントサービスIDがすでに保存されているか確認する。この情報は、ドキュメントサービスを実行するために用いられる認証情報等を含む。また、ドキュメントサービスIDは、ログインスクリプトがアクセス可能な、クライアント装置801の外部メモリに格納されているものとする。具体的には、OSのレジストリや“/usr”ディレクトリ以下のアクセス可能なキーあるいはファイルである。ドキュメントサービスIDが保存されていれば(S914にてYES)、処理を終了する。ドキュメントサービスIDが保存されていない場合(S914にてNO)、S915に進み、ログインスクリプトはドキュメントサービスIDの入力ダイアログをクライアント装置801上に表示させる。
【0098】
図17はそのダイアログの一例を示している。図17において、ドキュメントサービスID登録ダイアログ1000、ドキュメントサービスのログインIDとパスワードを入力するコントロール1001、1002を示している。なお、登録しないドキュメントサービスについては、ドキュメントサービス名の横に配置されているチェックボックスを“OFF”にする(すなわち、チェックを外す)ことで登録しないようにすることができる。
【0099】
ドキュメントサービスID登録におけるチェックボックス、およびコントロール1001,1002に対する入力が終わったら、ユーザはOKボタン1003を押下する。なおキャンセルする場合は、ユーザはキャンセルボタン1004を押下する。続いてS916において、ログインスクリプトはS915においてユーザが入力したログインIDおよびパスワードをドキュメントサービス毎にクライアント装置801の外部メモリ821に保存する。これにより、ドキュメントサービスに対応するログインIDおよびパスワードを含む認証情報が保持される。
【0100】
図16はクライアント装置801上でユーザがドキュメントサービスサーバ装置807のドキュメントサービスに画像出力装置を登録する流れを示したものである。S921において、ユーザはクライアント装置801のOS上でサーバプリントキューのプリントキューダイアログを開く。図9(b)はプリントサービスサーバ(画像出力装置)のプリントキューダイアログの一例を示したものである。図9(b)において、プリントキューダイアログ510は、サーバプリンタであるプリンタA(プリントサービスサーバ)のプリントキューダイアログを示している。
【0101】
概略情報511はプリンタA(プリントサービスサーバ)に関する情報の概略を示している。この例では、プリンタAの外観、プリンタ名称である「プリンタA(プリントサービスサーバ)」、画像出力装置の印刷状態を示すステータス、画像出力装置の種別が表示されている。なお、ここで示した情報に限定するものではなく、画像出力装置から取得した他の情報を表示させても構わない。表示ボタン512は、印刷ジョブの処理状況を示すプリントキューを表示するためのボタンである。ドキュメントサービス登録ボタン513はドキュメントサービスサーバ装置807のドキュメントサービスに画像出力装置を登録するボタンである。このボタンを押下することにより、出力先登録を行う。
【0102】
ユーザは利用しているドキュメントサービスに画像出力装置を登録するために、ドキュメントサービス登録ボタン513を押下する。なおこのボタンの押下により実行するためのベンダ独自の実行コードが定義可能となっており、この操作により実行コードが実行される。この実行コードは、例えば、プリンタドライバによって提供される。
【0103】
ユーザはS921においてこのドキュメントサービス登録ボタン513を押下する。この指示により、S922においてドキュメントサービス登録ボタン513の実行コードは、OSに保存されているドキュメントサービスのログインIDおよびパスワードを検索する。ここで検索された認証情報が、保存されていない場合は(S923にてNO)、処理を終了する。認証情報が保存されている場合は(S923にてYES)、S924に進む。S924ではドキュメントサービス登録ボタン513の実行コードは、保存されているログインID、パスワードを使用してドキュメントサービスにログインする。続いて、実行コードは、ドキュメントサービスのWebAPIなどを使用して、そのユーザが使用するプリントサービスサーバ装置に登録された画像出力装置をドキュメントサービスに登録する。具体的にはこの場合、ユーザはプリンタA(プリントサービスサーバ)の登録を行いたいため、実行コードは、プリントサービスサーバ装置の宛先とこの画像出力装置のサーバ接続ポートアドレス情報を登録する。これにより、ドキュメントサービスへのポート登録を行うこととなる。
【0104】
以上により、ユーザは使用するドキュメントサービス情報を入力しておくことにより、ドキュメントサービスに登録したい画像出力装置を、プリントキューのボタンを押下するのみで登録することが可能となる。
【0105】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
プリントサーバ装置、クライアント装置、および画像出力装置がネットワークを介して接続された印刷システムであって、
前記画像出力装置は、
ローカル接続用の第一の接続ポートと前記プリントサーバ装置を介して印刷ジョブを受信するための第二の接続ポートとを備え、
アドレス取得要求を受信した際に、前記第二の接続ポートのアドレスを返信する返信手段と、
前記第一の接続ポートもしくは前記第二の接続ポートを介して受信した印刷ジョブを印刷する印刷手段と
を備え、
前記プリントサーバ装置は、
印刷ジョブの送信先である画像出力装置を登録する画像出力装置登録手段と、
印刷ジョブに設定あるいは指示され、前記画像出力装置登録手段にて登録されている画像出力装置に対し、指定された接続ポートを介して当該印刷ジョブを送信する送信手段と
を備え、
前記クライアント装置は、
前記画像出力装置に対応するドライバをインストールするための第一のインストーラを備え、
前記第一のインストーラは実行することで、第一のドライバと、第二のドライバをインストールするための第二のインストーラとを当該クライアント装置にインストールし、
インストールされた前記第一のドライバは、
前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段と、
前記アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段と、
前記プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記第二のインストーラを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段と
を備え、
起動された前記第二のインストーラは、前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成することを特徴とする印刷システム。
【請求項2】
前記実行手段は、前記第一のプリントキューのデフォルトの設定が変更されている場合、前記第二のインストーラに対し、前記第二のプリントキューの設定を変更された当該第一のプリントキューの設定に変更させることを特徴とする請求項1に記載の印刷システム。
【請求項3】
前記実行手段は、前記第二のインストーラによる第二のプリントキューの作成時に、ローカルネットワーク上の画像出力装置を検索し、当該ローカルネットワークに接続された画像出力装置が有する接続ポートの情報を取得する取得手段を備え、
前記取得手段により第二の接続ポートを有する画像出力装置が検出された場合、当該第二の接続ポートのアドレスを用いて、第二のプリントキューを作成させることを特徴とする請求項1に記載の印刷システム。
【請求項4】
前記実行手段は、前記取得手段により第二の接続ポートを有さない画像出力装置が検出された場合、第二の接続ポートを有する予め定義された画像出力装置の当該第二の接続ポートのアドレスを用いて、第二のプリントキューを作成させ、
前記画像出力装置は、
自らが有する第二の接続ポートを介して、前記第二の接続ポートを有さない画像出力装置への印刷ジョブを受信した際に、当該第二の接続ポートを有さない画像出力装置へ当該印刷ジョブを転送する転送手段を更に有する
ことを特徴とする請求項3に記載の印刷システム。
【請求項5】
前記プリントサーバ装置は、前記画像出力装置登録手段により登録された画像出力装置を使用可能なユーザの情報を保持する保持手段を更に備え、
前記実行手段は、
前記クライアント装置にログインしている前記作成指示を行うユーザの認証情報を取得し、当該認証情報と前記プリントサーバ装置の保持手段にて保持されるユーザの情報との体系を比較する比較手段を更に備え、
体系が一致する場合、当該認証情報を前記保持手段にて保持させ、
体系が異なる場合、新たな認証情報をユーザに入力させ、当該新たな認証情報を前記保持手段にて保持させる
ことを特徴とする請求項1に記載の印刷システム。
【請求項6】
前記実行手段は、前記比較手段にて体系が一致すると判定された場合、前記クライアント装置が有する当該画像出力装置を使用可能な他のユーザの認証情報を前記プリントサーバ装置の保持手段にて保持させることを特徴とする請求項5に記載の印刷システム。
【請求項7】
前記印刷システムは、ドキュメントサーバ装置を更に有し、
前記ドキュメントサーバ装置は、
前記プリントサーバ装置に登録されている画像出力装置を登録する出力先登録手段と、
印刷指示があった場合、前記プリントサーバ装置に、前記出力先登録手段にて登録されている画像出力装置のうち、出力先として指定された画像出力装置の情報を含めて印刷ジョブを送信するジョブ送信手段と
を有することを特徴とする請求項1に記載の印刷システム。
【請求項8】
インストールされた前記第二のドライバは、前記ドキュメントサーバ装置に対して前記印刷指示を行う場合、印刷ジョブの送信先として前記プリントサーバ装置を指定し、当該印刷ジョブの出力先である画像出力装置が有する第二の接続ポートを指定する指定手段を更に有することを特徴とする請求項7に記載の印刷システム。
【請求項9】
インストールされた前記第二のドライバは、前記ドキュメントサーバ装置の出力先登録手段に対し、登録された画像出力装置に対応する前記第二の接続ポートの情報を登録させるポート登録手段を有することを特徴とする請求項7に記載の印刷システム。
【請求項10】
インストールされた前記第二のドライバは、ユーザのログイン時に前記ドキュメントサーバ装置における認証情報を問い合わせる手段を更に有し、
前記ポート登録手段は、前記第二の接続ポートを登録する際に、前記認証情報を使用して前記ドキュメントサーバ装置にログインすることを特徴とする請求項9に記載の印刷システム。
【請求項11】
プリントサーバ装置、クライアント装置、および画像出力装置がネットワークを介して接続された印刷システムにおける制御方法であって、
前記画像出力装置において、
ローカル接続用の第一の接続ポートと前記プリントサーバ装置を介して印刷ジョブを受信するための第二の接続ポートとを備え、
返信手段が、アドレス取得要求を受信した際に、前記第二の接続ポートのアドレスを返信する返信工程と、
印刷手段が、前記第一の接続ポートもしくは前記第二の接続ポートを介して受信した印刷ジョブを印刷する印刷工程と
を有し、
前記プリントサーバ装置において、
画像出力装置登録手段が、印刷ジョブの送信先である画像出力装置を登録する画像出力装置登録工程と、
送信手段が、印刷ジョブに設定あるいは指示され、前記画像出力装置登録工程にて登録されている画像出力装置に対し、指定された接続ポートを介して当該印刷ジョブを送信する送信工程と
を有し、
前記クライアント装置において、
前記画像出力装置に対応するドライバをインストールするための第一のインストーラを備え、
前記第一のインストーラは実行することで、第一のドライバと、第二のドライバをインストールするための第二のインストーラとを当該クライアント装置にインストールし、
インストールされた前記第一のドライバにより、
作成手段が、前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成工程と、
アドレス取得手段が、前記アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得工程と、
実行手段が、前記プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記第二のインストーラを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行工程と
起動された前記第二のインストーラにより、前記アドレス取得工程にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成する工程と
を有することを特徴とする制御方法。
【請求項12】
プリントサーバ装置および画像出力装置にネットワークを介して接続された情報処理装置であって、
前記画像出力装置に対応するドライバをインストールするための第一のインストーラを備え、
前記第一のインストーラは実行することで、第一のドライバと、第二のドライバをインストールするための第二のインストーラとを当該情報処理装置にインストールし、
インストールされた前記第一のドライバは、
前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段と、
アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段と、
前記プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記第二のインストーラを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段と
を備え、
起動された前記第二のインストーラは、前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成することを特徴とする情報処理装置。
【請求項13】
画像出力装置に対応するドライバをインストールするためのインストーラプログラムであって、
コンピュータに第一のドライバと、第二のドライバをインストールするための別のインストーラプログラムとをインストールさせ、
インストールされた前記第一のドライバは、
コンピュータを、
前記画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段、
アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段、
プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、前記別のインストーラプログラムを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段
として機能させ、
起動された前記別のインストーラプログラムは、コンピュータに前記アドレス取得手段にて取得した第二の接続ポートのアドレスを用いて前記第二のプリントキューを作成させることを特徴とするインストーラプログラム。
【請求項14】
コンピュータを、
画像出力装置の第一の接続ポートに接続する第一のプリントキューを作成する作成手段、
アドレス取得要求を送信し、前記画像出力装置の第二の接続ポートのアドレスを取得するアドレス取得手段、
プリントサーバ装置を接続先とする第二のプリントキューの作成指示を受け付けた場合、インストーラプログラムを起動させることにより、前記第二のドライバをインストールさせ、前記第二のプリントキューを作成させる実行手段
として機能させることを特徴とするデバイスドライバプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−173816(P2012−173816A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−32632(P2011−32632)
【出願日】平成23年2月17日(2011.2.17)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】