使用发现与启动协议的移动辅助电视登入

文档序号:1722246 发布日期:2019-12-17 浏览:29次 >En<

阅读说明:本技术 使用发现与启动协议的移动辅助电视登入 (Mobile assisted television login using discovery and initiation protocol ) 是由 朱利安·马钱德 索菲亚·蓬 丹尼尔·克梅雷尔 艾伦·米尔斯 耶伊·帕特瓦尔丹 史蒂文·赖特 于 2018-03-06 设计创作,主要内容包括:实施方式公开了用于促进到由第一屏幕设备托管的第一应用中的自动用户登录的方法和系统。一种方法包括:通过第二屏幕设备来检测由所述第一屏幕设备通过网络发送的消息;基于所述消息来确定由所述第一屏幕设备托管的所述第一应用正在请求针对所述自动用户登录的用户认证;经由所述第二屏幕设备托管的第二应用来呈现针对指示用户对所述自动用户登录的接受的用户输入的提示;接收指示所述用户对所述自动用户登录的接受的所述用户输入;以及响应于所述用户输入,将来自所述消息的认证代码发送到所述服务器设备以执行针对到所述第一应用中的所述自动用户登录的所述用户认证。(embodiments disclose methods and systems for facilitating automatic user login into a first application hosted by a first screen device. One method comprises the following steps: detecting, by a second screen device, a message sent by the first screen device over a network; determining, based on the message, that the first application hosted by the first screen device is requesting user authentication for the automatic user login; presenting, via a second application hosted by the second screen device, a prompt for user input indicating user acceptance of the automatic user login; receiving the user input indicating acceptance of the automatic user login by the user; and in response to the user input, sending an authentication code from the message to the server device to perform the user authentication for the automatic user login into the first application.)

使用发现与启动协议的移动辅助电视登入

技术领域

本公开涉及辅助登入的领域,并且具体地,本公开涉及辅助登入到第一屏幕设备的领域。

背景技术

第一屏幕设备(诸如连接网络的电视)可托管应用。由第一屏幕设备托管的应用可显示经由网络从服务器设备接收的数据,诸如媒体项。用户可登入到由第一屏幕设备托管的应用中以经由该应用显示个性化数据,诸如用户的播放列表。

发明内容

下文是本公开的简化发明内容以便提供对本公开的一些方面的基本理解。本发明内容不是本公开的广泛概要。它既不旨在识别本公开的关键或决定性元素,也不旨在刻划本公开的特定实施方式的任何范围或权利要求的任何范围。其唯一目的是为了以简化形式呈现本公开的一些构思作为被稍后呈现的更详细描述的序言。

在本公开的一个方面中,一种方法用于促进到由第一屏幕设备托管的第一应用中的自动用户登录,并且所述方法包括:通过第二屏幕设备来检测由所述第一屏幕设备通过网络发送的消息,所述消息包括由服务器设备提供给所述第一屏幕设备的认证代码;由所述第二屏幕设备并基于所述消息来确定由所述第一屏幕设备托管的所述第一应用正在请求针对所述自动用户登录的用户认证;经由由所述第二屏幕设备托管的第二应用来呈现用户输入的提示,用于指示用户对所述自动用户登录的接受;在第二屏幕设备处接收指示所述用户对所述自动用户登录的接受的用户输入;以及响应于所述用户输入,将来自所述消息的所述认证代码从所述第二屏幕设备发送到所述服务器设备以执行针对到由所述第一屏幕设备托管的所述第一应用中的所述自动用户登录的所述用户认证。

在一个实施方式中,所述方法还包括:由所述第二屏幕设备通过经由所述网络向所述第一屏幕设备发送第一简单服务发现协议(SSDP)消息并且经由所述网络从所述第一屏幕设备接收第二SSDP消息来识别所述第一屏幕设备;以及响应于对所述第一屏幕设备的识别,由所述第二屏幕设备向所述第一屏幕设备发送第一消息以确定所述第一屏幕设备是否正在请求针对所述自动用户登录的所述用户认证,其中,所述消息由所述第一屏幕设备响应于所述第一消息的发送而发送。

在一个实施方式中,所述用户输入还指示对账户的选择,其中,到所述第一应用中的所述自动用户登录是关于所述账户的。

在一个实施方式中,将所述认证代码发送到所述服务器设备还包括发送对用于所述自动用户登录的所述账户的选择。

在一个实施方式中,所述消息是对由所述第二屏幕设备发送的发现与启动(DIAL)统一资源定位符(URL)请求的DIAL URL响应。

在一个实施方式中,所述确定所述第一应用正在请求针对所述自动用户登录的所述用户认证包括对所述消息进行解码以识别所述认证代码。

在一个实施方式中,所述服务器设备将在指示所述用户对所述自动用户登录的接受的所述用户输入的接收之前,执行针对到由所述第二屏幕设备托管的所述第二应用中的用户登录的所述用户认证。

在本公开的一个方面中,一种存储指令的非暂时性机器可读存储介质,所述指令当被执行时使第一屏幕设备的处理设备执行用于促进到由所述第一屏幕设备托管的第一应用中的自动用户登录的操作,所述操作包括:向服务器设备发送对针对到所述第一应用中的所述自动用户登录的用户认证的请求;从所述服务器设备接收认证代码;生成包括所述认证代码的消息;通过网络经由所述第一屏幕设备发送所述消息,意在用于第二屏幕设备提示所述第二屏幕设备的用户以指示对所述自动用户登录的接受;以及从所述服务器设备接收用于执行针对到所述第一应用中的所述自动用户登录的所述用户认证的凭证,所接收到的凭证指示来自所述消息的所述认证代码已由所述第二屏幕设备提供给所述服务器设备。

在一个实施方式中,所述操作还包括:经由所述第一应用在所述请求的发送之前接收请求针对到所述第一应用中的所述自动用户登录的所述用户认证的第二用户输入。

在一个实施方式中,所述操作还包括:通过所述网络从所述第二屏幕设备接收第一简单服务发现协议(SSDP)消息以识别所述第一屏幕设备;响应于所述第一SSDP消息而通过所述网络向所述第二屏幕设备发送第二SSDP消息,其中,所述第一屏幕设备将响应于所述第二SSDP消息的发送而被所述第二屏幕设备识别;以及响应于被所述第二屏幕设备识别,从所述第二屏幕设备接收第一消息,其中,所述消息的发送是响应于所述第一消息的接收。

在一个实施方式中,所述消息将由所述第二屏幕设备检测;提示将由所述第二屏幕设备来呈现用于指示对所述自动用户登录的接受和对账户的选择的用户输入;并且到所述第一应用中的所述自动用户登录是关于所述账户的。

在一个实施方式中,所述认证代码和对用于所述自动用户登录的所述账户的选择将由所述第二屏幕设备响应于所述第二屏幕设备接收到所述用户输入而发送到所述服务器设备。

在一个实施方式中,所述服务器设备将在所述认证代码和对用于所述自动用户登录的所述账户的选择由所述第二屏幕设备发送到所述服务器设备之前,执行针对到由所述第二屏幕设备托管的第二应用中的用户登录的所述用户认证。

在一个实施方式中,所述消息是对由所述第二屏幕设备发送的发现与启动(DIAL)统一资源定位符(URL)请求的DIAL URL响应。

在本公开的一个方面中,一种系统,所述系统包括:存储器,所述存储器用于存储用于促进到由第一屏幕设备托管的第一应用中的自动用户登录的指令;以及通信地耦合到所述存储器的处理设备,所述处理设备用于执行所述指令以:从所述第一屏幕设备接收对针对到由所述第一屏幕设备托管的所述第一应用中的所述自动用户登录的用户认证的请求;生成针对到由所述第一屏幕设备托管的所述第一应用中的所述自动用户登录的认证代码;向所述第一屏幕设备发送所述认证代码,意在用于所述第一屏幕设备生成包括所述认证代码的消息并将所述消息发送到第二屏幕设备;从所述第二屏幕设备接收来自所述消息的所述认证代码;并且响应于从所述第二屏幕设备接收到所述认证代码,向所述第一屏幕设备发送用于执行针对到所述第一应用中的所述自动用户登录的所述用户认证的凭证。

在一个实施方式中,所述消息将由所述第二屏幕设备检测;提示将通过由所述第二屏幕设备托管的第二应用在继检测到所述消息之后来呈现,用于指示对所述自动用户登录的接受的用户输入;并且所述认证代码由所述第二屏幕设备响应于所述用户输入而发送到所述处理设备。

在一个实施方式中,所述用户输入还指示对账户的选择;并且到所述第一应用中的所述自动用户登录是关于所述账户的。

在一个实施方式中,对所述账户的选择由所述第二屏幕设备响应于所述第二屏幕设备接收到所述用户输入而发送到所述处理设备。

在一个实施方式中,处理设备将在将所述凭证发送到所述第一屏幕设备以执行针对到所述第一应用中的所述自动用户登录的所述用户认证之前,执行针对到由所述第二屏幕设备托管的所述第二应用中的用户登录的所述用户认证。

在一个实施方式中,所述消息是对由所述第二屏幕设备发送的发现与启动(DIAL)统一资源定位符(URL)请求的DIAL URL响应。

