JP2014010842A - アプリケーションを発見する方法 - Google Patents

アプリケーションを発見する方法 Download PDF

Info

Publication number
JP2014010842A
JP2014010842A JP2013136112A JP2013136112A JP2014010842A JP 2014010842 A JP2014010842 A JP 2014010842A JP 2013136112 A JP2013136112 A JP 2013136112A JP 2013136112 A JP2013136112 A JP 2013136112A JP 2014010842 A JP2014010842 A JP 2014010842A
Authority
JP
Japan
Prior art keywords
application
discovery
screen device
request
screen
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.)
Granted
Application number
JP2013136112A
Other languages
English (en)
Other versions
JP6396005B2 (ja
Inventor
White Jean-Marie
ホワイト ジーン−マリー
Danciu Daniel
ダンシウ ダニエル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netflix Inc
Original Assignee
Netflix Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netflix Inc filed Critical Netflix Inc
Publication of JP2014010842A publication Critical patent/JP2014010842A/ja
Application granted granted Critical
Publication of JP6396005B2 publication Critical patent/JP6396005B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43637Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】家庭用電子機器とスマートフォンなどの間で、AV用エンターテイメントをシームレスに楽しめるようにする。
【解決手段】 スマートフォンなどの第2のスクリーン装置110が、ローカルネットワーク114を検索して第1のスクリーン装置102上のディスカバリーサーバー106の存在を探す。ディスカバリーサーバー106は、第1のスクリーン装置102と第2のスクリーン装置110間の通信をアシストして、特定のアプリケーション104が第1のスクリーン装置102上で起動されるようにし、第2のスクリーン装置上110のローカルなアプリケーションから制御できるようにする。
【選択図】図1A

Description

関連出願の相互参照
この出願は、2012年7月25日に出願された米国仮出願第61/675,756号および2012年6月28日に出願された米国仮出願第61/665,827号は、ここで十分に説明されたものとして全てについて参照され援用される。
本開示は、一般的なネットワーク内のコンピュータープログラムアプリケーションの存在を発見する手法に関する。本開示は、より具体的には、第1のスクリーンオーディオビジュアル(AV)装置および第2のスクリーン付きコンピューター装置の調整に便利なアプリケーションの発見技術に関する。
このセクションで説明された手法は、追行されることが可能な手法であるが、必ずしも以前に考案され追行された手法を必要とするものではない。したがって、特に指摘がない限り、単にこのセクションに含まれることで、このセクションで説明された手法のいずれかを先行技術として認めるものではない。
家庭環境や商業環境におけるビデオベースのエンターテイメントシステムには、テレビ、デジタルビデオレコーダー、ディスクプレーヤー、および、ケーブル放送や衛星放送のシステムと互換性があるセットトップボックスなど、様々なプライマリ表示システムがある。このようなプライマリ表示システムは、多くはエンターテイメントや他の機能に関するアプリケーションプログラムの提供が可能な専用のコンピューターを備え、通常、大型スクリーン表示装置または表示ユニット上でプログラムを駆動または表示を行うことが可能である。同じ環境で、他の専用のコンピューター装置と、スマートフォン、タブレットコンピューター、ラップトップコンピューター、ネットブックコンピューター、他のコンピューターやワークステーションなどの汎用のコンピューター装置が、使用されるのは当たり前である。しかし、SSDPやBonjour/mDNSなどのローカルネットワーク上の装置を発見するための特定のプロトコルが有効になっているときに、現在の技術では、コンピューター装置で提供されるアプリケーションが、プライマリ表示システム上で実行しているアプリケーションを特定し、アプリケーションからデータを取得し、アプリケーションと連携して操作を行うのは困難であるとされてきた。他の例では、ローカルネットワーク上のラップトップコンピューターが、プライマリ表示システムにおいて、プライマリ表示システムで提供される個別のエンターテイメント向けのコンピュータープログラムアプリケーションを特定して起動する方法もないかもしれない。そのため、従来、プライマリ表示システムが提供しているアプリケーションを特定し、起動し、利用して、シャットダウンするためには、通常はユーザーがプライマリ表示システムと直接やり取りを行わなければならなかった。
様々な実施形態に組み込まれて利用されるコンピューター システムのアーキテクチャの図を示す。 一実施形態におけるディスカバリーアプリケーションの方法を示す図を示す。 DIALサービスディスカバリー部の1つの実装方法を示すメッセージシーケンスの図である。 M−SEARCH要求の一例である。 M−SEARCH応答の一例である。 装置記述要求の一例である。 装置記述応答の一例である。 アプリケーションを起動するメッセージシーケンスの図である。 アプリケーション起動要求の一例である。 アプリケーション起動応答の一例である。 アプリケーション情報要求を示す。 アプリケーション情報応答に対するXMLを示す。 アプリケーション情報応答を示す。 一実施形態に組み込まれるコンピューターシステムを示す。
以下、本発明の完全な理解を提供するために、多数の特定の詳細について説明することを目的とする。しかし、本発明は、これら実施形態でなくとも実施できることは明らかである。他の例では、不必要に本発明が不明瞭になることを避けるために、よく知られている構造と装置をブロック図の形式で示す。
1.0 技術的な導入
一実施形態では、第2のスクリーンアプリケーションが第1のスクリーン装置上の第1のスクリーンアプリケーションを発見し起動することを可能にする方法または通信プロトコルを開示する。この開示の1つの最終目的は、家庭用電子機器の所有者が、オーディオビジュアル(AV)指向のエンターテイメントを体験する一部として、スマートフォンやタブレットコンピューターのアプリケーションを統合してシームレスに楽しめるようにすることである。
1.1 技術
この開示では、以下の用語は以下の意味を持つ。
第1のスクリーン:テレビ、ディスクプレーヤー、セットトップボックス、ゲームコンソール、デジタルビデオレコーダー、または、主に演奏やオーディオビジュアル(AV)番組の画像表示を行うことが可能な同様の装置である。第1のスクリーン装置は、多くの場合、ユーザー環境に置かれたプライマリ表示システムである。
第2のスクリーン:スマートフォン、タブレットコンピューター、ラップトップコンピューター、ネットブックコンピューター、または、他の個人用のコンピューター装置である。第2のスクリーン装置は、多くの場合、セカンダリー表示システムであるが、多くの場合、第1のスクリーン装置より高性能あるいは汎用性の高い計算性能と入力機能を備えている。
ディスカバリーサーバー:ここで説明するプロトコルのサーバー側の機能が提供、実行、または、実装されるコンピューター装置である。一実施形態では、ディスカバリーサーバーは、第1のスクリーン装置である。
ディスカバリークライアント:ディスカバリーサーバーに置かれる、または、ディスカバリーサーバーが提供するコンピュータープログラムアプリケーションを発見して起動要求を行うことが可能なコンピューター装置である。一実施形態では、ディスカバリークライアントは第2のスクリーン装置である。
具体的な例を示すために、本開示のいくつかのセクションでは、Netflix(登録商標)、YouTube(登録商標)などの商用のサービスについて説明し、iPhone(登録商標)、スマートフォン、および、Android(登録商標)ベースのタブレット型コンピューターなどの市販のコンピューター装置について説明する。しかし、開示された特定のサービスや装置は単なる例であり、他の実施形態では、コンピューター装置やアプリケーションの他の形態が組み込まれてもよい。
2.0 システムアーキテクチャー
図1Aに、様々な形態の実施に用いられるコンピューターシステムの構造を示す。一実施形態において、第1のスクリーン装置102と第2のスクリーン付きコンピューター装置110は、ローカルネットワーク114に接続される。例えば、第1のスクリーン装置102は、プロセッサが搭載されたテレビ、セットトップボックス、ゲームコンソール、デジタルビデオレコーダー、ディスクプレーヤー、または、ビデオディスプレイ108が装備または駆動できる家庭用電化製品などの他の構成要素であってもよい。第1のスクリーン装置102には、第1のスクリーン用アプリケーション104とディスカバリーサーバー106が設けられ、実行される。様々な実施形態において、任意の数の第1のスクリーン用アプリケーション104をサポートすることが可能であるが、説明を明確にするために、図1Aでは単に、第1のスクリーン用アプリケーションが1つだけ設けられた様子を示す。第1のスクリーン用アプリケーションの例として、「Netflix」と互換性があるプレーヤーなどのビデオプレーヤーがある。
ディスカバリーサーバー106は、1以上のコンピュータプログラムで構成され、このコンピュータプログラムには、ここでさらに説明するように、第1のスクリーン装置内に互換性があるアプリケーションを発見するために、ディスカバリークライアント112からの要求に対して、応答および処理を行う機能を備える。一実施形態では、ディスカバリーサーバー106には、ここでさらに説明する機能を実行するように、DIALサービスディスカバリー部106AおよびDIAL RESTサービス部106Bが設けられる。ここでは、DIALは、発見(Discovery)および起動(Launch)に関し、図1Aに示す、いくつかの運用可能なユニットの一般的な機能を指すものとする。
一般的に、DIALサービスディスカバリー部106Aは、ディスカバリーサーバー106を発見するためのディスカバリークライアント112の要求に応答し、DIAL RESTサービス部106Bは、ディスカバリークライアント112のアプリケーションの起動要求と第1のスクリーン装置102のアプリケーション管理部との間のインターフェイスとしても機能する。一実施形態では、第1のスクリーン装置102は、さらに、ユニバーサルプラグアンドプレイ(UPnP)サーバー107、または、代わりにHTTPサーバーを備え、第1のスクリーン装置102が提供する第1のスクリーン用アプリケーション104および他のアプリケーションに関する情報へのアクセスを提供するように構成される。一実施形態において、UPnPサーバー107は、利用可能なUPnPサービスのリストを含む第1のスクリーン装置102のメタデータで表された装置記述109を用いて、この開示の範囲外の手法を通して設定される。例えば、装置記述109には、第1のスクリーン装置102に対して「Smart HDTV XYZ―900」という名称を規定する「friendly Name」フィールドが含まれるようにしてもよい。さらに、装置記述109で、「Application−URL」ヘッダーフィールドがHTTPの要求に対応するHTTPの応答を提供するようにしてもよい。このApplication−URLが、ディスカバリーサーバー106のDIAL RESTサービス部106Bを指すようにしてもよい。このApplication−URLに、注目している特定のアプリケーション名を続けることによって、第2のスクリーン付きコンピューター装置110などのUPnPクライアント装置が、クエリを実行し、第1のスクリーン用アプリケーション104と0個以上の第1のスクリーン装置102が提供している他のアプリケーションを制御することができる。ネーミングの一貫性を保つために、UPnPクライアントは、後述のセクション7.0で記載されるように、DIALレジストリ内に登録された明確に定義されたアプリケーション名(Application Name)を利用するようにしてもよい。アプリケーションURLを介してアクセスできるアプリケーションは、装置記述109で規定されたUPnPサービスの一覧から分けられて区別されることに注意すべきである。
第2のスクリーン付きコンピューター装置110は、スマートフォン、タブレットコンピューター、ラップトップコンピューター、ネットブックコンピューターや他のコンピューターのいずれか、または、ワークステーションで構成される。第2のスクリーン付きコンピューター装置110は、ディスカバリークライアント112と第2のスクリーン用アプリ113を提供または実行する。第1のスクリーン装置102、または、ローカルネットワーク114に接続されているビデオ向けまたはエンターテイメント向けの他の装置を発見するために、ディスカバリークライアント112は、さらにここに記載するディスカバリー要求を開始するための機能を備えている。第1のスクリーン用アプリケーション104から恩恵を受けることが可能な、あるいは、スクリーン用アプリケーション104から提供されたデータまたはスクリーン用アプリケーション104へ提供するデータを用いることが可能な、あらゆる種類の実行可能なアプリケーションで、第2のスクリーン用アプリ113を構成するようにしてもよい。例えば、第2のスクリーン用アプリ113が、テレビ番組のスケジュール、メディアのファイル管理、および、インターネットサーバー上で提供されるアプリケーションへアクセスするためのイターネットブラウザーのうち少なくとも1つを、提供するようにしてもよい。
ローカルネットワーク114は、複数の有線ネットワークリンク、無線ネットワークルーター、またはネットワークインフラなどの他の要素で構成される。一実施形態においては、ローカルネットワーク114は、ケーブルモデム、DSLモデム、または、公衆通信回線118や相互接続ネットワーク(インターネットとして知られるグローバルな相互接続ネットワークの集まりなど)に接続する他のアクセス装置などのアクセスルーター116に接続される。ローカルネットワーク114を第1のスクリーン装置102と第2のスクリーン付きコンピューター装置110に接続するリンクを、有線リンクまたは無線リンクで構成してもよい。例えば、アクセスルーター116は、無線ローカルエリアネットワーク(WLAN)ルーターとケーブルモデムの組合せ、DSLモデム、または他のアクセス装置であってもよく、装置102、110が、互換性のある無線用ネットワークインターフェイスカードを備えていてもよい。
一実施形態では、ディスカバリーリポジトリ120は、ネットワーク118に接続され、ディスカバリーサーバー106とディスカバリークライアント112からネットワークプロトコルを用いてアクセスすることが可能である。一般的に、ディスカバリーリポジトリ120は、リレーショナルデータベース、フラットファイルシステム、または、第1のスクリーン用アプリケーション104または第2のスクリーン用アプリ113で広く利用することが可能な名前が知られた集中的に情報を保持するためのデータ記憶装置で構成される。ディスカバリーリポジトリ120の構成および利用について、さらにここで説明する。
図1Aの破線は、ディスカバリークライアント112と図1Aの他の構成要素間の仮想通信パスを示している。
3.0 使用例
様々な実施形態において、このセクションで説明する一般的な手法で第2のスクリーン装置と第1のスクリーン用アプリケーション間の通信を確立するために、異なる手法が組み込まれるようにしてもよい。
図1Bに、一実施形態における、アプリケーションを発見する方法を示す。ブロック130で、第2のスクリーン装置で実行しているディスカバリーサービスクライアントは、第2のスクリーン装置と1つ以上の第1のスクリーン装置の双方に接続されるローカルネットワークに対してディスカバリー要求を開始する。ディスカバリー要求で、マルチスクリーンサービスを指定すると、リッスン(待ち受け)状態のマルチスクリーン用のエンターテイメント向けサービスをサポートするサーバーが、要求を認識して応答することができる。ブロック132で、ディスカバリーサービスクライアントは、第1のスクリーン装置の1つからディスカバリー応答を受信して、第1のスクリーン装置上のディスカバリーサーバーの名前と場所を特定する。第1のスクリーン装置が、SSDPまたはUPnPをサポートしている場合は、第1のスクリーン装置のSSDPサーバーまたはUPnPサーバーから応答が来る。他の実施形態では、マルチスクリーンサービスまたは同等のサービスを指定したディスカバリー要求を認識して応答する他のサーバーが、第1のスクリーン装置に実装される。この時点で、第2のスクリーン装置のディスカバリーサービスクライアントは、ネットワーク内に互換性のあるサーバーが存在し、さらに特定のアプリケーションに関するデータを取得するために接続されることが分かっている。さらにここで説明するように、あらゆる技術とプロトコルを用いてディスカバリーサーバーを実装することができる。
ブロック134では、ディスカバリーサービスクライアントは、ディスカバリーサーバーに、第1のスクリーン装置で利用可能な1つ以上のアプリケーションの場所と必要であれば名前の情報を要求する。ブロック134は、最初にDIAL REST APIを呼び出す位置を特定し、2つのステップの処理を用いてアプリケーションの情報に対するDIAL REST APIを問い合わせるようにしてもよい。例えば、ディスカバリーサービスクライアントはディスカバリーサーバーのUPnP装置記述を得るためにHTTP要求を最初に送信する。HTTP応答には、UPnP装置記述が含まれ、また、DIAL REST APIを指しているApplication−URLヘッダーフィールドも含まれている。次に、Application−URLは、既知のインストールされているアプリケーションの名前および/または場所の情報を問い合わせるために用いられ、構造化されたドキュメントまたは別の応答の形態で構成される。いくつかの実施形態において、ディスカバリーサービスクライアントには、インストールされている可能性があるアプリケーションの名前があらかじめ設定され、インストールされている特定の名前のアプリケーションに関する情報を返すようにディスカバリーサーバーに要求する。したがって、ディスカバリーサービスクライアントは、例えば、特定のアプリケーション名とApplication−URLを繋げて、ディスカバリーサーバーに問い合わせることによって、第1のスクリーン装置に特定のアプリケーションがインストールされているか否かを決定することができる。特定の実施形態では、ディスカバリーサービスクライアントは、ブロック136の処理の後に戻ってきたアクションによって、特定のアプリケーションがインストールされているか否かを決定することができるので、ブロック134は必要に応じて省略するようにしてもよい。
ブロック136で、ディスカバリーサービスクライアントは、必要に応じて、1つ以上の指定されたパラメーター値を用いて、ディスカバリーサーバーに第1のスクリーン装置上の指定されたアプリケーションの起動を要求する。それに応じて、ディスカバリーサーバーは、オペレーティングシステムのアプリケーションマネージャーや、指定されたアプリケーションを起動させる第1のスクリーン装置上の他の機能とやり取り(インタラクション)を行うようにしてもよい。この手法では、ディスカバリーサービスクライアントは、第1のスクリーン装置上でアプリケーションを直接呼び出したり、起動させたりするように機能する情報やコードを用いて構成することは要求されない。その結果、第1のスクリーン装置は、ディスカバリーサービスクライアントあるいは第2のスクリーン装置が特別な構成でなくても、第2のスクリーン用アプリがなくても、アプリケーションを管理するために、プロセッサ、オペレーティングシステム、または他のプラットフォームの任意の組合せを用いるようにし、さらに、第2のスクリーン装置で、最終的に第1のスクリーン装置上のアプリケーションの起動または呼び出しが可能になるようにする。
さらに、表1を用いて後述するように、起動要求に応じて様々なアクションが発生する。たとえば、起動要求により「404 Not Found」のアクションが発生した場合、ディスカバリーサービスクライアントは、特定のアプリケーションがインストールされていないと判定する可能性がある。
ブロック138では、ディスカバリーサービスクライアントが、第2のスクリーン装置上で実行または提供されるローカルのアプリに第1のスクリーン用アプリケーションを識別するデータを提供する。ブロック140では、第1のスクリーン用アプリケーションと第2のスクリーン用アプリで通信を行い、ローカルネットワークを介して直接やり取りを行う。そのような通信が、URL、または、さらにここで記載するように、第1のスクリーン装置上で提供される中間サービスを介して第1のスクリーン用アプリケーションに渡すことが可能な他の構造化識別子を通じて行なわれるように、ディスカバリークライアントを構成するようにしてもよい。この結果、第2のスクリーン用アプリは、第1のスクリーンアプリケーションと効率的に通信を行うことが可能になり、操作を連携し、データを共有し、機能または実行の管理を行う。
様々な実施形態において、図1Bの一般的な方法は、以下に例示する手法において、第1のスクリーンサービス、第2のスクリーンサービスまたはクラウドベースのサービスとして実施してもよい。
3.1 第1のスクリーンサービス
一実施形態では、「iPhone」のスマートフォンで実行されている「Netflix」のアプリケーションは、「Netflix」対応のテレビを発見すると、ユーザーが映画を鑑賞できるように、テレビ上で「Netflix」アプリを起動する。ここでは、「「Netflix」対応テレビ」は、「Netflix」アプリが既にインストールされているコンピューター機能を備えたテレビ表示装置をいう。このような実施形態は、次の一般的な処理で構成することができる。
(a)「iPhone」上の「Netflix」アプリが、ネットワークテレビ上でディスカバリーサービスを発見する。
(b)「iPhone」上の「Netflix」アプリは、ディスカバリーサービスを用いてネットワークテレビを要求して、テレビ上で「Netflix」アプリを起動する。
(c)「iPhone」上の「Netflix」アプリは、テレビ上の「Netflix」アプリケーションを発見する。
(d)「iPhone」上の「Netflix」アプリとテレビ上の「Netflix」アプリが映画を上映するために通信する。
3.2 第2のスクリーンサービス
一実施形態では、「Android」タブレット上の「YouTube」アプリが「YouTube」対応テレビを発見すると、テレビ上で「YouTube」アプリを起動して、テレビでビデオを再生する。ビデオの終了後は、テレビを元の再生していたテレビ番組に戻す。このような実施形態は、次の一般的な処理で構成することができる。
(a)タブレット上の「YouTube」アプリが、ネットワークテレビ上のディスカバリーサービスを発見する。
(b)タブレット上の「YouTube」アプリが、ディスカバリーサービスを用いて、タブレット上の「YouTube」アプリに対応するネットワークアドレス(IPアドレスとポート値など)を渡して、テレビ上で「YouTube」アプリを起動する。
(c)テレビ上の「YouTube」アプリがビデオを上映するためにタブレット上の「YouTube」アプリと通信した後、通常のテレビのユーザーインターフェイスに戻って終了する。
3.3 クラウドベースのサービス
一実施形態では、「Android」ベースのスマートフォンのWebcamXアプリが、WebcamX対応のテレビを発見し、ウェブカメラのストリームを表示するために、テレビ上でブラウザベースのHTML5 WebcamXアプリが起動される。この例では、WebcamXアプリケーションは、ここに記載された技術の実施可能性と利用可能性を示すために記載された仮想的な例である。このような実施形態は、次の一般的な処理で構成することができる。
(a)スマートフォン上のWebcamXアプリがネットワークテレビ上のディスカバリーサービスを発見する。
(b)スマートフォン上のWebcamXアプリはディスカバリーサービスを用いて、乱数または擬似乱数に基づいて一意に決められたトークンを渡して、WebcamXアプリケーション用のURLで始まるHTML5のベースのブラウザの起動をテレビに要求する。
(c)スマートフォン上のWebcamXアプリは、サーバーが2つのアプリケーション間のトラフィックが正しくルーティングするように一意に決められたトークンを用いて、クラウドベースのWebcamXサーバーを用いたテレビ上でWebcamXアプリと通信する。
4.0 発見方法の例の概要
説明を明確にするために、この開示の特定のセクションでは、DIALなどの簡略表示した特定の用語を用いる。ただし、別の実施形態では、機能的に同等の方法、または別の名前、ラベル、あるいは識別名称を用いる機構を実装するようにしてもよく、DIALなどの用語は、単に例として挙げられる。
一実施形態では、DIAL サービスディスカバリー部106AとDIAL RESTサービス部106Bを介して、この技術を実施してもよい。RESTは、ここでは、分散システムのソフトウェアアーキテクチャのRepresentational State Transferスタイルを指す。説明を明確にするため、ここではRESTサービスを用いて説明するが、別の実施形態では、SOAPやWSDLを用いるようにしてもよい。一実施形態ではDIALサービスディスカバリー部が、ローカルネットワークのセグメント上のディスカバリーサーバーを発見して、これらの装置上でDIAL RESTサービスへアクセスするために、ディスカバリークライアント装置を有効にする。
一実施形態ではDIAL RESTサービスは、ディスカバリークライアントが、ディスカバリーサーバー装置上で提供または実行されているアプリケーションを問い合わせ、起動し、任意に停止することを可能にする。
5.0 DIALサービスディスカバリー
一実施形態では、DIALサービスディスカバリー部106Aは、SSDP(Simple Service Discovery Protocol)で構造化されたメッセージ内で指定された検索対象(Search Target)を用い、UPnP(ユニバーサルプラグアンドプレイ)装置記述のHTTP(ハイパーテキスト転送プロトコル)要求に対する応答で指定されたヘッダーを用いるように実装される。SSDPプロトコルは、upnp.orgのHTTPサーバーのフォルダ/sdcps-and-certification/standards/device-architecture-documentsに、この記事を記載した時点において参照可能な状態で、UPnP装置のアーキテクチャ1.1(2008年10月15日)に記載されている。
一実施形態において、R. Fielding「ハイパーテキスト転送プロトコル HTTP 1.1」Request for Comment (RFC) 2616、1999 年 6 月刊、The Internet Society出版、に記載されているように、DIAL RESTサービス部106Bは、HTTPを用いてアクセスされる。一実施形態において、ディスカバリークライアントとディスカバリーサーバーは、UPnPプロトコルのセクション2.1の要件をサポートし、特に、HTTP1.0が、通常、常にサポートされ、HTTP1.1もサポートされる可能性がある。
この構成(arrangement)による効果は、できれば第1のスクリーン装置上で既存のUPnPサーバーをサポートするが、第1のスクリーン装置に必須ではないことである。あるいは、第1のスクリーン装置は、同等の機能を提供するHTTPサーバーを実装することも可能である。さらに、ここに記載した構成は、新たに標準となりつつあるWebインタラクション(interaction)と互換性がある規定の通信メカニズムを用いて、ディスカバリークライアント112と第2のスクリーン用アプリ113によって、第1のスクリーン用アプリケーション104の効率的な発見を促進する。
図2は、DIALサービスディスカバリー部の1つの実装方法を示すメッセージの流れを示す図である。図2では、一連のメッセージはUPnPサーバーとDIALクライアント(図1AのUPnPサーバー107とディスカバリークライアント112のそれぞれに対応する)間でネットワークを介して渡される。
図2のメッセージ(1)は、M−SEARCH要求であり、図3にその一例を示す。一実施形態において、ディスカバリークライアントが1以上のディスカバリーサーバーを発見するときは、UDP経由でUPnP装置のアーキテクチャのセクション1.3.2で定義されているM−SEARCH要求を、マルチキャストアドレス239.255.255.250のUDPポート1900に送信する。図2のように、第1のスクリーン装置上のUPnPサーバーに要求が送られ、UPnPをサポートするこれらの第1のスクリーン装置でUPnPサーバーの機能の利用が可能になる。要求には、値「urn:dial-multiscreen-org:service:dial:1」が検索対象(ST)ヘッダーに含まれる。
別の実施形態では、異なるST値が用いられてもよく、上記で提供された値の例は重要な意味を持つものではない。上記のマルチキャストアドレスはIPv4に対するものであり、他の実施形態では、IPv6と互換性がある同等のマルチキャストアドレスに基づいて、IPv6アドレスに対して同様のプロセスを用いるようにしてもよい。
図2のメッセージ(2)は、M−SEARCH応答であり、図4に一例を示す。一実施形態では、SSDPサーバー、または上記で定義したSTヘッダーを含むM−SEARCH要求を受信したUPnPサーバーが、UPnP装置のアーキテクチャのセクション1.3.3.で定義されているように応答する。応答には、ルート装置のUPnP記述に対する絶対HTTP URLがLOCATIONヘッダーに含まれる。第1のスクリーン装置で実行されている下位層のサービス記述よりも、第1のスクリーン装置102に適用可能な最上位層のUPnP記述が戻され、ルート装置が参照される。URLのホスト部分を解決してIPアドレスに変換する、または、URLのホスト部分がIPアドレスを含むようにする。応答のSTヘッダーには、前述の節で指定されたものと同じ識別子が含まれる。図2に示すように、DIALクライアントによって、メッセージ(2)が受信されると、DIAL対応のテレビを発見する処理が完了する。
図2のメッセージ(3)は、装置記述要求であり、図5に一例を示す。一実施形態では、メッセージ(2)に示されるM−SEARCH応答を受信すると、ディスカバリークライアントがHTTP GET要求を、M−SEARCH応答のLOCATIONヘッダーで受け取ったURLに送信する。一実施形態では、SSDPヘッダーのフィールド名を照合するときは、大文字小文字の区別はしない。
図2のメッセージ(4)は、装置記述応答であり、図6に一例を示す。一実施形態では、装置記述に対するHTTP GET要求の受信に応じて、ディスカバリーサーバーは、UPnP装置のアーキテクチャのセクション2で定義されたようにUPnP装置記述を構成するHTTP応答を返す。さらに、一実施形態では、要求はリダイレクトされない。要求が成功であれば、HTTP応答は、Application−URLと表記されたヘッダーフィールドを含み、その値がDIAL RESTサービスを特定する絶対HTTP URLの値であり、DIAL RESTサービスのURLとして参照される。URLのホストの部分でIPアドレスを特定する、または、URLのホストの部分を解決してIPアドレスに変換する。図2に示すように、一旦、DIALクライアントでメッセージ(4)が受信されると、DIAL RESTサービスを探索する処理が完了する。
一実施形態において、ABNF記法では、アプリケーションURLヘッダーのフォーマットは:
Application-URL = “Application-URL” “:” absoluteURI
となる。
一実施形態では、さらにここで記載されるように、このような応答を受け取ったディスカバリークライアントは、提供されたURLを用いてDIAL RESTサービスにアクセスする。一実施形態では、UPnPで定義された装置記述の「friendlyName」フィールドは、ディスカバリークライアント装置のユーザーインターフェイスを表示するために用いられるようにしてもよい。例えば、このような名前が、対話入力でディスカバリーサーバー装置の選択を行うためにユーザーにリストやメニューで提供されてもよい。
前述の手法を用いて、第2スクリーンのクライアントコンピュータは、最初に、第1のスクリーン装置の応答を返したディスカバリーサービスの存在を発見し、次に、第1のスクリーン装置で利用できるアプリケーションを記述した他の情報の位置がわかる。その後、第2スクリーンのクライアントコンピュータは、第1のスクリーン装置の1つ以上のアプリケーションを選択的に起動し、第1のスクリーン装置102のアプリケーションマネージャーとインターフェイス接続するDIAL RESTサービスの各構成部などを用いて、興味ある機能を実行する。
6.0 DIAL REST サービス
6.1 アプリケーションリソース
一実施形態では、DAIL RESTサービス部106Bは、URLによって特定されるリソース(例えば、「Netflix」または「YouTube」)などのアプリケーションと同時に使用される。特定のアプリケーションに関する操作は、その特定のアプリケーションに対する特定URL (Application Resource URL と表記される)にHTTP要求を送信するようにしてもよい。一例として、DIAL RESTサービス部106Bについて説明するが、他の実施形態では、RESTの代わりに、SOAP、独自のTCPベースのプロトコル、または、XMPPに基づいたインスタントメッセージを送るためのJabber−styleのプロトコルを使用するようにしてもよい。
一実施形態では、アプリケーションリソースのURLは、アプリケーションURLとアプリケーション名をつなげることによって形成される。ここでは、プラットフォームとなるアプリケーションマネージャーは、第1のスクリーン装置102のあらゆる機能ユニットであり、アプリケーションの起動、フォーク(forking)またはスポーン(spawning)処理、実行機能、あるいは、同様の機能を実行する。アプリケーションマネージャーは第1のスクリーン装置102を制御するオペレーティングシステムのユニットやサービスであってもよい。
各アプリケーションのアプリケーション名はアプリケーションプロバイダによって定義される。アプリケーション名は、第7セクションで更に説明されるDIALレジストリに登録される。
6.2 アプリケーションの起動
図7はアプリケーションの起動を説明するメッセージの手順を示す図である。図7は、一連のメッセージが、DIAL RESTサービスとDIALクライアント(図1AのDIAL RESTサービス部106Bとディスカバリークライアント112がそれぞれ対応する)間のネットワークを通じて渡される。
アプリケーションの起動要求を送る前に、DIALクライアントは、最初に、メッセージ(1)、または、Application Information Request(アプリケーション情報要求)を送って既存の特定のアプリケーションがインストールされていること確認する。「200 OK」というメッセージ(2)をDIAL RESTサービスから受信すると、DIALクライアントはメッセージ(3)の送信が可能になる。しかし、別のメッセージ(2)を受信した場合、図10、図11A、図11B、および表2を用いて後述するように、DIALクライアントは、それに従って応答するようにしてもよい。例えば、特定のアプリケーションがインストール可能であるがインストールされていない場合は、DIALクライアントは、特定のアプリケーションのインストールを開始し、成功したことを検証するようにしてもよい。
一実施形態では、図7のメッセージ(3)に示すように、ディスカバリーサービスのアプリケーションを起動するディスカバリークライアントが、所望のアプリケーションのApplication Resource(アプリケーションリソース)URLにHTTPのPOST要求の形式でアプリケーション起動要求を送る。一例が図8に示される。一実施形態では、ここに記載されている方法を用いて、いずれのアプリケーションが利用可能なるかは、ディスカバリーサーバーを組み込む団体(party)の裁量による設定で決まる。様々な実施形態において、ディスカバリーサーバーは、ここに記載された技術を用いて、第1のスクリーン装置上で動く1つ、いくつか、または全てのアプリケーションを起動するために利用できるようしてもよい。POST要求のメッセージの本文は空であっても、起動中のアプリケーションに渡される引数の文字列が含まれるようにしてもよい。一実施形態では、POST要求のメッセージの本文部が空でなければ、MIMEのタイプが「text/plain」であり、キャラクターのエンコードは一般的にUTF-8で行われ、MIMEパラメーター「charset」を含めることでキャラクターのエンコードが明確に指定される。
様々な実施形態において、様々なプラットフォームやアプリケーションで、引数の文字列がアプリケーションに渡される方法が異なっていてもよい。引数の受け渡しは重大ではない、あるいは、この開示の範囲ではない。引数のフォーマットは起動するアプリケーションに必要な条件に合わせるべきである。例えば、キー値のペア、JSON、またはXMLが用いられるようにしてもよく、引数のフォーマットを選択することは特別重大ではない。一実施形態では、ディスカバリーサーバーはアプリケーションに引数の文字列を直接渡すようにしてよいが、アプリケーションは安全性のチェックが行われたとは考えていない。従って、アプリケーションは通常それぞれで引数のデータの安全性のチェックを行っている。安全性のセキュリティチェックの例には、キャラクターのエンコードのチェックが含まれる。
有効なPOST要求の受信に応じて、ディスカバリーサーバーはPOST URLから最初にアプリケーション名を取得する。POST URLが無効である、またはアプリケーション名を得る処理を行うことができなければ、ディスカバリーサーバーはHTTPプロトコル仕様で指定されたHTTP応答コードを戻す。
一実施形態では、図7のメッセージ(4)に示すように、ディスカバリーサービスは、HTTP応答の形式でアプリケーション起動応答をディスカバリークライアントに送信し、図8にその一例を示す。ディスカバリーサーバーは、アプリケーション名が認識できないか、メッセージ本文内のコンテンツの長さがディスカバリーサーバーでサポートできる最大サイズを超えているか、現在のアプリケーションの状態がNot Started(アプリケーションが実行されていない);Starting(アプリケーションが他のDIAL RESTのためにリスタート、または、他の理由によりリスタート中である);Running(アプリケーションが実行中);メッセージ本体が空(empty)であるか等の、要因に応じた複数の応答アクションを実行する。特定の応答アクションは、アプリケーション起動応答に反映される。テーブル1は、一実施形態に組み込まれる応答動作をまとめたものである。
Figure 2014010842
上記の特定されたアクションの後でアプリケーションが実行されると、図7のメッセ−ジ(4)に示すようにディスカバリーサーバーはHTTP応答の応答コード「201 Created」を返信する。この場合、応答ヘッダーには、アプリケーションの実行中のインスタンスを特定する絶対URLが含まれ、Application Instance URLと表記される。URLのホスト部分がIPアドレスである、またはURLのホスト部分を解決してIPアドレスに変換され、応答本文はnullである。
他方、例えば、アプリケーションのスタートまたはリスタートを成功させることができないときは、ディスカバリーサーバーはHTTP応答のコード「503 Service Unavailable」を返す。様々な実施形態において、アプリケーションが既に実行中に引数が提供され、第1のスクリーン装置で実行中のアプリケーションに対して新たな引数の提供する方法がサポートされていなければ、新しい引数を用いてアプリケーションをリスタートしてもよい。さらに、アプリケーションを実行するために、ホストシステムは、一般的に、フォーク、実行、スポーン、または、同等の機能をブロックしない形態を用いるが、あらゆる直接的なシステムエラーが検出されるとHTTP 「503 Service Unavailable」のエラーが返される原因となる。もしエラーとなることなくアプリケーションを実行するシステムコマンドが成功すれば、ここで開示された目的のためにアプリケーションが実行される。したがって、必要に応じて、図7のメッセージ(1)および(2)で行う特定のアプリケーションが既にインストールされているか否かのチェックを省略して、アプリケーション起動応答メッセージ(4)で「404 Not Found」や「503 Service Unavailable」を受け取って特定のアプリケーションを利用可能にするように指示してもよい。
Application Instance URLは、情報の要求や実行しているアプリケーションのインスタンスを止めるために用いられる場合もある。
6.3 アプリケーションの停止
一実施形態では、ディスカバリーサーバー上で実行しているアプリケーションのインスタンスを止めるためにディスカバリークライアントは、Application Instance URLにHTTP DELETE要求を送信する。一実施形態では、アプリケーションインスタンスの停止を許可するために、ディスカバリーサーバーはHTTP DELETE要求を必要に応じてサポートする。HTTP DELETE要求がサポートされていれば、DELETE要求の受信に応じて、ディスカバリーサーバーは、最初に要求のURLが実行されているアプリケーションインスタンスに対応するか否かを判定する。実行されていれば、ディスカバリーサーバーは、HTTP仕様に定義された適切なHTTP応答コードの応答を送信する。提供されたURLが現在実行中のアプリケーションインスタンスに対応していなければ、サーバーは、HTTP応答で応答コード「404 Not Found」を返す。
そうでければ、ディスカバリーサーバーはHTTP応答で応答コード「200 OK」を送信し、実行しているアプリケーションを停止させる。これらの操作は、非同期で実行されるようにしてもよい。
6.4 アプリケーション情報の問い合わせ
一実施形態では、アプリケーションに関する情報を発見したいディスカバリークライアントは、上述のセクション6.1で説明したように、HTTPのGET要求をApplication Resource URLへ送信する。図10に、アプリケーション情報要求(Application Information Request)を示す。
一実施形態では、GET要求などの受信に応じて、ディスカバリーサーバーは、最初に要求URLからアプリケーション名を抽出する。GET要求が無効またはアプリケーション名の抽出の処理ができないときは、ディスカバリーサーバーは、HTTP仕様に定義されている適切なHTTP応答コードを返す。
アプリケーション名が認識できない場合は、HTTP応答で応答コード「404 Not Found」を返す。
そうでなければ、ディスカバリーサーバーは、応答コード「200 OK」とHTTP応答の形式でアプリケーション情報の応答を送信し、図11Bにその一例を示す。応答のMIMEタイプが「text/xml」であり、キャラクターのエンコードがUTF-8で行われ、MIMEパラメーター「charset」を用いて指定される。ディスカバリークライアントが、認識されないXML要素や属性を無視するように構成された場合を除き、XMLドキュメントは、図11Aに示されるようなスキーマに従う。テーブル2は、一実施形態におけるスキーマの意味をまとめたものである。
Figure 2014010842
6.5 アプリケーションをインストールするトリガー
一実施形態では、ディスカバリーサーバーは、クライアントに現在インストールされていない特定のアプリケーションをアプリケーションインストールするためのトリガーをサポートするようにしてもよい。
一実施形態では、アプリケーション名が認識され、アプリケーションがインストールされておらず、ディスカバリーサーバーがこの特定のアプリケーションをアプリケーションインストールするためのトリガーをサポートしている場合には、ディスカバリーサーバーは、「installable=」の文字列で始まる「状態(state)」要素を返す。要素の残りの部分に絶対URLが含まれる。URLのホスト部分がIPアドレス、またはURLのホスト部分を解決してIPアドレスに変化する。その後、ディスカバリークライアントは、特定のURLにHTTP GET要求を送信して、ディスカバリーサーバー上でアプリケーションのインストールを開始するようにしてもよい。
ディスカバリーサーバーでそのような要求を受信すると、アプリケーション名が認識され、アプリケーションがインストールされていないとともに、ディスカバリーサーバーが指定されたアプリケーション名でアプリケーションをインストールするトリガーをサポートしていない場合には、ディスカバリーサーバーがHTTP応答で応答コード「404 Not found」を返す。
一実施形態では、アプリケーションがインストール可能であれば、GET要求を通じて、ディスカバリークライアントが、提供されたインストール可能なURLを要求するか否かを選択する。例えば、ディスカバリークライアントを実行している同じコンピューター上で提供された第2スクリーンアプリは、「アプリケーションがインストールされていません。今、インストールしますか?」というようなユーザーインターフェイス用のメッセージを生成するようにしてもよい。第1のスクリーン装置がインストール要求を扱う過程には、この開示の範囲外であるが、アプリを直接インストール、市場におけるアプリのプレゼンテーション、または、購買施設などの様々な選択がある。
7.0 ディスカバリーレジストリ
一実施形態では、各アプリケーションに対する正確な名前が明確に定義されることを保証し、名前が衝突しないようにするために、アプリケーション名はDIAL Registryと呼ばれるデータレジストリに登録される。一実施形態では、サービスプロバイダーがレジストリを維持し、レジストリはここに記載されるディスカバリーサーバーまたはディスカバリークライアントを備える他のあらゆる団体で利用可能である。アプリケーション名は確実に登録され、あるいはアプリケーションの接頭部(プレフィックス)のみを登録することによって、共通のプレフィックスを持つ一連のアプリケーション名を登録するようにしてもよい。
一実施形態では、各アプリケーション名とアプリケーションのプレフィックスは、上記で参照したBerners−Lee(RFC 3986)に記載されている「pchar」プロダクションに一致する文字の並びで構成される。いくつかの実施形態では、アプリケーションのプレフィックスは会社名がわかるように、例えば、「Acme」、「com.acme」などで構成される。
一実施形態では、アプリケーション名はアプリケーション名が市場で実際に利用可能になった時に登録されるようにしてもよく、これで予め登録された名前やプレフィックスが衝突することはない。プレフィックスの会社名でアプリケーションやそれらを実行する装置が市場に盛んに供給されるようになれば、アプリケーションのプレフィックスを登録することができる。以前の登録と混同されるかもしれない名前やプレフィックス、またはここに記載されたディスカバリーサービスに使用する予定のない名前やプレフィックスを登録するべきではない。
8.0 実装例−ハードウェアの概要
図12は、本発明の実施形態を実装したコンピューターシステム1200を示すブロック図である。コンピューターシステム1200は、バス1202または情報を通信するための通信機構と、情報を処理するバス1202と接続されたプロセッサ1204とを備える。コンピューターシステム1200は、またランダムアクセスメモリ(RAM)または他の動的記憶装置などの主記憶装置1206を備え、プロセッサ1204で実行するための情報及び命令を記憶するためにバス1202と接続されている。主記憶装置1206は、また一時的な変数またはプロセッサ1204で実行される命令が実行中に発生する中間情報を記憶するために用いられる。コンピューターシステム1200は、さらに、読み取り専用メモリ(ROM)または他の静的記憶装置を備え、静的な情報やプロセッサ1204の命令を記憶するためにバス1202に接続される。磁気ディスクまたは光ディスクなどの記憶装置1210は、情報および命令を記憶するために提供され、バス1202に接続される。
コンピューターシステム1200は、ブラウン管(CRT)などのディスプレイにバス1202を介して接続され、コンピューターのユーザーに情報を表示する。入力装置1214は、英数字と他のキーを備え、バス1202に接続されて、プロセッサ1204に情報およびコマンド選択を通信する。他のタイプのユーザー入力装置は、マウス、トラックボール、または、カーソルの方向キーなどのカーソル制御部1216を備え、方向の情報およびコマンド選択をプロセッサ1204に通信するとともに、カーソルの動きをディスプレイ1212上で制御する。この入力装置は、一般的には、第1軸(例えば、x)と第2軸(例えば、y)の2軸で2つの自由度を持ち、この装置で平面上の特定の位置に持っていくようにする。
本発明は、ここに記載された技術を組み込むためにコンピューターシステム1200を利用するものに関する。本発明の一実施形態に従えば、主記憶装置1206に記憶されている1以上の命令による1以上のシーケンスがプロセッサ1204で実行されると、これらの技術が、コンピューターシステム1200で実施される。このような命令は、記憶装置1210などの他のマシン読み取り可能な媒体から主記憶装置1206へ読み込まれる。主記憶装置1206に含まれる命令のシーケンスを実行すると、プロセッサ1204がここに記載した処理ステップを実行する。別の実施形態では、本発明を実施するために、ハードウェア組込型回路がソフトウェア命令と組み合わされて、またはその代わりに、用いられるようにしてもよい。つまり、本発明の実施形態はハードウェア回路とソフトウェアのあらゆる組合せに限定されるものではない。
「マシン読み取り可能な媒体」という用語は、ここでは特定の方法でマシンを動作させるために提供されているデータにかかわるあらゆる媒体を指すものとして用いられる。一実施形態では、コンピューターシステム1200の利用されるように構成され、様々なマシン読み取り可能な媒体が含まれ、例えば、プロセッサ1204で実行される命令を提供する。そのような媒体は、多くの形式を取り、記録媒体や転送媒体に限定されるものではない。記録媒体は、不揮発性媒体および揮発性媒体の両方で構成される。不揮発性媒体には、例えば、記憶装置1210などの光ディスクまたは磁気ディスクが含まれる。揮発性媒体には、主記憶装置1206などの動的メモリが含まれる。転送媒体には、無線通信や赤外線データ通信で生成されるもののように、音または光の波の形式を取ることも可能である。全てのこのような媒体は、マシンに命令を読み込む物理的なメカニズムによって検出されるように媒体によって運ばれた命令になり得るように、実体のあるものでなければはらない。
記録媒体の一般的な形式には、例えば、フロッピーディスク(登録商標)、フレキシブルディスク、ハードディスク、磁気テープまたはあらゆる他の磁気データ記憶媒体、CD−ROM、あらゆる他の光学データ記憶媒体、パンチカード、紙テープ、穴のパターンがあるあらゆる物理的な媒体、PROMおよびEPROM、フラッシュEPROM、その他のメモリチップまたはメモリカートリッジ、以下に記載の搬送波、または、コンピューターが読み取ることが可能な他のあらゆる媒体がある。
様々な形式のマシン読み取り可能な媒体が、プロセッサ1204で実行する1以上の命令の1以上のシーケンスを運ぶために用いられる。例えば、命令は最初にリモートコンピューターの磁気ディスク上に置かれる。そのリモートコンピューターが、動的メモリに命令をロードして、モデムを用いた電話回線を通して命令を送信するようにしてもよい。モデムに接続されたコンピューターシステム1200は、電話回線でデータを受け取り、赤外線変換器でデータを赤外線信号に変換することができる。赤外線検出器は、赤外線信号で運ばれたデータを受信し、適切な回路がバス1202にデータを乗せる。バス1202は主記憶装置1206にデータを運び、そこからプロセッサ1204が命令を取り出して実行する。主記憶装置から取り出された命令は、必要であれば、プロセッサ1204で実行される前または後に記憶装置1210に記憶される。
コンピューターシステム1200は、また、バス1202に接続された通信インターフェイス1218を備える。通信インターフェイス1218は、ローカルネットワーク1222に接続されたネットワークリンク1220に接続している双方向のデータ通信を提供する。例えば、通信インターフェイス1218は、サービス総合ディジタル網(ISDN)カードや電話回線のタイプに応じたデータ通信接続を提供するモデムであってもよい。他の例では、通信インターフェイス1218は、ローカルエリアネットワーク(LAN)カードで互換性のあるLANにデータ通信接続するようにしてもよい。また、無線リンクが組み込まれてもよい。あらゆるこのような実装において、通信インターフェイス1218は、情報の様々なタイプを表すデジタルデータストリームを運ぶ電気信号、電磁気信号、光信号の送受信を行う。
ネットワークリンク1220は、通常は、1以上のネットワークを介して他のデータ装置にデータ通信を提供する。例えば、ネットワークリンク1220が、ホストコンピューター1224またはインターネットサービスプロバイダー(ISP)1226が運営しているデータ機器へローカルネットワーク1222を介して接続を提供するようにしてもよい。ISP1226は、今、通常「インターネット」1228といわれる世界的なパケットデータ通信ネットワークを介して、次々と、データ通信サービスを提供する。ローカルネットワーク1222とインターネット1228はどちらもデータストリームを運ぶ電気信号、電磁気信号、または、光信号を用いる。様々なネットワークを介した信号とネットワークリンク1220および通信インターフェイス1218における信号は、コンピューターシステム1200へあるいはコンピューターシステム1200からデータを運ぶものであり、情報を運ぶ搬送波の典型的な形式である。
コンピューターシステム1200は、メッセージを送信し、ネットワークやネットワークリンク1220や通信インターフェイス1218を介してプログラムコードなどのデータを受信する。インターネットの例では、サーバー1230は、インターネット1228、ISP1226、ローカルネットワーク122および通信インターフェイス1218を介してアプリケーションプログラムに要求されたコードを送信する。
コードが受信されると、受信されたコードはプロセッサ1204で実行され、後で実行するために記憶装置1210または他の不揮発性記憶装置に記憶されるようにしてもよい。このようにして、コンピューターシステム1200は搬送波の形式でアプリケーションコードを取得するようにしてもよい。
9.0 開示の他の側面
上記の明細書において、本発明の実施形態が、実装ごとに異なる多数の特定の具体的な形態を参照しながら説明された。つまり、何が発明であり、かつ、出願人によって意図され発明の唯一の独占的な権利の範囲の指標は、本出願の特許請求の範囲と、その請求項の形式、それに続く修正を含めて決められる。ここで請求項に含まれる用語に対して明確に行われた定義は、請求項で用いられる用語の意味を規定することになる。従って、請求項に明示的に記載されていない限定、要素、特性、特徴、利点、または、属性は、請求項の権利範囲に何ら限定を与えるものではない。明細書及び図面は、それにより、限定的な意味を与えるものではなく例示としてみなされるべきものである
ここに記載された主題のあらゆる側面が、以下の番号が振られた項目に示される。
1. ネットワークにディスカバリー要求の送信を開始し、ディスカバリー要求に応じて、第1のスクリーン装置上のディスカバリーサーバーを特定したディスカバリー応答を受け取り、前記第1のスクリーン装置上で特定のアプリケーションの起動するように前記ディスカバリーサーバーに起動要求を送信し、第2のスクリーン装置上で実行されているローカルなアプリケーションに対する前記特定のアプリケーションを特定し、ネットワークを介して、前記ローカルなアプリケーションと前記特定のアプリケーション間でやり取りする方法が、1以上の計算装置で実行される。
2.前記1以上の計算装置が前記第2のスクリーン装置である、第1項の方法。
3.前記双方向のやり取り(インタラクション)は、前記第1のスクリーン装置上で前記特定のアプリケーションを用いて映画を上演することを含み、前記映画は前記ローカルなアプリケーションを用いて選択される、第1〜2項いずれかの方法。
4.前記やり取りを行うステップは、前記第1のスクリーン装置上で前記特定のアプリケーションを用いてビデオを上演することを含み、前記ビデオは、前記ローカルなアプリケーションに対応するネットワークアドレスを前記ローカルなアプリケーションから前記特定のアプリケーションに渡すことにより選択される、第1〜3項いずれかの方法。
5.前記特定のアプリケーションは、前記ビデオの上映後に終了する、第4項の方法。
6.前記特定のアプリケーションは、前記第1のスクリーン装置のウェッブブラウザーで実行されるブラザーベースのアプリケーションであり、前記起動要求により前記ブラウザベースのアプリケーションのネットワークアドレスを特定する、第1〜5項いずれかの方法。
7.前記ブラウザベースのアプリケーションのネットワークアドレスは、前記ネットワークの外部のクラウドアドレスである、第6項の方法。
8.起動要求の前にさらに、アプリケーション情報を前記ディスカバリーサーバーに送信することによって前記特定のアプリケーションが利用可能であるかを確認するとともに、前記ディスカバリーサーバーから得たアプリケーション情報の応答を照合する、第1〜7項いずれかの方法。
9.前記アプリケーション情報の応答の照合が、前記特定のアプリケーションがインストールされていないがインストールすることが可能であることを示し、前記確認が前記特定のアプリケーションのインストールが開始に応じて行われる、第8項の方法。
10.前記ネットワークがローカルネットワークである、第1〜9項いずれかの方法。
11.前記ディスカバリーサーバーは複数のディスカバリーサーバーから選択された、第1〜9項いずれかの方法。
12.前記ディスカバリー応答が前記ディスカバリーサーバーの位置と名前を特定する、第1〜11項いずれかの方法。
13.前記ディスカバリー要求がユニバーサルプラグアンドプレイ(UPnP)を用いて送信される、第1〜12項いずれかの方法。
14.前記起動要求がさらに1以上の特定のパラメーター値を含んでいる、第1〜13項いずれかの方法。
15.第1のスクリーン装置が、テレビ、セットトップボックス、ゲームコンソール、デジタルビデオレコーダー、ディスクプレーヤー、または、主にオーディオビジュアル番組の画像表示の再生または生成を行うことが可能な同様の装置で構成される、第1〜14項いずれかの方法。
16.第2のスクリーン装置が、スマートフォン、タブレットコンピューター、ラップトップコンピューター、ネットブックコンピューター、または、他の汎用のコンピューター装置およびワークステーションのいずかで構成される、第1〜15項いずれかの方法。
17.1以上のプロセッサによって実行されると第1〜16項のいずれかに記載された方法を実行する1以上の命令のシーケンスを記憶するコンピューター読み取り可能な記録媒体。
18.1以上のプロセッサ上に組み込まれたときに第1〜16項いずれかに記載された方法を実行する命令を搬送するためのコンピュータプログラム製品。
19.第2のスクリーンの計算器は、第1〜16項のいずれかに記載された方法を実行するプロセッサを備えている。

Claims (15)

  1. ネットワークにディスカバリー要求の送信を開始するステップと、
    前記ディスカバリー要求に応じて、第1のスクリーン装置上のディスカバリーサーバーを特定したディスカバリー応答を受信するステップと、
    前記第1のスクリーン装置上で特定のアプリケーションを起動するように前記ディスカバリーサーバーに起動要求を送信するステップと、
    第2のスクリーン装置上で実行されているローカルなアプリケーションに対する前記特定のアプリケーションを特定するステップと、
    前記ネットワークを介して、前記ローカルなアプリケーションと前記特定のアプリケーション間でインタラクションを行うステップと、
    を備えた方法であって、
    該方法を、1以上のコンピューター装置を用いて実行する方法。
  2. 前記1以上のコンピューター装置が前記第2のスクリーン装置であることを特徴とする請求項1記載の方法。
  3. 前記インタラクションを行うステップが、前記特定のアプリケーションを用いて前記第1のスクリーン装置上で映画を上演することを含み、
    前記映画は、前記ローカルなアプリケーションを用いて選択されることを特徴とする請求項1記載の方法。
  4. 前記インタラクションを行うステップが、前記第1のスクリーン装置上で前記特定のアプリケーションを用いてビデオを上演することを含み、
    前記ビデオは、前記ローカルなアプリケーションに対応するネットワークアドレスを前記ローカルなアプリケーションから前記特定のアプリケーションに渡すことにより選択されることを特徴とする請求項1記載の方法。
  5. 前記特定のアプリケーションは、前記ビデオの上映後に終了することを特徴とする請求項4記載の方法。
  6. 前記特定のアプリケーションは、前記第1のスクリーン装置のウェッブブラウザーで実行されるブラウザベースのアプリケーションであり、
    前記起動要求が、前記ブラウザベースのアプリケーションのネットワークアドレスを特定することを特徴とする請求項1記載の方法。
  7. 前記ブラウザベースのアプリケーションのネットワークアドレスは、前記ネットワークの外部のクラウドアドレスであることを特徴とする請求項6記載の方法。
  8. 前記起動要求の前に、アプリケーション情報を前記ディスカバリーサーバーに送信し、前記ディスカバリーサーバーからのアプリケーション情報の応答を照合することによって、前記特定のアプリケーションが利用可能であるかを確認するステップをさらに備えることを特徴とする請求項1記載の方法。
  9. 前記アプリケーション情報の応答の照合が、前記特定のアプリケーションがインストールされていないがインストールすることが可能であることを示すものであり、
    前記確認は、前記特定のアプリケーションのインストールが開始に応じて行われることを特徴とする請求項8記載の方法。
  10. 前記ディスカバリーサーバーは複数のディスカバリーサーバーから選択されることを特徴とする請求項1記載の方法。
  11. 前記ディスカバリー要求が、ユニバーサルプラグアンドプレイ(UPnP)を用いて送られるものであり、前記ディスカバリー応答が前記ディスカバリーサーバーの位置および名前を特定するものであることを特徴とする請求項1記載の方法。
  12. 前記起動要求が、さらに1以上の特定のパラメーター値を含むことを特徴とする請求項1記載の方法。
  13. 第1のスクリーン装置が、テレビ、セットトップボックス、ゲームコンソール、デジタルビデオレコーダー、ディスクプレーヤー、または、主にオーディオビジュアル番組の画像表示の再生または生成を行うことが可能な同様の装置で構成され、
    第2のスクリーン装置が、スマートフォン、タブレットコンピューター、ラップトップコンピューター、ネットブックコンピューター、または、他の汎用のコンピューター装置およびワークステーションのいずか一方、で構成されることを特徴とする請求項1記載の方法。
  14. 請求項1〜13のいずれか1項に記載された方法を実行するように構成された1以上のデバイスを備えた装置。
  15. 1以上のプロセッサによって実行される請求項1〜13のいずれか1項に記載された方法の命令を記録したコンピューター読み取り可能な記録媒体。
JP2013136112A 2012-06-28 2013-06-28 アプリケーションを発見する方法 Active JP6396005B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201261665827P 2012-06-28 2012-06-28
US61/665,827 2012-06-28
US201261675756P 2012-07-25 2012-07-25
US61/675,756 2012-07-25
US13/827,720 2013-03-14
US13/827,720 US10931735B2 (en) 2012-06-28 2013-03-14 Application discovery

Publications (2)

Publication Number Publication Date
JP2014010842A true JP2014010842A (ja) 2014-01-20
JP6396005B2 JP6396005B2 (ja) 2018-09-26

Family

ID=48747371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013136112A Active JP6396005B2 (ja) 2012-06-28 2013-06-28 アプリケーションを発見する方法

Country Status (7)

Country Link
US (1) US10931735B2 (ja)
EP (1) EP2680500B1 (ja)
JP (1) JP6396005B2 (ja)
KR (1) KR102109985B1 (ja)
AU (2) AU2013206552B2 (ja)
CA (1) CA2820342C (ja)
DK (1) DK2680500T3 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020521206A (ja) * 2017-05-23 2020-07-16 グーグル エルエルシー Discovery and Launchプロトコルを使用するモバイルアシストテレビサインイン

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9727321B2 (en) 2012-10-11 2017-08-08 Netflix, Inc. System and method for managing playback of streaming digital content
US9565475B2 (en) 2012-10-11 2017-02-07 Netflix, Inc. System and method for managing playback of streaming digital content
US9769503B2 (en) * 2012-11-14 2017-09-19 Saturn Licensing Llc Information processor, information processing method and program
US10956422B2 (en) 2012-12-05 2021-03-23 Oracle International Corporation Integrating event processing with map-reduce
US11210076B2 (en) * 2013-01-28 2021-12-28 Samsung Electronics Co., Ltd. Downloading and launching an app on a second device from a first device
CN105594177B (zh) 2013-06-06 2019-03-08 谷歌有限责任公司 用于呈现媒体内容的系统、方法以及介质
KR102324669B1 (ko) * 2014-05-26 2021-11-10 삼성전자주식회사 무선 통신 시스템에서 응용 프로그램 실행 방법 및 장치
CN105579995B (zh) * 2013-09-23 2022-07-08 三星电子株式会社 在无线通信系统中执行应用的方法和装置
US9838241B2 (en) * 2014-02-06 2017-12-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Discovery of services over infrastructure networks
CN103856807A (zh) * 2014-03-25 2014-06-11 北京奇艺世纪科技有限公司 一种跨屏互动控制方法及装置
US20150319506A1 (en) 2014-04-30 2015-11-05 Netflix, Inc. Displaying data associated with a program based on automatic recognition
US10069832B2 (en) * 2014-11-14 2018-09-04 Google Llc Ephemeral applications
US9614828B1 (en) * 2015-01-05 2017-04-04 Amazon Technologies, Inc. Native authentication experience with failover
US9992307B2 (en) * 2015-02-03 2018-06-05 Google Llc Interoperability of discovery and connection protocols between client devices and first screen devices
EP3104577A1 (en) * 2015-06-09 2016-12-14 Thomson Licensing Method for launching a remote application, and corresponding communication device, system, computer readable program product and computer readable storage medium
US10291956B2 (en) 2015-09-30 2019-05-14 Sonifi Solutions, Inc. Methods and systems for enabling communications between devices
US10542327B2 (en) * 2015-12-21 2020-01-21 Opentv, Inc. Interactive application server on a second screen device
US10327035B2 (en) 2016-03-15 2019-06-18 Sonifi Solutions, Inc. Systems and methods for associating communication devices with output devices
GB2553295B (en) * 2016-08-25 2020-12-16 Samsung Electronics Co Ltd Managing communications between a broadcast receiver and a security module
US11977549B2 (en) 2016-09-15 2024-05-07 Oracle International Corporation Clustering event processing engines
US10789250B2 (en) 2016-09-15 2020-09-29 Oracle International Corporation Non-intrusive monitoring output of stages in micro-batch streaming
US10075838B2 (en) * 2016-11-28 2018-09-11 Microsoft Technology Licensing, Llc Smart discovery of wireless receivers
WO2018119457A1 (en) 2016-12-22 2018-06-28 Sonifi Solutions, Inc. Methods and systems for implementing legacy remote and keystroke redirection
WO2018169429A1 (en) * 2017-03-17 2018-09-20 Oracle International Corporation Framework for the deployment of event-based applications
WO2018169430A1 (en) 2017-03-17 2018-09-20 Oracle International Corporation Integrating logic in micro batch based event processing systems
FR3082983B1 (fr) * 2018-06-20 2020-05-22 Overkiz Procede de configuration d’une unite centrale de commande appartenant a une installation domotique
KR102509071B1 (ko) * 2018-08-29 2023-03-10 삼성전자주식회사 전자 장치 및 이의 외부 장치를 제어하는 방법
KR102502577B1 (ko) 2018-08-30 2023-02-22 삼성전자주식회사 외부 전자 장치 내에서 멀티미디어 콘텐트를 이어서 재생하기 위한 전자 장치 및 방법
US10779054B2 (en) * 2018-12-20 2020-09-15 Arris Enterprises Llc System and method for authentication and login portability for multiscreen discovery and launch of first screen content
WO2020142981A1 (zh) * 2019-01-10 2020-07-16 福建联迪商用设备有限公司 一种安装pos机初始化配置信息的方法及终端
US11496414B2 (en) 2019-03-18 2022-11-08 Tencent America LLC Interoperable cloud based media processing using dynamic network interface
CN111654753B (zh) * 2020-05-22 2022-06-03 青岛海信传媒网络技术有限公司 一种应用程序启动方法及显示设备
US11652894B2 (en) * 2020-09-08 2023-05-16 Arris Enterprises Llc Device capability over dial
CN114428618A (zh) * 2020-10-28 2022-05-03 华为技术有限公司 一种跨设备应用交互方法、电子设备与服务器
CN114697348B (zh) * 2020-12-25 2023-08-22 华为终端有限公司 分布式实现方法、分布式系统、可读介质及电子设备
CN114786058B (zh) * 2022-04-27 2024-02-06 南京欧珀软件科技有限公司 多媒体数据展示方法、装置、终端及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010023796A1 (ja) * 2008-08-29 2010-03-04 パナソニック株式会社 映像表示システム、映像表示装置、プログラム、記録媒体
JP2010160748A (ja) * 2009-01-09 2010-07-22 Nippon Hoso Kyokai <Nhk> ネットワーク制御装置およびコンピュータプログラム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002039A1 (en) 1998-06-12 2002-01-03 Safi Qureshey Network-enabled audio device
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US20040027375A1 (en) * 2000-06-12 2004-02-12 Ricus Ellis System for controlling a display of the user interface of a software application
US6618593B1 (en) 2000-09-08 2003-09-09 Rovingradar, Inc. Location dependent user matching system
US7206853B2 (en) * 2000-10-23 2007-04-17 Sony Corporation content abstraction layer for use in home network applications
US6931429B2 (en) * 2001-04-27 2005-08-16 Left Gate Holdings, Inc. Adaptable wireless proximity networking
US8931010B2 (en) * 2002-11-04 2015-01-06 Rovi Solutions Corporation Methods and apparatus for client aggregation of media in a networked media system
US8028038B2 (en) 2004-05-05 2011-09-27 Dryden Enterprises, Llc Obtaining a playlist based on user profile matching
US8028323B2 (en) 2004-05-05 2011-09-27 Dryden Enterprises, Llc Method and system for employing a first device to direct a networked audio device to obtain a media item
US20060248121A1 (en) * 2005-04-15 2006-11-02 Michael Cacenco System and method for supporting packaging, publishing and republishing of wireless component applications
US8244179B2 (en) * 2005-05-12 2012-08-14 Robin Dua Wireless inter-device data processing configured through inter-device transmitted data
US9294729B2 (en) * 2006-01-19 2016-03-22 At&T Intellectual Property I, L.P. System and method for providing content over a television network
US8195650B2 (en) * 2007-02-28 2012-06-05 Samsung Electronics Co., Ltd. Method and system for providing information using a supplementary device
US8209398B2 (en) * 2006-03-16 2012-06-26 Exceptional Innovation Llc Internet protocol based media streaming solution
US7590703B2 (en) * 2006-03-27 2009-09-15 Exceptional Innovation, Llc Set top box for convergence and automation system
US8271881B2 (en) * 2006-04-20 2012-09-18 Exceptional Innovation, Llc Touch screen for convergence and automation system
JPWO2008087713A1 (ja) * 2007-01-16 2010-05-06 三菱電機株式会社 クライアント端末、アプリケーション提供サーバ及びアプリケーション提供システム
TWI363993B (en) * 2007-10-31 2012-05-11 Ibm Method for auto-deploying an application from a mobile device to a host in a pervasive computing environment and the mobile device implementing the method
JP4737250B2 (ja) 2007-11-22 2011-07-27 ソニー株式会社 情報処理装置及び情報処理方法
US8250179B2 (en) * 2007-11-30 2012-08-21 At&T Intellectual Property I, L.P. Systems, methods, and computer products for providing podcasts via IPTV
US8234351B2 (en) * 2008-07-24 2012-07-31 Go Daddy Operating Company, LLC Systems for generating and registering enhanced domain names
US9154942B2 (en) * 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US8156530B2 (en) * 2008-12-17 2012-04-10 At&T Intellectual Property I, L.P. Method and apparatus for managing access plans
US20110145581A1 (en) * 2009-12-14 2011-06-16 Verizon Patent And Licensing, Inc. Media playback across devices
US8792429B2 (en) * 2010-12-14 2014-07-29 Microsoft Corporation Direct connection with side channel control
US8904289B2 (en) * 2011-04-21 2014-12-02 Touchstream Technologies, Inc. Play control of content on a display device
WO2013062999A2 (en) * 2011-10-24 2013-05-02 Interdigital Patent Holdings, Inc. Methods, systems and apparatuses for application service layer (asl) inter-networking
WO2013085263A1 (ko) * 2011-12-08 2013-06-13 엘지전자 주식회사 네트워크 tv 및 네트워크 tv 동작 방법
JP5389195B2 (ja) * 2012-01-06 2014-01-15 株式会社東芝 情報処理システム、携帯端末及び情報処理方法
KR101952682B1 (ko) * 2012-04-23 2019-02-27 엘지전자 주식회사 이동 단말기 및 그 제어방법
TWI511537B (zh) * 2012-04-27 2015-12-01 Wistron Corp 智慧型電視系統、智慧型電視、行動裝置及其輸入操作方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010023796A1 (ja) * 2008-08-29 2010-03-04 パナソニック株式会社 映像表示システム、映像表示装置、プログラム、記録媒体
JP2010160748A (ja) * 2009-01-09 2010-07-22 Nippon Hoso Kyokai <Nhk> ネットワーク制御装置およびコンピュータプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"エアプレイ対応のアプリは増えている?", MAC FAN 第19巻 第6号, JPN6017008179, 1 June 2011 (2011-06-01), pages 44, ISSN: 0003516236 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020521206A (ja) * 2017-05-23 2020-07-16 グーグル エルエルシー Discovery and Launchプロトコルを使用するモバイルアシストテレビサインイン
JP2021166057A (ja) * 2017-05-23 2021-10-14 グーグル エルエルシーGoogle LLC Discovery and Launchプロトコルを使用するモバイルアシストテレビサインイン
JP7148677B2 (ja) 2017-05-23 2022-10-05 グーグル エルエルシー Discovery and Launchプロトコルを使用するモバイルアシストテレビサインイン

Also Published As

Publication number Publication date
AU2013206552B2 (en) 2018-05-24
EP2680500A1 (en) 2014-01-01
US20140006474A1 (en) 2014-01-02
JP6396005B2 (ja) 2018-09-26
US10931735B2 (en) 2021-02-23
KR102109985B1 (ko) 2020-05-12
KR20140001798A (ko) 2014-01-07
CA2820342A1 (en) 2013-12-28
EP2680500B1 (en) 2019-10-23
AU2013206552A1 (en) 2014-01-16
CA2820342C (en) 2018-06-19
DK2680500T3 (da) 2020-01-02
AU2018205094A1 (en) 2018-07-26

Similar Documents

Publication Publication Date Title
JP6396005B2 (ja) アプリケーションを発見する方法
US20210274263A1 (en) Method and apparatus for executing application in wireless communication system
US9883251B2 (en) Method and apparatus for managing connection between broadcast receiving device and another device connected by network
US9131261B2 (en) Apparatus and method for automatic conversion of content address and associated action thereof for social television sharing
US10172116B2 (en) Messaging abstraction in a mobile device server
US20210160092A1 (en) Communication, Monitoring and Control Architecture and Method
US10554745B2 (en) Method and apparatus for managing connection between broadcasting reception device and another device which are connected through network
US20100115053A1 (en) Method and apparatus for managing state information of remote user interface
US10757195B2 (en) Device interconnection and service discovery via a communication cloud
KR102496890B1 (ko) 정보 처리 장치, 클라이언트 장치, 및 데이터 처리 방법
CN104918105A (zh) 媒体文件的多屏播放方法、设备及系统
CN112584200B (zh) 投屏方法、系统、电子设备及存储介质
KR101329668B1 (ko) 푸쉬 서버를 이용한 콘텐츠 공유 시스템 및 방법
CN105847884B (zh) 一种控制电视用户使用电视的方法和装置
JPWO2018043111A1 (ja) 情報処理装置、情報処理方法、及び、情報処理システム
KR102079339B1 (ko) 클라우드 시스템상의 컨텐츠를 디엘엔에이로 연결된 디바이스로 전달하는 전자 장치 및 방법
US9271053B2 (en) Data receiving method and device for applications providing an IPTV communications service
JP2008204269A (ja) サーバ装置、クライアント装置、通信方法およびプログラム
US20150172370A1 (en) System for displaying content

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170314

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20170614

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170814

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180409

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: 20180731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180829

R150 Certificate of patent or registration of utility model

Ref document number: 6396005

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