用于配对设备以使用应用请求来完成任务的方法、系统及介质与流程

文档序号:18872930发布日期:2019-10-14 19:57阅读:802来源:国知局
用于配对设备以使用应用请求来完成任务的方法、系统及介质与流程

本申请要求于2017年5月5日提交的美国专利申请no.15/588,386的优先权,该申请是2016年10月11日提交的美国专利申请no.15/291,023的部分延续申请,其中每个申请均通过引用整体并入本文。

本公开的主题涉及用于配对设备以使用应用请求来完成任务的方法、系统及介质。



背景技术:

用户时常想要完成一些任务或执行一些操作,诸如在其用户设备上拍照或签署表单。某些任务或操作可能需要特定的硬件,例如可能在用户当前正在使用的设备(例如,桌面型计算机)上不可用的相机或触摸板,并且可能需要不同的用户设备(例如,移动电话)来完成所述任务或操作。但是,可能很难将两个设备配对以完成所述任务或操作。

因此,需要提供用于配对设备以使用应用请求来完成任务的新方法、系统及介质。



技术实现要素:

提供了用于配对设备以完成任务的方法、系统和介质。根据所公开的主题的一些实施例,提供用于配对设备以完成任务的方法,该方法包括:在第一用户设备处识别待完成任务的指示;由第一用户设备向服务器发送指示待完成任务的信息以及对应于第一用户设备的识别信息;确定是否已经经过了预定持续时间;响应于确定已经经过预定持续时间,从第一用户设备向服务器发送确定第二用户设备是否已经完成任务的请求;以及响应于从服务器接收第二用户设备已经完成任务的指示,从服务器中检索对应于任务的数据。

根据所公开的主题的一些实施例,提供用于配对设备以完成任务的系统,该系统包括:硬件处理器,其被编程以进行:在第一用户设备处识别待完成任务的指示;由第一用户设备向服务器发送指示待完成任务的信息以及对应于第一用户设备的识别信息;确定是否已经经过了预定持续时间;响应于确定已经经过预定持续时间,从第一用户设备向服务器发送确定第二用户设备是否已经完成任务的请求;以及响应于从服务器接收第二用户设备已经完成任务的指示,从服务器中检索对应于任务的数据。

根据所公开的主题的一些实施例,提供包含计算机可执行指令的非暂时性计算机可读介质,当由处理器执行时,所述指令使处理器执行用于配对设备以完成任务的方法,该方法包括:在第一用户设备处识别待完成任务的指示;由第一用户设备向服务器发送指示待完成任务的信息以及对应于第一用户设备的识别信息;确定是否已经经过了预定持续时间;响应于确定已经经过预定持续时间,从第一用户设备向服务器发送确定第二用户设备是否已经完成任务的请求;以及响应于从服务器接收第二用户设备已经完成任务的指示,从服务器中检索对应于任务的数据。

附图说明

当结合以下附图考虑时,参考以下对所公开主题的详细说明,可以更全面地理解所公开的主题的各种目的、特征和优点,其中相似的参考编号表示相似的元件。

图1示出根据所公开主题的一些实施例的用于配对设备以完成任务的系统的示例的示意图。

图2示出根据所公开主题的一些实施例的可以用在服务器和/或用户设备中的硬件的示例。

图3示出根据所公开主题的一些实施例的用于生成任务请求并且检索任务数据的过程的示例。

图4示出根据所公开主题的一些实施例的用于检索任务请求并且发送任务数据的过程的示例。

具体实施方式

根据各种实施例,提供用于配对设备以使用应用请求来完成任务的机制(可以包括方法、系统及介质)。

在一些实施例中,本文描述的机制可以允许用户使用第二用户设备完成在第一用户设备上执行的应用所请求的任务或操作。例如,在一些实施例中,任务或操作可以包括使用与第二用户设备相关联的相机拍摄照片或视频、经由与第二用户设备相关联的触摸屏接收输入、从与第二用户设备相关联的麦克风接收音频数据、和/或执行任意其他合适的任务或操作。在一些实施例中,该机制可以使第一用户设备向数据库服务器发送应用任务请求,其指示将由第二用户设备执行的任务或操作。这些机制可以使第二用户设备查询数据库服务器以识别待处理的应用任务请求,并且响应于识别待处理的应用任务请求,完成任务或操作并将执行任务或操作时收集的任意数据上传到数据库服务器。该机制可以使第一用户设备周期性地(例如,每十毫秒、每一百毫秒、和/或以任意其他合适的频率)查询数据库服务器以确定第二用户设备是否已经完成任务,并且,如果已完成任务,则检索由第二用户设备收集的数据。