在本公开的另一方面中,一种促进到由第一屏幕设备托管的第一应用中的自动用户登录的方法包括:由所述第一屏幕设备并向服务器设备发送对针对到所述第一应用中的所述自动用户登录的用户认证的请求;由所述第一屏幕设备从所述服务器设备接收认证代码;由所述第一屏幕设备生成包括所述认证代码的消息;通过网络经由所述第一屏幕设备发送所述消息,意在用于第二屏幕设备提示所述第二屏幕设备的用户以指示对所述自动用户登录的接受;以及由所述第一屏幕设备从所述服务器设备接收用于执行针对到所述第一应用中的所述自动用户登录的所述用户认证的凭证,所接收到的凭证指示来自所述消息的所述认证代码已由所述第二屏幕设备提供给所述服务器设备。

在本公开的另一方面中,一种促进到由第一屏幕设备托管的第一应用中的自动用户登录的方法包括:在服务器处从所述第一屏幕设备接收对针对到由所述第一屏幕设备托管的所述第一应用中的所述自动用户登录的用户认证的请求;由所述服务器生成针对到由所述第一屏幕设备托管的所述第一应用中的所述自动用户登录的认证代码;由所述服务器并向所述第一屏幕设备发送所述认证代码,意在用于所述第一屏幕设备生成包括所述认证代码的消息并将所述消息发送到第二屏幕设备;由所述服务器从所述第二屏幕设备接收来自所述消息的所述认证代码;以及响应于从所述第二屏幕设备接收到所述认证代码,由所述服务器向所述第一屏幕设备发送用于执行针对到所述第一应用中的所述自动用户登录的所述用户认证的凭证。

在本公开的另一方面中,一种存储指令的计算机可读介质,所述指令当由一个或多个处理器执行时,使所述一个或多个处理器执行根据本文描述的任何方面或实施方式的方法。在本公开的另一方面中,一种系统包括通信地耦合到存储器的处理设备,所述存储器存储指令,所述指令当由所述处理设备执行时,使所述处理设备执行根据本文描述的任何方面或实施方式的方法。

附图说明

在附图的各图中,通过示例而不通过限制来图示本公开。

图1是图示根据本公开的实施方式的示例性系统架构的框图。

图2A是图示根据本公开的实施方式的第一屏幕设备的组件和模块的框图。

图2B是图示根据本公开的实施方式的第二屏幕设备的组件和模块的框图。

图3是根据本公开的实施方式的用于促进到由第一屏幕设备托管的第一应用中的自动用户登录的序列图。

图4A至图4C是图示根据本公开的实施方式的促进到由第一屏幕设备托管的第一应用中的自动用户登录的示例方法的流程图。

图5是根据本公开的实施方式的用于促进到由第一屏幕设备托管的第一应用中的自动用户登录的示例流程图。

图6是根据本公开的实施方式的经由第一屏幕设备托管的第一应用显示的用于促进到第一应用中的自动用户登录的示例图形界面。

图7是根据本公开的实施方式的经由第二屏幕设备托管的第二应用显示的用于促进到由第一屏幕设备托管的第一应用中的自动用户登录的示例图形界面。

图8是图示根据本公开的实施方式的计算机系统的一个实施方式的框图。

具体实施方式

本公开的各方面和实施方式致力于到第一屏幕设备中的自动登入。第一屏幕设备可以是连接网络的电视设备(“智能TV”)、空中(OTT)流式传输设备、机顶盒、蓝光播放器、运营商盒等。操作系统在第一屏幕设备上运行并且可以为由第一屏幕设备托管的应用提供平台。可经由应用分发平台在第一屏幕设备上预加载应用并且/或者在第一屏幕设备上安装应用。在第一屏幕设备上运行的应用可出于诸如导航、存储并检索文档、分布式计算等这样的许多目的而经由网络提供对平台的接入。用户可登入到由第一屏幕设备托管的应用中并且在由第一屏幕设备托管的应用中执行账户认证以接入平台,如此能够接入由这些平台提供的设施。然而,对用户来说第一屏幕设备上的登入和账户认证通常是费力过程。

用户通常使用基于方向键(d-pad)的红外遥控器来与第一屏幕设备交互并与由第一屏幕设备托管的应用交互。方向键可以是在四个点(例如,上、下、左和右)中的每一个上有一个按钮的扁平四向定向控件。可以选择方向键或遥控器的其它部分上的另一按钮(例如,回车按钮)。应用可以经由第一屏幕设备显示字母数字键盘。认证的一种常规形式包括用户通过选择方向键上的上、下、左和右按钮逐个地导航到单独的字符并然后选择回车按钮以选择该字符来录入用户名和密码。用遥控器导航并选择每个字符可能花费长时间,容易出错,并且妨碍用户使用由第一屏幕设备托管的应用。

认证的另一常规形式是登入到由第一屏幕设备托管的应用中的跨设备辅助认证。用户使用遥控器来请求在第一屏幕设备上显示代码。用户然后在移动设备上启动web浏览器并经由该移动设备逐字符地将激活页面的具体web地址(例如,web端点的domain.com/激活类型)键入到web浏览器中。激活页面提示用户经由移动设备录入用户名和密码以登入到账户中。激活页面还提示用户录入第一屏幕设备上显示的代码。在将web地址、用户名、密码和代码录入到移动设备中之后,服务器设备可以将用户登录到由第一屏幕设备托管的应用中。将web地址、用户名、密码和代码录入到移动设备中可能是费时的且容易出错,并且在认证过程中出错要求用户重新开始认证过程,使得在失败认证尝试中使用的任何网络资源被浪费并且可能甚至妨碍用户使用由第一屏幕设备托管的应用。此外,如果用户在认证中出错多次,则他们可能被“锁住”而无法访问其账户,直到其密码例如被系统管理员重置为止。

认证的常规形式从技术安全性角度来看以及同样从用户理解和易用性角度来看是繁琐的并呈现局限和缺点。在使用认证的常规形式时,用户遭受设置疲劳。如果过程不是快速简便的,则更少的用户会花时间来通过流程。认证的常规形式遭受有限的输入选项。使用遥控器来录入文本(尤其是密码)既困难又笨拙,并且这可使用户选取短密码,从而降低其安全性。使用移动设备在代码超时之前录入具体web地址(其可以是长的并难以记住和键入)、用户名、密码和代码是困难的。认证的常规形式也遭受技术约束。由于策略和安全性,登入到账户中被一些认证服务器限于由具体认证服务器托管的web页面。

本公开的各方面通过促进到由第一屏幕设备托管的第一应用中的自动用户登录来解决上述及其它缺陷。第一屏幕设备可以从服务器设备接收认证代码,生成包括该认证代码的消息,并且发送该消息。第二屏幕设备(例如,智能电话、平板计算机、膝上型电脑等)可以接收消息,经由第二屏幕设备托管的第二应用呈现针对用户输入的提示,并且接收指示用户对自动用户登录的接受的用户输入。响应于用户输入,第二屏幕设备可以将来自消息的认证代码发送到服务器设备以执行针对到第一应用中的自动用户登录的用户认证。在一个实施方式中,针对用户输入的提示是与账户相对应的接受元素,并且用户输入是选择(例如,点击)该接受元素。从用户角度来看,自动用户登录易于理解,易于查找且易于使用。这也是安全的,因为认证代码不要求由用户容易地记住和录入,所以可仅基于所期望的安全性级别来选取,并且减少或者完全消除用繁琐的方向键遥控打字的需要。

因此,通过促进到由第一屏幕设备托管的第一应用中的自动用户登录,显著地增加用户的安全性。同时登录过程对用户来说变得明显更容易,使得更多的用户可以登入到由第一屏幕设备托管的应用中,这进而增加第一屏幕设备的用户和由第一屏幕设备托管的应用的受欢迎程度。

图1图示根据本公开的一个实施方式的示例系统架构100。系统架构100包括应用分发服务器110、第一屏幕设备120、认证服务器130、本地网络140、网络150、数据存储160和第二屏幕设备170。

应用分发服务器110可以是一个或多个计算设备(诸如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型机计算机、膝上型计算机、平板计算机、台式计算机等)、数据存储(例如,硬盘、存储器、数据库等)、网络、软件组件和/或硬件组件。应用分发服务器110可以用于给用户提供对应用112的访问(例如,应用分发服务器110可以托管应用112)。应用分发服务器可以将应用112提供给用户(例如,用户可以响应于请求或者购买应用112而选择应用112并从应用分发服务器110下载应用112)。应用分发服务器110可以是应用分发平台(例如,应用分发服务)的一部分,所述应用分发平台可以允许用户对应用112进行消费、开发、上传、下载、评定、共享、搜索、赞同(“赞”)、踩和/或评论。应用分发平台还可以包括可以用于给用户提供对应用112的访问的网站(例如,网页)或应用后端软件。

应用分发服务器110可以托管内容,诸如应用112。应用112可以是由用户选取的数字内容、由用户提供的数字内容、由用户开发的数字内容、由用户上传的数字内容、由内容提供商(例如,应用开发人员)开发的数字内容、由内容提供商(例如,应用开发人员)上传的数字内容、由应用分发服务器110提供的数字内容等。应用112的示例包括而不限于移动应用、智能电视应用、第一屏幕设备应用、第二屏幕设备应用、桌面应用、软件应用等。应用112可以显示社交媒体更新、数字视频、数字电影、数字照片、数字音乐、网站内容、社交媒体更新、电子书(eBook)、电子杂志、数字报纸、数字音频书、电子期刊、web博客、真正简单聚合(RSS)馈送、电子漫画书、软件应用等。

