説明

UPnPイベントに関する情報を効率的に送受信する方法及び装置

【課題】 UPnPイベントに関する情報を効率的に送受信する方法及び装置を提供する。
【解決手段】 サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して一部の状態変化の発生のみを知らせることを要請し、これに対する応答から一部の状態変化の発生に関する情報を受信することで、制御ポイントは、自身に必ず必要な状態変数のみを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はUPnP(ユニバーサル プラグ アンド プレイ)に係り、特に、UPnPイベントに関する情報を効率的に送受信する方法及び装置に関する。
【背景技術】
【0002】
現在、プラグアンドプレイ機能を使用してPC(パーソナル コンピュータ)が周辺装置を自動的に認識可能にしている。これにより、ユーザの立場で周辺装置の設置が非常に容易になった。UPnPは、このような機能をネットワーク全体に拡張させた技術であり、PC、周辺装置、家電製品などのような装置がネットワークに接続された時、互いに自動的に認識可能にする。UPnPは、ネットワーク装置を次のように2つに大別する。あるサービスを提供する装置を被制御デバイス(CD、コントロールド デバイス;デバイスと略称)といい、このようなサービスを利用するためにデバイスを制御する制御ポイント(CP、コントロール ポイント)がある。
【0003】
図1は、UPnPネットワーキングの構成ステップを示す図である。図1を参照するに、UPnPネットワーキングは、アドレス指定(アドレッシング)ステップ(11)、発見(ディスカバリ)ステップ(12)、説明(デスクリプション)ステップ(13)、制御(コントロール)ステップ(14)、イベンティングステップ(15)及びプレゼンテーションステップ(16)で構成される。
【0004】
アドレス指定ステップ(11)では、自動IP方式またはDHCP(ダイナミック ホスト コンフィギュレーション プロトコル)クライアント方式によってUPnPネットワーク装置、すなわち、デバイス及び制御ポイントのIPアドレスを指定する。
【0005】
発見ステップ(12)では、アドレス指定ステップ(11)でデバイス及び制御ポイントがIPアドレスを割り当てられたならば、SSDP(シンプル サービス ディスカバリ プロトコル)によって制御ポイントはネットワーク上に存在するデバイスを発見する。
【0006】
説明ステップ(13)では、発見ステップ(12)で制御ポイントがネットワーク上に存在するデバイスを発見したならば、制御ポイントはこのデバイスがいかなるサービスを提供するかを調べるために、デバイス2についての説明を獲得する。
【0007】
制御ステップ(14)では、説明ステップ(13)で制御ポイントがデバイス2についての説明を獲得したならば、SOAP(シンプル オプジェクト アクセス プロトコル)によって、このデバイス2についての説明を参照してアクションを呼び出すことでデバイス2を制御する。
【0008】
イベンティングステップ(15)では、GENA(ジェネリック イベント ノーティフィケーション アーキテクチャ)によってデバイス4は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるためにイベントメッセージを伝送する。
【0009】
プレゼンテーションモジュール(16)では、制御ポイントがデバイスのプレゼンテーションURL(ユニフォーム リソース ロケータ)に接続してデバイスのプレゼンテーションをユーザに提供し、ユーザは、デバイスのプレゼンテーションURLを通じてデバイスを制御するか、デバイスの状態が分かる。
【0010】
図2は、従来のUPnPイベンティング過程を示す図である。図2を参照するに、従来のUPnPイベンティング過程は、次のようなステップで構成される。
【0011】
まず、制御ポイント1は、デバイス2が提供するサービスの状態変化を調べるために、このサービスの状態変化を知らせるイベントに対する加入を要請するイベント加入要請(イベント サブスクリプション リクエスト)メッセージを伝送する。次いで、デバイス2は、イベント加入要請メッセージを受信すれば、制御ポイント1のイベント加入が成功したことを表すイベント加入応答(イベント サブスクリプション レスポンス)メッセージを伝送する。
【0012】
次いで、デバイス2は、サービスの状態を表す状態変数の現在値を含む最初のイベントメッセージを伝送する。次いで、デバイス2は、サービスの状態変化によってイベントが発生すれば、このイベントに加入した制御ポイントにサービスの状態を表す状態変数の現在値を含むイベントメッセージを伝送する。
【0013】
前記のように、従来にはデバイス2が提供するサービスの状態のうちいずれか一つの状態が変化すれば、デバイス2はサービス単位でイベントを伝送する。これにより、サービスの状態変化を知らせるイベントに加入したあらゆる制御ポイントは、サービスの状態すべてに関する情報、すなわち、あらゆる状態変数の現在値を含むイベントメッセージを受信する。
【0014】
すなわち、制御ポイントは、自身に必要ない状態変数を含むイベントメッセージを受信し、その結果、イベントメッセージまたは特定状態変数をフィルタリングして捨てる。これはネットワークのトラフィックを増大させ、制御ポイントのロードを加重させる要因として作用するという問題点があった。特に、ネットワークの帯域幅が狭いホームネットワーク環境や、ハードウェア性能の低い制御ポイントの場合に、このような問題点はさらに大きくなる。
【特許文献1】韓国特許公開第10−2004−0005464号公報
【特許文献2】韓国特許公開第10−2005−0050317号公報
【特許文献3】米国特許第6,725,281B1明細書
【発明の開示】
【発明が解決しようとする課題】
【0015】
本発明が解決しようとする技術的課題は、UPnPによる装置の特性を考慮してさらに効率的にUPnPイベントに関する情報を送受信可能にする方法及び装置を提供するところにある。また、前記方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供するところにある。
【課題を解決するための手段】
【0016】
前記技術的課題を解決するための本発明によるイベント情報受信方法は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、前記状態変化のうち、一部の状態変化の発生のみを知らせることを要請するステップと、前記要請に対する応答から前記一部の状態変化の発生に関する情報を受信するステップとを含む。
【0017】
前記技術的課題を解決するための本発明によるイベント情報受信装置は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、前記状態変化のうち、一部の状態変化の発生のみを知らせることを要請するステップと、前記要請に対する応答から前記一部の状態変化の発生に関する情報を受信するステップとを含む。
【0018】
前記技術的課題を解決するために、本発明は、前記イベント情報受信方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
【0019】
前記技術的課題を解決するための本発明によるイベント情報伝送方法は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、前記状態変化のうち、一部の状態変化の発生のみを知らせよという要請を検出するステップと、前記検出された要請に対する応答として前記一部の状態変化の発生に関する情報を伝送するステップとを含むことを特徴とする。
【0020】
前記技術的課題を解決するための本発明によるイベント情報伝送装置は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、前記状態変化のうち、一部の状態変化の発生のみを知らせよという要請を検出する検出部と、前記検出部により検出された要請に対する応答として、前記一部の状態変化の発生に関する情報を伝送するイベンティングモジュールとを備える。
【0021】
前記技術的課題を解決するために、本発明は、前記イベント情報伝送方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
【発明の効果】
【0022】
本発明によれば、UPnPデバイスが提供するサービスの状態変化のうち、一部の状態変化の発生に関する情報のみを含むイベントメッセージを伝送できる拡張モードを提案することで、制御ポイントが自身に必ず必要な状態変数のみを含むイベントメッセージを受信する。その結果、従来の必要ない状態変数を含むイベントメッセージを受信し、このようなイベントメッセージまたは特定状態変数をフィルタリングして捨てる過程が除去される。
【0023】
特に、制御ポイントのハードウェア性能が低い場合、従来には、制御ポイントがデバイスに必要ない状態変数を含むイベントメッセージも受信するようになって、これが制御ポイントのロードを加重させる要因として作用した。しかし、本発明によれば、制御ポイントのハードウェア性能によってイベントメッセージの受信回数を調節できる。また、制御ポイントで実行中であるアプリケーションの特性によって、このアプリケーション一部の状態変数のみを要求するか、一部の状態変数の値があまり頻繁に変化する場合がありうる。本発明によれば、制御ポイントで行われるアプリケーションの特性を考慮してさらに効率的に一部の状態変化の発生に関する情報のみを受信することができる。
【0024】
また、本発明によれば、UPnPデバイスが提供するサービスの一部の状態変数の更新を要請する拡張イベント加入更新メッセージを提案することで、イベントに加入した制御ポイントが既に要求した状態変数を動的に追加するか削除できる。また、本発明による拡張イベント加入要請メッセージ、拡張イベント加入更新メッセージはHTTP拡張ヘッダを利用して具現されるために、互換性の問題なしに既存のUPnPイベンティング方式と並行して本発明が適用されうる。結局、本発明によれば、ホームネットワークを通じて伝送されるイベントメッセージの全体数を低減してホームネットワークの帯域幅を節約できる。
【発明を実施するための最良の形態】
【0025】
以下では、図面を参照して本発明の望ましい実施形態を詳細に説明する。
【0026】
UPnPが適用されるネットワークがほとんどホームネットワークであることを考慮する時、UPnPによる装置は非常に多様にならざるをえない。したがって、UPnPによる装置の特性、すなわち、装置で行われるアプリケーションの特性、装置のハードウェア性能などを考慮してデバイスが提供するサービスの状態変化のうち、一部の状態変化の発生に関する情報のみを受信することがさらに効率的である。
【0027】
例えば、制御ポイントがサービスの状態を表す状態変数のうち、一部の状態変数のみを要求するアプリケーションを実行中である場合、制御ポイントは、デバイスから前記一部の状態変数の現在値のみを受信すればよい。また、制御ポイントのハードウェア性能が低い場合、制御ポイントがデバイスから頻繁にイベントメッセージを受信することは、制御ポイントに大きいロードとして作用する。この場合、制御ポイントが、サービスの状態変化が所定レベル以上である場合にのみ、この状態を表す状態変数の現在値を受信するようにすればよい。
【0028】
したがって、本実施形態では、イベントメッセージがデバイスにより一方的に伝送され、サービス単位で伝送される従来の方式を脱皮して、デバイスが制御ポイントの特性を考慮してサービスの状態変化のうち、一部の状態変化の発生に関する情報のみを提供できる拡張モードを提案する。
【0029】
図3は、本発明の望ましい一実施形態による拡張イベント加入要請メッセージ、及び拡張イベント加入応答メッセージのフォーマットを示す図である。図3を参照するに、制御ポイント3は、UPnPイベント加入要請メッセージに本実施形態による拡張ヘッダであるEXSUBREQヘッダが挿入された形態で構成された拡張イベント加入要請メッセージを伝送する。この拡張ヘッダには状態変数のIDが記録され、状態変数の所定レベルを表す値が記録される。
【0030】
制御ポイント3は、このような拡張ヘッダをUPnPイベント加入要請メッセージに挿入することで、サービスの状態変化のうち、一部状態の変化の発生のみを知らせることをデバイス4に要請できる。さらに詳細に説明すれば、制御ポイント3は、一部の状態変数のIDが記録された拡張ヘッダをUPnPイベント加入要請メッセージに挿入することで、一部の状態変数の値が変化された場合にのみ、この一部の状態変数現在値を知らせることを要請できる。また、制御ポイント3は、少なくとも一つ以上の状態変化の所定レベルを表す値が記録された拡張ヘッダをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、この状態変数の現在値を知らせることを要請できる。また、制御ポイント3は、一部の状態変数のID及びこの一部の状態変数の所定レベルを表す値が記録された拡張ヘッダをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値の変化が所定レベル以上である場合にのみ、この一部の状態変化値のみを知らせることを要請できる。
【0031】
例えば、図3に図示された拡張イベント加入要請メッセージの拡張ヘッダのIDフィールドには状態変数のID Var1が記録されており、レベルフィールドには状態変数Var1の所定レベルを表す値Lev1が記録されている。この拡張イベント加入要請メッセージを受信したデバイス4は、サービスの状態を表す状態変数のうち状態変数Var1の値の変化がLev1以上である場合にのみ、デバイス4は状態変数Var1の現在値のみを知らせることを要請できる。もし、Lev1が記録されたレベルフィールドが存在していなければ、これは、状態変数Var1の値が変わる度に知らせることを要請することを意味する。
【0032】
ここで、所定レベルを表す値Lev1は、状態変数の大きさを表す値になることもあり、状態変数の変化回数を表す値になることもある。例えば、Lev1が3ならば、これの状態変数の変化値大きさが3以上である場合にのみ状態変数Var1の現在値のみを知らせることを要請することを意味することもあり、これの状態変数の変化回数が3以上である場合にのみ状態変数Var1の現在値のみを知らせることを要請することを意味することもある。これは、状態変数の特性や、制御ポイント3とデバイス4間の事前の約束によっていずれか一つに特定できる。
【0033】
拡張イベント加入要請メッセージを受信したデバイス4は、UPnPイベント加入応答メッセージに本実施形態による拡張ヘッダであるEXSUBRESヘッダが挿入された形態で構成された拡張イベント加入応答メッセージを伝送する。この拡張ヘッダには、拡張イベント加入要請の処理が可能であるということを表す成功表示、または拡張イベント加入要請の処理が不可能であるということを表す失敗表示が記録される。デバイス4が拡張モードを支援しない場合には、成功表示が記録された拡張ヘッダを含む拡張イベント加入応答メッセージを伝送し、拡張モードを支援する場合には、失敗表示が記録された拡張ヘッダを含む拡張イベント加入応答メッセージを伝送する。さらに、拡張イベント加入応答メッセージの拡張ヘッダに、状態変数ごとの成功または失敗如何を表す値を記録することもできる。
【0034】
以後、デバイス4は、前記過程を経て本実施形態による拡張イベントに加入した制御ポイント3に、デバイス4が提供するサービスの状態変化のうち、一部状態の変化が発生した場合にのみイベントメッセージを伝送する。これにより、制御ポイントが自身に必ず必要な状態変数のみを含むイベントメッセージを受信するようになって、その結果、必要ない状態変数を含むイベントメッセージを受信し、このようなイベントメッセージまたは特定状態変数をフィルタリングして捨てる過程が除去される。
【0035】
図4は、本発明の望ましい一実施形態による拡張イベント加入更新メッセージのフォーマットを示す図である。図4を参照するに、制御ポイント3は、UPnPイベント加入更新メッセージに本実施形態による拡張ヘッダであるADDヘッダ、DELETEヘッダが挿入された形態で構成された拡張イベント加入要請メッセージを伝送する。この拡張ヘッダには、既存の拡張ヘッダに記録されたIDではない新たなIDを追加するか、既存の拡張ヘッダに記録されたIDを削除することを指示する内容が記録される。すなわち、ADDヘッダには追加される新たなIDが記録され、DELETEヘッダには削除される既存のIDが記録される。
【0036】
制御ポイント3は、イベント加入状態を維持するために、イベント加入更新メッセージを周期的に伝送せねばならない。本実施形態によれば、制御ポイント3は、このような拡張ヘッダをUPnPイベント加入更新メッセージに挿入することで、一部の状態変数の更新を要請できる。すなわち、イベント加入更新過程がサービス単位ではない状態変数単位で行われる。
【0037】
例えば、図3に図示された拡張イベント加入更新メッセージのADDヘッダには状態変数のID Var2が記録されており、この状態変数の所定レベルを表す値Lev1が記録されている。また、DELETEヘッダにはVar2が記録されている。これにより、この拡張イベント加入更新メッセージを受信したデバイス4は、状態変数Var1の値が変化された場合にはこれを無視し、状態変数Var2の値の変化がLev2以上である場合にのみ、デバイス4は、状態変数Var2の現在値を含むイベントメッセージを伝送する。
【0038】
図3及び図4に図示された拡張ヘッダがHTTP拡張ヘッダであるために、既存のUPnPイベンティング方式によるデバイスが前記拡張イベント加入要請メッセージ、拡張イベント加入更新メッセージを受信すれば、この拡張ヘッダは無視される。これにより、拡張イベント加入要請メッセージ、拡張イベント加入更新メッセージは、UPnP拡張イベント加入要請メッセージ、UPnP拡張イベント加入更新メッセージとして処理される。すなわち、本実施形態にはいかなる互換性の問題なしに既存のUPnPイベンティング方式と並行して適用できる。
【0039】
図5は、本発明の望ましい一実施形態による制御ポイント3及びデバイス4の構成図である。図5を参照するに、本実施形態による制御ポイント3は、アドレス指定モジュール31、発見モジュール32、説明モジュール33、制御モジュール34、イベンティングモジュール35、プレゼンテーションモジュール36、状態変化選定部351、拡張イベント加入要請部352、拡張イベント加入更新部353、拡張イベント加入応答検出部354及び拡張イベント加入応答処理部355で構成される。
【0040】
アドレス指定モジュール31は、UPnPのアドレス指定ステップを行う。より詳細に説明すれば、アドレス指定モジュール31は、自動IP(Auto IP)方式またはDHCPクライアント方式によって制御ポイント3のIPアドレスを指定する。発見モジュール32、説明モジュール33、制御モジュール34、イベンティングモジュール35、プレゼンテーションモジュール36は、アドレス指定モジュール31により指定されたIPアドレスを使用して制御ポイント3と通信を行う。
【0041】
発見モジュール32は、UPnPの発見ステップを行う。より詳細に説明すれば、発見モジュール32は、SSDPによってデバイス4から伝送された広告(アドバータイズ)メッセージからデバイス4がネットワークに接続したことを認識する。
【0042】
説明モジュール33は、UPnPの説明ステップを行う。より詳細に説明すれば、説明モジュール33は、発見モジュール32でのUPnP発見ステップ実行により認識されたデバイス4から、デバイス4についての説明を獲得する。デバイス4についての説明には、デバイス4の製品情報、製造社情報、デバイス4が提供するサービスの目録、デバイス4のプレゼンテーションURLなどが含まれている。
【0043】
制御モジュール34は、UPnPの制御ステップを行う。より詳細に説明すれば、制御モジュール44は、SOAPによって説明モジュール43でのUPnP説明ステップ実行により獲得されたデバイス4についての説明を参照してアクションを呼び出すことでデバイス4を制御する。
【0044】
イベンティングモジュール35は、UPnPのイベントステップを行う。より詳細に説明すれば、イベンティングモジュール35は、GENAによって説明モジュール43でのUPnP説明ステップ実行により獲得されたデバイス4についての説明、特にデバイス4が提供するサービスの目録を参照してデバイス4が提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対するUPnPイベント加入要請メッセージを生成して伝送し、これに対する応答に該当するUPnPイベント加入応答メッセージを受信する。このようなUPnPイベント加入過程以後、これに対する応答に該当するイベントメッセージを受信する。イベントメッセージは、デバイス4が提供するサービスの状態に関する情報を含んでいる。また、イベンティングモジュール35は、このようなイベントメッセージを継続的に受信するためには、デバイス4にイベント加入更新メッセージを周期的に伝送せねばならない。
【0045】
プレゼンテーションモジュール36は、UPnPのプレゼンテーションステップを行う。より詳細に説明すれば、プレゼンテーションモジュール36は、説明モジュール43でのUPnP説明ステップ実行により獲得されたデバイス4についての説明、特にデバイス4のプレゼンテーションURLに接続してデバイス4のプレゼンテーションを受信し、これをユーザに提供する。ユーザは、デバイス4のプレゼンテーションURLを通じてデバイス4を制御するか、デバイス4の状態が分かる。
【0046】
状態変化選定部351は、デバイス4が提供するサービスの状態変化のうち、一部の状態変化を選定する。より詳細に説明すれば、状態変化選定部351は、プレゼンテーションモジュール36により提供されたデバイス4のプレゼンテーションを認知したユーザの指示により、そうでなければ、制御ポイント3が、デバイス4が提供するサービスの状態のうち、いかなる状態を必要とするかを決定する所定アルゴリズムによって、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数を選定する。
【0047】
また、状態変化選定部351は、プレゼンテーションモジュール36により提供されたデバイス4のプレゼンテーションを認知したユーザの指示に応じて、そうでなければ、制御ポイント3が、デバイス4が提供するサービスの状態のうち、いかなる状態を必要とするかを決定する所定アルゴリズムによって、このサービスの状態変化のうち、少なくとも一つ以上の状態変化の所定レベルを選定する。
【0048】
前記2つの選定方式を組み合わせて、次のような方式で一部状態が選定されうる。すなわち、状態変化選定部351は、プレゼンテーションモジュール36により提供されたデバイス4のプレゼンテーションを認知したユーザの指示に応じて、そうでなければ、制御ポイント3が、デバイス4が提供するサービスの状態のうち、いかなる状態を必要とするかを決定する所定アルゴリズムによって、サービスの状態を表す状態変数のうち、一部の状態変数を選定し、この一部の状態変数の所定レベルを選定する。
【0049】
また、状態変化選定部351は、デバイス4に対する拡張イベント加入更新のために、デバイス4が提供するサービスの状態変化のうち、一部の状態変化を再び選定することもある。
【0050】
拡張イベント加入要請部352は、デバイス4が提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、状態変化のうち、一部の状態変化の発生のみを知らせることを要請する。より詳細に説明すれば、拡張イベント加入要請部352は、状態変化選定部351により選定された一部の状態変数のIDが記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、状態変数選定部351により選定された一部の状態変数の値が変化された場合にのみ、この一部の状態変数現在値を知らせることを要請する。
【0051】
また、拡張イベント加入要請部352は、状態変化選定部351により選定された少なくとも一つ以上の状態変化の所定レベルを表す値が記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、この状態変数の現在値を知らせることを要請する。
【0052】
また、拡張イベント加入要請部352は、状態変化選定部351により選定された一部の状態変数のID及びこの一部の状態変数の所定レベルを表す値が記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値の変化が所定レベル以上である場合にのみ、この一部の状態変化値のみを知らせることを要請する。
【0053】
拡張イベント加入更新部353は、状態変化選定部351での選定結果に基づいて、UPnPイベント加入更新(イベント サブスクリプション リニューアル)メッセージに、既存の拡張ヘッダに記録されたIDではない新たなIDを追加するか、既存の拡張ヘッダに記録されたIDを削除することを指示する拡張ヘッダを生成して挿入することで、一部の状態変数の更新を要請する。また、拡張イベント加入更新部353は、状態変化選定部351での選定結果に基づいて、UPnPイベント加入更新メッセージに既存の拡張ヘッダに記録された所定レベルを表す値を変更することを指示する拡張ヘッダを生成して挿入することで、所定レベルの変更を要請する。また、拡張イベント加入更新部353は、状態変化選定部351での選定結果に基づいて、一部の状態変数の更新及び所定レベルの変更を同時に要請してもよい。ここで、既存の拡張ヘッダは、拡張イベント加入要請メッセージの拡張ヘッダ、または既にデバイス4に伝送された拡張イベント加入更新メッセージの拡張ヘッダをいう。
【0054】
拡張イベント加入応答検出部354は、デバイス4から拡張イベント加入要請部351での要請の処理が不可能であるということを表すか、要請の処理が可能であるということを表す拡張イベント加入応答を検出する。より詳細に説明すれば、拡張イベント加入応答検出部354は、イベンティングモジュール354に受信されたイベント加入応答メッセージをパージングし、その結果、拡張イベント加入応答メッセージであることを確認することで拡張イベント加入応答を検出する。
【0055】
特に、拡張イベント加入応答検出部354は、拡張イベント加入応答メッセージの拡張ヘッダから,拡張イベント加入要請部351での要請の処理が不可能であるということを表す失敗表示が記録された拡張ヘッダを検出することで、デバイス4が本実施形態によってサービスの状態変化のうち、一部の状態変化の発生に関する情報を受信する拡張モードを支援しないと判断する。また、拡張イベント加入応答検出部354は、拡張イベント加入応答メッセージの拡張ヘッダから、拡張イベント加入要請部351での要請の処理が可能であるということを表す成功表示が記録された拡張ヘッダを検出することで、デバイス4が拡張モードを支援すると判断する。
【0056】
拡張イベント加入応答処理部355は、拡張イベント加入応答検出部354によりデバイス4が拡張モードを支援しないと判断された場合には、デバイス4に対するイベントモードを、既存UPnPによってサービスの状態変化すべてに関する情報を受信する基本モードと設定する。また、拡張イベント加入応答処理部355は、拡張イベント加入応答検出部354によりデバイス4が拡張モードを支援すると判断された場合には、デバイス4に対するイベントモードを拡張モードと設定する。
【0057】
イベンティングモジュール35は、拡張イベント加入要請部352により挿入された拡張ヘッダを含む拡張イベント加入要請メッセージを伝送し、これに対する応答に該当する拡張イベント加入応答メッセージを受信する。また、イベンティングモジュール35は、拡張イベント加入更新部353により挿入された拡張ヘッダを含む拡張イベント加入更新メッセージを伝送し、これに対する応答に該当するUPnPイベント加入応答メッセージを受信する。
【0058】
また、イベンティングモジュール35は、拡張イベント加入応答処理部355によりデバイス4に対するイベントモードが基本モードと設定されている場合には、既存UPnPによってサービスの状態変化すべてに関する情報を含むイベントメッセージを受信する。また、イベンティングモジュール35は、拡張イベント加入応答処理部355によりデバイス4に対するイベントモードが拡張モードと設定されている場合には、本実施形態によって一部の状態変化の発生に関する情報を含むイベントメッセージを受信する。
【0059】
図5を参照するに、本実施形態によるデバイス4は、アドレス指定モジュール41、発見モジュール42、説明モジュール43、制御モジュール44、イベンティングモジュール45、プレゼンテーションモジュール46、拡張イベント加入要請検出部451、拡張イベント加入更新検出部452、拡張イベント加入応答部453及び状態変数抽出部454で構成される。
【0060】
アドレス指定モジュール41は、UPnPのアドレス指定ステップを行う。より詳細に説明すれば、アドレス指定モジュール31は、自動IP方式またはDHCPクライアント方式によって制御ポイント3のIPアドレスを指定する。発見モジュール42、説明モジュール43、制御モジュール44、イベンティングモジュール45、プレゼンテーションモジュール46は、アドレス指定モジュール41により指定されたIPアドレスを使用して制御ポイント3と通信する。
【0061】
発見モジュール42はUPnPの発見ステップを行う。より詳細に説明すれば、発見モジュール42は、SSDPによってデバイス4が位置したネットワーク上に存在する制御ポイント3に、デバイス4がネットワークに接続したことを知らせる広告メッセージを伝送する。
【0062】
説明モジュール43はUPnP説明ステップを行う。より詳細に説明すれば、説明モジュール43は、デバイス4についての説明を、発見モジュール42でのUPnP発見ステップ実行によりデバイス4を発見した制御ポイント6に提供する。
【0063】
制御モジュール44は、UPnP制御ステップを行う。より詳細に説明すれば、制御モジュール54は、SOAPによって説明モジュール43でのUPnP説明ステップの実行によりデバイス4についての説明を獲得した制御ポイント6からアクション呼び出しを受信し、このアクション呼び出しに該当するアクションを行う。
【0064】
イベンティングモジュール45は、UPnPイベンティングステップを行う。より詳細に説明すれば、イベンティングモジュール45は、GENAによって説明モジュール43でのUPnP説明ステップの実行によりデバイス4についての説明、特にデバイス4が提供するサービスの目録を獲得した制御ポイント44からUPnPイベント加入要請メッセージを受信し、これに対する応答として、UPnPイベント加入応答メッセージを生成して伝送する。このようなUPnPイベント加入過程以後、イベンティングモジュール45は、デバイス4が提供するサービスの状態に関する情報を含むイベントメッセージを伝送する。イベントメッセージのうち、最初のイベントメッセージを最初(initial)のイベントメッセージという。
【0065】
また、イベンティングモジュール45は、UPnPイベント加入更新メッセージを周期的に伝送した制御ポイントに対してのみイベントメッセージを伝送する。すなわち、イベンティングモジュール45は、UPnPイベント加入更新メッセージを受信すれば、イベント加入更新時間を初期化する。また、イベンティングモジュール45は、UPnPイベント加入更新メッセージを受信していない状態で、もしイベント加入更新時間が臨界値を超過すれば、このUPnPイベント加入更新メッセージに対する伝送義務がある制御ポイントには、イベントメッセージを伝送しない。また、イベンティングモジュール45は、UPnPイベント加入更新メッセージを受信すれば、これに対する応答メッセージを伝送する。
【0066】
このようなイベントメッセージを継続的に受信するためには、デバイス4にイベント加入更新メッセージを周期的に伝送せねばならない。
【0067】
特に、本実施形態によれば、イベンティングモジュール45は、制御ポイント3から拡張イベント加入要請メッセージを受信する。また、イベンティングモジュール35は、制御ポイント3から拡張イベント加入更新メッセージを受信する。
【0068】
プレゼンテーションモジュール46は、UPnPのプレゼンテーションステップを行う。より詳細に説明すれば、プレゼンテーションモジュール46は、説明モジュール43でのUPnP説明ステップ実行により、デバイス4についての説明、特にデバイス4のプレゼンテーションURLを獲得した制御ポイント44によるプレゼンテーションURL接続によってデバイス4のプレゼンテーションを伝送する。
【0069】
拡張イベント加入要請検出部451は、デバイス4が提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、サービスの状態変化のうち、一部の状態変化の発生のみを知らせよという拡張イベント加入要請を検出する。より詳細に説明すれば、拡張イベント加入要請検出部451は、イベンティングモジュール45に受信されたイベント加入要請メッセージをパージングし、その結果、拡張イベント加入要請メッセージであることを確認することで、サービスの状態変化のうち、一部の状態変化の発生のみを知らせよという拡張イベント加入要請を検出する。
【0070】
特に、拡張イベント加入要請検出部451は、拡張イベント加入要請メッセージの拡張ヘッダから一部の状態変数のIDを検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合にのみ、この一部の状態変数の現在値を知らせよという拡張イベント加入要請を検出する。また、拡張イベント加入要請検出部451は、拡張イベント加入要請メッセージの拡張ヘッダから少なくとも一つ以上が状態変化の所定レベルを表す値を検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、この状態変数の現在値を知らせよという拡張イベント加入要請を検出する。また、拡張イベント加入要請検出部451は、拡張イベント加入要請メッセージの拡張ヘッダから一部の状態変数のID及びこの一部の状態変数の所定レベルを表す値を検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値の変化が所定レベル以上である場合にのみ、この一部の状態変化値のみを知らせよという拡張イベント加入要請を検出する。
【0071】
拡張イベント加入更新検出部452は、イベンティングモジュール45に受信されたイベント加入要請メッセージをパージングし、その結果、拡張イベント加入更新メッセージであることを確認した場合には、この拡張イベント加入更新メッセージの拡張ヘッダから、既存の拡張ヘッダに記録されたIDではない新たなIDが追加されたことを確認するか、既存の拡張ヘッダに記録されたIDが削除されたことを確認することで一部の状態変数の更新に対する要請を検出する。また、拡張イベント加入更新検出部452は、拡張イベント加入更新メッセージの拡張ヘッダから、既存の拡張ヘッダに記録された所定レベルを表す値の変更を確認することで、所定レベルの更新に対する要請を検出する。
【0072】
拡張イベント加入応答部453は、デバイス4がサービスの状態変化のうち、一部の状態変化の発生に関する情報を伝送する拡張モードを支援しない基本モードである場合には、拡張イベント加入要請検出部451により検出された要請の処理が不可能であるということを表す失敗表示が記録された拡張ヘッダを生成し、これをUPnPイベント加入応答メッセージに挿入する。また、拡張イベント加入応答部453は、このような拡張モードを支援する場合には、拡張イベント加入要請検出部451により検出された要請の処理が可能であるということを表す成功表示が記録された拡張ヘッダを生成し、これをUPnPイベント加入応答メッセージに挿入する。
【0073】
状態抽出部454は、拡張イベント加入要請検出部451または拡張イベント加入更新検出部452により検出された要請を参照して、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生した場合に、この状態変化の発生を知らせよと要請した制御ポイントに関する情報を更新し、このように更新された情報に基づいて、制御ポイントに伝送する一部の状態変化の発生に関する情報を抽出する。
【0074】
より詳細に説明すれば、状態抽出部454は、拡張イベント加入要請検出部451により検出されたIDに該当する状態変数の現在値を抽出する。また、状態抽出部454は、拡張イベント加入要請検出部451により検出された所定レベル以上値が変化された状態変数の現在値を抽出する。また、状態抽出部454は、拡張イベント加入要請検出部451により検出されたIDに該当する状態変数のうち拡張イベント加入要請検出部451により検出された所定レベル以上値が変化された状態変数の現在値を抽出する。
【0075】
また、状態抽出部454は、拡張イベント加入更新検出部452により検出された一部の状態変数更新要請によって一部の状態変数を更新し、これにより、更新された一部の状態変数の現在値を抽出する。また、状態抽出部454は、拡張イベント加入更新検出部452により検出された所定レベル更新要請によって所定レベルを更新し、これにより更新された所定レベル以上値が変化された状態変数の現在値を抽出する。
【0076】
図6は、本発明の望ましい一実施形態による状態抽出部454の具体的な構造を示す図である。図6を参照するに、本実施形態による状態抽出部454は、基本モードCPポインタ61、拡張モードCPポインタ62、63及び加入CP情報目録64で構成される。
【0077】
基本モードCPポインタ61及び拡張モードCPポインタ62、63は、デバイス、サービス及び状態変数で構成された階層構造を基盤とする。最上位階層に該当する一つのデバイスは、次の階層に該当するN個のサービスと連結されている。N個のサービスそれぞれは最下位階層に該当するN個の状態変数と連結されている。
【0078】
加入CP情報目録64は、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに加入した制御ポイントに関する情報の目録である。ここで、制御ポイント情報とは、制御ポイントのIDと、制御ポイントにより指定された状態変数の所定レベルを表す値をいう。基本モードCPポインタ61及び拡張モードCPポインタ62、63は、加入CP情報目録64上の制御ポイント情報を示す。
【0079】
基本モードCPポインタ61は、サービス単位で存在する。基本モードCPポインタ61は、これと連結されたサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに加入した制御ポイントのうち拡張モードを支援しない制御ポイント情報を示す。一方、拡張モードCPポインタ62、63は、状態変数単位で存在する。拡張モードCPポインタ62、63は、これと連結されたサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに加入した制御ポイントのうち、これと連結された状態変数の値が変化された場合にのみ、この状態変数の現在値を知らせる拡張イベントに加入した制御ポイント情報を示す。
【0080】
状態抽出部454は、イベンティングモジュール45により受信されたイベント加入要請メッセージを参照して、基本モードCPポインタ61のポインタリンクを追加する。また、状態抽出部454は、拡張イベント加入要請検出部451により検出された要請を参照して、拡張モードCPポインタ62、63のポインタリンクを追加する。また、状態抽出部454は、拡張イベント加入更新検出部452により検出された要請を参照して、拡張モードCPポインタ62、63のポインタリンクを追加または削除する。
【0081】
また、状態抽出部454は、このように更新された基本モードCPポインタ61または拡張モードCPポインタ62、63のポインタリンクに基づいて、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生した場合に、この状態変化の発生を知らせよと要請した制御ポイントを決定する。すなわち、基本モードCPポインタ61により示される制御ポイント情報に含まれたIDを持つ制御ポイントは、基本モードCPポインタ61と連結されたサービスの状態変数すべてを知らせよと要請した制御ポイントであり、拡張モードCPポインタ62、63により示される制御ポイント情報に含まれたIDを持つ制御ポイントは、拡張モードCPポインタ62、63と連結された状態変数のみを知らせよと要請した制御ポイントである。
【0082】
また、状態抽出部454は、基本モードCPポインタ61により示される制御ポイントに伝送する情報として、基本モードCPポインタ61と連結されたサービスの状態を表す状態変数すべての現在値を抽出する。また、状態抽出部454は、拡張モードCPポインタ62、63により示される制御ポイントに伝送する情報として、拡張モードCPポインタ62、63と連結された状態変数の現在値を抽出する。特に、状態抽出部454は、拡張モードCPポインタ62、63により示される制御ポイント情報が状態変数の所定レベルを表す値を含んでいる場合には、拡張モードCPポインタ62、63と連結された状態変数の値が所定レベル以上変化された場合にのみ、この状態変数の現在値を抽出する。
【0083】
このように、状態抽出部454は、いくつかのポインタのみを使用して具現され、デバイスが基本モードを支援するかまたは拡張モードを支援するかによって単にポインタのポインティング位置のみ変更すればよいために、既存UPnPに比べてデバイスのシステム構造があまり複雑にならず、デバイスに要求される付加的なリソース量も大きくない。
【0084】
特に、本実施形態によれば、イベンティングモジュール45は、デバイス4に対するイベントモードがサービスの状態変化のうち、一部の状態変化の発生に関する情報を伝送する拡張モードを支援しない基本モードに設定されている場合には、既存UPnPによってサービスの状態変化すべてに関する情報を含むイベントメッセージを伝送する。また、イベンティングモジュール45は、このような拡張モードを支援する場合には、本実施形態によって拡張イベント加入要請検出部451または拡張イベント加入更新検出部452により検出された要請に対する応答として、状態抽出部454により抽出された一部の状態変化の発生に関する情報を含むイベントメッセージを伝送する。
【0085】
より詳細に説明すれば、イベンティングモジュール45は、拡張イベント加入要請メッセージを受信し、これに対する応答として、拡張イベント加入応答部453により挿入された拡張ヘッダを含む拡張イベント加入応答メッセージを伝送する。また、イベンティングモジュール45は、サービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合に、この一部の状態変数の現在値を含むイベントメッセージを伝送する。また、イベンティングモジュール45は、サービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合に、この状態変数の現在値を含むイベントメッセージを伝送する。また、イベンティングモジュール45は、サービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合であり、この一部の状態変数のうち、少なくとも一つ以上の一部の状態変数の値の変化が所定レベル以上である場合に、この一部の状態変数の現在値を含むイベントメッセージを伝送する。
【0086】
また、イベンティングモジュール45は、拡張イベント加入更新メッセージを受信し、これに対する応答として、一部の状態変数が更新された場合に一部の状態変数更新によって更新された一部の状態変数の現在値を含むイベントメッセージを伝送する。また、イベンティングモジュール45は、所定レベル更新によって更新された所定レベル以上の値の変化を持つ状態変数の現在値を含むイベントメッセージを伝送する。
【0087】
図7は、本発明の望ましい一実施形態による拡張イベント加入要請方法のフローチャートである。図7を参照するに、本実施形態による拡張イベント加入要請方法は、次のようなステップで構成される。本実施形態による拡張イベント加入要請方法は、図5に図示された制御ポイント3で時系列的に処理されるステップで構成される。したがって、以下で省略された内容であっても、図5に図示された制御ポイント3に関して以上で記述された内容は、本実施形態による拡張イベント加入要請処理方法にも適用される。
【0088】
71ステップで制御ポイント3は、デバイス4が提供するサービスの状態変化のうち、一部の状態変化を選定する。より詳細に説明すれば、71ステップで制御ポイント3は、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数を選定するか、少なくとも一つ以上の状態変化の所定レベルを選定する。また、71ステップで制御ポイント3は、前記2つの選定方式を結合してサービスの状態を表す状態変数のうち、一部の状態変数を選定し、この一部の状態変数の所定レベルを選定することもできる。
【0089】
72ステップで制御ポイント3は、UPnPイベント加入要請メッセージを生成する。
【0090】
73ステップで制御ポイント3は、本実施形態による拡張ヘッダを生成し、これを72ステップで生成されたUPnPイベント加入要請メッセージに挿入することで、71ステップで選定された一部状態の変化の発生のみを知らせることを要請する。
【0091】
より詳細に説明すれば、73ステップで制御ポイント3は、71ステップで選定された一部の状態変数のIDが記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、一部の状態変数の値が変化された場合にのみ、この一部の状態変数現在値を知らせることを要請する。また、73ステップで制御ポイント3は、71ステップで選定された少なくとも一つ以上の状態変化の所定レベルを表す値が記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、この状態変数の現在値を知らせることを要請する。また、73ステップで制御ポイント3は、71ステップで選定された一部の状態変数のIDと、この一部の状態変数の所定レベルを表す値とが記録された拡張ヘッダを生成し、これをUPnPイベント加入要請メッセージに挿入することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値の変化が所定レベル以上である場合にのみ、この一部の状態変化値のみを知らせることを要請する。
【0092】
74ステップで制御ポイント3は、73ステップで挿入された拡張ヘッダを含む拡張イベント加入要請メッセージを伝送する。
【0093】
75ステップで制御ポイント3は、74ステップで伝送された拡張イベント加入要請メッセージに対する応答に該当する拡張イベント加入応答メッセージを受信する。
【0094】
76ステップで制御ポイント3は、75ステップで受信された拡張イベント加入応答メッセージの拡張ヘッダから、75ステップでの拡張イベント加入要請の処理が不可能であるということを表す失敗表示が記録された拡張ヘッダを検出することで、デバイス4が拡張モードを支援していないと判断し、77ステップに進む。また、76ステップで制御ポイント3は、75ステップで受信された拡張イベント加入応答メッセージの拡張ヘッダから、72ステップでの拡張イベント加入要請の処理が可能であることを表す成功表示が記録された拡張ヘッダを検出することで、デバイス4が拡張モードを支援すると判断して78ステップに進む。
【0095】
77ステップで制御ポイント3は、デバイス4に対するイベントモードを、既存UPnPによってサービスの状態変化すべてに関する情報を受信する基本モードに設定する。
【0096】
78ステップで制御ポイント3は、デバイス4に対するイベントモードを、本実施形態によってサービスの状態変化のうち、一部の状態変化の発生に関する情報を受信する拡張モードに設定する。
【0097】
図8は、本発明の望ましい一実施形態による拡張イベント加入要請処理方法のフローチャートである。図8を参照するに、本実施形態による拡張イベント加入要請処理方法は、次のようなステップで構成される。本実施形態による拡張イベント加入要請処理方法は、図5に図示されたデバイス4で時系列的に処理されるステップで構成される。したがって、以下で省略された内容であっても、図5に図示されたデバイス4に関して以上で記述された内容は、本実施形態による拡張イベント加入要請処理過程にも適用される。
【0098】
81ステップでデバイス4は、イベント加入要請メッセージを受信する。
【0099】
82ステップでデバイス4は、81ステップで受信されたイベント加入要請メッセージをパージングし、その結果、拡張イベント加入要請メッセージであることを確認した場合には83ステップに進み、UPnPイベント加入要請メッセージであることを確認した場合には810ステップに進む。
【0100】
83ステップでデバイス4は、82ステップで確認された拡張イベント加入要請メッセージの拡張ヘッダから、デバイス4が提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、サービスの状態変化のうち、一部の状態変化の発生のみを知らせよという拡張イベント加入要請を検出する。
【0101】
より詳細に説明すれば、83ステップでデバイス4は、82ステップで受信された拡張イベント加入要請メッセージの拡張ヘッダから、一部の状態変数のIDを検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合にのみ、この一部の状態変数の現在値を知らせよという拡張イベント加入要請を検出する。また、83ステップでデバイス4は、82ステップで受信された拡張イベント加入要請メッセージの拡張ヘッダから、少なくとも一つ以上が状態変化の所定レベルを表す値を検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、この状態変数の現在値を知らせよという拡張イベント加入要請を検出する。また、83ステップでデバイス4は、82ステップで受信された拡張イベント加入要請メッセージの拡張ヘッダから、一部の状態変数のID及びこの一部の状態変数の所定レベルを表す値を検出することで、デバイス4が提供するサービスの状態を表す状態変数のうち、一部の状態変数の値の変化が所定レベル以上である場合にのみ、この一部の状態変化値のみを知らせよという拡張イベント加入要請を検出する。
【0102】
84ステップでデバイス4は、83ステップで検出された拡張イベント加入要請を参照して、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生した場合に、この状態変化の発生を知らせよと要請した制御ポイントに関する情報を更新する。
【0103】
85ステップでデバイス4は、84ステップで更新された情報に基づいて制御ポイントに伝送する一部の状態変化の発生に関する情報を抽出する。より詳細に説明すれば、85ステップでデバイス4は、83ステップで検出されたIDに該当する状態変数の現在値を抽出する。また、85ステップでデバイス4は、83ステップで検出された所定レベル以上値が変化された状態変数の現在値を抽出する。また、85ステップでデバイス4は、83ステップで検出されたIDに該当する状態変数のうち、83ステップで検出された所定レベル以上の値が変化された状態変数の現在値を抽出する。
【0104】
86ステップでデバイス4は、UPnPイベント加入応答メッセージを生成する。
【0105】
87ステップでデバイス4は、サービスの状態変化のうち、一部の状態変化の発生に関する情報を伝送する拡張モードを支援することを表す成功表示が記録された拡張ヘッダを生成し、これを86ステップで生成されたUPnPイベント加入応答メッセージに挿入する。
【0106】
88ステップでデバイス4は、87ステップで挿入された拡張ヘッダを含む拡張イベント加入応答メッセージを伝送する。
【0107】
89ステップでデバイス4は、85ステップで抽出された一部の状態変化の発生に関する情報を含む最初のイベントメッセージを、この一部の状態変化の発生を知らせよと要請した制御ポイントに伝送する。
【0108】
810ステップでデバイス4は、83ステップで検出された拡張イベント加入要請を参照して、サービスの状態変化すべての発生を知らせよと要請した制御ポイント、すなわち、基本モードを支援する制御ポイントに関する情報を更新する。
【0109】
811ステップでデバイス4は、810ステップで更新された情報に基づいて、制御ポイントに伝送する状態変化すべての発生に関する情報を抽出する。
【0110】
812ステップでデバイス4は、UPnPイベント加入応答メッセージを生成する。
【0111】
813ステップでデバイス4は、サービスの状態変化のうち、一部の状態変化の発生に関する情報を伝送する拡張モードを支援しないことを表す失敗表示が記録された拡張ヘッダを生成し、これを、812ステップで生成されたUPnPイベント加入応答メッセージに挿入する。
【0112】
814ステップでデバイス4は、813ステップで挿入された拡張ヘッダを含む拡張イベント加入応答メッセージを伝送する。
【0113】
815ステップでデバイス4は、811ステップで抽出された状態変化すべての発生に関する情報を含む最初のイベントメッセージを、基本モードを支援する制御ポイントに伝送する。
【0114】
図9は、本発明の望ましい一実施形態による制御ポイント3での拡張イベント加入更新方法のフローチャートである。図9を参照するに、本実施形態による制御ポイント3での拡張イベント加入更新方法は、次のようなステップで構成される。本実施形態による制御ポイント3での拡張イベント加入更新方法は、図5に図示された制御ポイント3で時系列的に処理されるステップで構成される。したがって、以下で省略された内容であっても、図5に図示された制御ポイント3に関して以上で記述された内容は、本実施形態による制御ポイント3での拡張イベント加入更新方法にも適用される。
【0115】
91ステップで制御ポイント3は、デバイス4に対する拡張イベント加入更新のために、デバイス4が提供するサービスの状態変化のうち、一部の状態変化を再び選定する。
【0116】
92ステップで制御ポイント3は、UPnPイベント加入更新メッセージを生成する。
【0117】
93ステップで制御ポイント3は、91ステップでの選定結果に基づいて、92ステップで生成されたUPnPイベント加入更新メッセージに、既存の拡張ヘッダに記録されたIDではない新たなIDを追加するか、既存の拡張ヘッダに記録されたIDを削除することを指示する拡張ヘッダを生成して挿入することで、一部の状態変数の更新を要請する。また、93ステップで制御ポイント3は、91ステップでの選定結果に基づいて92ステップで生成されたUPnPイベント加入更新メッセージに、既存の拡張ヘッダに記録された所定レベルを表す値を変更することを指示する拡張ヘッダを生成して挿入することで、所定レベルの変更を要請する。また、93ステップで制御ポイント3は、91ステップでの選定結果に基づいて、一部の状態変数の更新及び所定レベルの変更を同時に要請することもできる。
【0118】
94ステップで制御ポイント3は、93ステップで挿入された拡張ヘッダを含む拡張イベント加入更新メッセージを伝送する。
【0119】
図10は、本発明の望ましい一実施形態によるデバイス4での拡張イベント加入更新方法のフローチャートである。図10を参照するに、本実施形態によるデバイス4での拡張イベント加入更新方法は次のようなステップで構成される。本実施形態によるデバイス4での拡張イベント加入更新方法は、図5に図示されたデバイス4で時系列的に処理されるステップで構成される。したがって、以下で省略された内容であっても、図5に図示されたデバイス4に関して以上で記述された内容は、本実施形態によるデバイス4での拡張イベント加入更新方法にも適用される。
【0120】
101ステップでデバイス4は、イベント加入更新メッセージを受信する。
【0121】
102ステップでデバイス4は、101ステップで受信されたイベント加入要請メッセージをパージングし、その結果、拡張イベント加入更新メッセージであることを確認した場合には103ステップに進み、UPnPイベント加入更新メッセージであることを確認した場合には105ステップに進む。
【0122】
103ステップでデバイス4は、102ステップで確認された拡張イベント加入更新メッセージの拡張ヘッダから、既存の拡張ヘッダに記録されたIDではない新たなIDが追加されたことを確認するか、既存の拡張ヘッダに記録されたIDが削除されたことを確認することで、一部の状態変数の更新に対する要請を検出する。また、103ステップでデバイス4は、102ステップで確認された拡張イベント加入更新メッセージの拡張ヘッダから、既存の拡張ヘッダに記録された所定レベルを表す値の変更を確認することで、所定レベルの更新に対する要請を検出する。
【0123】
104ステップでデバイス4は、103ステップで検出された一部の状態変数更新要請によって一部の状態変数を更新する。また、104ステップでデバイス4は、103ステップで検出された所定レベル更新要請によって所定レベルを更新する。
【0124】
105ステップでデバイス4は、104ステップでの更新が完了すれば、イベント加入更新時間を初期化する。
【0125】
106ステップでデバイス4は、105ステップでの初期化が完了すれば、UPnPイベント加入更新メッセージに対する応答メッセージを伝送する。
【0126】
図11は、本発明の望ましい一実施形態によるイベントメッセージ受信方法のフローチャートである。図11を参照するに、本実施形態によるイベントメッセージ受信方法は、次のようなステップで構成される。本実施形態によるイベントメッセージ受信方法は、図5に図示された制御ポイント3で、時系列的に処理されるステップでなる。したがって、以下で省略された内容であっても、図5に図示された制御ポイント3に関して以上で記述された内容は、本実施形態によるイベントメッセージ受信方法にも適用される。
【0127】
111ステップで制御ポイント3は、デバイス4に対するイベントモードが拡張モードに設定されているか、あるいは、基本モードに設定されているかを確認し、その結果、拡張モードに設定されていると確認された場合には112ステップに進み、基本モードに設定されていると確認された場合には、113ステップに進む。
【0128】
112ステップで制御ポイント3は、デバイス4が提供するサービスの状態変化のうち、一部の状態変化の発生に関する情報を含むイベントメッセージを受信する。
【0129】
113ステップで制御ポイント3は、デバイス4が提供するサービスの状態変化すべての発生に関する情報を含むイベントメッセージを受信する。
【0130】
図12は、本発明の望ましい一実施形態によるイベントメッセージ伝送方法のフローチャートである。図12を参照するに、本実施形態によるイベントメッセージ伝送方法は次のようなステップで構成される。本実施形態によるイベントメッセージ伝送方法は、図5に図示されたデバイス4で、時系列的に処理されるステップで構成される。したがって、以下で省略された内容であっても、図5に図示されたデバイス4に関して以上で記述された内容は、本実施形態によるイベントメッセージ伝送方法にも適用される。
【0131】
121ステップでデバイス4は、アクション呼び出しを受信する。
【0132】
122ステップでデバイス4は、121ステップで受信されたアクション呼び出しに該当するアクションを行う。
【0133】
123ステップでデバイス4は、122ステップでのアクション実行によって、サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生した場合には、124ステップに進み、いかなる状態変化も発生しない場合には、イベントメッセージを伝送せずに終了する。
【0134】
124ステップでデバイス4は、前記状態変化の発生を知らせよと要請した制御ポイントを決定する。
【0135】
125ステップでデバイス4は、124ステップで決定された制御ポイントが拡張モードを支援する場合には126ステップに進み、基本モードを支援する場合には、127ステップに進む。
【0136】
126ステップでデバイス4は、サービスの状態変化のうち、一部の状態変化の発生に関する情報を含むイベントメッセージを伝送する。
【0137】
127ステップでデバイス4は、サービスの状態変化すべての発生に関する情報を含むイベントメッセージを伝送する。
【0138】
一方、前述した本発明の実施形態は、コンピュータで実行されるプログラムで作成可能であり、コンピュータで読み取り可能な記録媒体を利用して前記プログラムを動作させる汎用ディジタルコンピュータで具現されうる。また、前述した本発明の実施形態で使われたデータの構造は、コンピュータで読み取り可能な記録媒体にいろいろな手段を通じて記録されうる。
【0139】
前記コンピュータで読み取り可能な記録媒体は、マグネチック記録媒体(例えば、ROM、フロッピー(登録商標)ディスク、ハードディスクなど)、光学的判読媒体(例えば、CD−ROM、DVDなど)及びキャリアウェーブ(例えば、インターネットを通じた伝送)のような記録媒体を含む。
【0140】
これまで本発明についてその望ましい実施形態を中心に説明した。当業者ならば、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現されうるということを理解できるであろう。したがって、開示された実施形態は限定的な観点ではなく、説明的な観点で考慮されねばならない。本発明の範囲は、前述した説明でなく特許請求範囲に現れており、それと同等な範囲内にあるあらゆる差異点は、本発明に含まれていると解釈されねばならない。
【産業上の利用可能性】
【0141】
本発明は、ホームネットワーク上の装置に適用できる。
【図面の簡単な説明】
【0142】
【図1】UPnPネットワーキングの構成ステップを示す図である。
【図2】従来のUPnPイベンティング過程を示す図である。
【図3】本発明の望ましい一実施形態による拡張イベント加入要請メッセージ及び拡張イベント加入応答メッセージのフォーマットを示す図である。
【図4】本発明の望ましい一実施形態による拡張イベント加入更新メッセージのフォーマットを示す図である。
【図5】本発明の望ましい一実施形態による制御ポイント及びデバイスの構成図である。
【図6】本発明の望ましい一実施形態による状態抽出部の具体的な構造を示す図である。
【図7】本発明の望ましい一実施形態による拡張イベント加入要請方法のフローチャートである。
【図8】本発明の望ましい一実施形態による拡張イベント加入要請処理方法のフローチャートである。
【図9】本発明の望ましい一実施形態による制御ポイントでの拡張イベント加入更新方法のフローチャートである。
【図10】本発明の望ましい一実施形態によるデバイスでの拡張イベント加入更新方法のフローチャートである。
【図11】本発明の望ましい一実施形態によるイベントメッセージ受信方法のフローチャートである。
【図12】本発明の望ましい一実施形態によるイベントメッセージ伝送方法のフローチャートである。
【符号の説明】
【0143】
3 制御ポイント
4 デバイス
31 アドレス指定モジュール
32 発見モジュール
33 説明モジュール
34 制御モジュール
35 イベンティングモジュール
36 プレゼンテーションモジュール
41 アドレス指定モジュール
42 発見モジュール
43 説明モジュール
44 制御モジュール
45 イベンティングモジュール
46 プレゼンテーションモジュール
351 状態変化選定部
352 拡張イベント加入要請部
353 拡張イベント加入更新部
354 拡張イベント加入応答検出部
355 拡張イベント加入応答処理部
451 拡張イベント加入要請検出部
452 拡張イベント加入更新検出部
453 拡張イベント加入応答部
454 状態変数抽出部