注意,在一些实施例中,第一用户设备和第二用户设备均可以执行请求任务或操作的应用。在这种实施例中,可以在第一用户设备和第二用户设备两者上用与第一用户设备和第二用户设备的用户相关联的用户帐户来对应用进行验证。在一些实施例中,数据库服务器可以使用与用户帐户相关联的用户名或任意其他合适的用户识别信息来存储从第一用户设备接收的应用任务请求,识别针对第二用户设备的待处理的应用任务请求,并存储由第二用户设备收集的与应用任务请求相关的数据。

转到图1,示出根据所公开主题的一些实施例的用于配对设备以完成任务的硬件的示例100。如图所示,硬件100可以包括数据库服务器102、通信网络104、用户设备106-110以及网络路由器112及114。

数据库服务器102可以是用于存储与应用(例如,在移动设备上执行的应用、在膝上型计算机或桌面型计算机上执行的应用和/或任意其他合适的应用)相关联的信息和/或数据的任意的合适的服务器。例如,在一些实施例中,数据库服务器102可以是从用户设备106接收任务请求并从用户设备108和/或110接收对待处理任务请求的查询的服务器。作为另一示例,在一些实施例中,数据库服务器102可以接收并存储与完成的任务相关联的数据,例如照片、签名和/或任意其他合适的数据,如以下结合图4所述。

在一些实施例中,通信网络104可以是一种或多种有线和/或无线网络的任意合适的组合。例如,通信网络104可以包括因特网、移动数据网络、卫星网络、局域网、广域网、电话网络、有线电视网络、wifi网络、wimax网络和/或任意其他合适的通信网络中的任意一种或多种。

用户设备106、108和/或110可以是用于执行应用、发送任务请求、执行所请求的任务和/或执行任意其他合适的功能的任意合适的用户设备。在一些实施例中,用户设备106、108和/或110可以包括移动设备(例如,移动电话、膝上型计算机、可穿戴计算机和/或任意其他合适的移动设备)和/或非移动设备(例如,桌面型计算机、智能电视和/或任意其他合适的非移动设备)。在一些实施例中,用户设备106、108和/或110可以对于彼此是本地的或对于彼此是远程的。例如,如图1所示,在一些实施例中,用户设备106和108可以对于彼此是本地的,并且通过网络路由器112连接到通信网络104。作为另一个示例,如图1所示,在一个实施例中,用户设备110可以通过网络路由器114连接到通信网络104。

尽管为了避免使附图过于复杂而在图1中仅示出了一个服务器102,但是在一些实施例中可以使用任意合适数量的服务器。

在一些实施例中,可以使用任意合适的硬件来实现数据库服务器102和用户设备106、108和110。例如,在一些实施例中,可以使用任意合适的通用计算机或专用计算机来实现设备102、106、108及110。例如,数据库服务器可以使用专用计算机来实现。任意的这种通用计算机或专用计算机可以包括任意合适的硬件。例如,如图2的示例硬件200中所述,这样的硬件可以包括硬件处理器202、存储器和/或存储204、输入设备控制器206、输入设备208、显示/音频驱动器210、显示及音频输出电路212、(多个)通信接口214、天线216、以及总线218。

在一些实施例中,硬件处理器202可以包括任意合适的硬件处理器,例如微处理器、微控制器、(多个)数字信号处理器、专用逻辑和/或用于控制通用计算机或专用计算机的运行的任意其他合适的电路。

在一些实施例中,存储器和/或存储204可以是用于存储程序、数据、媒体内容和/或任意其他合适的信息的任意合适的存储器和/或存储。例如,存储器和/或存储204可以包括随机存取存储器、只读存储器、闪存、硬盘存储器、光学媒体和/或任意其他合适的存储器。

在一些实施例中,输入设备控制器206可以是用于控制并接收来自诸如输入设备208的设备的输入的任意合适的电路。例如,输入设备控制器206可以是用于接收来自诸如触摸屏的输入设备208、来自一个或多个按键、来自声音识别电路、来自麦克风、来自相机、来自光学传感器、来自加速度计、来自温度传感器、来自近场传感器和/或任意其他类型的输入设备的输入的电路。