可以经由第一屏幕设备120和第二屏幕设备170上的web浏览器和/或经由第二屏幕设备170上的应用商店来消费应用112。如本文所使用的,“应用”、“移动应用”、“智能电视应用”、“第一屏幕设备应用”、“第二屏幕设备应用”、“桌面应用”、“软件应用”、“数字内容”、“内容”和“内容项”可包括电子文件,所述电子文件可使用被配置成将应用112呈现给实体的软件、固件或硬件来执行或者加载。在一个实施方式中,应用分发平台可以使用数据存储160来存储应用112。应用112可以被呈现给第一屏幕设备120和第二屏幕设备170的用户并且/或者由第一屏幕设备120和第二屏幕设备170的用户从应用分发服务器110或应用分发平台下载。根据本公开的各方面,应用112可以允许用户与提示交互,观看内容,进行购买,参与对话等。应用112可以包括嵌入式媒体播放器(以及其它组件)来播放由内容平台提供或存储在本地的内容。内容平台(未示出)可以是例如媒体共享平台或社交联网平台,并且可以用于给用户提供对媒体项的访问和/或将媒体项提供给用户。例如,内容平台可以允许用户对媒体项进行消费、上传、搜索、赞同(“赞”)、踩和/或评论。应用分发服务器110可以是内容平台的一部分,是独立系统或者是不同平台的一部分。

应用分发服务器110可以托管各自针对对应设备、对应操作系统、操作系统的对应版本、对应浏览器、用户界面的对应大小等格式化的一组应用112。例如,应用分发服务器110可以托管包括第一应用和第二应用的一组应用112。第一应用可以对应于第一屏幕设备120(例如,智能电视)并且第二应用可以对应于第二屏幕设备170(例如,移动设备)。第一应用和第二应用可以与内容平台(例如,媒体共享平台或社交联网平台)相关联并且可以呈现由内容平台提供的内容。响应于第一屏幕设备120发送对与内容平台相关联的应用112的请求,应用分发服务器110可以识别与内容平台相关联并对应于第一屏幕设备120(例如,对应于第一屏幕设备120的设备类型、操作系统类型、浏览器类型等)的第一应用,并且将第一应用602发送到第一屏幕设备120。响应于第二屏幕设备170发送对与内容平台相关联的应用112的请求,应用分发服务器110可以识别与内容平台相关联并对应于第二屏幕设备170(例如,对应于第二屏幕设备107的设备类型、操作系统类型等)的第二应用702,并且将第二应用702发送到第二屏幕设备170。在一些实施方式中,如果第一屏幕设备120的用户与第二屏幕设备170的用户相同,则第一应用和第二应用可以被链接到内容平台上的同一账户(例如,一旦第一应用和第二应用分别被安装在第一屏幕设备120和第二屏幕设备170上)。

在一些实施方式中,系统架构100还可以包括认证服务器130,认证服务器130经由网络150耦合到第一屏幕设备120和第二屏幕设备170以促进到由第一屏幕设备120托管的第一应用中的自动用户登录。在一个实施方式中,认证服务器130可以是内容平台的一部分。在另一实施方式中,认证服务器130可以是包括一个或多个计算设备的独立平台,一个或多个计算设备诸如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板计算机、台式计算机等。

认证服务器130可以包括用户认证管理器132。用户认证管理器132可以从第一屏幕设备120接收对用于到由第一屏幕设备120托管的第一应用中的自动用户登录602的用户认证的请求。用户认证管理器132可以生成认证代码114并将认证代码114发送到第一屏幕设备120。用户认证管理器132可以将认证代码114存储在数据存储160中。随后,用户认证管理器可以从第二屏幕设备170接收认证代码114并执行针对到由第一屏幕设备120托管的第一应用中的自动用户登录602的用户认证。用户认证管理器132可以将从第二屏幕设备170接收到的认证代码114与存储在数据存储器160中的认证代码114相比较以确定认证代码匹配。用户认证管理器132可以从第二屏幕设备170接收账户的指示并且可以执行针对到第一应用602中的账户中的自动用户登录的用户认证。

数据存储160可以包括认证代码高速缓存123以存储由认证服务器130生成并发送到第一屏幕设备120的认证代码114。

第一屏幕设备120可以包括诸如连接网络的电视(“智能TV”)、连接网络的媒体播放器(例如,蓝光播放器)、机顶盒、空中(OTT)流式传输设备、运营商盒等这样的计算设备。第二屏幕设备170可以包括诸如个人计算机(PC)、膝上型电脑、移动电话、智能电话、平板计算机、上网本计算机等这样的计算设备。第一屏幕设备120和第二屏幕设备170和第二屏幕设备170可以能够通过网络150从应用分发服务器110接收(例如,下载)应用112。第一屏幕设备120和第二屏幕设备170可以经由网络150联系服务器(例如,应用分发服务器110、认证服务器130等)和平台(例如,应用分发平台、媒体共享平台、社交联网平台等)并且彼此独立地执行应用112。例如,第一屏幕设备120可启动应用112并且内容平台的媒体服务器可在没有与第二屏幕设备170的交互或来自第二屏幕设备170的辅助的情况下将媒体内容流式传输到在第一屏幕设备120上执行的应用112。第一屏幕设备120可以不具有账户/配置文件管理软件(例如,可以不包括单点登录(SSO)能力)。第一屏幕设备120和第二屏幕设备170可以能够通过网络150和/或本地网络140接收和发送消息(例如,SSDP消息、发现与启动(DIAL)消息(例如,DIAL URL查询、DIAL URL响应等))。

响应于第一屏幕设备120和第二屏幕设备170位于同一网络(例如,本地网络)上,第二屏幕设备170可以(例如使用协议、使用DIAL协议等)来发现第一屏幕设备120,在第一屏幕设备120上搜索(例如,发现)应用112,在第一屏幕设备120上启动应用112,并且在第一屏幕设备120上停止应用112。例如,第二屏幕设备170可以在第一屏幕设备120上启动应用112并向第一屏幕设备120发送URL,使得该第一屏幕设备可经由URL直接地从内容平台的媒体服务器访问视频文件。独立于第二屏幕设备170,第一屏幕设备120还可以搜索、启动和停止应用112(例如,用户可以使用遥控器来在第一屏幕设备120上搜索、启动和停止应用112)。应用112可以在第一屏幕设备120上运行并且直接地从服务器设备接收数据(例如,而不是被从服务器设备流式传输到第二屏幕设备170并然后到第一屏幕设备120)。独立于第二屏幕设备170在第一屏幕设备120上运行应用112对于当本地网络140具有低可用带宽、第二屏幕设备170具有低能力(例如,移动设备上的低或失效电池)时的状况来说是有益的。应用112可以在不同应用112正在第二屏幕设备170上执行的相同时间正在第一屏幕设备120上执行。例如,第一屏幕设备120可以执行与媒体共享平台相关联的应用,同时第二屏幕设备执行与社交联网平台相关联的应用。

本地网络140可以是在第一屏幕设备120与第二屏幕设备170之间提供一个或多个通信信道的计算网络。在一个示例中,本地网络140可以是不依靠预先存在的网络基础设施(例如,接入点、交换机、路由器)的对等网络,并且第一屏幕设备120和第二屏幕设备170可以替换联网基础设施以路由用户设备之间的通信。本地网络140可以是自我配置并且使得第一屏幕设备120和第二屏幕设备170能够对本地网络140做出贡献并从本地网络140动态地连接和断开的无线网络(例如,ad hoc无线网络)。在另一示例中,本地网络140可以是包括使得用户设备能够与其它用户设备进行通信的联网基础设施的计算网络。在后者示例中,本地网络140可以或者可能不能够接入公用网络(例如,互联网)。例如,车辆(例如,公共汽车、火车)或位置(例如,教室、图书馆、咖啡厅等)可以提供接入点或可以充当接入点以使得用户设备能够在不提供互联网接入的情况下彼此通信的用户设备。替换地,本地网络140可以提供对诸如网络150(例如,互联网)这样的较大网络的接入。在一个实施方式中,本地网络140可以基于任何无线或有线通信技术并且可以将第一用户设备直接地或间接地(例如,涉及中间用户设备)连接到第二用户设备。无线通信技术可以包括红外、超声或其它技术。有线通信可以包括通用串行总线(USB)、以太网、RS 232或其它有线连接。本地网络140可以是两个设备之间的单独的连接或者可以包括多个连接。

网络150可以是给第一屏幕设备120和第二屏幕设备170提供对应用分发服务器110、认证服务器130和其它公开可用的计算设备的接入的公用网络。网络150可以包括一个或多个广域网(WAN)、局域网(LAN)、有线网络(例如,以太网络)、无线网络(例如,802.11网络或Wi-Fi网络)、蜂窝网络(例如,长期演进(LTE)网络)、路由器、集线器、交换机、服务器计算机和/或其组合。

