Application Discovery Anwendungsentdeckung Découverte D’Application
Total Page:16
File Type:pdf, Size:1020Kb
(19) *EP002680500B1* (11) EP 2 680 500 B1 (12) EUROPEAN PATENT SPECIFICATION (45) Date of publication and mention (51) Int Cl.: of the grant of the patent: H04L 12/28 (2006.01) H04L 29/08 (2006.01) 23.10.2019 Bulletin 2019/43 (21) Application number: 13174379.1 (22) Date of filing: 28.06.2013 (54) Application discovery Anwendungsentdeckung Découverte d’application (84) Designated Contracting States: • "X display manager (program type)", , 16 June AL AT BE BG CH CY CZ DE DK EE ES FI FR GB 2012 (2012-06-16), XP055076688, Retrieved from GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO the Internet: PL PT RO RS SE SI SK SM TR URL:http://en.wikipedia.org/w/index.php?ti tle=X_display_manager_%28program_type%29 (30) Priority: 28.06.2012 US 201261665827 P &o ldid=497826983 [retrieved on 2013-08-27] 25.07.2012 US 201261675756 P • UPNP FORUM: "UPnP Device Architecture 1.1", 14.03.2013 US 201313827720 UPNP FORUM , 15 October 2008 (2008-10-15), pages I-VI,1, XP002562314, Retrieved from the (43) Date of publication of application: Internet: 01.01.2014 Bulletin 2014/01 URL:http://www.upnp.org/specs/arch/UPnP-ar ch-DeviceArchitecture-v1.1.pdf [retrieved on (73) Proprietor: Netflix, Inc. 2010-01-08] Los Gatos, California 95032 (US) • "DIAL - DIscovery And Launch protocol specification - Version 1.6.4", , 19 December 2012 (72) Inventors: (2012-12-19), pages 1-16, XP055076322, • White, Jean-Marie Retrieved from the Internet: Los Gatos, CA 95032 (US) URL:http://www.dial-multiscreen.org/dial-p • Danciu, Daniel rotocol-specification/DIAL-2ndScreenProtoc Los Gatos, CA 95032 (US) ol-1.6.4.pdf [retrieved on 2013-08-23] • Giovanni Messina: "XBMC (74) Representative: D Young & Co LLP Remote/HostViewController.m", , 19 May 2012 120 Holborn (2012-05-19), XP055076730, Retrieved from the London EC1N 2DY (GB) Internet: URL:https://raw.github.com/joethefox/Unoff (56) References cited: icial-Official-XBMC-Remote/9e8ce13181d6f4f US-A1- 2006 258 289 US-A1- 2009 111 453 5dbfd4caec48f7af552266cf1/XBMC%20Remote/ US-A1- 2010 121 900 Ho stViewController.m [retrieved on 2013-08-27] • "xbmc/xbmc/interfaces/json-rpc/ServiceDesc • Team Xbmc: "Official XBMC Remote/iOS", , 11 ription.h", , 29 March 2012 (2012-03-29), June 2012 (2012-06-11), XP055076810, Retrieved XP055076700, Retrieved from the Internet: from the Internet: URL:https://raw.github.com/xbmc/xbmc/76bd5 URL:http://web.archive.org/web/20120611151 02bf007460d1317a3407b61de9bf9d5456c/xbmc/i 708/http://wiki.xbmc.org/index.php?title=O nterfaces/json-rpc/ServiceDescription.h fficial_XBMC_Remote/iOS [retrieved on [retrieved on 2013-08-27] 2013-08-28] Note: Within nine months of the publication of the mention of the grant of the European patent in the European Patent Bulletin, any person may give notice to the European Patent Office of opposition to that patent, in accordance with the Implementing Regulations. Notice of opposition shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention). EP 2 680 500 B1 Printed by Jouve, 75001 PARIS (FR) (Cont. next page) EP 2 680 500 B1 • Team Xbmc: "AirPlay - XBMC", , 4 June 2012 • Team Xbmc: "UPnP", , 3 June 2012 (2012-06-03), (2012-06-04), XP055076848, Retrieved from the XP055076843, Retrieved from the Internet: Internet: URL:http://web.archive.org/web/20120603002 URL:http://web.archive.org/web/20120604103 953/http://wiki.xbmc.org/index.php?title=U PnP 938/http://wiki.xbmc.org/index.php?title=A [retrieved on 2013-08-28] irPlay [retrieved on 2013-08-28] 2 EP 2 680 500 B1 Description TECHNICAL FIELD 5 [0001] The present disclosure generally relates to techniques for discovering the presence of computer program applications in a network. The disclosure relates more specifically to application discovery techniques useful in coordi- nating first-screen audiovisual devices and second-screen computing devices. BACKGROUND 10 [0002] The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section. [0003] Video-based entertainment systems in homes and commercial environments may include a variety of primary 15 viewing systems such as televisions, digital video recorders, disc players, and set-top boxes that are compatible with cable or satellite television signaling systems. Such primary viewing systems often include complete special-purpose computers that are capable of hosting application programs relating to entertainment or other functions, and are usually capable of driving or displaying a program on a large-screen display or display unit. In the same environments, the use of other special-purpose computing devices and general purpose computing devices such as smartphones, tablet com- 20 puters, laptop computers, netbook computers, and other computers and workstations is commonplace. However, while certain protocols are available for discovering devices on a local network, such as SSDP and Bonjour/mDNS, in current technology it has been difficult for applications hosted on the computing devices to identify, obtain data from, and coordinate operations with applications that may run on the primary viewing systems. As another example, a laptop computer on a local network may have no way to identify and then cause launching, on the primary viewing system, a 25 particular entertainment-oriented computer program application that is hosted on the primary viewing system. Conse- quently, in the past users typically have had to interact directly with the primary viewing system to identify, launch, use, and shut down the applications that are hosted on the primary viewing system. [0004] US 2006/258289 A1 (DUA ROBIN [US]) 16 November 2006 (2006-11-16) discloses a wireless media player that employs the use of integrated Radio Frequency Identification (RFID) technology to exchange communication settings, 30 media capability, and other parameters with an external device that also has integrated RFID technology. The automatic exchange of settings and other information via a proximity-based RFID data exchange allows a media player to quickly establish a secure communication link with another device via a commonly supported wireless protocol such as Ultra Wideband (UWB) or Bluetooth. [0005] US 2009/111453 A1 (HSU TONY S T [TW] ET AL) 30 April 2009 (2009-04-30) discloses a technique for auto- 35 deploying an application from a mobile communication device to a host in a pervasive computing environment. The technique can detect and can select an available host around the mobile communication device. In response to the issued auto-deploying request, the selected application can be auto-deployed into the available host for execution. [0006] UPNP FORUM: "UPnP Device Architecture 1.1",UPNP FORUM, 15 October 2008 (2008-10-15), pages I-VI, discloses the standardised device and resource discovery mechanism which can be used to distribute the control, 40 playing, and rendering of media content over a number of interacting devices. BRIEF DESCRIPTION OF THE DRAWINGS [0007] In the drawings: 45 FIG. 1A illustrates a computer system architecture that may be utilized to implement various embodiments. FIG. 1B illustrates a method of discovering applications according to an embodiment. FIG. 2 is a message sequence diagram that illustrates one implementation of the DIAL service discovery component. FIG. 3 is an example of an M-SEARCH request. 50 FIG. 4 is an example of an M-SEARCH response. FIG. 5 is an example of a device description request. FIG. 6 is an example of a device description response. FIG. 7 is a message sequence diagram illustrating application launch. FIG. 8 illustrates an example application launch request. 55 FIG. 9 illustrates an application launch response. FIG. 10 illustrates an Application Information Request. FIG. 11A illustrates a XML schema for an application information response. FIG. 11B illustrates an application information response. 3 EP 2 680 500 B1 FIG. 12 illustrates a computer system with which an embodiment maybe implemented. DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS 5 [0008] In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention. 10 1.0 TECHNICAL INTRODUCTION [0009] In an embodiment, the disclosure describes methods or communication protocols that enable second-screen applications to discover and launch first-screen applications on first-screen devices. One goal of the disclosure is to enable consumer electronics device owners to enjoy seamless integration of smartphone and tablet computer applications 15 as part of an audiovisual-oriented entertainment experience. 1.1 Terminology [0010] In this disclosure, the following terms may have the following meanings: 20 [0011] First screen: a television, disc player, set-top box, game console, digital video recorder, or similar device primarily capable of playing or generating a visual display of an audiovisual program. A first screen device is often a primary viewing system in the user environment. [0012] Second screen: a smartphone, tablet computer, laptop computer, netbook computer, or other personal com- puting device. A second screen device is often a secondary viewing system but often has more powerful or generalized 25 computing and input capabilities than the first screen device. [0013] Discovery server: a computing device that hosts, executes or implements the server side of the protocols described herein. In one embodiment, the discovery server is a first screen device. [0014] Discovery client: a computing device that can discover and request to launch computer program applications that are located or hosted on a discovery server.