在一些实施例中,显示/音频驱动器210可以是用于将输出控制并驱动到一个或多个显示/音频输出电路212的任意合适的电路。例如,显示/音频驱动器210可以是用于驱动lcd显示器、扬声器、led或任意其他类型的输出设备的电路。

(多个)通信接口214可以是用于与诸如图1所示的网络104的一个或多个通信网络接口相接的任意合适的电路。例如,(多个)接口214可以包括网络接口卡电路、无线通信电路和/或任意其他合适类型的通信网络电路。

在一些实施例中,天线216可以是用于与通信网络进行无线通信的任意合适的一个或多个天线。在一些实施例中,可以在不需要时省略天线216。

在一些实施例中,总线218可以是用于在两个或更多个部件202、204、206、210和214之间进行通信的任意合适的机制。

根据一些实施例,硬件200中可以包括任意其他合适的部件。

转到图3,示出根据所公开主题的一些实施例的用于生成任务请求并检索对应于任务请求的数据的过程的示例300。在一些实施例中,过程300的框可以由诸如用户设备106的第一用户设备执行,如图1所示并结合图1所述。

过程300可以在302开始。在一些实施例中,过程300可以响应于确定用户已经在第一用户设备上打开特定应用、在第一用户设备上选择特定的可选输入或用户界面控制和/或响应于任意其他合适的(多个)操作而开始。作为更具体的示例,在一些实施例中,过程300可以响应于确定第一用户设备的用户已经选择用户界面控制来经由在第一用户设备上执行的应用或web浏览器上传图片而开始。注意,在一些实施例中,可以呈现请求来自用户的许可以继续进行过程300的用户界面。附加地或替选地,在一些实施例中,用户界面可以呈现用于在第二用户设备上打开相应的应用以执行图4的过程400(如下所述)的指令。

过程300可以在304检索用户标识符。例如,在一些实施例中,过程300可以从第一用户设备的存储器204检索用户标识符,如图2所示并结合图2所述。在一些实施例中,用户标识符可以是任意合适的标识符,诸如与第一用户设备的用户相关联的用户名、事先存储在第一用户设备上的与在第一用户设备上执行的特定应用相关联的用户名和/或其他合适的用户标识符。注意,在一些实施例中,用户标识符可以是不同于用户名的唯一标识符,并且可以包括任意其他合适的用户识别数据,例如个人标识号(pin)、生物识别数据和/或任意其他合适的用户标识符的类型。

过程300可以在306检索与第一用户设备相关联的互联网协议(ip)地址。在一些实施例中,检索到的ip地址可以对应于第一用户设备连接到的网络路由器的ip地址,例如网络路由器112,如图1所示并结合图1所述。

在308,过程300可以使用在框304检索的用户标识符以及在框306检索的ip地址来生成应用请求。在一些实施例中,应用请求可以包括执行任意合适的任务或操作的请求,诸如使用第二用户设备(例如,用户设备108和/或用户设备110)的相机来拍照、使用第二用户设备的触摸屏来接收用户签名和/或任意其他合适的任务或操作。在一些实施例中,应用请求可以包括任意合适的信息,诸如对应于请求的标识符、当前日期和/或时间、ip地址、用户标识符、密码、请求类型、请求状态和/或任意其他合适的信息。在一些实施例中,过程300可以将密码生成为对应于特定应用请求的唯一的和/或随机化的字母数字串。在一些实施例中,可以将请求类型设置为对应于与应用请求相关联的任务类型或应用类型的值。例如,对应于使用设备相机捕获图像的任务的应用请求可以具有第一特定请求类型(例如,“1”、“c”、“p”、“照片”和/或任意其他合适的请求类型),并且对应于从触摸屏捕获数据的任务的应用请求可以具有不同的请求类型(例如,“2”、“t”、“触摸”和/或任意其他合适的请求类型)。在一些实施例中,过程300可以在框308将请求状态设置为0。注意,在一些实施例中,应用请求可以附加地包括指示用于执行任务或操作的第二用户设备(例如,特定移动电话、特定平板计算机和/或任意其他合适的第二用户设备)的信息。

在一些实施例中,过程300可以通过设置超时计数器使第一用户设备等待第二用户设备完成任务不超过预定持续时间。在这种实施例中,过程300可以在框310将超时计数器值m设为0。在一些实施例中,可以省略超时计数器。