第一屏幕设备120和第二屏幕设备170中的每一个均可以包括允许用户执行应用112的操作系统。应用112可以包括媒体查看器、web浏览器等以呈现图像、视频、音频、web页面、文档等。在一个示例中,应用112可以包括可访问、检索、呈现和/或导航由web服务器服务的内容(例如,诸如超文本标记语言(HTML)页面这样的web页面、数字媒体项、文本对话、通知等)的web浏览器。应用112可以将内容渲染、显示和/或呈现给用户。应用112可以包括嵌入式媒体播放器(例如,播放器或HTML5播放器)(例如,被嵌入在可以提供关于由在线商家销售的产品的信息的web页面中)。在另一示例中,应用112可以是允许用户查看数字媒体项(例如,数字视频、数字图像、电子书等)以参与文本对话和/或接收提示的独立应用(例如,移动应用或app)。

在图1中所示的示例中,第一屏幕设备120可以包括第一应用登录组件122、设备标识符组件124、消息组件126、提示组件128和数据存储129。

第一应用登录组件122可以管理用于登录到由第一屏幕设备120托管的第一应用的请求,接收认证代码114,并且接收用于登录到第一应用的凭证。设备标识符组件124可以接收并发送SSDP消息以便第二屏幕设备170识别第一屏幕设备。消息组件126可以接收、生成和发送消息(例如,DIAL URL请求、DIAL URL响应、另一类型的协议的消息等)以将认证代码114转移到第二屏幕设备170。提示组件128可以显示提示并接收用户输入。

数据存储129可以是存储器(例如,随机存取存储器)、驱动器(例如,硬盘驱动器、闪存驱动器)、数据库系统,或能够存储数据的另一类型的组件或设备。数据存储129可以包括可以跨多个计算设备(例如,多个服务器计算机)的多个存储组件(例如,多个驱动器或多个数据库)。

在图1中所示的示例中,第二屏幕设备170可以包括第二应用登录组件172、设备标识符组件174、消息组件176、提示组件178和数据存储179。

第二应用登录组件172可以登录到由第二屏幕设备170托管的第二应用。设备标识符组件174可以发送并接收SSDP消息以将第一屏幕设备120识别为位于与第二屏幕设备170相同的网络(例如,本地网络140)上。消息组件176可以对消息(例如,DIAL URL请求、DIALURL响应、另一类型的协议的消息等)进行发送、接收和解码以确定认证代码114。提示组件178可以提供提示,接收指示用户对针对由第一屏幕设备120托管的第一应用的自动登录的用户认证的接受的用户输入,并且将认证代码发送到认证服务器130。

数据存储179可以是存储器(例如,随机存取存储器)、驱动器(例如,硬盘驱动器、闪存驱动器)、数据库系统,或能够存储数据的另一类型的组件或设备。数据存储179可以包括可以跨多个计算设备(例如,多个服务器计算机)的多个存储组件(例如,多个驱动器或多个数据库)。

通常,适当时,在一个实施方式中被描述为在第一屏幕设备120和第二屏幕设备170上执行的功能在其它实施方式中还可由应用分发服务器110和/或认证服务器130执行。例如,认证服务器130可以将第一屏幕设备120和第二屏幕设备170识别为位于同一网络(例如,网络150、本地网络140)上。在另一示例中,应用分发服务器110可以将第一屏幕设备120和第二屏幕设备170识别为已从同一组应用112(例如,同一应用112的智能TV版本和移动版本)下载了应用112。

此外,可通过一起操作的不同或多个组件来执行特定组件的功能。应用分发平台、应用分发服务器110和认证服务器130还可通过适当的应用编程接口(API)作为提供给其它系统或设备的服务被访问,并且因此不限于在网站和应用中使用。

在本公开的实施方式中,可以将“用户”表示为单个个体。然而,本公开的其它实施方式包含作为由一组用户和/或自动源控制的实体的“用户”。例如,在社交网络中联合为社区的一组单独的用户可以被认为为“用户”。在另一示例中,自动消费者可以是应用分发平台的自动摄取管线。

尽管在应用分发服务器110、认证服务器130和应用分发平台方面讨论了本公开的实施方式,但是实施方式也可以被通常应用于在用户之间提供内容和连接的任何类型的社交网络。

在这里讨论的系统收集关于用户的个人信息或者可以利用个人信息的情形下,可以给用户提供控制应用分发平台是否收集用户信息(例如,关于用户的社交网络、社交动作或活动、职业、用户的偏好或用户的当前位置的信息)或者控制是否和/或如何从内容服务器接收与用户更相关的内容的机会。此外,某些数据在它被存储或者使用之前可以被以一种或多种方式处理,使得个人可识别的信息被移除。例如,可以处理用户的身份,使得对于该用户来说不能确定任何个人可识别的信息,或者可以在获得位置信息的情况下使用户的地理位置一般化(诸如到城市、邮政编码或州级别),使得不能确定用户的特定位置。因此,用户可以控制信息如何关于用户被收集并由应用分发平台使用以及什么用户信息被发送到应用分发服务器110和认证服务器130。

图2A是图示第一屏幕设备120的框图。在图2A中所示的示例中,第一屏幕设备120包括耦合到数据存储129的第一应用登录组件122、设备标识符组件124、消息组件126和提示组件128。

第一应用登录组件122包括第一应用登录请求管理器210、认证代码接收模块212和凭证接收模块214。

第一应用登录请求管理器210可以接收请求针对到第一应用中的自动用户登录的用户认证的用户输入。例如,第一应用登录请求管理器210可以接收启动第一应用、导航到登录页面、选择登录元素等的用户输入。第一应用登录请求管理器210可以向认证服务器130发送对针对到第一应用中的自动用户登录的用户认证的请求。在一些实施方式中,该请求可以是对认证代码114的请求。在一些实施方式中,第一应用登录请求管理器210可以将请求周期性地发送到认证服务器130。第一应用登录请求管理器210可以将请求存储在数据存储129中以稍后检索并重新发送到认证服务器130。

认证代码接收模块212可以从认证服务器130接收认证代码114。可以响应于对于用户认证的请求而接收认证代码114。凭证接收模块214可以响应于第二屏幕设备170将认证代码114发送到认证服务器130而从认证服务器130接收用于到第一应用中的自动用户登录的凭证。凭证可以用于使用具体账户到第一应用中的自动用户登录。

设备标识符组件124包括SSDP消息接收组件220和SSDP消息发送组件222。SSDP消息接收组件220可以通过网络(例如,本地网络140)从第二屏幕设备170接收第一SSDP消息。在一些实施方式中,SSDP消息接收组件220检测由第二屏幕设备170通过网络广播的第一SSDP广播消息。SSDP消息发送组件可以响应于第一SSDP消息而通过网络向第二屏幕设备170发送第二SSDP消息。在一些实施方式中,设备标识符组件124和174使用除SSDP以外的不同协议。在一些实施方式中,设备标识符组件124将第二屏幕设备170识别为位于与第一屏幕设备120相同的网络上。

消息组件126可以包括消息接收模块230、消息生成模块232和消息发送模块234。消息接收模块230可以从第二屏幕设备170接收第一消息(例如,DIAL应用状态超文本转移协议(HTTP)请求、DIAL URL请求、DIAL URL查询、对第一屏幕设备120的DIAL URL的查询等)。第一消息可以是询问第一应用是否正在请求针对到第一应用中的自动用户登录的用户认证。

在一些实施方式中,消息生成模块232响应于接收到第一消息而生成消息(例如,DIAL应用状态HTTP请求响应、DIAL URL响应)。在一些实施方式中,消息生成模块232响应于已向认证服务器130发送了对用户认证的请求并且已接收到第一消息而生成消息。在一些实施方式中,消息生成模块232响应于已从认证服务器130接收到认证代码并且已接收到第一消息而生成消息。在一些实施方式中,消息生成模块232生成DIAL URL并将认证代码114附加到DIAL URL以生成消息。

消息发送模块234将消息发送到第二屏幕设备170。消息发送模块234可以经由网络广播消息,并且通信地耦合到网络的多个设备可以检测到消息。

提示组件128可以包括提示提供模块240和输入接收模块242。提示组件128可以显示诸如图6中的提示604这样的提示。提示可以包括指令(例如,“打开第二应用”、“前往你在第二应用上的账户”、“确保第二屏幕设备位于与第一屏幕设备相同的网络上”等)。提示可以包括状态(例如,“正在搜索第二屏幕设备”等)。提示可以包括提示输入元素(例如,“尝试另一方式”、“取消”等)。输入接收模块242可以经由提示输入元素接收输入。例如,如果用户选择了“尝试另一方式”的提示输入元素,则输入接收模块242可以使提示提供模块240用登录到第一应用中的另一方法(例如,使用遥控器的方向键等来将用户名和密码键入到第一应用中)来显示提示。在另一示例中,如果用户选择了“取消”的提示输入元素,则提示组件128可以停止显示提示(例如,第一应用可以显示先前活动、主屏幕等)。

图2B是图示第二屏幕设备170的框图。在图2B中所示的示例中,第二屏幕设备170包括耦合到数据存储179的第二应用登录组件172、设备标识符组件174、消息组件176和提示组件178。

第二应用登录组件172包括第二应用登录管理器250。第二应用登录管理器250可以经由第二屏幕设备托管的第二应用接收用户名和密码。第二应用登录管理器250可以将用户名和密码发送到认证服务器130并且接收凭证,用于执行针对用户登录到第二应用中的的用户认证。在登录之后,第二应用可以能够访问个性化信息(例如,播放列表、观看历史、购买历史)并且第二应用可以执行动作(例如,创建播放列表、进行购买等)。第二应用可以与一个或多个账户相关联。如果第二应用与多个账户相关联,则在登入(例如,登录)时,这些多个账户中的一个可以被用作默认账户(例如,用于进行购买等)或者可以请求用户选择哪一个账户应该被用于能够访问个性化信息、用于执行动作等。在一些实施方式中,用户通过第二屏幕设备170(例如,经由第二屏幕设备170托管的第二应用)比通过第一屏幕设备120(例如,经由第一屏幕设备120托管的第一应用)登录到账户更方便。

