(57)【要約】プログラムを配信する方法は通信ネットワーク（１０）でオンデマンドでの端末装置（１００、２００）へのプログラムの配信することを可能にし第１及び第２の端末装置（１００、２００）間での通信を可能にする。データオブジェクトサーバ（５０）は第１及び第２の端末装置（１００、２００）間での通信に必要とされるプログラムを格納する。プログラムはデータオブジェクトサーバ（５０）によってデバイスクラスと関連付けられる。第１及び第２の端末装置（１００、２００）は特定のデバイスクラスに関連付けられたプログラムを要求するデータオブジェクト要求をデータオブジェクトサーバ（５０）に送信する。データオブジェクト要求に応じて、データオブジェクトサーバ（５０）は特定のデバイスに関連付けられた制御プログラムを第１及び第２の端末装置（１００、２００）の１つに送信する。【選択図】  図５
2010530672.tif 000002
【特許請求の範囲】
【請求項１】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の制御プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、前記方法は、
前記第１及び第２の端末装置（１００、２００）間で通信セッションを開始する工程と、
前記通信セッションの開始に応じて、前記データオブジェクトサーバ（５０）から前記  第１の端末装置（１００、２００）で通信プログラムを受信する工程と、を備え、
前記通信プログラムは前記第２の端末装置（１００、２００）と通信することを特徴とする方法。
【請求項２】
前記第２の端末装置（１００、２００）は特定のデバイスクラスのデバイスであり且つ前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第２の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項３】
前記第１の端末装置（１００、２００）から前記第２の端末装置（１００、２００）に前記第１の端末装置（１００、２００）のデバイスクラスを識別する情報を送信する工程をさらに備え、
前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第１の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項４】
前記データオブジェクトサーバ（５０）から前記第１の端末装置（１００、２００）で前記第１の端末装置（１００、２００）の前記デバイスクラスを識別するための情報要求を受信する工程と、
前記第１の端末装置（１００、２００）から前記データオブジェクトサーバ（５０）に応答を送信する工程と、をさらに備え、
前記応答は前記第１の端末装置（１００、２００）の前記デバイスクラスを含み、
前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第１の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項５】
前記通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項１に記載の方法。
【請求項７】
前記制御プログラムを前記第１の端末装置（１００、２００）のメモリ（１０４、２０４）にロードする工程と、
前記第１の端末装置（１００、２００）上で前記制御プログラムを実行して前記第２の端末装置（１００、２００）を制御する工程と、
をさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項７に記載の方法。
【請求項９】
前記ゲームプログラムは前記第２の端末装置（１００、２００）に特有な制御を使用してゲームオブジェクトを制御するコードを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の通信プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、
前記方法は、
前記第２の端末装置（１００、２００）でトリガとなるイベントを検出する工程と、
前記第２の端末装置（１００、２００）からデータオブジェクト要求を送信してデータオブジェクトサーバ（５０）によって格納される前記第２の端末装置（１００、２００）の通信プログラムの前記第１の端末装置（１００、２００）への転送を開始する工程と、
を備えることを特徴とする方法。
【請求項１１】
前記データオブジェクト要求は前記第２の端末装置（１００、２００）のデバイスクラスを含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記データオブジェクト要求は前記第１の端末装置（１００、２００）のデバイスクラスをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記第２の端末装置（１００、２００）で前記データオブジェクトサーバ（５０）から前記通信プログラムを受信する工程と、
前記通信プログラムを前記第１の端末装置（１００、２００）に送信する工程と、
をさらに備えることを特徴とする請求項１０に記載の方法。
【請求項１４】
データオブジェクト要求は前記第１の端末装置（１００、２００）のアドレスを含みその結果前記データオブジェクトサーバ（５０）は前記通信プログラムを前記第１の端末装置（１００、２００）に送信できることを特徴とする請求項１０に記載の方法。
【請求項１５】
通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項１０に記載の方法。
【請求項１６】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項１０に記載の方法。
【請求項１７】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項１６に記載の方法。
【請求項１８】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の通信プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、前記方法は、
前記データオブジェクトサーバ（５０）で前記第２の端末装置（１００、２００）の通信プログラムを格納する工程と、
前記第１及び第２の端末装置（１００、２００）の１つから前記データオブジェクトサーバ（５０）でデータオブジェクト要求を受信する工程と、
前記データオブジェクト要求に応じて、前記第２の端末装置（１００、２００）の前記通信プログラムを前記データオブジェクトサーバ（５０）から前記第１及び第２の端末装置（１００、２００）の１つに送信する工程と、
を備えることを特徴とする方法。
【請求項１９】
前記データオブジェクト要求は前記第２の端末装置（１００、２００）のデバイスクラスを含み、
前記通信プログラムは前記第２の端末装置（１００、２００）の前記デバイスクラスに基づいて選択されることを特徴とする請求項１８に記載の方法。
【請求項２０】
前記データオブジェクトサーバ（５０）は前記第１及び第２の端末装置（１００、２００）の１つから前記第１の端末装置（１００、２００）の前記デバイスクラスをさらに受信し、
前記通信プログラムは前記第１及び第２の端末装置（１００、２００）の両方の前記デバイスクラスに基づいて選択されることを特徴とする請求項１９に記載の方法。
【請求項２１】
通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項１８に記載の方法。
【請求項２２】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項１８に記載の方法。
【請求項２３】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項２２に記載の方法。
【請求項２４】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の通信プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、
前記方法は、
前記第１及び第２の端末装置（１００、２００）間での通信セッションを開始する工程と、
前記通信セッションと関連付けられたトリガとなるイベントを検出する工程と、
前記トリガとなるイベントの前記検出に応じて、データオブジェクト要求を前記データオブジェクトサーバ（５０）に送信する工程と、
前記データオブジェクト要求に応じて前記データオブジェクトサーバ（５０）から前記第１の端末装置（１００、２００）に通信プログラムを転送する工程と、
前記通信プログラムを前記第１の端末装置（１００、２００）のメモリ（１０４、２０４）にロードする工程と、
前記第１の端末装置（１００、２００）上で前記通信プログラムを実行して前記第２の端末装置（１００、２００）を制御する工程と、
を備えることを特徴とする方法。
【請求項２５】
前記第２の端末装置（１００、２００）は前記トリガとなるイベントを検出し且つ前記データオブジェクト要求を前記データオブジェクトサーバ（５０）に送信することを特徴とする請求項２４に記載の方法。
【請求項２６】
前記データオブジェクト要求は前記第２の端末装置（１００、２００）の前記デバイスクラスを含み、
前記データオブジェクトサーバ（５０）は前記第２の端末装置（１００、２００）の前記デバイスクラスに基づいて通信プログラムを選択することを特徴とする請求項２５に記載の方法。
【請求項２７】
前記データオブジェクト要求は前記第１の端末装置（１００、２００）の前記デバイスクラスをさらに含み、
前記データオブジェクトサーバ（５０）は前記データオブジェクト要求に定められている前記アドレスにおいて直接前記第１の端末装置（１００、２００）に前記通信プログラムを送信することを特徴とする請求項２６に記載の方法。
【請求項２８】
前記データオブジェクトサーバ（５０）から前記第１の端末装置（１００、２００）に前記第１の端末装置（１００、２００）の前記デバイスクラスを要求する情報要求を送信する工程と、
前記第１の端末装置（１００、２００）から前記データオブジェクトサーバ（５０）に前記第１の端末装置（１００、２００）の前記デバイスクラスを含む応答を送信する工程と、をさらに含み、
前記データオブジェクトサーバ（５０）は前記第１及び第２の端末装置（１００、２００）の両方の前記デバイスクラスに基づいて前記第１の端末装置（１００、２００）への送信のための通信プログラムを選択することを特徴とする請求項２７に記載の方法。
【請求項２９】
前記第１の端末装置（１００、２００）は前記トリガとなるイベントを検出し且つ前記データオブジェクト要求を前記データオブジェクトサーバ（５０）に送信することを特徴とする請求項２４に記載の方法。
【請求項３０】
前記データオブジェクト要求は前記第２の端末装置（１００、２００）の前記アドレスを含むことを特徴とする請求項２９に記載の方法。
【請求項３１】
前記データオブジェクトサーバ（５０）から前記第２の端末装置（１００、２００）に前記第２の端末装置（１００、２００）の前記デバイスクラスを要求する情報要求を送信する工程と、
前記第２の端末装置（１００、２００）から前記データオブジェクトサーバ（５０）に前記第２の端末装置（１００、２００）の前記デバイスクラスを含む応答を送信する工程と、をさらに含み、
前記データオブジェクトサーバ（５０）は前記第２の端末装置（１００、２００）の前記デバイスクラスに基づいて前記第１の端末装置（１００、２００）への送信のための通信プログラムを選択することを特徴とする請求項３０に記載の方法。
【請求項３２】
前記データオブジェクト要求は前記第１の端末装置（１００、２００）の前記デバイスクラスをさらに含み、
前記データオブジェクトサーバ（５０）は前記第１及び第２の端末装置（１００、２００）の前記デバイスクラスに基づいて通信プログラムを選択することを特徴とする請求項３１に記載の方法。
【請求項３３】
通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項２４に記載の方法。
【請求項３４】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項２４に記載の方法。
【請求項３５】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項３４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は２００７年６月１５日に提出された米国仮特許出願60/944,253号及び２００７年６月２７日に提出された米国出願11/768,971号の利益を主張し、言及することによりここに合体される。
【０００２】
本発明は一般に通信ネットワークを介してコンピュータプログラム及び他の実行可能なデータオブジェクトを配信してオンデマンドで端末装置間での通信及び情報のやり取りを可能にさせるシステム及び方法に関する。
【背景技術】
【０００３】
無線ネットワークに対する強化データ機能の導入は携帯電話、携帯情報端末（ＰＤＡ）、ラップトップ型コンピュータ、等の携帯デバイスのユーザの無線アプリケーションの増加に帰着する。携帯デバイスのユーザは今やウェブページを閲覧し、ｅ−メールメッセージを作成及び読み、友人及び知人とお喋りをし、インターネットサーバから音楽及び／又はビデオをダウンロードし、及びデジタル写真又は画像を友人に送信することができる。さらに、携帯デバイスはインターネットを介してアクセス可能なデバイスを制御するために使用されうる。
【０００４】
第１の通信デバイス上の常駐プログラムは別の通信デバイス上のプログラムと通信することを望んでもよい。通信デバイスは携帯デバイス又はネットワークへの固定接続を有するデバイスを備えてもよい。２つのプログラムが通信するために、プログラムは同じプロトコルを使用して情報を交換しなければならない。１つのプログラムが他の通信デバイスに存在しない特定のプロトコルを必要とするなら、その場合通信は可能ではないかもしれない。このような状況では、端末装置間での通信のために一方又は両方の通信デバイスがオンデマンドで必要なプロトコル及びプログラムを取得する方法を有することが望ましいだろう。
【発明の概要】
【０００５】
本発明はオンデマンドで通信ネットワークで第１及び第２の端末装置間での通信を可能にさせるプログラムを配信する方法を提供する。データオブジェクトサーバは第１及び第２の端末装置間での通信に必要とされるプログラムを格納する。プログラムはデータオブジェクトサーバによってデバイスクラスと関連付けられる。第１及び第２の端末装置はデータオブジェクト要求をデータオブジェクトサーバに送信して特定のデバイスクラスと関連付けられたプログラムを要求できる。データオブジェクト要求に応じて、データオブジェクトサーバは特定のデバイスクラスと関連付けられた通信プログラムを第１及び第２の端末装置の１つに送信する。
【０００６】
例示的な一実施形態において、第１の端末装置は第２の端末装置と通信を開始する。第２の端末装置はデータオブジェクト要求をデータオブジェクトサーバに送信する。データオブジェクト要求は少なくとも第２の端末装置のデバイスクラスを含む。データオブジェクトサーバは第２の装置のデバイスクラスに対応する通信プログラムを選択し、且つ通信プログラムを第１の端末装置に送信する。あるいは、データオブジェクトサーバは通信プログラムを第２の装置に送信して、次に通信プログラムを第１の端末装置に送信してもよい。送信元デバイスは通信プログラムをメモリにロードし且つその通信プログラムを実行して第２の端末装置との通信を可能にさせる。
【０００７】
別の例示的な実施形態において、第１の端末装置が第２の端末装置を制御することを可能にさせる制御プログラムがデータオブジェクトサーバに格納される。第１の端末装置が第２の端末装置と通信を開始する場合、第２の端末装置はデータオブジェクト要求をデータオブジェクトサーバに送信する。データオブジェクト要求は少なくとも第２の端末装置のデバイスクラスを含む。データオブジェクトサーバは第２の端末装置のデバイスクラスに対応する制御プログラムを選択して且つ制御プログラムを第１の端末装置に送信する。あるいは、データオブジェクトサーバは制御プログラムを第２の装置に送信して、次に制御プログラムを第１の端末装置に送信してもよい。第１の端末装置は制御プログラムをメモリにロードして且つ制御プログラムを実行して第２の端末装置を制御する。
【図面の簡単な説明】
【０００８】
【図１】図１は例示的な通信ネットワークを説明する図である。
【図２】図２はユーザインタフェースを伴う例示的な端末装置を説明する図である。
【図３】図３はユーザインタフェースを伴わない例示的な端末装置を説明する図である。
【図４】図４は例示的なデータオブジェクトサーバを説明する図である。
【図５】図５はオンデマンドでプログラムを端末装置に配信する例示的なプッシュ方法を説明するコールフローチャートである。
【図６】図６はオンデマンドでプログラムを端末装置に配信する例示的なプル方法を説明するコールフローチャートである。
【図７】図７はプログラムをデバイスクラスと関連付けるためにデータオブジェクトサーバによって使用される例示的な参照テーブルを説明する図である。
【図８】図８はプログラムをデバイスクラスと関連付けるためにデータオブジェクトサーバによって使用される複数のファイル索引を伴う例示的な参照テーブルを説明する図である。
【発明を実施するための形態】
【０００９】
図１は本発明の例示的な一実施形態に従った通信ネットワーク１０を説明する。通信ネットワーク１０は従来の移動体通信ネットワーク２０、公衆交換電話網（ＰＳＴＮ）３０、及びパケットデータネットワーク４０を備える。移動体通信ネットワーク２０は携帯デバイス１００と通信する１以上の基地局２２を含み且つ携帯デバイス１００に音声サービス及びデータサービスを提供する。移動体通信ネットワーク２０は音声サービスに対して公衆交換電話網（ＰＳＴＮ）３０と相互接続し且つデータサービスに対してＰＤＮ４０と相互接続する。移動体通信ネットワーク２０は例えばＧＳＭ、ＧＰＲＳ，ＥＤＧＥ、ｃｄｍａＯｎｅ、ｃｄｍａ２０００、ＷＣＤＭＡ、又はＵＭＩＴＳネットワークを備えてもよいが、他のアクセス技術も使用されうる。ＰＤＮ４０はインターネットプロトコルに基づく任意のパブリック又はプライベート・ネットワークを備えてもよい。ＰＤＮ４０は広域ネットワーク、又はローカルエリア・ネットワークを備えてもよい。インターネットは広域パケットデータネットワークの一例である。
【００１０】
１つ以上の端末装置１００、２００は通信ネットワーク１０に接続されている。端末装置１００、２００は通信ネットワークを介して通信可能なデスクトップ型又はラップトップ型コンピュータ、携帯電話、携帯情報端末（ＰＤＡ）、スマートフォン、等の任意の種類の通信デバイスを備えてもよい。以下で説明されるように、端末装置１００、２００は広く送信元デバイス１００及び送信先デバイス２００として分類されてもよい。送信元デバイス１００はコール又は他の通信セッションを送信先デバイス２００に送信する端末装置である。任意の端末装置は送信元デバイス１００及び送信先デバイス２００の両方として機能してもよい。
【００１１】
ＰＤＮ４０に接続されるデータオブジェクトサーバ（ＤＯＳ）５０は端末装置１００、２００と通信し又は端末装置１００、２００を制御する通信プログラムを格納する。ここで使用されるように、プログラムという用語は実行された場合にコンピュータに特定の動作を実行させる一連の命令のことである。通信プログラムは端末装置１００、２００間の通信を容易にするために使用されるプログラムである。例えば、通信プログラムはデータを符号化／復号化し、暗号化／復号化し、圧縮／解凍するために使用されてもよい。制御プログラムは通信プログラムの特定の場合であり通信ネットワークを介して制御命令を送信するために使用される。
【００１２】
送信元デバイス１００が送信先デバイス２００との通信を確立する場合、データオブジェクトサーバ５０は接続され且つ対応するプログラムを送信先デバイス２００と通信し又は送信先デバイス２００を制御する送信元デバイス１００に送信する。送信元デバイス１００はプログラムをメモリにロードし且つプログラムを実行して送信先デバイス２００と通信し又は送信先デバイス２００を制御する。このように、送信元デバイス１００は全ての送信先デバイス２００と通信し又は送信先デバイス２００を制御するのみに必要とされるプログラムをメモリに永久に格納する必要がない。さらに、ＤＯＳ５０においてプログラムは定期的にアップデートされ得、その結果送信元デバイス１００は送信先デバイス２００との通信又は送信先デバイス２００の制御のための最新のプログラムを取得することが保証されうる。
【００１３】
図２は送信元デバイス１００又は送信先デバイス２００のどちらかとして機能してもよい例示的な端末装置１００、２００の主な構成要素を説明する。端末デバイス１００は制御ユニット１０２、メモリ１０４、送受信機１０６、オーディオ処理回路１０８、及びユーザインタフェース１１０を備える。制御ユニット１０２はメモリ１０４に格納されたプログラム命令に従って端末装置１００、２００の全体の動作を制御する１つ以上のプロセッサ、ハードウェア回路、ファームウェア、又はそれらの組み合わせを備えてもよい。メモリ１０４は一時記憶装置のためのランダム・アクセス・メモリ及び永久記憶装置のためのリードオンリー・メモリを含む１つ以上のメモリデバイスを備えてもよい。通信インタフェース１０６は標準的な有線又は無線インタフェースを備える。携帯デバイスに対して、通信インタフェースはＧＳＭ、ＣＤＭＡ、ＷＣＤＭＡ等の任意の既知の標準に従って動作する携帯送受信機、又はブルートゥース又はＷＩＦＩ送受信機等の短距離無線インタフェース等を備えてもよい。固定デバイスに対して、通信インタフェースはイーサネットインタフェース、ケーブルモデム、ＤＳＬモデム等を備えてもよい。オーディオ処理回路１０８はマイクロホン１１４を介して入力され及びスピーカ１１２を介して出力されるオーディオ信号を処理する。マイクロホン１１４は音響信号を電気オーディオ信号に変換する。スピーカ１１２は電気オーディオ信号を音響信号に変換する。ユーザインタフェース１１０はユーザに携帯デバイスとの情報のやり取りを可能にさせる。ユーザインタフェース１１０はユーザによって見る情報を出力するディスプレイ１１６及びユーザの入力を受信する一般に数字により示される１以上の入力デバイス１１８を含む。入力デバイス１１８は、例えば、キーパッド、タッチパッド、スクロールホイール、ジョイスティック、プッシュボタン等を備えてもよい。さらに、ディスプレイ１１６はユーザの入力を受信するタッチ高感度ディスプレイを備えてもよい。
【００１４】
任意の実施形態において、送信先デバイス２００はユーザインタフェース１１０、オーディオ処理回路１０８、又は通常は通信デバイスに必要とされる他の要素を必要としなくてもよい。例えば、送信先デバイス２００は温度自動調節器、カメラ、機構、器具、又は送信元デバイス１００により遠隔制御されうる他の装置の一部を備えてもよい。この場合、送信先デバイス２００は通信ネットワーク１０によって遠隔でアクセスされ且つ送信元デバイス１００によって制御されてもよい。例として、送信先デバイスはインターネットを介してアクセスされ且つ携帯電話等の手持ちサイズの携帯デバイスから制御されうる温度自動調節器を備えてもよい。
【００１５】
図３は遠隔制御プログラムに対する例示的な送信先デバイス２００を説明する。送信先デバイス２００は制御ユニット２０２、メモリ２０４、及び通信インタフェース２０６を備える。制御ユニット２０２は送信先デバイス２００の動作を制御する。メモリ２０４は動作に必要とされるプログラム及びデータを格納する。イーサネットインタフェース又はケーブルモデム等の通信インタフェース２０６は送信先デバイス２００をＰＤＮ４０に接続する。送信先デバイス２００はさらに自動温度調節器、カメラ、機構、又は送信元デバイス１００により遠隔制御されている他の装置等の制御要素２０８を含む。
【００１６】
図４は例示的なデータオブジェクトサーバ５０を説明する。データオブジェクトサーバ５０の主な機能は送信元デバイス１００及び送信先デバイス２００間の通信に必要とされるプログラムを格納することである。データオブジェクトサーバ５０は制御ユニット５２、メモリ５４、通信インタフェース５６、及び大容量記憶デバイス５８を備える。制御ユニット５２はデータオブジェクトサーバ５０の動作を制御する。メモリ５４はユニット５２によって使用されるプログラム及びデータを格納する揮発性及び不揮発性メモリデバイスの両方を含む。メモリ５４の一部は最近又は頻繁にアクセスされるキャッシュメモリ専用であってもよい。通信インタフェース５６は制御ユニット５２が通信ネットワークを介して端末装置１００、２００と通信するのを許可する。通信インタフェース５６は、例えば、ＩＰネットワークと接続するイーサネットインタフェースを備えてもよい。大容量記憶デバイス５８は端末装置１００、２００のためのプログラムを含むデータベースとして格納する。そのようなプログラムは、例えば、端末装置１００、２００間での通信を可能にさせる通信プログラム及び／又は遠隔制御プログラムで送信先デバイスを遠隔制御する制御プログラムを含んでもよい。
【００１７】
図５はデータオブジェクトサーバ５０に格納されたプログラムを配信する例示的なプッシュ方法を説明する。本実施形態において、送信元デバイス１００は送信先デバイス２００との通信セッションを開始する。送信元及び送信先デバイス１００、２００間での通信に必要とされるデータオブジェクトは送信元デバイス１００に転送される。通信セッションが送信元及び送信先デバイス１００、２００間に確立される（ステップａ）。通信は、例えば、セッション開始プロトコル（ＳＩＰ）等の標準的なセッション制御プロトコルを使用して開始されうる。通信セッションの開始に応答して、送信先デバイス２００はトリガとなるイベントを検出し（ステップｂ）且つトリガとなるイベントに応じてデータオブジェクト要求をデータオブジェクトサーバ５０に送信する（ステップｃ）。トリガとなるイベントはセッション確立処理の間、又は確立された後のセッションの間に生じてもよい。データオブジェクト要求は少なくとも送信先デバイス２００のデバイスクラスを含んでもよく且つさらにそのアドレスを含んでもよく及び／又は送信元デバイス１００のデバイスクラス及び好ましくは送信元デバイスのアドレスを含んでもよい。
【００１８】
任意の実施形態において、データオブジェクトサーバ５０は情報要求を送信元デバイス１００に送信して送信元デバイス１００のデバイスクラスを取得してもよい（ステップｄ）。送信元デバイス１００がデータオブジェクトサーバから情報要求を受信した場合、送信元デバイス１００は要求された情報を伴う情報応答をデータオブジェクトサーバ５０に送信してもよい（ステップｅ）。送信先デバイス２００のデバイスクラス及び／又は送信元デバイス１００のデバイスクラスに基づいて、データオブジェクトサーバはそのデータベースにアクセスして且つ送信先デバイス２００との通信又は送信先デバイス２００の制御に使用するプログラムを読み出す（ステップｆ）。プログラムは、例えば、送信元デバイス１００においてインストールされたＪａｖａアプレット又はコードモジュールを備えてもよい。送信元デバイス１００のデバイスクラスがデータオブジェクト要求の中に提供されないなら、データオブジェクトサーバ５０は一般的な制御プログラムを送信元デバイス１００に送信してもよい。
【００１９】
データオブジェクトサーバ５０は選択されたプログラムをデータオブジェクト要求の中に提供されたアドレスに基づいて送信元デバイス１００に送信する（ステップｇ）。あるいは、データオブジェクトサーバ５０は送信元デバイス１００に送信するためにプログラムを送信先デバイス２００に送信しうる。データオブジェクトサーバ５０から制御プログラムを受信した後、送信元デバイス１００はプログラムをメモリにロードする（ステップｈ）。プログラムは送信先デバイス２００と通信するのに必要な機能を送信元デバイス１００に付加する。送信元デバイス１００はプログラムを実行して送信先デバイス２００と通信又は送信先デバイス２００を制御しうる（ステップｉ）。ただ１つのプログラム又は１セットのプログラムがデータオブジェクトサーバ５０によって送信先デバイス２００のために同じデバイスクラスで格納される必要があることが注意されるべきである。
【００２０】
図６はデータオブジェクトサーバ５０によって格納されるプログラムを配信する例示的なプル方法を説明する。本実施形態において、送信元デバイス１００は送信先デバイス２００との通信セッションを開始する。送信元及び送信先デバイス１００、２００間での通信に必要とされるデータオブジェクトはデータオブジェクトサーバ５０から送信元デバイス１００によって引き出される。通信セッションは送信元及び送信先デバイス１００、２００間で確立される（ステップａ）。通信は、例えば、セッション開始プロトコル（ＳＩＰ）等の標準的なセッション制御プログラムを使用して開始されうる。通信セッションの開始に応じて、送信元デバイス１００はトリガとなるイベントを検出し（ステップｂ）且つトリガとなるイベントに応じてデータオブジェクト要求をデータオブジェクトサーバ５０に送信する（ステップｃ）。トリガとなるイベントはセッション確立処理の間、又は確立された後のセッションの間に生じてもよい。データオブジェクト要求は少なくとも送信先デバイス１００のアドレスを含んでもよく且つさらに送信元デバイス１００のデバイスクラスを含んでもよい。
【００２１】
データオブジェクト要求に応じて、データオブジェクトサーバ５０は情報要求を送信先デバイス２００に送信して送信元デバイス１００のデバイスクラスを取得する（ステップｄ）。送信先デバイス２００がデータオブジェクトサーバ５０から情報要求を受信した場合、送信先デバイス２００は要求された情報を伴う情報応答をデータオブジェクトサーバ５０に送信してもよい（ステップｅ）。送信先デバイス２００のデバイスクラス及び／又は送信元デバイス１００のデバイスクラスに基づいて、データオブジェクトサーバ５０はそのデータベースにアクセスして且つ送信先デバイス２００との通信又は送信先デバイス２００の制御に使用するプログラムを読み出す（ステップｆ）。プログラムは、例えば、送信元デバイス１００においてインストールされたＪａｖａアプレット又はコードモジュールを備えてもよい。送信元デバイス１００のデバイスクラスがデータオブジェクト要求の中に提供されないなら、データオブジェクトサーバ５０は一般的な制御プログラムを送信元デバイス１００に送信してもよい。
【００２２】
データオブジェクトサーバ５０は選択されたプログラムをデータオブジェクト要求の中に提供されたアドレスに基づいて送信元デバイス１００に送信する（ステップｇ）。データオブジェクトサーバ５０から制御プログラムを受信した後、送信元デバイス１００はプログラムをメモリにロードする（ステップｈ）。プログラムは送信先デバイス２００との通信又は送信先デバイス２００の制御に必要な機能を送信元デバイス１００に付加する。送信元デバイス１００はプログラムを実行して送信先デバイス２００を制御又は送信先デバイス２００と通信しうる（ステップｉ）。ただ１つのプログラム又は１セットのプログラムがデータオブジェクトサーバ５０によって送信先デバイス２００のために同じデバイスクラスで格納される必要があることが注意されるべきである。
【００２３】
制御プログラムに対して、データオブジェクトサーバ５０は送信元デバイス１００に送信元デバイス１００のディスプレイ上でユーザに提示するユーザインタフェースだけでなく、送信先デバイス２００を制御するコードを含む制御プログラムを送信してもよい。送信元デバイスのデバイスクラスが既知なら、送信元デバイス１００のデバイスクラスに適したユーザインタフェースを有する制御プログラムが選択されうる。デバイス特有の制御プログラムを送信元デバイスに送信する能力はよく小さなディスプレイを有して且つユーザ制御が制限される携帯デバイスに特に役に立つ。制御プログラムがロードされた後、送信元デバイス１００のユーザは制御プログラムを実行して送信先デバイス２００の動作を制御しうる。送信元デバイス１００及び送信先デバイス２００間での通信セッションが確立された場合、送信元デバイス１００は送信先デバイス２００に要求を送信して且つ送信先デバイス２００から応答を受信しうる。
【００２４】
通信プログラムに対して、データオブジェクトサーバ５０は送信元デバイス１００及び送信先デバイス２００間で転送される情報を処理するＪａｖａアプレット又はコードモジュールを送信元デバイス１００に送信してもよい。例えば、コードモジュールはオーディオ又はビデオのコーデック（符号復号器）、エンコーダ／デコーダ、暗号アルゴリズム、デジタル権利管理（ＤＲＭ）方法、圧縮／解凍アルゴリズム等を備えてもよい。コードモジュールをインストールする場合、送信元デバイス１００は送信先デバイスと通信するためのコードモジュールを使用できる。
【００２５】
図５及び図６に示される例示的な方法はプログラムが送信元デバイス１００にプッシュ又はプルされて送信先デバイス２００と通信する機能を送信元デバイス１００に付加する方法を示す。同じ技術が送信元デバイス１００と通信するために必要とされるプログラムをプッシュ又はプルして送信先デバイス２００に適用されうる。
【００２６】
さてデータオブジェクトサーバ５０を参照すると、データオブジェクトサーバ５０によって格納される各プログラムは少なくとも送信先デバイス２００（又は送信元デバイス１００）のデバイスクラスと関連付けられる。またプログラムは送信元デバイス１００（又は送信先デバイス２００）のデバイスクラスと関連付けられてもよい。以前述べたように、データオブジェクトサーバ５０によって受信されたデータオブジェクト要求は少なくとも送信先デバイス２００（又は送信元デバイス１００）のデバイスクラスを含む。送信元デバイス１００のデバイスクラスはデータオブジェクト要求の中に又は情報要求に応じて提供されうる。データオブジェクトサーバ５０はデータオブジェクト要求の中に提供されるデバイスクラスを使用してデータベースから対応するプログラムを選択する。選択されたプログラムは次に送信先デバイス１００に送信される。
【００２７】
データオブジェクトサーバ５０は、例えば、参照テーブル６０を使用してデバイスクラス及び対応するプログラム間の関連付けを格納してもよい。図７は例示的な参照テーブル６０を説明する。参照テーブル６０は参照テーブルの種々の領域に対応する複数の行を備える。参照テーブル６０の第１行はデバイスクラス領域に対応し且つデータオブジェクトサーバ５０によって格納されたプログラムと関連付けられたデバイスクラスを含む。参照テーブルのデバイスクラス領域は参照テーブルへのインデックスとして使用される。参照テーブル６０の第２行は各デバイスクラスに対応するプログラムの識別子を格納するプログラム領域である。図６に示される実施形態において、参照テーブルの各列は１つのデバイスクラスに対応する。データオブジェクト要求が受信された場合、データオブジェクトサーバ５０はデータオブジェクト要求の中に提供されるデバイスクラスと参照テーブル６０のデバイスクラス領域の値とを比較することによって参照テーブルの中で適合する入力を見つけ出す。適合値が見つけ出されたら、対応するプログラムがメモリから読み出され且つ通信を開始するデバイスに送信される。
【００２８】
図８は複合インデックスを伴う例示的な参照テーブルを説明する。本実施形態において、参照テーブルは送信先デバイス２００のデバイスクラス及び送信元デバイス１００のデバイスクラスを備える複数領域のインデックスを含む。２つのインデックス領域に格納される値は参照テーブルの各列に対して固有の複合インデックスを形成する。参照テーブルは各固有の複合インデックスに対応するプログラムのプログラム識別子を含むプログラム領域をさらに含む。参照テーブル６０の各列は１つの複合インデックス値に対応する。データオブジェクト要求が受信された場合、データオブジェクトサーバ５０はデータオブジェクト要求の中に提供されるデバイスクラスと参照テーブル６０のデバイスクラス領域の値とを比較することによって参照テーブルの中に適合する入力を見つけ出す。以前述べたように、送信先デバイス２００のデバイスクラスはデータオブジェクト要求の中に提供される。データオブジェクトサーバ５０は送信元デバイス１００のデバイスクラスを取得するために送信元デバイス１００に情報要求を送信することを必要としてもよい。適合する複合インデックス値が見つけられたなら、対応するプログラムがメモリから読み出され且つ送信元デバイス１００に送信される。
【００２９】
当業者は１つ以上の種類のプログラムが参照テーブル６０の各デバイスクラス又は複合と関連付けられうることを理解するだろう。さらに、参照テーブル６０のインデックスは送信元及び送信先デバイス１００、２００各々のデバイスクラスに加えて他の領域を備えてもよい。例えば、データオブジェクトサーバ５０が種々のメディアセッションのためのコードモジュールを格納すると仮定しよう。この場合、参照テーブル６０へのインデックスは通信セッションのメディアの種類（例えば、ビデオ、オーディオ等）を示す領域を含んでもよい。従って、データオブジェクトサーバは通信セッションのメディアの種類に依存する適当なコードモジュールを選択しうる。
【００３０】
以下の例は本発明の例示的な実施形態を説明しており、説明に役立ち且つ以下の例に限定しないことが意図される。
【００３１】
（例１）
送信先デバイス２００がインターネットを介して遠く離れた位置からアクセス可能な温度自動調節器を備えることを仮定しよう。この例では、携帯デバイスは送信元デバイス１００として作用している。データオブジェクトサーバ５０はグラフィックユーザインタフェース及び温度自動調節器の設定又はプログラミングを変更するための、温度自動調節器からの読み出しを取得するための、及び自動温度調節器の問題を診断するためのコードを含む制御プログラムを格納してもよい。温度自動調節器はアドレスが割り当てられ、アドレスはIPアドレスであってもよい。ユーザは現在の設定を変更するため又は温度自動調節器からの現在の読み出しを取得するために携帯デバイスから温度自動調節器との通信セッションを開始できる。例えば、通信セッションは送信元デバイス１００から温度自動調節器までSIP INVITEメッセージを送信することによってSIPを使用して開始されうる。SIP INVITEメッセージは送信元デバイス１００のSIPアドレスを含む。通信セッションが開始された場合、温度自動調節器はセッション開始要求又は他のトリガとなるイベントの受信に応答してデータオブジェクト要求をデータオブジェクトサーバ５０に送信する。データオブジェクト要求はセッション開始要求の中に提供される携帯デバイスのアドレス及び温度自動調節器のデバイスクラスを含む。データオブジェクトサーバは温度自動調節器の制御プログラムを送信元デバイス１００に送信する。携帯デバイスは次に温度自動調節器と情報をやりとりする制御プログラムをロードし且つ実行しうる。携帯デバイスのユーザは温度自動調節器の設定又は現在のプログラムを変更でき、温度自動調節器から温度測定を取得でき、又は温度自動調節器の問題を診断できる。
【００３２】
（例２）
携帯デバイス（すなわち、送信元デバイス１００）のユーザはゲームサーバ（すなわち、送信先デバイス２００）に接続してユーザが最近知ったゲームをプレイしたい。データオブジェクトサーバ５０はゲームプログラムを格納し且つそれはゲームサーバ上で双方向型ゲームをプレイするために使用されうる。ゲームプログラムはゲームキャラクタを創出し且つゲームプレイを制御するコードを含んでもよい。携帯デバイスのユーザがゲームサーバとの接続を開始する場合、ゲームサーバはセッション開始要求又は他のトリガとなるイベントに応答してデータオブジェクト要求をデータオブジェクトサーバ５０に送信する。データオブジェクト要求はゲームサーバのデバイスクラス及びセッション開始要求の中に提供される携帯デバイスのアドレスを含む。ゲームサーバが複数のゲームのために使用されるなら、データオブジェクト要求は携帯デバイスのユーザがプレイしたいというゲームの指示をさらに含む。データオブジェクトサーバ５０はゲームサーバ５０と情報をやりとりするゲームプログラムを携帯デバイスに送信する。携帯デバイスは次にゲームプログラムをロードし且つ実行してゲームサーバと情報をやりとりしうる。任意の実施形態において、ゲームサーバは情報要求を携帯デバイスに送信して携帯デバイスのデバイスクラスを識別してもよい。この場合、ゲームサーバは携帯デバイスによって返されたデバイスクラスを使用してユーザの携帯デバイスでの使用に適当な対応するゲームプログラムを選択しうる。
【００３３】
（例３）
第１の端末装置（例えば、携帯デバイス）のユーザは第２の端末装置のユーザと情報（例えば、オーディオ及び／又はビデオファイル）を交換したい。第１の端末装置のユーザが第２の端末装置との接続を開始する場合、セッション開始要求（例えば、SIP INVITE）は特定の種類の所望のメディアセッションを示す。要求されたメディアセッションに対して、第２の端末装置は第１の端末装置には存在しない通信のための特定のコーデックを必要とする。データオブジェクトサーバ５０は様々な種類のメディアセッションのために第２の端末装置によって使用されるコーデックを格納する。第２の端末装置が第１の端末装置からセッション開始要求を受信する場合、第２の端末装置は第２の端末装置のデバイスクラス及び第１の端末装置のアドレスを含むデータオブジェクト要求をデータオブジェクトサーバ５０に送信する。データオブジェクト要求は要求されたメディアセッションの種類をさらに含む。データオブジェクトサーバ５０は要求されたメディアセッションに必要とされるコーデックを第２の端末装置によって必要とされる第１の端末装置に送信する。第１の端末装置は次にコーデックをインストールして第２の端末装置とのオーディオ／ビデオ情報の交換を可能にすることができる。
【００３４】
（例４）
第１の端末装置のユーザは第２の端末装置のユーザと通信したい。第２の端末装置のユーザは通信が安全であることを望む。データオブジェクトサーバ５０は安全な通信のために第２の端末装置によって使用される暗号化アルゴリズムを格納する。第２の端末装置が第１の端末装置からセッション開始要求を受信する場合、第２の端末装置は第２の端末装置のデバイスクラス及び第１の端末装置のアドレスを含むデータオブジェクト要求をデータオブジェクトサーバ５０に送信する。データオブジェクト要求は安全な通信が望まれることの指示をさらに含んでもよい。データオブジェクトサーバ５０は必要とされる暗号アルゴリズムを第１の端末装置に送信する。第１の端末装置は次に暗号アルゴリズムをインストールして第２の端末装置との安全な通信を可能にすることができる。第２の端末装置のユーザは定期的に暗号アルゴリズムを変更して暗号コードを破壊する試みを統計的方法によって妨げてもよいことが注意されるべきである。
【００３５】
（例５）
第１の端末装置は第２の端末装置のユーザと情報（例えば、オーディオ及び／又はビデオファイル）を交換したい。オーディオビデオファイルはデジタル権利管理（DRM）によって保護される。データオブジェクトサーバ５０は様々なファイルの種類の第２の端末装置によって使用されるDRM方法を格納する。第２の端末装置が第１の端末装置からセッション開始要求を受信する場合、第２の端末装置は第２の端末装置のデバイスクラス及び第１の端末装置のアドレスを含むデータオブジェクト要求をデータオブジェクトサーバ５０に送信する。データオブジェクトサーバ５０は必要なDRM方法を第２の端末装置から第１の端末装置に送信されるファイルを解除し又は使用することが必要とされる第１の端末装置に送信する。例えば、DRM方法は第１の端末装置のユーザに予め定められた回数コンテンツを再生することを許可してもよく、又は第１の端末装置のユーザが使用前にコンテンツを購入することを必要としてもよい。
【００３６】
本発明は、もちろん、本発明の範囲及び本質的特徴を逸脱することなくここで説明された以外の他の特定の方法で実行されてもよい。本実施形態は、それ故、全ての点で実例的及び非限定的と見なされ、且つその意味の範囲内での全ての変形及び添付の請求項と均等な範囲がここでは含まれることが意図されている。
【図１】
2010530672.tif 000003
【図２】
2010530672.tif 000004
【図３】
2010530672.tif 000005
【図４】
2010530672.tif 000006
【図５】
2010530672.tif 000007
【図６】
2010530672.tif 000008
【図７】
2010530672.tif 000009
【図８】
2010530672.tif 000010
【手続補正書】
【提出日】平成22年2月15日(2010.2.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の制御プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、
前記方法は、
前記第１及び第２の端末装置（１００、２００）間で通信セッションを開始する工程と、
前記通信セッションの開始に応じて、前記データオブジェクトサーバ（５０）から前記第１の端末装置（１００、２００）で通信プログラムを受信する工程と、を備え、
前記通信プログラムは前記第２の端末装置（１００、２００）と通信することを特徴とする方法。
【請求項２】
前記第２の端末装置（１００、２００）は特定のデバイスクラスのデバイスであり且つ前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第２の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項３】
前記第１の端末装置（１００、２００）から前記第２の端末装置（１００、２００）に前記第１の端末装置（１００、２００）のデバイスクラスを識別する情報を送信する工程をさらに備え、
前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第１の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項４】
前記データオブジェクトサーバ（５０）から前記第１の端末装置（１００、２００）で前記第１の端末装置（１００、２００）の前記デバイスクラスを識別するための情報要求を受信する工程と、
前記第１の端末装置（１００、２００）から前記データオブジェクトサーバ（５０）に応答を送信する工程と、をさらに備え、
前記応答は前記第１の端末装置（１００、２００）の前記デバイスクラスを含み、
前記データオブジェクトサーバ（５０）によって提供される前記通信プログラムは前記第１の端末装置（１００、２００）の前記デバイスクラスに対応することを特徴とする請求項１に記載の方法。
【請求項５】
前記通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項１に記載の方法。
【請求項７】
前記制御プログラムを前記第１の端末装置（１００、２００）のメモリ（１０４、２０４）にロードする工程と、
前記第１の端末装置（１００、２００）上で前記制御プログラムを実行して前記第２の端末装置（１００、２００）を制御する工程と、
をさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項７に記載の方法。
【請求項９】
前記ゲームプログラムは前記第２の端末装置（１００、２００）に特有な制御を使用してゲームオブジェクトを制御するコードを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
第１の端末装置（１００、２００）、第２の端末装置（１００、２００）、及びデータオブジェクトサーバ（５０）を含む通信システム（１０）において、前記第２の端末装置（１００、２００）の通信プログラムを前記第１の端末装置（１００、２００）に配信する方法であって、
前記方法は、
データオブジェクトサーバ（５０）で前記第２の端末装置（１００、２００）のための通信プログラムを格納する工程と、
前記第１及び第２の端末装置（１００、２００）の１つからデータオブジェクトサーバ（５０）でデータオブジェクト要求を受信する工程と、
前記データオブジェクト要求に応じて、前記第２の端末装置（１００、２００）のための前記通信プログラムを前記データオブジェクトサーバ（５０）から前記第１及び第２の端末装置（１００、２００）の１つに送信する工程と、
を備えることを特徴とする方法。
【請求項１１】
前記データオブジェクト要求は前記第２の端末装置（１００、２００）のデバイスクラスを含み、
前記通信プログラムは前記第２の端末装置（１００、２００）の前記デバイスクラスに基づいて選択されることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記データオブジェクトサーバ（５０）は前記第１及び第２の端末装置（１００、２００）の１つから前記第１の端末装置（１００、２００）の前記デバイスクラスをさらに受信し、
前記通信プログラムは前記第１及び第２の端末装置（１００、２００）の両方の前記デバイスクラスに基づいて選択されることを特徴とする請求項１１に記載の方法。
【請求項１３】
通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを備えることを特徴とする請求項１０に記載の方法。
【請求項１４】
前記通信プログラムは前記第２の端末装置（１００、２００）を制御する制御プログラムを備えることを特徴とする請求項１０に記載の方法。
【請求項１５】
前記第２の端末装置（１００、２００）はゲームサーバ（２００）を備え、
前記制御プログラムは前記ゲームサーバ（２００）と情報をやり取りするゲームプログラムを備え前記ゲームサーバ（２００）上で実行するゲームを制御することを特徴とする請求項１４に記載の方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
別の例示的な実施形態において、第１の端末装置が第２の端末装置を制御することを可能にさせる制御プログラムがデータオブジェクトサーバに格納される。第１の端末装置が第２の端末装置と通信を開始する場合、第２の端末装置はデータオブジェクト要求をデータオブジェクトサーバに送信する。データオブジェクト要求は少なくとも第２の端末装置のデバイスクラスを含む。データオブジェクトサーバは第２の端末装置のデバイスクラスに対応する制御プログラムを選択して且つ制御プログラムを第１の端末装置に送信する。あるいは、データオブジェクトサーバは制御プログラムを第２の装置に送信して、次に制御プログラムを第１の端末装置に送信してもよい。第１の端末装置は制御プログラムをメモリにロードして且つ制御プログラムを実行して第２の端末装置を制御する。
任意の例示的な実施形態は第１の端末装置、第２の端末装置、及び第２の端末装置の制御プログラムを第１の端末装置に配信するデータオブジェクトサーバを含む通信システムを含み、第１及び第２の端末装置間での通信セッションを開始する工程と、通信セッションの開始に応じて第１の端末装置でデータオブジェクトサーバから通信プログラムを受信する工程と、を含み、通信プログラムは第２の端末装置と通信する。
任意の例示的な方法でにおいて、第２の端末装置は特定のデバイスクラスのデバイスであり且つデータオブジェクトサーバによって提供される通信プログラムは第２の端末装置のデバイスクラスに対応する。
任意の例示的な実施形態は第１の端末装置のデバイスクラスを識別する情報を第１の端末装置から第２の端末装置に送信する工程をさらに含み、データオブジェクトサーバによって提供される通信プログラムは第１の端末装置のデバイスクラスに対応する。
一方さらなる例示的な実施形態は第１の端末装置のデバイスクラスを識別する情報要求を第１の端末装置でデータオブジェクトサーバから受信し、第１の端末装置からデータオブジェクトサーバに応答を送信し、応答は第１の端末装置のデバイスクラスを含み、データオブジェクトサーバによって提供される通信プログラムは第１の端末装置のデバイスクラスに対応するという方法を含む。
任意の例示的方法において、通信プログラムは符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを含む。
任意の例示的方法において、通信プログラムは前記第２の端末装置を制御する制御プログラムを含む。
任意の例示的方法は制御プログラムを第１の端末装置のメモリにロードする工程と、第１の端末装置上で制御プログラムを実行して第２の端末装置を制御する工程と、をさらに含む。
任意の例示的方法において、第２の端末装置はゲームサーバを備え、制御プログラムはゲームサーバと情報をやり取りするゲームプログラムを含みゲームサーバ上で実行するゲームを制御する。一方任意の例示的方法においてゲームプログラムは第１の端末装置に特有な制御を使用してゲームオブジェクトを制御するコードをさらに含む。
他の例示的な実施形態は第１の端末装置、第２の端末装置、及び第２の端末装置の通信プログラムを第１の端末装置に配信するデータオブジェクトサーバを含む通信システムを含む。例示的な実施形態は第２の端末装置でトリガとなるイベントを検出し且つ第２の端末装置からデータオブジェクト要求を送信してデータオブジェクトサーバによって格納される第２の端末装置の通信プログラムの第１の端末装置への転送を開始するという方法を含む。
任意の例示的方法において、データオブジェクト要求は第２の端末装置のデバイスクラスを含む。一方任意の例示的方法において、データオブジェクト要求は第１の端末装置のデバイスクラスをさらに含む。
さらなる例示的方法はデータオブジェクトサーバから第２の端末装置で通信プログラムを受信する工程と、通信プログラムを第１の端末装置に送信する工程と、をさらに含む。  任意の例示的方法において、データオブジェクト要求は第１の端末装置のデバイスクラス含みその結果データオブジェクトサーバは通信プログラムを第１の端末装置に送信することができる。
任意の例示的方法において、通信プログラムは第２の端末装置を制御する制御プログラムを含む。一方任意の例示的方法において、第２の端末装置はゲームサーバを含み且つ制御プログラムはゲームサーバと情報をやり取りしてゲームサーバ上で実行するゲームを制御するゲームプログラムを有する。
さらなる例示的な実施形態は第１の端末装置、第２の端末装置、及びデータオブジェクトサーバを有する通信システムを含む。通信システムは第２の端末装置の通信プログラムを第１の端末装置に配信する方法を利用する。方法はデータオブジェクトサーバで第２の端末装置のための通信プログラムを格納する工程と、第１及び第２の端末装置の１つからデータオブジェクトサーバでデータオブジェクト要求を受信する工程とを含む。データオブジェクト要求に応じて、第２の端末装置のための通信プログラムをデータオブジェクトサーバから第１及び第２の端末装置の１つに送信する工程を含む。
任意の例示的方法において、データオブジェクト要求は第２の端末装置のデバイスクラスを含み、且つ通信プログラムは第２の端末装置のデバイスクラスに基づいて選択される。
一方さらなる例示的方法において、データオブジェクトサーバは第１及び第２の端末装置の１つから第１の端末装置のデバイスクラスをさらに受信し、且つ通信プログラムは第１及び第２の端末装置の両方のデバイスクラスに基づいて選択される。
任意の例示的方法は符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを含む。
任意の例示的方法において、通信プログラムは第２の端末装置を制御する制御プログラムを含む。
任意の例示的方法において、第２の端末装置はゲームサーバを含み、且つ制御プログラムはゲームサーバと情報をやり取りするゲームプログラムを含みゲームサーバ上で実行するゲームを制御する。
任意の例示的な実施形態は第１の端末装置、第２の端末装置、及びデータオブジェクトサーバを有する通信システムを含む。通信システムは第２の端末装置の通信プログラムを第１の端末装置に配信する方法を含む。方法は第１及び第２の端末装置間での通信セッションを開始する工程と、通信セッションと関連付けられたトリガとなるイベントを検出する工程を含む。トリガとなるイベントの検出に応じて、データオブジェクト要求をデータオブジェクトサーバに送信する工程と、データオブジェクト要求に応じてデータオブジェクトサーバから第１の端末装置に通信プログラムを転送する工程と、第１の端末装置のメモリに制御プログラムをロードする工程と、第１の端末装置上で通信プログラムを実行して第２の端末装置を制御する工程と、を含む。
任意の例示的方法において、第２の端末装置はトリガとなるイベントを検出し且つデータオブジェクト要求をデータオブジェクトサーバに送信する。
任意の例示的方法において、データオブジェクト要求は第２の端末装置のデバイスクラスを含み、データオブジェクトサーバは第２の端末装置のデバイスクラスに基づいて通信プログラムを選択する。
任意の例示的方法において、データオブジェクト要求は第１の端末装置のアドレスをさらに含み、データオブジェクトサーバはデータオブジェクト要求に定められているアドレスで通信プログラムを直接第１の端末装置に送信する。
任意の例示的方法は第１の端末装置のデバイスクラスを要求する情報要求をデータオブジェクトサーバから第１の端末装置に送信する工程と、第１の端末装置のデバイスクラスを含む第１の端末装置からの応答をデータオブジェクトサーバに送信する工程と、をさらに含み、データオブジェクトサーバは第１及び第２の端末装置の両方のデバイスクラスに基づいて第１の端末装置に送信する通信プログラムを選択する。
任意の例示的方法において、第１の端末装置はトリガとなるイベントを検出し且つデータオブジェクト要求をデータオブジェクトサーバに送信する。
任意の例示的方法において、データオブジェクト要求は第２の端末装置のアドレスを含む。
任意の例示的方法は第２の端末装置のデバイスクラスを要求する情報要求をデータオブジェクトサーバから第２の端末装置に送信する工程と、第２の端末装置からデータオブジェクトサーバに第２の端末装置のデバイスクラスを含む応答を送信する工程とをさらに含み、データオブジェクトサーバは第２の端末装置のデバイスクラスに基づいて第１の端末装置に送信する通信プログラムを選択する。
さらなる例示的方法において、データオブジェクト要求は第１の端末装置のデバイスクラスをさらに含み、データオブジェクトサーバは第１及び第２の端末装置のデバイスクラスに基づいて通信プログラムを選択する。
任意の例示的方法は符号化／復号化プログラム、暗号プログラム、圧縮／解凍プログラム、及びデジタル権利管理プログラムの１つを含む。
任意の例示的方法において、通信プログラムは第２の端末装置を制御する制御プログラムを含む。
任意の例示的方法において、第２の端末装置はゲームサーバを含み、制御プログラムはゲームサーバと情報をやり取りするゲームプログラムを含みゲームサーバ上で実行するゲームを制御する。
【国際調査報告】
2010530672.tif 000011
2010530672.tif 000012
2010530672.tif 000013