在312,过程300可以等待n毫秒。在一些实施例中,n可以是任意合适的值(例如,1、2、5、100、1000和/或任意其他合适的值)。

过程300可以查询数据库服务器102(在过程300在框312等待n毫秒之后)以在314确定更新的请求状态。例如,在一些实施例中,第一用户设备可以经由网络路由器(例如,网络路由器112)和通信网络104连接到数据库服务器102,以请求对应于所生成的应用请求的更新的请求状态。注意,在一些实施例中,请求状态可能已经由已完成应用请求的第二用户设备更新,如图4所示并结合图4所述。

在316,过程300可以确定更新的请求状态是否为1,其指示第二用户设备已完成应用请求。注意,尽管在此说明的请求状态的值在请求尚未完成的情况下为0,而在请求已经完成的情况下为1,但是在一些实施例中,可以使用任意其他合适的值来指示请求状态。

在316,如果请求状态为1(在316为“是”),则过程300可以在318从数据库服务器102中检索对应于应用请求的数据。例如,在应用请求对应于使用与第二用户设备相关联的相机捕获图像或视频的实例中,过程300可以从数据库服务器102检索对应于捕获的图像或视频的图像数据。作为另一个示例,在应用请求对应于从第二用户设备的触摸屏上捕获数据的请求的实例中,过程300可以检索指示第二用户设备的触摸屏上的输入的数据。在一些实施例中,数据可以从数据库服务器102经由通信网络104发送到第一用户设备,如图1所示并结合图1所述。然后,过程300可以在框324结束。

在316,如果请求状态不为1(在316为“否”),则过程300可以进行到框320并且可以确定超时计数器(m)的当前值是否超过预定阈值t。在一些实施例中,t可以具有任意合适的值(例如,0、1、2、5、10、100和/或任意其他合适的值)。在过程300不使用超时计数器的实例中,可以省略框320。

在320,如果超时计数器的值不超过预定阈值(在320为“否”),则过程300可以将超时计数器的值(m)递增1,并且可以循环回到框312,其中过程300可以在检查更新的请求状态之前等待n毫秒。

在320,如果超时计数器的值超过预定阈值(在320为“是”),则过程300可以在框324结束。

转到图4,示出根据所公开主题的一些实施例的用于检索应用请求并完成对应于应用请求的任务的过程的示例400。在一些实施例中,过程400的框可以在除发送应用请求的用户设备之外的用户设备上实现。例如,结合图3所述,诸如用户设备106的第一用户设备可以发送应用请求,并且过程400的框可以由诸如用户设备108和/或110(如图1所示并结合图1所述)的第二用户设备执行。注意,在一些实施例中,第一用户设备和第二用户设备可以连接到相同的网络路由器(例如,如图1所示,用户设备106和用户设备108连接到网络路由器112)或连接到不同的网络路由器(例如,如图1所示,用户设备106连接到网络路由器112,以及用户设备110接到网络路由器114)。

过程400可以在402开始。在一些实施例中,过程400可以响应于在第二用户设备上采取的任意合适的操作而开始。例如,在一些实施例中,过程400可以响应于确定在第二用户设备上已经打开特定应用和/或响应于任意其他合适的操作而开始。

过程400可以在404检索用户标识符。在一些实施例中,第二用户设备在框404检索的用户标识符可以与第一用户设备在框304检索的用户标识符相同。例如,在一些实施例中,用户标识符可以对应于与在第二用户设备上执行的应用上认证的用户帐户相关联的用户名。注意,在一些实施例中,用户标识符可以是任意类型的用户识别信息,例如pin码、生物识别数据和/或任意其他合适的用户标识符。

在406,过程400可以检索与执行过程400的用户设备相关联的ip地址。例如,在一些实施例中,ip地址可以对应于第二用户设备连接到的网络路由器,例如,如果用户设备为用户设备108,则网络路由器为网络路由器112,如果用户设备为用户设备110,则网络路由器为网络路由器114。

过程400可以在408接收与应用相关联的密码。在一些实施例中,可以以任意合适的方式接收密码,例如通过与第二用户设备相关联的键盘、与第二用户设备相关联的触摸屏、与第二用户设备相关联的麦克风和/或以任意其他合适的方式。在一些实施例中,密码可以是与由过程300在框308生成的密码相匹配的密码,如结合图3所述。注意,在一些实施例中,过程400不需要密码,并且在这种的实施例中,可以省略框408。