设备标识符组件174包括SSDP消息发送组件260和SSDP消息接收组件262。SSDP消息发送组件260可以经由网络发送第一SSDP消息。在一些实施方式中,SSDP消息发送组件260广播要由通信地耦合到网络的设备(诸如第一屏幕设备120)检测的第一SSDP消息。SSDP消息接收组件262响应于第一屏幕设备120接收到第一SSDP消息而从第一屏幕设备120接收第二SSDP消息。响应于接收到第二SSDP消息,设备标识符组件174识别第一屏幕设备120。在一些实施方式中,除SSDP以外的协议用于识别第一屏幕设备120。

消息组件176可以包括消息发送模块270、消息接收模块272、消息解码模块274。响应于设备标识符组件174识别第一屏幕设备120,消息发送模块270可以向第一屏幕设备120发送第一消息(例如,查询第一屏幕设备120的DIAL URL、发送DIAL应用状态HTTP请求)。继消息发送模块270发送第一消息之后,消息接收模块272可以接收由第一屏幕设备120响应于第一消息而发送的消息(例如,DIAL URL响应、DIAL应用状态HTTP请求响应等)。消息解码模块274可以对消息进行解码,以确定第一应用正在请求针对自动用户输入的用户认证。消息解码模块可以对消息进行解码以确定从认证服务器130发送到第一屏幕设备120的认证代码114。

提示组件178可以包括提示提供模块280、输入接收模块282和认证代码发送模块284。提示提供模块280可以呈现针对与自动用户登录相关的用户输入的提示。提示提供模块280可以提供图7中所示的提示704。例如,提示提供模块280可以提供用户输入的提示,指示用户对到第一应用中的自动用户登录的接受。输入接收模块282可以接收用户输入。例如,用户输入可以是用户对经由账户到第一应用中的自动用户登录的接受。在另一示例中,用户输入是切换账户。在另一示例中,用户输入是取消请求或者拒绝对账户的访问。认证代码发送模块284可以响应于接收到指示用户对自动用户登录的接受的用户输入而将认证代码114发送到认证服务器130。认证代码发送模块284可以发送认证代码114以及与指示用户对自动用户登录的接受的用户输入相对应的账户的指示。

图3描绘根据本公开的一个或多个方面的用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录的序列图300。如所描绘的,序列图300包括第一屏幕设备120、认证服务器130和第二屏幕设备170之间的交互。第一屏幕设备120和第二屏幕设备170位于同一网络(例如,本地网络140等)上。序列图300中描绘的交互可以各种次序和/或同时发生,并且同时在本文中不呈现和描述其它交互。此外,可能不需要所有图示的交互来实现根据所公开的主题的序列。

序列图300可以从第一屏幕设备120接收(302)请求针对到由第一屏幕设备120托管的第一应用中的自动用户登录的用户认证的用户输入开始。在一些实施方式中,第一屏幕设备120接收(302)用户输入是响应于用户在第一屏幕设备120上启动第一应用。在一些实施方式中,第一屏幕设备120接收(302)用户输入是响应于用户经由第一屏幕设备120上的第一应用导航到登录屏幕。在一些实施方式中,第一屏幕设备120接收(302)用户输入是响应于用户与经由第一屏幕设备120上的第一应用所显示的登录元素交互(例如,点击登录按钮)。第一屏幕设备120可以响应于接收到用户输入而向认证服务器130发送(304)对用于自动用户登录的认证代码(例如,针对到第一应用中的自动用户登录的用户认证)的请求。在一些实施方式中,第一屏幕设备120可以将对用户认证的请求周期性地发送(304)到认证服务器130。认证服务器130可以响应于接收到请求而生成(306)认证代码。在一些实施方式中,认证服务器130响应于接收到请求而随机地生成(306)认证代码。认证服务器130可以将认证代码发送(308)到第一屏幕设备120。

第二屏幕设备170可以通过网络(例如,本地网络140)向第一屏幕设备120发送(310)第一SSDP消息。在一些实施方式中,第二屏幕设备170通过网络广播第一SSDP消息(例如,第一SSDP广播消息)。在一些实施方式中,第二屏幕设备周期性地发送(310)第一SSDP消息以确定是否存在通信地耦合到与第二屏幕设备170相同的网络的第一屏幕设备120。在一些实施方式中,第二屏幕设备周期性地发送(310)第一SSDP消息以确定是否存在执行对应于在第二屏幕设备170上执行的第二应用的第一应用并且通信地耦合到与第二屏幕设备170相同的网络的第一屏幕设备120(例如,第一应用和第二应用具有通过经由第二应用的用户输入来促进到第一应用中的自动用户登录的功能性)。在一些实施方式中,第二屏幕设备170响应于在第二屏幕设备170上启动第二应用而发送(310)第一SSDP消息。在一些实施方式中,第二屏幕设备170响应于接收到经由第二应用的用户输入而发送(310)第一SSDP消息。第一屏幕设备120可以响应于接收到第一SSDP消息(例如,检测到第一SSDP广播消息)而向第二屏幕设备170发送(312)第二SSDP消息。第一屏幕设备120可以发送(312)第二SSDP消息以提供确认(例如,第一屏幕设备120通信地耦合到与第二屏幕设备170相同的网络、第一屏幕设备120正在执行与第二应用相对应的第一应用等)。第二屏幕设备170可以响应于接收到第二SSDP消息而识别(314)第一屏幕设备120(例如,识别为通信地耦合到同一网络、识别为执行对应于第二应用的第一应用等)。

第二屏幕设备170可以通过网络向第一屏幕设备120发送(316)第一消息(例如,DIAL应用状态HTTP请求、DIAL URL请求)。在一些实施方式中,第二屏幕设备170发送(316)第一消息以确定任何识别的第一屏幕设备120是否正在请求用户认证。在一些实施方式中,第二屏幕设备170响应于识别(314)第一屏幕设备而发送(316)第一消息。在一些实施方式中,第二屏幕设备170将第一消息周期性地发送(316)到第二屏幕设备170已识别的任何第一屏幕设备。第一屏幕设备120可以响应于接收到第一消息而生成(318)包括认证代码的消息(例如,DIAL应用状态HTTP请求响应、DIAL URL消息)(例如,生成DIAL URL并将认证代码附加到DIAL URL)。第一屏幕设备120可以响应于生成消息而通过网络将消息发送(320)到第二屏幕设备170。在一些实施方式中,第一屏幕设备120广播消息,并且任何第二屏幕设备可以接收(例如,检测)该消息。在一些实施方式中,第一屏幕设备120将消息发送(320)到发送了(316)第一消息的第二屏幕设备170。第一屏幕设备120可以将消息发送(320)到第二屏幕设备170以提供第一屏幕设备120正在请求用户认证的确认。第二屏幕设备170可以响应于接收到消息而确定(322)第一应用正在请求针对自动用户登录的用户认证。在一些实施方式中,第二屏幕设备170通过对消息进行解码并识别认证代码来确定(322)第一应用正在请求用户认证。第二屏幕设备170可以响应于确定第一应用正在请求用户认证而呈现(324)针对指示用户对自动用户登录的接受的用户输入的提示。

在一些实施方式中,由第二屏幕设备170托管的第二应用被登录到一个或多个账户中(例如,第二屏幕设备先前向认证服务器130发送了与一个或多个账户相对应的登录凭证以经由一个或多个账户登入到第二应用中),并且第二屏幕设备170呈现包括用于一个或多个账户中的每一个的对应接受元素的提示(324)。用户可以选择(例如,点击)与一个账户相对应的接受元素中的一个,以指示用户对经由该账户到第一应用中的自动用户登录的接受。在一些实施方式中,第二屏幕设备170呈现(324)用于用户输入的提示,用于用户经由第二应用(例如,用户尚未登录到第二应用中)录入登录凭证(例如,用户名和密码)。

第二屏幕设备170可以响应于呈现提示而接收(326)指示用户对自动用户登录的接受的用户输入。在一些实施方式中,用户输入是选择与一个账户相对应的接受元素(例如,选取一个账户以授权第一应用使用该账户的用户输入)。在另一元素中,用户输入是录入用户名和/或密码。在一些实施方式中,用户输入是生物计量标识符(例如,母指指纹、指纹、眼睛扫描等)。

第二屏幕设备170可以响应于接收到用户输入而将来自消息的认证代码发送(328)到认证服务器130。认证服务器130可以响应于接收到认证代码而生成凭证。在一些实施方式中,凭证可以是用于登录到由第一屏幕设备托管的第一应用中的登录信息。在一些实施方式中,凭证可以是与在用户输入中指示的账户相对应的用于登录到由第一屏幕设备托管的第一应用中的登录信息。