【特許請求の範囲】
【請求項1】
(a)サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、前記状態変化のうち、一部の状態変化の発生のみを知らせることを要請するステップと、
(b)前記要請に対する応答から前記一部の状態変化の発生に関する情報を受信するステップとを含むことを特徴とするイベント情報受信方法。
【請求項2】
前記イベントは、UPnPデバイスが提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントであることを特徴とする請求項1に記載のイベント情報受信方法。
【請求項3】
前記(a)ステップは、前記サービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合にのみ、前記一部の状態変数の現在値を知らせることを要請することを特徴とする請求項1に記載のイベント情報受信方法。
【請求項4】
前記(a)ステップは、前記イベントに対する加入を要請するメッセージに前記一部の状態変数のIDが記録された拡張ヘッダを挿入することで、前記一部の状態変数の現在値を知らせることを要請することを特徴とする請求項3に記載のイベント情報受信方法。
【請求項5】
前記イベントに対する加入を更新するメッセージに前記IDではない新たなIDを追加するか、前記IDを削除することを指示する拡張ヘッダを挿入することで、前記一部の状態変数の更新を要請するステップをさらに含むことを特徴とする請求項4に記載のイベント情報受信方法。
【請求項6】
前記(a)ステップは、前記サービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、前記状態変数の現在値を知らせることを要請することを特徴とする請求項1に記載のイベント情報受信方法。
【請求項7】
前記(a)ステップは、前記イベントに対する加入を要請するメッセージに前記所定レベルを表す値が記録された拡張ヘッダを挿入することで、前記状態変数の現在値を知らせることを要請することを特徴とする請求項6に記載のイベント情報受信方法。
【請求項8】
前記イベントに対する加入を更新するメッセージに前記所定レベルを表す値を変更することを指示する拡張ヘッダを挿入することで、前記所定レベルの変更を要請するステップをさらに含むことを特徴とする請求項7に記載のイベント情報受信方法。
【請求項9】
サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、前記状態変化のうち、一部の状態変化の発生のみを知らせることを要請する要請部と、
前記要請部での要請に対する応答から前記一部の状態変化の発生に関する情報を受信するイベンティングモジュールとを備えることを特徴とするイベント情報受信装置。
【請求項10】
サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対して、前記状態変化のうち、一部の状態変化の発生のみを知らせることを要請するステップと、
前記要請に対する応答から前記一部の状態変化の発生に関する情報を受信するステップとを含むことを特徴とするイベント情報受信方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項11】
(a)サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、前記状態変化のうち、一部の状態変化の発生のみを知らせよという要請を検出するステップと、
(b)前記検出された要請に対する応答として前記一部の状態変化の発生に関する情報を伝送するステップと、を含むことを特徴とするイベント情報伝送方法。
【請求項12】
前記イベントは、UPnPデバイスが提供するサービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントであることを特徴とする請求項11に記載のイベント情報伝送方法。
【請求項13】
前記(a)ステップは、前記サービスの状態を表す状態変数のうち、一部の状態変数の値が変化された場合にのみ、前記一部の状態変数の現在値を知らせよという要請を検出し、
前記(b)ステップは、前記一部の状態変数の値が変化された場合に前記一部の状態変数の現在値を含むイベントメッセージを伝送することを特徴とする請求項11に記載のイベント情報伝送方法。
【請求項14】
前記(a)ステップは、前記イベントへの加入を要請するメッセージから前記一部の状態変数のIDを検出することで、前記要請を検出することを特徴とする請求項13に記載のイベント情報伝送方法。
【請求項15】
前記IDではない新たなIDが追加されたことを確認するか、前記IDが削除されたことを確認することで、前記一部の状態変数の更新に対する要請を検出するステップをさらに含むことを特徴とする請求項14に記載のイベント情報伝送方法。
【請求項16】
前記(a)ステップは、前記サービスの状態を表す状態変数のうち、少なくとも一つ以上の状態変数の値の変化が所定レベル以上である場合にのみ、前記状態変数の現在値を知らせよという要請を検出し、
前記(b)ステップは、前記状態変数の値が変化が所定レベル以上である場合に前記状態変数の現在値を含むイベントメッセージを伝送することを特徴とする請求項11に記載のイベント情報伝送方法。
【請求項17】
前記(a)ステップは、前記イベントへの加入を要請するメッセージから前記所定レベルを表す値を検出することで、前記要請を検出することを特徴とする請求項16に記載のイベント情報伝送方法。
【請求項18】
前記所定レベルを表す値の変更を確認することで、前記所定レベルの更新に対する要請を検出するステップをさらに含むことを特徴とする請求項17に記載のイベント情報伝送方法。
【請求項19】
サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、前記状態変化のうち、一部の状態変化の発生のみを知らせよという要請を検出する検出部と、
前記検出部により検出された要請に対する応答として、前記一部の状態変化の発生に関する情報を伝送するイベンティングモジュールとを備えることを特徴とするイベント情報伝送装置。
【請求項20】
サービスの状態変化のうち、少なくとも一つ以上の状態変化が発生したことを知らせるイベントに対する要請として、前記状態変化のうち、一部の状態変化の発生のみを知らせよという要請を検出するステップと、
前記検出された要請に対する応答として、前記一部の状態変化の発生に関する情報を伝送するステップとを含むことを特徴とするイベント情報伝送方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2007−133881(P2007−133881A)
【公開日】平成19年5月31日(2007.5.31)
【国際特許分類】
【出願番号】特願2006−303248(P2006−303248)
【出願日】平成18年11月8日(2006.11.8)
【出願人】(390019839)三星電子株式会社 (8,520)
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【Fターム(参考)】