在410,过程400可以查询数据库服务器102以确定第一用户设备是否已经发送了应用任务请求。在一些实施例中,过程400可以向数据库服务器102发送请求以识别待处理的应用任务请求。例如,在一些实施例中,所发送的请求可以包括在框404检索的用户标识符、在框406检索的ip地址和/或在框408接收的应用密码。在一些实施例中,请求中可以包括一项或多项信息的任意合适的组合。在一些实施例中,可以经由第二用户设备连接到的网络路由器和通信网络104向数据库服务器102发送请求。

在一些实施例中,数据库服务器102可以基于从过程400接收的信息来识别待处理的应用任务请求。例如,在一些实施例中,数据库服务器102可以识别与包括在从过程400接收的信息中的相同的用户标识符(例如,用户名和/或任意其他合适的用户识别数据)相关联的待处理的应用任务请求。作为另一个示例,在一些实施例中,数据服务器102可以识别与包括在从过程400接收的信息中的ip地址相同的ip地址(例如,在第一用户设备及第二用户设备对于彼此是本地的实例中)相关联的待处理的应用任务请求。作为又一示例,在一些实施例中,数据服务器102可以识别与包括在从过程400接收的信息中的相同的密码相关联的待处理的应用任务请求。

在412,过程400可以确定是否存在第二用户设备要完成的待处理的应用任务请求。过程400可以基于任意合适的信息(例如,基于来自数据库服务器102的对发送的查询的响应)确定是否存在待处理的应用任务请求。

在412,如果没有待处理的应用任务请求(在412为“否”),则过程400可以在框418结束。

在412,如果存在待处理的应用任务请求(在412为“是”),则过程400可以在414完成任务。在一些实施例中,例如,过程400可以基于对在框410发送的查询的响应而从数据库服务器102发送的信息确定与应用任务请求相关联的任务的类型。例如,在一些实施例中,信息可以指示使用与执行过程400的第二用户设备相关联的相机来捕获图像。作为另一示例,在一些实施例中,信息可以指示要捕获来自执行过程400的第二用户设备的触摸屏的数据。过程400可以通过收集任意合适的数据来执行应用任务请求中指示的操作或任务。注意,在操作或任务需要诸如相机、触摸屏、麦克风和/或任意其他合适的硬件的与第二用户设备相关联的特定硬件的实例中,过程400可以以任意合适的方式使硬件自动初始化或接口连接。

在416,过程400可以将收集的数据发送到数据库服务器102。可以以任意合适的方式发送数据,例如,经由通信网络104。此外,在一些实施例中,过程400可以将指令发送到数据库服务器102以将与应用任务请求相关联的请求状态置为1(或任意其他合适的值)以指示第二用户设备已经完成该任务。

应该理解的是,至少所述图3和图4的过程的上述框中的一些可以以任意次序或顺序来执行或实施,并不受限于如图所示并在图中所述的次序或顺序。此外,图3和图4的过程的上述框中的一些也可以在适当的或并行的情况下基本上同时执行或实施,以减少延迟和处理时间。附加地或替选地,可以省略图3和图4的过程的上述框中的一些。

在一些实施例中,可以使用任意合适的计算机可读介质来存储用于执行本文说明的功能和/或过程的指令。例如,在一些实施例中,计算机可读介质可以是暂时性的或非暂时性的。例如,非暂时性计算机可读介质可以包括诸如非暂时性形式的磁介质(诸如硬盘、软盘等)、非暂时性形式的光学介质(诸如光盘、数字视频光盘、蓝光光盘等)、非暂时性形式的半导体介质(诸如闪存、电可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)等),在传输过程中非转瞬即逝或没有任何永久性外表的任意的介质和/或任意合适的有形介质。作为另一个示例,暂时性计算机可读介质可以包括网络上、导线、导体、光纤、电路、传输过程中转瞬即逝且没有任何永久性外表的任意合适的介质和/或任意合适的无形介质中的信号。

因此,提供了用于配对设备以使用应用请求来完成任务的方法、系统及介质。

尽管已经在前述说明性实施例中描述并说明了本发明,但应该理解是,本公开仅仅是通过示例的方式进行的,并且可以在不脱离本发明的精神及范围的情况下对本发明的实施细节进行诸多改变,本发明的精神及范围仅受所附权利要求的限制。可以以各种方式组合并重新排列所公开的实施例的特征。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1