第一屏幕设备120可以发送(332)对用于到认证服务器130中(例如,登录到由第一屏幕设备120托管的第一应用中)的自动用户登录的用户认证的第二请求。在一个实施方式中,第一屏幕设备在接收(302)用户输入之后并在接收凭证之前将对用户认证的请求周期性地发送到认证服务器130。在一些实施方式中,第二请求与由第一屏幕设备120发送(304)的第一请求相同。认证服务器130可以将凭证发送(334)到第一屏幕设备120以执行针对到第一应用中的自动用户登录的用户认证。

图4A至图4C描绘用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录的方法400、430和460的说明性示例的流程图。方法400是从第二屏幕设备的角度来看的示例方法。方法430是从第一屏幕设备的角度来看的示例方法。方法460是从服务器设备的角度来看的示例方法。方法400、430和460可以由处理设备执行,所述处理设备可以包括硬件(例如,电路、专用逻辑)、软件(如在通用计算机系统或专用机器上运行的软件)或两者的组合。方法400、430和460以及它们单独的函数、例行程序、子例行程序或操作中的每一个可以由执行该方法的计算机设备的一个或多个处理器执行。在某些实施方式中,方法400、430和460可以各自通过单个处理线程来执行。替换地,方法400、430和460可以通过两个或更多个处理线程来执行,每个线程执行一个或多个单独的函数、例行程序、子例行程序或方法的操作。

为了说明的简单,本公开的方法被描绘和描述为一系列行为。然而,根据本公开的行为可以各种次序和/或同时发生,并且同时在本文中未呈现和描述其它行为。此外,可能不需要所有图示的行为来实现根据所公开的主题的方法。此外,本领域的技术人员应理解和领会的是,能经由状态图或事件将这些方法替换地表示为一系列相互关联的状态。附加地,应该领会的是,本说明书中公开的方法能够被存储在制品上以促进将这样的方法输送并转移到计算设备。如本文所使用的术语“制品”旨在包含可从任何计算机可读设备或存储介质访问的计算机程序。例如,非暂时性机器可读存储介质可以存储指令,所述指令当被执行时,使处理设备(例如,第一屏幕设备120、认证服务器130、第二屏幕设备170等的)执行包括本文公开的方法的操作。在一个实施方式中,方法400可以由图1的第二屏幕设备170执行,方法430可以由图1的第一屏幕设备120执行,并且方法460可以由图1的认证服务器130执行。

参考图4A,方法400可以由第二屏幕设备170的一个或多个处理设备执行以用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录。

方法400可以在块402处开始,在块402处处理设备可以通过经由网络向第一屏幕设备120发送第一SSDP消息(例如,第一SSDP广播消息)并且经由网络从第一屏幕设备120接收第二SSDP消息来识别第一屏幕设备120。在一些实施方式中,经由本地网络140发送的第一SSDP消息和第一SSDP消息是询问是否存在通信地耦合到本地网络140的第一屏幕设备的请求。在一些实施方式中,第二SSDP消息是确认第一屏幕设备120是通信地耦合到本地网络140的第一屏幕设备的响应。

在块404处,处理设备可以向第一屏幕设备120发送第一消息(例如,DIAL应用状态HTTP请求、DIAL URL请求)以确定第一屏幕设备120是否正在请求针对自动用户登录的用户认证。在一些实施方式中,处理设备响应于识别第一屏幕设备120而发送第一消息。在一些实施方式中,处理设备在阈值时间量内周期性地发送第一消息(例如,直到超时为止、直到从第一屏幕设备120接收到消息为止)。(在替代实施例中可以省略块402和404。)

在块406处,处理设备可以检测(例如,接收)由第一屏幕设备120通过网络发送的消息。该消息可以包括由服务器设备提供给第一屏幕设备的认证代码。在一些实施方式中,处理设备周期性地发送消息直到处理设备接收到消息为止。

在块408处,处理设备可以基于消息确定由第一屏幕设备120托管的第一应用正在请求针对自动用户登录的用户认证。在一些实施方式中,处理设备响应于确定消息包括认证代码而确定第一应用正在请求用户认证。在一些实施方式中,处理设备可以对消息进行解码以识别认证代码。

在块410处,处理设备可以经由第二屏幕设备托管的第二应用来呈现针对与自动用户登录相关的用户输入的提示。在一些实施方式中,提示是用于用户选择以批准登录到第一应用中的接受元素。每个接受元素可以对应于一个账户(例如,可以在呈现提示之前将第二应用登录到该账户中)。在一些实施方式中,提示可以是图7中显示的提示704。

在块412处,处理设备可以接收指示用户对自动用户登录的接受的用户输入。在一些实施方式中,用户输入包括选择(例如,点击)接受元素(例如,图7的提示输入元素708e)。在一些实施方式中,用户输入包括选择(例如,点击)账户的视觉表示(例如,账户头像、账户选项卡、照片、图像、用户名等)。在一些实施方式中,用户输入包括用户名和密码。

在块414处,处理设备可以将来自消息的认证代码发送到服务器设备(例如,认证服务器130)以执行对到由第一屏幕设备120托管的第一应用中的自动用户登录的用户认证。在一些实施方式中,处理设备发送在用户输入中指示的账户的指示以用于到第一应用中的该账户的自动用户登录。

参考图4B,方法430可以由第一屏幕设备120的一个或多个处理设备执行以用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录。

方法430可以在块432处开始,在块432处,处理设备可以经由第一应用接收请求针对到第一应用中的自动用户登录的用户认证的用户输入。在一些实施方式中,用户输入的接收是响应于在第一屏幕设备120上启动第一应用。在一些实施方式中,用户输入的接收是响应于导航到由第一屏幕设备120托管的第一应用。在一些实施方式中,用户输入的接收是响应于用户对第一应用上的登录元素的选择。在一些实施方式中,用户输入的接收是响应于第一应用被导航到登录页面。在一些实施方式中,可以经由第一应用显示提示。例如,可以经由第一应用显示图6中图示的提示604。

在块434处,处理设备可以向服务器设备(例如,认证服务器130)发送对针对到第一应用中的自动用户登录的用户认证的请求。请求的发送可以是响应于请求用户认证的用户输入的接收。

在块436处,处理设备可以从服务器设备接收认证代码。处理设备可以将认证代码存储在第一屏幕设备120的数据存储中。

在块438处,处理设备可以通过网络从第二屏幕设备接收第一SSDP消息(例如,第一SSDP广播消息)以识别第一屏幕设备,并且在块440处,处理设备可以响应于第一SSDP消息而通过网络向第二屏幕设备发送第二SSDP消息。第一SSDP消息可以是询问处理设备是否是通信地耦合到网络的第一屏幕设备120的一部分的请求,并且第二SSDP消息可以是确认处理设备是通信地耦合到网络的第一屏幕设备120的一部分的响应。在方法430中块438和440可以在块430之前(例如,在块432之前等)的任何点处发生。

在块442处,处理设备可以从第二屏幕设备接收第一消息(例如,DIAL查询、DIAL消息、DIAL请求、DIAL应用状态HTTP请求、对第一屏幕设备120的DIAL URL的查询等)。第一消息可以是询问处理设备是否托管正在请求用户认证的第一应用的请求。(在替代实施例中可以省略块438、440和442。)

在块444处,处理设备可以生成包括认证代码的消息(例如,DIAL URL响应、DIAL应用状态HTTP请求响应等)。生成消息可以包括生成DIAL URL、从数据存储中检索认证代码并且将认证代码附加到DIAL URL。在方法430中块444可以在从服务器设备接收到认证代码(块436)之后并在发送消息(块446)之前的任何点处发生。

在块446处,处理设备可以通过网络发送消息。消息可以由第二屏幕设备170检测。第二屏幕设备170可以呈现用于用户输入的提示,指示用户对自动用户登录的接受,并且可以响应于接收到用户输入而将认证代码发送到服务器设备。

在块448处,处理设备可以向服务器设备可选地发送对针对到第一应用中的自动用户登录的用户认证的第二请求。在一些实施方式中,第二请求与块434中的第一请求相同。在一些实施方式中,处理设备周期性地发送对用户认证的请求直到该请求被处理设备取消(例如,取消请求的用户输入、请求的超时等)或者被第二屏幕设备170取消(例如,取消请求的用户输入等)为止。

在块450处,处理设备可以响应于服务器设备从第二屏幕设备170接收到认证代码而从服务器设备接收用于执行针对到第一应用中的自动用户登录的用户认证的凭证。处理设备可以使用凭证来使用与凭证相对应的账户来登录到第一应用。响应于登入到第一应用中,处理设备可以显示对应于账户的用户信息(例如,播放列表、观看历史、购买等)。响应于登入到第一应用中,处理设备可以经由对应于凭证的账户执行由用户请求的动作(例如,进行购买等)。

参考图4C,方法460可以由服务器设备(例如,认证服务器130)的一个或多个处理设备执行以用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录。

方法460可以在块462处开始,在块462处处理设备可以从第一屏幕设备120接收对针对到由第一屏幕设备120托管的第一应用中的自动用户登录的用户认证的请求。

在块464处,处理设备可以生成针对到由第一屏幕设备120托管的第一应用中的自动用户登录的认证代码。处理设备可以随机地生成认证代码。在一个实施方式中,认证代码是随机字母数字认证代码。处理设备可以将认证代码存储在数据存储(例如,数据存储160的认证代码高速缓存123)中。

在块466处,处理设备可以将认证代码发送到第一屏幕设备120。第一屏幕设备120可以生成并发送包括认证代码的消息(例如,DIAL URL响应、DIAL应用状态HTTP请求响应等)。第二屏幕设备170可以对消息进行接收和解码以识别认证代码。

