(57)【特許請求の範囲】
【請求項１】
端末装置とネットワークを介して通信可能であって、自身の機能を用いたサービスを提供することが可能なサービス提供装置であって、
前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知手段と、
前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信手段と、
前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得手段と、
前記受信手段が前記サービス取得要求を受信した場合に、前記取得手段により取得されたサービス内容を前記端末装置に通知するサービス内容通知手段と、
前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知手段とを備え、
前記サービス提供装置または前記サービスの起動に応じて、前記サービス終了通知手段が前記サービス終了通知を前記端末装置に対して行った後に、前記サービス開始通知手段が前記サービス開始通知を前記端末装置に対して行うことを特徴とするサービス提供装置。
【請求項２】
端末装置とネットワークを介して通信可能であって、自身の機能を用いたサービスを提供することが可能なサービス提供装置であって、
前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知手段と、
前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信手段と、
前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得手段と、
前記受信手段が前記サービス取得要求を受信した場合に、前記取得手段により取得されたサービス内容を前記端末装置に通知するサービス内容通知手段と、
前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知手段と、
前記サービス提供装置または前記サービスの起動に応じて前記取得手段により取得されたサービスの内容を記憶する記憶手段と、
前記サービス開始通知が行われた後であって前記サービス開始通知に含まれる有効期限情報により示されるサービスの有効期限より前に、前記サービス提供装置が提供するサービスの有効期限を更新するための更新処理を行う更新処理手段とを備え、
前記更新処理手段は、前記記憶手段に記憶されたサービスの内容と前記取得手段により取得されるサービスの内容とが異なる場合は、前記サービス終了通知手段により前記サービス終了通知を行わせた後に前記サービス開始通知手段により前記サービス開始通知を行わせ、前記記憶手段に記憶されたサービスの内容と前記取得手段により取得されるサービスの内容とが一致する場合は、前記サービス終了手段によるサービス終了通知を行わせることなく前記サービス開始通知手段による前記サービス開始通知を行わせることを特徴とするサービス提供装置。
【請求項３】
前記サービス提供装置は、前記サービスとして印刷機能を提供する印刷装置であることを特徴とする請求項１又は２に記載のサービス提供装置。
【請求項４】
端末装置とネットワークを介して通信可能な装置が自身の機能を用いたサービスを提供することが可能なサービス提供装置における情報処理方法であって、
前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知工程と、
前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信工程と、
前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得工程と、
前記受信工程にて前記サービス取得要求を受信した場合に、前記取得工程により取得されたサービス内容を前記端末装置に通知するサービス内容通知工程と、
前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知工程とを有し、
前記サービス提供装置または前記サービスが起動した場合、前記サービス終了通知工程による前記サービス終了通知が行われた後に、前記サービス開始通知工程によるサービス開始通知が行われることを特徴とする情報処理方法。
【請求項５】
端末装置とネットワークを介して通信可能な装置が自身の機能を用いたサービスを提供することが可能なサービス提供装置における情報処理方法であって、
前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知工程と、
前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信工程と、
前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得工程と、
前記受信工程にて前記サービス取得要求を受信した場合に、前記取得工程により取得されたサービス内容を前記端末装置に通知するサービス内容通知工程と、
前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知工程と、
前記サービス提供装置または前記サービスの起動に応じて前記取得工程により取得されたサービスの内容を記憶部に記憶させる記憶工程と、
前記サービス開始通知が行われた後であって前記サービス開始通知に含まれる有効期限情報により示されるサービスの有効期限より前に、前記サービス提供装置が提供するサービスの有効期限を更新するための更新処理を行う更新処理工程を備え、
前記更新処理工程は、前記記憶部に記憶されたサービスの内容と前記取得工程により取得されるサービスの内容とが異なる場合は、前記サービス終了通知工程により前記サービス終了通知を行わせた後に前記サービス開始通知工程により前記サービス開始通知を行わせ、前記記憶部に記憶されたサービスの内容と前記取得工程により取得されるサービスの内容とが一致する場合は、前記サービス終了工程によるサービス終了通知を行わせることなく前記サービス開始通知工程による前記サービス開始通知を行わせることを特徴とする情報処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、端末装置とネットワークを介して通信可能に接続され、自身の機能を用いたサービスを端末装置に対して提供することが可能なサービス提供装置および情報処理方法に関する。
【０００２】
【従来の技術】
近年、インターネットなどの大規模なネットワークの普及に伴い、ネットワーク技術が飛躍的に向上している。このような状況下において、ＷＷＷ関連の技術を用いて、ネットワークで接続された機器間の連携によって、様々なネットワーク上のサービスを利用可能にしたＷｅｂサービスと呼ばれる技術が注目を集めている。そのようなサービスの中で、端末とネットワークを介して接続される印刷デバイスが自身の機能を用いたサービスを端末に対して提供するいわゆるプリントサービスと呼ばれるサービスが利用されつつある。このプリントサービスにおいては、ネットワーク上の端末が、該端末からの印刷要求を受け付けて印刷を実行することが可能である複数の印刷デバイスのうち、所望の機能を有する印刷デバイスを選択し、この印刷デバイスを用いて印刷を行うことになる。
【０００３】
このようなサービスを提供する機器は、サービスを開始していることを通知するとともに、機器情報やサービス内容をネットワーク上に公開する（例えば、特許文献１）。ネットワークに接続されている端末は、それらの公開されている情報を取得または検索することによって、ネットワーク上のサービスにアクセスすることが可能となる。また、ネットワーク上の端末は取得した機器情報やサービス内容を登録しておくことによって、サービス利用の度に、印刷デバイスの機器情報やサービス内容の取得、検索を行う手間をなくすことができる。
【０００４】
上記プリントサービスを提供することが可能な印刷デバイスによるサービス開始通知や機器情報、サービス内容の公開、および端末による印刷デバイスのサービス情報の取得、登録は、一般的に、以下のようにして行われる。
【０００５】
サービスを提供する印刷デバイスは、起動時に、印刷サービスを起動し、サービスの開始を通知する起動公告パケットをネットワーク上に送信する。このとき、印刷デバイスは、自身のプロファイル情報や提供可能なサービス内容を機器内部から取得し、デバイス情報を記述したＤＤＦ（デバイス記述ファイル）とサービス内容を記述したＳＤＦ（サービス記述ファイル）を作成する。起動公告パケットを受信したネットワーク上の端末は、自身に起動公告を送信した印刷デバイスが登録されていない場合には、起動公告パケットに含まれる情報に基づいて印刷デバイスに対してＤＤＦとＳＤＦの取得要求を送信する。要求を受け取った印刷デバイスは、ＤＤＦとＳＤＦを、上記要求に対するレスポンスとして送信し、端末は印刷デバイスから受け取ったＤＤＦ、ＳＤＦに基づいて印刷デバイスの機器情報やサービス内容の情報を取得し、登録する。
【０００６】
また、このような印刷サービスを提供する複数の印刷デバイスがネットワーク上に存在している場合、端末は各印刷デバイスのサービスを上記動作によって登録することになる。
【０００７】
このようにネットワーク上の印刷デバイスのサービスを登録した端末装置から印刷を行う場合、端末装置は、登録されている各印刷デバイスのサービス内容の情報に基づいて所望の印刷サービスを提供する印刷デバイスを選択し、この選択された印刷デバイスに対して印刷要求を送信し、印刷を実行する。
【０００８】
ここで、上記印刷デバイスの起動およびサービス開始の通知について図１７を参照しながら説明する。図１７は従来の印刷デバイスにおける起動およびサービス開始の通知タイミングを示す図である。
【０００９】
印刷デバイスの起動およびサービス開始の通知において、印刷デバイスが送信する起動公告には、公告通知の有効期限が記述されており、その有効期限が切れた場合、端末装置に登録されている情報は自動的に削除される。
【００１０】
印刷デバイスは、図１７（ａ）に示すように、起動すると、起動公告パケットを送信する。この後、印刷デバイスは、継続的に自身のサービス情報を各端末に登録させるため、サービスの有効期限が切れる前にその更新を通知する更新公告パケットを送信する。この更新公告パケットは、定期的に送信される。また、更新公告パケットは起動公告パケットと同じ内容のパケットである。
【００１１】
印刷デバイスがサービスを終了する場合は、サービス終了を通知する終了公告パケットを端末に対して送信する。終了公告パケット受信した端末は、印刷デバイスがサービスを中止したことを確認し、登録されているサービス内容を削除する。
【００１２】
【特許文献１】
特開平１１−１９１０８６号公報
【００１３】
【発明が解決しようとする課題】
上記端末に登録されている印刷デバイスの起動公告の有効期限が切れていない期間中において、上記印刷デバイスの状態が変化し、この状態変化によってサービスの内容が変更される場合がある。このような場合、印刷デバイスにおいては、ＤＤＦ、ＳＤＦが更新され、起動公告パケットのみが送信される。しかしながら、端末に登録されている印刷デバイスの起動公告の有効期間が切れていないので、端末は、上記起動公告パケットに応答して更新されたＤＤＦ、ＳＤＦの取得を行うことをしない。その結果、端末はサービス内容の変化を検知することができない。
【００１４】
そこで、印刷デバイスの状態変化によるサービス内容の変更があると、印刷デバイスは、終了公告パケットを送信する。これにより、端末に登録されているサービス内容は削除される。その後、印刷デバイスは、再度起動公告パケットを送信する。これにより、端末は、上記起動公告パケットに応答して更新されたＤＤＦ、ＳＤＦの取得を行うので、サービス内容の再登録を行うことができる。
【００１５】
しかしながら、印刷物のソートやステイプル、両面印刷などの複数機能を有する印刷デバイスにおいては、図１７（ｂ）に示すように、印刷デバイスの電源がオフされた後、印刷物のソートやステイプルを行うフィニッシャユニットや両面印刷ユニットが装着または取り外されると、印刷デバイスが提供するサービスの内容が変わることになる。このよう場合において、電源が再投入されると、起動公告パケットは送信されるが、この時点で、電源オフ前に端末に送信した起動、更新公告パケットの有効期限が有効であると、端末は、上記起動公告パケットが更新公告であると判断し、印刷デバイスにおいて更新されたＤＤＦ、ＳＤＦの取得を行わない。その結果、印刷デバイスが提供するサービスの内容が変更されたにも拘わらず、端末は、サービス内容の再登録を行うことができない。
【００１６】
このように、印刷デバイスの電源オフから次に電源がオンされるまでの期間中に提供するサービス内容が変更された場合において、端末は変更されたサービス内容を取得することができない場合がある。
【００１７】
本発明の目的は、サービス提供装置が提供するサービスの内容が変更された場合において、サービスの内容が登録されている場合にサービス開始通知を受信してもサービスの内容の取得をサービス提供装置に要求しない端末装置に、変更されたサービスの内容を正しく登録させることができるサービス提供装置および情報処理方法を提供することにある。
【００１８】
【課題を解決するための手段】
本発明は、上記目的を達成するため、端末装置とネットワークを介して通信可能であって、自身の機能を用いたサービスを提供することが可能なサービス提供装置であって、前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知手段と、前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信手段と、前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得手段と、前記受信手段が前記サービス取得要求を受信した場合に、前記取得手段により取得されたサービス内容を前記端末装置に通知するサービス内容通知手段と、前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知手段とを備え、前記サービス提供装置または前記サービスの起動に応じて、前記サービス終了通知手段が前記サービス終了通知を前記端末装置に対して行った後に、前記サービス開始通知手段が前記サービス開始通知を前記端末装置に対して行うことを特徴とする。
【００１９】
また、本発明は、上記目的を達成するため、端末装置とネットワークを介して通信可能であって、自身の機能を用いたサービスを提供することが可能なサービス提供装置であって、前記サービス提供装置によるサービスの提供が開始されたことを通知するためのサービス開始通知を前記端末装置に対して行うサービス開始通知手段と、前記サービス開始通知により開始されたサービスの内容が前記端末装置に登録されていない場合に前記端末装置から送信されるサービス取得要求であって、前記サービス開始通知により開始されたサービスの内容の取得を要求するサービス取得要求を前記端末装置から受信する受信手段と、前記サービス提供装置が前記端末装置に提供可能なサービスの内容を取得する取得手段と、前記受信手段が前記サービス取得要求を受信した場合に、前記取得手段により取得されたサービス内容を前記端末装置に通知するサービス内容通知手段と、前記端末装置に登録されているサービス内容を無効化するためのサービス終了通知を前記端末装置に対して行うサービス終了通知手段と、前記サービス提供装置または前記サービスの起動に応じて前記取得手段により取得されたサービスの内容を記憶する記憶手段と、前記サービス開始通知が行われた後であって前記サービス開始通知に含まれる有効期限情報により示されるサービスの有効期限より前に、前記サービス提供装置が提供するサービスの有効期限を更新するための更新処理を行う更新処理手段とを備え、前記更新処理手段は、前記記憶手段に記憶されたサービスの内容と前記取得手段により取得されるサービスの内容とが異なる場合は、前記サービス終了通知手段により前記サービス終了通知を行わせた後に前記サービス開始通知手段により前記サービス開始通知を行わせ、前記記憶手段に記憶されたサービスの内容と前記取得手段により取得されるサービスの内容とが一致する場合は、前記サービス終了手段によるサービス終了通知を行わせることなく前記サービス開始通知手段による前記サービス開始通知を行わせることを特徴とする。
【００２０】
また、本発明は、上記目的を達成するため、サービス提供装置における情報処理方法を提供する。
【００２７】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００２８】
図１は本発明の一実施の形態に係る印刷デバイスのハードウェア構成を示すブロック図である。
【００２９】
印刷デバイス２００は、図１に示すように、ＣＰＵ（中央処理装置）２０１を備える。このＣＰＵ２０１は、ＲＯＭ（リードオンリーメモリ）２０２またはハードディスク（ＨＤ）２１０に格納されているプログラムを実行して、システムバス２０４に接続される各デバイスを総括的に制御する。システムバス２０４には、上記ＲＯＭ２０２およびハードディスク２１０とともに、ＲＡＭ２０３（ランダムアクセスメモリ）、プリンタＩ／Ｆ制御部２０５、ＮＶＲＡＭ２０７、パネル制御部２０８、およびネットワークＩ／Ｆ制御部２１１が接続されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリアとして機能する。プリンタＩ／Ｆ制御部２０５は、ＣＰＵ２０１からの命令に基づいてプリンタエンジン２０６を制御するものである。プリンタエンジン２０６には、図示されていないが、印刷物のソートやステイプルを行うフィニッシャユニット、両面印刷ユニットなどが装着されている。ＮＶＲＡＭ２０７は、不揮発性のメモリであり、印刷デバイス２００の各種設定値を保存するためのものである。パネル制御部２０８は、操作パネル２０９との間での情報の入出力を制御するとともに、操作パネル２０９による各種情報の表示を制御する。ネットワークＩ／Ｆ制御部２１１は、ＬＡＮ（Local Area Network）２１２との間でのデータの送受信を制御する。
【００３０】
次に、印刷デバイス２００におけるソフトウェア構成について図２を参照しながら説明する。図２は図１の印刷デバイス２００におけるソフトウェア構成を示すブロック図である。
【００３１】
印刷デバイス２００においては、図２に示すように、ＣＰＵ２０１がＲＯＭ２０２またはハードディスク２１０に格納されているプログラムを実行することによって、プリンタ制御部３０１、印刷処理制御部３０２、ＸＡＭＬパーサ３０３、ＳＯＡＰ制御部３０４、ＨＴＴＰサーバ３０５、ＴＣＰ／ＩＰ制御部３０６、ネットワークドライバ３０７の各モジュールが構成される。
【００３２】
ここで、プリンタ制御部３０１は、プリンタＩ／Ｆ制御部２０５（図１に示す）を制御し、プリンタエンジン２０６へのデータ送信、排紙制御などを行う。印刷処理印刷制御部３０２は、受信したデータを印刷可能なデータに変換するとともに、印刷部数、両面印刷等の印刷に関する様々な制御を行う。ネットワークドライバ３０７は、ネットワークＩ／Ｆ制御部２１１（図１に示す）を制御し、ＬＡＮ２１２とのデータ送受信の制御を行うためのモジュールである。ＴＣＰ／ＩＰ制御部３０６は、ＴＣＰ／ＩＰによるデータの送受信および制御を行う。ＨＴＴＰサーバ３０５は、ＨＴＴＰのサーバ機能を有しており、ＬＡＮ２１２上の端末装置から受信したＨＴＴＰリクエストパケットを解析して、データをＳＯＡＰ制御部３０４や印刷処理制御部３０２などの上位アプリケーションに渡すとともに、上位アプリケーションの指示によりＨＴＴＰレスポンスパケットを端末装置に返信する制御を行う。ＳＯＡＰ制御部３０４は、ＳＯＡＰ（Simple Object Access Protocol）と呼ばれるプロトコルを制御するモジュールである。ＳＯＡＰ制御部３０４は、端末装置から受信したＸＭＬ（eXtensible Markup Language）形式のデータを、ＸＭＬパーサ３０３を使用して解析し、印刷処理制御部３０２の適切なモジュールを呼び出し、また端末装置に返すべきデータをＸＭＬデータに変換し、ＨＴＴＰサーバ３０５を介して、上記ＸＭＬデータを端末装置に返信する制御を行う。ＸＭＬパーサ３０３は、ＸＭＬ形式データを入力とし、その解析結果を出力するモジュールである。
【００３３】
ＬＡＮ２１２上の端末装置が印刷デバイス２００を用いて印刷を行う場合について図３〜図８を参照しながら説明する。図３はＬＡＮ２１２上の端末装置からＨＴＴＰ上のＳＯＡＰを用いて印刷デバイス２００に送信されるCreateJobと称されるパケットデータの一例を示す図、図４は図３のCreateJobパケットに対する応答パケットデータの一例を示す図、図５は端末装置が印刷デバイス２００を用いて印刷を行う場合における印刷デバイス２００の動作手順を示すフローチャート、図６は端末装置からＨＴＴＰのＰＯＳＴメソッドにより送信される印刷データ転送パケットの一例を示す図、図７は図１の印刷デバイス２００から端末装置に送信されるＨＴＴＰレスポンスパケットの一例を示す図、図８は図１の印刷デバイス２００から端末装置に送信されるエラーレスポンスパケットの一例を示す図である。
【００３４】
ＬＡＮ２１２上の端末装置が印刷デバイス２００を用いて印刷を行う場合、端末装置からＨＴＴＰ上のＳＯＡＰを用いて、CreateJobと称されるパケットデータが印刷デバイス２００に送信される。CreateJobパケットは、印刷デバイス２００に対してジョブ（印刷）の開始を指示するコマンドであり、ＸＭＬ形式で記述されている。CreateJobパケットには、図３に示すように、要求元のユーザ名（<requesting-user-name>タグ）やジョブの処理に関する指示（<job-instruction>タグ）等の情報が記述されている。<job-instruction>タグには、印刷部数を設定する<copies>タグ、両面印刷を設定する<sides>タグ、印刷の仕上げを設定する<finishing>タグなどが含まれ、印刷デバイス２００は、これらのタグに設定された値に基づいてジョブの処理を行う。さらに、<job-instruction>タグには、オプションとして<notification-instruction>タグを含めることも可能である。この<notification-instruction>タグには、ジョブに関する通知情報が記述される。図３の例においては、通知情報として、通知先を設定する<notification-recipient>タグおよび通知条件を設定する<event>タグが記述されている。印刷デバイス２００は、これらのタグに設定された値に基づいてイベント送信処理を行う。
【００３５】
印刷デバイス２００は、端末装置からのCreateJobパケットを受信すると、それに対するCreateJob応答パケットを端末装置へ返信する。CreateJobパケットに対するCreateJob応答パケットデータは、図４に示すように、上記CreateJobパケットデータと同様に、ＸＭＬ形式で記述され、ＨＴＴＰ上のＳＯＡＰを用いて送信される。CreateJob応答パケットには、CreateJobコマンド対する結果コード（<result-code>タグ）や生成されたジョブの識別子（<job-id>タグ）、印刷用ポートのＵＲＩ（<data-sink-uri>タグ）等の情報が含まれている。
【００３６】
ＬＡＮ２１２上の端末装置が印刷デバイス２００を用いて印刷を行う場合における印刷デバイス２００の動作について具体的に説明する。
【００３７】
ＬＡＮ２１２上の端末装置（ホストコンピュータ）から送信された例えば図３に示したようなCreateJobパケットを印刷デバイス２００が受信すると、図５に示すように、印刷デバイス２００は、ステップＳ６０１において、受信したCreateJobパケットのＸＭＬ形式で記述されたデータを解析する。そして、印刷デバイス２００は、ステップＳ６０２において、解析結果にエラーがないか否かを判定する。ここで、エラーがなければ、印刷デバイス２００は、ステップＳ６０３において、印刷データを受信するための印刷ポートを生成する。
【００３８】
次いで、印刷デバイス２００は、ステップＳ６０４において、CreateJobパケットに対するレスポンスとしてのＸＭＬデータの生成を行う。このとき、印刷データ受信用に生成されたポートのＵＲＩが<data-sink-uri>タグの値として設定される。例えば、図４に示すようなＵＲＩがＸＭＬデータに埋め込まれる。そして、印刷デバイス２００は、ステップＳ６０５において、上記ステップＳ６０４で生成されたCreateJobレスポンスデータを、ＳＯＡＰを用いて端末装置へ送信する。端末装置は、CreateJobレスポンスデータを受信した後、ＨＴＴＰのＰＯＳＴメソッドを用いて印刷データを上記レスポンスデータに含まれる<data-sink-uri>タグで指定されたＵＲＩに対して送信する。このＨＴＴＰのＰＯＳＴメソッドによる印刷データ転送パケットは、例えば図６に示すような構成を有する。
【００３９】
次いで、印刷デバイス２００は、ステップＳ６０６において、印刷ポートに到着したデータを受信して適切な処理をしながら、プリンタエンジン２０６により印刷を行う。そして、印刷データの受信が正常に終了すると、印刷デバイス２００は、ステップＳ６０７において、図７に示すようなＨＴＴＰレスポンスパケットを端末装置に送信し、印刷ポートを削除（クローズ）して印刷動作を終了する。
【００４０】
一方、上記ステップＳ６０２においてCreateJobパケットのＸＭＬ形式で記述されたデータにエラーがあると判定された場合、印刷デバイス２００は、ステップＳ６０８において、例えば図８に示すようなエラーレスポンスデータを生成する。そして、印刷デバイス２００は、ステップＳ６０５において、エラーレスポンスを端末装置に送信する。端末装置は、上記エラーレスポンスを受信すると、印刷データを送信せずに、処理を終了する。
【００４１】
本実施の形態においては、印刷デバイス２００が起動公告を送信し、この起動公告によりサービスを開始したことをＬＡＮ２１２上の端末装置に通知する。この起動公告によるサービス開始通知後、サービスを利用する端末装置は、印刷デバイス２００からそのＤＤＦ、ＳＤＦを取得し、印刷デバイス２００が提供するサービスの内容を取得、登録する。そして、端末装置は、登録された印刷デバイス２００のサービス内容に基づいて、図３に示すようなCreateJobパケットにおいて、両面印刷や印刷の仕上げの指定を行う。
【００４２】
印刷デバイス２００の起動時における起動公告の通知、およびＤＤＦ、ＳＤＦについて図９〜図１２を参照しながら説明する。図９は図１の印刷デバイス２００が送信する起動公告パケットデータの一例を示す図、図１０は図１の印刷デバイス２００が送信する終了公告パケットデータの一例を示す図、図１１は印刷デバイスの機器情報が記述されたＤＤＦの一例を示す図、図１２は印刷デバイスのサービス情報が記述されたＳＤＦの一例を示す図である。
【００４３】
印刷デバイス２００からは、起動公告パケットが、ＨＴＴＰマルチキャスト（以下、ＨＴＴＰＭＵという）によって、ＬＡＮ２１２上の端末装置の全てに対して送信される。このデータは、図９に示すように、ＨＴＴＰプロトコルのヘッダ部（ＨＴＴＰのＮｏｔｉｆｙメソッド）に記述され、このデータには、ＨＴＴＰのボディ（Body）部は存在しない。起動公告パケットは、端末装置に対し、印刷デバイス２００の存在とサービスの開始を通知するためのコマンドであり、これには、公告通知の有効期限（Cache-Control: max-age=[有効期限の秒数])や、ＤＤＦを取得するためのロケーション情報としてＤＤＦのＵＲＬ（Location:http://host:port/DDFファイルのPath）、印刷デバイスおよびサービスが起動状態であることを示す情報（NTS: ssdp:alive）などが記述される。起動公告パケットは、印刷デバイス２００のルートデバイス、デバイスＵＵＩＤ、デバイス、サービスなどの起動対象となるそれぞれの対象オブジェクトを通知する。これらの対象オブジェクトは、起動対象情報（NT:起動対象名）に記述され、識別される。図９に示す起動公告パケット例においては、デバイスの起動公告のみが記述されている。
【００４４】
この起動公告パケットデータは、起動公告通知の有効期限更新のために送信される更新公告パケットデータと同じである。
【００４５】
また、印刷デバイス２００からは、終了公告パケットが、ＨＴＴＰＭＵによって、端末装置の全てに対して送信される。このデータは、図１０に示すように、起動および更新公告パケットと同様に、ＨＴＴＰプロトコルのヘッダ部（ＨＴＴＰのＮｏｔｉｆｙメソッド）に記述され、このデータには、ＨＴＴＰのボディ（Body）部は存在しない。終了公告パケットは、端末装置に対し、印刷デバイス２００のサービス終了を通知するためのコマンドであり、このコマンドには、印刷デバイスおよびサービスが終了することを示す情報（NTS: ssdp:byebye）などが記述される。
【００４６】
印刷デバイス２００は、端末装置からＤＤＦの取得要求を受信すると、端末装置に対して、印刷デバイスの機器情報が記述されたＤＤＦを送信する。このＤＤＦデータはＸＭＬ形式で記述され、印刷デバイス内部のＮＶＲＡＭ２０７やＨＤ２１０、ＲＯＭ２０２などに予め記憶されている設定情報や、起動中の印刷デバイス２００に保持されるステイタス情報などのデバイスプロファイル情報に基づいて作成される。ＤＤＦには、図１１に示すように、印刷デバイス２００にアクセスするときに基本となるＵＲＬ情報（<URLBase>タグ）や印刷デバイス２００のデバイスタイプ情報（<deviceType>タグ）など機器に関する情報、印刷デバイス２００のサービスに関する情報（<serviceList>タグ）が記述される。
【００４７】
ＤＤＦにおいては、印刷デバイス２００により提供されるサービス内容が<service>タグで囲まれた領域に記述される。本実施形態においては、印刷デバイス２００が提供するサービスがプリントサービスであり、ＤＤＦの<service>タグ内にプリントサービスを提供することを示す情報（<serviceType>タグ）などが記述される。印刷デバイス２００がスキャンサービスやストレージサービスなどの複数のサービスを提供する場合、それぞれのサービスに関する情報が別途<service>タグで囲まれた領域に記述される。各サービスに関する情報には各サービスのＳＤＦの所在地を示すＵＲＬ情報（<SCPDURL>タグ）が含まれており、端末装置は、上記情報に基づいて印刷デバイス２００が提供するそれぞれのサービスのＳＤＦを取得することができる。また、印刷デバイス２００のロケーションを示す組織情報（</BM:X_organization>タグ）や、サポートする文字情報（<profile-charset>タグ）、言語情報（<profile-language>タグ）などが記述される。
【００４８】
上記ＳＤＦにおいては、印刷デバイス２００のサービス情報が記述されたものであり、このデータはＸＭＬ形式で記述される。本実施の形態のＳＤＦは、図１２に示すように、印刷デバイス２００の提供サービスがプリントサービスであるので、印刷デバイス２００が提供するプリントサービスのＳＤＦとなる。ＳＤＦは印刷デバイス内部のＮＶＲＡＭ２０７やＨＤ２１０、ＲＯＭ２０２などに予め記憶されている設定情報や、起動中の印刷デバイス２００に保持されるステイタス情報などのサービスプロファイル情報に基づいて作成される。ＳＤＦには、印刷デバイス２００が提供するサービスの詳細が<stateVariable>タグで囲われた領域の<name>タグに記されている各項目に記述される。本実施の形態のＳＤＦには、プリントサービスに関する詳細情報項目として、サポートする印刷ドキュメントのフォーマット情報（<name>document-format</name>）、カラープリントの可否と最大発色数（<name>colors</name>）、モノクロプリントの可否と最大諧調数（<name>gray-levels</name>）、フィニッシング機能（<name>finish</name>）、両面印刷機能（<name>side</name>）などの情報が記述される。ここで、図１２に示すＳＤＦの例においては、カラープリントの可否と最大発色数（<name>colors</name>）の項目のみが表されているが、実際には、他の項目も含まれる。このようなＳＤＦによって、端末装置は、所望の印刷機能を有する印刷デバイスを検索し、選択することができ、選択された印刷デバイスを用いて印刷を実行することが可能となる。
【００４９】
次に、印刷デバイス２００の起動時における終了および起動公告とＤＤＦおよびＳＤＦとの送信動作について図１３、図１５および図１６を参照しながら説明する。図１３は図１の印刷デバイス２００の起動時における終了および起動公告とＤＤＦおよびＳＤＦとの送信動作の手順を示すフローチャート、図１５は端末装置から送信されるＤＤＦ要求の一例を示す図、図１６は端末装置から送信されるＳＤＦ要求の一例を示す図である。
【００５０】
印刷デバイス２００に電源が投入されると、図１３に示すように、印刷デバイス２００は、ステップＳ１４０１においてプリントサービスを起動し（または、印刷デバイス２００が起動し）、続くステップＳ１４０２において、ＨＴＴＰＭＵによって、終了公告パケットをＬＡＮ２１２上の端末装置の全てに対して送信する。この終了公告パケットにより、端末装置に対して、印刷デバイス２００の起動前に端末装置に登録されている印刷デバイス２００の起動公告（サービス）の終了が通知されることになる。印刷デバイス２００においては、電源が落とされている間における印刷デバイス２００の状態変化によって、印刷デバイス２００の起動（ステップＳ１４０１）以前に起動していたときの印刷デバイス２００の機器情報および提供サービス内容が、印刷デバイス２００の起動（ステップＳ１４０１）後の機器情報および提供サービス内容と異なる場合がある。この場合でも、上記終了公告通知により、端末装置は、印刷デバイス起動（ステップＳ１４０１）以前のサービスを終了することが可能となり、印刷デバイス２００の更新されたサービス内容（起動後のサービス内容）を取得することが可能になる。
【００５１】
次いで、印刷デバイス２００は、ステップＳ１４０３において、ＨＴＴＰＭＵによって、図９に示すような起動公告パケットをＬＡＮ２１２上の端末装置の全てに対して送信する。この起動公告パケットを受信した端末装置は、印刷デバイス２００に対してＤＤＦ要求がユニキャストで送信される。起動公告パケットには、図９に示すように、印刷デバイス２００のＤＤＦの所在を示すＵＲＬが記述されているので、このＵＲＬ情報に基づいて端末装置は、ＤＤＦ要求を送信する。このＤＤＦ要求は、ＨＴＴＰのＧＥＴメソッドのヘッダ部であり、例えば図１５に示すように構成される。
【００５２】
次いで、印刷デバイス２００は、ステップＳ１４０４において、端末装置から送信されたＤＤＦ要求を受信し、続くステップＳ１４０５において、印刷デバイス内部のＮＶＲＡＭ２０７やＨＤ２１０、ＲＯＭ２０２などに予め記憶されている設定情報や、起動中の印刷デバイス２００に保持されるステイタス情報などのデバイスプロファイル情報を取得する。この取得されたデバイスプロファイル情報は、ＲＡＭ２０３などの内部メモリに保存される。そして、印刷デバイス２００は、ステップＳ１４０６において、上記ステップＳ１４０５で取得されたデバイスプロファイル情報に基づいて図１１に示すようなＤＤＦを生成する。
【００５３】
次いで、印刷デバイス２００は、ステップＳ１４０７において、ＤＤＦ要求のレスポンスとして、上記ステップＳ１４０６で生成されたＤＤＦをＤＤＦ要求の端末装置に返信する。このＤＤＦを取得した端末装置は、ＤＤＦ要求と同様に、ユニキャストで、ＳＤＦ要求を印刷デバイス２００へ送信する。図１１に示すようにＤＤＦには、印刷デバイス２００のＳＤＦの所在地を示すＵＲＬが記述されているので，このＵＲＬ情報に基づいて端末装置は、ＳＤＦ要求を送信する。このＳＤＦ要求は、ＤＤＦ要求と同様に、ＨＴＴＰのＧＥＴメソッドのヘッダ部であり、例えば図１６に示すように構成される。
【００５４】
次いで、印刷デバイス２００は、ステップＳ１４０８において、端末装置から送信されたＳＤＦ要求を受信し、続くステップＳ１４０９において、印刷デバイス内部のＮＶＲＡＭ２０７やＨＤ２１０、ＲＯＭ２０２などに予め記憶されている設定情報や、起動中の印刷デバイス２００に保持されるステイタス情報などのサービスプロファイル情報を取得する。この取得されたサービスプロファイル情報は、ＲＡＭ２０３などの内部メモリに保存される。そして、印刷デバイス２００は、ステップＳ１４１０において、上記ステップＳ１４０９で取得されたサービスプロファイル情報に基づいて図１２に示すようなＳＤＦを生成する。
【００５５】
次いで、印刷デバイス２００は、ステップＳ１４１１において、ＳＤＦ要求のレスポンスとして、上記ステップＳ１４１０で生成されたＳＤＦをＳＤＦ要求の端末装置に返信する。
【００５６】
上記の一連の動作によって、印刷デバイス２００による起動公告、端末装置によるＤＤＦおよびＳＤＦの取得が行われる。
【００５７】
なお、図１３には、１つの端末装置のみが描かれているが、ＬＡＮ２１２上に複数の端末装置が存在する場合には、端末装置毎に上記と同様の動作が行われることになる。また、本実施の形態では、単一のサービスに対するＳＤＦ要求が行われたときの動作を示しているが、印刷デバイス２００が複数のサービスを提供することが可能な場合には、サービス毎にＳＤＦ要求が送信され、そのレスポンスとして要求されたサービス毎のＳＤＦが送信される。
【００５８】
次に、印刷デバイス２００の起動公告通知の有効期限を更新する場合の印刷デバイス２００の動作について図１４を参照しながら説明する。図１４は図１の印刷デバイス２００の起動公告通知の有効期限を更新する場合の印刷デバイス２００の動作の手順を示すフローチャートである。
【００５９】
起動公告通知後、起動公告通知の更新時期が到来すると、図１４に示すように、印刷デバイス２００は、印刷デバイス２００に設定されている起動公告通知（サービス）を更新するために、ステップＳ１５０１において、起動公告通知の更新処理を開始する。ここで、前記更新時期は、印刷デバイス２００の起動公告通知（サービス）の有効期限が切れる直前の時期である。続いて、印刷デバイス２００は、ステップＳ１５０２において、自身のデバイスプロファイル情報を取得する。そして、印刷デバイス２００は、ステップＳ１５０３において、ＲＡＭ２０３などのメモリに保存されている前回のデバイスデバイスプロファイル情報（図１３のステップＳ１４０５において取得されたデバイスプロファイル情報）と今回取得されたデバイスプロファイル情報とを比較してデバイスの状態変化があるか否かを判定する。デバイスの状態変化がある場合、印刷デバイス２００は、デバイスの機器情報が更新されていると判断してステップＳ１５０４において、ＤＤＦを更新し、処理をステップＳ１５０５に進める。
【００６０】
これに対し、上記ステップＳ１５０４において状態変化がないと判定された場合、印刷デバイス２００は、上記ステップＳ１５０４をスキップして処理をステップＳ１５０５に進める。
【００６１】
ステップＳ１５０５において、印刷デバイス２００は、自身のサービスプロファイル情報を取得し、続くステップＳ１５０６において、ＲＡＭ２０３などのメモリに保存されている前回のサービスプロプロファイル情報（図１３のステップＳ１４０９において取得されたサービスプロプロファイル情報）と今回取得されたサービスプロファイル情報とを比較してデバイスの状態変化があるか否かを判定する。ここで、デバイスの状態変化がある場合、印刷デバイス２００は、サービス内容が更新されていると判断してステップＳ１５０７において、ＳＤＦを更新し、処理をステップＳ１５０８に進める。
【００６２】
これに対し、上記ステップＳ１５０６において状態変化がないと判定された場合、印刷デバイス２００は、上記ステップＳ１５０７をスキップして処理をステップＳ１５０８に進める。
【００６３】
ステップＳ１５０８において、印刷デバイス２００は、ＤＤＦおよびＳＤＦが更新されたか否かを判定する。ここで、ＤＤＦおよびＳＤＦが更新されている場合、印刷デバイス２００は、ステップＳ１５０９において、ＨＴＴＰＭＵを用いて、図１０に示すような終了公告パケットをＬＡＮ２１２上の全ての端末装置に送信する。これにより、更新処理を行う以前に送信された起動公告の終了が端末装置に通知されることになる。そして、印刷デバイス２００は、ステップＳ１５１０において、ＨＴＴＰＭＵを用いて、図９に示すような起動公告パケットを送信し、新たな起動公告通知を行う。
【００６４】
これに対し、上記ステップＳ１５０８においてＤＤＦおよびＳＤＦが更新されていない場合、印刷デバイス２００は、上記ステップＳ１５０９をスキップし、ステップＳ１５１０において、更新公告パケットを送信して起動公告の更新を行う。
【００６５】
上記更新公告処理は、印刷デバイス２００が起動して起動公告を通知した後の更新処理の場合を示しているが、上記更新処理を行った後、再び起動公告の有効期限が切れる直前の時期に同様の動作が繰り返されることになる。この更新時期は、これに限定されることはなく、更新処理が有効期限内に何度も行われるように更新時期を設定するようにしてもよい。
【００６６】
本実施の形態では、ネットワーク上のすべての端末装置に対してマルチキャストによって起動公告および終了公告を通知しているが、ネットワーク上の印刷デバイスなどの提供するサービスを登録し、端末装置からのサービス検索要求を受付け、検索条件に合致するサービスを提供している機器の情報を返信するようなサービス検索サービスを提供するサーバ装置が存在する場合、端末装置は、予めそのサーバ装置の情報を登録しておき、指定したサーバ装置とユニキャストによって起動公告および終了公告の通知を行うようにしてもよい。
【００６７】
また、本実施の形態では、印刷デバイスがプリントサービスのみをネットワーク上に提供している場合のみを記述しているが、プリントサービス、スキャンサービス、ストレージサービスなどの複数のサービスを提供可能なサービス提供デバイスにおいて、印刷デバイスにおける上述したと同様の動作を行えば、プリントサービスを含む複数のサービスを提供することができる。
【００６８】
なお、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることはいうまでもない。
【００６９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることはいうまでもない。
【００７０】
【発明の効果】
以上説明したように、本発明によれば、サービス提供装置が提供するサービスの内容が変更された場合において、サービスの内容が登録されている場合にサービス開始通知を受信してもサービスの内容の取得をサービス提供装置に要求しない端末装置に、変更されたサービスの内容を正しく登録させることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係る印刷デバイスのハードウェア構成を示すブロック図である。
【図２】図１の印刷デバイス２００におけるソフトウェア構成を示すブロック図である。
【図３】ＬＡＮ２１２上の端末装置からＨＴＴＰ上のＳＯＡＰを用いて印刷デバイス２００に送信されるCreateJobと称されるパケットデータの一例を示す図である。
【図４】図３のCreateJobパケットに対する応答パケットデータの一例を示す図である。
【図５】端末装置が印刷デバイス２００を用いて印刷を行う場合における印刷デバイス２００の動作手順を示すフローチャートである。
【図６】端末装置からＨＴＴＰのＰＯＳＴメソッドにより送信される印刷データ転送パケットの一例を示す図である。
【図７】図１の印刷デバイス２００から端末装置に送信されるＨＴＴＰレスポンスパケットの一例を示す図である。
【図８】図１の印刷デバイス２００から端末装置に送信されるエラーレスポンスパケットの一例を示す図である。
【図９】図１の印刷デバイス２００が送信する起動公告パケットデータの一例を示す図である。
【図１０】図１の印刷デバイス２００が送信する終了公告パケットデータの一例を示す図である。
【図１１】印刷デバイスの機器情報が記述されたＤＤＦの一例を示す図である。
【図１２】印刷デバイスのサービス情報が記述されたＳＤＦの一例を示す図である。
【図１３】図１の印刷デバイス２００の起動時における終了および起動公告とＤＤＦおよびＳＤＦとの送信動作の手順を示すフローチャートである。
【図１４】図１の印刷デバイス２００の起動公告通知の有効期限を更新する場合の印刷デバイス２００の動作の手順を示すフローチャートである。
【図１５】端末装置から送信されるＤＤＦ要求の一例を示す図である。
【図１６】端末装置から送信されるＳＤＦ要求の一例を示す図である。
【図１７】従来の印刷デバイスにおける起動およびサービス開始の通知タイミングを示す図である。
【符号の説明】
２００  印刷デバイス
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０５  プリンタＩ／Ｆ制御部
２０６  プリンタエンジン
２１１  ネットワークＩ／Ｆ制御部
２１２  ＬＡＮ
３０１  プリンタ制御部
３０２  印刷処理制御部
３０３  ＸＭＬパーサ
３０４  ＳＯＡＰ制御部
３０５  ＨＴＴＰサーバ
３０６  ＴＣＰ／ＩＰ制御部
３０７  ネットワークドライバ
【図１】
0004402370.tif 000002
【図２】
0004402370.tif 000003
【図３】
0004402370.tif 000004
【図４】
0004402370.tif 000005
【図５】
0004402370.tif 000006
【図６】
0004402370.tif 000007
【図７】
0004402370.tif 000008
【図８】
0004402370.tif 000009
【図９】
0004402370.tif 000010
【図１０】
0004402370.tif 000011
【図１１】
0004402370.tif 000012
【図１２】
0004402370.tif 000013
【図１３】
0004402370.tif 000014
【図１４】
0004402370.tif 000015
【図１５】
0004402370.tif 000016
【図１６】
0004402370.tif 000017
【図１７】
0004402370.tif 000018