"インタラクティブアプリケーションの放送及び受信を制御する、コンピュータで実行される方法において、放送プログラムの放送を制御する制御信号を受信するステップと、前記制御信号から放送プログラムのうちの1つと関連したインタラクティブアプリケーションが発見できたかを決定するステップと、発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブアプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブアプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、を備える方法。コマンドを発生する前記のステップは更に、放送プログラムの放送受信機上への表示とのインタラクティブアプリケーションの同期表示を維持するためのコマンドを発生するステップを備える請求項1記載の方法。コマンドを発生する前記のステップは更に、放送プログラムの表示の終了と同期してインタラクティブアプリケーションの表示を終了するためのコマンドを発生するステップを備える請求項1記載の方法。コマンドを発生する前記のステップは更に、前記制御信号から放送プログラムの状態を決定するステップと、放送プログラムの前記状態に応答して、インタラクティブアプリケーションの状態を決定するステップと、インタラクティブアプリケーションの状態に適した少なくとも1つのコマンドを発生するステップとを備える、請求項1記載の方法。前記放送プログラムがテレビジョンショーであり、コマンドを発生する前記のステップは更に、前記制御信号からコマーシャルが放送中であることを決定するステップと、コマーシャルが放送中であることを決定することに応答して、前記テレビジョンショーと関連したインタラクティブアプリケーションの実行を中断するためのコマンドを発生するステップと、コマーシャルがもはや放送中でないことを決定することに応答して、テレビジョンプログラムと関連したインタラクティブアプリケーションの実行を再開するためのコマンドを発生するステップとを備える、請求項1記載の方法。前記放送プログラムが第1のテレビジョンショーであり、コマンドを発生する前記のステップは更に、前記制御信号からコマーシャルが放送中であることを決定するステップと、前記テレビジョンショーを終了するための制御信号を受信するステップと、コマーシャルが放送中であることを決定することに応答して、第1のテレビジョンショーと関連したインタラクティブアプリケーションの実行を中断するためのコマンドを発生するステップと、第1のテレビジョンショーがコマーシャルの後で放送中であることを決定することに応答して、第1のテレビジョンショーと関連したインタラクティブアプリケーションの実行を再開するためのコマンドを発生するステップとを備える、請求項1記載の方法。前記放送プログラムが第1テレビジョンショーであり、コマンドを発生する前記のステップは更に、前記制御信号からコマーシャルが放送中であることを決定するステップと、前記テレビジョンショーを終了するための制御信号を受信するステップと、コマーシャルが放送中であることを決定することに応答して、第1のテレビジョンショーと関連した第1のインタラクティブアプリケーションの実行を中断するためのコマンドを発生するステップと、第1のテレビジョンショーがコマーシャル休みにおける全てのコマーシャルの後で放送中であることを決定することに応答して、第1のインタラクティブアプリケーションの実行を再開するためのコマンドを発生するステップと第2のテレビジョンショーが放送中であることを決定することに応答して、第1のインタラクティブアプリケーションを終了するためのコマンド、及び第2のテレビジョンショーと関連した第2のインタラクティブアプリケーションの実行を始めるためのコマンドを発生するステップとを備える、請求項1記載の方法。制御信号を受信する前記ステップは、スケジューリングシステムにより制御される放送ソース装置をエミュレートすることにより制御信号を前記スケジューリングシステムから受信するステップを備える請求項1記載の方法。各制御信号が、放送プログラムと関連し、制御信号を受信する前記ステップは、前記制御信号と関連した放送プログラムのためのインタラクティブアプリケーションをスケジューリングし、開始し、停止し及び取消するようインタラクティブアプリケーションサーバに選択的に命令するため前記インタラクティブアプリケーションサーバへの1組のコマンドに前記制御信号を翻訳するステップを備える請求項1記載の方法。前記制御信号は、スケジューリングシステムにより、プログラム識別子及び放送プログラムを放送すべきときを記述する情報を含む一連の放送プログラムを定義するプレイリストに応答して発生される請求項1記載の方法。前記制御信号は、スケジューリングシステムにより、放送プログラムの放送を手動で制御するオペレータの動作に応答して発生される請求項1記載の方法。前記制御信号は、当該制御信号により制御される放送プログラムと関連して事前記録され且つ記憶される請求項1記載の方法。選択された放送プログラムの放送を準備するための準備制御信号を受信するステップと、選択された放送プログラムと関連したインタラクティブアプリケーションを決定するステップと、前記の決定されたインタラクティブアプリケーションの実行をスケジューリングするためのコマンドを発生するステップとを更に備える請求項1記載の方法。選択された放送プログラムの放送を準備するための開始制御信号を受信するステップと、選択された放送プログラムと関連したインタラクティブアプリケーションを決定するステップと、前記の決定されたインタラクティブアプリケーションの送信を開始するためのコマンドを発生するステップとを更に備える請求項1記載の方法。選択された放送プログラムの放送を準備するための開始制御信号を受信するステップと、選択された放送プログラムと関連したインタラクティブアプリケーションを決定するステップと、先に送信されたインタラクティブアプリケーションに対するトリガを送信することにより、前記の決定されたインタラクティブアプリケーションの実行を開始するためのコマンドを発生するステップとを更に備える請求項1記載の方法。選択された放送プログラムの放送を停止するための制御信号を受信するステップと、前記選択された放送プログラムと関連したインタラクティブアプリケーションを決定するステップと、前記の決定されたインタラクティブアプリケーションの実行を取り消すためのコマンドを発生するステップとを更に備える請求項1記載の方法。制御信号のため放送プログラムのタイプを決定するステップを更に備える請求項1記載の方法。インタラクティブアプリケーションのためのタイプを放送プログラムのタイプの関数として決定するステップを更に備える請求項17記載の方法。制御信号のための放送プログラムのタイプがテレビジョンショー、コマーシャル及び不明のもののうちのいずれであるかを決定するステップと、前記放送プログラムのタイプに適したインタラクティブアプリケーションのタイプを決定するステップとを更に備える請求項1記載の方法。前記スケジューリングシステムは、放送ソースを準備、開始及び停止するための各制御信号を与え、放送プログラムに対する準備信号を受信することに応答して、前記放送プログラムと関連したインタラクティブアプリケーションをスケジューリングするためのコマンドを発生し、且つ前記放送プログラムと関連した前記インタラクティブアプリケーションを開始するためのコマンドを発生するステップと、前記放送プログラムと関連したインタラクティブアプリケーションを開始するためのコマンドが既に発生された場合前記放送プログラムに対する受信された開始信号を無視するステップと、前記放送プログラムに対する停止信号を受信することに応答して、前記放送プログラムと関連した前記インタラクティブアプリケーションを停止するための停止コマンドを発生するステップとを更に備える、請求項1記載の方法。前記スケジューリングシステムは、前記制御信号内の識別コードの存在又は不在によりテレビジョンショーとコマーシャルとを選択的に区別する制御信号を与え、テレビジョンショー中におけるコマーシャルの放送を示す識別コードを含む制御信号を受信することに応答して、前記コマーシャルと関連したインタラクティブアプリケーションをスケジューリングするためのコマンドを発生し、前記インタラクティブアプリケーションを開始するためのコマンドを発生し、及び前記テレビジョンショーのためのインタラクティブアプリケーションが実行中であるか否かを決定し且つ前記テレビジョンショーのためのインタラクティブアプリケーションの実行を停止するためのコマンドを発生するステップと、コマーシャルに対する識別コードを含まない制御信号を受信することに応答して、前記コマーシャルと関連したインタラクティブアプリケーションを取り消すためのコマンドを発生し、及び前記インタラクティブアプリケーションを開始するためのコマンドを発生するステップとを更に備える、請求項1記載の方法。前記スケジューリングシステムは、各放送プログラム及びその継続時間を識別するデータを含む制御信号を与え、前記制御信号からの識別データ及び継続時間データを用いて、前記放送プログラムと関連したインタラクティブアプリケーションのスケジューリング、開始、停止及び取消を選択的に行うためのコマンド発生するステップを更に備える、請求項1記載の方法。インタラクティブアプリケーションと関連した各放送プログラムに対して、前記制御信号に応答して前記放送プログラムと関連した状態を介して遷移し、且つ前記放送プログラムの状態に対するインタラクティブアプリケーションのための所望の挙動と関連した選択された状態でコマンドを発生する第1の状態機械を維持するステップと、放送プログラムと関連したインタラクティブアプリケーションに対して、前記放送プログラムの状態機械からのコマンドに応答して前記インタラクティブアプリケーションと関連した状態を介するその遷移を行い、且つ前記放送プログラムとの前記インタラクティブアプリケーションの同期実行を維持するためのコマンドを選択的に発生する状態機械を維持するステップとを更に備える請求項1記載の方法。放送プログラムのためのインタラクティブアプリケーションの実行を制御するシステムにおいて、放送ソースの動作を制御する制御信号のソースと通信可能に結合するオートメーションサーバを備え、前記放送ソースは放送プログラムを与え、前記オートメションサーバは、放送プログラムのための制御信号から放送プログラムの状態、及び前記放送プログラムと関連したインタラクティブアプリケーションを決定し、且つ当該放送プログラムの状態に応答してコマンドを発生して、放送受信機上でのインタラクティブアプリケーションの実行と、表示装置上への前記放送プログラムの表示と同期して前記表示装置上への前記インタラクティブアプリケーションの表示とを制御し、前記コマンドを前記オートメションサーバから受信し、且つ前記インタラクティブアプリケーションと、前記放送受信機への放送のためのインタラクティブアプリケーションの実行を制御するための信号とを与える放送サーバを更に備え、前記オートメーションサーバが、前記制御信号から、前記放送プログラムに関連したインタラクティブアプリケーションを決定できなかった場合に、前記オートメーションサーバが、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブアプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生する、システム。しかし、以前には放送サーバは、既存のスケジューリングシステムと一体化されて、そのスケジューリングシステムからの制御信号に基づいてインタラクティブアプリケーションの制御を自動化するようにはなっていなかった。この点に関する困難の1つは均一性の欠如であり、上記のように、様々な種類のスケジューリングシステムを用いてそれらの放送ソースを制御する様々な制御信号は、放送ソースとインターフェースするように設計されている。このシステムは以前にはISCIコードなどに応答して対話性を制御するようにもなっていなかった。したがって、スケジューリングシステムと放送サーバとの間の有効なインタフェースを介して、同期的なインタラクティブアプリケーションを提供することが望ましい。[発明の概要]本発明は、他の放送プログラムおよび/または対話性による放送プログラムおよびその対話性の中断に左右されることなく、個々の放送プログラムとの対話性の同期的表示を維持するために、対話性の自動化された制御を提供する。本発明の一実施形態によれば、通常は放送ソースまたはサブタイトラsubtitlerなどの類似の装置を制御するためのみに用いられる制御信号が受信されて処理されて、放送サーバにコマンドを出力する。これらのコマンドは、放送受信機で対話性の実行を制御するように、放送サーバに選択的に命令する。そして、順に放送サーバは放送受信機にコマンドを送信し、放送受信機はそのコマンドを実行して対話性を制御する。本発明によって用いられる制御信号は、自動モードまたは手動モードで動作する従来の放送スケジューリングシステムからまたは、ビデオテープのように放送プログラムと共に信号を符号化した予め記録されたソースからなど、様々なソースから来る場合がある。上記のように、制御信号は通常、特定の種類の映像、音声または他の出力装置などの放送ソースを特に制御するようにフォーマットされている。また、制御信号はこれらのソースの放送を制御するだけで、対話性の実行に対する直接的または固有の関係は有していない。したがって、本発明は、制御信号を放送サーバに受容可能なコマンドに翻訳して、対話性の実行を選択的に制御する。本発明は、放送サーバからの状態情報を用いて、様々な放送受信機における対話性の実行の現在状態を判断してもよい。この状態情報は、スケジューリングシステムから、状況が変われば不透明なopaque制御信号に応答して、異なったコマンドが生成されることを可能にしている。本発明は、多様な異なった種類の放送スケジューリングシステムのために、対話性の自動化された同期制御を提供する。一般的に、様々な種類のスケジューリングシステムは、それらの制御信号で異なった量と種類の情報を提供する。特定の基本的スケジューリングシステムは、放送プログラムを開始、停止または準備することを示す制御信号を提供するだけであり、この信号はその放送プログラム用の放送プログラムIDを含む場合もある。この種類のスケジューリングシステムについて、放送プログラムたとえば、テレビジョンショーまたはコマーシャルの識別を用いて、放送プログラム用の付随するインタラクティブアプリケーションがあるかどうかを判断し、タイミング情報を用いて、インタラクティブアプリケーションを開始、停止、中止または再開すべきかどうかを判断する。適切なコマンドおよびデータを放送サーバに提供して、インタラクティブアプリケーションの放送を選択的に制御する。別の種類のスケジューリングシステムは、テレビジョンショーの間に放送されているコマーシャルプログラムを識別するために用いることができるが、それ以外にはテレビジョンプログラムテレビジョン番組自体を識別しない制御信号を提供する。本発明はこの情報を用いて、コマーシャルと関連づけられた対話性を識別し、それによって、コマーシャルが放映されるテレビジョンショーに付随する場合がある対話性を選択的に中止および再開するコマンドと共にコマンドを放送サーバに提供して、識別された対話性の放送を達成する。さらに別の種類のスケジューリングシステムは、放送プログラムをその継続時間と共に識別する制御信号を提供する。この場合に、本発明は、放送プログラムおよびその間に現れるコマーシャルに適切な対話性を、選択的に中止および再開することができる。一実施形態において本発明は、既存の従来の放送スケジューリングシステムとインタラクティブアプリケーションのサーバおよび他の形態の対話性との間をインタフェースして、スケジューリングシステムによって出力された制御信号に応答して、放送プログラムに付随する場合がある対話性の実行を選択的に制御する、オートメーションサーバを提供する。本発明によれば、オートメーションサーバは更に、放送サーバとインタフェースして、インタラクティブアプリケーションの実行を選択的に開始、取消、中止または再開するコマンドを放送サーバに提供する。スケジューリングシステムからの制御信号を用いて、オートメーションサーバはどの放送プログラムが放送されているかを判断し、各放送プログラムの状態に関する状態情報を生成して維持する。放送プログラムおよびそれらに関連づけられた対話性もしあればを識別する情報を用いて、オートメーションサーバは各インタラクティブアプリケーションの状態に関する状態情報も維持する。この状態情報とスケジューリングシステムからの制御信号とを用いて、オートメーションサーバは適切なコマンドを判断して、放送プログラムとインタラクティブアプリケーションとの間の同期を維持するために放送サーバに送信する。この同期的な挙動は、対話性がそれに関連づけられた放送プログラムが表示されるときに表示され、他のときには表示されないことにつながる。たとえば、本発明は、1つまたは複数のコマーシャル中断そのそれぞれが多数のコマーシャルを含む場合があり、それらのコマーシャルはそれら独自の対話性を有する場合があるによって区分されたテレビジョンショーに関する、インタラクティブアプリケーションの適切な同期的表示を提供する。本発明は、スケジューリングシステムの制御信号から、放送またはテレビジョンショーの間にコマーシャル中断がいつ発生したかを検出する。そして本発明は、コマーシャル中断が終了した後に同じテレビジョンショーのセグメントが他にないと安全に判断できるようなときまで、対話性を取り消すことなく、テレビジョンプログラムの対話性の実行を中止停止する場合がある。コマーシャル中断の間に、コマーシャルに適切な対話性が実行される。テレビジョンショーが再開される、すなわちテレビジョンショーの別のセグメントが放映されるのであれば、本発明は、前のセグメントと現在のセグメントとが関連していることを検出して、中止された対話性を再開して、コマーシャル中断の前に生成されていた場合があるあらゆる状態情報たとえば、現在のゲーム点数、様式データなどを再生する。コマーシャル中断の後にテレビジョンショーが再開されず、新しいテレビジョンショーが放送されるのであれば、本発明は再度放送プログラムのこの変化を検出して、前のテレビジョンショーに関する対話性を終了して、次のテレビジョンショーに関する対話性を開始する。本発明の一実施形態において、オートメーションサーバは複数のチャネルインタフェースを含み、そのそれぞれが特定のチャネルに関する制御信号を受信して管理する。各チャネルインタフェースはトランスレータモジュールおよびイベントマネジャを含む。トランスレータモジュールは、チャネル上の放送プログラムに関連したスケジュールシステムからのネイティブ制御信号を、一定な一組のアトミックコマンドに翻訳する。トランスレータは、各放送プログラムのライフサイクルに関する状態情報も維持する。イベントマネジャはアトミックコマンドを受信して、放送プログラムの対話性を制御するためにそれらを処理して放送サーバへのコマンドにする。イベントマネジャは、チャネル上のインタラクティブアプリケーションのライフサイクルに関する状態情報を維持して、この状態情報から、放送サーバへの適切なコマンドを生成する。別個のトランスレータおよびイベントマネジャの使用は、本発明が同じイベントマネジャを保持しながら、異なったトランスレータの使用によって異なったスケジューリングシステムと容易にインタフェースすることを可能にする。また、トランスレータモジュールとイベントマネジャとの分離は、オートメーションサーバが、トランスレータモジュールの変更を必要とすることなく、新しい種類のイベントマネジャを作成することにより異なった種類の放送サーバと潜在的にインターフェースすることを可能にする。この特徴は、オートメーションサーバが、将来開発される場合がある様々な基準に定められた対話性と協働することを可能にする。本発明のコンテキストにおいて、対話性は、放送プログラムとして同じ信号に入れて送信され且つ放送受信機において実行によりインタラクティブアプリケーション、あるいは、放送信号を受信する他のエンドユーザ装置、又はケーブルヘッドエンドか他の放送ソースで実行されるインタラクティブアプリケーション、従来のコンピュータ上で実行されて、放送プログラムと同期してインターネットまたは他のネットワーク上で放送されるインタラクティブアプリケーションまたは、放送プログラムから非同期に提供されて必要に応じて実行されるインタラクティブアプリケーションなど、あらゆる形式のインタラクティブアプリケーションによって提供される場合がある。本発明のオートメーションサーバは、ソフトウエア製品としてまたは、専用ハードウエアおよびソフトウエアを含むより大きいシステムまたは装置の一部として実施される場合がある。本発明は、放送プログラムと関連づけられた対話性の実行を制御する様々な方法として実施される場合もある。[好適な実施形態の詳細な説明]図1を参照すると、本発明に係るシステムの図が示されている。図1に示したシステムは、依然として本発明の特徴および利益を提供しながら、より大きくより複雑なシステムに組み込まれる場合があることが理解されるであろう。[A.システム概略]一般的に、システム100は、スケジューリングシステム106、オートメーションサーバ108,放送サーバ110、トラフィックシステム104、放送プログラムソース102、データ挿入ユニット116および送信機118を備えている。これらの構成要素は通常、ケーブルヘッドエンドでケーブルオペレータによって使用される実施形態において用いられる。他の設備における本発明の実施は確実に実現可能である。放送受信機BR120は、視聴者の家庭や事務所などにおいて遠隔的に分散されている。番組を受信する1人または複数人の者を、加入者または視聴者と呼ぶ。システム100は多数の放送局114と協働する。放送局114は、放送される番組素材をBR120に提供する。本明細書中で用いているように、放送局114は、放送信号で搬送されるプログラムを提供するあらゆる事業体である。プログラムは放送の独立したセグメントである。そのため、本明細書中で定義しているように、プログラムはテレビジョンショー、コマーシャル、公共サービスの発表やペイパービューイベントなどを含む。放送局はテレビジョンネットワークならびに、コマーシャルを制作する広告主やぺイパービュープロバイダ、ケーブルネットワークなどを含む。放送局114は、必要に応じて音声および他のデータを含む放送映像データを、プログラム素材を含むか生成する、ビデオカセットプレーヤ、ビデオレーザディスクプレーヤ、サブタイトラ、ビデオサーバ、文字生成器、オーディオカート機、スチルストアstillstores、デジタルエフェクトシステム、ライブスタジオフィードlivestudiofeedsやライブリモートフィールドフィードliveremotefieldfeedsたとえば、ライブスポーツイベントにおけるカメラからののバンクなどの、様々な放送プログラムソース102に提供する。放送映像データは、放送に必要になるまで放送プログラムソース102に記憶される。適当な放送プログラムソースは、Anaheim,CaliforniaのOdetics,Inc.製のTCS45AutomatedVideoLibrary、PaloAlto,CaliforniaのHewlett-Packard製のMediaStreamServerおよび類似の装置またはシステムを含む。トラフィックシステム104は、放送プログラムスケジュールを放送局114から受信する。放送プログラムソースは、放送局114によって提供されたどのプログラムがどの時間にどのチャネルで放送されるかを定める。放送局114によっては、コマーシャルプログラムが放送プログラムソースに含まれる場合もあり、スケジュールの時間枠が他の放送局114によって提供されるコマーシャルの挿入のために提供される場合もある。トラフィックシステム104は、多数の異なった放送局からの放送プログラムソースを、たとえばケーブルオペレータによって現場で生成された放送スケジュール情報と共に統合して、プレイリスト113を作成する。適当なトラフィックシステム104はColumbineJDSSystems,Inc.製のColumbineJDSである。一実施形態において、このプレイリスト113は放送に先だって作成され、特定の時間に放送されるプログラムを識別する。プレイリスト113は、各プログラム、その開始および終了の時間、チャネルおよびネットワークの割当を識別するのに十分な情報を含むことが好ましい。また、特定の時間における各プログラムについて、そのプログラムを出力することになる特定の放送プログラムソース102を識別する情報がある場合もある。スケジューリングシステム106は、手動または自動の制御部品あるいは両方ならびに適当な切替装置を含む場合もある。スケジューリングシステム106はさらに、どの放送プログラムがどの時間にどの放送プログラムソース102を用いて放送されるかを記載したプレイリスト113を受信する。その手動および/または自動の部品を介して、スケジューリングシステム106は、どのプログラムソースが任意の所与の時間にどの放送媒体に出力されるかを制御するために、放送プログラムソースを個々の放送媒体に結合する。より特定的には、スケジューリングシステム106は、様々な放送プログラムソース102向けにフォーマットされ、通常はそれらにのみ重要である、ネイティブ制御信号を出力する。自動および手動の部品の種類および複雑さは様々であり、そのためそれらが提供する制御信号の種類も同様である。スケジューリングシステム106の手動部品は、必要に応じて放送プログラムソース102を手動で選択および作動し、同様にオートメーションサーバ108によって受信される対応する制御信号を生成するためにオペレータによって用いられる。オートメーションサーバ108への制御信号のさらに別のソースは、放送ソース102における放送データと共に含まれる、予め記録された制御信号を含む。そのため、特定の放送プログラムに適した制御信号を予め生成して、適切な時間に放送プログラムのビデオテープに記憶することができる。このような制御信号の記憶は、放送プログラムを記憶するあらゆる媒体に行うことができる。あるいは、制御信号はそれらの放送プログラムとは別の媒体に予め記録して記憶するが、それらと共に再生されるようにしてもよい。あるいは、制御信号は、たとえばVITCタイムコード生成器またはNORPAKデータ挿入ユニットを用いて、リアルタイムで放送データに埋め込んでもよい。また、制御信号を得る方法は、スケジューリングシステム106からのプッシュpushまたはスケジューリングシステム106をポーリングすることの何れによっても行うことができる。放送サーバ110は、本明細書中で説明している機能性を提供する、1つまたは複数のソフトウエアプログラムを実行するコンピュータシステムであることが好ましい。適当な放送サーバは、Alameda,CaliforniaのWinkCommunications,Inc.製のWinkBroadcastServerである。放送サーバ110はインタラクティブアプリケーションデータベース112を含む。インタラクティブアプリケーションデータベース112は、様々な遠隔的に分散されたBR120に放送される、インタラクティブアプリケーションまたは他の形態の対話性を記憶する。インタラクティブアプリケーションおよび他の形態の対話型コンテンツは、放送局114または他のプログラム供給者によってインタラクティブアプリケーションデータベース112に付加されてもよく、安全なネットワークリンクまたは他の送信媒体によってデータベース112に送信されてもよい。データベース112内のフィールドは、インタラクティブアプリケーションを、たとえば特定の放送局、ネットワーク、チャネル、放送プログラムおよび/または放送時間と関連づける。また、データベース112内の各インタラクティブアプリケーションは、それを識別できる独特のインタラクティブアプリケーション識別コードを有することが好ましい。放送プログラム識別コードとのインタラクティブアプリケーション識別コードの関連づけ放送ソースによって用いられるようなは、放送サーバ112がプログラム識別コードを受信したことに応答してインタラクティブアプリケーションを選択的に検索することを可能にする。参照を容易にするために、インタラクティブアプリケーションという用語は、本明細書中で説明しているか開示されたものに均等な放送プログラム用のあらゆる形態の対話性を包含する。本発明の一実施形態において、データベース112に記憶されたインタラクティブアプリケーションをコンパクトコミュニケーションプロトコルによって説明する。コンパクトプロトコルは効率的な方法でシステム部品間でコンパクトな一組の情報およびコマンドを放送するように設計されており、それにより、垂直帰線消去期間VBIなどの低帯域幅伝達の使用を可能にする。本発明の好適な実施形態は、本明細書中で説明するコンパクトプロトコルを用いるが、インタラクティブアプリケーションは、たとえばハイパーテキストマークアップ言語HTML、拡張可能なマークアップ言語XML、SUNMICROSYSTEMSINC.のJAVA言語またはHTMLベースの対話型テレビジョンプロトコルATVEFを含む、他のプロトコルによって記述されてもよい。裏付け定義supporteddefinitions、スクリプトおよびコマンドを含む、インタラクティブアプリケーションに適した1つのコンパクトプロトコルの詳細な説明は、機密情報をルート付ける方法及び装置MethodandApparatusforRoutingConfidentialInformationという名称の米国特許第5,689,799号に記載されており、参照することにより本明細書に援用される。以下でさらに説明しているように、インタラクティブアプリケーションはそれら自体が、放送受信機120の動作を構成および制御する実行可能なコードおよびデータからなるソフトウエア製品である。複数の放送サーバ110がある場合もあり、各放送サーバ110は特定の地域、一群の放送局または一群の加入者にサービスを提供する。一実施形態において、各放送サーバ110は独特なサーバ識別コードによって識別される。一般的に、放送サーバ110は、どのインタラクティブアプリケーションを特定の時間に特定のチャネルで放送すべきかを判断し、その特定のチャネルおよび時間または放送プログラム識別コードに対応するインタラクティブアプリケーションをデータベース112から検索して、放送用のインタラクティブアプリケーションを作成する。様々な時間やチャネルなどでどのインタラクティブアプリケーションが放送されるかを判断するために、放送サーバ110はトラフィックシステム104から放送される放送プログラムのプレイリスト113を受信する。放送サーバ110はこの情報を用いて、各放送プログラムに付随する、対応するインタラクティブアプリケーションもしあればを識別してデータベース112から検索する。放送サーバ110はさらにコマンドを出力し、これらはBR120に放送されて、BR120に受信されるか既に受信されたそのメモリに常駐する場合があるインタラクティブアプリケーションを、開始、停止、取消、中止または再開するようにBR120に命令する。放送サーバ110は検索したインタラクティブアプリケーションを必要に応じてフォーマットするなどして、放送信号への挿入のために準備する。放送局114から受信したプレイリスト113を用いて、放送サーバ110はインタラクティブアプリケーション115および/または様々なコマンドをデータ挿入ユニットDIU116に渡して、プログラムの放送と同時にインタラクティブアプリケーション115を放送データ117に組み込む。DIU116はインタラクティブアプリケーション115または放送サーバ110からのコマンドおよび、インタラクティブアプリケーション115に対応する放送プログラムを搬送する放送信号すなわちフィードfeedを受信する。放送フィードは放送プログラムソースである放送局114から直接、あるいは、放送局がフィードを提供しない場合には、ネットワーク、ケーブルオペレータまたはローカルテレビジョン局などの第三者から受信する場合がある。DIU116はインタラクティブアプリケーション115およびコマンドを、放送データ117として、放送局フィードへの挿入およびそれと共に行う送信に適したフォーマットに変換する。DIU116は多数の放送局からフィードを受信してもよく、別個のインタラクティブアプリケーションを各フィードに挿入できる。同様に、DIU116は、別個のインタラクティブアプリケーションを同じまたは異なった放送局114からの多数のチャネルに同時に挿入できる。DIU116は、インタラクティブアプリケーション、コマンドおよび放送プログラムを含む放送データ117を放送媒体に挿入する。放送媒体はインタラクティブアプリケーション115を搬送するために用いられる周波数スペクトルである。一実施形態において、放送媒体は、ナショナルテレビジョンスタンダードコミティーNTSC基準に準拠した標準アナログテレビ信号であり、VBIはインタラクティブアプリケーションを放送するためにトランスポートとして用いられる。トランスポートはインタラクティブアプリケーション115を搬送する放送媒体の特定の部分である。別の実施形態において、放送媒体は1つまたは複数のMPEG2ビデオサービスを含む標準MPEG2デジタルビデオマルチプレックスであり、このマルチプレックス内のMPEG2エレメンタリストリーム単数または複数はトランスポートとして用いられる。DIU116はアナログまたはデジタル映像ソースと共に動作してもよく、その代わりに、放送局114または放送ソース102を様々な送信機118に直接接続する広域ネットワークへのインタフェースとして動作してもよい。一実施形態において、DIU116は従来の方法を用いて、インタラクティブアプリケーションを定めるデータを放送フィードのVBIに挿入する。ノースアメリカンブロードキャストテレテキストスタンダードEIA-506は、VBIの1つまたは複数の線においてデータを送信する方法およびプロトコルを定めている。しかし、テレビジョンプログラムとは別にインタラクティブアプリケーション115を放送するものを含め、多種多様な他のトランスポート移送機構が利用可能である。かかるトランスポート機構は、テレビジョン周波数スペクトルの未使用部分でインタラクティブアプリケーション115を送信する帯域外送信機および、テレビジョン周波数スペクトルの外でインタラクティブアプリケーション115を送信する従来の周波数変調FM無線送信機を含む。別の実施形態において、DIUは従来の方法を用いて、データをMPEG2マルチプレックス内のエレメンタリストリームに挿入する。一実施形態においては、ハミング符号などの誤りチェック符号または誤り訂正符号がデータと共に挿入される。一実施形態においては、DIU116はデータをハミング符号に変換し、別の実施形態においては、DIU116によって放送サーバ110から受信されたデータは既に符号化されている。DIU116は、放送サーバ110からの、あらゆる挿入されたインタラクティブアプリケーションまたはコマンドを含む放送フィードを送信する送信機118に結合されている。一実施形態において、送信機118はフィードをローカルアップリンク受信機に送信する衛星アップリンクであり、ローカルアップリンク受信機はケーブルを介してフィードをBR120に配信する。別の実施形態において、送信機118は従来のケーブルシステムヘッドエンド増幅器である。さらに別の実施形態において、送信機118は従来のテレビジョン放送送信機または高品位テレビジョンデジタル送信機である。またさらに別の実施形態において、送信機118は、WAN接続、インターネットまたは他の公的/私的ネットワーク上で放送データを送信することができる。別の実施形態において、DIU116はインタラクティブアプリケーション115を、放送プログラムが放送される前にその放送プログラムに挿入する。たとえば、DIU116はインタラクティブアプリケーションをテレビジョンコマーシャルのソースコピーに挿入してもよい。したがって、インタラクティブアプリケーションはコマーシャルが放送されるときはいつでも放送される。この実施形態において、放送サーバ110は、インタラクティブアプリケーションの検索をプレイリストに列挙されたスケジュールと同期させる必要はない。しかし、オートメーションサーバ108は、コマーシャルの放送中のかかる放送されたインタラクティブアプリケーションおよび、コマーシャルが放送されるテレビジョンプログラム中に放送されるあらゆるインタラクティブアプリケーションの動作の同期化を制御するために依然として用いられるであろう。送信方法および挿入時間にかかわらず、インタラクティブアプリケーションを含む放送データ117は加入者のBR120によって受信される。単一のBR120のみを図1に示したが、典型的な実施形態においては、本明細書中で説明しているように放送データ117を受信して応答する、何百、何千というBR120があることが理解される。典型的な実施形態においては、BR120は同軸ケーブルを介してデータ117を受信するテレビジョンセットトップボックスである。また、BR120はテレビジョンに一体化してもよい。さらに、NTSC放送受信機、高品位テレビジョンデジタル受信機、ビデオカセットレコーダまたはFM無線受信機を含む他の放送受信機を用いることもできる。上記のアーキテクチャは多数の有用な実施形態を支持し、それらの実施形態においてオートメーションサーバ108は放送サーバ110を制御して、放送プログラムとの同期的挙動を達成するために様々なタイプおよびフォーマットのデータを送信する。まず、放送サーバ110は、インタラクティブアプリケーションとは別に、またはそれらに加えて、他の種類のデータを送ってもよいことに留意されたい。たとえば、放送サーバはコンピュータプログラムまたは音声/映像データなどのデータを提供してもよい。放送サーバは、以前に放送受信機に送信されたインタラクティブアプリケーションに、データ、様式、コードまたはトリガを提供してもよい。これらの様々なタイプのデータは、オートメーションサーバ108からのコマンドに応答して、本発明に従って送信してもよい。たとえば、放送サーバは、インタラクティブアプリケーションおよびそれに関連づけられた放送プログラムが現れる時間に十分先立って、インタラクティブアプリケーションを放送受信機に送出してもよい。そして、オートメーションサーバ108からのコマンドに応答して、放送サーバ110は、放送プログラムと同期して実行するように、以前にロードされたインタラクティブアプリケーションの実行をトリガするトリガコードを送出してもよい。同様に、オートメーションサーバ108に応答して、放送サーバ110は様式または他のデータを送信して、既に放送受信機に常駐しているインタラクティブアプリケーションの特徴、ユーザインタフェースまたは機能性を更新または修正してもよい。これは、オートメーションサーバ108が、スケジューリングシステム106からの制御信号に応答して、インタラクティブアプリケーションを操作または変更することを可能にする。放送サーバ110は、やはりオートメーションサーバ108からのコマンドに応答して、テキスト、グラフィクス、画像、ユニフォームリソースロケータURL、ユニフォームリソースアイデンティファイアURI、HTML、XML、ATVEF、JAVAアプレットなどのハイパーメディアデータあるいは他の種類またはフォーマットのデータを送ってもよい。たとえば、テレビジョンショーの開始を示す制御信号を提供するスケジューリングシステム106に応答して、オートメーションサーバ108は放送サーバ110に、ウェブサイトまたはウェブページへのURLを放送受信機に送信するように命令してもよく、放送受信機は、ウェブサイトのテレビジョンショーとの同期的表示のために、ユーザへの表示のためにウェブサイトをロードする。オートメーションサーバ108からのコマンドに応答して放送サーバ110によって送られる場合があるこれらまたは他の種類のデータのいずれについても、インタラクティブアプリケーションデータベースまたはその類似物は、放送プログラム用の放送プログラム識別子と関連したデータを記憶する。これは、オートメーションサーバ108が、スケジューリングシステム106の制御信号から放送プログラム識別子を与えられると、送られる適切なデータを判断することを可能にする。[B.放送受信機]図2は、本発明の実施形態によるBR120の実施形態を示している。一実施形態において、BR120はGeneralInstrumentCFT-2200CATVセットトップデコーダである。BR120は送信機118から放送データ117を受信するチューナ202を備えている。一実施形態において、チューナ202は従来のケーブルテレビジョンチューナである。他の実施形態においては、チューナはテレビジョン放送チューナ、FM無線チューナ、デジタルチューナまたは他の何らかの形態のチューナである。さらに別の実施形態においては、適切なハードウエアおよびソフトウエアを備えたパーソナルコンピュータが、ケーブル、インターネットおよび衛星を含む様々な種類の送信チャネル上で受信された放送プログラムを表示するように機能してもよい。図2に示した実施形態は、BR120内の、通常はテレビジョンであるディスプレイ218を示している。上記のように、ディスプレイ218はBR120の外部に設けてもよい。BR120は、放送データ117からインタラクティブアプリケーションを抽出するために、チューナ202に結合されたデータ抽出器206も備えている。一実施形態において、データ抽出器206は従来のVBI帯域内データ抽出回路である。別の実施形態においては、データ抽出器206は従来のモデムである。データ抽出器206は、抽出されたインタラクティブアプリケーションを含むシリアルビットストリームをバス208に提供する。バス208は、バス208を介して、第2の記憶装置214に記憶されたプログラムによって命令されるように、抽出されたインタラクティブアプリケーションを第1の記憶装置212に記憶するマイクロプロセッサ210に結合されている。一実施形態において、マイクロプロセッサ210は、抽出されたでデータからの誤り符号情報を用いて、復号されたインタラクティブアプリケーション内の誤りをチェックまたは修正する。一実施形態において、第1の記憶装置212は従来のランダムアクセスメモリRAMであり、一方、第2の記憶装置214は従来のリードオンリメモリROMである。RAMまたはフラッシュメモリであってもよい第3の記憶装置213は、リマインダデータを記憶するためにマイクロプロセッサ210に結合されている。フラッシュメモリの利点は、BR120に常駐するソフトウエアまたはデータを、受信したインタラクティブアプリケーションによって修正できることである。一実施形態において、BR120は放送データ117から時間信号を抽出するためにデータ抽出器206も用いる。時間信号は、協定世界時UTCまたは加入者の地域時間などの標準時間軸を用いて現在時間を示す。別の実施形態においては、BR120は、加入者または受信した時間信号のいずれかによって設定されるリアルタイムクロックを有する。それにもかかわらず、BR120は上記現在時間にアクセスすることが好ましく、したがって、データスタンピングおよび計時の機能を行うことができる。下記のように、マイクロプロセッサ210は、第2の記憶装置214に記憶されたプログラムおよび、第1の記憶装置212に記憶されたインタラクティブアプリケーションを用いて、インタラクティブアプリケーションを実行して出力を提供する。第2の記憶装置214に記憶されたプログラムは、様々なスクリプト、様式、定義ならびに符号およびグラフィックリソースによって定められたインタラクティブアプリケーションを実行する実行エンジン217であることが好ましい。好適な実行エンジンは、Alameda,CaliforniaのWinkCommunications,Inc.によって提供されるWinkEngineである。放送局受信機120は、実行エンジン217または、やはり第2の記憶装置214に記憶されたネイティブnativeオペレーティングシステム219のいずれかの一部として、入力値からカウントダウンするバックグラウンドプロセスとして実行できるタイマ機能または同等の計時仕様を含む。インタラクティブアプリケーションを実行することによる出力は、たとえば情報またはメニューをテレビジョン視聴者に提示するか視聴者入力を受信する様式であってもよく、あるいは、BR120またはテレビジョン使用データを含むか視聴者の好みを示す、サイレントや、そうでなければ別の応答であってもよい。本発明の目的に対して、様式はあらゆる様々な情報を提示して、あらゆる様々なユーザ反応を得てもよい。そのために、BR120は、バス208に結合されており、第1の記憶装置212に記憶されたインタラクティブアプリケーション115および第2の記憶装置214に記憶されたプログラムによって駆動される、グラフィックオーバレイ発生器216を含むことが好ましい。グラフィックオーバレイ発生器216は、インタラクティブアプリケーション115に応答してグラフィックディスプレイを発生する。このグラフィックディスプレイは、BR120に結合された通常はテレビジョンであるディスプレイ218に表示される。もちろん、グラフィックオーバレイ発生器216は通常、インタラクティブアプリケーションがサイレントで実行されるときには用いられない。一実施形態において、グラフィックオーバレイ発生器216は、チューナ202からの放送プログラムに対応する放送信号も受信して、たとえば、データを表示された様式に入力するために、放送プログラムとインタラクティブアプリケーション115のグラフィックな側面もしあればとの同時表示を可能にする。一実施形態において、マイクロプロセッサ210は、ユーザ入力受信機224に結合されたユーザ入力デコーダ222にも結合されており、インタラクティブアプリケーション115に応答するために、ユーザがマイクロプロセッサ210と通信することを可能にする。一実施形態において、ユーザ入力デコーダ222は従来の赤外線遠隔制御デコーダである。ユーザ入力受信機224は、ユーザが従来の携帯遠隔制御装置を用いることができるようになる、従来の赤外線受信機224であることが好ましい。ユーザが押下した遠隔制御キーは、ユーザ入力受信機224によって受信された符号化された赤外線信号に変換され、ユーザ入力デコーダ222によって復号され、マイクロプロセッサ210に送られて、ユーザがインタラクティブアプリケーション115と通信することを可能にする。一実施形態において、BR120は、広帯域同軸ケーブルを介してケーブルシステムに接続された、ケーブルテレビジョンセットトップデコーダである。この実施形態において、ラインドライバ230は、通常はRFスペクトルの帯域外部分を用い、同軸ケーブルを介してケーブルシステムヘッドエンドに応答を送信できるRFモデムであり、通信ポート232は標準RFタップである。別の実施形態においては、BR120は、ラインドライバ230が標準電話モデムであり、通信ポート232が標準RJ-11ジャックである、テレビジョン、VCRまたはセットトップである。マイクロプロセッサ210は従来の赤外線コマンドエンコーダ226に結合されてもよく、この赤外線コマンドエンコーダ226は、赤外線コマンド入力を受け入れて、従来の赤外線送出器228用の信号を符号化し、インタラクティブアプリケーション115が外部装置を制御することを可能にする。[C.インタラクティブアプリケーションの実行]図3は、本発明の好適な実施形態によるコンパクトな情報プロトコルを用いて、インタラクティブアプリケーションを受信して実行するステップを示したフローチャートである。BR120は、放送サーバ110によって作成され、DIU116によって挿入され、送信機118によって送信されたアプリケーションヘッダ記録を受信して復号する310。アプリケーションヘッダ記録は、インタラクティブアプリケーション識別コードに従いそれらを含む情報を記載している。インタラクティブアプリケーションのリマインダ機能は、任意の順序で符号化されて放送されるかもしれない定義、スクリプトおよびコマンドによって記載される。定義、スクリプトおよびコマンドはBR120によって受信されて復号され312、リマインダインタラクティブアプリケーションを実行する314ときに用いられるリマインダパラメータおよび応答パラメータを定義する。受信されたリマインダインタラクティブアプリケーションのいくつかまたは全ては、BR120内に記憶される312場合がある。一実施形態において、インタラクティブアプリケーションは繰り返し放送されて、インタラクティブアプリケーション全体を受信していないときはいつでも、BR120が放送プログラムに同調することを可能にする。記憶されたインタラクティブアプリケーションに対するあらゆる所望の更新を受信して復号してもよい316。追加のまたは更新された定義、スクリプトまたはコマンドがある場合には、これらはアプリケーションが完了する318まで送ってもよい。一実施形態においては、インタラクティブアプリケーションを停止する320ために終了コマンドが放送されてもよい。新しいインタラクティブアプリケーションは、元のアプリケーションが実行されているか応答を送信している間を含む、あらゆるときに送信してもよい。たとえば、コマーシャルに対応する新しいインタラクティブアプリケーションは、ニュース番組に対応する元のアプリケーションを中断してもよく、本発明は、後者のアプリケーションが前者の終了時に動作を再開することを可能にする。URLなどの対話性の異なった形態を用いた他の実施形態において、放送受信機120は、対話性の種類に合うように、適切な復号、構文解析および実行の機能を提供する。そのため、URLタイプのデータについては、放送受信機120は、ブラウザおよび、ウェブページ、JAVAアプレットなどを検索、ロードおよび表示する適切な機構を備えてもよい。[D.オートメーションサーバ][1.オートメーションサーバの挙動に関する概要]オートメーションサーバ108はスケジューリングシステム106とインタフェースして、後者が放送プログラムソース102に提供する制御信号を受信する。さらに、オートメーションサーバ108は、放送サーバ110に通信可能に結合されて、どのインタラクティブアプリケーションが放送の準備をされているかまたは、現在どのチャネル上で放送されているかに関する状態情報を受信する。オートメーションサーバ108は、そのプレイリストを含む状態情報および制御信号を用いて、放送サーバ110に対する特定のコマンドを生成する。これらのコマンドは、放送サーバ110に、放送されるインタラクティブアプリケーションの準備、または現在放送されているインタラクティブアプリケーションの実行を選択的に制御するように命令する。特に、オートメーションサーバ108は、制御信号に応答して放送サーバ110に対する、インタラクティブアプリケーションの実行を予定スケジュール、開始、停止または取消するコマンドを生成する。オートメーションサーバ108はこれらのコマンドのシーケンスを生成して、コマーシャルおよびテレビジョンショーの両方ならびに他の放送プログラムに関する適切な対話性の、表示および/または終了を含む同期的な実行を達成する。スケジューリングシステム106からの制御信号は、明示的か暗示的かのいずれかで特定のチャネルと関連づけられる。制御信号の性質、そのチャネル割当およびプレイリスト情報から、オートメーションサーバ108は、適切と思われる場合に、放送中の現在の放送プログラムまたは放送される次の放送プログラムの状態および種類を判断する。特に、オートメーションサーバ108は、制御信号が、現在放送されているプログラムがテレビジョンショーかコマーシャルかを示しているかどうかを判断する。コマーシャルが特定のチャネル上で放送を始めたことを示す制御信号すなわち、コマーシャルに関する放送データを再生する、放送ソースの1つへの制御信号を受信したことに応答して、オートメーションサーバ108はインタラクティブアプリケーションが現在そのチャネル上で実行されているかどうかを判断し、もしそうであれば、放送サーバ110に対する、インタラクティブアプリケーションの実行を中断停止するコマンドを生成する。放送サーバ110はこのコマンドを放送受信機120に送信する。適切なチャネルに同調された放送受信機は、インタラクティブアプリケーションの実行を中断する。しかし、放送受信機120はコマーシャルが一旦終了するとインタラクティブアプリケーションを再度実行する必要があるので、オートメーションサーバ108はインタラクティブアプリケーションを取り消さないことにより、インタラクティブアプリケーションは直ちに再度実行可能になるべきであり、コマーシャルが始まったときに有していた状態情報を保持すべきである。オートメーションサーバ108は、コマーシャルと関連づけられたインタラクティブアプリケーションがあるかどうかを判断してもよい。もしあれば、オートメーションサーバ108は放送サーバに、インタラクティブアプリケーションを送信してその実行を行わせるように命令する。コマーシャルと特に関連づけられたインタラクティブアプリケーションがなければ、オートメーションサーバ108は放送サーバに、デフォールトのインタラクティブアプリケーションの実行を始めるように信号で命令してもよい。ある時点で、オートメーションサーバ108はコマーシャルが終了したことを示す制御信号を受信する。この制御信号に応答して、オートメーションサーバ108は放送サーバ110に対する、インタラクティブアプリケーションの実行を再開するコマンドを生成し、放送サーバ110は放送受信機120にコマンドを送信する。適切なチャネルに同調された放送受信機はこのコマンドを受信して、テレビジョンプログラムに関するインタラクティブアプリケーションの実行を再開する。ここで視聴者によって認められる効果は、元のテレビジョンショーに付随したインタラクティブアプリケーションはコマーシャルの間にテレビジョン画面から排除されていることである。コマーシャルに対して特定のインタラクティブアプリケーション、すなわちデフォールトのアプリケーションは、コマーシャルの間に実行されて表示される。このコマーシャルが終了してテレビジョンショーが再開されると、テレビジョンプログラムのインタラクティブアプリケーションが再度現れる。インタラクティブアプリケーションが再度現れると、それはコマーシャルの前に有していた状態情報たとえば現在のスコアを有しており、それによってインタラクティブアプリケーションに関する視聴者の使用を保持する。テレビジョンショーなどの放送プログラムは、コマーシャル期間によって区分されたこのフォーマットの多数のセグメントを有することが典型的である。テレビジョンプログラムと関連づけられた対話性は、セグメントのそれぞれの全体を通してその状態情報と共に一貫して利用可能であるべきである。オートメーションサーバ108は、多数のセグメントが実際には単一のテレビジョンショーまたは他の放送プログラムの部分であり、それによって同じインタラクティブアプリケーションと関連づけられているかどうかを判断するために、制御信号から抽出された情報を相関させ、放送される各セグメントを識別することによりこの結果を達成する。他の場合では関連のないセグメントをそのように相関させることで、オートメーションサーバ108は、多数のコマーシャル期間全体にわたってテレビジョンプログラムの単一のインタラクティブアプリケーションを適切に中止して再開することができる。このプロセスは以下で図12を参照してさらに詳細に説明する。オートメーションサーバ108は、インテルのチップセットおよびマイクロソフト社のオペレーティングシステムを用いたものなどの、従来のワークステーションやパーソナルコンピュータ上で実行されるソフトウエア製品として実施されてもよく、あるいは専用ASICまたは他のハードウエアの実施形態において符号化されてもよい。[2.オートメーションサーバの機能に関する概要]ここで図4を参照すると、本発明の一実施形態に係るオートメーションサーバ108の機能アーキテクチャの図が示されている。この実施形態において、オートメーションサーバ108はインタフェースマネジャ400を含む。このインタフェースマネジャ400は、複数のチャネルインタフェース402を管理しており、そのそれぞれが1つまたは複数のチャネルと関連づけられている。各チャネルインタフェース402は、スケジューリングシステム106からその割り当てられたチャネルについての制御信号を受信して、放送サーバ110にコマンドを出力する。ここで図5を参照すると、チャネルインタフェース402の機能構造が示されている。各チャネルインタフェースモジュール402は、トランスレータモジュール502およびイベントマネジャ504を含む。トランスレータモジュール502は、スケジューリングシステム106から制御信号を受信して、これらの信号をアトミックコマンドに変換する。イベントマネジャ504はアトミックコマンドを受信して、それらを放送サーバ110が理解するコマンドに加工する。[3.インタフェースマネジャ]図6を参照すると、インタフェースマネジャ400のライフサイクル相互作用図が示されている。インタフェースマネジャ400は、異なったスケジューリングシステム106について全てのチャネルインタフェース402を作成して維持する。インタフェースマネジャ400は3つの主要なフェーズ、すなわち初期化フェーズ、ランニングフェーズ実行フェーズおよび遮断フェーズを有する。オートメーションサーバ108は、始動するとインタフェースマネジャ400を作成して602それを初期化する。この初期化フェーズの間に、インタフェースマネジャ400は初期化iniファイルを呼んで604、スケジューリングシステム106と協働するために必要な異なったチャネルインタフェース402を作成して606初期化する608。インタフェースマネジャ400は、一旦全ての必要なオブジェクトを作成して初期化すると、ランニングフェーズに移行する。このフェーズの間に、インタフェースマネジャ400は各チャネルインタフェース402に動作するように要求する610。通常、オートメーションサーバ108およびそのインタフェースマネジャ400は、長時間にわたってランニングフェーズに留まる。しかし、回復不可能な誤りがあるときや、オートメーションサーバ108をアップグレードする必要が場合には、オートメーションサーバ108は遮断される。この遮断フェーズの間に、インタフェースマネジャは各チャネルインタフェース402に遮断するように要求する612。図7を参照すると、各チャネルインタフェース402に関するライフサイクル相互作用図が示されている。図4に示したように、各チャネルインタフェース402はトランスレータモジュール502およびイベントマネジャ504を含む。チャネルインタフェース402も3つの主要なフェーズ、すなわち初期化フェーズ、ランニングフェーズおよび遮断フェーズを有する。初期化フェーズの間に、それはトランスレータモジュール502およびイベントマネジャ504を作成して702初期化する704。イベントマネジャ504の初期化パラメータは次の情報を含む。各イベントタイプごとに放送サーバイベントをどのように構成するか。インタラクティブアプリケーションをどこでみつけるか。オートメーションサーバのタイミングを微同調するためのパラメータ。放送サーバにどのように接続するか。放送サーバからの突然の切断にどのように応答するか。イベントは事前に予定されているか。トランスレータモジュール502の初期化パラメータは次の情報を含む。スケジューリングシステムにどのように接続するか。スケジューリングシステムからの突然の切断にどのように応答するか。異なった放送局によって異なった方法で用いられることがあり得る場合に、特定のコマンドをどのように解釈するか等の、スケジューリングシステム特定のパラメータ。スケジューリングシステムからのコマンドをどのように呼んで解釈するかに関する微同調。コマーシャルをショーと区別するために用いられる通常の表現または他の情報。ランニングフェーズの間に、チャネルインタフェース402は無限ループイベントループに入って708、スケジューリングシステム106からのあらゆる制御信号を処理する。チャネルインタフェース402は、別個のオートメーションサーバクライアントたとえば、遮断の要求から直接的に要求を受信してもよい。チャネルインターエース402はトランスレータモジュール502からアトミックコマンドを要求し710、それらがイベント関連であれば、イベントマネジャ504に渡す712。アトミックコマンドがヌルNullコマンドかエラーErrorコマンドであれば、チャネルインタフェース402はそれらのコマンド自体を処理する714。回復不可能な誤りが発生した場合には、誤りをログしてイベントループから出る715。遮断フェーズの間に、チャネルインタフェース402は遮断の要求を受信している716ので、トランスレータモジュール502およびイベントマネジャ504がはっきりと遮断できるように、その要求をそれらに送出する718。それらが一旦遮断すると、チャネルインタフェース402はそれ自体をクリーンアップし、イベントループから戻ってそれ自体を遮断する。[4.トランスレータモジュールの大要]各ブロードキャスト番組は特定のライフサイクルを有するものと理解される場合がある。このライフサイクルは、同様に基本的には各放送プログラムに対して状態機械として動作するスケジューリングシステム106によって管理される。しかし、スケジューリングシステム106は、放送プログラムに関する限定量の情報を、通常は放送ソースを制御するのに必要とされるだけ提供するに過ぎない。そして各放送プログラムについて、トランスレータモジュール502は、スケジューリングシステム106から受信する限定的な情報に関する状態機械挙動を再構築して、放送プログラムのライフサイクルを作成し直す。そしてこれは、放送プログラムに関連し得るインタラクティブアプリケーションを管理するために、イベントマネジャ504に適切なアトミックコマンドを提供することを許容する。そのため、図5に示したように、トランスレータモジュール502は、スケジューリングシステム106からの制御信号で識別する各独特な放送プログラムについて、状態機械510を作成して維持する。各トランスレータモジュール502は、それぞれが通信する種類のスケジュールシステム106に特定のものであり、スケジューリングシステム106から、トランスレータモジュール502が理解できる一連のイベントへの状態のマッピングを提供する。各種類のスケジューリングシステム106はそれぞれの制御信号で異なった種類の情報を提供するので、誤りや欠落情報などの原因を明らかにして、スケジューリングシステム106の暗示的な状態機械から、トランスレータモジュール502によって定義される状態機械へマッピングする必要がある。前述のように、様々な種類のスケジューリングシステム106があり、そのそれぞれが、異なったレベルの情報を有する、異なった種類の制御信号を出力するため、トランスレータモジュール502のそれぞれは、特定のタイプのスケジューリングシステム106に対応する。しかし、全てのスケジューリングシステム106は、最も完全な一連の制御信号を提供する理想的なスケジューリングシステム106に関して説明できるものと思われる。表1は、理想的なスケジューリングシステム106によって提供される制御信号の種類および、これら理想的な信号の種類のそれぞれに含まれるデータを記載している。これらの信号は、特定されたデータ全てが存在し、トランスレータモジュール502が放送プログラムの適切な状態を非常に容易に判断できて、イベントマネジャ504への通信に必要とされるデータを形成できるという意味で理想的である。非理想的なスケジューリングシステム106においては、トランスレータモジュール502は付加的な外部のデータ源を用いて、放送サーバ110のプレイリストなどのイベントマネジャ504に送信するための適切なデータおよび、インタラクティブアプリケーションのインタラクティブアプリケーションデータベースに含まれる放送プログラム識別子に対する関係についての情報を判断する。プリロード信号は、その後の時間に放送されることを見越して放送ソース106に放送プログラムをロードさせるために、通常はスケジューリングシステム106によって用いられる制御信号である。この信号は、ロードされる放送プログラムを固有に識別するプログラムIDを含むことが理想的である。チャネル識別は放送用のチャネルを特定するが、チャネルは暗示的であっても明示的であってもよい。継続時間は放送プログラムの継続時間を特定する。これは、スケジューリングシステム106からの明示的な停止信号がない場合に、インタラクティブアプリケーションを終了させるためにオートメーションサーバ108によって用いられる。プリロード信号は正確な時間に受信されてもされなくてもよい。すなわち、いくつかのスケジューリングシステムにおいては、正確に受信されるイベントの放送に先立つ何分の1秒の正確さで。他のスケジューリングシステムにおいては、イベントの放送に先立つ数秒から数時間に受信され得る。プリロールのイベント開始およびイベント停止信号は正確に計時しなければならない。ネイティブ制御信号が、プリロードと他の制御信号のいずれかの両方に用いられている場合には、それを正確に計時しなければならない。インタラクティブアプリケーションの位置場所は、放送プログラムに付随するように指定されたインタラクティブアプリケーションの位置を特定する。この位置はインタラクティブアプリケーションデータベース112内で特定されるか、インタラクティブアプリケーションが記憶されるファイルディレクトリ内へのパス名であってもよい。イベントタイプは放送プログラムのタイプを定める。タイプの数はシステム設計に左右され、テレビジョンショーとコマーシャルとの間で単に区別をつけるか、番組ガイド、クローズキャプションまたは他の種類の放送コンテンツをさらに識別してもよい。イベントタイプはイベントマネジャ504および表7に関して以下でさらに説明する。これらの信号およびそのデータコンテンツは理想的なスケジューリングシステム106に関するものであるので、実際のスケジューリングシステム106はこれらの信号のうちより少数および、特定されたデータのうちいくつかだけまたは両方を用いてもよい。しかし、トランスレータモジュール502およびイベントマネジャ504は、これらの制御信号からどのデータが失われていても動作して完了することにより、放送サーバ110を管理する。理想的な制御信号の場合、理想的なトランスレータモジュール502を定めることができる。この理想的なトランスレータモジュール502は、スケジューリングシステム106からの制御信号を、イベントマネジャ504によって用いられる一連のアトミックコマンドにマッピングする。そのため、この理想的なトランスレータは任意の放送プログラムのライフサイクルと、イベントマネジャ504がどのように放送プログラムのライフサイクルの異なった状態に応答して、その放送プログラムと関連づけられたインタラクティブアプリケーションの実行を制御する放送サーバ110に対するコマンドを生成することができるかを表す。表2は、トランスレータモジュール502によって生成されたアトミックコマンドを列挙している。放送サーバ110がインタラクティブアプリケーションをスケジューリングするには時間がかかるので、状況によっては、トランスレータモジュール502はインタラクティブアプリケーションが放送されている映像データと同期できるほど十分早くは、スケジュールアトミックコマンドを送信できないことがある。この場合に、インタラクティブアプリケーションは、何らかの他の手動または自動のプロセスによって放送サーバ110で予めスケジューリングすることができ、オートメーションサーバ108は、放送サーバ110にスケジューリングするように命令する代わりに、予めスケジューリングされたインタラクティブアプリケーションを探すことにより時間を節約できる。このモードにおいて、予めスケジューリングされたイベントは再度放送される場合があるので、オートメーションサーバ108はそれらを取り消さない。その代わりに、それらをスケジューリングしたプロセスが、それらを取り消すことに責任を負う。いずれか特定のスケジューリングシステム106用の実際のトランスレータモジュール502は、理想的なトランスレータモジュール502から得られる。ここで図8を参照すると、理想的なトランスレータ状態機械510の状態機械の記載が示されている。各放送プログラムは、制御信号によって定められた多数の状態を通って移行するものと理解されてもよい。状態機械は開始状態800で始動する。この状態から、トランスレータモジュール502はロードされた状態802に移行する。ロードされた状態802は、3つの異なった理想的な信号801、すなわちプリロード信号、プリロール信号または開始信号のいずれかから到達することができる。通常、トランスレータモジュール502によって受信された第1の制御信号801は、プリロード信号になるであろう。スケジューリングシステム106上では、この信号は放送プログラムがまさに放送されるところであることを示す。プリロード信号が以前に受信されていなければ、開始状態802へは、上記のように、プリロール信号でも到達する。プリロール信号も、放送プログラムがまさに放送されるところであることを示す。ロードされた状態802において、トランスレータモジュール502は、放送プログラムと関連づけられた適切なインタラクティブアプリケーションを判断して、その実行をスケジューリングする。トランスレータモジュール502は、放送プログラムに関する放送プログラムID、イベントタイプおよび関連づけられたインタラクティブアプリケーションの場所などの、この状態に関する理想的データにできるだけ近いものを判断する。イベントタイプは、テレビジョンショー、コマーシャルまたは不明など、放送プログラムのタイプを記載している。イベントタイプを以下でさらに説明する。ある場合には、トランスレータモジュール502は特定のチャネルと関連づけられているので、チャネル割当は暗示的であり、他の場合には、チャネルは制御信号に明示的に符号化されてもよい。より特定的には、トランスレータモジュール502は、現在時間と受信した信号とをログする。トランスレータモジュール502は、関連づけられたインタラクティブアプリケーションに関する放送プログラムIDを、制御信号に含まれる放送プログラムIDに設定する。必要であれば、トランスレータモジュール502は正規表現を用いてイベントタイプを計算する下記参照。そうでなければ、トランスレータモジュール502はイベントタイプを不明に設定し、インタラクティブアプリケーション自体に含まれるデータからイベントタイプを判断することをイベントマネジャ504に委ねる。必要であれば、トランスレータモジュール502は、インタラクティブアプリケーションの場所を放送プログラムIDになるようにも設定するが、やはりイベントマネジャ504が放送プログラムIDと放送プログラムのセグメント番号とに基づいて実際の位置を適当に判断する。そして、トランスレータモジュール502は、作成した理想的データを用いて、スケジュールコマンドを作成してイベントマネジャ504に出力する。このスケジュールコマンドは、放送プログラムに関する放送プログラムIDと関連づけられたインタラクティブアプリケーションがあるかどうかを判断して、もしあれば、識別されたインタラクティブアプリケーションを放送する準備を行うよう放送サーバに要求することを、イベントマネジャ504に命令する。次の状態は準備された状態804である。この状態には、プリロール信号または開始信号の何れかにロードされた状態802から到達する。プリロール信号または開始信号が受信された最初の信号801であった場合には、準備された状態804への自動的な移行もある。すなわち、これらの信号の何れかが最初の信号801として受信されたのであれば、トランスレータモジュール502は、ロードされた状態802、準備された状態804および放送中の状態806を通って自動的に移行する。準備された状態804は、イベントマネジャ504に送られたアトミックコマンドのタイミングを制御する。始動される前に、オートメーションサーバ108は、スケジューリングシステムの放送開始のどれくらい前にプリロール信号を受信できるかについて設計される。これは通常、1から10秒の間であり、通常はミリ秒で計測される。プリロール信号または開始信号を受信すると、理想的なトランスレータモジュールは準備された状態804に入る。準備された状態804はX-Yマイクロ秒の間一時停止することが好ましく、ここで、Xはどれほど早くプリロール信号が来るかであり、Yはイベントマネジャ504および放送サーバ110が放送プログラムに関するインタラクティブアプリケーションイベントを開始するのに必要とする時間の長さである。その時間が経過した後に、トランスレータモジュール502は自動的に放送中の状態806に移行して、そこでイベントが開始される。それはまた、他のイベント状態機械によって用いことができる開始信号805も生成する以下の放送停止状態に関する項を参照。X-Yがゼロ未満であるか制御信号が開始信号であれば、準備された状態804には全く待機しないことに留意されたい。その代わりに、すぐに放送中の状態806に移行して、放送サーバイベントができるだけ早く開始されることを可能にする。放送中の状態806は準備された状態804の後に自動的に発生する。この状態において、トランスレータモジュール502は開始アトミックコマンドを作成して、イベントマネジャ504に送信する。準備された状態804で導入された一時停止と組み合わされたときに、これはインタラクティブアプリケーションを開始して放送プログラムと共に実行を始めるという効果を有する。放送中の状態806の間に、二次トリガ809を形成する付加的信号が受信された処理されてもよい810。これらの二次トリガは、放送されるインタラクティブアプリケーションと関連づけられた付加的機能の実行につながり得る。イベント停止信号807はその放送を終わらせ、結果的に放送停止状態808になる。この状態はイベントを取り消す。すなわち、トランスレータモジュール502は現在の放送プログラムIDに基づいて取消コマンドを作成し、これをイベントマネジャ504に送って現在のインタラクティブアプリケーションを取り消す。この状態は、他のイベントと関連づけられた制御信号によってトリガすることができる。たとえば、スケジューリングシステムのネイティブ制御信号がイベント停止信号を含まないのであれば、次のイベントに関するイベント開始信号が前のイベントを停止させる。エラー信号に関しては、トランスレータモジュール502は現在の放送プログラムIDに基づいて取消コマンドを作成し、これをイベントマネジャ504に送って現在のインタラクティブアプリケーションを取り消す。このように、これらの状態はスケジューリングシステム106から見た各放送プログラムのライフサイクルを表している。この情報から、オートメーションサーバ108は、放送プログラムと関連づけられたインタラクティブアプリケーションに関する状態を判断して、その状態に関する放送サーバ110への適切なコマンドを生成する。したがって、トランスレータモジュール502は、これらの状態に対応する特定のチャネル上で放送プログラムを管理するように設計されている。より特定的には、トランスレータモジュール502は、それが受信する各放送プログラムIDに関する状態機械510を維持する。この状態機械は新しい放送プログラムIDが受信される度に作成され、スケジューリングシステム106が、放送プログラムが終了されたことを示すまで維持される。図9を参照すると、トランスレータモジュール502、特にそのマッピングロジック506の全体的動作のフローチャートが示されている。トランスレータモジュール502は、スケジューリングシステム106から制御信号を受信する900度に、その管理するイベントにその制御信号が関連するかどうかを判断する902。イベントは、エラー信号またはスタートアップ、遮断、エラーまたはシステムメッセージなどの他のデータとは逆の、放送プログラムIDまたは放送プログラムを表す他のデータによって示される。制御信号がイベントに関するものでなければ、トランスレータモジュール502はそれがエラー信号であるかどうかを判断する904。エラー信号は処理のためにイベントマネジャモジュール504に渡される906。制御信号がエラー信号でなければ、それは無視される910。信号がイベント信号であれば、トランスレータモジュール502は、イベントの放送プログラムIDを状態機械に対する鍵として用いて、マッピングロジック506を適用し、識別されたイベントが新しいイベントであるか、既に状態機械510が存在するイベントであるかを判断する。イベントが新しいイベントであれば、トランスレータモジュール502は放送プログラムIDおよびイベントに関する新しい状態機械510を例示し912して、状態機械510を開始する914。既存の状態機械があれば、イベント制御信号は放送プログラムIDと関連づけられた状態機械510に渡される916。そして、状態機械510は、理想的な状態機械に関して上記で説明したように、かつ特定のトランスレータタイプに関して以下でさらに詳細に述べるように、その状態ロジックによりイベントを処理する。[5.トランスレータタイプ]各スケジューリングシステム106は、トランスレータモジュール502によって解釈される、それ自体に特有な一連の制御信号を生成する。以下の項は、理想的なトランスレータモジュールの状態図に基づいて、特定のトランスレータモジュールがどのように実施されるかを説明している。すなわち、スケジューリングシステム特有の制御信号は、理想的トランスレータにおける一般的制御信号上にマッピングできる。各特定のトランスレータモジュール502は、理想的なトランスレータモジュールに記載されたのと同じ状態を経て進む。しかし、各特定のトランスレータに関する状態動作は、それらが受信する制御信号の相違を説明するため若干異なる。各種類のトランスレータについての、理想的なトランスレータ状態機械から特定の状態機械へのマッピングを、以下の表4-6に要約した。これらの表の欄見出しは表3に定義した。aトランスレータタイプ1:基本的スケジューリングシステム基本的スケジューリングシステム106は、通常は放送プログラムID以外には、その制御信号内の非常にわずかのデータしか符号化しないシステムである。トランスレータの状態機械を介したこの制御信号の解釈には、理想的制御信号について理想的データであったものを再生するための、適切なデータの作成および推論が関係する。基本的スケジューリングシステム106の例はLouthADC-100である。一実施形態において、オートメーションサーバ108は、サブタイトラをエミュレートすることにより基本的スケジューリングシステムとインターフェースする。Louthスケジューリングシステムを備えたものなど、一実施形態において、エミュレートされたサブタイトラはCavenaサブタイトラである。通常、基本的スケジューリングシステム106は信号をサブタイトラに送信して、サブタイトルを作成し、サブタイトルを開始し、放送プログラムの映像プログラムデータ上で表示されているサブタイトルを停止する。本発明においては、オートメーションサーバ108はこれらの制御信号を用いて、インタラクティブアプリケーションを映像と同期させる。基本的スケジューリングシステム106の中には、プリロール情報を提供する能力を有することが好ましいものもある。この場合に、それは放送プログラムの実際の開始前の適合可能な秒数で準備信号PrepareSignalを送信する。オートメーションサーバ108は、放送プログラムが始まったときにちょうどユーザに届けられるように、この情報を用いてインタラクティブアプリケーションをより早くプリロードして開始する。したがって、タイプ1トランスレータは、準備信号を受信したときに、ロードされた状態802、準備された状態804および放送中の状態806を通って移行する。このことは自動移行として表4で説明する。オートメーションサーバ108が基本的スケジューリングシステム106から開始信号805を受信すると、それは準備信号を用いてインタラクティブアプリケーションが既に始まっていることを知るので、開始信号は無視する。基本的スケジューリングシステムの制御信号にエラーがあれば、オートメーションサーバ108は現在のインタラクティブアプリケーションを停止して、エラー状態812に移動する。表4は基本的スケジューリングシステム106に関するネイティブ制御信号と、理想的制御信号と、理想的トランスレータモジュール502の状態機械に関する状態移行との関係を要約している。bトランスレータタイプ2:コードベーススケジューリングシステム第2のタイプのスケジューリングシステム106は、識別コードを用いてテレビジョンショーとコマーシャルとを選択的に区別するものである。このタイプのスケジューリングシステム106の例は、ESPNInc.によってその放送システムに用いられているようなISCIコードベースシステムである。このタイプのシステムにおいては、ISCIコードはコマーシャルなどの放送プログラムに存在し、テレビジョンショーには存在しない。これらのタイプのコードは、スケジューリングシステム106によって直接または、放送プログラムと共に媒体たとえば、ビデオテープ上に予め記録されて間接的に提供されてもよい。他のタイプのコードベースシステムは、個別にインタラクティブアプリケーション、URL、URIなどを識別するコードを用いるものである。オートメーションサーバ108は、VITCタイムコードリーダまたは類似のタイムコードリーダを通して、コードベースのスケジューリングシステム106とインターフェースする。コードベースのスケジューリングシステムは、VITCタイムコードを通してコマーシャル中にISCI情報を送信し、ショーの間にはISCI情報を送信しない。オートメーションサーバ108は、コマーシャルおよびショーの間に、この情報を用いてインタラクティブアプリケーションを選択的に付加する。スケジューリングシステムの制御信号は放送プログラムIDによってショーを特定しないので、デフォルトのインタラクティブアプリケーションのみがサポートされる。一般的に、制御信号がISCIまたは類似のコードの存在を含むときには、トランスレータ502はコマーシャルが始まったことを知る。したがって、状態機械510はロードされた状態、準備された状態および放送中の状態を通って移行して、インタラクティブアプリケーションを開始する。これらの移行は自動移行として、表5に記載したように自動的に発生する。ロードされた状態において、ISCIコードまたはURL、アプリケーション識別子などの他のコードは、理想的データに関する放送プログラムIDとして用いられるたとえば、コードを放送プログラムIDとして保存する。このことは、イベントマネジャ504が適切なインタラクティブアプリケーションを判断することを可能にする。ISCIコードが変化すると、トランスレータ502は新しいコマーシャルが始まったことを知る。したがって、状態機械510は放送停止状態を通って移行して対話型コンテンツを停止し、取消アトミックコマンドを作成してコマーシャルに関する現在のインタラクティブアプリケーションを取り消す。トランスレータ502は新しいISCIコードに関する新しい状態機械510を作成し、その状態機械510はロードされた状態、準備された状態および放送中の状態を通って移行し、開始アトミックコマンドが生成されて新しいコマーシャルのインタラクティブアプリケーションを開始する。制御信号がISCIコードを含んでいないときには、トランスレータ502はテレビジョンショーが始まったまたは進行中であることを知る。したがって、状態機械510は放送停止状態を通って移行して対話型コンテンツを停止し、コマーシャルに関する現在のインタラクティブアプリケーションを取り消す取消アトミックコマンドを作成する。同じ信号すなわち、ISCIコードが全くないに基づいて、ショーのイベントタイプを備えた不明な放送プログラムIDに関する新しい状態機械510が作成される。以下で述べるように、イベントマネジャは、この放送プログラムIDはデフォルトのショーと関連づけられるべきであると判断する。状態機械510はロードされた状態、準備された状態および放送中の状態を通って進み、開始アトミックコマンドを生成してテレビジョンショーに関するデフォルトのアプリケーションを開始する。ISCIコードが再度検出されると、状態機械510は放送停止状態を通って進み、取消アトミックコマンドが生成される。コードベースのシステムにはデータのない小さい隙間があることが多いので特に、コード間の移行の間に、トランスレータ502は、ISCIコードがないことを検出する前の修正可能な秒数の間待機する。これにより誤った検出を回避する。制御信号にエラーがある場合には、状態機械510は現在の対話型コンテンツも取り消して、エラー状態に移動する。表5は、コマーシャルイベントおよびデフォルトのショーイベントの両方についての、コードベーススケジューリングシステム106に関するネイティブ制御信号と、理想的制御信号と、理想的なトランスレータモジュール502の状態機械に関する状態移行との関係を要約している。cトランスレータタイプ3:プレイリストベースのスケジューリングシステム本発明により支援された第3のタイプのスケジューリングシステム106は、プレイリストベースのスケジューリングシステムである。このタイプのシステムにおいては、制御信号は、プレイリストの要素を提供するために、放送されている番組およびその継続時間を識別する。また、場合によっては放送プログラムの番組タイトルが含まれている。このタイプのスケジューリングシステムの例は、ソニー株式会社によって提供される、BZCA-1102スポットリールオプションソフトウエアを動作させるライブラリマネジメントシステムLMSBZCA-1000マルチカセットシステムである。オートメーションサーバ108は、制御端末として機能することによりこのタイプのスケジューリングシステム106と連結する。制御端末は、スケジューリングされたイベントの表である送信プレイリストを表示する。LMSBAC-1200制御端末が一例である。プレイリストは、各放送プログラムに関する放送プログラムID、番組タイトル、継続時間などのイベント情報を含む。プレイリストベースのトランスレータモジュール502は、スケジューリングシステム106から受信した全てのイベント情報を取り込んで構文解析parseする。イベントは、それらの放送時間に先だって送信プレイリストに現れる。イベントたとえば、放送プログラムが送信プレイリストに現れると、トランスレータ502がそのイベントに関するインタラクティブアプリケーションをプリロードして、ロードされた状態802に移行する。スケジューリングシステム106は、イベントが放送中になる前の修正可能な秒数に、プレイ制御信号のイベント状態を送信することにより、各イベントに関するプリロール情報を提供する。トランスレータモジュール502は準備された状態804および放送中の状態806を通って移行し、イベント用のプレイ制御信号を受信したときにインタラクティブアプリケーションを開始する。ネットワークの問題または他の何らかの問題により、トランスレータ502がイベントに関するプレイ制御信号を逃して、イベントに関する放送中またはオンライン制御信号を受信した場合には、放送中の状態806に移行してインタラクティブアプリケーションを開始する。この場合に、オートメーションサーバ108はプリロール情報の利益を逃すが、それにもかかわらずインタラクティブアプリケーションは開始される。トランスレータモジュール502が放送中またはオンライン信号を受信して、まだ準備された状態804にないのであれば、放送中/オンライン信号をプレイ信号として扱い、まず準備された状態804に移行してから自動的に放送中の状態806に移行する。送信プレイリストからイベントデータが消えると、トランスレータモジュール502は放送停止状態808に移行して、現在のインタラクティブアプリケーションを取り消すようにイベントマネジャ504に命令する。スケジューリングシステムへの接続を失うなどの、他のあらゆる種類のエラーが発生した場合には、オートメーションサーバ108は現在のインタラクティブアプリケーションを停止してエラー状態に移動する。表6は、理想的なトランスレーションモジュール502の状態機械についての、プレイリストベーススケジューリングシステム106に関するネイティブ制御信号と、理想的な制御信号と状態移行との関係を要約している。[6.正規表現に基づくトランスレータイベントタイプ計算]放送プログラムIDのイベントタイプを追跡するスケジューリングシステム106は、その情報をオートメーションサーバ108に直接送信できる。多数のスケジューリングシステム106がこの特徴を支援しないので、放送局114の中には、ショーやコマーシャルのように異なったタイプの放送プログラムを区別する放送プログラムIDを用いるものもある。オートメーションサーバ108はそれ自体のためにこの情報を用いる。トランスレータ502はその情報を用いて、どのタイプのイベントをスケジューリングするかを判断する。たとえば、コマーシャルの放送プログラムIDはVTという接頭辞を有し、テレビジョンショーの放送プログラムIDは異なった接頭辞を有するか全く接頭辞を有していなくてもよい。オートメーションサーバ108は、放送プログラムIDと共に正規表現を用いて、コマーシャルとショーとを区別する。正規表現の分析に基づいて、放送プログラムIDがコマーシャルの基準に合致する場合に、イベントタイプはコマーシャルに設定され、あるいは、放送プログラムIDがショーの基準に合致する場合にはショーに設定される。放送局114がショーとコマーシャルとを区別するために放送プログラムIDの名前を挙げない場合には、イベントタイプは不明に設定される。かかる場合に、イベントマネジャ504は、コンテンツがコマーシャルに関するものかショーに関するものかを伝えるフラッグがあるかどうか、実際のインタラクティブアプリケーションファイルを見る。[7.イベントマネジャの大要]図5を参照すると、イベントマネジャ504はトランスレータモジュール状態機械510から様々なアトミックコマンド514を受信して、それに応じて、そのインタラクティブアプリケーションの制御について放送サーバ110に命令する。一般的に、オートメーションサーバ108がない従来のシステムにおいては、放送サーバ110は、放送サーバイベントのリストである予め定めされたプレイリストに従い、インタラクティブアプリケーションをデータ挿入ユニット116に送信する。しかし、オートメーションサーバ108は、スケジューリングシステム106によって提供された制御信号を介して、放送サーバのプレイリストの作成を自動化し、放送サーバのプレイリスト上のイベントを動的に付加、削除および修正して、スケジューリングシステムのプレイリストに対するほぼリアルタイムな変更に合わせることができる。放送サーバのプレイリストは全てのチャネルに関するイベントを含んでもよいが、イベントマネジャ504は、それがアトミックコマンドを受信するチャネルに関するイベントのみを管理する。図5は、トランスレータモジュール502がアトミックコマンド514をどのようにイベントマネジャ504に送信するかを示している。イベントマネジャ504はアトミックコマンド514を解釈して、放送サーバ110に対する一連の基本コマンドを生成する。イベントマネジャ504は、アトミックコマンド514を受信すると、そこに含まれた放送プログラムIDを、マッピングロジック508を介して特定の放送サーバイベントにマッピングする。特定の放送プログラムIDに関して適切な放送サーバイベントが存在しないのであれば、イベントマネジャ504は放送サーバイベントを作成する。一般的に、イベントマネジャ502は必要に応じて、放送サーバイベントを作成、修正または破壊する。イベントマネジャ504は、それが管理する各放送サーバイベントについて別個の状態機械512を維持する。各状態機械はイベントの放送プログラムIDによってそのイベントに割り当てられる。すると、トランスレータモジュール502からのアトミックコマンドは、それらの放送プログラムIDに基づいてこれらの状態機械に送られる。このプロセスを以下のアトミックコマンドマッピングロジックの項で説明する。イベント状態機械512は、正確な放送サーバ基本コマンドを生成する責任を負う。それは、以下のイベント状態機械の項で詳細に説明する。トランスレータモジュール502およびイベントマネジャ504という2つの状態機械を使用することで、比較的単純で効率的なイベントマネジャ504の実施を可能にしながら、様々な異なったタイプのスケジューリングシステム106の何れをも容易にオートメーションサーバ108とインターフェースすることが可能になる。これは、イベントマネジャ504の変更を必要とせずに、新しいスケジューリングシステム106との協働のために、新たなトランスレータモジュール502を作成することを可能にする。異なったイベントタイプは、アトミックコマンドマッピングロジック508およびイベント状態機械512に異なった挙動を行わせるので、以下の項では、イベントマネジャ504が支持する様々なイベントタイプを定義する。aイベントタイプイベントタイプは放送サーバイベントがどのように挙動すべきかを決定する。イベント挙動を定める3つの異なったカテゴリがある。放送プログラムタイプセグメンテーション対話性番組タイプにはコマーシャル、ショーまたは不明があり得る。コマーシャルは、普通は短い30~120秒テレビジョンプログラミングの独立した部分である。ショーは1つまたは複数のセグメントを含むテレビジョン番組である。1つまたは複数のコマーシャルがテレビジョンショーセグメントの間に放映される。オートメーションサーバ108が、スケジューリングシステム106によって送信された制御信号から番組タイプを判断できない場合には、そのタイプは不明に設定される。通常、不明なイベントはコマーシャルのように独立のプログラミングとして扱われてもよいし、テレビジョンショーのように扱われてもよい。番組タイプおよびセグメンテーションは密接に関係する。好適な実施形態においては、テレビジョンショーは常に区分されたものとして扱われ、コマーシャルは常に区分されていないものとして扱われる。不明な番組は何らかの番組として扱うことができる。区分されたテレビジョンショーの扱いを、図12を参照して以下でさらに説明する。対話性たとえば、インタラクティブアプリケーションは、通常の対話型イベントまたはデフォルトの対話型イベントの何れかにすることができる。通常のイベントは、特定のインタラクティブアプリケーションがそれに関連づけられているイベントである。イベントマネジャ504は、インタラクティブアプリケーションデータベース112においてイベントと関連づけられた特定のインタラクティブアプリケーションを見つけることができない場合には、デフォルトのインタラクティブアプリケーションをイベントの継続時間と置き換えてもよい。無イベントもデフォルトイベントとして特定することができ、このことはイベントの継続時間中はインタラクティブアプリケーションが放送されないことを意味する。以下の表は6個のイベントタイプを列挙し、各イベントタイプの挙動を要約している。イベントタイプは放送サーバイベント設定を判断するためにも用いられる。bイベントタイプを判断するイベントタイプは最初にトランスレータモジュール502によって判断されて、アトミックコマンド514でイベントマネジャ504に渡される。場合によっては、トランスレータモジュール502は実際のイベントタイプを判断するのに十分な情報を有していない。トランスレータモジュール502はイベントタイプに関する最初の判断を行うが、イベントマネジャ504が、より良い情報を有している場合にはそのイベントタイプを変更してもよい。イベントマネジャ504は、トランスレータモジュール502が有していない2つの情報を有する。1.イベントマネジャ504は、インタラクティブアプリケーションがイベントの放送プログラムIDに関して存在するかどうかを知っている。2.イベントマネジャ504は、インタラクティブアプリケーションからイベントタイプ情報を得ることができる。アプリケーションは、それが中断可能か否かを判断する情報を含む。オートメーションサーバ108は、全てのテレビジョンショーが中断可能であり、全てのコマーシャルが中断可能ではないと仮定している。イベントマネジャの情報とトランスレータモジュールの情報とを組み合わせると、イベントマネジャ504は、以下の表で要約しているように適切なイベントタイプを判断することができる。cアトミックコマンドマッピングロジックイベントマネジャ504は、それが管理するイベント毎に別個の状態機械512を維持する。イベントマネジャ504は、トランスレータモジュール502からアトミックコマンド514を受信すると、アトミックコマンドの放送プログラムIDを適切な放送サーバイベントと関連づけて、アトミックコマンドを適切な状態機械512に渡さなければならない。このプロセスが、イベントマネジャのマッピングロジック508による処理である。マッピングロジック508は、放送プログラムIDを放送サーバイベントIDと関連づけたイベント関連づけ表を作成して維持する。スケジューリングされたアトミックコマンドのみが、新しい放送サーバイベントを作成させることができる。その結果、それらのみが、放送プログラムIDと新しい放送サーバイベントのIDとを関連づける、イベント関連づけ表に新しい行を加えることができる。イベントがその状態機械512を妨害して、その状態機械が破壊されたときに、その関連づけは表から外される。図10はマッピングロジック508の一実施形態の状態挙動を示している。表9はこの図を説明している。新しいイベント状態機械を作成するときに、マッピングロジック508は、上記の表8の規則に従ってイベントタイプを判断する。通常の非セグメント化対話型イベントについては、イベント関連づけ表において、スケジューリングシステムイベントと放送サーバイベントとの間に一対一のマッピングがある。2つの注目すべき例外を次に説明する。d特別な場合のイベントマッピング一般的に、スケジューリングシステムイベントと放送サーバイベントとの間には一対一のマッピングがある。2つの注目すべき例外をここで説明する。iデフォルトイベントスタートアップ時に、イベントマネジャ504は3つの放送サーバイベントデフォルトイベントタイプ毎に1つを作成する。これらは、イベント関連づけ表における最初の3つのイベントである。イベントタイプに関して上記で説明したように、インタラクティブアプリケーションを特定された放送プログラムIDについて発見できないときにデフォルトイベントが選択される。これをサポートするために、イベント関連づけ表は多数の放送プログラムIDが同じデフォルトイベントIDにマッピングすることを可能にする。マッピングロジック508が、それと関連づけられたインタラクティブアプリケーションを有していないスケジュールアトミックコマンドを受信すると、マッピングロジック508は、その放送プログラムIDを、スケジュールアトミックコマンドにおいて特定されたイベントタイプに対応するデフォルトイベントと関連づける。デフォルトイベントは既にスケジューリングされているので、マッピングロジック508は、スケジュールアトミックコマンドを渡さない。iiセグメント化されたイベント前述のように、単一のテレビジョンショーは多数の部分にセグメント化することができる。スケジューリングシステム106にとっては、ショーはそれぞれが独自の放送プログラムIDを備えた一連の多数のイベントである。放送サーバにとっては、テレビジョンショーは、セグメント毎に中断されて再開される単一のイベントである。その結果、イベント関連づけ表は、多数の放送プログラムIDを単一の放送サーバイベントに合わせることによりこの隙間を埋める。スケジューリングシステム106がその放送プログラムIDにおいて、セグメント化に関する情報を提供する場合には、イベントマッピングロジック508は、テレビジョンショーの最初のセグメントについて新しいイベント状態機械512を作成して、他の全てのセグメントを同じイベント状態機械512に自動的にマッピングする。残念ながら、ほとんどのスケジューリングシステムはこの情報を提供しない。そのため、オートメーションサーバ108は、2つの異なった放送プログラムIDがインタラクティブアプリケーションデータベース112において同じインタラクティブアプリケーションにマッピングされているかどうかを判断することにより、これら2つの放送プログラムIDが同じテレビジョンショーと関連づけられているかどうかを判断する。マッピングロジック508は、新しい放送プログラムIDがイベント関連づけ表に既に列挙されたテレビジョンショーの別のセグメントに関するものであると判断すると、1.イベント関連づけ表において、その新しい放送プログラムIDを予め存在する放送サーバイベントと関連づけ、2.ショーは既にスケジューリングされているので、スケジュールアトミックコマンドを渡さない。このことを、以下のイベント状態機械およびセグメンテーションの項でさらに詳細に説明する。e放送サーバ基本コマンドイベントマネジャの状態機械は、4つの放送サーバ基本コマンド、すなわちスケジュール、開始、停止および取消を発行して、放送サーバを制御する。これらは、同じ名称のアトミックコマンドに類似している。スケジュールは放送に関するインタラクティブアプリケーションを作成して、それを放送サーバのプレイリストに追加する。開始は、インタラクティブアプリケーションの放送を始めて、停止は、その放送を止める。取消は、インタラクティブアプリケーションを停止して既に停止されていなければ、メモリからインタラクティブアプリケーションを除去して、放送サーバのプレイリストから関連づけられたイベントを削除する。代替的な実施形態において、これら特別なコマンドは、無期限に中断する、選択された時間間隔にわたって中断する、直ちに再開する、選択された時間間隔の後に再開するなどの、他のより複雑な挙動を含むように拡張してもよい。また、コマンドのコンテンツ、すなわち、コマンドによって管理することができる対話性のタイプは可変であり、やはり、システム設計者によって決定された対話性のタイプに左右される。そのため、コマンドは、以前に放送された対話性、形態または他のデータ、URL、ウェブページ、Javaアプレットまたは他のハイパーメディア対話性などについて、トリガをスケジューリングまたは開始してもよい。[8.イベント状態機械]アトミックコマンドはそれらの寿命を特定のイベント状態機械512において終える。各イベント状態機械512は放送サーバイベントと関連づけられており、そのイベントに関する全ての動作を制御する。アトミックコマンドマッピングロジック508は、どの状態機械512が特定のアトミックコマンドを受信するかを判断する以下で述べるいくつかの例外がある。図11は、イベント状態機械512の挙動を、コマーシャル、テレビジョンショーおよびデフォルトイベントタイプに関する詳細と共に示している。イベント状態機械はイベントのライフサイクルを追跡する。図11において、状態移行はそれらがどのタイプのイベントに適用されるかを示すように、以下のとおり明示されている。C:コマーシャルイベントに適用される移行S:テレビジョンショーイベントに適用される移行D:デフォルトイベントに適用される移行一般的に、イベントは次の状態を通過する。スケジュールされた状態1102:トランスレータモジュール502からのスケジュールアトミックコマンドは、放送サーバ上でイベントのスケジューリングを行わせる。状態機械512は放送スケジューリングプリミティブを発行し、これは、放送に関するインタラクティブアプリケーションを作成して、それを放送サーバのプレイリストに追加することを放送サーバ110に命令する。スケジューリングの後に、イベントは開始アトミックコマンドによって開始される必要がある。開始された状態1104、停止された状態1106:トランスレータモジュール502からの開始コマンドは、状態機械を開始された状態1104に移行する。状態機械は放送開始プリミティブを発行する。開始された後に、イベントは開始および停止アトミックコマンドによって何回でも開始および停止することができる。状態機械はテレビジョンショーおよびデフォルトイベントについてのみ停止された状態1106に移行し、コマーシャルイベントについては停止された状態1106に到達しない。放送開始プリミティブに応じて、放送サーバ110は、インタラクティブアプリケーションが以前に送信されていない場合にはそれを送信することや、アプリケーションが以前に送信されている場合には、インタラクティブアプリケーションへトリガを送信して実行を始めることを含む様々な方法で、インタラクティブアプリケーションを始めることができる。同様に、放送サーバ110は、前述のように、形態やコンテンツなどの他の種類のデータをインタラクティブアプリケーションに送信するか、URLなどを送信してもよい。二次トリガ処理段階1108:やはり開始された後に、イベントはゼロ1以上の二次トリガを発生させることができる。二次トリガは、イベントが活動中であるすなわち、放送サーバでスケジューリングされている間に発生する作用である。一例は、イベントが終了する前のエンドユーザへの5分警告である。これらのトリガはスケジューリングシステム106によって作成されて、制御信号としてトランスレータモジュールに渡される。取り消しされた状態1110:最後に、イベントと関連づけられた放送プログラムが一端終了すると、取消アトミックコマンドがトランスレータモジュール502から送信される。状態機械は放送サーバ110に放送取消プリミティブを発行することにより応答し、放送サーバ110はイベントを取り消す。この状態には、異なったイベントについては異なった方法で到達する。コマーシャルイベントについては、トランスレータモジュール502から取消アトミックコマンドが受信されたときにこの状態に到達し、テレビジョンショーイベントについては、次のテレビジョンの状態コマンドが受信されたときにこの状態に到達し、最後にデフォルトイベントについては、遮断時にこの状態に到達する。放送サーバイベントインタラクティブアプリケーションの開始を、それに関連づけられたスケジューリングシステム放送プログラムと正確に同期させるために、スケジューリングシステムの中にはプリロールを支持するものがある。プリロールは、スケジューリングシステム106が制御している装置VTRのようなが動作番組を放映し始めるようなを完了するのに必要な時間の長さである。スケジューリングシステム106は、同じ種類のプリロール警告をオートメーションサーバ108に与えて、それにインタラクティブアプリケーションを開始する時間を与えることができる。スケジューリングシステムの中にはプリロール値を1つだけ支持するものがある。オートメーションサーバ108の応答時間がプリロール値よりも速ければ、オートメーションサーバ108は、放送サーバイベントを開始する際に、幾分か付加的な遅延を導入する。この微同調タイミングは、システム設計者によってイベント状態機械で行われる。開始済み、停止済みおよび取り消し済みの状態は全て、実際に放送サーバイベントを開始、停止または取り消しする前に遅延の量を導入できる。全ての放送サーバイベントがこの同じ基本的状態機械を共有するが、イベント状態機械はイベントタイプ毎に異なる。これらの相違の詳細を以下で説明する。二次トリガは全てのイベントタイプについて同様に処理される。二次トリガは、オートメーションサーバ108を拡張する方法である。スケジューリングシステム106の中には、基本的制御信号プリロード、プリロール、放送中および放送停止以上のものをサポートするものがある。それらは、たとえば、番組の終了前5分に制御信号を送信して、番組が終わりそうであることを装置に警告することができる。オートメーションサーバは、この信号を用いて現在のインタラクティブアプリケーションを更新し、それが終わりそうであることを視聴者に警告することができる。これは、二次トリガをどのように用いることができるかのほんの一例にすぎない。aコマーシャルイベントタイプこれは最も単純なイベント状態機械である。コマーシャルイベントは停止されることも再開されることもないので、スケジューリングされて、開始され潜在的にはいくつかの二次トリガで、最後に取り消されるだけである。以下の表は状態、その状態に入らせるアトミックコマンドおよびその状態によって行われる作用を要約している。bショーイベントタイプショーイベント状態機械512はコマーシャルイベント状態機械に非常に類似しているが、やはりセグメント化を明らかにしなければならないイベントタイプの項で説明。コマーシャルイベントとは異なり、ショーは将来あるときに再開する必要があるので、取消コマンドはショーイベントを停止するだけである。次のショーの開始アトミックコマンドが受信されたときにだけ、このショーを取り消すことができる。以下の表は、状態、その状態に入らせるアトミックコマンドおよびその状態によって行われる作用を要約している。cデフォルトイベントタイプデフォルトイベントには3つの異なったタイプ、すなわちデフォルトショーイベント、デフォルトコマーシャルイベントおよびデフォルト不明イベントがある。デフォルトイベントは、その放送プログラムIDについて関連づけられたインタラクティブアプリケーションがないときに用いられる。コマーシャルイベントとは異なり、デフォルトイベントは将来のあるときに再開する必要があるので、取消コマンドはデフォルトイベントを停止するだけである。それはオートメーションサーバ108が遮断されたときに取り消されるだけである。通常のイベントとデフォルトイベントとの間の主たる相違は、2つの連続した放送プログラムIDが同じデフォルトイベントを意味し得る場合があるということである。この場合には、デフォルトイベントを停止せずに、すぐに再開することが好ましい。その代わりに、デフォルトイベントは放映を続けることを許容される。これが機能するように、停止された状態は、次の開始アトミックコマンドもこのデフォルトイベントに関するものでないことが確かになるまで、実際にはそのイベントを停止しない。デフォルトイベントタイプに関わらず、以下の表は、状態、その状態に入らせるアトミックコマンドおよびその状態によって行われる作用を要約している。[9.セグメンテーション]図12は、安定した経験を視聴者に提供し、同様にあらゆるコマーシャルの間に適切なインタラクティブアプリケーションを提供しながら、テレビジョンショーの異なったセグメントの間に適切なインタラクティブアプリケーションを維持するために、どのようにテレビジョンショーのセグメンテーションを処理するかを示している。図12においては、セグメント化されたテレビジョンショーを処理するときの、制御信号、アトミックコマンドおよび放送サーバコマンドの、スケジューリングシステム106、理想的トランスレータモジュール502およびイベントマネジャ504からの流れのイベントトレースが示されている。テレビジョンショーであるショーAは、それぞれ独特な放送プログラムIDを有する2つのセグメントA.1およびA.2で放送される。これらのセグメントの間にはコマーシャルAdXがある。セグメントA.2の後には、コマーシャルAdYがあり、それに新しいショーであるショーBが続く。ここで、本発明によって解決される問題は、AdXおよびAdYに付随する何か特定のまたはデフォルトの対話性を提供しながら、両方のセグメントA.1およびA.2の間に同じ対話性を維持するセグメントは独特な放送プログラムIDを有しているがというものである。この結果を達成するために、両セグメントA.1およびA.2に関する放送プログラムIDは、イベントマネジャ504によって、イベント関連づけ表において同じ放送イベントショーAにマッピングされなければならない。これは、上記の様々な手順を用いて行われる。そして、制御信号およびアトミックコマンドのシーケンスは以下のとおりである。ショーセグメントA.11200:まず、スケジューリングシステム106がプリロードA.1信号を発行する。1202:次にトランスレータモジュール502はセグメントA.1をスケジューリングする。1204:イベントマネジャ504はこのイベントショーAに関する新しい状態機512を作成して、イベント関連づけ表にこの放送プログラムIDおよび状態機械に関するマッピングを記憶する。ショーA状態機械は、ショーAと共に放送に関する適切なインタラクティブアプリケーションをスケジューリングするように放送サーバ110に命令する。1206:そして、スケジューリングシステム106は、A.1に関するプリロール信号または開始信号の何れかを発行する。1208:次に、トランスレータモジュール502は、潜在的にはプリロールの量と、イベントマネジャ504および放送サーバ110が放送サーバイベントを開始するのに要する時間の長さとによって決定される幾分かの遅延量の後に、セグメントA.1を開始する。1210:それに応じて、イベントマネジャショーA状態機械は、ショーAに関するインタラクティブアプリケーションを開始するように放送サーバに命令する。1212:ショーAのインタラクティブアプリケーションは放送受信機120によって実行されて、放送受信機120に連結されたテレビジョンセットなどの表示装置に現れる。スケジューリングシステム106が最初にプリロールを発行すれば、ショーA.1は既に開始されているので、トランスレータモジュール502はスケジューリングシステム106からのそれに続く開始信号を無視する。AdX1214:ある時間の後に、スケジューリングシステム106はAdXに関するプリロード信号を発行する。1216:そして、トランスレータモジュール502はスケジュールAdXアトミックコマンドを発行する。1218:イベントマネジャは放送サーバ110にスケジュールコマンドを発行して、AdXに関するインタラクティブアプリケーションデフォルトを含むをスケジューリングする。1220:そして、スケジューリングシステム106はプリロールまたは開始Ad信号を発行する。1222、1224:トランスレータモジュール502には、ショーAへの別のセグメントがあることは分からないので、セグメントA.1に関する取消コマンドを送信してから、開始AdXコマンドを送信する。スケジューリングシステム106が停止A.1を送信すれば、それはAdXに関するプリロードおよびプリロールの後に来るので無視される。1226、1228:通常、イベントマネジャ504はセグメントA.1を取り消すことにより応答する。しかし、イベントマネジャ504は一時的に取消コマンドを無視して、その代わりに、ショーAに関するインタラクティブアプリケーションを停止する停止A.1コマンド、そして、AdXのインタラクティブアプリケーションの実行を始める開始AdXコマンドを発行する。1230、1232:これらのコマンドが放送受信機によって受信されると、受信機はショーAに関するインタラクティブアプリケーションの実行を中断するが、終了はせず、AdXのインタラクティブアプリケーションまたはデフォルトアプリケーションの実行を始める。インタラクティブアプリケーションを中断することは、ゲームの点数、視聴者が視聴していた特定の形態など、それが有する状態情報は何であれ保持する。中断することは、たとえば、視聴者のテレビジョンセット上の表示からショーAのインタラクティブアプリケーションを排除するという別の効果も有するので、AdXが画面に出たときにショーAインタラクティブアプリケーションは表示されず、AdXの対話性は適切に進む。イベントマネジャ504は、この時点ではわからない、ショーAには他のセグメントがないということが判断できるまで、トランスレータモジュールの取消コマンドを遅延させる。その後、以下に示すように、これはショーBが開始されたときに発生する。ショーセグメントA.21234:AdXが終わりそうになると、スケジューリングシステム106はプリロードA.2信号を発行する。1236:トランスレータモジュール502はスケジュールA.2コマンドを発行する。この時点で、イベントマネジャ504のマッピングロジック508はこのイベントセグメントA.2に関する放送プログラムIDが、セグメントA.1の放送プログラムIDとして同じインタラクティブアプリケーションに相関していると判断する。したがって、マッピングロジック508は、セグメントA.2に関する全てのコマンドをそれらの放送プログラムIDに従って、ショーAに関するイベント状態機械に向ける。ショーAのこのセグメントに関するインタラクティブアプリケーションは既に放送受信機でロードされているので、ここで放送サーバにそれをプリロードさせる必要はない。そのため、イベントマネジャは別のスケジュールコマンドを発行しない。1238:そして、スケジューリングシステム106は、プリロールA.2または開始A.2信号の何れかを発行する。1240、1242:トランスレータモジュール502は、AdXに関する取消コマンドおよびセグメントA.2に関する開始コマンドを送信する。1244、1246:イベントマネジャ504はまず、AdXに関する対話性を取り消すように放送サーバに命令して、そして、開始コマンドを、ショーAと関連づけられたインタラクティブアプリケーションを開始するように放送サーバに命令するショーA状態機械に向ける。ショーAに関するインタラクティブアプリケーションは以前に中断されただけなので、AdX開始前それが有していた状態が何であれその状態で、ここで再度動作を始める1248。そのため、ショーAがゲームショーおよびゲームアプリケーションとしてのそのインタラクティブアプリケーションであったならば、AdXに関するアプリケーションを中断することは、ゲームにおける視聴者の総得点および他の状態を保存したであろう。そしてそれは、セグメントA.2が放送されてアプリケーションが再開されると回復される。AdY1250:後のある時点で、スケジューリングシステム106はプリロードAdY信号を発行する。1252:トランスレータモジュール502は、スケジュールYコマンドをイベントマネジャ504に送信する。1254:イベントマネジャ504は、放送サーバでAdYに関する対話性をスケジューリングする。1256:そして、スケジューリングシステム106は、プリロールAdYまたは開始AdY信号を発行する。1258、1260:トランスレータモジュール502は、セグメントA.2に関する取消コマンドおよびAdYに関する開始コマンドを送信する。1262、1264:やはり、イベントマネジャ504は取消コマンドを遅延させて、その代わりに、ショーAに関する対話性を停止し、AdYに関する対話性がもしあればデフォルトを含めて、それを開始するように放送サーバに命令する。ショーAのインタラクティブアプリケーションは中断されて1266、AdYに関する対話性が実行される1268。やはり、ショーAに関する状態機械は、ショーAの別のセグメントがあるかまだ分からないので、セグメントA.2のインタラクティブアプリケーションの取消を遅らせる。ショーB1270:AdYが終わりそうになると、スケジューリングシステム106はプリロードショーB信号を発行する。1272:トランスレータモジュール502はショーBをスケジューリングする。1274:ここで、イベントマネジャのマッピングロジック508は、ショーBに関するプログラムIDはショーAと異なり、そのためショーAに関しては他にセグメントはないと判断する。ショーBに関する新しい状態機械が開始される。そして、イベントマネジャ504は放送サーバにスケジュールショーBを発行して、ショーBに関する対話性をスケジューリングする。ショーBはまだ始まっていないので、イベントマネジャはショーAの対話性をまだ取り消さない。1276:そして、スケジューリングシステム106は、プリロールまたは開始ショーBの何れかを発行する。1278:1280:トランスレータモジュール502は、AdYを取り消してショーBを開始するアトミックコマンドを発行する。1282、1284:イベントマネジャ504はまずAdYを取り消して、そして開始コマンドを新しいショーB状態機械に向ける。1288:開始ショーBコマンドが現れると、新しいショーが始まっていることは明らかなので、イベントマネジャ504はショーA、セグメントA.2に関する対話性を安全に取り消すことができる。この取消コマンドはトランスレータモジュール502から直接には来ないが、ショーBに関する開始コマンドに基づいてイベントマネジャのショーA状態機械によって合成される。ショーBがその放送に数時間先だってスケジューリングされることは可能であるので、ショーAの対話性はショーBが実際に開始するまで取り消されるべきではない。また、背中合わせのショーの潜在性のためおよび、ショーBをその開始時間に数時間先だってスケジューリングすることができるため、イベントBをスケジューリングしているときには取り消しは発生し得ないことに留意されたい。場合によっては、2つのテレビジョンショーたとえば、ショーAおよびショーBの間には介入するコマーシャルたとえばAdYはない。すなわち、2つのショーは背中合わせになり得るすなわち、ショーAの直後にショーBを開始できる。この場合に、ショーA取消1288は、ショーB開始1284の前に発生する。代替的な実施形態において、イベントマネジャ504は、別のインタラクティブアプリケーションを取り消す前に1つのインタラクティブアプリケーションを開始することができる。たとえば、インタラクティブアプリケーションを取り消すことが停止するよりも時間がかかるのであれば、これは望ましいことであり、2つのショーが背中合わせでない場合に、ショーAに関するインタラクティブアプリケーションを取り消す前にショーBに関するインタラクティブアプリケーションを開始することが最適化である。一般的に、代替的な実施形態は、以前のインタラクティブアプリケーションを停止して、次のインタラクティブアプリケーションを開始してから、前のインタラクティブアプリケーションを取り消すものである。要約すれば、本発明は、放送および、テレビジョンショーやコマーシャルなどを含む放送プログラムの表示と同期して、対話型コンテンツの挙動を制御する様々な方法および手段を提供する。ネイティブ制御信号を用いて放送プログラムの同一性および状態を判断してから、その放送プログラムと関連づけられた対話性の状態を管理することを含む、本発明の原理は、多数の変形がある多様な異なった方法で実施することができる。本発明の範囲内にあるこれらの変形のいくつかは次のとおりである。オートメーションサーバ108は、トランスレータモジュール502およびイベントマネジャ504の二重の状態機械を用いるものとして説明する。これは有益ではあるが、本発明の他の実施形態は、たとえば制御信号の各タイプに関するプログラムされたスクリプトあるいは他の手続き的機構を用いて、状態機械なしにオートメーションサーバ108またはその機能を実施してもよいと考えられる。トランスレータモジュール502における一連の理想的な制御信号および状態、イベントマネジャ504に出力されるアトミックコマンドまたは、放送サーバのような装置を制御するために生成されたコマンドは全て、より多いかより少ない信号およびコマンドをカバーするように変えてもよい。同様に、状態のそれぞれにおける特定の作用を変えてもよい。たとえば、停止または取り消しするコマンドに加えて、特定の再開または遅延コマンドを備えた再開を、さらに複雑な制御に用いてもよい。保存コマンドは、将来の検索のために、対話性において生成されたデータを保存するように放送受信機120に命令してもよい。このコマンドは、たとえば、ユーザまたは対話性が作成したデータを保存するために、エラー状態、チャネル変更または他のイベントに応じて生成することができる。送信またはアップロードコマンドは、作成/記憶されたデータを収集機構に送信し戻して、たとえば対話型購入アプリケーションを介して商品の購入を完了するように放送受信機に命令してもよい。オートメーションサーバ108および本発明によって制御できる対話性のタイプは様々であり、既存のインタラクティブアプリケーションに限定されない。ウェブページなどの対話性または、ウェブページとインタラクティブアプリケーションとの組み合わせは、本発明の原理を用いて制御することができると思われる。放送サーバまたは類似の装置へのコマンドのタイミングは、帯域幅、データを送信する接続速度および、どれくらい速くテレビジョン画像を表示できるかに相対的な放送受信機の実行応答時間に応じて変えてもよい。そのため、コマンドは基本的な放送イベントが発生する前、ちょうどそのとき、直後またはほぼ前に送信することができる。コマンドのタイミングは、最も早い利用可能な時間にどの情報が分かっているかを利用して最適化できる。制御信号をオートメーションサーバに提供する手段またはその均等物は変えてもよい。これらは、シリアルポート、LANまたはスケジューリングシステムへの遠隔通信インタフェース上のバイナリデータあるいは、アナログまたはデジタルビデオ信号に符号化されたバイナリデータを含む。したがって、本発明は特許請求の範囲によって限定され、上記に開示した好適な実施形態の詳細によっては本来限定されないものと理解される。"