(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-09
(45)【発行日】2024-01-17
(54)【発明の名称】第1のデバイス上の第1のアプリケーションと第2のデバイス上の第2のアプリケーションとの間の接続の確立
(51)【国際特許分類】
H04W 80/12 20090101AFI20240110BHJP
H04W 84/10 20090101ALI20240110BHJP
H04N 21/41 20110101ALI20240110BHJP
H04W 76/14 20180101ALI20240110BHJP
【FI】
H04W80/12
H04W84/10
H04N21/41
H04W76/14
(21)【出願番号】P 2022513901
(86)(22)【出願日】2020-07-20
(86)【国際出願番号】 EP2020070413
(87)【国際公開番号】W WO2021043490
(87)【国際公開日】2021-03-11
【審査請求日】2023-02-28
(32)【優先日】2019-09-02
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】511109386
【氏名又は名称】インスティテュート フューア ランドファンクテクニック ゲーエムベーハー
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】プロブスト、マイケル
(72)【発明者】
【氏名】メルケル、クラウス
(72)【発明者】
【氏名】ジーグラー、クリストフ
【審査官】伊東 和重
(56)【参考文献】
【文献】特表2017-510131(JP,A)
【文献】特表2017-502373(JP,A)
【文献】特表2016-541034(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04B 7/24-7/26
H04W 4/00-99/00
H04N 21/00-21/858
(57)【特許請求の範囲】
【請求項1】
第1のデバイス上の第1のアプリケーションと前記第1のデバイス上の通信サービスとの間の接続を、第2のアプリケーションに割り当てられた識別を使用して確立することと、
第2のデバイス上で実行される前記第2のアプリケーションと前記通信サービスとの間の接続を、前記識別を使用して確立することと、
前記通信サービスを介して前記第1のアプリケーションと前記第2のアプリケーションとの間に通信チャネルを確立することと、
前記第2のアプリケーションによって、前記第1のアプリケーションから第1のメッセージを受信することと、を包含し、前記第1のメッセージが、前記第2のデバイス上で実行される第3のアプリケーション、及び/又は前記第2のデバイス上で実行される前記第3のアプリケーションの第1のサービスを指定する、方法。
【請求項2】
前記第1のデバイスは、画像データ及び音声データを再生するように形成されている、請求項1に記載の方法。
【請求項3】
前記第1のデバイスは、HbbTV対応受信デバイスとして形成されている、請求項1又は2に記載の方法。
【請求項4】
前記第1のデバイス上の前記第1のアプリケーションは第1の放送チャネルに割り当てられ、かつ前記第1のデバイスが前記第1の放送チャネルの画像データ及び音声データを再生する場合に、自動的に開始されるか、又は手動で開始され得る、請求項2又は請求項3に記載の方法。
【請求項5】
前記第2のアプリケーションは、前記第1のアプリケーションに前記第3のアプリケーション及び/又は前記第1のサービスの実行を起動する権限が付与されているかどうかを検査し、前記第1のアプリケーションに、前記第3のアプリケーション及び/又は前記第1のサービスの前記実行を起動する権限が付与されている場合に、前記第3のアプリケーション及び/又は前記第1のサービスの実行をさせる、請求項1~請求項4のいずれか一項に記載の方法。
【請求項6】
前記第1のアプリケーションを終了すること、及び前記第1のデバイス上の第4のアプリケーションを実行することと、
前記識別を使用して、前記通信サービスを介して前記第4のアプリケーションと前記第2のアプリケーションとの間に通信チャネルを確立することと、
前記第2のアプリケーションによって、前記第4のアプリケーションから第2のメッセージを受信することと、をさらに包含し、前記第2のメッセージが、前記第2のデバイス上で実行される第5のアプリケーション、及び/又は前記第2のデバイス上で実行される前記第5のアプリケーションの第2のサービスを指定する、請求項1~請求項5のいずれか一項に記載の方法。
【請求項7】
前記第2のデバイス上で実行される前記第2のアプリケーションによって第3のメッセージを配布することと、
前記第1のデバイスによって前記第3のメッセージに応答することと、をさらに包含し、前記応答は、前記第1のデバイス上の前記通信サービスのアドレスを含む、請求項1~請求項6のいずれか一項に記載の方法。
【請求項8】
前記第2のデバイス上で実行される前記第2のアプリケーションは、前記通信チャネルに関する確立試行を前記通信チャネルが確立されるまで繰り返す、請求項1~請求項7のいずれか一項に記載の方法。
【請求項9】
インスタンスの識別が前記第2のデバイス上の前記第2のアプリケーションに割り当てられている、請求項1~請求項8のいずれか一項に記載の方法。
【請求項10】
前記第1のデバイス上の前記識別が前記第1のアプリケーションによって永続的に記憶され、かつ前記記憶された識別へのアクセスが、前記第1のアプリケーションと同じソースからのものであるアプリケーションに限定されている、請求項1~請求項9のいずれか一項に記載の方法。
【請求項11】
前記第2のアプリケーションが前記識別を前記第1のアプリケーションに伝送し、前記第1のアプリケーションが前記識別を前記第1のデバイス上に永続的に記憶する、請求項9又は請求項10に記載の方法。
【請求項12】
前記識別は、前記第1のデバイス上で実行される、前記第1のアプリケーションとは別のソースからのものである第5のアプリケーションに提供され、前記第1のデバイス上の前記第5のアプリケーションにより永続的に記憶される、請求項1~請求項11のいずれか一項に記載の方法。
【請求項13】
前記第1のアプリケーションは、前記識別を前記第5のアプリケーションに転送し、前記第5のアプリケーションは、前記識別を前記第1のデバイス上に永続的に記憶する、請求項12に記載の方法。
【請求項14】
前記第2のアプリケーションは、さらなるアプリケーションの識別及びソースを前記第1のデバイス上の第6のアプリケーションに伝送し、前記第6のアプリケーションは、前記さらなるアプリケーションを実行し、かつ前記識別を付与し、前記さらなるアプリケーションが前記識別を前記第1のデバイス上に記憶し、かつそのソースに割り当てる、請求項9又は請求項10に記載の方法。
【請求項15】
前記識別は、前記第1のデバイス上のアプリケーションによりユーザ入力から導出され、かつ永続的に記憶される、請求項9又は10に記載の方法。
【請求項16】
前記第1のデバイス上の前記第1のアプリケーションは、前記識別を用いて、前記第3のアプリケーション及び/又は前記第3のアプリケーションによって提供される前記第1のサービスを指定する第4のメッセージを前記第2のデバイス上の前記第2のアプリケーションに外部通信サービスを介して送信する、請求項9~請求項15のいずれか一項に記載の方法。
【請求項17】
前記第1のデバイス上の前記第1のアプリケーションは、前記識別を使用して、外部通信サービスを介して前記第2のデバイス上の前記第2のアプリケーションに第5のメッセージを送信し、前記第5のメッセージは、前記第2のアプリケーションに前記第2のアプリケーションと前記通信サービスとの間に接続を確立するよう促す、請求項9~請求項15のいずれか一項に記載の方法。
【請求項18】
前記第2のデバイス上で実行される前記第3のアプリケーション、及び/又は前記第2のデバイス上で実行される前記第1のサービスが、前記第1のメッセージに反応して、又は操作入力に反応して即座に、又は後の時点に実行される、請求項1~請求項17のいずれか一項に記載の方法。
【請求項19】
前記第3のアプリケーションは、前記第1のデバイス上の再生と調整されたユーザインターフェースを提供し、前記調整は、前記第1のアプリケーションと前記第3のアプリケーションとの間で確立される通信チャネルを用いて行われる、請求項1~請求項18のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異なったデバイス上のアプリケーション間の接続の確立に関する。特に、本発明は、HbbTVデバイス上のHbbTVアプリケーションと携帯機器上の第2のアプリケーションとの間の接続の確立に関する。
【背景技術】
【0002】
HbbTV仕様のバージョン2は、HbbTVアプリケーション(「App」)を表示できるローカルネットワーク上のデバイス(例えばタブレット、携帯電話など)を見つけ出し、見つかったデバイス上でアプリケーションを開始できるメカニズムを定義する。しかしHbbTV-2は、HbbTvアプリケーションがデバイスの検索(「Discovery」)とアプリケーションの開始(「Launch」)をトリガできるインターフェースを表すにすぎない。したがって、表示可能なデバイス(「Second Screen」)とHbbTVデバイスとの間の通信には、典型的にはメーカ固有のプロトコルが使用される。
【発明の概要】
【発明が解決しようとする課題】
【0003】
HbbTV2規格は、HbbTVデバイスのメーカが、HbbTVデバイス及びそれぞれの表示可能なデバイス上でメーカ固有のプロトコルのエンドポイントを実装するアプリケーションを提供することを企図する。HbbTV規格に準拠したこのようなメーカ固有のランチャアプリケーションには次の弱点がある。
1.HbbTVデバイス用の「ランチャ」アプリケーションを提供する義務がすべてのメーカにあるわけではない。これは、対応するサービスのエリアに悪影響を及ぼす可能性がある。
2.インストール及び規定の使用に関して「ランチャ」アプリケーションのユーザガイドのための拘束力のあるガイドラインがない。
したがって、異なるメーカの「ランチャ」アプリケーションは、これらの点で異なる。「Second Screen」アプリケーションのプロバイダは、表示可能なデバイス上で実行されるHbbTVデバイスのために、どの「ランチャ」アプリケーションが適しているのか、ユーザはこれをどこで入手できるのか、どのようにして正しく使用するのかをユーザに知らせるという課題に直面する。
【課題を解決するための手段】
【0004】
本発明は、異なるデバイス上のアプリケーション間の接続を確立するための従来技術から知られている方法のこれらの、及び他の問題を克服する。その場合、本発明は、HbbTVに限定されるものではなく、全く一般に、異なるデバイス上のアプリケーション間の接続を確立するために使用され得る。
【0005】
本発明による方法は、第1のデバイス上の第1のアプリケーションと第1のデバイス上の通信サービスとの間の接続を、第2のアプリケーションに割り当てられた識別を使用して確立することと、第2のデバイス上で実行される第2のアプリケーションと通信サービスとの間の接続を、識別を使用して確立することと、通信サービスを介して第1のアプリケーションと第2のアプリケーションとの間に通信チャネルを確立することと、第2のアプリケーションによって、第1のアプリケーションから第1のメッセージを受信することと、を包含し、第1のメッセージが、第2のデバイス上で実行される第3のアプリケーション、及び/又は第2のデバイス上で実行される第3のアプリケーションの第1のサービスを指定する。
【0006】
その場合、本明細書及び特許請求の範囲の枠内で使用される「接続を確立する」という表現は、特に、ユーザデータをあるデバイス上のアプリケーションから別のデバイス上のアプリケーションに伝送できるようにするために用いられるメッセージの送受信と解されるべきである。さらに、本明細書及び特許請求の範囲の枠内で使用される「アプリケーション」という用語は、特に、以前は利用できなかったサービスをデバイスに追加し、それによってデバイスの使用可能性を広げるソフトウェアプログラムと解されるべきである。ソフトウェアプログラムを、例えば端末のオペレーティングシステム(例えば「native」Android(登録商標)、又はiOS(登録商標)アプリケーション)で実行するために特別に設計することができる。しかし、ソフトウェアプログラムを、他のアプリケーションによって解釈及び実行されるように設計することもできる(例えばHTMLコード、CSSコード及び/又はJavaScript(登録商標)コードを含む、かつウェブブラウザ又はウェブブラウザを含むアプリケーションによって実行されるウェブサイト)。
【0007】
これに関連して、本明細書及び特許請求の範囲の枠内で使用される「デバイス」という用語は、特に、機能ユニット内の電気及び電子コンポーネントの相互接続と解されるべきであり、電気及び電子コンポーネントは、様々なデバイスにオペレーティングシステムをインストールできるようにするコンポーネント関連のソフトウェアレイヤを備えることができる。
【0008】
これに加えて、本明細書及び特許請求の範囲の枠内で使用される「通信サービス」という用語は、特に、あるデバイスから別のデバイスへのメッセージの伝送を可能にすることに寄与する、デバイス上のソフトウェアレイヤによって提供されるサービスと解されるべきである。これに関連して、本明細書及び特許請求の範囲の枠内で使用される「通信チャネル」という用語は、特に、あるデバイス上のアプリケーションから別のデバイス上のアプリケーションにメッセージを伝送できる伝送経路と解されるべきである。さらに、本明細書及び特許請求の範囲の枠内で使用される「識別」という用語は、特に、エンティティ(例えば、アプリケーションのタイプ又はアプリケーションのインスタンス)を一義的に割り当てることが可能なデジタル再生可能な情報と解されるべきである。
【0009】
殊に、第1のデバイスは、画像データ及び音声データを再生するように形成されている。例えば、第1のデバイスはテレビ受像機として形成され得る。
【0010】
殊に、第1のデバイスはHbbTV対応受信デバイスとして形成されている。例えば、第1のデバイスは、HbbTV対応テレビ受像機として形成され得る。
【0011】
殊に、第1のデバイス上の第1のアプリケーションは第1の放送チャネルに割り当てられ、かつ第1のデバイスが第1の放送チャネルの画像データ及び音声データを再生する場合に、自動的に開始されるか、又は手動で開始され得る。例えば、第1のアプリケーションは放送局によって発行され、放送局の放送チャネルに関する情報及びサービス、並びに/又は放送チャネルに対してインタラクティブな要素を提供することができる。
【0012】
殊に、第2のアプリケーションは、第1のアプリケーションに第3のアプリケーション及び/又は第1のサービスの実行を起動する権限が付与されているかどうかを検査し、第1のアプリケーションに、第3のアプリケーション及び/又は第1のサービスの実行を起動する権限が付与されている場合に、第3のアプリケーション及び/又は第1のサービスの実行をさせる。
【0013】
殊に、方法は、第1のアプリケーションを終了すること、及び第1のデバイス上の第4のアプリケーションを実行することと、識別を使用して、通信サービスを介して第4のアプリケーションと第2のアプリケーションとの間に通信チャネルを確立することと、第2のアプリケーションによって、第4のアプリケーションから第2のメッセージを受信することと、をさらに包含し、第2のメッセージが、第2のデバイス上で実行される第5のアプリケーション、及び/又は第2のデバイス上で実行される第5のアプリケーションの第2のサービスを指定する。
【0014】
第1のアプリケーションの終了と、第1のデバイス上の第4のアプリケーションの実行は、例えば第1の放送チャネルと第2の放送チャネルとの間の切替えの結果であり得、第2のデバイス上で他のアプリケーション及び/又はサービスが開始されることをもたらすことができ、その場合、切替過程及びこれに伴う第2の放送チャネルへのユーザの注意のシフトが考慮される。
【0015】
方法は、第2のデバイス上で実行される第2のアプリケーションによって第3のメッセージを配布することと、第1のデバイスによって第3のメッセージに応答することと、をさらに包含することができ、応答は、第1のデバイス上の通信サービスのアドレスを含む。
【0016】
すなわち、第2のアプリケーションは、ネットワーク上で第1のデバイスを検索することができ、その場合、検索は、第1のデバイスが第1のデバイス上の通信サービスのアドレスで応答した場合に完了する。
【0017】
第2のデバイス上で実行される第2のアプリケーションは、通信チャネルに関する確立試行を通信チャネルが確立されるまで繰り返すように設定され得る。
【0018】
第1のアプリケーションと第2のアプリケーションとの間の通信チャネルは、第2のデバイス上の第2のアプリケーションのインスタンスを識別する識別を双方で使用して確立され得る。したがって、異なるデバイスで実行される同一のアプリケーションを区別し、それによって的確にアドレス指定することができる。
【0019】
識別は、第1のアプリケーションによって第1のデバイス上に永続的に記憶することができ、記憶された識別へのアクセスを、第1のアプリケーションと同じソース(例えば同じWeb-Origin)からのものであるアプリケーションに限定することができる。
【0020】
例えば、記憶された識別へのアクセスを、同じ放送局により発行された、又は同じインターネットアドレスで提供されるアプリケーションに限定することができる。
【0021】
第2のアプリケーションは、識別を第1のアプリケーションに伝送することができ、第1のアプリケーションは、識別を第1のデバイスに永続的に記憶する。
【0022】
識別は、第1のデバイス上で実行される、第1のアプリケーションとは別のソースからのものである第5のアプリケーションに提供され、第1のデバイス上の第5のアプリケーションにより永続的に記憶され得る。
【0023】
すなわち、識別を、必要な場合、アプリケーションから他のアプリケーションに転送することができ、それによってこれらのアプリケーションが適切なデバイス/アプリケーションの検索及び検出のプロセスを実行する必要がなくなる。
【0024】
第1のアプリケーションは、識別を第5のアプリケーションに転送するように設定されていてもよく、第5のアプリケーションは、第2の識別を第1のデバイス上に永続的に記憶するように設定されていてもよい。
【0025】
第2のアプリケーションは、権限が付与されたアプリケーションの識別及びソースを第1のデバイス上の第6のアプリケーションに伝送することができ、第6のアプリケーションは、権限が付与されたアプリケーションを実行し、識別を付与し、権限が付与されたアプリケーションは、識別を第1のデバイス上に記憶し、かつそのソースに割り当てる。
【0026】
識別は、第1のデバイス上のアプリケーションによりユーザ入力から導き出され、かつ永続的に記憶され得る。
【0027】
第1のデバイス上の第1のアプリケーションは、識別を用いて、第3のアプリケーション及び/又は第3のアプリケーションによって提供される第1のサービスを識別する第4のメッセージを、外部通信サービスを介して第2のデバイス上の第2のアプリケーションに送信することができる。
【0028】
第1のデバイス上の第1のアプリケーションは、識別を使用して、外部通信サービスを介して第2のデバイス上の第2のアプリケーションに第5のメッセージを送信することができ、第5のメッセージは、第2のアプリケーションに第2のアプリケーションと通信サービスとの間に接続を確立するよう促す。
【0029】
第2のデバイス上で実行される第3のアプリケーション、及び/又は第2のデバイス上で実行される第1のサービスが、第1のメッセージに反応して、又は操作入力に反応して即座に、又は後の時点に実行され得る。
【0030】
殊に、第3のアプリケーションは、第1のデバイス上の再生と調整されたユーザインターフェースを提供し、調整は、第1のアプリケーションと第3のアプリケーションとの間で確立される通信チャネルを用いて行われる。
【0031】
その場合、言うまでもなく、方法の枠内で実行されるステップは、デバイスに永続的に記憶され、ステップを実行するようにデバイスを設定するインストラクションによって実行され得る。
【0032】
以下、本発明が、詳細な説明において実施例をもとにして説明され、図面が参照される。
【図面の簡単な説明】
【0033】
【
図1a】
図1aは、第1のデバイス及び第2のデバイスを有する第1の例示的なシステムを示す。
【
図1b】
図1bは、第1のデバイス及び第2のデバイスを有する第2の例示的なシステムを示す。
【
図1c】
図1cは、第1のデバイス及び第2のデバイスを有する第3の例示的なシステムを示す。
【
図1d】
図1dは、第1のデバイス及び第2のデバイスを有する第4の例示的なシステムを示す。
【
図1e】
図1eは、第1のデバイス及び第2のデバイスを有する第5の例示的なシステムを示す。
【
図2】
図2は、
図1a、
図1b、
図1c及び
図1dに示されるシステムの第1のデバイス上の第1のアプリケーションと第2のデバイス上の第2のアプリケーションとの間に通信チャネルを確立するためのプロセスを示す。
【
図3】
図3は、第2のデバイス上の第2のアプリケーションの他に、第3のデバイス上の別のアプリケーションがすぐに接続できる状態であることを知らせる、
図2に示されるプロセスの変更形態を示す。
【
図4】
図4は、第1のアプリケーションに第3のアプリケーション又は第1のサービスを開始する権限が付与されているかどうかが検査される、
図2に示されるプロセスのさらなるステップを示す。
【
図5】
図5は、第2のアプリケーションが通信サービスを検索(及び発見)する、
図4に示されるプロセスのさらなるステップを示す。
【
図6】
図6は、第2のアプリケーションが通信サービスによる応答がなされるまで通信チャネルの確立を試行する、
図2に示されるプロセスのさらに別の変更形態を示す。
【発明を実施するための形態】
【0034】
その場合、図面において同じ、又は機能的に類似した要素には同じ参照符号が付されている。
【0035】
図1aは、内部又は外部無線ユニット14aを介して第2のデバイス16及び第3のデバイス18とデータを交換することができる第1のデバイス12を備える第1のシステム10を示す。第1のデバイス12は、画像データ及び/又は音声データを再生するように設定され得る。例えば、第1のデバイス12は、1つ又は複数の放送チャネルを無線インターフェース又はケーブルインターフェースを介して受信するように、並びに選択された放送チャネルを含む画像データ及び/又は音声データを(画面上に、又は1つ若しくは複数のスピーカで)再生するように設定されているテレビ受像機(例えばHbbTV対応テレビ受像機)であり得る。第2のデバイス16及び第3のデバイス18は、携帯機器(例えばタブレット、携帯電話など)として形成され得、同様に画像データ及び/又は音声データを(画面上に、及び1つ又は複数のスピーカで)再生するように設定され得る。デバイス12、16、18は、ネットワーク(例えば、WLAN対応ルータ14aによって構成されるホームネットワークなどの)ノードであり得、ネットワーク内でアドレスによりアドレス指定可能であり得る。
【0036】
図1bは、第2のデバイス16及び第3のデバイス18が無線経路を介してではなく、有線伝送経路を介して(例えば、ルータ14b及びイーサネット(登録商標)接続を介して)第1のデバイス12と接続されるという点で、
図1aに示されるシステム10とは異なる第2のシステム10を示す。
図1cは、第2のデバイス16が無線経路を介してではなく、有線伝送経路を介して(例えば、ルータ14b及びイーサネット接続を介して)第1のデバイス12と接続されるという点で、
図1aに示されるシステム10とは異なる第3のシステム10を示す。
図1dは、第3のデバイス18が無線経路を介してではなく、有線伝送経路を介して(例えば、ルータ14b及びイーサネット接続を介して)第1のデバイス12と接続されるという点で、
図1aに示されるシステム10とは異なる第4のシステム10を示す。
【0037】
図1eは、第1のデバイス12が無線を介してルータ14bと接続され、ルータ14bも同様に無線を介して第2のデバイス16及び第3のデバイス18と接続されるという点で、
図1b~
図1dに示されるシステム10とは異なる第5のシステム10を示す。その場合、当然のことながら、第2のデバイス16及び/又は第3のデバイス18をルータ14bと有線伝送経路を介して接続することもできる。
【0038】
図2は、第1のデバイス12と第2のデバイス16との間に通信チャネルを確立するためのプロセスを示す。この場合、第1のアプリケーション20の識別、IDが、例えばタイプ識別子「Typ1」(例えば、「ランチャアプリ実装の名称」)の形で利用可能であると想定される。
図2に示されるセッションは、第1のアプリケーション20(例えば、HbbTVアプリケーション)が通信サービス22(例えば、APP2APPローカルエンドポイント)への接続を開く(第1のアプリケーションが対応するURLにIDを付ける)ことで始まる。
【0039】
図5及び
図6に示されるように、
図2に示されたシーケンスに、通信サービス22(又はAPP2APPリモートエンドポイント)を見つけ出し、それに接続するための第2のアプリケーション24による試行がすでに先行する可能性がある。例えば、第2のアプリケーション24は、通信サービス発見ルーチンを(例えば、HbbTV-2で表される「Discovery」ルーチンによって)実行することができ、第2のアプリケーションは、この通信サービス発見ルーチンによって通信サービス22(例えばAPP2APPリモートエンドポイント)を見つけ出す。その場合、通信サービス22を常に利用可能にするか、又は第1のアプリケーション20が通信サービス22への接続を開いたままにしている間だけ利用可能にすることもできる。例えば、HbbTV-2仕様では、HbbTVアプリケーションによって開かれた後のみ、及びHbbTVアプリケーションが通信サービス22への接続を閉じるまでの間のみAPP2APPリモートエンドポイントのAPP2APPリモートURLに到達可能であり得る。したがって、対応するリモートステーション(又はAPP2APPローカルエンドポイント)に接続しているアプリケーションがないため、接続試行が失敗する可能性がある。接続されていたアプリケーションが終了したため、それまで確立されていた接続が中断された可能もある。
【0040】
第2のアプリケーション24が通信サービス22(又はAPP2APPリモートエンドポイント)を見つけ出した後、第2のアプリケーションは、この通信サービスと、
図2に示されるように接続を確立することができ、第2のアプリケーションは、例えば(第2のアプリケーションに割り当てられた)IDをAPP2APPリモートURLに付け、対応するリクエスト30を通信サービス22に送信する。リクエスト32における第1のアプリケーション20とリクエスト30における第2のアプリケーションによって示されたIDが一致する場合、第1のデバイス12上の通信サービス22は、2つのアプリケーション20、24の間に接続を作成する。通信サービス22は、メッセージ34(「pairingcompleted」)によって第1のアプリケーション20及び/又は第2のアプリケーション24に接続の確立について知らせることができる。次に、第1のアプリケーション20は、第2のアプリケーション24における通信サービス22により、第2のデバイス16(例えば、「Second Screen」)上の第3のアプリケーション26及び/又は第1のサービス28の開始を対応するメッセージ36で要求することができる。
【0041】
第2のアプリケーション24は、第1のデバイス12上の様々なプロバイダのアプリケーション20(例えば様々なHbbTVアプリケーション)、又は様々なソースからのアプリケーション20が第2のデバイス16上のアプリケーション/サービスを開始することを可能にするように設定され得る。アプリケーション20が第1のデバイス12上で第2のアプリケーション24と接続できるようにするために、それぞれのアプリケーション20が、例えば第2のアプリケーション24のタイプ識別子及び/又はインスタンス識別子であり得るIDを知る必要がある。第1のデバイス12上の特定のアプリケーション20によって記憶されたIDは、同じソースからのものである(又は同じソースからダウンロードされた)アプリケーション20によってしか読み取ることができないことが企図され得る。これに関連して、ソースは、例えば通信プロトコル(例えばhttp又はhttps)、ホスト(例えばwww.irt.de)、及びアプリケーションをダウンロードできるポート(例えば80)によって定義でき、異なった発行者のアプリケーション20は、通常、異なったソースから入手される。ただし、発行者は、様々なソースを介してアプリケーション20を提供することもできる。
【0042】
異なったデバイス(例えば、第2のデバイス16及び第3のデバイス18)上で実行される同じタイプのアプリケーション24は、
図3に示されるように、リクエスト30が行われる場合、インスタンスを区別できるIDを(明示的又は暗黙的に)伝送するという点で区別され得る。IDは、セットアップルーチンの範囲内で、第1のデバイス12上の(様々なソースからの)1つ又は複数の第1のアプリケーション20に伝送され得る。この1つ又は複数のアプリケーション20は、第1のデバイス12上でIDを永続的に記憶することができる。セットアップルーチンは、後からどのアプリケーション20(又はどのソースからのどのアプリケーション20)と特定のタイプのアプリケーション24とが接続することを許すのかをユーザが設定できるように設計され得る。
【0043】
図4に示されるように、第1のアプリケーション20は、開始される第3のアプリケーション26又は開始される第1のサービス28に関するメッセージ36に、第1のアプリケーション20を識別する情報(例えば、第1のアプリケーション20のアプリケーションタイプ)を追加することができる。第2のアプリケーション24は、情報をもとにして、第1のアプリケーション20に、一般に任意のアプリケーション/サービスを開始する、又は特に第3のアプリケーション26及び/若しくは第2のサービス28を開始する権限が付与されているかどうかを検査することができる。例えば、第2のアプリケーション24は、情報を「ブラックリスト」(開始が禁止されているアプリケーション/サービスのリスト)又は「ホワイトリスト」(開始が許可されているアプリケーション/サービスのリスト)と比較することができる。
【0044】
第1のアプリケーション20がどのリストにも現れない場合、第2のアプリケーション24は、第1のアプリケーション20によるこの(及び将来の)アプリケーション開始及び/又はサービス開始に同意するかどうかを示すようにユーザに促すことができる。第1のアプリケーション20にそれぞれのアプリケーション及び/又はそれぞれのサービスを開始する権限が与えられている場合、第2のアプリケーション24は、これを第1のアプリケーション20に通知し、続いて、要求されたアプリケーション又は要求されたサービスの開始を試行することができる。第1のアプリケーション20にそうすることの権限が与えられていない場合、第2のアプリケーション24は、これを第1のアプリケーション20に通知することもできる。この場合、第2のアプリケーション24は、例えば第1のアプリケーション20が「ブラックリスト」に載っていることの根拠として詳細を提供することができる。このことは、第1のアプリケーション20が適切な注意事項をユーザに示すことを可能にする。
【0045】
上記の解決策はHbbTV分野において、HbbTV-2で規定されているメーカ固有の「ランチャ」アプリケーションに対する代替案を提供する。上記の代替案は、TVサービスを包括し、「Second Screen」へのアプリケーション/サービスの「Launch」を可能にし、その場合、追加のWebサーバなしで済ませられる。後者には、ユーザ数に応じて運用コストが増加しないという利点がある。これに加えて、第1のデバイス12上のIDを除いて、第2のアプリケーション24の外部にデータが記憶される必要がない。例えば、開始されたアプリケーション/サービスの履歴、及びユーザが大切にするアプリケーション/サービスのお気に入りリストを含むユーザプロフィールを、第2のデバイス16上の第2のアプリケーション24に保存することができる。したがって、ユーザは自分のデータに対して完全かつ単独の支配権を持ち、データの読み取り、消去、及び変更はユーザにしかできない。
【0046】
ユーザが(第2のアプリケーション24と接続できるはずである)各アプリケーション20のIDを個別に入力しなければならないことを防ぐために、これらのアプリケーション20のリストを第2のアプリケーション24に保存することができ、第2のアプリケーション24を、第1のデバイス12上のアプリケーション20を次々にアドレス指定し、その際、これらのアプリケーションにIDを通知するように設定することができる。
【0047】
そのために、HbbTVアプリケーションの場合、例えばHbbTV-2からのDiscoveryプロトコル及びLaunchプロトコルを使用できる。例えば、第2のアプリケーション24は、通信サービスを介して、又はすでに開始URLのパラメータとして第1のデバイス12上のアプリケーション20にIDを伝送することができ、これらのアプリケーションは、このIDを第1のデバイス12(例えばCookie)に永続的に記憶することができる。その場合、IDを後からの接続のために利用可能である。IDを(場合によって)必要とする第1のデバイス12上のアプリケーション20のリストは、第2のアプリケーション24の「Update」時に更新され得る。更新後、(第1のデバイス12上のアプリケーション20の順次アドレス指定を伴う)新たなセットアップを実行することができる。
【0048】
例えば、第2のアプリケーション24は、(例えばHbbTV仕様からのDIALプロトコルによるHbbTV環境で)第1のデバイス12上の特定のソースからのアプリケーション20を開始することができ、その際に、IDを伝送することができる。そのソースからのアプリケーション20はIDを記憶することができ、別のソースからのアプリケーション20に転送することができる。別のソースからのアプリケーション20もまたIDを記憶することができ、このアプリケーション自体としては、別のソースからのアプリケーション20に転送することができる、等々である。
【0049】
アプリケーション20がIDをどこに転送すべきかを様々な方法で定義することができる。例えば、特定のソースからのアプリケーション20に、IDが転送されるべき別のアプリケーション20のリストを提供することができ、そのリストを転送時に、リスト上の第1のアプリケーション20にIDとともに渡すことができる。次に、リスト上の第1のアプリケーション20をリストから削除し、リストをIDとともにリスト上の次のアプリケーション20に渡すことができる、等々である。
【0050】
さらに、第1のアプリケーション20は、第2のアプリケーション24への接続を確立し、それがIDを記憶したことを第2のアプリケーション24に通知することができる。続いて、第2のアプリケーション24は第1のアプリケーション20に、別のソースからの別のアプリケーション20にIDを転送するようコマンドを送信することができ、次いで、このアプリケーションは、第2のアプリケーション24への接続を確立する、等々である。
【0051】
さらに、第2のアプリケーション24(例えば、HbbTV-2仕様からのDIALプロトコルによるHbbTV環境で)は、権限が付与されたソースのすべてのアプリケーション20を次々に開始し、その際に、それぞれIDを伝送することができる。
【0052】
さらに、第2のアプリケーション24は、第1のデバイス12上のアプリケーションを開始し、その際に、権限が付与されたソースのすべてのアプリケーション20のURLを伝送することができる。次に、開始されたアプリケーションは、権限が付与されたソースのアプリケーション20をインラインフレームとして結びつけ、インラインフレームでIDをアプリケーション20に渡すことができる。IDを、例えば、URLパラメータを介して、権限が付与されたソースからのアプリケーション20のアドレスに渡すことができる。さらに、IDを、インラインフレームに埋め込むことによって、W3C Web-Messaging-APIを用いて、開始されたアプリケーションと権限が付与されたアプリケーション20との間で転送することができる。
【0053】
これに加えて、Webserviceも使用できる。第1のデバイス12上のアプリケーション20を第2のアプリケーション24と接続したいが、IDがない場合、アプリケーション20は、Webserviceのアプリケーションへの転送を設定することができる。WebserviceのアプリケーションにIDが提供されていない場合、ユーザにIDの入力を要求することができる。ユーザがIDを入力すると、Webserviceのアプリケーションは、このIDを第1のデバイス12に記憶することができる。続いて、Webserviceのアプリケーションは、第1のデバイス12上のアプリケーション20へのリダイレクトを設定し、その際に、IDを伝送することができる。第1のデバイス12上のアプリケーション20は、第1のデバイス12上にIDを記憶することができる。したがって、Webserviceのアプリケーションへの転送により、第1のデバイス12上のすべてのアプリケーション20にIDを利用可能にすることができる。
【0054】
これに加えて、Android及びiOSオペレーティングシステムを有する第2のデバイス16では、WebserviceはGoogleの「Firebase-Cloud-Messaging」Serviceへの中央ゲートウェイとして用いることもできる(第2のデバイス16のための他のプラットフォームは同等のサービスを提供する)。デバイス16上においてバックグラウンドで実行され、特別な特権を持たないアプリケーション24は、典型的には、メインメモリやCPUなどのリソースを解放するために、一定時間後にオペレーティングシステムによってクリーンアップされる。この状態では、上記のアプリケーション24はもはやCodeを実行することができない。すなわち、第2のアプリケーション24は、クリーンアップされた状態では、ネットワーク(ホームネットワーク)内の第1のデバイス12又は通信サービス22を検索することも、第1のアプリケーション20からのメッセージに反応することもできなくなっている。ユーザによる第2のアプリケーション24の新たな開始の他に、第2のアプリケーション24を再び実行できるようにするために、期限が決められたタスク(例えばAndroidでの「JobScheduler」)及び「Firebase-Cloud-Message」(FCM)を利用することができる。FCMは、Firebase-Cloud-Messaging-Serviceによりデバイス16上のアプリケーションに送信され得るプッシュメッセージである。
【0055】
アプリケーション24は、FCMへの反応として、ユーザにメッセージを(例えば、場合によってはバイブレーションアラーム及び/又は信号音によって補助されるステータスバーの「アイコン」としての「Notification」)表示することができ、その場合、ユーザはそれによって第2のアプリケーション24を再び開始することができる。Androidでは、FCMによっていわゆる「Foreground」Serviceとしてアプリケーション24を開始することもできる。これは、デバイス16上においてバックグラウンドで実行されるサービスであるが、例えばステータスバーのアイコンによってユーザに可視である。第1のデバイス12上のFCMアプリケーション20に関連して、Webserviceは、第2のデバイス16上の到達可能でない第2のアプリケーション24でこれらの第2のアプリケーションを再び到達可能にするアクションをトリガする可能性を提供する。
【符号の説明】
【0056】
10 システム
12 第1のデバイス
14a 無線ユニット
14b ルータ
16 第2のデバイス
18 第3のデバイス
20 第1のアプリケーション
22 通信サービス
24 第2のアプリケーション
26 第3のアプリケーション
28 第1のサービス
30 リクエスト
32 リクエスト
34 メッセージ
36 メッセージ