在块468处,处理设备可以从第二屏幕设备170接收认证代码。处理设备还可以响应于第二屏幕设备170接收到用户输入而从第二屏幕设备170接收用于到第一应用中的自动用户登录的账户的指示。响应于经由第二屏幕设备170呈现用于指示用户对自动用户登录的接受的用户输入的提示,第二屏幕设备170可以接收用户输入。账户的指示可以是响应于第二屏幕设备170经由第二应用被登录到账户中。

在块470处,处理设备可以从第一屏幕设备可选地接收对用于到第一应用中的自动用户登录的用户认证的第二请求。

在块472处,处理设备可以基于从第二屏幕设备170接收到的认证代码来生成凭证。凭证可以基于从第二屏幕设备170接收到的账户的指示用于账户。

在块474处,处理设备可以向第一屏幕设备发送用于执行用于到第一应用中的自动用户登录的用户认证的凭证。

图5是用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录的示例流程图500。

在块502处,由第一屏幕设备120托管的第一应用显示登录指令(例如,带指令的电视登入提示)。在一个实施方式中,第一屏幕设备120还显示待定元素(例如,旋转定时器、表示第一屏幕设备120正在等待输入的对象)和状态指示(例如,“正在寻找你的电话或平板”)。第一应用可以响应于接收到请求登录到第一应用的用户输入而显示登录指令。第一应用可以响应于在第一屏幕设备120上启动第一应用而显示登录指令。方法继续到块504。

在块504处,在第二屏幕设备170上启动第二应用。第二屏幕设备170可以接收用于打开第二应用的用户输入。方法继续到块506。

在块506处,第二屏幕设备170确定第一屏幕设备120和第二屏幕设备170是否位于同一网络(例如,本地网络140)上。如果第一屏幕设备120和第二屏幕设备170位于同一网络上,则方法继续到块508。如果第一屏幕设备120和第二屏幕设备170不位于同一网络上,则方法继续至块510,然后到块516。

在块508处,第二屏幕设备170确定第二屏幕设备170是否可检测到第一屏幕设备120。在一些实施方式中,块508还包括第一屏幕设备120确定该第一屏幕设备是否可检测到第二屏幕设备170。设备可以通过发送和接收SSDP消息来检测彼此。如果第二屏幕设备170确实检测到第一屏幕设备120,则方法继续到块512或块520。如果第二屏幕设备170确实未检测到第一屏幕设备120,则方法继续到块510,然后到块516。

在块510处,由第二屏幕设备170托管的第二应用不更新第二应用的显示。例如,第二应用不显示第一屏幕设备120已被检测到或者正在等待登录的指示。

在块512处,第一应用正在等待通过第二屏幕设备170进行的动作。例如,第一应用可以正在等待经由第二应用的用户输入以接受经由第一应用的登录。在一个实施方式中,第一应用可以不更新第一应用的显示。方法继续到514。

在514处,如果未经由第二应用采取动作,则方法继续到块516。在一个实施方式中,如果未接收到指示用户对自动用户登录的接受的用户输入,则方法继续到516。

在块516处,第一应用正在等待经由第二屏幕设备的动作。在一个实施方式中,经由第一应用显示的提示在阈值时间量之后超时并且方法继续到518。

在518处,可以授予另一登录机会(例如,重试)并且方法继续到块502,其中第一应用显示登录指令。在块510中第一应用可以显示更新的登录指令。经更新的登录指令可以包括具有登录到第一应用的一种或多种方法的第二提示。一种或多种登录方法可以包括URL方法,该URL方法可以包括将URL键入到第二应用中、将用户名和密码键入到第二应用中以及将经由第一应用显示的代码键入到第二应用中。一种或多种登录方法可以包括经由遥控器(例如,方向键)将用户名和密码直接地录入到第一应用中。一种或多种登录方法可以包括方法400、430和460中描述的自动用户登录方法。

在块520处,第二应用显示登录确认提示并且第二屏幕设备170接收经由第二应用的用户输入。在一个实施方式中,用户输入可以是对“继续”(例如,图7中的提示输入元素708a)的选择。方法继续到块522、524或526中的一个或多个。

在块522处,第二屏幕设备170接收经由第二应用取消登录的用户输入(例如,图7的提示输入元素708b)。在一个实施方式中,第二应用显示用户可以接受的取消元素(例如,单击取消按钮)。方法继续到块502。

在块524处,第一应用显示第一屏幕设备120已找到第二屏幕设备170和网络的确认。方法继续到块526。

在块526处,第二屏幕设备170接收确认登录用账户的用户输入(例如,图7的提示输入元素708c)。方法继续到块528、530或532。

在块528处,确认登录用账户的用户输入可以是切换登录用账户的用户输入(例如,图7的提示输入元素708d)。方法继续到块530或532。

在块530处,第二应用显示用于确认是否允许第一应用能够访问账户的提示(例如,图7的提示输入元素708e)。方法可以响应于用户输入指示“取消”或“拒绝”(例如,图7的提示输入元素708f)而继续到块532,或者响应于用户输入指示“是”或“允许”(例如,图7的提示输入元素708e)而继续到块538。

在块532处,第二应用接收用于取消请求或者拒绝对账户的访问的用户输入(例如,图7的提示输入元素708f)。方法继续到534。

在534处,第一应用超时重置。在一些实施方式中,第一应用显示登录指令(参见块502)持续阈值时间量或者直到超时重置(例如,在第二屏幕设备170上选择取消)为止。方法继续到块536。

在块536处,第一应用显示指示登录被第二屏幕设备170取消(例如,响应于用户与第二应用的交互)的提示。方法继续到块502。

在块538处,第一应用被成功地登录。在一个实施方式中,通过第二屏幕设备170从第一屏幕设备120接收到认证代码、第二屏幕设备170将该认证代码发送到认证服务器130并且认证服务器130执行针对到由第一屏幕设备120托管的第一应用中的自动用户登录的用户认证,第一应用被成功地登录。

在块540处,第一应用返回到先前活动(例如,第一应用在块502中显示登录指令之前正在显示的东西)。第一应用还可以显示登录成功的指示(例如,登录成功欢迎)。

在块542处,第二应用返回到先前活动(例如,第一应用在显示登录确认提示之前正在显示的东西)。第二应用还可以显示登录成功的指示(例如,登录成功欢迎)。

图6是根据本公开的实施方式的经由第一屏幕设备120托管的第一应用602显示示例图形界面600用于促进到第一应用602中的自动用户登录。

第一应用602可以显示提示604。在一个实施方式中,提示604被显示在第一应用602上显示的最近活动(例如,主页、正在播放的媒体项、要购买的物品等)前面。第一应用602的被显示在提示604后面的部分可能被掩盖(例如,遮蔽、消退等)。

在一些实施方式中,响应于接收到请求针对到第一应用中的自动用户登录的用户认证的用户输入而显示提示604。例如,用户输入可以是启动第一应用602。在另一示例中,用户输入可以是选择经由第一应用602显示的登录元素。在另一示例中,用户输入可以是导航到经由第一应用602显示的登录屏幕。在一些实施方式中,响应于第一屏幕设备120从第二屏幕设备170接收到消息而显示提示604。例如,消息可以是从第二屏幕设备170接收到的第一SSDP消息。在另一示例中,消息可以是从第二屏幕设备170接收到的DIAL消息。在另一示例中,消息可以是从第二屏幕设备170接收到的另一类型的协议的消息。

提示604可以包括提示文本606和一个或多个提示输入元素608。提示文本606可以指示用于促进到第一应用602中的自动用户登录的指令。例如,提示文本606可以包括用于在第二屏幕设备170上启动第二应用的指示。在另一示例中,提示文本606可以包括用于经由第二屏幕设备上的第二应用登录到账户的指示。在另一示例中,提示文本606可以包括用于将第二屏幕设备170连接到与第一屏幕设备120相同的网络(例如,本地网络140)的指令。在另一示例中,提示文本606可以包括促进自动用户登录的进展的指示(例如,“正在搜索第二屏幕设备”)。一个或多个提示输入元素608可以包括用于尝试另一登录方式(例如,经由遥控器的方向键键入用户名和密码、在第二屏幕设备170中键入URL、代码、用户名和密码等)的提示输入元素608a以及用于取消登录请求的提示输入元素608b。

提示604可以响应于提示被显示持续阈值时间量(例如,超时)而更新登录指令。提示604可以响应于经由网络识别第二屏幕设备170而更新登录指令。提示604可以响应于由第二屏幕设备170托管的第二应用接收到用户输入(例如,取消登录请求、选择账户、用户对登录到第一应用中的接受等)而更新登录指令。

图7显示根据本公开的实施方式的经由第二屏幕设备170托管的第二应用702显示示例用户界面700a、700b、700c、700d、700e和700f,用于促进到由第一屏幕设备120托管的第一应用中的自动用户登录602。图7还显示不同的用户界面700之间的序列710、720、730和740。

用户界面700a显示第二应用702和提示输入元素708a。当用户界面700a正在显示主屏幕时并且当用户正在浏览经由用户界面700a显示的内容项时,可以显示提示输入元素708a。提示输入元素708a可以包括第二应用被登录到其中的账户的视觉表示。例如提示输入元素708a可以包括与账户相对应的图像(例如,简档图片、头像等)。在另一示例中,提示输入元素708a可以包括用于账户的标识符(例如,用户名、与账户相对应的用户的简档名称、与账户相对应的电子邮件地址、账户名称等)。提示输入元素708a可以是用户可选择来发起登录到第一应用602的图标(例如,“TV辅助”图标)。在用户输入选择提示输入元素708a时,序列可以继续到用户界面700b(序列710)或者序列可以继续到用户界面700e(序列730)。

如果第二屏幕设备170已确定了第一应用602正在请求用户认证则可能发生序列710。例如,第二屏幕设备170已通过发送第一SSDP消息并接收第二SSDP消息识别了第一屏幕设备120,并且第二屏幕设备170已通过发送第一消息(例如,DIAL消息、对DIAL URL的查询、DIAL应用状态HTTP请求)并接收消息(例如,DIAL URL响应、DIAL应用状态HTTP请求响应等)确定了第一屏幕设备120正在请求用户认证。如果第二屏幕设备尚未确定第一应用602正在请求用户认证则可能发生序列730。例如,第二屏幕设备170尚未识别第一屏幕设备120。在另一示例中,第二屏幕设备170尚未向第一屏幕设备120发送消息。在另一示例中,第二屏幕设备尚未在消息中接收到认证代码(例如,DIAL URL响应、DIAL应用状态HTTP请求响应等)。

用户界面700b显示第二应用702和提示704b。在一些实施方式中,用户界面700b或提示704b可以是账户选择器页面(例如,账户选择器模态、移动感知模态)。提示704b可以包括提示文本706b(例如,“设法登入到由第一用户设备托管的第一应用?”、识别用户名或账户的信息)和一个或多个提示输入元素708。选择提示输入元素708b的用户输入可以取消登录到第一应用。用户界面700b可以进一步包括用于选择托管第一应用602以供用户登录的第一屏幕设备120的提示(例如,该提示可以示出一个或多个第一屏幕设备、连接到同一网络的其它设备(投射设备等)等)。在用户输入选择提示输入元素708c时,序列710可以继续到用户界面700c。选择提示输入708d的用户输入可以发起切换用于自动用户登录的账户。

用户界面700c显示第二应用702和提示704c。提示704c可以包括提示文本706c(例如,“第一应用想要:管理你的账户、查看并管理你的租借和购买历史等”)以及一个或多个提示输入元素708。选择提示输入元素708e的用户输入可以指示用户对自动用户登录的接受,并且序列710可以继续到第一应用被成功地登录(例如,第二屏幕设备170可以将认证代码发送到认证服务器130以执行用于到第一应用中的自动用户登录的用户认证)。选择提示输入元素708f的用户输入可以指示用户拒绝自动用户登录并且序列(720)可以继续到用户界面700f。

用户界面700d显示第二应用702和提示704d。如果用户在阈值时间量内尚未选择提示输入元素708a,则可以显示用户界面700d。提示704d可以包括用于选择提示输入元素708a以开始登录到第一应用602的指令。可以显示提示704d持续第二阈值时间量或者直到用户消除提示704d或者选择提示输入元素708a为止。如果登录序列(例如,序列710)已由网络上的另一第二屏幕设备发起(例如,提示输入元素708a已被选择),则可以不显示提示704d。在用户输入选择提示输入元素708a时,序列740继续到用户界面700b并且可以如上所述继续进行。

用户界面700e显示第二应用702。用户界面可以显示与经由第二应用702登录的账户相对应的用户信息(例如,用户名、电子邮件地址、简档图片、头像等)。用户界面700e可以显示账户信息。可以在第二屏幕设备170确定第一应用602正在请求用于自动用户登录的用户认证之前响应于用户对提示输入元素708a的选择(例如,选择账户)而显示用户界面700e。在第二屏幕设备170确定第一应用602正在请求用户认证时,序列730可以继续到用户界面700b(例如,账户选择器模态自动地出现)并且可以如上所述继续进行。

用户界面700f显示第二应用702。用户界面可以显示与经由第二应用702登录的账户相对应的用户信息。用户界面700f可以显示账户信息。可以响应于第二屏幕设备170确定第一应用602正在请求用于自动用户登录的用户认证,并且第二应用702接收到对用于到第一应用602中的自动用户登录的用户认证的取消(例如,通过经由用户界面700b显示的提示输入元素708b)或拒绝(例如,通过经由用户界面700c显示的提示输入元素708f)而显示用户界面。用户界面700f可以显示包括提示文本706e(例如,“你是否在设法登录到第一应用?等)和提示输入元素708h的提示704e(例如,欢迎提示、小吃店提示、允许在被显示的同时与用户界面700f的其它部分交互的小弹出窗口、在阈值时间量(例如,超时)之后出现的提示)。在用户输入选择提示输入元素708h时序列可以继续到用户界面700b或700c(例如,紧接在被定向到用户界面700f之前显示的用户界面700)。

图8是图示根据本公开的实施方式的计算机系统的一个实施方式的框图。在某些实施方式中,计算机系统800可以(例如,经由诸如局域网(LAN)、内联网、外联网或因特网这样的网络)连接到其它计算机系统。计算机系统800可以在客户端-服务器环境中以服务器或客户端计算机身份操作,或者在对等或分布式网络环境中作为对等计算机来操作。计算机系统800可以通过个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、web器具、服务器、网络路由器、交换机或桥接器或能够执行指定要由该设备采取的操作的一组指令(顺序的或另外的)的任何设备来提供。另外,术语“计算机”应包括单独地或共同地执行一组(或多组)指令以执行本文描述的方法中的任何一种或多种的计算机的任何合集。

在另一个方面中,计算机系统800可以包括可以经由总线808相互通信的处理设备802、易失性存储器804(例如,随机存取存储器(RAM))、非易失性存储器806(例如,只读存储器(ROM))或电可擦除可编程ROM(EEPROM)和数据存储设备818。

处理设备802可以通过一个或多个处理器来提供,所述一个或多个处理器诸如通用处理器(诸如例如复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器)、甚长指令字(VLIW)微处理器、实现其它类型的指令集的微处理器或实现各类型的指令集的组合的微处理器)或专用处理器(诸如例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)或网络处理器)。

计算机系统800可以进一步包括网络接口设备822。计算机系统800还可以包括视频显示单元810(例如,LCD)、字母数字输入设备812(例如,键盘)、光标控制设备814(例如,鼠标)和信号生成设备820。

数据存储设备818可以包括非暂时性计算机可读存储介质824,在其上可以存储对本文描述的方法或功能中的任何一个或多个进行编码的指令826,包括对图1的消息组件126或176进行编码并用于实现方法400、430或460的指令。

指令826还可以在其由计算机系统800执行期间完全地或部分地驻留在易失性存储器804内和/或在处理设备802内,因此,易失性存储器804和处理设备802还可以构成机器可读存储介质。

虽然计算机可读存储介质824在说明性示例中被示出为单个介质,但是术语“计算机可读存储介质”应包括单个介质或存储一组或多组可执行指令的多个介质(例如,集中式或分布式数据库和/或相关高速缓存和服务器)。术语“计算机可读存储介质”还应包括能够对由计算机执行的一组指令进行存储或者编码的有形介质,该一组指令使计算机执行本文描述的方法中的任何一种或多种。术语“计算机可读存储介质”应包括但不限于固态存储器、光学介质和磁介质。

本文描述的方法、组件和特征可以由分立硬件组件实现或者可以被集成在诸如ASIC、FPGA、DSP或类似器件这样的其它硬件组件的功能性中。此外,可以通过硬件设备内的固件模块或功能电路来实现方法、组件和特征。另外,方法、组件和特征可以用硬件设备和计算机程序组件的任何组合或者用计算机程序加以实现。

除非另外具体地陈述,否则诸如“促进”、“检测”、“确定”、“呈现”、“接收”、“发送”、“识别”、“请求”、“生成”、“认证”等这样的术语指代由计算机系统执行或者实现的操作和过程,这些操作和过程将被表示为计算机系统寄存器和存储器内的物理(电子)量的数据操纵并变换成被类似地表示为计算机系统存储器或寄存器或其它这样的信息存储、传输或显示设备内的物理量的其它数据。另外,如本文所使用的术语“第一”、“第二”、“第三”、“第四”等是指用于区分不同元素的标签并且可能不具有根据其数字名称的序数含义。

本文描述的示例还涉及用于执行本文描述的方法的装置。此装置可以被特别构造用于执行本文描述的方法,或者它可以包括通过存储在计算机系统中的计算机程序选择性地编程的通用计算机系统。这样的计算机程序可以被存储在计算机可读有形存储介质中。

本文描述的方法和说明性示例不与任何特定计算机或其它装置内在地有关。可以根据本文描述的教导来使用各种通用系统,或者可以证明构造更专用的装置来执行方法400、430、460和/或其单独的功能、例行程序、子例行程序或操作中的每一个是方便的。在以上描述中阐述了各种这些系统的结构的示例。

以上描述旨在为说明性的,而不是限制性的。尽管已经参考具体说明性示例和实施方式描述了本公开,但是应认识到,本公开不限于所描述的示例和实施方式。应该参考所附权利要求以及权利要求所享有的等同物的完全范围来确定本公开的范围。

37页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于软件模块绑定的系统和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类