JP6770872B2 - Terminal devices and programs - Google Patents
Terminal devices and programs Download PDFInfo
- Publication number
- JP6770872B2 JP6770872B2 JP2016217390A JP2016217390A JP6770872B2 JP 6770872 B2 JP6770872 B2 JP 6770872B2 JP 2016217390 A JP2016217390 A JP 2016217390A JP 2016217390 A JP2016217390 A JP 2016217390A JP 6770872 B2 JP6770872 B2 JP 6770872B2
- Authority
- JP
- Japan
- Prior art keywords
- application
- service
- unit
- cooperation
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
本発明は、端末装置及びプログラムに関する。 The present invention relates to terminal devices and programs.
近年、放送通信連携サービスを実現するためのシステムに関する研究開発が盛んに行われている。ハイブリッドキャストは、日本の代表的な放送通信連携サービスの一つであり、その技術仕様が策定されている(例えば、非特許文献1、2参照)。この技術仕様の規格に則り、2013年よりハイブリッドキャストのサービスが開始されている。例えば、HTML(Hypertext Markup Language)5を用いて記述された放送マネージドアプリケーションによるサービスが、複数の放送局より提供されている。「アプリケーション」とは、アプリケーションプログラムの略称であり、以下では、「アプリ」とも記載する。放送マネージドアプリは、放送送信側から送信される放送サービスの制御信号を用いて、起動、終了、強制終了などのライフサイクルが制御されるアプリである。 In recent years, research and development on systems for realizing broadcast communication cooperation services have been actively carried out. Hybridcast is one of Japan's representative broadcasting and communication cooperation services, and its technical specifications have been established (see, for example, Non-Patent Documents 1 and 2). In accordance with the standard of this technical specification, the hybrid cast service has been started in 2013. For example, a service by a broadcast managed application described using HTML (Hypertext Markup Language) 5 is provided by a plurality of broadcasting stations. "Application" is an abbreviation for an application program, and is also referred to as "application" below. A broadcast managed application is an application in which a life cycle such as activation, termination, and forced termination is controlled by using a control signal of a broadcasting service transmitted from a broadcasting transmitting side.
ハイブリッドキャストでは、テレビなどの受信装置と、スマートフォンやタブレットなどの端末装置とが連携する機能を利用することが可能である。以下では、受信装置と連携する端末装置を連携端末とも記載する。連携機能の具体的な一例として、テレビで実行される放送マネージドアプリと、端末装置にインストールされたコンパニオンアプリ上で動作するWeb(ウェブ)アプリとの間で、テキストメッセージを相互に送受信することができる。 In hybrid cast, it is possible to use a function in which a receiving device such as a television and a terminal device such as a smartphone or tablet are linked. In the following, the terminal device linked with the receiving device is also described as a linked terminal. As a concrete example of the cooperation function, it is possible to send and receive text messages between a broadcast managed application executed on a TV and a Web (web) application running on a companion application installed on a terminal device. it can.
また、テレビ及び連携端末において、複数の放送外マネージドアプリを実行する技術がある(例えば、特許文献1参照)。放送外マネージドアプリとは、ユーザの操作によって、ライフサイクルが制御されるアプリである。 In addition, there is a technique for executing a plurality of non-broadcast managed applications on a television and a linked terminal (see, for example, Patent Document 1). A non-broadcast managed application is an application whose life cycle is controlled by a user operation.
しかしながら、現行のハイブリッドキャスト(登録商標)の放送マネージドアプリケーション規格においては、テレビジョン受信装置(以下、受信装置と呼ぶ)と連携端末において同時に実行可能なアプリケーション(以下、アプリと呼ぶ)が1つずつである。そのうえ、双方のアプリを同一のサービス事業者が提供する場合でしか連携することができない。そのため、既存技術においては、連携端末で実行されるアプリのサービス提供者が複数あるなど、連携端末で実行されるアプリが複数個である場合に、テレビで実行される1個のアプリと、連携端末で実行される複数個のアプリとが連携することについては考慮されていなかった。 However, in the current hybrid cast (registered trademark) broadcast managed application standard, there is one application (hereinafter referred to as an application) that can be executed simultaneously on a television receiving device (hereinafter referred to as a receiving device) and a linked terminal. Is. Moreover, both apps can only be linked if they are provided by the same service provider. Therefore, in the existing technology, when there are multiple application providers executed on the linked terminal, such as multiple service providers of the application executed on the linked terminal, the application is linked with one application executed on the TV. No consideration was given to linking multiple apps running on the device.
また、アプリの制作者は、受信装置上で動作するアプリと連携して連携端末上で動作するアプリ(以下、連携アプリと呼ぶ)では実行できない機能を、連携端末上の別のアプリ(以下、他アプリと呼ぶ、外部アプリとも呼ばれる)の実行により実現させたいと考えることがある。しかし、既存技術では、他アプリを起動することについて考慮されていなかった。また、他アプリの制作者が、他アプリから連携アプリを起動させることや、その際に他アプリとの連携機能を制限させたいと考えることがある。しかしながら、既存技術では、他アプリから連携アプリを起動することや、連携機能を制限することは考慮されていなかった。 In addition, the creator of the application can perform a function that cannot be executed by the application that operates on the linked terminal (hereinafter referred to as the linked application) in cooperation with the application that operates on the receiving device, by another application on the linked terminal (hereinafter referred to as the linked application). You may want to realize it by executing (called another application, also called an external application). However, existing technology did not consider launching other apps. In addition, the creator of another application may want to start a linked application from another application or limit the function of linking with another application at that time. However, in the existing technology, it is not considered to start the linked application from another application or to limit the linked function.
本発明は上記の点に鑑みてなされたものであり、連携アプリの実行により提供される放送通信連携サービスと他アプリの実行により提供されるサービスとのサービス間連携を促進することができる端末装置及びプログラムを提供することを課題とする。 The present invention has been made in view of the above points, and is a terminal device capable of promoting inter-service cooperation between a broadcast communication cooperation service provided by executing a cooperation application and a service provided by executing another application. And to provide the program.
本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、所定のサービスを提供するアプリケーションであるサービスアプリケーションを実行させる連携アプリケーション実行制御部と、受信装置と連携して動作する連携アプリケーションとは別個のアプリケーションである他アプリケーションの実行を制御する他アプリケーション実行制御部とを備え、前記連携アプリケーション実行制御部は、前記サービスアプリケーションを実行するサービス実行部と、前記サービス実行部から、前記他アプリケーションの起動を示す他アプリケーション起動コマンドを取得するサービス実行管理部と、前記他アプリケーション起動コマンドの形式を前記他アプリケーション実行制御部において処理可能なアプリケーション間連携形式に変換するアプリケーション間連携処理部と、前記アプリケーション間連携形式の他アプリケーション起動コマンドを前記他アプリケーション実行制御部に送信するアプリケーション間連携通信部と、を備えることを特徴とする端末装置である。 The present invention has been made to solve the above problems, and one aspect of the present invention is to cooperate with a cooperative application execution control unit for executing a service application, which is an application for providing a predetermined service, and a receiving device. The linked application execution control unit includes a service execution unit that executes the service application and the service execution unit that controls the execution of another application that is a separate application from the linked application that operates. Between the service execution management unit that acquires the other application start command indicating the start of the other application from the unit and the application that converts the format of the other application start command into the inter-application cooperation format that can be processed by the other application execution control unit. It is a terminal device including a cooperation processing unit and an application-to-application cooperation communication unit that transmits another application start command of the application-to-application cooperation format to the other application execution control unit.
また、本発明の一態様は、上述の端末装置において、前記アプリケーション間連携通信部は、前記他アプリケーション実行制御部から前記サービスアプリケーションの起動を示すサービス起動コマンドを受信し、前記アプリケーション間連携処理部は、前記サービス起動コマンドの形式を前記連携アプリケーション実行制御部において処理可能なアプリ内連携形式に変換し、前記連携アプリケーション実行制御部は、前記アプリ内連携形式のサービス起動コマンドが示すサービスに係るサービスアプリケーションを起動させるサービス実行管理部を備えることを特徴とする。 Further, in one aspect of the present invention, in the above-mentioned terminal device, the inter-application cooperation communication unit receives a service start command indicating the start of the service application from the other application execution control unit, and the inter-application cooperation processing unit. Converts the format of the service start command into an in-app cooperation format that can be processed by the cooperation application execution control unit, and the cooperation application execution control unit is a service related to the service indicated by the service start command of the cooperation application execution control unit. It is characterized by having a service execution management unit that starts an application.
また、本発明の一態様は、上述の端末装置において、前記連携アプリケーション実行制御部は、少なくとも前記他アプリケーションと前記サービス起動コマンドが示すサービスのいずれかに基づいて、前記サービス起動コマンドが示すサービスに係るサービスアプリケーションの起動の可否を判定するアプリケーション間連携条件管理部を備えることを特徴とする。 Further, in one aspect of the present invention, in the terminal device described above, the linked application execution control unit may be a service indicated by the service activation command based on at least one of the other application and the service indicated by the service activation command. It is characterized by including an inter-application cooperation condition management unit that determines whether or not the service application can be started.
また、本発明の一態様は、上述の端末装置において、前記連携アプリケーション実行制御部は、受信した放送信号と連携して所定のサービスを提供するアプリケーションを実行する受信装置との間で接続を確立させる端末連携部を備え、前記サービス実行管理部は、前記受信装置から他アプリケーション起動コマンドを取得することを特徴とする。 Further, in one aspect of the present invention, in the above-mentioned terminal device, the linked application execution control unit establishes a connection with a receiving device that executes an application that provides a predetermined service in cooperation with the received broadcast signal. The service execution management unit includes a terminal cooperation unit to be operated, and is characterized in that the service execution management unit acquires another application start command from the receiving device.
また、本発明の一態様は、コンピュータに、所定のサービスを提供するアプリケーションであるサービスアプリケーションを実行させる連携アプリケーション実行制御部と、受信装置と連携して動作する連携アプリケーションとは別個のアプリケーションである他アプリケーションの実行を制御する他アプリケーション実行制御部とを備え、前記連携アプリケーション実行制御部は、前記サービスアプリケーションを実行するサービス実行部と、前記サービス実行部から、前記他アプリケーションの起動を示す他アプリケーション起動コマンドを取得するサービス実行管理部と、前記他アプリケーション起動コマンドの形式を前記他アプリケーション実行制御部において処理可能なアプリケーション間連携形式に変換するアプリケーション間連携処理部と、前記アプリケーション間連携形式の他アプリケーション起動コマンドを前記他アプリケーション実行制御部に送信するアプリケーション間連携通信部と、を備えることを特徴とする端末装置として機能させるためのプログラムである。 Further, one aspect of the present invention is an application in which a linked application execution control unit that causes a computer to execute a service application that is an application that provides a predetermined service and a linked application that operates in cooperation with a receiving device are separate applications. The other application execution control unit that controls the execution of the other application is provided, and the linked application execution control unit includes the service execution unit that executes the service application and the other application that indicates the activation of the other application from the service execution unit. Other than the service execution management unit that acquires the start command, the inter-application cooperation processing unit that converts the format of the other application start command into the inter-application cooperation format that can be processed by the other application execution control unit, and the inter-application cooperation format. It is a program for functioning as a terminal device characterized by including an inter-application cooperation communication unit that transmits an application start command to the other application execution control unit.
本発明によれば、連携アプリの実行により提供される放送通信連携サービスと他アプリの実行により提供されるサービスとのサービス間連携を促進することができる。 According to the present invention, it is possible to promote inter-service cooperation between a broadcast communication cooperation service provided by executing a linked application and a service provided by executing another application.
以下、図面を参照しながら本発明の実施形態を詳細に説明する。以下では、「アプリケーションプログラム」を、「アプリケーション」又は「アプリ」とも記載する。また、以下の説明では、アプリに記述された命令で指定される処理を実行することを、単に「アプリを実行」又は「アプリの実行」と呼ぶことがある。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the following, the "application program" is also referred to as an "application" or an "app". Further, in the following description, executing the process specified by the instruction described in the application may be simply referred to as "execution of the application" or "execution of the application".
図1は、本実施形態の一実施形態による放送通信連携システム1の全体構成図である。放送通信連携システム1は、放送送出装置2と、サービスサーバ3と、受信装置4と、連携端末5とを有する。放送送出装置2及びサービスサーバ3は送信側の装置であり、受信装置4及び連携端末5は、受信側の装置である。
FIG. 1 is an overall configuration diagram of a broadcast communication cooperation system 1 according to an embodiment of the present embodiment. The broadcast communication cooperation system 1 includes a
放送送出装置2は、放送信号を送出する。サービスサーバ3は、アプリ本体やアプリで利用するコンテンツデータを、インターネットを介して受信側の装置へ配信する。アプリ本体とは、アプリケーションのプログラムである。受信装置4は、例えば、ハイブリッドキャスト対応テレビである。連携端末5は、例えば、スマートフォンやタブレット端末などの端末装置である。受信装置4及び連携端末5は、インターネットを介してサービスサーバ3と相互に通信できる。また、受信装置4と連携端末5は、無線LAN(Local Area Network)等のローカルネットワークを介して接続する。
The
放送通信連携サービスの形態は複数存在するが、本実施形態の放送通信連携システム1では、ハイブリッドキャスト技術仕様(非特許文献1、2)に基づき、受信装置4において、デジタル放送サービスとインターネットサービスとが連携動作することを想定する。受信装置4が、放送またはインターネットにより配信されるアプリを実行することで、インターネット上のコンテンツを取得できるようになり、ユーザが放送通信連携サービスを利用できるようになる。さらに、ハイブリッドキャスト技術仕様に則り、受信装置4と連携端末5にインストールした端末側連携アプリとが連携動作する。
There are a plurality of forms of the broadcast communication cooperation service, but in the broadcast communication cooperation system 1 of the present embodiment, the digital broadcasting service and the Internet service are provided in the receiving
なお、本実施形態においては、受信装置4において動作するアプリは、放送事業者が配信する放送マネージドアプリとする。放送マネージドアプリは、放送送出装置2から送信される放送サービスの制御信号に基づいて、起動、終了、強制終了などのライフサイクルが制御される。
In the present embodiment, the application that operates in the receiving
連携端末5に実装される端末側連携アプリは、通信により接続される他の装置である受信装置4と連携して動作するコンパニオンアプリである。端末側連携アプリは、受信装置4により実行される放送マネージドアプリと連携動作する1以上のサービスアプリを実行する。
The terminal-side cooperation application implemented in the
放送マネージドアプリとサービスアプリとは連携動作することにより、ユーザへ提供するサービスを実行する。サービスとは、ユーザが連携端末5に行った操作に従って動作した結果の画像、映像、音声を、連携端末5に、又は、受信装置4及び連携端末5に出力することである。サービスの実行には、受信装置4が有する受信機機能から取得した情報などが利用される。受信機機能は、放送信号を受信し、ユーザにより選択されたチャンネルの番組映像や音声などのコンテンツデータを放送信号から取得し、デコードして出力する一連の機能である。ユーザに提供するサービスは任意であるが、一例として、SNS(ソーシャルネットワークサービス)、天気予報やニュースなどの情報の提供、外国語字幕の提供、テレビ映像とは異なる角度からの映像の提示などがある。
The broadcast managed application and the service application operate in cooperation with each other to execute the service provided to the user. The service is to output the image, video, and sound of the result of the operation according to the operation performed by the user to the
本実施形態では、端末側連携アプリにおいて実行されるサービスアプリがウェブアプリである場合を例に説明する。ウェブアプリとは、ウェブブラウザにより実行されるアプリである。ウェブアプリは、任意の手段により連携端末5に実装される。例えば、ウェブアプリは、放送マネージドアプリから取得が指示されたアプリでもよく、ユーザ操作により取得したアプリでもよく、連携端末5に予め実装されたアプリでもよい。放送マネージドアプリ及びウェブアプリのプログラムは、例えば、HTML(Hypertext Markup Language)により記述される。
In this embodiment, a case where the service application executed in the terminal-side cooperation application is a web application will be described as an example. A web application is an application executed by a web browser. The web application is implemented on the
図2は、受信装置4及び連携端末5のスタック図である。受信装置4は、ハードウェア、OS(Operation System)、レジデント及びアプリ実行部の4層から構成される。アプリ実行部は、例えばHTML5ブラウザであり、放送マネージドアプリを実行する。OS上で実行されるレジデントには、メモリに常駐するソフトウェアによる放送の受信機機能が搭載される。アプリ実行部で実行される放送マネージドアプリは、非特許文献1により規定される拡張API(Application Program Interface)を通してレジデントの受信機機能にアクセスすることができる。ハードウェアは、CPU(central processing unit)、各種メモリ、チューナー、デコーダ、通信装置、表示装置、入力装置などを含む。
FIG. 2 is a stack diagram of the receiving
連携端末5は、ハードウェア、OS及びネイティブアプリ実行部の3層から構成される。ネイティブアプリ実行部は、iOS(登録商標)やAndroid(登録商標)など端末のOSが提供するアプリを実行する。ネイティブアプリ実行部では、複数のネイティブアプリが動作可能である。ネイティブアプリは、特定のOSやプラットフォームで実行可能なプログラムである。本実施形態における端末側連携アプリはネイティブアプリであり、ネイティブアプリ実行部において動作する。なお、端末側連携アプリは、ネイティブアプリでなくてもよい。例えば、端末側連携アプリは、ネイティブアプリから、ネイティブアプリではないブラウザを呼び出し、ブラウザによりウェブアプリを実行させてもよい。ハードウェアは、CPU、各種メモリ、通信装置、表示装置、入力装置などを含む。
The
ハイブリッドキャストにおける端末連携機能は、受信装置4のアプリ実行部で動作する放送マネージドアプリと、連携端末5のネイティブアプリ実行部が実行する端末側連携アプリの内部で動作するウェブアプリの間で実現される。放送マネージドアプリとウェブアプリとの間では、非特許文献1で規定される拡張APIを用いてテキストメッセージを送信する。テキストメッセージには、任意のメッセージ内容を記述することができる。例えば、メッセージ内容は、アプリに対する各種の実行命令や、アプリが動作する際に用いられる付加的な情報などでもよい。
The terminal cooperation function in the hybrid cast is realized between the broadcast managed application that operates in the application execution unit of the receiving
図3は、受信装置4の内部構成を示すブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。同図に示す受信装置4は、放送受信部401、分離部402、映像復号部403、音声復号部404、データ放送実行部405、通信入出力部406、リモコン入力制御部407、電源制御部408、アプリ実行部409、アプリ制御部410、放送通信連携部411、端末連携部412、映像合成部413、映像表示部414、音声合成部415及び音声出力部416を備えて構成される。
FIG. 3 is a block diagram showing an internal configuration of the receiving
放送受信部401は、チューナーであり、放送送出装置2から送出された放送信号を受信し、復調する。分離部402は、放送受信部401が受信し、復調した放送信号を、映像データ、音声データなどのコンテンツデータや、コンテンツデータ以外のデータに分離する。コンテンツ以外のデータには、例えば、データ放送や、受信チャンネル、番組情報が記述されたSI(Service Information)や、イベントメッセージなどが含まれる。映像復号部403は、映像データを復号する。音声復号部404は、音声データを復号する。データ放送実行部405は、BML(Broadcast Markup Language)ブラウザであり、データ放送を実行する。
The
通信入出力部406は、通信ネットワークに接続するためのインターフェースである。通信入出力部406は、インターネットなどを介してアプリマーケット、アカウント管理サーバ、アプリ配信サーバなどのサービスサーバ3と接続する。また、通信入出力部406は、無線LANなどのローカルネットワークを介して連携端末5と接続する。リモコン入力制御部407は、リモコン(リモートコントローラ)からユーザがリモコンに行った操作を示すデータを受信する。電源制御部408は、受信装置4の電源の制御を行う。
The communication input /
アプリ実行部409は、放送マネージドアプリを実行するウェブ(Web)ブラウザである。放送マネージドアプリは、1以上のサービスの機能を提供する。アプリ制御部410は、放送信号から分離されたデータに含まれる情報に基づいて、放送マネージドアプリの起動や終了などの制御を行う。例えば、アプリ制御部410は、現在選択されている放送事業者(チャンネル)の放送マネージドアプリを、放送信号から分離されたAITに設定されている情報などに基づいて制御する。アプリ制御部410は、起動した放送マネージドアプリの識別情報を端末連携部412に通知する。
The
放送通信連携部411は、放送マネージドアプリにおいて放送又は通信により取得したコンテンツを連携動作させるために、アプリ実行部409に対して拡張APIで規定される機能を提供する。具体的には、放送通信連携部411は、受信中の放送信号に含まれるSIやイベントメッセージなどの情報や受信装置4が備える機能などへのアクセス手段を提供する。端末連携部412は、連携端末5とのペアリング処理と、受信装置4の放送マネージドアプリと連携端末5のウェブアプリ間の通信を仲介する処理とを行う。端末連携部412は、後述する図5に示す連携端末5の端末連携部531とペアで動作する。端末連携部412は、起動された放送マネージドアプリの識別情報を連携端末5に通知する。
The broadcast
映像合成部413は、映像復号部403が復号した放送番組の映像データと、データ放送実行部405やアプリ実行部409の処理結果に基づき出力された映像データとを合成し、映像表示部414に出力する。映像表示部414は、一般的なディスプレイであり、映像合成部413が合成した映像データの映像を表示する。
The
音声合成部415は、音声復号部404が復号した放送番組の音声データと、データ放送実行部405やアプリ実行部409の処理結果に基づき出力された音声データとを合成し、音声出力部416に出力する。音声出力部416は、一般的なスピーカーであり、音声合成部415が合成した音声データを音声により出力する。
The
図4は、アプリ実行部409の詳細な構成を示す機能ブロック図である。アプリ実行部409は、サービス実行部421、サービス実行管理部422及びメッセージ制御部423を有する。なお、アプリ実行部409は複数のサービス実行部421を備え得るが、同時に動作する放送マネージドアプリは一つのみとする。同図では、アプリ実行部409が備える複数のサービス実行部421をそれぞれ、サービス実行部421−1、421−2、421−3、…と記載している。
FIG. 4 is a functional block diagram showing a detailed configuration of the
サービス実行部421は、アプリ制御部410による制御に基づき、放送マネージドアプリに含まれるサービス機能を実行する。サービス実行管理部422は、各サービス実行部421の起動及び終了の制御や状態管理を行い、複数のサービス実行部421を並列に実行させる。
The service execution unit 421 executes the service function included in the broadcast managed application based on the control by the
メッセージ制御部423は、サービス実行部421が実行する放送マネージドアプリのサービス機能と連携端末5が実行するウェブアプリとの間のメッセージを適切に送受信するための制御を行う。メッセージ制御部423は、サービス識別管理部4231、メッセージ受信部4232、メッセージ判定部4233、メッセージ分配部4234及び送信元サービス設定部4235を有する。
The
サービス識別管理部4231は、サービス実行部421の識別子と、そのサービス実行部421により実行されるサービスの識別子との対応表を例えばリスト形式で管理する。サービスの識別子は、予め決められる。なお、各放送マネージドアプリは、プレフィックスを付加することなどにより、送信先のアドレスとして、サービス毎に予め決められた識別子を、メッセージの一部に付加して送受信を行う。
The service
メッセージ受信部4232は、連携端末5からのメッセージ、及び、サービス実行部421からのメッセージを受信する。メッセージ受信部4232は、受信したメッセージを、メッセージ判定部4233及びメッセージ分配部4234に送信する。なお、メッセージ受信部4232は、メッセージ判定部4233に宛先の判定に必要な情報のみを送信してもよい。
The
メッセージ判定部4233は、メッセージ受信部4232から受信したメッセージに付加されたサービスの識別子と、サービス識別管理部4231に記憶される対応表とを照合してメッセージの送信先を決定し、メッセージ分配部4234に通知する。メッセージ判定部4233は、メッセージに付加された送信元のサービスの識別子と送信先のサービスの識別子とが同一の場合は連携端末5を送信先とし、異なる場合はサービス実行部421を送信先とする。また、メッセージ判定部4233は、実施形態によっては、サービス間の通信チャンネルを確立するための識別子の発行や、その識別子に基づいたメッセージの送信先の決定を行う。
The
メッセージ分配部4234は、メッセージ受信部4232から受信したメッセージを、メッセージ判定部4233が決定した送信先に送信する。送信元サービス設定部4235は、サービス実行部421が連携端末5または他のサービス実行部421に対して送信するメッセージに、そのサービス実行部421において実行中の放送マネージドアプリのサービスの識別子を付加する。
The
図5は、連携端末5の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。同図においては、端末側連携アプリを中心とした機能構成を示す。連携端末5は、ハードウェア部51、OS部52、連携アプリ実行制御部53及び他アプリ実行制御部54を有する。
FIG. 5 is a functional block diagram showing the configuration of the
ハードウェア部51は、CPU、各種メモリ、通信装置、ディスプレイ(表示装置)、ユーザ操作を入力するための入力デバイス(入力装置)などの各種ハードウェアからなる。ディスプレイがタッチパネルである場合、入力デバイスは、タッチパネルに配されたタッチセンサである。ハードウェア部51は、通信装置により実現される通信入出力部511を有する。
The
通信入出力部511は、通信ネットワークに接続するためのインターフェースである。通信入出力部511は、インターネットなどを介してサービスサーバ3と接続する。また、通信入出力部511は、無線LANなどのローカルネットワークを介して受信装置4と接続する。OS部52は、OSにより実現され、端末全体を制御し、連携アプリ実行制御部53及び他アプリ実行制御部54に、ハードウェア部51へのインターフェースを提供する。
The communication input /
連携アプリ実行制御部53は、CPUがメモリに記憶された端末側連携アプリを読み出して実行することにより実現される。連携アプリ実行制御部53は、端末連携部531、サービス実行部532、サービス実行管理部533、メッセージ制御部534及びアプリ間連携部535を有する。複数のサービス実行部532をそれぞれ、サービス実行部532−1、532−2、532−3、…と記載することで区別する。
The linked application
端末連携部531は、受信装置4とのペアリング処理と、受信装置4の放送マネージドアプリと連携端末5のウェブアプリ間の通信を仲介する処理とを行う。端末連携部531は、受信装置4の端末連携部412とペアで動作する。
The
サービス実行部532は、個々のサービスを提供するためのウェブアプリを実行する。サービス実行部532の実装方法としては、Android(登録商標)搭載端末におけるWebView、iOS搭載端末におけるUIWebViewなどが挙げられる。サービス実行部532は複数存在することを前提としており、各サービス実行部532には一意の識別子が割り当てられ、サービスの識別子としても用いられる。各サービス実行部532は、以下のようなウェブアプリを実行する。 The service execution unit 532 executes a web application for providing individual services. Examples of the method of implementing the service execution unit 532 include WebView on an Android (registered trademark) -equipped terminal and UIWebView on an iOS-equipped terminal. It is assumed that there are a plurality of service execution units 532, and each service execution unit 532 is assigned a unique identifier and is also used as a service identifier. Each service execution unit 532 executes the following web application.
(1)現在実際にサービスが提供されている受信装置4の放送マネージドアプリと連携したウェブアプリ。なお、このウェブアプリを実行するのは一つのサービス実行部532である。
(2)複数の放送局が配信する放送マネージドアプリと連携して共通に利用することができるウェブアプリ。
(3)受信装置4と連携しないウェブアプリ。
なお、サービス実行部532は、動作中に他アプリ起動コマンドを発行することがある。他アプリ起動コマンドとは、起動対象の他アプリの起動を指示するためのコマンドである。
(1) A web application linked with the broadcast managed application of the receiving
(2) A web application that can be used in common by linking with a broadcast managed application distributed by multiple broadcasting stations.
(3) A web application that does not work with the
The service execution unit 532 may issue another application start command during operation. The other application start command is a command for instructing the start of another application to be started.
サービス実行管理部533は、各サービス実行部532、又は、サービス実行部532上で実行されるウェブアプリの起動及び終了の制御や状態管理を行い、複数のサービス実行部532を並列に実行させる。サービス実行管理部533は、受信装置4からの指示又はユーザ操作に基づいて、サービス実行部532の起動及び終了の制御や、フォアグラウンドでの動作又はバックグラウンドでの動作など状態の変更を行う。また、サービス実行管理部533は、他アプリ実行制御部54の起動の制御及び起動中の他アプリ実行制御部54からの指示に基づくサービス実行部532の起動の制御を行う。
The service
ハイブリッドキャストでは、受信装置4と連携端末5との間でテキストメッセージを送受信するためのAPIが規定されている。メッセージ制御部534は、受信装置4が実行する放送マネージドアプリと連携端末5の各サービス実行部532が実行するウェブアプリとの間、および、サービス実行部532の間のメッセージを適切に送受信するための制御を行う。
In the hybrid cast, an API for transmitting and receiving a text message between the receiving
アプリ間連携部535は、サービス実行部532と他アプリ実行制御部54とを連携させる。アプリ間連携部535は、サービス実行部532が発行した他アプリ起動コマンド、又は受信装置4から受信した他アプリ起動コマンドで指定される他アプリを他アプリ実行制御部54に起動させる。サービス実行部532は、発行した他アプリ起動コマンドをサービス実行管理部533に出力する。
他方、アプリ間連携部535は、他アプリ実行制御部54が発行したサービス起動コマンドをサービス実行管理部533に出力する。サービス起動コマンドとは、提供対象のサービスを提供するためのウェブアプリの起動を指示するためのコマンドである。サービス実行管理部533は、アプリ間連携部535から入力されたサービス起動コマンドで指定されるサービスを提供するウェブアプリを特定し、特定したウェブアプリを起動させる。
The
On the other hand, the
他アプリ実行制御部54は、CPUがメモリに記憶された他アプリを読み出して実行することにより実現される。他アプリ実行制御部54は、アプリ間連携部535から入力される他アプリ起動コマンドで指示される他アプリ、又は入力デバイスから入力される操作信号で指示される他アプリを起動する。他アプリ実行制御部54は、他アプリの実行中においてサービス起動コマンドを発行することがある。他アプリ実行制御部54は、発行したサービス起動コマンドをアプリ間連携部535に出力する。
The other application
次に、メッセージ制御部534の詳細を、図6を用いて説明する。
図6は、メッセージ制御部534の詳細な構成を示す機能ブロック図である。メッセージ制御部534は、サービス識別管理部5341、メッセージ受信部5342、メッセージ判定部5343、メッセージ分配部5344及び送信元サービス設定部5345を有する。
Next, the details of the
FIG. 6 is a functional block diagram showing a detailed configuration of the
サービス識別管理部5341は、サービス実行部532の識別子と、そのサービス実行部532が実行するウェブアプリにより提供されるサービスであるウェブサービスの識別子との対応表を例えばリスト形式で管理する。ウェブサービスの識別子は、予め決められる。なお、各ウェブサービスは、プレフィックスを付加することなどにより、送信先のアドレスとして、ウェブサービス毎に予め決められた識別子を、メッセージの一部に付加して送受信を行う。
The service
メッセージ受信部5342は、受信装置4からのメッセージ、及び、各サービス実行部532からのメッセージを受信する。メッセージ受信部5342は、受信したメッセージを、メッセージ判定部5343及びメッセージ分配部5344に送信する。なお、メッセージ受信部5342は、メッセージ判定部5343に宛先の判定に必要な情報のみを送信してもよい。
The
メッセージ判定部5343は、メッセージ受信部5342から受信したメッセージに付加されたサービスの識別子と、サービス識別管理部5341に記憶される対応表とを照合してメッセージの送信先を決定し、メッセージ分配部5344に通知する。メッセージ判定部5343は、メッセージに付加された送信元のサービスの識別子と送信先のサービスの識別子とが同一の場合は受信装置4を送信先とし、異なる場合はサービス実行部532を送信先とする。また、メッセージ判定部5343は、実施形態によっては、サービス間の通信チャンネルを確立するための識別子の発行や、その識別子に基づいたメッセージの送信先の決定を行う。
The
メッセージ分配部5344は、メッセージ受信部5342から受信したメッセージを、メッセージ判定部5343が決定した送信先に送信する。送信元サービス設定部5345は、サービス実行部532が受信装置4または他のサービス実行部532に対して送信するメッセージに、送信元のサービス実行部532の識別子を付加する。
The
上述したように、受信装置4で実行される放送マネージドアプリは一つである。そこで、複数のサービスを一つの放送マネージドアプリで実行するために、一つのHTML文書(アプリケーションプログラム)内に複数のサービスそれぞれを実行させるためのプログラムを記述する。例えば、放送局Aが提供する現行の放送マネージドアプリでのサービスAに加え、放送局Aと放送局Bとが共通に提供するサービスXを同時に運用することを想定する。このとき、放送局Aが提供するサービスAのHTML文書内と、放送局Bが提供する放送マネージドアプリのサービスBのHTML文書内に、サービスXの機能をJavaScript(登録商標)等で記述する。さらに、複数のサービスで個々にデバイス間でメッセージを送受信するため、連携端末5のサービス実行管理部533と同等の機能を有するサービス実行管理部422の機能、連携端末5のメッセージ制御部534と同等の機能を有するメッセージ制御部423の機能を、サービスAとサービスBの両方のサービスのHTML文書内にサービスXの機能と同様に記述する。サービス実行管理部422の機能には、サービス実行部421の起動や終了などの制御、サービスごとに画面に表示するか否かの制御が含まれる。
As described above, there is only one broadcast managed application executed by the receiving
次に、放送マネージドアプリの記述例について説明する。図7は、放送マネージドアプリの記述例を示す図である。同図は、放送局Aの放送マネージドアプリを、HTML文書として記述した例である。同図に示すように、divでサービスA、サービスXのそれぞれ表示する要素をグループ化し、idを指定する(serviceA、common_serviceX)。サービス実行部421で実行される各サービスの機能は、JavaScript(登録商標)で記述し、head部分にインクルードする(serviceA.js、common_serviceX)。さらに、サービス実行管理部422によるサービス実行部421の起動や終了などの制御機能(common_appcontrol.js)、メッセージ制御部423の機能(common_messaging.js)、及び、サービス実行管理部422によるサービス毎の表示の制御機能(common_viewcontrol.js)も同様にインクルードする。このようにHTML文書として記述された放送マネージドアプリをアプリ実行部409が実行することにより、アプリ実行部409は、サービス実行部421、サービス実行管理部422及びメッセージ制御部423として動作する。これにより、受信装置4上の放送マネージドアプリと、連携端末5上のコンパニオンアプリ双方に同等の機能が導入されるため、複数のサービスを一対の受信装置4と連携端末5上で利用できるようになる。
なお、サービス実行管理部422、メッセージ制御部423及びサービス実行部421として動作する機能部が、予め受信装置4のアプリ実行部409に実装されていてもよい。
Next, a description example of the broadcast managed application will be described. FIG. 7 is a diagram showing a description example of a broadcast managed application. The figure is an example in which the broadcast managed application of broadcasting station A is described as an HTML document. As shown in the figure, the elements to be displayed for service A and service X are grouped in the div, and the id is specified (serviceA, common_serviceX). The function of each service executed by the service execution unit 421 is described in JavaScript (registered trademark) and included in the head part (serviceA.js, common_serviceX). Further, the service
The function unit that operates as the service
連携端末5のサービス実行管理部533は、受信装置4からの指示、又は、連携端末5にユーザが入力した指示に従って、サービス実行部532によるウェブアプリの起動又は停止を行う。具体的には、受信装置4のアプリ実行部409が実行している放送マネージドアプリからサービス起動指示が出力されると、端末連携部412は連携端末5を送信先とし、通信入出力部406を介してサービス起動指示を送信する。サービス起動指示には、起動対象のウェブアプリを特定する情報が含まれる。連携端末5の端末連携部531は、通信入出力部511を介して受信したサービス起動指示をサービス実行管理部533へ出力する。サービス実行管理部533は、受信したサービス起動指示により起動が指示されたウェブアプリを起動する。あるいは、連携端末5の入力デバイスによりユーザが起動対象のウェブアプリの情報を入力すると、サービス実行管理部533は、その起動対象のウェブアプリを起動する。これにより、連携アプリ実行制御部53において、サービス実行部532が動作する。
The service
図8は、メッセージの例を示す。
図8(a)は、受信装置4において放送マネージドアプリのサービスPの機能を実行しているサービス実行部421から、連携端末5の端末側連携アプリにおいてサービスPのウェブアプリを実行しているサービス実行部532へ送信されるメッセージM11を示す。図8(b)は、連携端末5の端末側連携アプリにおいてサービスPのウェブアプリを実行しているサービス実行部532から、同じく端末側連携アプリにおいてサービスQのウェブアプリを実行しているサービス実行部532に送信されるメッセージM21を示す。メッセージM11は、放送マネージドアプリのサービスPの機能を実行しているサービス実行部421により記述されるメッセージであり、メッセージM12は、サービスPのウェブアプリを実行しているサービス実行部532において記述されるメッセージである。メッセージM11、M21には、送信先のサービスの識別子(dst:ServiceP、dst:ServiceQ)、メッセージ本体(message)が記述される。
FIG. 8 shows an example of a message.
FIG. 8A shows a service in which the service execution unit 421 executing the function of the service P of the broadcast managed application in the receiving
図8(c)に示すメッセージM12及び図8(d)に示すメッセージM22は、連携端末5のメッセージ受信部5342が受信するメッセージである。メッセージM12は、メッセージM11に送信元のサービスPの識別子(src:ServiceP)が付加されたものであり、メッセージM22は、メッセージM21に送信元のサービスPの識別子(src:ServiceP)が付加されたものである。
The message M12 shown in FIG. 8C and the message M22 shown in FIG. 8D are messages received by the
具体的には、受信装置4の送信元サービス設定部4235が、メッセージM11に送信元のサービスPの識別子を追加し、メッセージM12となる。メッセージM12の場合は、放送マネージドアプリを実行することにより生成されるメッセージ制御部423が有する送信元サービス設定部4235の機能(図7におけるcommon_messaging.js)によって、送信元のサービスの識別子が設定される。一方、メッセージM22の場合は、連携端末5の送信元サービス設定部5345が、メッセージM21に送信元のサービスPの識別子を付加する。
Specifically, the source
なお、メッセージのフォーマットはこれらの記述例に限らない。また、本実施形態では、送信元のサービスの識別子と送信先のサービスの識別子のみを記述したが、受信装置4もしくは連携端末5を送信先として記述しても構わない。
The message format is not limited to these description examples. Further, in the present embodiment, only the identifier of the service of the transmission source and the identifier of the service of the transmission destination are described, but the receiving
図9及び図10は、メッセージ制御部423及びメッセージ制御部534の動作を示す処理フローである。以下では、メッセージ制御部534を例にして説明するが、メッセージ制御部423も同様に動作する。
9 and 10 are processing flows showing the operations of the
図9は、メッセージ受信時の処理フローを示す。連携端末5の端末連携部531は、通信入出力部511を介して受信装置4から受信したメッセージを、メッセージ受信部5342に出力する。メッセージ受信部5342は、端末連携部531からメッセージを受信する(ステップS105)。メッセージ受信部5342は、受信したメッセージから送信先のサービスの識別子及び送信元のサービスの識別子を検出する(ステップS110)。メッセージ受信部5342は、メッセージが読み出した送信先のサービスの識別子及び送信元のサービスの識別子をメッセージ判定部5343に通知し、メッセージ全体をメッセージ分配部5344に通知する(ステップS115)。
FIG. 9 shows a processing flow when a message is received. The
メッセージ判定部5343は、サービス識別管理部5341に、送信先のサービスの識別子により特定されるサービスをサービス実行部532が実行しているか否かの照合を依頼する(ステップS120)。サービス識別管理部5341は、メッセージ判定部5343から通知された送信先のサービスの識別子と対応付けて対応表に登録されているサービス実行部532の識別子を取得する。サービス識別管理部5341は、サービス実行部532の識別子が取得できた場合はその識別子を設定した照合結果を、取得できなかった場合はサービス実行部532がないことを示す照合結果を出力する。
The
メッセージ判定部5343は、サービス識別管理部5341から、送信先のサービスの識別子により特定されるサービスを実行するサービス実行部532があることを示す照合結果を受信したと判断すると(ステップS125:はい)、ステップS130の処理を行う。すなわち、メッセージ判定部5343は、メッセージ分配部5344に対して、メッセージに記述された送信先のサービスの識別子により特定されるウェブサービスを実行しているサービス実行部532に、メッセージを送信するよう通知する(ステップS130)。メッセージ分配部5344は、メッセージ判定部5343の指示に従い、メッセージに記述された送信先のサービスの識別子により特定されるサービス実行部532に、メッセージを送信する(ステップS135)。
When the
一方、メッセージ判定部5343は、サービス識別管理部5341から送信先のサービスの識別子により特定されるサービスを実行するサービス実行部532がないことを示す照合結果を受信したと判断すると(ステップS125:いいえ)、ステップS140の処理を行う。すなわち、メッセージ判定部5343は、エラーをメッセージの送信元に返送するなど、所定のエラー処理を行う(ステップS140)。
On the other hand, when the
図10は、メッセージ発行時の処理フローを示す。サービス実行部532は、メッセージを設定し、送信元サービス設定部5345に通知する(ステップS205)。送信元サービス設定部5345は、受信したメッセージに対して、送信元の識別子として、メッセージの送信元のサービス実行部532が実行しているサービスの識別子を追加し、メッセージ受信部5342に通知する(ステップS210)。メッセージ受信部5342は、メッセージから読み出した送信先のサービスの識別子及び送信元のサービスの識別子をメッセージ判定部5343に通知し、メッセージ全体をメッセージ分配部5344に通知する(ステップS215)。
FIG. 10 shows a processing flow at the time of issuing a message. The service execution unit 532 sets a message and notifies the source service setting unit 5345 (step S205). The source
メッセージ判定部5343は、送信先と送信元の識別子が同一か否かを判定する(ステップS220)。メッセージ判定部5343は、送信先と送信元の識別子が同一と判定した場合(ステップS225:はい)、メッセージ分配部5344に対して、端末連携部531を経由して受信装置4にメッセージを送信するよう通知する(ステップS230)。メッセージ分配部5344は、メッセージ判定部5343の指示に従い、メッセージを端末連携部531に出力し、端末連携部531は、メッセージ分配部5344から受信したメッセージを、通信入出力部511を介して受信装置4に送信する(ステップS240)。
The
一方、メッセージ判定部5343は、送信先と送信元の識別子が同一ではないと判定した場合(ステップS225:いいえ)、ステップS235の処理を行う。すなわち、メッセージ判定部5343は、サービス識別管理部5341から、メッセージに記述された送信先のサービスの識別子に対応して対応表に登録されているサービス実行部532の識別子を読み出す。メッセージ判定部5343は、読み出した識別子により特定されるサービス実行部532、つまり、メッセージに記述された送信先のサービスの識別子により特定されるウェブサービスを実行しているサービス実行部532へメッセージを送信するよう、メッセージ分配部5344に通知する(ステップS235)。メッセージ分配部5344は、メッセージ判定部5343により送信先として指示されたサービス実行部532に、メッセージを送信する(ステップS240)。
On the other hand, when the
図11は、受信装置4と連携端末5の間のシーケンス図である。受信装置4のサービス実行部421は、連携端末5において実行されるサービスの識別子を宛先に設定したメッセージを発行する(ステップS305)。送信元サービス設定部4235は、サービス実行部421から受信したメッセージに送信元のサービスの識別子を設定し、メッセージ受信部4232に出力する(ステップS310)。メッセージ受信部4232は、メッセージから取得した送信元のサービスの識別子及び送信先のサービスの識別子をメッセージ判定部4233に通知し(ステップS315)、メッセージ全体をメッセージ分配部4234に通知する(ステップS320)。メッセージ判定部4233は、送信元のサービスの識別子及び送信先のサービスの識別子が同一であるため、連携端末5にメッセージを送信するようメッセージ分配部4234に通知する(ステップS325)。メッセージ分配部4234は、メッセージを端末連携部412に出力し(ステップS330)、端末連携部412は、メッセージを、通信入出力部406を介して連携端末5に送信する。
FIG. 11 is a sequence diagram between the receiving
連携端末5の通信入出力部511は、受信装置4から受信したメッセージを端末連携部531に出力する(ステップS335)。メッセージ受信部5342は、端末連携部531からメッセージを受信する(ステップS340)。メッセージ受信部5342は、メッセージから取得した送信元のサービスの識別子及び送信先のサービスの識別子をメッセージ判定部5343に通知し(ステップS345)、メッセージ全体をメッセージ分配部5344に通知する(ステップS350)。メッセージ判定部5343は、送信先のサービスの識別子により特定されるウェブサービスが存在することを示す照合結果をサービス識別管理部5341から受信すると、ステップS355の処理を行う。すなわち、メッセージ判定部5343は、送信先のサービスの識別子により特定されるウェブサービスを実行しているサービス実行部532へメッセージを出力するようメッセージ分配部5344に指示する(ステップS355)。メッセージ分配部5344は、メッセージ判定部5343に指示されたサービス実行部532へメッセージを出力する(ステップS360)。
The communication input /
図11では、受信装置4から連携端末5へのメッセージの送信例を示したが、連携端末5から受信装置4へのメッセージ送信も同様の手順で実行できる。
Although FIG. 11 shows an example of transmitting a message from the receiving
図12は、連携端末5のウェブアプリ間でメッセージを送信する場合のシーケンス図である。同図では、サービス実行部532−1をサービス実行部(1)、サービス実行部532−2をサービス実行部(2)と記載している。
FIG. 12 is a sequence diagram when a message is transmitted between the web applications of the
サービス実行部532−1は、サービス実行部532−2が実行しているサービスの識別子を宛先に設定したメッセージを発行する(ステップS405)。送信元サービス設定部5345は、サービス実行部532−1から受信したメッセージに送信元のサービスの識別子を設定し、メッセージ受信部5342に出力する(ステップS410)。メッセージ受信部5342は、メッセージから取得した送信元のサービスの識別子及び送信先のサービスの識別子をメッセージ判定部5343に通知し(ステップS415)、メッセージ全体をメッセージ分配部5344に通知する(ステップS420)。メッセージ判定部5343は、送信元のサービスの識別子及び送信先のサービスの識別子が異なるため、送信先のサービスの識別子により特定されるウェブサービスを実行しているサービス実行部532−2にメッセージを送信するようメッセージ分配部5344に通知する(ステップS425)。メッセージ分配部5344は、メッセージ判定部5343に指示されたサービス実行部532−2へメッセージを出力する(ステップS430)。
The service execution unit 532-1 issues a message in which the identifier of the service being executed by the service execution unit 534-2 is set as the destination (step S405). The source
図12では、連携端末5のウェブアプリ間でメッセージを送信する場合ついて示しているが、受信装置4のサービス実行部421間でメッセージを送信する場合についても同様の手順で実行できる。
FIG. 12 shows a case where a message is transmitted between the web applications of the
上述した、図8〜図12の例では、全てのメッセージに送信元のサービスの識別子と送信先のサービスの識別子を付加して送信していたが、サービス間のチャンネルの識別子を付加する実施形態をとっても構わない。この場合、受信装置4の放送マネージドアプリのサービスと連携端末5のウェブサービスとの間、又は、連携端末5におけるウェブサービス間で、メッセージングを開始する前に、接続処理を実行してサービス間のチャンネルを確立する。以降、受信装置4及び連携端末5は、接続解除の処理が実行されるまでは、確立したチャンネルにおいて割り当てられたセッションの識別子に基づき、送信元と送信先の識別子を付加せずにメッセージを送信する。
In the above-described examples of FIGS. 8 to 12, the identifier of the source service and the identifier of the destination service are added to all the messages for transmission, but the embodiment in which the identifier of the channel between the services is added. It doesn't matter. In this case, before starting messaging between the service of the broadcast managed application of the receiving
図13は、受信装置4の放送マネージドアプリのサービスと連携端末5のウェブサービスとの間でセッションの識別子に基づきメッセージを送信する場合のメッセージの設定例を示す図である。図13(a)は、接続登録メッセージM31を、図13(b)は接続登録確認メッセージM32を、図13(c)は接続解除メッセージM33を、図13(d)は接続解除確認メッセージM34を、図13(e)はメッセージ本体が設定されたメッセージM35を示す。
FIG. 13 is a diagram showing an example of setting a message when a message is transmitted between the service of the broadcast managed application of the receiving
接続登録メッセージM31、接続登録確認メッセージM32、接続解除メッセージM33、接続解除確認メッセージM34、メッセージM35には、type属性が含まれている。このtype属性により、メッセージが登録(publish)/登録確認(subscribe)/接続解除(unpublish)/接続解除確認(unsubscribe)/メッセージ本体(body)のいずれであるかが識別可能である。 The connection registration message M31, the connection registration confirmation message M32, the connection disconnection message M33, the connection disconnection confirmation message M34, and the message M35 include a type attribute. By this type attribute, it is possible to identify whether the message is registered (publish) / registration confirmation (subscribe) / disconnection (unpublish) / disconnection confirmation (unsubscribe) / message body (body).
また、接続登録メッセージM31、接続登録確認メッセージM32、接続解除メッセージM33、接続解除確認メッセージM34には、送信元のサービスの識別子(src)及び送信先のサービスの識別子(dst)が設定され、接続登録確認メッセージM32及び接続解除確認メッセージM34には、さらに、確立したチャンネルに割当てられたセッションの識別子(subscribe_ID)が記述される。メッセージ本体(message)が設定されたメッセージM35には、送信元及び送信先は設定されず、セッションの識別子(subscribe_ID)とメッセージの内容(message)が記述される。 Further, in the connection registration message M31, the connection registration confirmation message M32, the connection disconnection message M33, and the connection disconnection confirmation message M34, the identifier of the source service (src) and the identifier of the destination service (dst) are set to connect. The registration confirmation message M32 and the disconnection confirmation message M34 further describe the identifier (subscribe_ID) of the session assigned to the established channel. The source and destination are not set in the message M35 in which the message body (message) is set, and the session identifier (subscribe_ID) and the message content (message) are described.
図14及び図15は、受信装置4と連携端末5の間でセッションの識別子に基づきメッセージを送信する場合のシーケンス図である。
14 and 15 are sequence diagrams in the case where a message is transmitted between the receiving
図14は、接続登録処理のシーケンスを示す。受信装置4のサービス実行部421は、接続登録メッセージを発行する(ステップS505)。サービス実行部421が発行した接続登録メッセージには、接続登録メッセージであることを示す「publish」が設定されたtype属性と、送信先のサービスの識別子が設定されたdst属性とが含まれる。送信元サービス設定部4235は、このメッセージに、送信元のサービスの識別子を設定したsrc属性を追加する。送信元サービス設定部4235は、src属性が追加された接続登録メッセージをメッセージ受信部4232に出力する(ステップS510)。
FIG. 14 shows a sequence of connection registration processing. The service execution unit 421 of the receiving
メッセージ受信部4232は、接続登録メッセージに設定されている送信先のサービスの識別子及び送信元のサービスの識別子をメッセージ判定部4233に通知し(ステップS515)、接続登録メッセージ全体をメッセージ分配部4234に通知する(ステップS520)。メッセージ判定部4233は、送信先と送信元のサービスの識別子が同一であるため、連携端末5にメッセージを送信するようメッセージ分配部4234に通知する(ステップS525)。メッセージ分配部4234は、接続登録メッセージを端末連携部412に出力し(ステップS530)、端末連携部412は、メッセージ分配部4234から受信した接続登録メッセージを、通信入出力部406を介して連携端末5に送信する。
The
連携端末5の通信入出力部511は、受信装置4からメッセージを受信し、端末連携部531に出力する(ステップS535)。メッセージ受信部5342は、端末連携部531からメッセージを受信する(ステップS540)。メッセージ受信部5342は、受信したメッセージをメッセージ判定部5343に出力する(ステップS545)。メッセージ判定部5343は、受信したメッセージのtype属性により接続登録メッセージであると判断すると、subscribe_IDを発行し、送信元及び送信先のサービスの識別子と対応付けて記憶する。なお、接続が解除される度に新規のsubscribe_IDを発番してもよく、送信元と送信先のペアに対して予め決定したsubscribe_IDを割り当てても構わない。さらに、メッセージ判定部5343は、接続登録確認メッセージを生成する。接続登録確認メッセージには、接続登録確認メッセージを示す「subscribe」が設定されたtype属性と、発行したsubscribe_IDと、接続登録メッセージに設定されていたdst属性及びsrc属性とが含まれる。メッセージ判定部5343は、生成した接続登録確認メッセージをメッセージ分配部5344に通知し、受信装置4へ送信するよう指示する(ステップS550)。
The communication input /
メッセージ分配部5344は、接続登録確認メッセージを端末連携部531に出力し(ステップS555)、端末連携部531は、接続登録確認メッセージを、通信入出力部511を介して受信装置4に送信する(ステップS560)。
The
受信装置4の通信入出力部406は、連携端末5から受信したメッセージを端末連携部412に出力する。メッセージ受信部4232は、端末連携部412からメッセージを受信する(ステップS565)。メッセージ受信部4232は、受信したメッセージのtype属性から接続登録確認メッセージであると判断する。メッセージ受信部4232は、接続登録確認メッセージから取得したsubscribe_IDと、送信元及び送信先のサービスの識別子をメッセージ判定部4233に出力する(ステップS570)。メッセージ判定部4233は、subscribe_IDと、送信元及び送信先のサービスの識別子とを対応付けて登録する。さらに、メッセージ受信部4232は、接続登録確認メッセージを、送信先のサービスの識別子により特定される放送マネージドアプリを実行しているサービス実行部421にsubscribe_IDを通知する(ステップS575)。
The communication input /
図15は、メッセージ送信処理のシーケンスを示す。受信装置4のサービス実行部421は、メッセージ本体を設定したメッセージを発行する(ステップS605)。メッセージには、メッセージ本体であることを示す「body」が設定されたtype属性と、送信先のサービスに応じたsubscribe_IDと、メッセージ内容とが含まれる。送信元サービス設定部4235は、サービス実行部421から受信したメッセージに送信元のサービスの識別子を設定する。なお、送信元のサービスの識別子の設定は行わなくてもよい。送信元サービス設定部4235は、送信元のサービスの識別子が設定されたメッセージを、メッセージ受信部4232に出力する(ステップS610)。
FIG. 15 shows a sequence of message transmission processing. The service execution unit 421 of the receiving
メッセージ受信部4232は、メッセージに設定されているsubscribe_IDをメッセージ判定部4233に通知し(ステップS615)、メッセージ全体をメッセージ分配部4234に通知する(ステップS620)。メッセージ判定部4233は、subscribe_IDに対応して記憶される送信先及び送信元のサービスの識別子が同一であるため、連携端末5にメッセージを送信するようメッセージ分配部4234に通知する(ステップS625)。メッセージ分配部4234は、メッセージを端末連携部412に出力し(ステップS630)、端末連携部412は、メッセージ分配部4234から受信したメッセージを、通信入出力部406を介して連携端末5に送信する。
The
連携端末5の通信入出力部511は、受信装置4から受信したメッセージを端末連携部531に出力する(ステップS635)。メッセージ受信部5342は、端末連携部531からメッセージを受信する(ステップS640)。メッセージ受信部5342は、受信したメッセージのtypeによりメッセージ本体であると判断すると、メッセージから読み出したsubscribe_IDをメッセージ判定部5343に出力し(ステップS645)、メッセージをメッセージ分配部5344に出力する(ステップS650)。メッセージ判定部5343は、subscribe_IDに対応した送信元及び送信先のサービスの識別子が同じであるため、送信先のサービスの識別子により特定されるサービスを実行しているサービス実行部532へメッセージを出力するようメッセージ分配部5344に指示する(ステップS655)。メッセージ分配部5344は、メッセージ判定部5343に指示されたサービス実行部532へメッセージを出力する(ステップS660)。
The communication input /
図14及び図15では、受信装置4から連携端末5へのメッセージの送信例を示したが、連携端末5から受信装置4へのメッセージ送信も同様の手順で実行できる。
Although FIGS. 14 and 15 show an example of transmitting a message from the receiving
図16は、連携端末5のウェブアプリ間でセッションの識別子に基づきメッセージを送信する場合のメッセージの記述例を示す図である。図16(a)は、接続登録メッセージM41を、図16(b)は接続登録確認メッセージM42を、図16(c)は接続解除メッセージM43を、図16(d)は接続解除確認メッセージM44を、図16(e)はメッセージ本体が設定されたメッセージM45を示す。M41〜M45のメッセージに含まれる属性はそれぞれ、図13に示すM31〜M35のメッセージと同様である。
FIG. 16 is a diagram showing a description example of a message when a message is transmitted between the web applications of the
すなわち、接続登録メッセージM41、接続登録確認メッセージM42、接続解除メッセージM43、接続解除確認メッセージM44、メッセージM45には、type属性が含まれている。また、接続登録メッセージM41、接続登録確認メッセージM42、接続解除メッセージM43、接続解除確認メッセージM44には、送信元のサービスの識別子(src)及び送信先のサービスの識別子(dst)が設定され、接続登録確認メッセージM42及び接続解除確認メッセージM44には、さらに、確立したチャンネルに割当てられたセッションの識別子(subscribe_ID)が記述される。メッセージ本体(message)が設定されたメッセージM45には、送信元及び送信先は設定されず、セッションの識別子(subscribe_ID)とメッセージの内容(message)が記述される。 That is, the connection registration message M41, the connection registration confirmation message M42, the connection disconnection message M43, the connection disconnection confirmation message M44, and the message M45 include the type attribute. Further, in the connection registration message M41, the connection registration confirmation message M42, the connection disconnection message M43, and the connection disconnection confirmation message M44, the identifier of the source service (src) and the identifier of the destination service (dst) are set to connect. The registration confirmation message M42 and the disconnection confirmation message M44 further describe the identifier (subscribe_ID) of the session assigned to the established channel. The source and destination are not set in the message M45 in which the message body (message) is set, and the session identifier (subscribe_ID) and the message content (message) are described.
図17及び図18は、連携端末5のウェブアプリ間でセッションの識別子に基づきメッセージを送信する場合のシーケンス図である。このシーケンスは、図14及び図15に示すシーケンスと基本的な手順の差異はない。ただし、受信装置4と連携端末5との間でメッセージを送信する場合、連携端末5は、メッセージ分配部5344から端末連携部531を経由して送受信を行うが、ウェブアプリ間の場合は、メッセージ分配部5344から連携端末5内のメッセージ受信部5342にメッセージを送信し、以降、同様の処理が実行される。
17 and 18 are sequence diagrams in the case of transmitting a message between the web applications of the
図17は、連携端末5のウェブアプリ間の接続登録処理のシーケンスを示す。連携端末5のサービス実行部532−1は、接続登録メッセージを発行する(ステップS705)。サービス実行部532−1が発行した接続登録メッセージには、接続登録メッセージであることを示す「publish」が設定されたtype属性と、サービス実行部532−2により実行される送信先のサービスの識別子が設定されたdst属性とが含まれる。送信元サービス設定部5345は、このメッセージに、送信元のサービスの識別子を設定したsrc属性を追加する。送信元サービス設定部5345は、src属性が追加された接続登録メッセージをメッセージ受信部5342に出力する(ステップS710)。
FIG. 17 shows a sequence of connection registration processing between the web applications of the linked
メッセージ受信部5342は、接続登録メッセージに設定されている送信先のサービスの識別子及び送信元のサービスの識別子をメッセージ判定部5343に通知し(ステップS715)、接続登録メッセージ全体をメッセージ分配部5344に通知する(ステップS720)。メッセージ判定部5343は、送信先と送信元のサービスの識別子が異なるため、メッセージ受信部5342にメッセージを送信するようメッセージ分配部5344に通知する(ステップS725)。メッセージ分配部5344は、接続登録メッセージをメッセージ受信部5342に出力する(ステップS730)。
The
メッセージ受信部5342は、受信したメッセージをメッセージ判定部5343に出力する(ステップS735)。メッセージ判定部5343は、受信したメッセージのtypeにより接続登録メッセージであると判断すると、subscribe_IDを発行し、送信元及び送信先のサービスの識別子と対応付けて記憶する。さらに、メッセージ判定部5343は、接続登録確認メッセージを生成する。メッセージ判定部5343は、生成した接続登録確認メッセージをメッセージ分配部5344に通知し、メッセージ受信部5342へ送信するよう指示する(ステップS740)。メッセージ分配部5344は、接続登録確認メッセージをメッセージ受信部5342に出力する(ステップS745)。
The
メッセージ受信部5342は、受信した接続登録確認メッセージから取得したsubscribe_IDと、送信元及び送信先のサービスの識別子をメッセージ判定部5343に出力する(ステップS750)。メッセージ判定部5343は、subscribe_IDと、送信元及び送信先のサービスの識別子とを対応付けて登録する。さらに、メッセージ受信部5342は、接続登録確認メッセージを、送信先のサービスの識別子により特定されるウェブアプリを実行しているサービス実行部532−1にsubscribe_IDを通知する(ステップS755)。
The
図18は、連携端末5のウェブアプリ間のメッセージ送信処理のシーケンスを示す。連携端末5のサービス実行部532−1は、メッセージ本体を設定したメッセージを発行する(ステップS805)。送信元サービス設定部5345は、サービス実行部532−1から受信したメッセージに送信元のサービスの識別子を設定する。なお、送信元のサービスの識別子の設定は行わなくてもよい。送信元サービス設定部5345は、送信元のサービスの識別子が設定されたメッセージを、メッセージ受信部5342に出力する(ステップS810)。
FIG. 18 shows a sequence of message transmission processing between the web applications of the linked
メッセージ受信部5342は、メッセージに設定されているsubscribe_IDをメッセージ判定部5343に通知し(ステップS815)、メッセージ全体をメッセージ分配部5344に通知する(ステップS820)。メッセージ判定部5343は、subscribe_IDに対応して記憶される送信先及び送信元のサービスの識別子が異なるため、送信先のサービスの識別子により特定されるウェブサービスを実行しているサービス実行部532−2にメッセージを送信するようメッセージ分配部5344に通知する(ステップS825)。メッセージ分配部5344は、メッセージ判定部5343に指示されたサービス実行部532−2へメッセージを出力する(ステップS830)。
The
図17及び図18では、連携端末5のウェブアプリ間でメッセージを送信する場合ついて示しているが、受信装置4において放送マネージドアプリから他のアプリへのメッセージ送信についても同様の手順で実行できる。
Although FIGS. 17 and 18 show a case where a message is transmitted between the web applications of the
次に、端末連携部531、サービス実行管理部533及びアプリ間連携部535の関係について説明する。図19は、端末連携部531、サービス実行管理部533及びアプリ間連携部535の関係を示す図である。
Next, the relationship between the
端末連携部531は、受信装置4とのペアリング処理を実行して、受信装置4との接続を確立する。ペアリング処理において、例えば、IEEE802.11、IEEE802.15.1などに規定された通信方式が利用可能である。受信装置4のサービス実行部421は、動作中において他アプリ起動コマンドを発行することがある。端末連携部531は、受信装置4から他アプリ起動コマンドを受信するとき、受信した他アプリ起動コマンドをサービス実行管理部533に出力する。
The
サービス実行管理部533には、サービス実行部532又は端末連携部531から他アプリ起動コマンドが入力されることがある。サービス実行管理部533は、入力されるコマンドのうち、他アプリを示す識別情報として、所定のURL(Uniform Resource Locator)スキーム(例えば、extra app//:…)が含まれるコマンドを他アプリ起動コマンドとして識別する。サービス実行管理部533は、他アプリ起動コマンドをアプリ間連携部535に出力する。
Another application start command may be input to the service
サービス実行管理部533には、アプリ間連携部535からサービス起動コマンドが入力されることがある。サービス実行管理部533は、サービス起動コマンドが示すサービスを提供するためのウェブアプリを、起動対象のウェブアプリとして特定する。サービス起動コマンドには、実行対象のサービスを示すサービス識別子が含まれてもよい。サービス実行管理部533は、特定したウェブアプリを起動し、そのウェブアプリを実行するサービス実行部532を生成する。
A service start command may be input to the service
アプリ間連携部535は、サービス実行管理部533から入力される他アプリ起動コマンドのデータ形式を、連携アプリ内形式からアプリ間連携形式に変換する。連携アプリ内形式とは、連携アプリ実行制御部53の各構成部において処理可能とするデータ形式である。連携アプリ内形式として、上述したメッセージ(例えば、図16)と同様の形式が用いられてもよい。アプリ間連携形式とは、他アプリ実行制御部54において処理可能とするデータ形式である。連携アプリ内形式のコマンドは、他アプリ実行制御部54がその処理を行う際に利用可能な形式のコマンドである。従って、アプリ間連携形式は、他アプリの仕様に依存する。アプリ間連携部535は、変換により得られた他アプリ起動コマンドを他アプリ実行制御部54に出力する。他アプリ実行制御部54は、他アプリ起動コマンドで指定される他アプリを起動させる。他アプリ実行制御部54は、他アプリの実行中において、サービス起動コマンドを発行することがある。他アプリ実行制御部54は、発行したサービス起動コマンドをアプリ間連携部535に送信する。アプリ間連携部535は、他アプリ実行制御部54から入力されるサービス起動コマンドのデータ形式を、アプリ間連携形式から連携アプリ内形式に変換する。アプリ間連携部535は、変換により得られたサービス起動コマンドをサービス実行管理部533に出力する。
The
次に、アプリ間連携部535の詳細を、図20を用いて説明する。
図20は、アプリ間連携部535の詳細な構成を示す機能ブロック図である。
アプリ間連携部535は、アプリ間連携処理部5351、アプリ間連携条件管理部5352及びアプリ間連携通信部5353を有する。
Next, the details of the
FIG. 20 is a functional block diagram showing a detailed configuration of the
The
アプリ間連携処理部5351は、サービス実行管理部533から入力される他アプリ起動コマンドの形式を、連携アプリ内形式からアプリ間連携形式に変換する。アプリ間連携処理部5351は、例えば、他アプリ起動コマンドを解釈し、起動対象の他アプリを特定するURLスキーム 「extra app://…」と起動条件を示すパラメータ「params」を検出する。パラメータとして、例えば、他アプリ又はその動作に用いるデータの所在を示すURLが指定される。アプリ間連携処理部5351は、検出した他アプリと起動条件の情報を含んだアプリ間連携形式のコマンドを変換後のコマンドとして構成する。アプリ間連携処理部5351は、変換した他アプリ起動コマンドをアプリ間連携通信部5353に出力する。
The inter-app
アプリ間連携処理部5351は、アプリ間連携通信部5353から入力されるサービス起動コマンドの形式を、アプリ間連携形式から連携アプリ内形式に変換する。アプリ間連携処理部5351は、サービス起動コマンドを解釈し、送信元の他アプリを示す識別子と起動対象のサービスを示すサービス識別子を検出する。アプリ間連携処理部5351は、検出したサービス識別子を含む連携アプリ内形式のコマンドを変換後のコマンドとして構成する。アプリ間連携処理部5351は、変換した連携アプリ内形式のサービス起動コマンドをサービス実行管理部533に出力する。
The inter-app
また、アプリ間連携処理部5351は、アプリ間連携条件管理部5352にサービス起動コマンドで指示されるサービスを提供するウェブアプリの起動の可否を照会してもよい。その際、アプリ間連携処理部5351は、そのサービス起動コマンドで指示されるサービス及び他アプリについて起動可否判定リクエストを生成する。アプリ間連携処理部5351は、生成した起動可否判定リクエストをアプリ間連携条件管理部5352に出力する。アプリ間連携処理部5351は、起動可否判定リクエストに対する応答として実行可否判定がアプリ間連携条件管理部5352から入力される。起動可否判定が起動可を示すとき、アプリ間連携処理部5351は、変換後のサービス起動コマンドをサービス実行管理部533に出力する。起動可否判定が起動不可を示すとき、アプリ間連携処理部5351は、所定のエラー処理をサービス実行管理部533に実行させる。サービス実行管理部533は、エラー処理として、例えば、エラー画面をディスプレイに表示させる。エラー画面には、エラーの事由を示すエラーメッセージが表されてもよい。サービス実行管理部533は、エラー処理として、予め設定したサービス(デフォルトサービス)を提供するためのアプリを起動してもよい。
In addition, the inter-app
アプリ間連携条件管理部5352は、連携条件データ(条件管理表)を管理する。連携条件データは、サービス実行部532で実行するウェブアプリと他アプリとの連携の可否を示すデータである。より具体的には、連携条件データは、サービス起動コマンドの送信元の他アプリ毎のウェブアプリの起動の可否と、起動可とするサービスの範囲(アクセス条件)を示すデータである。アプリ間連携条件管理部5352には、アプリ間連携処理部5351から起動可否判定リクエストが入力される。アプリ間連携条件管理部5352は、自部が記憶している連携条件データを参照して、起動可否判定リクエストで指示される他アプリとサービスについて、そのサービスを提供するウェブアプリの起動の可否を判定する。アプリ間連携条件管理部5352は、その判定結果である起動可否判定をアプリ間連携処理部5351に出力する。連携条件データの例については、後述する。
The inter-app cooperation
アプリ間連携通信部5353は、アプリ間連携処理部5351から入力された他アプリ起動コマンドを他アプリ実行制御部54に送信する。また、アプリ間連携通信部5353は、他アプリ実行制御部54から受信したサービス起動コマンドをアプリ間連携処理部5351に出力する。
The inter-app
次に、連携条件データの例について説明する。図21は、連携条件データの一例を示す図である。図21に示す例では、連携条件データは、送信元アプリ毎に連携の可否(連携認可)を示すデータである。送信元アプリの項目において、サービス起動コマンドの送信元である他アプリ実行制御部54で実行している他アプリが示される。連携認可の項目において、起動可否判定リクエストで指定されるサービスを提供するウェブアプリの実行の可否が示される。連携認可の項目に設定された情報が、連携可、つまりウェブアプリの起動可(OK)を示す場合には、さらにアクセス条件の項目が対応付けられていることがある。アクセス条件の項目には、ウェブアプリを起動可(OK)とするサービスを示す情報が設定される。
Next, an example of cooperation condition data will be described. FIG. 21 is a diagram showing an example of cooperation condition data. In the example shown in FIG. 21, the cooperation condition data is data indicating whether or not cooperation is possible (cooperation authorization) for each source application. In the item of the source application, the other application executed by the other application
図21の第2行は、送信元アプリ「AppX」に対応付けて、連携認可の項目に「NG」が設定されていることを示す。この「NG」は、送信元アプリ「AppX」からのサービス起動コマンドで指定されるウェブアプリについて起動不可であることを示す。従って、アプリ間連携条件管理部5352は、送信元アプリ「AppX」からのサービス起動コマンドで指示されるサービスを提供するウェブアプリについて起動不可と判定する。図21の第3行は、送信元アプリ「AppY」に対応付けて、連携認可の項目に「OK」が設定され、アクセス条件の項目に「Service A」が設定されていることを示す。従って、アプリ間連携条件管理部5352は、送信元アプリ「AppX」からのサービス起動コマンドで指示されるサービスAを提供するウェブアプリについて起動可(OK)と判定する。アプリ間連携条件管理部5352は、送信元アプリ「AppX」からのサービス起動コマンドで指定されるサービスA以外のサービス(例えば、サービスB)を提供するウェブアプリについては起動不可(NG)と判定する。図21の第4行は、送信元アプリ「AppZ」に対応付けて、連携認可の項目に「OK」が設定され、アクセス条件の項目に「Service A」と「Service B」が設定されていることを示す。従って、アプリ間連携条件管理部5352は、送信元アプリ「AppX」からのサービス起動コマンドで指示されるサービスA又はサービスBを提供するウェブアプリについて起動可(OK)と判定する。アプリ間連携条件管理部5352は、送信元アプリ「AppX」からのサービス起動コマンドで指示されるサービスA,B以外のサービス(例えば、サービスC)を提供するウェブアプリについて起動不可(NG)と判定する。
The second line of FIG. 21 indicates that "NG" is set in the item of cooperation authorization in association with the source application "AppX". This "NG" indicates that the web application specified by the service start command from the source application "AppX" cannot be started. Therefore, the inter-app cooperation
なお、図21に示す例では、「NG」が設定されている連携認可の項目に対応付けてアクセス条件の情報が設定されていない。ここで、起動不可(NG)とする送信元アプリからのサービス起動コマンドについて、アプリ間連携条件管理部5352は、サービスに関わらずウェブアプリを起動不可(NG)と判定し、起動不可(NG)を示す起動可否判定をアプリ間連携処理部5351に出力する。この起動可否判定が入力されるとき、アプリ間連携処理部5351は、エラー処理起動コマンドを発行しサービス実行管理部533に出力する。サービス実行管理部533は、アプリ間連携条件管理部5352からエラー処理起動コマンドが入力されるとき、エラー処理として、例えば、所定のエラー画面を表示させるためのサービスアプリを起動させる。また、「OK」が設定されている送信元アプリとする送信元アプリからのサービス起動コマンドについて、連携認可の項目に対応付けてアクセス条件の情報が設定されていない場合、アプリ間連携条件管理部5352は、アプリ間連携条件管理部5352は、起動不可(NG)と判定する。これに対し、アプリ間連携条件管理部5352に、全てのサービスへのアクセスを許可し、ウェブアプリを起動可(OK)と判定させるためには、連携認可の項目に「OK」を設定するとともに、アクセス条件の項目に、例えば「ALL」のような全アクセス許可用の識別子を設定しておけばよい。
In the example shown in FIG. 21, access condition information is not set in association with the item of cooperation authorization in which "NG" is set. Here, regarding the service start command from the sender application that cannot be started (NG), the inter-application cooperation
次に、連携アプリ実行制御部53のサービス実行部532からの他アプリの起動に係る処理フローについて説明する。図22は、連携アプリ実行制御部53のサービス実行部532からの他アプリの起動に係る処理フローを示す図である。
サービス実行管理部533は、サービス実行部532から入力されるコマンドが他アプリ起動コマンドであるか否かを判定する。サービス実行管理部533は、他アプリ起動コマンドと判定したコマンドをアプリ間連携処理部5351に出力する(ステップS905)。アプリ間連携処理部5351は、サービス実行管理部533から入力された他アプリ起動コマンドを解釈し、アプリ間連携情報として起動対象の他アプリと起動条件の情報を検出する(ステップS910)。アプリ間連携処理部5351は、検出したアプリ間連携情報を含むように、他アプリ起動コマンドの形式を連携アプリ内形式からアプリ間連携形式に変換する(ステップS915)。アプリ間連携処理部5351は、変換した他アプリ起動コマンドをアプリ間連携通信部5353に出力する(ステップS920)。アプリ間連携通信部5353は、アプリ間連携処理部5351から入力された他アプリ起動コマンドを他アプリ実行制御部54に送信する。他アプリ実行制御部54は、アプリ間連携処理部5351から入力された他アプリ起動コマンドのアプリ間連携情報で指示される他アプリを、そのアプリ間連携情報で指示される起動条件に従って起動する(ステップS925)。
Next, a processing flow related to the activation of another application from the service execution unit 532 of the linked application
The service
次に、他アプリ実行制御部54からの連携アプリ実行制御部53におけるウェブアプリの起動に係る処理フローについて説明する。図23は、他アプリ実行制御部54からの連携アプリ実行制御部53におけるウェブアプリの起動に係る処理フローを示す図である。
アプリ間連携通信部5353は、他アプリ実行制御部54からサービス起動コマンドを受信する(ステップS1005)。アプリ間連携通信部5353は、受信したサービス起動コマンドをアプリ間連携処理部5351に出力する(ステップS1010)。アプリ間連携処理部5351は、アプリ間連携通信部5353から入力されたサービス起動コマンドを解釈し、送信元アプリの識別子と対象サービスのサービス識別子を検出する(ステップS1015)。アプリ間連携処理部5351は、検出した送信元アプリと対象サービスについて、そのサービスを提供するウェブアプリの起動の可否をアプリ間連携条件管理部5352に照会する(ステップS1020)。
Next, the processing flow related to the activation of the web application in the linked application
The inter-app
アプリ間連携条件管理部5352が起動可(OK)と判定するとき(ステップS1025 OK)、アプリ間連携処理部5351は、検出したサービスを示すサービス識別子を含む連携アプリ内形式のサービス起動コマンドを生成する(ステップS1030)。アプリ間連携処理部5351は、生成した連携アプリ内形式のサービス起動コマンドをサービス実行管理部533に出力する(ステップS1035)。そして、サービス実行管理部533は、アプリ間連携処理部5351から入力されたサービス起動コマンドからサービス識別子を検出する。サービス実行管理部533は、検出したサービス識別子で指定されるサービスを提供するウェブアプリを起動する。
他方、アプリ間連携条件管理部5352が起動不可(NG)と判定するとき(ステップS1025 NG)、サービス実行管理部533に所定のエラー処理を実行させる(ステップS1040)。
When the inter-app cooperation
On the other hand, when the inter-application cooperation
以上説明した実施形態によれば、放送通信連携システム1は、受信装置4と、連携端末5(端末装置)とを有する。受信装置4は、放送信号に含まれるコンテンツデータを出力する処理と、放送信号と連携した動作により複数のサービスを提供するアプリケーション(放送マネージドアプリ)を実行する処理とを実行する。連携端末5は、個別のサービスを提供するアプリケーションであるサービスアプリケーション(サービスアプリ、ウェブアプリ)を複数並列で実行させる。受信装置4が実行するアプリケーションに含まれるサービスの機能と、サービスアプリケーションにより提供されるサービスの機能とが連携して、ユーザにサービスを提供する。
According to the embodiment described above, the broadcast communication cooperation system 1 has a receiving
連携端末5は、連携アプリ実行制御部53と他アプリ実行制御部54とを備える。連携アプリ実行制御部53は、所定のサービスを提供するアプリケーションであるサービスアプリケーションを実行させる。また、連携アプリ実行制御部53は、サービス実行部532、サービス実行管理部533、アプリ間連携処理部5351及びアプリ間連携通信部5353を備える。サービス実行部532は、所定のサービスに係るアプリであるウェブアプリを実行する。サービス実行部532は、他アプリの起動を示す他アプリ起動コマンドを取得する。アプリ間連携処理部5351は、他アプリ起動コマンドの形式を他アプリ実行制御部において処理可能なアプリ間連携形式に変換する。アプリ間連携通信部5353は、アプリ間連携形式の他アプリ起動コマンドを他アプリ実行制御部54に送信する。他アプリ実行制御部54は、受信装置4と連携して動作する連携アプリとは別個のアプリケーションである他アプリケーションの実行を制御する。
The
また、アプリ間連携通信部5353は、他アプリ実行制御部54からサービスアプリケーションの起動を示すサービス起動コマンドを受信する。アプリ間連携処理部5351は、サービス起動コマンドの形式を連携アプリ実行制御部53において処理可能なアプリ内連携形式に変換する。連携アプリ実行制御部53は、サービス実行管理部533を備える。サービス実行管理部533は、アプリ内連携形式のサービス起動コマンドが示すサービスに係るアプリを起動させる。
Further, the inter-application
また、連携アプリ実行制御部53は、さらにアプリ間連携条件管理部5352を備える。アプリ間連携条件管理部5352は、少なくとも他アプリ実行制御部54において実行している他アプリとサービス起動コマンドが示すサービスのいずれかに基づいて、そのサービスに係るアプリの起動の可否を判定する。
Further, the cooperation application
また、連携アプリ実行制御部53は、さらに端末連携部531を備える。端末連携部531は、受信した放送信号と連携して所定のサービスを提供するウェブアプリを実行する受信装置4との間で接続を確立させる。サービス実行管理部533は、受信装置4から他アプリ起動コマンドを取得する。
Further, the cooperation application
以上説明した実施形態によれば、ハイブリッドキャストなどの放送通信連携サービスにおいて、放送マネージドアプリのように受信装置で実行されるアプリが1個(サービス提供者が一つ)、連携端末で実行されるアプリが複数個(サービス提供者が複数)ある場合でも、受信装置において実行される1個のアプリに対して連携端末において実行される複数個のアプリが連携することができる。これにより、現行のハイブリッドキャストの運用において、受信装置の実装を変えることなく、連携端末に実装するコンパニオンアプリ(連携アプリ)を改修するだけで、複数のマルチスクリーンサービスを並列して実行することが可能になる。 According to the embodiment described above, in a broadcast communication cooperation service such as hybrid cast, one application (one service provider) executed by the receiving device such as a broadcast managed application is executed by the cooperation terminal. Even when there are a plurality of applications (multiple service providers), a plurality of applications executed on the linked terminal can be linked to one application executed on the receiving device. As a result, in the current hybrid cast operation, multiple multi-screen services can be executed in parallel by simply modifying the companion application (cooperation application) installed on the cooperation terminal without changing the implementation of the receiving device. It will be possible.
また、放送通信連携サービスにおいて、コンパニオンアプリ上で提供されるサービスに係るアプリ又は受信装置上で提供されるサービスに係るアプリから、連携端末において既に存在している外部アプリ(他アプリ)を起動させることができる。そのため、サービス間の連携が促進される。
また、外部アプリからコンパニオンアプリ上で提供されるサービスに係るアプリを起動させることができる。起動したアプリは、受信装置上で提供されるサービスに係るアプリと連携可能であるので、サービス間の連携がさらに促進される。
さらに、外部アプリからのアプリを起動させる際、外部アプリもしくはアプリ起動コマンドで指定されたサービスに応じて、そのアプリの起動の可否が判定される。そのため、アプリの制作者の意図に沿った外部アプリとの連携が実現する。
In addition, in the broadcast communication cooperation service, an external application (other application) that already exists on the cooperation terminal is started from the application related to the service provided on the companion application or the application related to the service provided on the receiving device. be able to. Therefore, cooperation between services is promoted.
In addition, an application related to a service provided on the companion application can be started from an external application. Since the launched application can be linked with the application related to the service provided on the receiving device, the cooperation between the services is further promoted.
Further, when the application is started from the external application, whether or not the application can be started is determined according to the external application or the service specified by the application start command. Therefore, cooperation with an external application is realized according to the intention of the creator of the application.
なお、上述の受信装置4及び連携端末5は、内部にコンピュータシステムを有している。そして、受信装置4及び連携端末5の一部の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含むものである。
The above-mentioned
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
In addition, the "computer system" includes a homepage providing environment (or display environment) if a WWW system is used.
Further, the "computer-readable recording medium" refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, or a storage device such as a hard disk built in a computer system. Further, a "computer-readable recording medium" is a communication line for transmitting a program via a network such as the Internet or a communication line such as a telephone line, and dynamically holds the program for a short period of time. In that case, it also includes the one that holds the program for a certain period of time, such as the volatile memory inside the computer system that becomes the server or client. Further, the above-mentioned program may be a program for realizing a part of the above-mentioned functions, and may be a program for realizing the above-mentioned functions in combination with a program already recorded in the computer system.
1…放送通信連携システム
2…放送送出装置
3…サービスサーバ
4…受信装置
5…連携端末
51…ハードウェア部
52…OS部
53…連携アプリ実行制御部
54…他アプリ実行制御部
401…放送受信部
402…分離部
403…映像復号部
404…音声復号部
405…データ放送実行部
406…通信入出力部
407…リモコン入力制御部
408…電源制御部
409…アプリ実行部
410…アプリ制御部
411…放送通信連携部
412…端末連携部
413…映像合成部
414…映像表示部
415…音声合成部
416…音声出力部
421…サービス実行部
422…サービス実行管理部
423…メッセージ制御部
511…通信入出力部
531…端末連携部
532−1〜532−3…サービス実行部
533…サービス実行管理部
534…メッセージ制御部
535…アプリ間連携部
4231…サービス識別管理部
4232…メッセージ受信部
4233…メッセージ判定部
4234…メッセージ分配部
4235…送信元サービス設定部
5341…サービス識別管理部
5342…メッセージ受信部
5343…メッセージ判定部
5344…メッセージ分配部
5345…送信元サービス設定部
5351…アプリ間連携処理部
5352…アプリ間連携条件管理部
5353…アプリ間連携通信部
1 ... Broadcast
Claims (5)
受信装置と連携して動作する連携アプリケーションとは別個のアプリケーションである他アプリケーションの実行を制御する他アプリケーション実行制御部とを備え、
前記連携アプリケーション実行制御部は、
前記サービスアプリケーションを実行するサービス実行部と、
前記サービス実行部から、前記他アプリケーションの起動を示す他アプリケーション起動コマンドを取得するサービス実行管理部と、
前記他アプリケーション起動コマンドの形式を前記他アプリケーション実行制御部において処理可能なアプリケーション間連携形式に変換するアプリケーション間連携処理部と、
前記アプリケーション間連携形式の他アプリケーション起動コマンドを前記他アプリケーション実行制御部に送信するアプリケーション間連携通信部と、を備える
ことを特徴とする端末装置。 A linked application execution control unit that executes a service application that is an application that provides a predetermined service,
It is equipped with another application execution control unit that controls the execution of other applications that are separate applications from the linked application that operates in cooperation with the receiving device.
The linked application execution control unit
The service execution unit that executes the service application and
A service execution management unit that acquires another application start command indicating the start of the other application from the service execution unit, and a service execution management unit.
An inter-application cooperation processing unit that converts the format of the other application start command into an inter-application cooperation format that can be processed by the other application execution control unit.
A terminal device including an application-to-application cooperation communication unit that transmits another application start command of the application-to-application cooperation type to the other application execution control unit.
前記他アプリケーション実行制御部から前記サービスアプリケーションの起動を示すサービス起動コマンドを受信し、
前記アプリケーション間連携処理部は、
前記サービス起動コマンドの形式を前記連携アプリケーション実行制御部において処理可能なアプリ内連携形式に変換し、
前記連携アプリケーション実行制御部は、
前記アプリ内連携形式のサービス起動コマンドが示すサービスに係るサービスアプリケーションを起動させるサービス実行管理部を備える
ことを特徴とする請求項1に記載の端末装置。 The inter-application cooperation communication unit
Upon receiving a service start command indicating the start of the service application from the other application execution control unit,
The inter-application cooperation processing unit
The format of the service start command is converted into an in-app cooperation format that can be processed by the cooperation application execution control unit.
The linked application execution control unit
The terminal device according to claim 1, further comprising a service execution management unit that starts a service application related to the service indicated by the service start command of the in-app cooperation type.
少なくとも前記他アプリケーションと前記サービス起動コマンドが示すサービスのいずれかに基づいて、前記サービス起動コマンドが示すサービスに係るサービスアプリケーションの起動の可否を判定するアプリケーション間連携条件管理部を備える
ことを特徴とする請求項2に記載の端末装置。 The linked application execution control unit
It is characterized by including an inter-application cooperation condition management unit that determines whether or not the service application related to the service indicated by the service start command can be started based on at least one of the other application and the service indicated by the service start command. The terminal device according to claim 2.
受信した放送信号と連携して所定のサービスを提供するアプリケーションを実行する受信装置との間で接続を確立させる端末連携部を備え、
前記サービス実行管理部は、
前記受信装置から他アプリケーション起動コマンドを取得する
ことを特徴とする請求項1から請求項3のいずれか一項に記載の端末装置。 The linked application execution control unit
It is equipped with a terminal cooperation unit that establishes a connection with a receiving device that executes an application that provides a predetermined service in cooperation with the received broadcast signal.
The service execution management department
The terminal device according to any one of claims 1 to 3, wherein a command for starting another application is acquired from the receiving device.
所定のサービスを提供するアプリケーションであるサービスアプリケーションを実行させる連携アプリケーション実行制御部と、
受信装置と連携して動作する連携アプリケーションとは別個のアプリケーションである他アプリケーションの実行を制御する他アプリケーション実行制御部とを備え、
前記連携アプリケーション実行制御部は、
前記サービスアプリケーションを実行するサービス実行部と、
前記サービス実行部から、前記他アプリケーションの起動を示す他アプリケーション起動コマンドを取得するサービス実行管理部と、
前記他アプリケーション起動コマンドの形式を前記他アプリケーション実行制御部において処理可能なアプリケーション間連携形式に変換するアプリケーション間連携処理部と、
前記アプリケーション間連携形式の他アプリケーション起動コマンドを前記他アプリケーション実行制御部に送信するアプリケーション間連携通信部と、を備える
ことを特徴とする端末装置として機能させるためのプログラム。 On the computer
A linked application execution control unit that executes a service application that is an application that provides a predetermined service,
It is equipped with another application execution control unit that controls the execution of other applications that are separate applications from the linked application that operates in cooperation with the receiving device.
The linked application execution control unit
The service execution unit that executes the service application and
A service execution management unit that acquires another application start command indicating the start of the other application from the service execution unit, and a service execution management unit.
An inter-application cooperation processing unit that converts the format of the other application start command into an inter-application cooperation format that can be processed by the other application execution control unit.
A program for functioning as a terminal device, which comprises an application-to-application cooperation communication unit that transmits another application start command of the application-to-application cooperation type to the other application execution control unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016217390A JP6770872B2 (en) | 2016-11-07 | 2016-11-07 | Terminal devices and programs |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016217390A JP6770872B2 (en) | 2016-11-07 | 2016-11-07 | Terminal devices and programs |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018078384A JP2018078384A (en) | 2018-05-17 |
| JP6770872B2 true JP6770872B2 (en) | 2020-10-21 |
Family
ID=62150676
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016217390A Active JP6770872B2 (en) | 2016-11-07 | 2016-11-07 | Terminal devices and programs |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6770872B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10764640B2 (en) * | 2018-11-23 | 2020-09-01 | Sony Corporation | Receiver device including native broadcaster application |
| JP7738409B2 (en) * | 2021-05-31 | 2025-09-12 | 日本放送協会 | Receiving device, client terminal device, and program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6175448A (en) * | 1984-09-20 | 1986-04-17 | Fujitsu Ltd | Program execution control system |
| JPH03119422A (en) * | 1989-10-03 | 1991-05-21 | Nec Corp | Interprogram connection system |
| JP6121881B2 (en) * | 2013-11-13 | 2017-04-26 | 日立マクセル株式会社 | Broadcast receiver |
| JP6587335B2 (en) * | 2015-01-29 | 2019-10-09 | 日本放送協会 | Reception device, terminal device, and program |
-
2016
- 2016-11-07 JP JP2016217390A patent/JP6770872B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018078384A (en) | 2018-05-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2775707B1 (en) | Information processing device, information processing method | |
| US9706241B2 (en) | Systems and methods for casting a graphical user interface display of a mobile device to a display screen associated with a set-top-box device | |
| JPWO2013118617A1 (en) | Receiving apparatus, receiving method, and program | |
| US20150012952A1 (en) | Display device, information acquisition method, and information providing method | |
| KR101292487B1 (en) | Apparatus for sharing contents | |
| JP6770872B2 (en) | Terminal devices and programs | |
| JP6872662B2 (en) | Receiver and program | |
| JP6861058B2 (en) | Terminal devices and programs | |
| JP6826865B2 (en) | Terminal devices and programs | |
| JP6726601B2 (en) | Terminal device and program | |
| KR20090008064A (en) | Automatic Search Method and Applied Imaging Device | |
| JP6722566B2 (en) | Terminal device and program | |
| JP7615241B2 (en) | Terminal equipment | |
| JP7313972B2 (en) | Receiver and terminal equipment | |
| JP6745198B2 (en) | Terminal device, receiving device, and program | |
| JP6807214B2 (en) | Terminal devices, receivers and programs | |
| US9900644B2 (en) | Device and method for processing an object which provides additional service in connection with a broadcast service in a broadcast receiving device | |
| JP6770871B2 (en) | Terminal devices and programs | |
| CN104104562B (en) | Method, client, server and the system of signaling are transmitted in home network | |
| JP2021072613A (en) | Receiving device and program | |
| WO2016082067A1 (en) | Resource sharing method and terminal | |
| KR100977346B1 (en) | IPTV-based content gift service method and device therefor | |
| CN101350685A (en) | Method of providing information and broadcast receiving device using the method | |
| CN111698571B (en) | Public network mirroring method, terminal and computer readable storage medium | |
| CN116095392A (en) | Program reservation method, program reservation device, electronic device, and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20181026 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191002 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200811 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200901 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200928 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6770872 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |