CN109844717A - 用于移动应用程序的实时远程控制的系统和方法 - Google Patents
用于移动应用程序的实时远程控制的系统和方法 Download PDFInfo
- Publication number
- CN109844717A CN109844717A CN201780063704.5A CN201780063704A CN109844717A CN 109844717 A CN109844717 A CN 109844717A CN 201780063704 A CN201780063704 A CN 201780063704A CN 109844717 A CN109844717 A CN 109844717A
- Authority
- CN
- China
- Prior art keywords
- data
- input element
- terminal device
- mobile applications
- network equipment
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 116
- 238000004891 communication Methods 0.000 claims abstract description 435
- 230000033001 locomotion Effects 0.000 claims description 48
- 150000001875 compounds Chemical class 0.000 claims description 35
- 238000003860 storage Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 238000012986 modification Methods 0.000 claims description 14
- 230000004048 modification Effects 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 230000015572 biosynthetic process Effects 0.000 claims 3
- 238000007726 management method Methods 0.000 description 75
- 230000008569 process Effects 0.000 description 66
- 230000006870 function Effects 0.000 description 35
- 239000003795 chemical substances by application Substances 0.000 description 30
- 230000003993 interaction Effects 0.000 description 25
- 230000005540 biological transmission Effects 0.000 description 22
- 238000010079 rubber tapping Methods 0.000 description 22
- 230000015654 memory Effects 0.000 description 21
- 230000004044 response Effects 0.000 description 17
- 230000002452 interceptive effect Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000012423 maintenance Methods 0.000 description 12
- 239000000047 product Substances 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 11
- 238000005259 measurement Methods 0.000 description 11
- 230000001235 sensitizing effect Effects 0.000 description 11
- 230000008093 supporting effect Effects 0.000 description 10
- 238000013507 mapping Methods 0.000 description 7
- 230000003362 replicative effect Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 230000036651 mood Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000009182 swimming Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 241001441724 Tetraodontidae Species 0.000 description 1
- 241001441726 Tetraodontiformes Species 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000009365 direct transmission Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000007474 system interaction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
提供了用于移动应用程序的实时远程控制的系统和方法。可以建立网络设备和终端设备之间的通信会话。网络设备可以被配置为执行移动应用程序。例如,移动应用程序可以包含处于初始状态的输入元素。移动应用程序可以由终端设备远程地控制。此外,可以在通信会话过程中接收和发送包含内容数据的数据流。例如,内容数据可以包含由移动应用程序呈现的对象。内容数据可以显示在终端设备上。可以检测与内容数据相关联的输入事件。可以基于检测到的输入事件生成控制数据。可以在网络设备处接收控制数据,并且可以修改输入元素的初始状态。
Description
相关申请的交叉引用
本申请要求2016年8月14日提交的美国临时申请No.62/374,892的优先权,上述申请的公开内容通过引用整体并入本文以用于所有的目的。
技术领域
本发明大体上涉及促进客户和代理之间的实时通信会话。更具体地,提供了在通信会话过程中远程地控制移动应用程序的技术。
背景技术
使用数字消息传送作为通信的手段是普遍的。此外,移动应用程序越来越多地结合消息传送功能。但是,消息传送功能可能受到限制。例如,每当客户面临移动应用程序的问题时,由于缺乏共享的视觉上下文,仅消息传送功能可能不足以充分解决问题。
发明内容
在一些实施方式中,提供了一种计算机实现的方法。该计算机实现的方法可以包括在通信服务器处建立网络设备和终端设备之间的通信会话。所述网络设备可以被配置为执行移动应用程序。例如,所述移动应用程序可以包括处于初始状态的输入元素。在一些实例中,所述移动应用程序可以由终端设备远程地控制。此外,该方法可以包括在通信会话过程中接收数据流。所述数据流可以包括内容数据。例如,所述内容数据可以包括由移动应用程序呈现的对象。所述对象可以对应于所述输入元素。所述方法可以包括在所述通信会话过程中发送所述数据流。可以在终端设备处接收所述数据流。所述内容数据可以显示在终端设备上。所述方法还可以包括检测与所述内容数据相关联的输入事件。可以基于检测到的所述输入事件生成控制数据。然后可以发送所述控制数据。可以在所述网络设备处接收所述控制数据。例如,所述控制数据可以修改所述移动应用程序中所包含的所述输入元素的初始状态。
在一些实施方式中,提供了另一种计算机实现的方法。所述计算机实现的方法可以包括在网络设备处识别与移动应用程序相关联的输入元素。所述输入元素可以被配置为基于交互接收输入数据。所述方法可以包括确定与所述输入元素相对应的输入边界。例如,所述输入边界可以是用于接收所述输入数据的区域。此外,所述方法可以包括执行所述移动应用程序。执行所述移动应用程序可以包括显示处于初始状态的所述输入元素。所述移动应用程序可以由终端设备远程地控制。所述方法还可以包括接收与在所述终端设备处的选择相对应的输入。所述选择可以与选择数据相关联,并且所述选择数据可以用于识别与所述移动应用程序相关联的位置。所述方法可以包括确定所述选择数据是否对应于所述输入元素。确定所述选择数据是否对应于所述输入元素可以包括将所述选择数据与所述输入边界进行比较。此外,所述方法可以包括当所述选择数据对应于所述输入元素时确定与所述输入元素相关联的动作。然后可以执行所述动作。
在一些实施方式中,提供了另一种计算机实现的方法。所述计算机实现的方法可以包括在网络设备处执行移动应用程序,所述移动应用程序包括处于初始状态的输入元素。所述移动应用程序可以由终端设备远程地控制。所述方法还可以包括生成数据流。所述数据流可以包括内容数据,所述内容数据可以包括由所述移动应用程序呈现的对象。例如,所述对象可以对应于所述输入元素。所述方法可以包括发送所述数据流。可以在所述终端设备处接收所述数据流。所述内容数据可以显示在所述终端设备上。此外,所述方法可以包括接收与所述对象相关联的控制数据、确定所述控制数据是否对应于所述输入元素、以及当所述控制数据对应于所述输入元素时修改所述输入元素的初始状态。修改所述输入元素的初始状态可以包括将所述初始状态改变为后续状态。
本发明的实施方式还可以包括一种系统。所述系统可以包括一个或多个处理器、以及包含指令的非暂时性计算机可读存储介质,所述指令当在所述一个或多个数据处理器上执行时,使得所述一个或多个数据处理器执行包括以上和本文所描述的任何计算机实现的方法的操作。
本发明的实施方式还可以包括有形地实现在非暂时性机器可读存储介质中的计算机程序产品,所述非暂时性机器可读存储介质包含指令,所述指令被配置为使数据处理装置执行包括以上和本文所描述的任何计算机实现的方法的操作。
附图说明
结合附图对本发明进行描述:
图1示出了网络交互系统的实施方式的框图;
图2示出了网络交互系统的另一实施方式的框图;
图3A-图3C示出了包括连接管理系统的网络交互系统的其它实施方式的框图;
图4示出了连接组件的操作的协议栈映射的表示;
图5表示根据一实施方式的多设备通信交换系统;
图6示出了连接管理系统的实施方式的框图;
图7示出了用于移动应用程序的实时远程控制的交互环境的表示;
图8示出了用于在网络设备处复制输入事件的过程的泳道图;
图9示出了用于在网络设备处复制输入事件的另一过程的泳道图;
图10示出了用于远程地控制移动应用程序的过程的流程图;
图11示出了用于在网络设备处复制输入事件的过程的流程图;以及
图12示出了用于远程地控制移动应用程序的另一过程的流程图。
在附图中,类似的组件和/或特征可以具有相同的附图标记。此外,可以通过由短划线跟随附图标记和区分相似组件的第二附图标记来区分相同类型的各种组件。只要在说明书中使用了第一附图标记,则该描述适用于具有相同第一附图标记的类似组件中的任一者,而不管第二附图标记如何。
具体实施方式
随后的描述仅提供了(一个或多个)实施方式的优选示例,并且不旨在限制本发明的范围、适用性或配置。而是,随后对(一个或多个)实施方式的优选示例的描述将为本领域技术人员提供用于实现实施方式的优选示例的使能描述。应当理解,在不脱离所附权利要求中阐述的精神和范围的情况下,可以对元件的功能和布置进行各种改变。
图1示出了实现并支持本文描述的某些实施方式和特征的网络交互系统100的实施方式的框图。某些实施方式涉及在网络设备105(其可以由用户110操作)和终端设备115(其可以由代理120操作)之间建立连接通道。在某些实施方式中,网络交互系统100可以包括与客户端125相关联的客户端设备130。
在某些实施方式中,用户110可以是浏览网站或访问由远程服务器140提供的在线服务的个人。客户端125可以是提供、操作或运行网站或在线服务的实体、或由这样的实体雇用或分配的用于执行如本文描述的客户端125可实现的任务的个人。代理120可以是个人,诸如负责向用户110提供关于网站或在线服务的支持或信息(例如,关于在网上商店可获得的产品的信息)的支持代理或销售助理。在大量的代理中,代理的子集可以适合于为特定客户端125提供支持或信息。代理120可以隶属于客户端125或不隶属于客户端125。每个代理均可以与一个或多个客户端125相关联。在一些非限制性示例中,用户110可以是从个人计算设备在网上商店买东西的个人,客户端125可以为在网上销售产品的公司,并且代理120可以是公司雇用的销售助理。在各种实施方式中,用户110、客户端125和代理120可以是其他个人或实体。
尽管图1仅示出了单个网络设备105、终端设备115和客户端设备130,但是交互系统100可以包括(一种或多种)这些类型的设备中的每一种的多个或许多(例如,数十、数百或数千个)设备。类似地,尽管图1仅示出了单个用户110、代理120和客户端125,但是交互系统100可以包括(一种或多种)这种实体中的每一者的多个或许多实体。因此,可能有必要确定选择哪个终端设备与给定的网络设备通信。更复杂的情况是,远程服务器140还可以被配置为接收网络设备通信和进行响应以选择网络设备通信。
连接管理系统150可以促进通信的策略路由。通信可以包括具有内容的消息(例如,基于来自实体的输入(诸如打字或口头输入)来定义)。通信还可以包括:附加数据,诸如关于发送设备的数据(例如,IP地址、账户标识符、设备类型和/或操作系统);目的地址;客户端的标识符;网页的标识符或网页元素(例如,当生成通信或以其它方式与通信相关联时所访问的网页或网页元素)或在线历史数据;时间(一天中的时间和/或日期);和/或目的地址。其它信息可以包含在通信中。在一些实例中,连接管理系统150将整个通信路由至另一设备。在一些实例中,连接管理系统150修改通信或生成新的通信(例如,基于初始通信)。新的或修改后的通信可以包括消息(或其处理的版本)、至少一些(或全部)附加数据(例如,关于发送设备、网页或在线历史和/或时间)和/或由连接管理系统150标识的其它数据(例如,与特定账户标识符或设备相关联的账户数据)。新的或修改后的通信还可以包括其它信息。
策略路由促进(strategic-routing facilitation)的一部分可以包括在网络设备105和一个或多个终端设备115之间建立、更新和使用一个或多个连接通道。例如,在接收到来自网络设备105的通信时,连接管理系统150可以首先估计通信对应于哪个客户端(如果有的话)。在标识客户端时,连接管理系统150可以标识与客户端相关联的用于与网络设备105通信的终端设备115。在一些实例中,该标识可以包括评估多个代理(或专家或代表)中的每一个的简况,所述多个代理中的每个代理(例如,代理120)与终端设备(例如,终端设备115)相关联。评估可以涉及网络设备消息中的内容。终端设备115的标识可以包括例如在2010年3月17日提交的美国申请号12/725,799中描述的技术,其通过引用整体并入本文以用于所有的目的。
在一些实例中,连接管理系统150可以确定在网络设备105和与客户端(或远程服务器140)相关联的终端设备之间是否建立了任何连接通道,并且如果是,则确定是否将这种通道用于交换包括该通信的一系列通信。
在选择与网络设备105通信的终端设备115时,连接管理系统150可以在网络设备105和终端设备115之间建立连接通道。在一些实例中,连接管理系统150可以向所选择的终端设备115发送消息。该消息可以请求接受所建议的分配以与网络设备105通信或者确定已经产生这种分配。该消息可以包括关于网络设备105的信息(例如,IP地址、设备类型和/或操作系统)、关于相关联的用户110的信息(例如,所说的语言、与客户端交互的持续时间、技能水平、情绪和/或主题偏好)、接收的通信、用于生成通信并向网络设备105发送该通信的代码(例如,可点击的超链接)、和/或用于生成通信并向网络设备105发送该通信的指令。
在一个实例中,网络设备105和终端设备115之间的通信可以通过连接管理系统150路由。这种配置可以允许连接管理系统150监控通信交换并且检测(例如,如基于规则所定义的)问题(例如任一设备的无响应或延长的延迟)。此外,这种配置可以促进通信的选择性或完整存储,其可以稍后用于例如评估通信交换的质量和/或支持学习更新或生成路由规则,以便推进特定的后续通信目标。
在一些实施方式中,连接管理系统150可以实时监控通信交换并且基于实时通信执行自动化动作(例如,基于规则的动作)。例如,当连接管理系统150确定通信涉及特定产品时,连接管理系统150可以自动地向终端设备115发送包含关于产品的附加信息的附加消息(例如,库存产品的数量、支持与产品相关的文档的链接、或关于产品或类似产品的其它信息)。
在一个实例中,指定的终端设备115可以与网络设备105通信而不通过连接管理系统150中继通信。设备105、115中的一者或两者可以(或可以不)向连接管理系统150报告特定的通信度量或内容,以便促进通信监控和/或数据存储。
如上所述,连接管理系统150可以将选择的通信路由至远程服务器140。远程服务器140可以被配置为以预定的方式提供信息。例如,远程服务器140可以响应于通信访问所定义的要发送的一个或多个文本段落、语音记录和/或文件。远程服务器140可以基于例如对所接收的通信的分析(例如,语义分析或映射分析)来选择特定的文本段落、记录或文件。
可以基于至少部分地由一个或多个客户端设备130定义或提供的规则和/或数据来执行在连接管理系统150处执行的路由和/或其它确定或处理。例如,客户端设备130可以发送标识代理优先级、终端设备类型、和/或主题/技能匹配性的通信。作为另一示例,客户端设备130可以标识一个或多个权重以应用于可能影响路由确定(routingdetermination)的各种变量(例如,语言兼容性、预测的响应时间、设备类型和能力、和/或终端设备负载平衡性)。应当理解,将与客户端相关联的哪些终端设备和/或代理可以是动态的。来自客户端设备130和/或终端设备115的通信可以提供指示将给定终端设备和/或代理作为与客户端相关联的一个终端设备和/或代理添加或移除的信息。例如,客户端设备130可以发送具有IP地址以及指示的通信,所述指示为关于是否要从标识与客户端相关联的终端设备的列表中添加或移除具有该地址的终端设备。
每个通信(例如,设备之间、设备和连接管理系统150之间、远程服务器140和连接管理系统150之间、或远程服务器140和设备之间的通信)可以在一个或多个网络170上发生。开放或封闭的网络的任何组合可以包括在所述一个或多个网络170中。合适的网络的示例包括因特网、个人区域网、局域网(LAN)、广域网(WAN)或无线局域网(WLAN)。其它网络也可能是合适的。所述一个或多个网络170可以完全并入内联网、外联网、或内联网和外联网的组合内,或者可以包括内联网、外联网或内联网和外联网的组合。在一些实例中,所述一个或多个网络170中的网络包括短程通信通道,例如蓝牙或蓝牙低功耗通道。在一实施方式中,两个或更多个系统和/或设备之间的通信可以通过安全通信协议来实现,所述安全通信协议例如安全套接层(secure sockets layer,SSL)或传输层安全(transport layersecurity,TLS)协议。此外,数据和/或交易细节可以基于任何方便的、已知的或待开发的方式加密,例如但不限于数据加密标准(Data Encryption Standard,DES)、三重DES、Rivest-Shamir-Adleman加密(RSA)、河豚(Blowfish)加密、高级加密标准(Advanced EncryptionStandard,AES)、CAST-128、CAST-256、解相关快速密码(Decorrelated Fast Cipher,DFC)、微型加密算法(TEA)、扩展TEA(eXtended TEA,XTEA),校正块TEA(Corrected Block TEA,XXTEA)和/或RC5等。
网络设备105、终端设备115和/或客户端设备130可以包括例如便携式电子设备(例如,智能电话、平板电脑、笔记本电脑或智能可穿戴设备)或非便携式电子设备(例如,一个或多个台式计算机、智能家电、服务器和/或处理器)。连接管理系统150可以与网络、终端设备和客户端设备分开设置,或者可以是一个或多个这些设备的一部分(例如,通过在设备上安装应用程序)。远程服务器140可以与每个设备和连接管理系统150分开设置,和/或可以是另一设备或系统的一部分。尽管图1中将每个设备、服务器和系统作为单个设备示出,但是将理解,可以替代地使用多个设备。例如,一组网络设备可以用于从单个用户发送各种通信,或者远程服务器140可以包括服务器堆栈。
通信服务器180可以包括一个或多个服务器,该一个或多个服务器被配置为在网络设备105和终端设备115之间建立通信会话。此外,通信服务器180可以与本文图7中所描述的通信服务器710相同。此外,通信服务器180可以是在通信会话过程中网络设备105和终端设备115通过其实时地交换数据(例如,消息、媒体流、屏幕截图、事件数据等)的服务器。在一些实例中,通信服务器180、网络设备105和终端设备115中的任何一者可以至少部分地执行过程800至1200中的每个过程。在一些实例中,连接管理系统150还可以执行过程800至1200中的每个过程的至少一部分。
可以在所描绘的设备、系统或服务器上安装和/或执行软件代理或应用程序。在一个实例中,软件代理或应用程序被配置为使得所描绘的各种元件可以以互补的方式起作用。例如,设备上的软件代理可以被配置为收集关于设备使用的数据并将其发送至单独的连接管理系统,并且该单独的连接管理系统上的软件应用程序可以被配置为接收和处理该数据。
图2示出了网络交互系统200的另一实施方式的框图。总体上,图2示出了被配置并布置成使得网络设备205能够与一个或多个终端设备215通信的各种组件。所描绘的实例包括包含在三个局域网235中的九个终端设备215。
在一些实例中,来自网络设备205的通信包括至少部分地或完全指示哪个终端设备将接收通信的目的数据(例如,目的IP地址)。网络交互系统200可以包括可以处理所述目的数据并促进适当的路由的一个或多个互联网连接组件240和/或一个或多个内联网连接组件255。
每个互联网连接组件245可以连接至多个网络235,并且可以安装有多个网卡(例如,每个网卡连接至不同的网络)。例如,互联网连接组件245可以连接至广域网270(例如,因特网)和一个或多个局域网235。在所描绘的实例中,为了将通信从网络设备205发送至任何终端设备,在所描绘的系统中,通信必须由多个互联网连接组件245处理。
当互联网连接组件245接收通信(或对应于通信的一组数据包)时,互联网连接组件245可以确定将通信传递至与目的地相关联的网络的路由的至少一部分。可以使用例如路由表(例如,存储在路由器处)来确定路由,该路由表可以包括基于传入的消息(例如,来自另一路由器或来自另一设备)生成的或学到的预定义的一个或多个路由。
互联网连接组件245的示例包括路由器260和网关265。互联网连接组件245(例如,网关265)可以被配置为在网络系统或协议之间进行转换。例如,网关265可以促进传输控制协议/互联网协议(Transmission Control Protocol,TCP/Internet Protocol,IP)设备和互联网分组交换/序列分组交换(Internetwork Packet Exchange,IPX/Sequenced PacketExchange,SPX)设备之间的通信。
在局域网235处接收到通信时,仍可能需要执行进一步的路由。这种内联网路由可以经由内联网连接组件255(例如交换机280或集线器285)来执行。每个内联网连接组件255可以(例如,无线地或有线地,诸如通过以太网线缆)连接至多个终端设备215。集线器285可以被配置为向与其连接的每个设备重复所接收的所有通信。然后,每个终端设备可以评估每个通信以确定该终端设备是否为目的设备或者是否要忽略该通信。交换机280可以被配置为选择性地将通信仅导向至目的终端设备。
在一些实例中,局域网235可以被划分为多个段(segment),每个段可以与独立的防火墙、安全规则和网络协议相关联。可以在一个、多个或所有段中的每个段中提供内联网连接组件255以促进段内路由。桥接器280可以被配置为跨段275路由通信。
为了跨网络或在网络内适当地路由通信,各种组件分析通信中的目的数据。例如,这种数据可以指示通信将被路由至哪个网络、通信将被路由至网络内的哪个设备或终端设备要处理(相对于忽略)哪些通信。然而,在一些实例中,不能立即明白哪个终端设备(或甚至是哪个网络)将参与来自网络设备的通信。
为了说明,可以配置一组终端设备以便提供类似类型的响应通信。因此,可以预期来自网络设备的通信中的查询可以以类似的方式被响应,而不管通信被路由至哪个网络设备。尽管该假设在高水平上可能是真的,但是与终端设备相关的各种细节可以产生与其它设备相比有利的特定路由。例如,上述组中的终端设备可以关于(例如)支持哪些通信通道、与网络设备的地理和/或网络接近度、和/或相关代理的特征(例如,知识库、经验、所说的语言、可用性、一般人格或情绪等)而彼此不同。因此,选择路由可以促进更快的响应,该更快的响应更准确地和/或完整地响应于网络设备通信。复杂的是,将网络设备映射至终端设备的静态路由可能无法解释通信主题、通道类型、代理可用性等的变化。
图3A-图3C示出了包括连接管理系统的网络交互系统300a-300c的其它实施方式的框图。为了简单起见,所描绘的系统300a-300c中的每一个系统仅示出了2个局域网235,但是可以理解的是,可以扩展实施方式以扩展局域网的数量。系统300a-300c中的每个系统包括连接管理系统350,该连接管理系统可以标识哪个终端设备将与网络设备205通信、可以建立并管理(例如,维护或关闭)连接通道、可以确定是否以及何时在交换中重新路由通信等。因此,连接管理系统350可以被配置为动态地并且实时地评估通信、代理可用性、终端设备或代理的能力等,以便影响路由确定。
在图3A中,连接管理系统350与网络设备205以及远程服务器340中的每者相关联(例如,连接管理系统350a与网络设备205相关联,并且连接管理系统350b与远程服务器340相关联)。例如,连接管理系统350a和/或连接管理系统350b可以分别作为应用程序安装或存储在网络设备205和远程服务器340中的每者上。(一个或多个)应用程序的执行可以促进例如网络设备205和远程服务器340之间的通信,以标识被选择参与的与网络设备205进行通信交换的终端设备215。可以基于本文公开的一个或多个因素(例如,可用性、通信的主题/详细水平与代理或终端设备的知识库之间的匹配度、预测的延迟、通道类型可用性等)进行标识。
客户端设备330可以提供指示如何进行路由确定的客户端数据。例如,这种数据可以包括:关于特定特征如何被加权或匹配的指示或约束或偏差(例如,与负载平衡或预测的响应延迟有关)。客户端数据还可以包括与何时建立(或关闭)通信通道或者何时将通信重新路由至不同的网络设备有关的规范。客户端数据可用于定义各种特定于客户端的规则,例如用于通信路由的规则等。
在远程服务器340上运行的连接管理系统350b可以监控与终端设备有关(例如,与给定的客户端有关)的各种度量,例如支持哪些通信通道、与网络设备的地理和/或网络接近度、与终端设备的通信延迟和/或稳定性、终端设备的类型、终端设备的能力、终端设备(或代理)是否在先已经与给定的网络设备(或用户)通信和/或与代理相关联的特征(例如,知识库、经验、所说的语言、可用性、一般人格或情绪等)。因此,可以使通信管理系统350b能够选择路由以促进更快的响应,该更快的响应基于度量更准确地和/或完整地响应于网络设备通信。
在图3A所描绘的示例中,网络设备205和远程服务器340之间的通信交换可以促进目的地址的早期识别。然后,网络设备205可以使用该目的地址来指导后续通信。例如,网络设备205可以向远程服务器340发送初始通信(例如,经由一个或多个互联网连接和广域网),并且远程服务器340可以识别一个或多个相应的客户端。然后,远程服务器340可以识别与所述一个或多个相应的客户端相关联的一组终端设备,并收集对于那些终端设备的度量。可以(例如,通过远程服务器340)评估这些度量以便选择参与通信交换的终端设备,并且可以将与该终端设备有关的信息(例如,IP地址)发送至网络设备205。在一些实施方式中,远程服务器340可以连续地或周期性地收集和评估对于各种终端设备的度量并将评估结果存储在数据存储器中。在这种实施方式中,在识别与所述一个或多个相应的客户端相关联的一组终端设备时,远程服务器340可以从数据存储器访问存储的评估结果,并且基于存储的评估结果选择终端设备来参与通信交换。
在图3B中,连接管理系统350可以被配置为用作中继和/或目的地址。因此,例如,一组网络设备205可以发送通信,每个通信将连接管理系统350标识为目的地。连接管理系统350可以接收各个通信,并且可以同时监控一组终端设备(例如,以便生成对于每个终端设备的度量)。基于监控和规则,连接管理系统350可以识别其可以中继各个通信的终端设备215。根据该实施方式,终端设备通信可以类似地指向一致的目的地(例如,连接管理系统350的目的地),以用于进一步中继,或者终端设备可以开始直接与相应的网络设备通信。这些实施方式可以促进有效路由和全面的通信监控。
图3C中描绘的实施方式类似于图3B中的实施方式。然而,在一些实施方式中,连接管理系统350直接连接至内联网组件(例如,终端设备、内联网连接或其它)。
应当理解,图3A-图3C的许多变型是预期的。例如,连接管理系统350可以与连接组件(例如,互联网连接组件245或内联网连接组件255)相关联,使得对应于连接管理系统350(或其一部分)的应用程序安装在该组件上。例如,可以独立地执行应用程序或通过与类似或补充的一个或多个应用程序(例如,在一个或多个其它组件、网络设备或远程服务器上执行的应用程序)通信来执行应用程序。
图4示出了连接组件的操作的协议栈映射400的表示。更具体地,图4标识了在开放系统交互(Open Systems Interaction,OSI)模型中的对应于各种连接组件的操作层。
OSI模型可以包括多个逻辑层402-414。这些层以有序堆叠布置,使得层402-412中的每个层服务较高水平,而层404-414中的每个层由较低层服务。OSI模型包括物理层402。物理层402可以定义参数物理通信(例如,电、光或电磁通信)。物理层402还定义连接管理协议,例如建立和关闭连接的协议。物理层402还可以定义流控制协议和传输模式。
链路层404可以管理节点到节点(node-to-node)的通信。链路层404可以检测并纠正错误(例如,物理层402中的传输错误)以及管理访问许可。链路层404可以包括媒体访问控制(media access control,MAC)层和逻辑链路控制(logical link control,LLC)层。
网络层406可以协调跨同一网络中的节点的(例如,作为数据报的)传输数据(例如,具有可变长度的传输数据)。网络层406可以将逻辑网络地址转换为物理机器地址。
传输层408可以管理发送和接收质量。传输层408可以提供用于传输数据的协议,例如传输控制协议(TCP)。传输层408可以执行数据包的分割/重组以用于传输,并且可以检测并解释在层402-406中发生的传输错误。会话层410可以发起、维护和终止本地和远程应用程序之间的连接。会话可以用作远程过程交互的一部分。表示层412可以基于已知由应用程序或网络层接受的数据类型来加密、解密和格式化数据。
应用层414可以与控制或管理通信的软件应用程序进行交互。通过这样的应用程序,应用层414可以(例如)识别目的地、本地资源状态或可用性和/或通信内容或格式。各个层402-414可以执行可用并适用的其它功能。
内联网连接组件422被示出在物理层402中操作,内联网连接组件424被示出在链路层404中操作。更具体地,集线器可以在物理层中操作,使得可以关于通信的接收和发送来控制操作。由于集线器缺乏处理通信或过滤数据的能力,因此集线器几乎没有能力在更高水平操作。同时,交换机可以在链路层404中操作,因为交换机能够基于地址(例如,MAC地址)过滤通信帧。
同时,互联网连接组件426、428被示出在更高水平(例如,层406-414)上操作。例如,路由器可以基于地址(例如,IP地址)过滤通信数据包。路由器可以根据地址将数据包转发至特定端口,以便将数据包指引至适当的网络。网关可以在网络层及其以上操作,执行类似的过滤和指引以及数据的进一步转换(例如,跨协议或架构)。
在各种实施方式中,连接管理系统450可以与各个层中的一个、多个、全部或任何层进行交互和/或在各个层中的一个、多个、全部或任何层上操作。例如,连接管理系统450可以与集线器交互,以便动态地调整集线器与哪些终端设备通信。作为另一示例,连接管理系统450可以与桥接器、交换机、路由器或网关进行通信,以便影响该组件选择哪个终端设备作为目的地址(例如,MAC、逻辑或物理地址)。作为另外的示例,连接管理系统450可以监控、控制或指引传输层408上的数据包的分段、会话层410上的会话持续时间、和/或表示层412上的加密和/或压缩。在一些实施方式中,连接管理系统450可以通过与在特定层上操作的设备(例如,在链路层404上操作的交换机)进行交换通信(例如,发送命令至该设备)、通过以特定的方式路由或修改现有通信(例如,在网络设备和终端设备之间的通信)、和/或通过基于现有通信生成包含特定信息(例如,新目的地址)的新通信来与各个层进行交互。因此,连接管理系统450可以通过与各种设备的交互和/或通过影响在各种协议栈层的操作来影响通信路由和通道建立(或维护或终止)。
图5表示根据一实施方式的多设备通信交换系统500。系统500包括网络设备505,该网络设备被配置为在各种类型的通信通道上与各种类型的终端设备通信。
在所描绘的实例中,网络设备505可以通过蜂窝网络(例如,经由基站510)发送通信。通信可以被路由至操作网络515。操作网络515可以包括连接管理系统520,该连接管理系统接收通信并识别哪个终端设备将响应于该通信。这种确定可以取决于识别该通信所属的客户端(例如,基于指示客户端的内容分析或用户输入)并确定与该客户端相关联的一个或多个终端设备中的每个终端设备的一个或多个度量。例如,在图5中,终端设备530a-530c的每个集群可以对应于不同的客户端。终端设备可以在地理上共同定位或分散。可以基于存储的或学习的数据和/或(例如,基于可用性的)实时监控来确定所述度量。
连接管理系统520可以经由一个或多个路由器525或其它互联网连接组件或内联网连接组件与各种终端设备进行通信。连接管理系统520可以在一个或多个数据存储器处收集、分析和/或存储来自(或关于)通信、终端设备操作、客户端规则、和/或与用户相关联的动作(例如,在线活动、账户数据、购买历史等)的数据。这种数据可能影响通信路由。
值得注意的是,还可以使用各种其它设备来影响通信路由和/或处理。例如,在所描绘的实例中,连接管理系统520还连接至网络服务器540。因此,连接管理系统540可以检索感兴趣的数据,例如技术产品细节、新闻、当前产品供应、当前或预测的天气等。
网络设备505还可以连接至网络服务器(例如,包括流网络服务器545)。在一些实例中,与这种服务器的通信提供了发起与连接管理系统520的通信交换的初始选项。例如,网络设备505可以检测到在访问特定网页时通信机会是可获得的并且这种选项可以被呈现。
通信系统500的一个或多个元件也可以连接至社交网络服务器550。社交网络服务器550可以聚合从各种用户设备接收的数据。因此,例如,连接管理系统520可以能够估计针对给定主题的一般(或用户特定)情绪或估计给定用户或用户类别的一般行为。
图6示出了连接管理系统600的实施方式的框图。消息接收器接口605可以接收消息。在一些实例中,例如,可以接收消息作为由源设备(例如,与连接管理系统600分开设置或在同一外壳内)发送的通信的一部分,所述源设备例如网络设备或终端设备。在一些实例中,通信可以是一系列通信的一部分或通信交换,其可以包括在两个设备(例如,网络设备和终端设备)之间路由的一系列消息或消息交换。该消息或通信交换可以是设备之间的交互的一部分和/或可以定义设备之间的交互。通信通道或操作通道可以包括用于促进设备之间的路由和通信交换的一个或多个协议(例如,路由协议、任务分配协议和/或寻址协议)。
在一些实例中,消息可以包括基于在本地或远程用户接口处接收的输入生成的消息。例如,消息可以包括基于按钮或键选择或记录的语音信号生成的消息。在一实例中,该消息包括自动生成的消息,例如在检测到网络设备正在呈现特定的应用页面或网页或者已经提供特定输入命令(例如,键序列)时生成的消息。该消息可以包括指令或请求,例如用于发起通信交换的指令或请求。
在一些实例中,消息可以包括客户端的标识符或与客户端的标识符相关联。例如,消息可以明确标识客户端(或与客户端相关联的设备);该消息可以包括与客户端相关联的网页或应用页面,或和与客户端相关联的网页或应用页面相关联;该消息可以包括与客户端相关联的目的地址,或与客户端相关联的目的地址相关联;或者该消息可以包括项目(例如,产品)的标识或与客户端相关联的服务(例如,通过客户端提出出售的服务、已经通过客户端出售的服务或者客户端提供的服务),或与项目(例如,产品)的标识或与客户端相关联的服务相关联。为了说明,网络设备可以呈现特定客户端的应用页面,该应用页面可以提供将通信发送至代理的选项。在接收到与消息对应的用户输入时,可以生成包含该消息和特定客户端的标识符的通信。
处理引擎610可以处理所接收的通信和/或消息。处理可以包括例如提取特定的一个或多个数据元素(例如,消息、客户端标识符、网络设备标识符、账户标识符等)。处理可以包括转换格式或通信类型(例如,以与特定设备类型、操作系统、通信通道类型、协议和/或网络兼容)。
消息评估引擎615可以评估(例如,提取或接收的)消息。评估可以包括识别例如消息的一个或多个类别或标签。类别或标签类型的示例可以包括(例如)主题、情绪、复杂性和紧急性。分类和给消息加标签之间的不同可以在于类别可以是有限的(例如,根据预定义的一组类别选项),而标签可以是开放的。主题可以包括例如产品、服务、技术问题、使用问题、投诉、退款请求或购买请求。例如,可以基于消息的语义分析(例如,通过识别关键字、句子结构、重复的词、标点符号和/或非文章(non-article)词)、用户输入(例如,已经选择了一个或多个类别)、和/或与消息相关的统计值(例如,键入速度和/或响应延迟)来确定类别或标签。
在一些实例中,消息评估引擎615可以确定对于消息的度量。度量可以包括例如多个字符、单词、大写字母、全部大写的单词或特定字符或标点符号的实例(例如,感叹号、问号和/或句号)。度量可以包括比率,例如以感叹号(或问号)结尾的句子的一部分、全部大写的单词的一部分等。
消息评估引擎615可以在消息数据存储器620中存储消息、消息度量和/或消息统计值。每个消息还可以与其它数据(例如,元数据)相关联地存储,所述其它数据诸如标识对应的源设备、目的设备、网络设备、终端设备、客户端、一个或多个类别、一个或多个阶段和/或与消息相关的统计值的数据。连接管理系统600的各种组件(例如,消息评估引擎615和/或交互管理引擎625)可以查询消息数据存储器620以检索查询响应消息、消息度量和/或消息统计值。
交互管理引擎625可以确定将通信路由至哪个设备以及接收设备和发送设备将如何通信。这些确定中的每个确定可以取决于例如特定的网络设备(或与特定用户相关联的任何网络设备)是否先前已与一组终端设备中的终端设备(例如,与连接管理系统600相关联的任何终端设备、或与一个或多个特定客户端相关联的任何终端设备)进行通信。
在一些实例中,当网络设备(或与正常用户或账户相关联的其它网络设备)在先已经与给定的终端设备(例如,关于与客户端有关的事项)进行通信时,通信路由通常可偏向于该同一终端设备。可能影响路由的其它因素可以包括,例如,与在先通信有关的推断或标识的用户或代理情绪;当前通信的主题(例如,以及与在先通信的主题和/或与一个或多个终端设备或代理相关联的知识库有关的程度);终端设备(或相应的代理)是否可用;和/或终端设备的预测响应延迟。这些因素可以绝对地或相对于与其它终端设备相对应的类似度量来考虑。重新路由规则(例如,客户端特定的或一般的规则)可以指示如何评估和加权这些因素以确定是否放弃代理一致性。
当网络设备(或与同一用户或账户相关联的其它网络设备)在先未与给定的终端设备(例如,关于与客户端有关的事项)进行通信时,可以基于诸如以下的因素执行终端设备的选择:例如,各种代理的知识库与通信主题对应的程度、各种代理在给定时间和/或通道类型上的可用性、(例如,与客户端相关联的)终端设备的类型和/或能力、用户和代理之间的语言匹配度、和/或个性分析。在一实例中,规则可以标识如何确定对诸如这些的一个或多个因素的子分数以及分配给每个分数的权重。通过组合(例如,求和)加权子分数,可以确定每个代理的分数。然后可以通过比较终端设备的分数(例如,选择高分数或最高分数)来进行终端设备的选择。
关于确定设备如何通信,交互管理引擎625可以(例如)确定终端设备是否通过(例如)电子邮件、在线聊天、SMS消息、语音呼叫、视频聊天等来响应通信。可以基于以下项来选择通信类型:例如,通信类型优先级列表(例如,至少部分地由客户端或用户来定义)、先前从网络设备接收的通信的类型(例如,以便促进一致性)、接收的消息的复杂性、网络设备的能力、和/或一个或多个终端设备的可用性。显然,一些通信类型将导致实时通信(例如,期望快速消息响应的情况),而其它通信类型可能导致异步通信(例如,消息之间的延迟(例如,几分钟或几小时)是可接受的)。
此外,交互管理引擎625可以确定是否应该建立、使用或终止两个设备之间的连续通道。可以构造连续通道,以便促进从网络设备到指定终端设备的未来通信的路由。即使经过消息系列(例如,数天、数周或数月),这种偏向也会持续。在一些实例中,连续通道的表示(例如,标识代理)可以包括在网络设备上待呈现的呈现中。以这种方式,用户可以理解该通信将被一致地路由以便提高效率。
在一实例中,可以使用本文描述的一个或多个因素和规则(例如,包括所述一个或多个因素中的每个的权重)来生成分数,以确定对应于给定的网络设备和终端设备的连接分数。该连接分数可以与整体匹配度或特定于给定的通信或通信系列的匹配度有关。因此,例如,该分数可以反映预测给定终端设备适合于对网络设备通信进行响应的程度。在一些实例中,分数分析可以用于标识将路由给定通信的每个终端设备以及是否建立、使用或终止连接通道。当分数分析用于处理路由决策和通道决策两者时,可以以相同、类似或不同的方式来确定与每个决策相关的分数。
因此,例如,将理解,根据分数是预测长期匹配的强度还是响应特定消息查询的强度,可以考虑不同因素。例如,在前一种实例中,对总体时间表和时间区域的考虑可能是重要的,而在后一种实例中,立即可用性可能有更高的权重。可以针对单个网络设备/终端设备组合来确定分数,或者可以确定多个分数,每个分数的特征在于给定网络设备和一不同的终端设备之间的匹配度。
为了说明,可以评估用于潜在通信路由的与客户端相关联的一组的三个终端设备。可以为每个设备生成与特定通信的匹配度有关的分数。前两个终端设备中的每个终端设备可以在先已经与已传输该通信的网络设备通信。来自网络设备的输入可以已经表示对与第一设备的(一个或多个)通信的交互感到满意。因此,第一设备、第二设备和第三设备的(根据规则计算的)过往交互子分数(past-interact sub-score)可以分别是10、5和0。(负满意度输入可以产生负的子分数。)可以确定仅第三终端设备是立即可用的。可以预测第二终端设备将在15分钟内可用于响应,但是第一终端设备将在第二天之前不可用于响应。因此,第一设备、第二设备和第三设备的快速响应子分数(fast-response sub-score)可以是1、3和10。最后,可以估计(与终端设备相关联的)代理了解通信中的主题的程度。可以确定与第三终端设备相关联的代理比与其它两个设备相关联的代理更了解,从而得到的子分数为3、4和9。在该示例中,规则不包括加权或归一化参数(虽然,在其它实例中,规则可以包括加权或归一化参数),从而得到的分数为14、11和19。因此,规则可以指示消息将被路由至具有最高分数的设备,即第三终端设备。如果到特定终端设备的路由不成功,则可以将消息路由至具有次高分数的设备,依此类推。
可以将分数与一个或多个绝对阈值或相对阈值进行比较。例如,可以将一组终端设备的分数相互比较以确定高分,从而选择通信可以被路由至的终端设备。作为另一示例,可以将分数(例如,高分数)与一个或多个绝对阈值进行比较,以确定是否建立与终端设备的连续通道。用于建立连续通道的总阈值可以(但不必须)高于用于在给定的一系列消息中一致地路由通信的阈值。总阈值和用于确定是否一致地路由通信的阈值之间的这种差异可能是因为考虑到通道的扩展效用,强匹配在连续通道环境中是重要的。在一些实施方式中,用于使用连续通道的总阈值可以(但不必须)低于用于建立连续通道的阈值和/或用于在给定的一系列消息中一致地路由通信的阈值。
交互管理引擎625可以在各种上下文中与账户引擎630交互。例如,账户引擎630可以在账户数据存储器635中查找网络设备或终端设备的标识符,以识别与该设备相对应的账户。此外,账户引擎630可以维护关于先前通信交换的数据(例如,时间、涉及的(一个或多个)其它设备、通道类型、解决阶段、(一个或多个)主题和/或相关联的客户端标识符)、连接通道(例如,对于一个或多个客户端中的每个客户端,指示:是否有任何通道存在、与每个通道相关联的终端设备、建立时间、使用频率、上次使用的日期、任何通道约束和/或支持的通信类型)、用户或代理偏好或约束(例如,关于终端设备选择、响应延迟、终端设备一致性、代理专业知识、和/或通信类型偏好或约束)、和/或用户或代理特征(例如,年龄、所说的或优选的(一种或多种)语言、地理位置、兴趣等)。
此外,交互管理引擎625可以向账户引擎630提醒各种连接通道(connection-channel)动作,使得可以更新账户数据存储器635以反映当前通道数据。例如,在建立通道时,交互管理引擎625可以通知账户引擎630的建立,并且识别网络设备、终端设备、账户和客户端中的一者或多者。(在一些实例中)账户引擎635可以随后通知用户该通道的存在,使得该用户可以意识到代理一致性是有用的。
交互管理引擎625还可以与客户端映射引擎640交互,客户端映射引擎640可以将通信映射至一个或多个客户端(和/或相关联的品牌(brand))。在一些实例中,从网络设备本身接收的通信包括对应于客户端的标识符(例如,客户端、产品、服务器、网页或应用页面的标识符)。该标识符可以作为消息的一部分(例如,可以检测哪个客户端映射引擎640)而被包含或作为包含消息的通信中的其它数据而被包含。然后,客户端映射引擎640可以在客户端数据存储器645中查找该标识符,以检索关于客户端和/或客户端的标识符的附加数据。
在一些实例中,消息可能不特别对应于任何客户端。例如,消息可以包括一般查询。客户端映射引擎640可以例如对消息执行语义分析、识别一个或多个关键字并且标识与(一个或多个)关键字相关联的一个或多个客户端。在一些实例中,标识单个客户端。在一些实例中,标识出多个客户端。然后可以经由网络设备呈现每个客户端的标识,使得用户可以选择要与之(例如,经由相关联的终端设备)通信的客户端。
客户端数据存储器645可以包括与客户端相关联的一个或多个终端设备(和/或代理)的标识。终端路由引擎650可以检索或收集与一个、多个或所有的这种终端设备(和/或代理)中的每个终端设备(和/或代理)有关的数据,以便影响路由确定。例如,终端路由引擎650可以维护终端数据存储器655,终端数据存储器655可以存储诸如终端设备的设备类型、操作系统、通信类型(communication-type)能力、安装的应用程序附件、地理位置和/或标识符(例如,IP地址)的信息。信息还可以包括代理信息,诸如经验水平、职位、技能水平、知识库(例如,代理了解的各种主题和/或对于各种主题的知识水平)、个性度量、工作时长、所说的(一种或多种)语言和/或人口统计信息。某些信息可以动态地更新。例如,基于(例如)来自终端设备的通信(例如,标识该设备是否处于睡眠状态、是否关闭/开启、是否空闲/活动,或标识是否在一段时间内已收到输入)、通信路由(例如,指示终端设备是否参与通信交换或被分配为通信交换的一部分)、或者来自网络设备或终端设备的指示通信交换已经结束或开始的通信,可以动态地更新指示终端设备是否可用的信息。
应当理解,在各种上下文中,参与一个或多个通信交换不一定表示终端设备不可用于参与另一通信交换。例如通信类型(例如,消息、电子邮件、聊天、电话)、客户端标识的或用户标识的目标响应时间、和/或系统负载(例如,通常是或关于用户)的各种因素可能影响终端设备可参与多少交换。
当交互管理引擎625已经标识了参与通信交换或连接通道的终端设备时,交互管理引擎625可以通知终端路由引擎650,终端路由引擎650可以从终端数据存储器655检索关于该终端设备的任何相关数据,诸如目的地址(例如IP地址)、设备类型、协议等。然后,(在一些实例中)处理引擎610可以修改该包含消息的通信或者生成新的通信(包含消息)以便具有特定的格式、遵守特定的协议等。在一些实例中,新的或修改后的消息可以包括附加数据,例如对应于网络设备的帐户数据、消息记录和/或客户端数据。
然后,消息发送器接口660可以将该通信发送至终端设备。该发送可以包括例如通向容纳在单独外壳内的设备的有线或无线发送。终端设备可以包括在相同或不同的网络(例如,局域网)中的作为连接管理系统600的终端设备。因此,将通信发送至终端设备可以包括将通信发送至互联网连接组件或内联网连接组件。
将理解,连接管理系统600可以包括通信服务器180。例如,连接管理系统600可以启用远程控制能力,以用于在网络设备和终端设备之间的通信会话过程中控制在移动设备上运行的移动应用程序。将理解,连接管理系统600可以使用通信服务器180、网络设备105和/或终端设备115来执行如本文所述的过程800至1200中的任何一个过程。
图7示出了用于实时远程控制移动应用程序的交互环境700的表示。交互环境700可以包括网络设备705、通信服务器710和终端设备715。此外,交互环境700可以促进对正在网络设备705上运行的移动应用程序的远程控制。例如,终端设备715可以远程地控制正在网络设备705上运行的移动应用程序。在一些示例中,移动应用程序(例如,本机移动应用程序)可以包括可执行的代码(存储在移动设备中或在一个或多个外部服务器处),可以使用网络设备705(例如,智能手机)的操作系统来执行该代码。在一些示例中,移动应用程序可以包括混合移动应用程序,该混合移动应用程序包括(在移动设备处生成并存储的)本机用户界面(UI)组件,但该混合移动应用程序是以解释语言(例如,使用基于Web的编码语言)来编写的。本发明不限于本机移动应用程序或混合应用程序,因此,可以在本文描述的方法中使用任何类型的移动应用程序。
网络设备705和终端设备715每者均可以包括例如便携式电子设备(例如,智能电话、平板电脑、笔记本电脑或智能可穿戴设备)或非便携式电子设备(例如,一个或多个台式计算机、智能家电、服务器和/或处理器)。此外,网络设备705可以是与终端设备715不同的设备。尽管图7示出了为智能电话的网络设备705和为台式计算机的终端设备715,但将理解的是,网络设备705和终端设备715中的每者可以是任何便携式电子设备或非便携式电子设备。
在一些实例中,网络设备705可以由用户(例如客户)操作,并且终端设备715可以由代理操作。当在网络设备处接收到与移动应用程序的选择相对应的输入时,可以执行存储在网络设备705上的该移动应用程序。例如,用户可以在表示移动应用程序的图标的位置处轻敲或触摸网络设备705的屏幕,并且可以执行移动应用程序。执行移动应用程序可以包括在网络设备705上启动或运行该应用程序。此外,移动应用程序可以包括存储在网络设备705上的程序代码。该程序代码可以包括可以嵌入该程序代码的代码(例如,软件开发工具包(SDK))的一部分。嵌入在移动应用程序中的SDK可以包括用于执行任务的指令或一组操作,该指令或一组操作使得终端设备(例如,终端设备715)能够远程地控制在网络设备(例如,网络设备705)上执行的移动应用程序。例如,程序代码在执行时可以启动移动应用程序并且可以执行图7-图12中描述的过程。在一些实例中,当移动应用程序的执行开始时,可以建立网络设备705和终端设备715之间的通信会话。例如,可以在网络设备705处接收输入,该输入对应于通过移动应用程序呈现的按钮的选择(例如,触摸或轻敲)。轻敲或触摸按钮可以使得与终端设备(例如,终端设备715)建立通信会话。通信会话可以促进在网络设备705上执行的移动应用程序的实时屏幕共享。例如,实时屏幕共享可以包括网络设备705和终端设备715之间的双向交互。在一些实例中,通信会话还可以包括语音通道或视频通道。例如,用户和代理可以在语音通道或视频通道上彼此通信。用于建立通信会话的示例方法在下面进一步详细地描述。
此外,终端设备715可以由代理操作。在一些实例中,代理可以使用在终端设备715上运行的浏览器访问网站。例如,该网站可以包括在终端设备715的浏览器上运行的控制台。代理可以使用浏览器登录该控制台。在允许代理获取对控制台或包含在控制台中的网络应用程序的访问权之前,可以使用一个或多个登录凭证(例如,用户名、密码等)来验证代理的身份。控制台的示例可以包括平台(该平台包括一个或多个API(应用程序编程接口))、包括一个或多个功能的仪表板、在能够建立或加入通信会话的网页浏览器上运行的网络托管(web-hosted)应用程序(而不需要下载插件)、以及合适的其它界面。此外,控制台可以包括可以执行的一个或多个网络应用程序或功能。该网络应用程序或功能可以在浏览器、通信服务器710、本地服务器、远程服务器或合适的其它计算设备上执行。例如,所述一个或多个网络应用程序可以建立通信会话,该通信会话用于通过移动应用程序呈现的屏幕的实时屏幕共享。在该示例中,终端设备715可以显示由在网络设备705上运行的移动应用程序呈现的屏幕。此外,操作终端设备715的代理可以控制通过(例如,使用控制台中包含的网络应用程序)建立的通信通道在网络设备705上运行的移动应用程序的各个方面(例如,输入元素)。
有利地,当移动应用程序在网络设备705上执行时,操作网络设备705的用户不需要下载任何插件或附加软件来加入或建立通信会话并且与操作终端设备715的代理共享网络设备705的屏幕。移动应用程序的程序代码包括一组操作(例如,SDK),该操作可以建立、管理和终止网络设备705与终端设备715之间的实时的屏幕共享通信会话。作为非限制性的示例,在网络设备705上执行的移动应用程序可以接收与在网络设备705的屏幕上显示的图标的选择(例如,轻敲、双轻敲、触摸、选择、点击)相对应的输入。一旦选择,该图标就可以启动移动应用程序。然后,该移动应用程序可以在网络设备705的屏幕上呈现一个或多个页面。在一些实例中,该一个或多个页面可以包括按钮,当该按钮被选择时,可以发起与操作终端设备(例如,终端设备715)的代理的通信会话。在该示例中,通信会话可以使代理能够实时地查看并控制在网络设备705上呈现的屏幕。此外,可以建立通信会话,而无需用户或代理下载任何附加插件或代码来实现网络设备的实时屏幕共享。例如,在网络设备705上执行的移动应用程序的程序代码可以包括使用户能够加入通信会话的代码(例如,SDK)的一部分。类似地,代理可以邀请用户加入通信会话以进行实时屏幕共享,而无需下载任何附加插件或代码来实现该实时屏幕共享。例如,在终端设备715的浏览器处执行(或由浏览器访问)的网络应用程序可以包括可以建立、管理或终止通信会话的功能或一组操作。
此外,作为优势,在通信会话过程中用户和代理两者都可以同时执行动作(例如,输入事件),而无需手动地将控制移交至另一者。例如,用户可以在(在网络设备705上执行的)移动应用程序内执行手动动作(例如,在文本输入框中键入文本)。监控用户的动作,以及捕获、传输并且在终端设备715上显示移动应用程序的显示屏幕的改变(例如,键入字母、放大、缩小、滚动等)。例如,可以在终端设备715上实时再现在网络设备705上执行的移动应用程序的显示屏幕的图像。此外,代理可以对图像执行动作(例如,点击),并且可以在在网络设备705处执行的移动应用程序中实时地捕获、传输和复制代理的动作。
在网络设备705处执行的移动应用程序可以由实体或客户端(例如,公司)开发。移动应用程序的程序代码可以包括实现或支持通信会话的代码(例如,库、操作、指令、进程等)的一部分,该通信会话用于在网络设备705处执行的移动应用程序的实时屏幕共享和协作浏览。例如,移动应用程序可以包括SDK,并且该SDK可以包括内置在移动应用程序中的用以在通信会话过程中支持实时远程控制能力的移动代码库。该SDK可以为移动应用程序添加功能,例如屏幕共享、远程应用程序控制、语音传输和视频传输。例如,SDK可以在Android或iOS操作系统上运行。将理解,SDK也可以在其它操作系统上运行。
作为另一示例,远程应用程序控制可以是代理远程地控制在网络设备705上执行的移动应用程序而无需在代理的物理位置处访问特定移动应用程序或网络设备的能力。远程控制的示例可以包括通过复制输入事件(例如,触摸、点击、滚动等)和文本输入(例如,键入)来控制网络设备705处的触觉的用户输入动作。此外,操作终端设备715的代理可以(或可以不)与实体或客户端相关联。通过终端设备715的浏览器访问的控制台、网站或网络应用程序可以(或可以不)与实体或客户端相关联。例如,移动应用程序可以由一实体管理或操作,并且控制台、网站或网络应用程序可以由另一实体管理或操作。
通信服务器710可以包括一个或多个服务器,该一个或多个服务器被配置为在网络设备705和终端设备715之间建立通信会话。此外,通信服务器710可以与通信服务器180相同。例如,通信服务器710可以是在通信会话过程中网络设备705和终端设备715通过其交换数据(例如,消息、媒体流、屏幕截图、事件数据等)的服务器。
在一些实例中,为了在网络设备705和终端设备715之间建立通信会话,终端设备715可以向网络设备705发送邀请消息。例如,终端设备715可以在通信服务器710上创建特定通信会话。创建特定通信会话可以包括定义通信会话的功能和设置。此外,通信服务器710可以发出针对由终端设备715创建的特定通信会话的邀请。然后终端设备715可以在邀请消息中将邀请发送至网络设备705。例如,邀请消息可以包括表示对加入该特定通信会话的请求的数据。在一些实例中,可以使用消息传送服务(例如,文本消息、异步消息传送服务器、聊天消息等)将邀请消息发送至网络设备705。如果通信服务器710接收到来自网络设备705的接受消息,则网络设备705可以加入在通信服务器710上创建的特定会话。例如,通信会话可以以网络设备705和终端设备715之间的握手开始。在一些实例中,通信会话可以是实时通信会话,该实时通信会话使得终端设备715能够远程控制在网络设备705上运行(例如,执行)的应用程序。有利地,如果操作网络设备705的用户正在经历在网络设备705上执行的移动应用程序的问题,则可以使用通信服务器710建立通信会话,这允许终端设备715与网络设备705的用户协作地操纵该移动应用程序。
在一些实例中,终端设备715可以从应用程序服务器(例如,与嵌入到在网络设备705上执行的应用程序中的SDK进行通信的服务器)请求服务标识符。在一些实例中,所述服务标识符可以是数据的任何字母数字串,并且可以使用任何通信手段被发送至网络设备705。例如,可以使用文本消息、电子邮件、通过电话呼叫、聊天消息、IP语音呼叫和合适的其它通信手段将服务标识符发送至网络设备705。此外,网络设备705可以从应用程序服务器获得服务标识符。网络设备705可以使用该服务标识符从通信服务器710请求通信会话。在接受所述请求之后,可以建立终端设备715和网络设备705之间的通信会话。在一些实例中,在网络设备705上执行的移动应用程序可以接收与(在网络设备705上执行的应用程序内的)按钮的选择(例如,点击、轻敲、触摸)相对应的输入。在选择按钮之后,网络设备可以自动地连接至可用的终端设备,并且可以开始网络设备和终端设备之间的实时通信会话。
参考图7的示例性说明,当执行时,移动应用程序可以包括在网络设备705上显示的一个或多个页面。将理解,移动应用程序可以在网络设备705上呈现任意数量的页面。例如,移动应用程序可以呈现显示页720,该显示页可以包括输入元素725、730和735。显示页720可以是包括任何数量的输入元素的页面,或者是根本没有输入元素的页面。此外,显示页720可以包括背景图像、前景图像或任何(一个或多个)其它图像的任意组合。在一些实例中,显示页720可以是交互式的,因为显示页720可以响应由操作网络设备705的用户提供的交互或输入。例如,显示页720可以由操作网络设备705的用户滚动(例如,向上、向下、侧向)、放大、缩小或进行任何合适的其它交互。
输入元素可以是被配置为接收输入数据的用户界面元素。输入元素的示例可以包括按钮、单选按钮、开关、下拉菜单、分段控件、文本输入框、文本区域、滚动元素(例如,启动滚动特征的箭头)、以及合适的其它输入元素。输入元素可以处于初始状态(例如,未被选择的按钮、空文本输入框、未选择或已选择的单选按钮等)。输入元素还可以基于与操作网络设备705的用户的交互来接收输入数据。例如,文本输入框可以基于由用户在显示在网络设备705上的键盘上执行的键击(或键轻敲)来接收字符字母(例如,输入数据)。此外,输入元素可以与定义的动作和/或定义的输入边界相关联。与输入元素相关联的定义的动作和输入边界可以被编码至移动应用程序中并且可以由网络设备705的操作系统访问。定义的动作的示例可以包括切换单选按钮、选择文本输入框、将字符输入文本输入框、删除文本输入框中的字符、选择按钮、滚动显示屏幕以及合适的其它的动作。特定的输入元素可以与编码在移动应用程序中的特定的定义动作(defined action)相关联。此外,输入边界可以是用于接收输入数据(例如,键击、按钮或单选按钮的选择等)的区域。此外,输入边界可以是任何形状(例如,矩形、圆形、椭圆形、正方形等)。例如,用于文本输入框的输入边界可以包括可以键入文本的框的区域。
在一些实例中,移动应用程序可以包括内容捕获引擎765。例如,内容捕获引擎765可以被配置为连续捕获与移动应用程序相关的内容数据。内容数据的示例可以包括:在网络设备705的屏幕上显示的屏幕截图、图像、视频数据、内容、媒体等;在网络设备705的相机处捕获的视频数据;在网络设备705的麦克风处捕获的音频数据;表示输入事件(例如,轻敲、滑动、点击等)的数据,元数据(例如,与屏幕截图、图像、视频、表示输入事件的数据等相关联的元数据);以及合适的其它内容。作为非限制性的示例,在通信会话过程中,移动应用程序可以周期性地(例如,每毫秒、每秒、每几秒、每分钟等)捕获由在网络设备705上执行的移动应用程序所呈现的屏幕的屏幕截图。然后,移动应用程序可以生成包含内容数据的数据流。作为非限制性的示例,WebRTC(网络实时通信)协议可以用于编码(例如,下采样)内容数据并且生成用于通过通信服务器710发送至终端设备715的数据流。将理解,可以使用其它协议来对内容数据进行编码并且将包含该内容数据的数据流发送至终端设备715。在通信会话过程中,编码数据流(encoded data stream)可以从网络设备705发送至通信服务器710。然后,通信服务器710可以在通信会话过程中将该编码数据流发送至终端设备715,以促进与通信会话相关联的实时屏幕共享和远程控制能力。从网络设备发送的数据流可以包括通信会话、网络设备、终端设备的标识符、或与通信会话相关联的其它标识参数。
有利地,数据流包括内容数据(例如,移动应用程序的连续屏幕截图),并且事件监听器分别检测在代理的界面和/或移动应用程序处执行的输入事件。使用事件监听器使得代理能够以对网络和处理资源的通信通道施加最小负担的方式远程地控制在用户的移动设备上运行的移动应用程序。使用事件监听器可以增强终端设备和网络设备之间的实时通信的速度和可靠性。例如,可以改进用户的移动设备的操作,因为事件复制器复制由在代理的设备上操作的事件监听器检测到的事件。因为处理了一组特定的输入事件(例如,点击或轻敲)并且过滤掉了其它事件(例如,代理的光标移动),所以从代理设备发送至用户的设备的数据(例如,检测的点击的坐标)可以最少化,以便减少在用户的设备处经历的处理负荷。此外,输入事件(例如,点击,但不是光标的移动)从代理的设备发送至用户的移动设备,并且该最少量的数据减少了在通信会话过程中在用户的移动设备处经历的延迟。
当终端设备715接收到编码数据流时,终端设备715可以从该数据流中提取内容数据并显示(或输出)该内容数据。在一些实例中,终端设备715可以显示内容740。例如,内容740可以包括由在网络设备705上执行的移动应用程序呈现的屏幕的实时(例如,当前)视频。内容740可以基于在网络设备705处由内容捕获引擎765捕获的内容数据。在持续的基础上(例如,连续地)接收数据流。这样,当修改显示页720时(例如,通过向下滚动),显示页720的修改实时地表示在终端设备715上的内容740中。作为另一示例,包含在数据流中的内容数据可以包括在网络设备705的麦克风处捕获的音频数据。在该示例中,内容740可以在终端设备715处输出。此外,在该示例中,输出内容740可以包括使用终端设备715的扬声器将音频数据转换为声音,而不是如图7所示显示内容740。
事件监听器755可以包括执行功能的可执行的代码或一组操作。在一些实例中,可以在在终端设备上运行的网络浏览器处运行事件监听器755,并且在其它实例中,可以在通信服务器710处运行事件监听器755。此外,事件监听器755可以检测由代理在终端处执行的输入事件。输入事件的示例可以包括鼠标点击(单击或双击)、轻敲、双轻敲、触摸、滑动、滚动、多点触摸、施加在终端设备上并且在终端设备的运动传感器或陀螺仪处检测到的特定移动或手势、以及其它合适的输入事件。作为非限制性的示例,如果代理选择(例如,点击)内容740的位置,则可以通过事件监听器755检测到该选择(例如,点击)。
参考图7中的示例性说明,指针(pointer)745可以根据终端设备715的鼠标设备(未示出)检测到的移动而移动。例如,代理可以操作鼠标设备以围绕终端设备715的屏幕移动指针745。在任何时间,代理可以手动地执行点击750,该点击可以作为在终端设备715上运行的网络浏览器处的输入事件由事件监听器755检测。当事件监听器755检测到该在终端设备715的网络浏览器处的输入事件时,事件监听器755可以生成与检测到的该输入事件相对应的选择数据。例如,当事件监听器755检测到点击750时,事件监听器755可以确定点击750发生的位置的坐标(例如,x坐标和y坐标)。该坐标可以包含在由事件监听器755生成的选择数据中。选择数据的其它示例可以包括与点击750的处理相关联的元数据(例如,点击的时间、点击的持续时间、点击是单击还是双击等)、点击是点击左键还是点击右键、以及其它合适的数据。在事件监听器755检测到输入事件之后,事件监听器755可以生成与在终端设备715处执行的选择相关联的选择数据,然后将所述选择数据发送至通信服务器710。通信服务器710可以接收该选择数据并将该选择数据发送至网络设备705。
在一些实例中,当在网络设备705处接收到选择数据时,网络设备705可以复制(在终端设备715处检测到的)输入事件。例如,移动应用程序可以包括事件复制器760。事件复制器760可以包括执行复制输入事件的功能的可执行的代码或一组操作。此外,事件复制器760可以通过嵌入在移动应用程序中的SDK运行。在一些实例中,事件复制器760可以检索在网络设备705处接收到的选择数据,并且执行复制输入事件的功能,就像输入事件已经在网络设备705处发生一样。例如,如果选择数据包括点击750的位置的一组坐标,那么事件复制器760可以网络设备705上复制点击750,就像操作网络设备705的用户手动地执行点击750一样。在该示例中,由于点击750基于包含在选择数据中的坐标组,因此事件复制器760可以在网络设备705的相同屏幕位置处复制点击750。该组坐标可以被转换为网络设备的屏幕尺寸,网络设备可以具有与终端设备不同的屏幕尺寸。
事件复制器760可以根据网络设备705的操作系统而使用不同的过程来复制检测到的输入事件。对于支持在应用程序编程水平上调度合成事件(例如,复制事件)的操作系统,可以使用以编程方式生成合成事件来在网络设备705上复制输入事件,以复制远程生成的输入事件(例如,在终端设备715处生成的点击750)。图8进一步描述了用于在支持调度合成事件的操作系统上复制远程生成的事件的过程。例如,Android操作系统支持调度在远程设备上生成的合成事件。在一些实例中,合成事件对于这些操作系统(例如,Android)是可信的,并且合成事件触发相同的定义动作,就像操作网络设备705的用户已经执行输入事件(例如,轻敲或点击)一样。
对于不支持调度合成事件的操作系统,该操作系统可能不信任远程生成的输入事件。在不支持调度合成事件(例如,远程生成的鼠标点击)的情况下,可以不在网络设备705处复制在终端设备715处生成的输入事件。例如,iOS平台和操作系统不支持调度合成事件。然而,根据本发明的实施方式,图9描述了用于在网络设备705处模仿或复制远程生成的事件的过程,以在通信会话过程中实现远程控制能力。
在一些实例中,导航在网络设备705上执行的移动应用程序的用户可以发起与操作终端设备715的代理的通信会话的建立。在通信会话过程中,终端设备715可以远程控制在网络设备705上执行的移动应用程序。然而,隐私是主要关注点,因为代理可以查看在网络设备705上运行的移动应用程序的实时视频或图像。根据本发明的实施方式,移动应用程序可以掩藏包含敏感信息的输入元素,从而代理无法查看输入区域中包含的该敏感信息。
在一些实例中,可以在移动应用程序的程序代码中将一个或多个输入元素标记为敏感数据字段。例如,移动应用程序的程序代码可以包括与特定输入区域相关联的标志代码或元数据。与输入区域相关联的标志代码或元数据的存在可以指示该输入区域被配置为接收敏感数据(例如,用户的年薪、社会保险号等)。作为另一示例,可以通过使用由SDK提供的输入元素(例如,文本输入框)的插入类来掩藏移动应用中所包含的输入元素。此外,当移动应用程序正在执行时,移动应用程序可以监控该移动应用程序的由操作网络设备705的用户正在查看的页面。移动应用程序的每个页面可以与一个或多个输入元素的层级相关联。例如,如果移动应用程序包括两个不同的页面,则第一页面可以与包含在该第一页面上的第一输入元素的层级相关联,而第二页面可以与包含在该第二页面上的第二输入元素的层级相关联。在该示例中,如果第二页面包含预先标记的敏感输入元素,并且如果当前正在网络设备705上查看第二页面,则SDK可以确定正在查看该敏感输入元素。在一些实例中,移动应用程序中所包含的SDK可以监控正在查看的页面,以确定正在查看敏感输入元素的发生。
继续上述示例,当查看第二页面时,内容捕获引擎(例如,内容捕获引擎765)捕获第二页面的内容。例如,内容捕获引擎可以捕获第二页的屏幕截图。此外,SDK可以识别出已经捕获敏感输入元素的屏幕截图,因此,在该屏幕截图被下采样并发送至通信服务器之前,SDK可以执行用于掩藏该敏感输入元素的隐私协议。例如,该隐私协议可以在捕获的屏幕截图上搜索敏感输入元素,并确定该敏感输入元素的位置和边界(例如,输入元素的角(corner)的坐标)。此外,隐私协议使用所确定的位置和边界来确定要掩藏哪些区域。例如,隐私协议可以包含绘制算法,该绘制算法将敏感输入元素的边界内的每个像素替换成替换颜色或图案(例如,导致敏感输入元素所在的黑色矩形的黑色像素)。然后可以(例如,使用WebRTC协议)对具有掩藏区域的屏幕截图进行编码,使得当在终端设备715上再现作为内容740的屏幕截图时,再现的屏幕截图包括该掩藏区域。因此,防止代理查看包含在敏感输入元素中的原始数据,然而,当用户正在查看移动应用程序的页面时不阻挡该敏感输入元素。在一些示例中,隐私协议可以是用于保护用户和代理之间的通信的一组指令。例如,隐私协议可以被配置为掩藏移动应用程序中呈现的输入元素中所包含的敏感数据。作为另一示例,隐私协议可以被配置为显示输入元素,但是防止代理操纵包含在显示的输入元素中的任何内容数据。
将理解,在通信会话过程中,隐私协议还可以限制对移动应用程序的实时屏幕共享。例如,通信会话只能在执行移动应用程序时促进网络设备屏幕的实时屏幕共享。当移动应用程序终止(例如,关闭应用程序)时,通信会话停止,并且代理不再能够查看网络设备的实时屏幕内容。此外,如果移动应用程序仍在执行,但作为后台进程,则代理将仅看到黑色像素作为内容740。当移动应用程序不再在后台运行时,代理可以再次看到网络设备的实时屏幕内容。此外,隐私协议在被执行时可以将实时屏幕共享限制为:仅包含在移动应用程序中的所有页面的页面子集。还将理解,隐私协议可以防止对移动应用程序中的某些输入元素的输入(“读取”和“写入”两者)。例如,如果标记了特定(例如,与指示阻止读取和写入功能的标记代码相关联)的输入元素,则将阻止代理控制该特定输入元素。例如,将阻止代理选择该输入元素和输入文本字符。
在一些实例中,未授权设备(例如,黑客设备)可能寻求获得对通信会话的远程控制能力。通信服务器可以存储通信会话、网络设备、终端设备等的标识符。如果通信服务器确定未知设备(例如,没有相应的标识符的设备)已加入通信会话,则该通信服务器可以终止通信会话或从通信会话中踢出该未知设备。在一些实例中,如果操作网络设备的用户确定未授权设备已获得对通信会话的远程控制能力(例如,黑客正在远程控制在网络设备上执行的移动应用程序),则通信会话可容易地被终止。例如,用户可以简单地选择“主页”按钮(例如,或网络设备上填入主菜单的任何按钮)来终止通信会话。在其它实例中,用户可以重启网络设备,或终止移动应用程序以终止或结束通信会话(并且因此终止与通信会话相关联的远程控制能力)。
将理解,视频通道和语音通道可以并入网络设备705和终端设备715之间的通信会话中。例如,如果视频通道能力被并入用于实时屏幕共享的通信通道中,则可以在网络设备和终端设备中的每者上显示覆盖(overlay)元素。例如,覆盖元素可以包括视频馈送。在该示例中,网络设备将包含在移动应用程序上显示的覆盖元素,并且终端设备将包含在网络浏览器或网络应用程序上显示的覆盖元素。网络设备的内容捕获引擎将不捕获在移动应用程序的屏幕上显示的覆盖元素,以便避免捕获代理的屏幕截图。此外,通过防止覆盖元素被内容捕获引擎捕获,可以减少所传输的数据流的带宽。还将理解,嵌入在网络设备上执行的移动应用程序中的SDK还可以包括事件监听器,并且终端设备可以包括事件复制器。例如,如果用户轻敲移动应用程序内的不对应于输入元素的屏幕区域,则可以在SDK的事件监听器处检测到用户的轻敲并且在终端设备处视觉地复制(例如,通过在短时间内显示的圆圈来复制)。这允许代理视觉地确定用户在移动应用程序上轻敲哪里。
在一些示例中,代理可以在当前未运行移动应用程序时(例如,在待机模式下)通知用户的移动设备。当用户接受初始音频呼叫时,代理可以执行若干类型的附加邀请中的一种或多种。例如,代理可以继续在音频呼叫中与用户通话,代理可以发送用于音频-视频通信会话的邀请(在这种情况下,如果用户接受,则用户可以与之代理通话并在视觉上看到代理,反之亦然),和/或代理可以发送用于音频呼叫和可控通信会话(controllablecommunication session)的邀请,在可控通信会话中代理可以远程控制在移动设备上运行的移动应用程序。当代理呼叫时移动应用程序当前未运行时,移动应用程序可以配置为在移动设备上显示推送通知,使得当选择推送通知消息时,移动应用程序可以开始在移动设备上运行。在一些示例中,选择推送通知消息可以自动地引起可控通信会话的发起。在一些示例中,当用户选择显示在移动设备的屏幕上的推送通知消息时,例如,可以从用户请求附加信息(例如,姓名、电话号码、许可和合适的其它信息)。在一些示例中,可以不呈现推送通知,而是可以在用户的移动设备上自动地发起可控通信会话。
在一些示例中,当代理与用户通信时,通信可以逐步升级至各种水平。例如,用户可能正在聊天会话中与代理通信(例如,用户可能正在使用用户的台式电脑或用户的移动设备)。如果用户请求附加的帮助,则代理可以直接从代理的界面呼叫用户的移动电话。当用户的移动设备接收到代理的音频呼叫时,音频呼叫可以使推送通知呈现在移动设备上。例如,推送通知可以指示选择该推送通知可以发起音频呼叫、音频/视频呼叫、和/或可控通信会话,在可控通信会话中代理可以远程地控制用户对移动应用程序的使用。如果发起音频/视频呼叫,则代理和用户可以视觉地进行通信。例如,代理的界面可以显示在移动设备上的用户相机的视频馈送。作为另一示例,用户可以提供与代理共享移动设备的后置摄像头的许可。通信会话可以提升至另一类型的通信。继续上面的示例,代理可以在音频/视频呼叫过程中向移动设备发送加入可控通信会话的邀请。在用户的移动设备上,可以向用户呈现通知,这使得用户能够接受加入可控通信会话的邀请。在接受之后,例如,内容捕获引擎开始捕获用户的移动设备(其正在执行移动应用程序)的屏幕截图,并且事件复制器开始复制在代理的设备处检测到的任何事件。除了从用户的移动设备接收的视频馈送之外或代替从用户的移动设备接收的视频馈送,可以在代理的界面上显示移动应用程序的屏幕的内容。在该示例中,所述多个水平包括音频呼叫、音频/视频呼叫、以及可控通信会话。
将理解,操作终端设备的代理可以由机器人脚本而不是由人控制。例如,用户可以与由计算机程序(例如,机器人代理)控制的代理进行通信,并且该代理被配置为重放在先记录的指令集(例如,预定义的文本元素、视频、插图等)以向用户视觉地说明如何在移动应用程序中执行某些步骤。在一些示例中,人类代理可以将可控通信会话移交给机器人代理,然后该机器人代理可以在通信会话过程中执行预先记录的一组响应和/或视频。在一些示例中,人类代理可以在任何时间重新得到对可控通信会话的控制,或者机器人代理可以被配置为自动地将对可控通信会话的控制(例如,用户的移动设备的移动应用程序由代理远程地控制的情况)交回给人类代理。在这些示例中,机器人代理可以与人类代理组合工作。
还将理解,当(在可控通信会话的过程中)移动应用程序正在用户的移动设备上运行时,可以通过在(文本框内的)输入区域的像素边界内(要么由代理远程地要么由用户直接地)点击来选择显示的输入元素。然而,选择输入元素不限于在输入元素的像素边界内(例如,在文本框内)点击或轻敲。可以以其它的方式选择输入元素,例如,通过实现与每个输入元素相关联的唯一标识符。例如,以编程方式,代理可以使用与输入元素相关联的标识符来识别输入元素,然后发送代理打算在输入元素中填充的内容。在该示例中,如果与用户通信的代理是机器人代理,则机器人代理不需要分析用户屏幕的屏幕截图来(例如,通过点击)选择输入元素,而是机器人代理可以使用输入元素的标识符(例如,“用户_名称”)来识别输入元素。此外,在该示例中,机器人代理不需要检测屏幕上的输入元素的位置,而是,机器人代理被配置为访问输入元素的标识符并且可以使用该输入元素的标识符来选择输入元素。当用户的移动设备接收到表示由机器人代理选择的输入元素的数据时,移动应用程序然后将通过参考从机器人代理接收的标识符来选择输入元素。移动应用程序已经访问过所选输入元素的像素边界,因此,机器人代理不需要发送用于输入事件(例如,点击)的坐标,而是机器人代理可以发送所选输入元素的标识符和要在输入元素中填充的内容。
虽然以上描述包括显示区域掩藏以掩藏包含敏感信息的输入元素,但是另一安全措施可以包括呈现输入元素而不掩藏输入元素的内容,但是防止操纵包含在输入元素中的内容数据。例如,用户可以将文本输入至输入元素中,但代理不能,而输入元素不会从代理的视图中被掩藏。
图8示出了用于在支持调度合成事件的操作系统中复制输入事件的过程800的泳道图。过程800可以包括网络设备(例如,网络设备705)、通信服务器(例如,通信服务器710)和终端设备(例如,终端设备715)之间的交互。此外,可以执行过程800以接收(在终端设备处远程生成的)输入事件并且在网络设备处复制该输入事件。在过程800中,网络设备的操作系统可以支持合成事件(例如,在另一设备处生成的输入事件)的复制。例如,过程800中涉及的网络设备可以正在运行Android操作系统。
过程800在框802处开始,在框802中,通信服务器在与用户相关联的网络设备和与代理相关联的终端设备之间建立通信会话。在一些实例中,可以响应于由网络设备上的移动应用程序所呈现的按钮的选择来建立通信会话。例如,在移动应用程序中按钮的(例如,由用户的)选择可以使得建立通信会话。将理解,可以使用(本文描述的)其它方法来发起通信会话。
在一些实例中,可以使用在通信服务器处生成并存储的会话标识符来建立通信会话。例如,用户可以使用网络设备来检索会话标识符。在由终端设备请求时,用户可以提供会话标识符,该会话标识符在被接受时可以发起通信会话的建立。会话标识符可以是由用户手动地或由网络设备自动地提供的字母数字字符串。在一些实例中,代理和用户可以例如使用消息传送服务器来交换消息。可以使用异步通信(例如,消息之间的几分钟、几小时或几天的延迟是可接受的情况)来交换消息。例如,异步交换可以包括与即时消息传送或聊天不同的(例如,通过应用、基于网络的消息/收件箱系统或电子邮件进行的)电子消息交换。异步交换可以包括以这样的方式传送消息:发送的消息存储在消息队列或收件箱中,直到目的设备(例如,网络设备、终端设备或消息的接收者)请求呈现该消息或正在访问与所述队列或收件箱相对应的网页或应用页面。在该示例中,网络设备和终端设备之间的异步通信中的消息之一可以包括加入通信会话的邀请。用户可以接受或拒绝包含在该消息中的邀请。在接受该邀请时,可以在网络设备和终端设备之间建立通信会话。
在一些实例中,代理和用户之间的消息传送会话可以被认为是异步消息交换,其中交互以不规则的间隔在参与者之间发生。消息传送对话可以帮助向遇到移动应用程序问题的用户提供上下文或附加信息。然而,在一些实例中,消息传送对话提供有限的问题解决方案。在这些实例中,可以将用户和代理之间的消息传送对话升级成通信会话,以用于(具有同时的远程控制能力的)实时屏幕共享。例如,当代理将邀请消息发送至用户时,可以发起通信。代理可以在通信会话中选择其建议实现的一组功能。例如,功能可以包括远程应用程序控制、实时屏幕共享、视频和语音传输、以及其它合适的功能。用户可以接受或拒绝该组功能。在一些实例中,功能可以是强制性的,并且如果用户不接受,则不会建立通信会话。在其它实例中,功能可以是可选的,使得如果用户拒绝,仍然建立实时通信会话。此外,在通信会话过程中的任何时间可以调整或修改上述功能。将理解,这些功能可以包括双向语音或视频传输、单边语音或视频传输、施加在网络设备的摄像机馈送上的增强现实以及其它合适的功能的任何组合。
在一些实例中,如果通信会话意外终止,则移动应用程序可以包括重新建立终止的通信会话或者将网络设备与同一终端设备重新连接的功能。例如,当通信会话终止时,用户可以重启在网络设备上执行的移动应用程序。当重启时,移动应用程序可以呈现重新建立通信会话的选项。当在网络设备处接收到对该选项的接受时,可以重新建立通信会话。重新建立通信会话可以包括通知同一终端设备已经重启在网络设备上执行的移动应用程序。此外,同一终端设备(例如,同一代理)可以重新加入通信会话并且继续对移动应用程序的远程控制。有利地,当通信已经终止时,终端设备可以不再查看在网络设备上显示或捕获的实时内容。
根据本发明的实施方式,可以包括安全特征,以确保已经加入重新建立的通信会话的计算设备是先前参与通信会话终止之前的通信的同一终端设备。例如,通信服务器可以存储通信会话的标识符以及网络设备和终端设备的设备标识符。通信会话的标识符可以从所有的其它通信会话唯一地标识一通信会话。如果加入重新建立的通信会话的终端设备与在意外终止之前的通信会话中最初包括的终端设备不同,则通信服务器可以标识出加入重新建立的通信会话的终端设备具有与初始终端设备不同的设备标识符。然后,通信会话可以通知网络设备加入了重新建立的通信会话的终端设备与初始终端设备不同。该通知可以使操作网络设备的用户能够终止通信或等待直到初始终端设备加入所述重新建立的通信会话并阻止新加入的终端设备。在一些实例中,当通信会话建立时,移动应用程序可以确定终端设备的设备标识符(例如,MAC地址)。如果在通信会话过程中的任何时间,终端设备的设备标识符与初始设备的标识符不同,则可以通知网络设备并向网络设备提供终止通信会话或等待初始终端设备重新加入通信会话的选项。
在框804处,在通信会话过程中,网络设备可以捕获由移动应用程序呈现的内容,并且网络设备可以将捕获的内容作为数据流中的内容数据发送。网络设备可以将内容数据发送至通信服务器,然后通信服务器可以将内容数据发送至终端设备。内容数据的示例可以包括由移动应用程序呈现的图像或图像的一部分、周期性地捕获的在网络设备上呈现的移动应用程序的当前状态的屏幕截图、移动应用程序的页面当前呈现的视频数据或视频帧、音频数据、或与由移动应用程序正在呈现的当前页面相关联的元数据、以及合适的其它内容数据。在移动应用程序正在执行时可以连续地捕获内容数据。一旦应用程序关闭(例如,终止)或变为后台进程,则可以暂停内容数据(例如,屏幕截图)的定期捕获。当移动应用程序恢复时,则移动应用程序可以继续周期性地捕获该移动应用程序的屏幕的屏幕截图。
在框806处,终端设备可以从通信服务器接收内容数据。例如,内容数据可以包含在发送至终端设备的数据流中。在该示例中,可以通过对连续捕获的移动应用程序的屏幕截图进行编码来生成数据流。仅作为非限制性的示例,可以使用WebRTC协议来实现捕获的屏幕截图的编码。可以使用其它的实时通信协议来对内容数据进行编码。一旦已在终端设备处接收到数据流,就可以将数据流永久地或临时地存储在终端设备中。此外,可以从数据流中提取内容数据,然后可以处理该内容数据。
在框808处,可以在终端设备处显示内容数据。例如,当内容数据是移动应用程序的界面的视频帧时,终端设备可以在该终端设备的屏幕上显示实时视频帧。在该示例中,终端设备可以显示最新接收的视频帧。当在终端设备处接收到新的视频帧时,可以在终端设备上显示该新的视频帧。当显示一连串的视频帧时,视频帧的连续性模拟成视频。例如,如图7中所示,内容740可以是移动应用程序的屏幕截图。此外,可以利用最新捕获的屏幕截图连续地更新内容740,从而使得终端设备能够像移动应用程序呈现在网络设备上一样实时地显示该移动应用程序。
在框810处,在终端设备的网络浏览器上运行的事件监听器可以监听(例如,检测)在终端设备处执行的输入事件。例如,事件监听器可以检测代理是否已经选择(例如,轻敲、双轻敲、点击、双击、滑动等)终端设备上显示的内容数据的任何区域。在该示例中,如果终端设备显示在网络设备上呈现的界面的实时视频帧,则事件监听器可以检测代理是否已经选择(例如,点击)所显示的视频帧的任何区域(例如,代理是否点击内容740的任何区域)。
在框812处,终端设备可以基于检测到的输入事件生成选择数据,然后发送该选择数据。终端设备可以在通信会话过程中将选择数据发送至通信服务器,然后通信服务器可以将该选择数据转发至网络设备。选择数据可以与在终端设备处的选择相关联。例如,选择数据可以包括输入事件的一组坐标。在该示例中,如果输入事件是在终端设备处检测到的在内容740上的鼠标指针的点击,则可以确定所述点击的坐标。此外,点击的坐标可以包含在选择数据中。选择数据可以不限于输入事件的坐标,而是可以包括其它数据,例如与在终端设备处检测到的选择相关联的元数据。
在框814处,网络设备可以在通信会话过程中(通过通信服务器)接收选择数据。在一些实例中,选择数据可以包括在终端设备处的选择的坐标和输入事件的类型。输入事件的类型的示例可以包括点击、滑动、轻敲、双轻敲和合适的其它类型的输入事件。在框816处,执行移动应用程序的网络设备可以确定选择数据所包含的输入事件类型是否是已知的(例如,预定义的)。例如,移动应用程序可以被配置为复制某些类型的输入事件。如果输入事件不是预定义的类型,则可以丢弃所检测到的输入事件,并且过程800可以继续至框图822(框816处的“否”),在框822处过程800结束。确定包含在选择数据中的输入事件类型是否是预定义类型可以包括将输入事件类型的标识符与预定义输入事件类型的列表进行比较。例如,输入事件类型可以与标识符相关联,并且预定义输入事件类型的列表可以是网络设备的操作系统可访问的。在该示例中,网络设备可以检索预定义输入事件类型的列表,并将接收到的输入事件类型与该列表进行比较。在一些实例中,预定义输入事件类型的列表可以包含在移动应用程序的程序代码中。此外,作为示例,预定义输入事件类型的列表可以包括移动应用程序的一个或多个页面中所包含的所有的各种类型的输入元素类型的列表。例如,移动应用程序可以包含一个页面,该页面包含单选按钮输入元素、文本输入框输入元素和下拉菜单输入元素。在该示例中,预定义的已知输入元素类型的列表可以包括单选按钮输入元素类型、文本输入框输入元素类型和下拉菜单输入元素类型的列表。如果输入元素类型是已知的(例如,在框816处的“是”),则过程800继续至框818。
在框818处,移动应用程序可以基于选择数据生成合成事件。在一些实例中,合成事件可以包括在远程设备(例如,终端设备)处生成并在本地设备(例如,网络设备)处复制的输入事件。例如,如果代理在内容740的区域内点击,则可以将该点击作为输入事件进行检测。该输入事件可以作为合成事件在网络设备处被复制,因为该输入事件是在远离所述网络设备的终端设备处生成的。此外,合成事件可以包括在网络设备处执行的输入事件,该输入事件不基于操作网络事件的用户的交互。而是,在网络设备处执行的输入事件基于在终端设备处检测到的远程生成的输入事件。在一些实例中,输入事件可以包括序列化的数据结构,并且可以使用网络套接字作为传输协议从终端设备发送至网络设备。
生成合成事件可以包括匹配所接收的输入事件的移动事件结构,以及利用所提供的事件数据(例如,触摸位置)填充事件结构。例如,如果包含在选择数据中的输入事件与单选按钮的选择相对应,则该输入事件可以包括与单选按钮相对应的事件结构。此外,选择数据还可以包括与输入事件对应的事件数据。例如,事件数据可以包括在终端设备处的选择的位置。在该示例中,事件数据可以包括在终端设备处的触摸位置或点击位置的坐标。当网络设备接收到输入事件时,嵌入在移动应用程序中的SDK可以生成与所接收的输入元素的事件结构相匹配的事件结构(例如,与单选按钮相对应的事件结构)。此外,嵌入在移动应用程序中的SDK可以用与所接收的输入元素相关联的事件数据(例如,触摸位置)来填充所生成的事件结构。通过生成与所接收的输入元素相匹配的事件结构,并且通过用所接收的输入元素的事件数据填充所生成的事件结构,可以在网络设备处基于在终端设备处检测到的输入事件生成合成事件。在框820处,可以将所生成的包含事件数据(例如,触摸位置)的事件结构发送至网络设备的操作系统。因为过程800中的网络设备的操作系统(例如,Android)支持合成事件(即以编程方式创建的事件)的调度,因此可以以这样的方式来复制远程生成的输入事件:使得该操作系统自动地执行与输入事件相关联的所有后续步骤(默认动作),就好像其对于实际用户输入(例如,由用户在屏幕上轻敲)一样。例如,如果输入事件是在终端设备715处对内容740上的位置的选择,则可以通过在网络设备处创建与在终端设备处生成的输入事件匹配的合成事件来在网络设备705处远程地执行该选择。
图9是用于在不支持调度合成事件的操作系统中复制输入事件的过程900的泳道图。过程900可以包括网络设备(例如,网络设备705)、通信服务器(例如,通信服务器710)和终端设备(例如,终端设备715)之间的交互。此外,可以执行过程900以接收(在终端设备处远程生成的)输入事件并且在网络设备处(例如,使用事件复制器760)复制该输入事件。然而,过程900中的网络设备的操作系统不支持合成事件(例如,在另一设备处生成的输入事件)的调度。在一些实例中,不支持调度合成事件的操作系统被限制提供对移动生成的输入事件的编程访问,并因此,不直接支持在远程设备处生成的事件的复制。例如,不支持调度合成事件的操作系统,并且因此不直接支持复制合成事件的操作系统是iOS操作系统。执行过程900以模拟远程生成的输入事件,以在通信会话过程中启用远程控制功能。此外,过程900的框902到914类似于过程800的框802到814,因此,这里省略对框902到914的描述。
在框916处,正在网络设备上运行的移动应用程序可以执行搜索算法以寻找由该移动应用程序呈现的当前页面的目标输入元素。目标输入元素可以是对应于远程生成的输入事件的输入元素。例如,该搜索算法用于寻找满足一个或多个规则的(在移动应用程序的当前页面上显示的所有输入元素中的)第一输入元素。所述一个或多个规则的示例可以包括:用于确定输入元素是否对于嵌入在移动应用程序中的SDK已知(例如,在本发明中的如上所述的预定义输入元素)的操作、用于确定输入事件的坐标是否在移动应用程序的当前页面上所显示的输入元素的边界内的操作、用于确定所寻找的输入元素(例如,目标输入元素)是否能够并且准备好接收输入的操作、以及合适的其它规则。如果在移动应用程序的当前页面上显示的输入元素满足任何规则或所述一个或多个规则的任何组合,则该输入元素可以是所述目标输入元素。
在一些实例中,搜索算法可以包括用于在由网络设备上的移动应用程序呈现的当前页面上定位目标输入元素的一个或多个操作。例如,所述一个或多个操作可以包括接收远程生成的输入事件和该输入事件的相关联的事件数据(例如,触摸或点击位置)。在该示例中,在网络设备处接收的选择数据(例如,在框914处)可以包括远程生成的输入事件和相关联的事件数据。此外,所述一个或多个操作可以包括确定由终端设备处的代理执行的点击的位置坐标(例如,P=事件x,事件y)。然后可以设置根元素。例如,根元素可以包括当前正在网络设备上查看的移动应用程序的特定页面。设置根元素可以对应于标识当前正在网络设备处查看的特定页面。根元素可以有一个或多个子元素。例如,子元素可以是由移动应用程序呈现的特定页面上的输入元素。作为另一示例,由于根元素可以对应于移动应用程序的特定页面,因此子元素可以对应于包含在该特定页面上的输入元素。
此外,所述一个或多个操作可以包括将点击位置的坐标(例如,P=事件x,事件y)和与根元素相关联的每个子元素的输入边界进行比较。例如,嵌入在移动应用程序中的SDK可以迭代地对根元素的每个子元素确定点击位置的坐标是否与该子元素的输入边界相交。在该示例中,SDK可以标识根元素,然后检索表示每个子元素的输入边界的数据。然后,SDK可以将点击位置的坐标与检索到的每个输入边界进行比较。在一些实例中,当输入元素是矩形的形状时,表示输入边界的数据可以包括位于矩形的左上角的像素位置和位于矩形的右下角的像素位置。
在框918处,移动应用程序可以确定是否找到目标输入元素。找到目标输入元素可以对应于确定点击位置的坐标与输入元素的输入边界相交(例如,点击位置在输入边界的区域内)。当已经找到目标输入元素时(例如,从框918出来的“是”),则过程900继续至框920,在框920中确定与目标输入元素相关联的定义动作。每个输入元素可以具有相关联的动作和输入边界。与输入元素相关联的动作的示例可以包括:选择按钮、切换状态开关(已检查与未检查)、分段控制、在文本输入框或文本区域中添加或删除字符、触发滚动元素、以及合适的其它动作。当已经识别目标输入元素时,移动应用程序中包含的SDK可以检索与目标输入元素的类型相对应的事件的定义动作。在框922处,可以由移动应用程序执行所述定义的动作。例如,执行所述定义的动作可以模拟移动输入事件的过程(例如,在网络设备(而不是终端设备)处本地执行的输入事件),使得可以在网络设备处无缝地复制在终端设备处生成的输入事件,以控制移动应用程序的输入元素。当尚未找到目标输入时(例如,从框918出来的“否”),则过程900继续至框924,在框924中过程900结束。
在一些实例中,某些输入元素(例如文本输入框或文本区域)支持复杂的输入操作(例如,复制、粘贴、多字符删除、换行等)。将理解,过程900还可以支持这些复杂的操作。在这些实例中,过程900可以促进输入元素的动态复制或按需复制,以便根据需要在终端设备上动态地复制输入元素。例如,如果(例如,在框920处)确定目标输入元素是文本输入框,则网络设备可以通知终端设备:目标输入元素是文本输入框。此外,网络设备还可以将文本输入框的当前内容与通知消息一起或分开地发送至终端设备。当终端设备接收到通知消息和文本输入框的当前内容时,终端设备可以生成要在实时屏幕截图图像之上显示的覆盖元素(例如,覆盖元素将显示在内容740之上)。在一些实例中,可以生成覆盖元素,使得该覆盖元素位于内容740的对应于文本输入框的图像部分的之上。因为内容740包括图像或视频数据并且是平的(flat)非结构化数据,所以代理通常不能将文本键入文本输入框。然而,在终端设备处生成的覆盖元素(例如,由网络应用程序或网络浏览器生成)可以显示在内容740的将对应于文本输入框的图像部分之上,并且可以被配置为接收来自代理的文本数据。例如,覆盖元素可以包括代理可以键入字符字母的文本框。
在一些实例中,使用通信服务器将由代理键入的每个字母发送回网络设备。在其它实例中,当代理已经完成文本输入时,整个文本串被发送至网络设备。当网络设备接收到来自终端设备的输入字符或字符串时,移动应用程序更新文本输入框的输入值,从而文本输入框填充由代理修改的更新文本。在一些实例中,由代理在终端设备处输入到覆盖元素中的文本可以附至包含在文本输入框中的原始文本。在这些实例中,文本输入框的定义动作可以是填充文本输入框的输入值中所包含的文本。例如,与文本输入框相关联的输入值可以是在移动应用程序的程序代码中编码的待填充的原始文本。当代理在覆盖元素中键入时,代理可以添加字母、删除最初包含在文本输入框中的文本的字母、在文本输入框内移动光标的位置、高亮显示文本、更改文本的格式方面(粗体、斜体、下划线等)以及对文本进行其它合适的修改。
图10示出了用于远程控制移动应用程序的过程1000的流程图。在一些实例中,过程1000可以由通信服务器(例如,通信服务器180、710)执行。过程1000还可以至少部分地由网络设备(例如,网络设备105、705)或终端设备(例如,终端设备115、715)来执行。作为示例,可以执行过程1000以使终端设备能够远程地控制在网络设备(远离终端设备)上执行的移动应用程序。此外,过程1000还可以在网络设备和终端设备之间建立通信会话,使得由网络设备上的移动应用程序呈现的内容可以与终端设备实时共享。
网络设备可以被配置为执行可以发起通信会话的移动应用程序。移动应用程序可以由终端设备远程地控制。此外,移动应用程序可以包括或呈现处于初始状态的输入元素。在一些实例中,输入元素的初始状态可以是移动应用程序执行时的输入元素的状态。输入元素的初始状态的示例可以是空文本输入框、具有初始的一组字符的文本输入框(例如,“在此处输入文本”)、未被选择的单选按钮等。
过程1000在框1005处开始,在框1005处通信服务器在网络设备和终端设备之间建立通信会话。可以使用本文描述的任何方法来建立该通信会话。例如,如上所述,网络设备可以从(例如,与移动应用程序相关联的)应用程序服务器请求服务标识符。然后,网络设备可以与通信服务器交换该服务标识符以用于加入通信会话的邀请。
在一些实例中,可以将用于实时内容共享的通信会话建立为现有通信会话的一部分。例如,可以在网络设备和终端设备之间建立用于异步消息交换的通信会话。异步交换可以包括,例如,与即时消息传送或聊天不同的(例如,通过应用、基于网络的消息/收件箱系统、或电子邮件的)电子消息交换。异步交换可以包括以这样的方式传送消息:发送的消息存储在消息队列或收件箱中,直到目的设备请求呈现该消息或正在访问与所述队列或收件箱相对应的网页或应用页面。
作为网络设备和终端设备之间的异步消息交换的一部分,终端设备可以在给网络设备的发出消息中包含邀请。该邀请可以包含数据,当该数据在网络设备处被接受时导致现有通信会话提升。提升现有通信会话可以包括建立附加通信会话作为现有通信会话的一部分。例如,附加通信会话可以呈现为在移动应用程序上或在网络设备上显示的附加窗口。作为另一示例,可以将现有异步通信会话转换为附加通信会话。在该示例中,附加通信会话可以呈现在与异步通信会话相同的窗口中。此外,在网络设备的屏幕上呈现的内容(当移动应用程序正在执行时)可以显示在附加通信会话的窗口中。
在一些实例中,还可以使用与网络设备相关联的另一设备来建立附加通信会话。例如,可以在终端设备和由用户操作的台式计算机之间建立异步消息交换。在该示例中,终端设备可以发送包含加入附加通信会话的邀请的异步消息,该异步消息用于由移动应用程序呈现的内容的实时屏幕共享。在一些实例中,用户可以使用与该用户相关联的智能手机或平板设备来接受邀请。在其它实例中,用户可以使用台式计算机接受邀请并且使用用户的智能手机接受通信会话。可以在终端设备和与用户相关联的智能手机或平板设备之间建立附加通信会话。例如,由在智能手机上执行的移动应用程序呈现的内容或在智能手机处捕获的内容(例如,音频或视频信号)可以在终端设备上实时显示。将理解,在通信会话过程中切换设备(例如,从台式计算机到智能手机)可以维持代理和用户之间的聊天消息的状态。例如,如果用户从台式计算机切换至到用户的移动设备,则用户将能够被接入与代理的对话中的相同位置。还将理解,为了确定和评估移动设备的诊断的目的,代理可以远程地控制移动设备和/或在移动设备上运行的移动应用程序。
在框1010处,通信服务器可以在通信会话过程中接收数据流。可以从网络设备接收数据流。在一些实例中,可以使用实时通信协议生成数据流。作为非限制性的示例,可以使用WebRTC协议来对在网络设备处捕获的内容的视频帧进行编码。例如,WebRTC协议可以用于对由在网络设备上执行的移动应用程序呈现的屏幕的捕获的视频帧序列进行下采样。可以处理下采样的视频帧以在网络设备处生成数据流。
在一些实例中,数据流可包括在网络设备处捕获的内容数据。内容数据可以包括由网络设备处的内容捕获引擎捕获的任何数据。在一些实例中,内容数据可以包括当移动应用程序正在执行时在网络设备处捕获的任何数据。内容数据的示例可以包括:由移动应用程序呈现的页面的图像或屏幕截图、由移动应用程序呈现的视频的视频帧、由网络设备的相机捕获的视频馈送的视频数据(例如,视频帧)、由网络设备的麦克风捕获的音频信号的音频数据、以及合适的其它媒体流或内容数据。
例如,内容数据可以包含由移动应用程序呈现的对象。在一些实例中,对象可以是在网络设备处捕获的图像(或屏幕截图)的一部分。例如,包含在内容数据中的对象可以与移动应用程序中所包含的输入元素相对应。在该示例中,当处于初始状态的输入元素是空文本输入框时,该对象可以是屏幕截图的表示该空文本输入框的部分。此外,在该示例中,对象可以包括屏幕截图的包含文本输入框的空文本框的部分。例如,在这种情况下,对象不是输入元素,而是屏幕截图的表示输入元素的图像部分。将理解,在终端设备处接收的数据流可以是由在网络设备上执行的移动应用程序所呈现的内容的视觉反馈数据(例如,在网络设备处捕获的视频的视频帧)。在终端设备处接收的视觉反馈数据不包括移动应用程序的结构(例如,页面上的输入元素的类型的数量),而是仅包括该结构的图像。在这种情况下,移动应用程序的结构包括在移动应用程序的页面上呈现的输入元素的层级。此外,在终端设备处接收的数据流可以包含或可以不包含标识正在网络设备上运行的操作系统的任何信息。有利地,本发明中所陈述的实施方式使终端设备能够控制在网络设备上执行的移动应用程序,而不管在网络设备上运行的操作系统如何。
在框1015处,通信服务器可以在通信会话过程中发送数据流(在框1010处接收的数据流)。在一些实例中,数据流可以被发送至终端设备。当在终端设备处接收到数据流时,可以在终端设备处显示或输出包含在该数据流中的内容数据。例如,该内容数据可以包括由移动应用程序呈现的内容的(接连捕获的)视频帧。在该示例中,当在终端设备处接收到内容数据时,可以在终端设备的屏幕上显示视频帧。因此,由在网络设备上执行的移动应用程序所呈现的内容的实时视频可以显示在终端设备的屏幕上用于由代理进行查看。在一些实例中,内容数据可包括在网络设备处捕获的内容。例如,内容数据可以包括在网络设备的麦克风处捕获的音频。在该示例中,内容数据包含在数据流中,并且当在终端设备处接收到该数据流时,终端设备可以输出该内容数据(例如,输出音频信号)。
在框1020处,可以检测输入事件。在一些实例中,输入事件可以由在终端设备上运行的网络浏览器来检测。例如,网络浏览器可以检测到在终端设备处生成了输入事件(例如,代理点击了鼠标按钮)。作为另一示例,网络浏览器可以接收与显示内容(例如,内容740)上的选择(例如,点击事件、轻敲事件、滑动事件等)相对应的输入。在其它的实例中,通信服务器可以接收表示在终端设备处生成的输入事件的数据(例如,表示发生点击事件的数据)。此外,通信服务器然后可以检测到所接收的数据与在终端设备处执行的输入事件相对应。可以与内容数据相关联地检测输入事件。例如,输入事件可以是点击事件,使得输入与显示内容上的该点击事件(例如,在内容740内检测到的点击事件)相对应。在一些实例中,输入事件可以由移动应用程序的事件监听器检测(例如,在用户轻敲不是由移动应用程序呈现的页面上的输入元素的位置的情况下)。
在框1025处,通信服务器可以基于检测到的输入生成控制数据。例如,检测到的输入事件的坐标(例如,在终端设备处检测到的点击事件或轻敲事件的坐标)可以包含在控制数据中。在控制数据中可以包含其它信息,例如,与检测到的输入相关联的元数据、检测到的输入事件的时间、输入事件的类型(例如,点击、轻敲、滑动)、要接收控制数据的网络设备的(一个或多个)标识符、在其上检测到输入事件的终端设备的(一个或多个)标识符、以及合适的其它信息。
在框1030处,通信服务器可以将控制数据发送至网络设备。例如,通信服务器可以确定接收控制数据的目的地的身份。在一些实例中,通信会话可以具有相应的标识符。通信会话的标识符还可以标识通信会话中涉及的网络设备和终端设备。通信服务器可以从与接收到或检测到的输入事件相关联的元数据中提取该标识符。通信服务器可以使用该提取出的标识符生成控制数据并确定控制数据的目的地。当在网络设备处接收到控制数据时,控制数据可以修改移动应用程序中包括的输入元素的初始状态。例如,当在网络设备处接收到控制数据时,移动应用程序可以处理该控制数据。在该示例中,嵌入在网络设备中的SDK可以触发事件复制器(例如,事件复制器760),以复制检测到的输入事件。使用控制数据来复制检测到的输入事件可以包括上述过程800和900中的任意过程。此外,修改由移动应用程序所呈现的输入元素的初始状态也可以包括上述过程800和900中的任意过程。将理解,可以在终端设备处生成控制数据。
图11示出了用于在网络设备处复制输入事件的过程的流程图。过程1100可以由网络设备执行。此外,可以针对不支持合成事件的调度的操作系统(例如,iOS)执行过程1100以在网络设备处(例如,使用事件复制器760)复制远程生成的输入事件。过程1100在框1105处开始,在框1105中,网络设备可以识别在网络设备上存储的移动应用程序中所包含的输入元素。例如,移动应用程序的程序代码可以包括识别输入元素的代码的一部分。程序代码可以包括识别多个输入元素的代码。输入元素可以被配置为基于交互来接收输入数据。例如,输入元素可以是文本输入框,该文本输入框被配置为基于与网络设备上所呈现的键盘上的字母的选择相对应的输入来接收文本字符。
在框1110处,可以确定与输入元素相对应的输入边界。输入边界可以是在移动应用程序的页面上呈现的用于接收与特定输入元素相关联的输入数据的区域。例如,如果移动应用程序中包含的输入元素是文本输入框,则该文本输入框的输入边界可以是可以输入文本字符的文本框。在该示例中,输入边界可以由文本框左上角的像素的位置和文本框右下角的像素的位置表示。可以通过移动应用程序呈现多个输入元素。
在框1115处,可以在网络设备处执行移动应用程序。运行网络设备可以包括在网络设备上启动应用程序。此外,执行移动应用程序可以包括显示在初始状态下的输入元素。例如,网络设备可以接收与网络设备上显示的图标的选择相对应的输入。选择图标可以启动在网络设备上的移动应用程序。当启动移动应用程序时,移动应用程序可以在网络设备的屏幕上呈现多个页面的页面。此外,移动应用程序的页面可以包括输入元素(例如,用于输入文本的文本输入框)。在一些实例中,显示处于初始状态的输入元素可以包括用该输入元素的初始输入值或在先的任何输入值来显示该输入元素。例如,输入元素的初始状态可以对应于未选择的单选按钮、未选择的按钮、空文本输入框、具有文本(例如,预先填充的文本或来自如在移动应用程序的程序代码中编码的初始输入值的文本)的文本输入框、以及合适的其它初始状态。此外,移动应用程序可以由终端设备远程地控制。
在框1120处,网络设备可以接收与终端设备处的选择相对应的输入。例如,当终端设备接收到与在所显示的内容区域(例如,内容740)上的输入事件(例如,点击事件)相对应的输入时,可以检测到该输入事件。此外,终端设备可以使用网络套接字将该输入事件发送至通信服务器。通信服务器可以将检测到的该输入事件发送或中继至网络设备。可以在网络设备处接收检测到的该输入事件作为输入。此外,接收的输入与在终端设备处检测到的选择(例如,点击事件)相对应。
在一些实例中,在终端设备处的选择(例如,点击事件)可以与选择数据相关联。选择数据可以包括与在终端设备处检测到的选择(例如,点击事件)相关联的任何数据或元数据。选择数据的示例可以包括:在终端设备处检测到的选择的像素坐标(例如,在内容740上由代理执行的点击的位置的坐标)、与选择相关联的并且由代理的网络浏览器上运行的事件监听器检测到的数据或元数据、与点击事件的处理(例如,点击750、点击的时间、点击的持续时间、点击或轻敲是单击/单轻敲还是双击/双轻敲或点击-拖动操作等)相关联的数据或元数据、点击是点击左键还是点击右键、以及合适的其它数据。将理解,在终端设备处检测到的输入事件可以是任何输入事件并且不限于点击。例如,终端设备处的输入事件还可以是滑动、轻敲、点击拖动操作、多点触摸、与终端设备相关联的可穿戴计算设备的手势以及类似输入事件。在一些实例中,选择数据可以用于识别与移动应用程序相关联的位置。例如,如果选择数据包括在终端设备处检测到的输入事件的坐标(例如,由代理在内容740上执行的点击的坐标),则当选择数据在网络设备处被接收到时,可以用于识别输入事件在网络设备的屏幕上的位置(例如,与移动应用程序相关联的输入事件的位置)。
例如,如果在终端设备处检测到的输入事件是在终端设备的屏幕上的位置(x,y)处的点击,则选择数据可以包括位置坐标。当网络设备接收到选择数据时,该网络设备可以在该网络设备上的相应位置处复制远程生成的点击。例如,网络设备可以在对应于位置(x,y)的位置处复制所述点击。将理解,可以基于每个设备的屏幕的尺寸将终端设备的位置(x,y)变换或转换成网络设备上的对应位置(x’,y’)。例如,如果网络设备具有与终端设备不同的屏幕尺寸或取向,则可以将选择数据中所包含的位置(x,y)变换为网络设备上的对应位置(x’,y’)。在一些实例中,当接收到选择数据时,网络设备可以执行位置(x,y)的变换。在其它的实例中,通信服务器或终端设备可以执行坐标的变换。
在框1125处,嵌入在网络设备中的SDK可以确定选择数据是否与输入元素相对应。确定选择数据是否与输入元素相对应可以包括识别移动应用程序的根元素(例如,当前页面)并且迭代地检查每个子元素(例如,在当前页面上呈现的输入元素),以确定所述选择的坐标是否在子元素的输入边界内。例如,根元素可以是在网络设备处接收到输入事件时的移动应用程序的当前页面或(一个或多个)特定页面。根元素可以具有子元素的关联层级。例如,根元素的子元素可以是包含在与该根元素相对应的页面上的输入元素。此外,确定选择数据是否与输入元素相对应可以包括将选择数据与输入边界进行比较。例如,对于每个子元素,嵌入在移动应用程序中的SDK可以确定选择数据的坐标是否与子元素的输入边界相交。SDK可以检索子元素的输入边界并且比较位置以确定坐标是否在该输入边界内。
在框1130处,当选择数据与输入元素相对应时,嵌入在移动应用程序中的SDK可以确定与该输入元素相关联的动作。例如,当嵌入在移动应用程序中的SDK确定输入事件的坐标与特定子元素的输入边界相交时,与该子元素相对应的该输入元素成为目标输入元素。目标输入元素可以是与在终端设备处检测到的输入事件相对应的输入元素。例如,如果查看内容740的代理在内容740的与文本输入框的图像相对应的位置上点击,则目标输入元素将是与文本输入框相对应的输入元素。SDK可以检索与目标输入元素相关联的定义动作。例如,每个输入元素可以具有在移动应用程序的程序代码中定义的关联动作。定义动作可以基于输入元素的类型。例如,用于单选按钮的动作可以是在未选择和选择之间切换单选按钮的选择;用于文本元素的动作可以是填充输入值中所包含的文本,所述输入值定义将包含在文本框中的文本;用于下拉菜单的动作可以是显示下拉列表中所包括的项目;用于与按钮的动作可以是该按钮的选择,用于表示滚动箭头的按钮的动作可以是滚动屏幕等。可以将用于特定输入元素的动作编码在移动应用程序的程序代码中。嵌入在移动应用程序中的SDK可以检索与目标输入元素相关联的动作。在框1135处,可以执行检索到的用于目标输入元素的动作。
图12示出了用于远程控制移动应用程序的另一过程的流程图。过程1200可以由网络设备执行。此外,可以执行过程1200以使在网络设备上执行的移动应用程序能够由终端设备远程地控制。此外,过程1200还可以在网络设备和终端设备之间建立通信会话,使得通过移动应用程序在网络设备上呈现的内容可以与终端设备实时共享,并且使得终端设备可以远程地控制移动应用程序。
过程1200在框1205处开始,其中,网络设备执行移动应用程序。在一些实例中,移动应用程序可以包括处于初始状态的输入元素。移动应用程序可以包括嵌入式SDK,该嵌入式SDK使终端设备能够远程地实时控制移动应用程序。当网络设备接收到与网络设备上显示的图标的选择相对应的输入时,可以执行移动应用程序。例如,输入元素的初始状态可以是移动应用程序启动时输入元素的状态(例如,选择的、未选择的、空的文本输入框等)。初始状态也可以是输入元素的最新状态或输入元素的任何在先状态。(例如,当移动应用程序接收到与启动通信会话的按钮的选择相对应的输入时)在移动应用程序已经执行之后,可以建立允许终端设备接收由移动应用程序呈现的实时内容的通信会话。
在框1210处,嵌入在移动应用程序中的SDK可以生成包含由移动应用程序呈现的内容(例如,内容数据)的数据流。例如,内容数据可以是由移动应用程序在网络设备上呈现的图像、视频帧或一个或多个页面的屏幕截图。作为另一示例,当内容数据包括图像或屏幕截图时,图像或屏幕截图可以包括由移动应用程序呈现的对象。对象可以是与输入元素相对应的图像或屏幕截图的一部分。例如,如果输入元素是单选按钮,则对象可以对应于包括该单选按钮的屏幕截图的像素。此外,生成数据流可以包括将WebRTC协议应用于内容数据,以实时生成包括该内容数据的数据流。将理解,可以使用其它的实时通信协议。此外,将理解对捕获的内容数据的任何变换(例如,视频帧的大小的变换)。
在框1215处,网络设备可以在通信会话过程中将数据流发送至通信服务器。通信服务器可以将接收的数据流发送或转发至终端设备。在一些实例中,网络设备可以将通信会话的标识符包含在数据流中,使得通信服务器可以确定哪些设备正在作为通信会话的一部分进行通信。例如,标识符还可以标识哪个网络设备和哪个终端设备已加入通信会话。当通信服务器接收到数据流时,通信服务器可以提取标识符并确定向哪个终端设备发送该数据流。此外,当通信服务器从终端设备接收到检测到的输入事件时,通信服务器可以提取包含在输入事件中或与输入事件相关联的标识符,以确定哪个网络设备将接收该输入事件。此外,当在终端设备处接收到数据流时,可以在终端设备处显示包含在该数据流中的内容数据。例如,终端设备可以在该终端设备上显示视频帧,使得通过移动应用程序所呈现的内容的实时视频可以由操作终端设备的代理查看。
在框1220处,网络设备可以接收控制数据。例如,控制数据可以与对象相关联。当通信服务器从终端设备接收到与检测到的输入事件相关联的事件数据时,通信服务器可以生成控制数据。在一些实例中,控制数据可以包括通信会话的标识符或网络设备和终端设备的标识符(例如,设备标识符)。控制数据可以包括与在终端设备处的选择相关联的选择数据。例如,在终端设备处的选择可以是检测到的例如在终端设备处执行的点击、轻敲或滑动。此外,在终端设备处的选择可以与对象相关联,因为选择可以在与输入元素相对应的对象位置(例如,与输入元素相对应的屏幕截图部分、图像部分或视频部分)处。
在框1225处,嵌入在移动应用程序中的SDK可以确定控制数据是否与输入元素相对应。例如,SDK可以从(在从控制数据提取的选择数据中所包含的)坐标来识别输入事件的位置。此外,SDK可以识别根元素(例如,由移动应用程序所呈现的当前页面),并且对于每个子元素(例如,在当前页面上呈现的输入元素),确定所述选择的坐标是否在子元素的输入边界内。如果坐标包含在输入边界内,则该子元素可以是目标输入元素。如果坐标未包含在任何子元素的输入边界内,则可以结束该过程。
在框1230处,当SDK识别出目标输入元素时,SDK可以修改该输入元素的初始状态。在一些实例中,修改输入元素的初始状态可以包括将初始状态改变为后续状态。例如,修改文本输入框的初始状态可以包括添加从终端设备接收的一个或多个字符作为该文本输入框的输入值并在文本框中填充所添加的字符。在该示例中,文本框的输入值可以是文本框的、针对文本输入框在移动应用程序代码的程序代码中编码的内容。可以基于从终端设备接收到的字符来更新输入值,以允许终端设备远程地控制由移动应用程序所呈现的文本输入框的内容。作为另一示例,修改未选择的单选按钮的初始状态可以包括将单选按钮切换成选择状态。此外,在一些实例中,修改输入元素的初始状态可以包括执行上述过程800或900。例如,修改输入元素的初始状态可以包括在输入元素的位置处复制输入事件。
在以上描述中给出了具体细节以提供对实施方式的透彻理解。然而,应当理解,可以在没有这些具体细节的情况下实践这些实施方式。例如,电路可以显示为框图,以免以不必要的细节模糊实施方式。在其它的实例中,公知的电路、过程、算法、结构和技术可以示出为没有不必要的细节,以避免模糊实施方式。
可以以各种方式完成上述技术、块、步骤和手段的实现。例如,这些技术、块、步骤和手段可以以硬件、软件或硬件和软件的组合来实现。对于硬件实现,可以在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、设计为执行上述功能的其它电子单元、和/或它们的组合内实现处理单元。
同样地,值得注意的是实施方式的部分可以被描述为过程,该过程被描绘为流程图、作业图、数据流图、结构图或框图。尽管流程图可以将操作描述为顺序过程,但是许多操作可以并行或同时执行。此外,可以重新布置操作的顺序。过程在其操作完成时终止,但可以有附加的未包括在图中的步骤。过程可以与方法、函数、程序、子例程、子程序等相对应。当过程与函数相对应时,其终止与函数返回至调用函数或主函数相对应。
此外,实施方式可以通过硬件、软件、脚本语言、固件、中间件、微代码、硬件描述语言、和/或他们的任何组合来实现。当以软件、固件、中间件、脚本语言和/或微代码实现时,执行必要任务的程序代码或代码段可以存储在诸如存储介质的机器可读介质中。代码段或机器可执行指令可表示过程、函数、子程序、程序、例程、子例程、模块、软件包、脚本、类,或指令、数据结构的任何组合,和/或程序声明。代码段可以通过传递和/或接收信息、数据、参数(argument或parameter)、和/或存储器内容而联接至另一代码段或硬件电路。信息、参数(argument或parameter)、数据等可以通过任何合适的方式传递、转发或传输,所述方式包括存储器共享、消息传送、票据传递、网络传输等。
对于固件和/或软件实现,可以利用执行本文描述的功能的模块(例如,程序、函数等)来实现方法。有形地体现指令的任何机器可读介质可用于实现本文描述的方法。例如,软件代码可以存储在存储器中。存储器可以在处理器内或处理器外部实现。如本文所使用的,术语“存储器”是指任何类型的长期、短期、易失性、非易失性或其它的存储介质,并且不限于任何特定类型的存储器或任何数量的存储器、或者上面存储有存储器的介质的类型。
此外,如本文中所公开的,术语“存储介质”、“存储器(storage或memory)”可以表示用于存储数据的一个或多个存储器,包括只读存储器(ROM)、随机存取存储器(RAM),磁性RAM、核心存储器、磁盘存储介质、光学存储介质、闪存设备和/或用于存储信息的其它机器可读介质。术语“机器可读介质”包括但不限于便携式或固定式存储设备、光学存储设备、无线通道、和/或能够存储包含或携带(一个或多个)指令和/或数据的各种其它存储介质。
虽然以上已结合特定装置和方法描述了本发明的原理,但是应该清楚地理解,该描述仅通过示例的方式进行,而不是作为对本发明的范围的限制。
Claims (20)
1.一种计算机实现的方法,包括:
在通信服务器处促进移动设备和终端设备之间的通信会话,其中,所述移动设备被配置为执行移动应用程序,其中,所述移动应用程序包含处于初始状态的输入元素,并且所述移动应用程序由所述终端设备远程地控制;
在所述通信会话过程中接收数据流,其中,所述数据流包含内容数据,其中,所述内容数据包含由所述移动应用程序呈现的对象,并且所述对象表示所述输入元素;
在所述通信会话过程中发送所述数据流,其中,当在所述终端设备处接收到所述数据流时,所述内容数据使得在所述终端设备处显示所述对象;
检测与所述对象相关联的输入事件;
当检测到所述输入事件时生成控制数据;以及
发送所述控制数据,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
2.如权利要求1所述的计算机实现的方法,其中,当在所述移动设备处接收到所述控制数据时,在所述移动设备处复制所述输入事件。
3.如权利要求1所述的计算机实现的方法,其中,在所述通信会话过程中发送所述数据流包括:
显示表示所述输入元素的所述对象,其中,所述对象包含内容数据;以及
防止包含在所述输入元素中的所述内容数据被操纵。
4.如权利要求1所述的计算机实现的方法,其中,在所述通信会话过程中发送所述数据流包括:
针对包含在所述移动应用程序中的所述输入元素生成区域掩藏,其中,当在所述终端设备上显示所述内容数据时,所述区域掩藏防止所述对象可见;以及
发送所述数据流,其中,所述数据流包含所述内容数据和所述区域掩藏。
5.如权利要求1所述的计算机实现的方法,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据使得在所述移动设备处生成合成事件,并且所述合成事件修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
6.如权利要求5所述的计算机实现的方法,其中,所述合成事件由所述移动设备的操作系统生成,并且所述合成事件复制检测到的所述输入事件。
7.如权利要求1所述的计算机实现的方法,其中,当在所述移动设备处接收到所述控制数据时,所述方法还包括:
确定所述控制数据是否与所述输入元素相对应;以及
当所述控制数据与所述输入元素相对应时修改所述输入元素的所述初始状态,其中,修改所述输入元素的所述初始状态包括将所述始状态改变为后续状态。
8.一种系统,包括:
一个或多个数据处理器;以及
包含指令的非暂时性计算机可读存储介质,当所述指令在所述一个或多个数据处理器上执行时,使所述一个或多个数据处理器执行以下操作,所述操作包括:
在通信服务器处促进移动设备和终端设备之间的通信会话,其中,所述移动设备被配置为执行移动应用程序,其中,所述移动应用程序包含处于初始状态的输入元素,并且所述移动应用程序由所述终端设备远程地控制;
在所述通信会话过程中接收数据流,其中,所述数据流包含内容数据,其中,所述内容数据包含由所述移动应用程序呈现的对象,并且所述对象表示所述输入元素;
在所述通信会话过程中发送所述数据流,其中,当在所述终端设备处接收到所述数据流时,所述内容数据使得在所述终端设备处显示所述对象;
检测与所述对象相关联的输入事件;
基于检测到的所述输入事件生成控制数据;以及
发送所述控制数据,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
9.如权利要求8所述的系统,其中,当在所述移动设备处接收到所述控制数据时,在所述移动设备处复制所述输入事件。
10.如权利要求8所述的系统,其中,在所述通信会话过程中发送所述数据流包括:
显示表示所述输入元素的所述对象,其中,所述对象包含内容数据;以及
防止包含在所述输入元素中的所述内容数据被操纵。
11.如权利要求8所述的系统,其中,在所述通信会话过程中发送所述数据流包括:
针对包含在所述移动应用程序中的所述输入元素生成区域掩藏,其中,当在所述终端设备上显示所述内容数据时,所述区域掩藏防止所述对象可见;以及
发送所述数据流,其中,所述数据流包含所述内容数据和所述区域掩藏。
12.如权利要求8所述的系统,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据使得在所述移动设备处生成合成事件,并且所述合成事件修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
13.如权利要求12所述的系统,其中,所述合成事件由所述移动设备的操作系统生成,并且所述合成事件复制检测到的所述输入事件。
14.如权利要求8所述的系统,其中,当在所述移动设备处接收到所述控制数据时,所述操作还包括:
确定所述控制数据是否与所述输入元素相对应;以及
当所述控制数据与所述输入元素相对应时修改所述输入元素的所述初始状态,其中,修改所述输入元素的所述初始状态包括将所述初始状态改变为后续状态。
15.一种有形地体现在非暂时性机器可读存储介质中的计算机程序产品,所述非暂时性机器可读存储介质包括被配置为使数据处理装置执行以下操作的指令,所述操作包括:
在通信服务器处促进移动设备和终端设备之间的通信会话,其中,所述移动设备被配置为执行移动应用程序,其中,所述移动应用程序包含处于初始状态的输入元素,并且所述移动应用程序由所述终端设备远程地控制;
在所述通信会话过程中接收数据流,其中,所述数据流包含内容数据,其中,所述内容数据包含由所述移动应用程序呈现的对象,并且所述对象表示所述输入元素;
在所述通信会话过程中发送所述数据流,其中,当在所述终端设备处接收到所述数据流时,所述内容数据使得在所述终端设备处显示所述对象;
检测与所述对象相关联的输入事件;
基于检测到的所述输入事件生成控制数据;以及
发送所述控制数据,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
16.如权利要求15所述的计算机程序产品,其中,当在所述移动设备处接收到所述控制数据时,在所述移动设备处复制所述输入事件。
17.如权利要求15所述的计算机程序产品,其中,在所述通信会话过程中发送所述数据流包括:
显示表示所述输入元素的所述对象,其中,所述对象包含内容数据;以及
防止包含在所述输入元素中的所述内容数据被操纵。
18.如权利要求15所述的计算机程序产品,其中,在所述通信会话过程中所述发送数据流包括:
针对包含在所述移动应用程序中的所述输入元素生成区域掩藏,其中,当在所述终端设备上显示所述内容数据时,所述区域掩藏防止所述对象可见;以及
发送所述数据流,其中,所述数据流包含所述内容数据和所述区域掩藏。
19.如权利要求15所述的计算机程序产品,其中,当在所述移动设备处接收到所述控制数据时,所述控制数据使得在所述移动设备处生成合成事件,并且所述合成事件修改包含在所述移动应用程序中的所述输入元素的所述初始状态。
20.如权利要求19所述的计算机程序产品,其中,所述合成事件由所述移动设备的操作系统生成,并且所述合成事件复制检测到的所述输入事件。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310496348.3A CN116521299A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和装置 |
CN202310496145.4A CN116528220A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和系统 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662374892P | 2016-08-14 | 2016-08-14 | |
US62/374,892 | 2016-08-14 | ||
PCT/US2017/046550 WO2018034989A1 (en) | 2016-08-14 | 2017-08-11 | Systems and methods for real-time remote control of mobile applications |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310496145.4A Division CN116528220A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和系统 |
CN202310496348.3A Division CN116521299A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109844717A true CN109844717A (zh) | 2019-06-04 |
CN109844717B CN109844717B (zh) | 2023-05-23 |
Family
ID=59762040
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310496348.3A Pending CN116521299A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和装置 |
CN201780063704.5A Active CN109844717B (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的系统和方法 |
CN202310496145.4A Pending CN116528220A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310496348.3A Pending CN116521299A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310496145.4A Pending CN116528220A (zh) | 2016-08-14 | 2017-08-11 | 用于移动应用程序的实时远程控制的方法和系统 |
Country Status (7)
Country | Link |
---|---|
US (4) | US10278065B2 (zh) |
EP (2) | EP4130998A1 (zh) |
JP (3) | JP6983887B2 (zh) |
CN (3) | CN116521299A (zh) |
AU (3) | AU2017312875B2 (zh) |
CA (1) | CA3033743A1 (zh) |
WO (1) | WO2018034989A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857914A (zh) * | 2020-07-06 | 2020-10-30 | 上海意略明数字科技股份有限公司 | 终端上的应用程序操作信息获取方法及装置、存储介质、终端 |
CN111913675A (zh) * | 2020-07-30 | 2020-11-10 | 维沃移动通信有限公司 | 显示控制方法和装置、电子设备及计算机可读存储介质 |
CN112363405A (zh) * | 2020-11-09 | 2021-02-12 | 深圳康佳电子科技有限公司 | 一种智能家居联动控制方法、智能终端、存储介质 |
CN113556261A (zh) * | 2020-04-26 | 2021-10-26 | 阿里巴巴集团控股有限公司 | 数据通信方法、装置、电子设备及计算机可读存储介质 |
CN113835599A (zh) * | 2021-09-24 | 2021-12-24 | 深圳市道通科技股份有限公司 | 一种基于局域网远程控制诊断设备的方法及系统 |
CN115167969A (zh) * | 2022-09-07 | 2022-10-11 | 平安银行股份有限公司 | 基于云端的远程协同方法及装置 |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9432468B2 (en) | 2005-09-14 | 2016-08-30 | Liveperson, Inc. | System and method for design and dynamic generation of a web page |
US8738732B2 (en) | 2005-09-14 | 2014-05-27 | Liveperson, Inc. | System and method for performing follow up based on user interactions |
US8762313B2 (en) | 2008-07-25 | 2014-06-24 | Liveperson, Inc. | Method and system for creating a predictive model for targeting web-page to a surfer |
US8805844B2 (en) | 2008-08-04 | 2014-08-12 | Liveperson, Inc. | Expert search |
US9892417B2 (en) | 2008-10-29 | 2018-02-13 | Liveperson, Inc. | System and method for applying tracing tools for network locations |
US9350598B2 (en) | 2010-12-14 | 2016-05-24 | Liveperson, Inc. | Authentication of service requests using a communications initiation feature |
US8918465B2 (en) | 2010-12-14 | 2014-12-23 | Liveperson, Inc. | Authentication of service requests initiated from a social networking site |
US8805941B2 (en) | 2012-03-06 | 2014-08-12 | Liveperson, Inc. | Occasionally-connected computing interface |
US9563336B2 (en) | 2012-04-26 | 2017-02-07 | Liveperson, Inc. | Dynamic user interface customization |
US9672196B2 (en) | 2012-05-15 | 2017-06-06 | Liveperson, Inc. | Methods and systems for presenting specialized content using campaign metrics |
US11386442B2 (en) | 2014-03-31 | 2022-07-12 | Liveperson, Inc. | Online behavioral predictor |
AU2016270937B2 (en) | 2015-06-02 | 2021-07-29 | Liveperson, Inc. | Dynamic communication routing based on consistency weighting and routing rules |
US10075482B2 (en) * | 2015-09-25 | 2018-09-11 | International Business Machines Corporation | Multiplexed, multimodal conferencing |
US10962780B2 (en) * | 2015-10-26 | 2021-03-30 | Microsoft Technology Licensing, Llc | Remote rendering for virtual images |
US10725761B2 (en) * | 2016-06-10 | 2020-07-28 | Apple Inc. | Providing updated application data for previewing applications on a display |
EP4130998A1 (en) | 2016-08-14 | 2023-02-08 | Liveperson Inc. | Systems and methods for real-time remote control of mobile applications |
FR3057080A1 (fr) * | 2016-09-30 | 2018-04-06 | Orange | Procede de restitution d'une pluralite de messages echanges avec un agent conversationnel |
US11055152B1 (en) * | 2018-01-09 | 2021-07-06 | Amdocs Development Limited | System, method, and computer program for performing user interface synchronization |
JP6678703B2 (ja) * | 2018-07-18 | 2020-04-08 | 株式会社ニューメディア | 制御システム、制御方法、サーバ及び制御プログラム |
EP3608856A1 (en) * | 2018-08-08 | 2020-02-12 | Atos Syntel, Inc. | Systems and methods for merging and aggregation of workflow processes |
US11373001B2 (en) | 2018-10-09 | 2022-06-28 | GlassBox Ltd. | Screen capturing and masking system and method |
US10395648B1 (en) | 2019-02-06 | 2019-08-27 | Capital One Services, Llc | Analysis of a topic in a communication relative to a characteristic of the communication |
CN109922471A (zh) * | 2019-02-15 | 2019-06-21 | 广州供电局有限公司 | 应用数据远程删除方法、装置、计算机设备和存储介质 |
US11429734B2 (en) * | 2019-07-22 | 2022-08-30 | Microsoft Technology Licensing, Llc | Protection of sensitive data fields in webpages |
US12062033B2 (en) * | 2019-08-29 | 2024-08-13 | Tyco Fire & Security Gmbh | Systems and methods for an anonymized tracking service |
US20230093789A9 (en) * | 2020-10-19 | 2023-03-23 | Aveek Kumar Mukherjee | Systems and methods for real time data protection and intelligent input/output interaction |
CN113433860A (zh) * | 2021-06-25 | 2021-09-24 | 山东齐鲁数通科技有限公司 | 一种桌面远程控制方法及系统 |
US11822785B2 (en) * | 2021-07-12 | 2023-11-21 | Salesforce, Inc. | Managing application focus transitions |
WO2023022717A1 (en) * | 2021-08-19 | 2023-02-23 | Hewlett-Packard Development Company, L.P. | Adjustments of remote access applications based on workloads |
CN113938510A (zh) * | 2021-09-29 | 2022-01-14 | 青岛海信移动通信技术股份有限公司 | 一种终端设备和终端控制方法 |
US20230214240A1 (en) * | 2022-01-03 | 2023-07-06 | Dynatrace Llc | Method And System For Event Based, Privacy Aware Capturing Of Partial Screen Changes For Devices With restricted Resources |
GB2627009A (en) * | 2023-02-13 | 2024-08-14 | Avos Tech Ltd | Computer implemented method |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6826707B1 (en) * | 1996-06-18 | 2004-11-30 | Kroll Ontrack Inc. | Apparatus and method for remote data recovery |
US20050086328A1 (en) * | 2003-10-17 | 2005-04-21 | Landram Fredrick J. | Self configuring mobile device and system |
US20110004888A1 (en) * | 2009-07-06 | 2011-01-06 | Sudharshan Srinivasan | Screen sharing method with selective access to both data and logic of a shared application using a helper application |
US20110054296A1 (en) * | 2008-02-07 | 2011-03-03 | Signostics Limited | Remote display for medical scanning apparatus |
CN102143235A (zh) * | 2011-04-12 | 2011-08-03 | 张�林 | 对触摸屏终端提供远程服务的方法及系统 |
US8373538B1 (en) * | 2007-09-12 | 2013-02-12 | Oceans' Edge, Inc. | Mobile device monitoring and control system |
US20130250354A1 (en) * | 2012-03-21 | 2013-09-26 | Yoshinaga Kato | Information providing device, image forming device, and transmission system |
CN104376266A (zh) * | 2014-11-21 | 2015-02-25 | 工业和信息化部电信研究院 | 应用软件安全级别的确定方法及装置 |
CN104838630A (zh) * | 2012-10-10 | 2015-08-12 | 思杰系统有限公司 | 基于策略的应用程序管理 |
CN105578313A (zh) * | 2016-01-06 | 2016-05-11 | 上海斐讯数据通信技术有限公司 | 远程控制方法,系统,远控执行方法,系统及移动终端 |
CN105637523A (zh) * | 2013-10-16 | 2016-06-01 | 思杰系统有限公司 | 用于移动设备管理类型保护的安全客户端驱动映射和文件存储系统 |
US20160198509A1 (en) * | 2005-04-20 | 2016-07-07 | Contact At Once!, Llc. | System and method for analyzing messages and initiating communication sessions |
Family Cites Families (623)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4107443A (en) | 1976-12-30 | 1978-08-15 | General Electric Company | Process for purifying impure diphenols |
US6289319B1 (en) | 1984-05-24 | 2001-09-11 | Lawrence B. Lockwood | Automatic business and financial transaction processing system |
US4953085A (en) | 1987-04-15 | 1990-08-28 | Proprietary Financial Products, Inc. | System for the operation of a financial account |
US5107443A (en) * | 1988-09-07 | 1992-04-21 | Xerox Corporation | Private regions within a shared workspace |
JPH03180968A (ja) | 1989-12-08 | 1991-08-06 | Hitachi Ltd | データベース検索方法およびこれを用いる書式付き文書出力方法 |
GB9024820D0 (en) | 1990-11-15 | 1991-01-02 | Davies Michael J | Pharmaceutical compositions |
US7051273B1 (en) | 1990-11-30 | 2006-05-23 | Microsoft Corporation | Customizing forms in an electronic mail system utilizing custom field behaviors and user defined operations |
WO1992018939A1 (en) | 1991-04-19 | 1992-10-29 | Meiji Milk Products Co., Ltd. | Sale quantity characteristics classification system and supplementary ordering system |
US6850252B1 (en) | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
DE69326364T2 (de) | 1992-02-04 | 2000-02-24 | Ricoh Co., Ltd. | Informationsverarbeitungsapparat und -verfahren unter Verwendung eines zusätzlichen zweckmässigen Informationspakets |
US5774882A (en) | 1992-03-12 | 1998-06-30 | Keen; Regina D. | Credit approval system |
US5528490A (en) | 1992-04-10 | 1996-06-18 | Charles E. Hill & Associates, Inc. | Electronic catalog system and method |
EP0569171A1 (en) | 1992-05-08 | 1993-11-10 | Moore Business Forms, Inc. | Method and apparatus for printing photographs on documents |
US6292786B1 (en) | 1992-05-19 | 2001-09-18 | Incentech, Inc. | Method and system for generating incentives based on substantially real-time product purchase information |
US5819226A (en) | 1992-09-08 | 1998-10-06 | Hnc Software Inc. | Fraud detection using predictive modeling |
US5289371A (en) | 1992-09-11 | 1994-02-22 | Memorylink, Inc. | System and method for routing data and communications |
US6196970B1 (en) | 1999-03-22 | 2001-03-06 | Stephen J. Brown | Research data collection and analysis |
AU674189B2 (en) | 1993-02-23 | 1996-12-12 | Moore North America, Inc. | A method and system for gathering and analyzing customer and purchasing information |
US6052447A (en) | 1993-05-28 | 2000-04-18 | Sprint Communications Company L.P. | Method and apparatus for aggregating customer information for a telecommunications system |
US5794207A (en) | 1996-09-04 | 1998-08-11 | Walker Asset Management Limited Partnership | Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers |
US5940811A (en) | 1993-08-27 | 1999-08-17 | Affinity Technology Group, Inc. | Closed loop financial transaction method and apparatus |
ATE202864T1 (de) | 1993-08-27 | 2001-07-15 | Affinity Technology Inc | Finanzielles transaktionsverfahren und gerät mit geschlossener schleife |
US5583763A (en) | 1993-09-09 | 1996-12-10 | Mni Interactive | Method and apparatus for recommending selections based on preferences in a multi-user system |
DE69420096T2 (de) | 1993-09-22 | 1999-12-09 | Teknekron Infowitch Corp., Fort Worth | Telekommunikationssystemüberwachung |
US5530793A (en) | 1993-09-24 | 1996-06-25 | Eastman Kodak Company | System for custom imprinting a variety of articles with images obtained from a variety of different sources |
US5517405A (en) | 1993-10-14 | 1996-05-14 | Aetna Life And Casualty Company | Expert system for providing interactive assistance in solving problems such as health care management |
US5930776A (en) | 1993-11-01 | 1999-07-27 | The Golden 1 Credit Union | Lender direct credit evaluation and loan processing system |
US5611052A (en) | 1993-11-01 | 1997-03-11 | The Golden 1 Credit Union | Lender direct credit evaluation and loan processing system |
US5581702A (en) | 1993-12-20 | 1996-12-03 | Intel Corporation | Computer conferencing system for selectively linking and unlinking private page with public page by selectively activating linked mode and non-linked mode for each participant |
JP3614880B2 (ja) | 1993-12-30 | 2005-01-26 | オリンパス株式会社 | デジタルカメラ |
EP0674283A3 (en) | 1994-03-24 | 1996-03-27 | At & T Global Inf Solution | Order and download computerized repository resources. |
US5799151A (en) | 1994-04-04 | 1998-08-25 | Hoffer; Steven M. | Interactive electronic trade network and user interface |
US5636346A (en) | 1994-05-09 | 1997-06-03 | The Electronic Address, Inc. | Method and system for selectively targeting advertisements and programming |
US5704029A (en) | 1994-05-23 | 1997-12-30 | Wright Strategies, Inc. | System and method for completing an electronic form |
US5590038A (en) | 1994-06-20 | 1996-12-31 | Pitroda; Satyan G. | Universal electronic transaction card including receipt storage and system and methods of conducting electronic transactions |
US20060284378A1 (en) | 2002-05-20 | 2006-12-21 | Shuffle Master, Inc. | Poker game with blind bet and player selectable play wager |
US5563805A (en) | 1994-08-16 | 1996-10-08 | International Business Machines Corporation | Multimedia context-sensitive real-time-help mechanism for use in a data processing system |
GB9416673D0 (en) | 1994-08-17 | 1994-10-12 | Reuters Ltd | Data exchange filtering system |
US5765142A (en) | 1994-08-18 | 1998-06-09 | Creatacard | Method and apparatus for the development and implementation of an interactive customer service system that is dynamically responsive to change in marketing decisions and environments |
US5592378A (en) | 1994-08-19 | 1997-01-07 | Andersen Consulting Llp | Computerized order entry system and method |
US5797133A (en) | 1994-08-31 | 1998-08-18 | Strategic Solutions Group, Inc | Method for automatically determining the approval status of a potential borrower |
US6222919B1 (en) | 1994-09-12 | 2001-04-24 | Rockwell International Corporation | Method and system for routing incoming telephone calls to available agents based on agent skills |
US5826241A (en) | 1994-09-16 | 1998-10-20 | First Virtual Holdings Incorporated | Computerized system for making payments and authenticating transactions over the internet |
US5594791A (en) | 1994-10-05 | 1997-01-14 | Inventions, Inc. | Method and apparatus for providing result-oriented customer service |
JP3543395B2 (ja) | 1994-11-17 | 2004-07-14 | 株式会社日立製作所 | サービス提供および利用方法 |
US5758257A (en) | 1994-11-29 | 1998-05-26 | Herz; Frederick | System and method for scheduling broadcast of and access to video programs and other data using customer profiles |
US5850518A (en) | 1994-12-12 | 1998-12-15 | Northrup; Charles J. | Access-method-independent exchange |
US5857079A (en) | 1994-12-23 | 1999-01-05 | Lucent Technologies Inc. | Smart card for automatic financial records |
US5732400A (en) | 1995-01-04 | 1998-03-24 | Citibank N.A. | System and method for a risk-based purchase of goods |
US5668953A (en) | 1995-02-22 | 1997-09-16 | Sloo; Marshall Allan | Method and apparatus for handling a complaint |
US5696907A (en) | 1995-02-27 | 1997-12-09 | General Electric Company | System and method for performing risk and credit analysis of financial service applications |
JPH08235260A (ja) | 1995-03-01 | 1996-09-13 | Fujitsu Ltd | マルチメディア通信システム |
US5727163A (en) | 1995-03-30 | 1998-03-10 | Amazon.Com, Inc. | Secure method for communicating credit card data when placing an order on a non-secure network |
US6463149B1 (en) | 1995-04-10 | 2002-10-08 | Edify Corporation | Web page synchronization system and method |
CA2173304C (en) | 1995-04-21 | 2003-04-29 | Anthony J. Dezonno | Method and system for establishing voice communications using a computer network |
EP0740450B1 (en) | 1995-04-24 | 2006-06-14 | International Business Machines Corporation | Method and apparatus for skill-based routing in a call center |
US5774883A (en) | 1995-05-25 | 1998-06-30 | Andersen; Lloyd R. | Method for selecting a seller's most profitable financing program |
US5774869A (en) | 1995-06-06 | 1998-06-30 | Interactive Media Works, Llc | Method for providing sponsor paid internet access and simultaneous sponsor promotion |
US5806043A (en) | 1995-06-06 | 1998-09-08 | Interactive Media Works, L.L.C. | Method for providing customer on-line support via prepaid internet access |
US5866889A (en) | 1995-06-07 | 1999-02-02 | Citibank, N.A. | Integrated full service consumer banking system and system and method for opening an account |
US5664115A (en) | 1995-06-07 | 1997-09-02 | Fraser; Richard | Interactive computer system to match buyers and sellers of real estate, businesses and other property using the internet |
US5819236A (en) | 1995-06-12 | 1998-10-06 | Carreker-Antinori, Inc. | System and method for providing advance notification of potential presentment returns due to account restrictions |
US5678002A (en) | 1995-07-18 | 1997-10-14 | Microsoft Corporation | System and method for providing automated customer support |
US5826244A (en) | 1995-08-23 | 1998-10-20 | Xerox Corporation | Method and system for providing a document service over a computer network using an automated brokered auction |
US5710887A (en) | 1995-08-29 | 1998-01-20 | Broadvision | Computer system and method for electronic commerce |
US5850517A (en) | 1995-08-31 | 1998-12-15 | Oracle Corporation | Communication link for client-server having agent which sends plurality of requests independent of client and receives information from the server independent of the server |
US5784568A (en) | 1995-08-31 | 1998-07-21 | Intel Corporation | Multi-party audio chat system which allows individual user utterances to be staged separately to render received utterances in order |
US5878403A (en) | 1995-09-12 | 1999-03-02 | Cmsi | Computer implemented automated credit application analysis and decision routing system |
US5812769A (en) | 1995-09-20 | 1998-09-22 | Infonautics Corporation | Method and apparatus for redirecting a user to a new location on the world wide web using relative universal resource locators |
US5694163A (en) | 1995-09-28 | 1997-12-02 | Intel Corporation | Method and apparatus for viewing of on-line information service chat data incorporated in a broadcast television program |
US5572643A (en) | 1995-10-19 | 1996-11-05 | Judson; David H. | Web browser with dynamic display of information objects during linking |
US6249795B1 (en) | 1995-10-27 | 2001-06-19 | At&T Corp. | Personalizing the display of changes to records in an on-line repository |
US6067525A (en) | 1995-10-30 | 2000-05-23 | Clear With Computers | Integrated computerized sales force automation system |
US5715402A (en) | 1995-11-09 | 1998-02-03 | Spot Metals Online | Method and system for matching sellers and buyers of spot metals |
US5838682A (en) | 1995-11-28 | 1998-11-17 | Bell Atlantic Network Services, Inc. | Method and apparatus for establishing communications with a remote node on a switched network based on hypertext dialing information received from a packet network |
US6088686A (en) | 1995-12-12 | 2000-07-11 | Citibank, N.A. | System and method to performing on-line credit reviews and approvals |
US5774870A (en) | 1995-12-14 | 1998-06-30 | Netcentives, Inc. | Fully integrated, on-line interactive frequency and award redemption program |
US5761640A (en) | 1995-12-18 | 1998-06-02 | Nynex Science & Technology, Inc. | Name and address processor |
AU1566597A (en) | 1995-12-27 | 1997-08-11 | Gary B. Robinson | Automated collaborative filtering in world wide web advertising |
US5793365A (en) | 1996-01-02 | 1998-08-11 | Sun Microsystems, Inc. | System and method providing a computer user interface enabling access to distributed workgroup members |
US6119101A (en) | 1996-01-17 | 2000-09-12 | Personal Agents, Inc. | Intelligent agents for electronic commerce |
US5745654A (en) | 1996-02-13 | 1998-04-28 | Hnc Software, Inc. | Fast explanations of scored observations |
US5758328A (en) | 1996-02-22 | 1998-05-26 | Giovannoli; Joseph | Computerized quotation system and method |
US5838910A (en) | 1996-03-14 | 1998-11-17 | Domenikos; Steven D. | Systems and methods for executing application programs from a memory device linked to a server at an internet site |
US5815663A (en) | 1996-03-15 | 1998-09-29 | The Robert G. Uomini And Louise B. Bidwell Trust | Distributed posting system using an indirect reference protocol |
US6044360A (en) | 1996-04-16 | 2000-03-28 | Picciallo; Michael J. | Third party credit card |
US6014645A (en) | 1996-04-19 | 2000-01-11 | Block Financial Corporation | Real-time financial card application system |
US5761647A (en) | 1996-05-24 | 1998-06-02 | Harrah's Operating Company, Inc. | National customer recognition system and method |
US20030195848A1 (en) | 1996-06-05 | 2003-10-16 | David Felger | Method of billing a purchase made over a computer network |
US5987434A (en) | 1996-06-10 | 1999-11-16 | Libman; Richard Marc | Apparatus and method for transacting marketing and sales of financial products |
US5862330A (en) | 1996-07-16 | 1999-01-19 | Lucent Technologies Inc. | Technique for obtaining and exchanging information on wolrd wide web |
US5760771A (en) | 1996-07-17 | 1998-06-02 | At & T Corp | System and method for providing structured tours of hypertext files |
US5956693A (en) | 1996-07-19 | 1999-09-21 | Geerlings; Huib | Computer system for merchant communication to customers |
US6021403A (en) | 1996-07-19 | 2000-02-01 | Microsoft Corporation | Intelligent user assistance facility |
US5862223A (en) | 1996-07-24 | 1999-01-19 | Walker Asset Management Limited Partnership | Method and apparatus for a cryptographically-assisted commercial network system designed to facilitate and support expert-based commerce |
US5805159A (en) | 1996-08-22 | 1998-09-08 | International Business Machines Corporation | Mobile client computer interdependent display data fields |
US5819291A (en) | 1996-08-23 | 1998-10-06 | General Electric Company | Matching new customer records to existing customer records in a large business database using hash key |
US5907677A (en) | 1996-08-23 | 1999-05-25 | Ecall Inc. | Method for establishing anonymous communication links |
US6016504A (en) | 1996-08-28 | 2000-01-18 | Infospace.Com, Inc. | Method and system for tracking the purchase of a product and services over the Internet |
US6240396B1 (en) | 1996-09-04 | 2001-05-29 | Priceline.Com Incorporated | Conditional purchase offer management system for event tickets |
US6510418B1 (en) | 1996-09-04 | 2003-01-21 | Priceline.Com Incorporated | Method and apparatus for detecting and deterring the submission of similar offers in a commerce system |
US5958014A (en) | 1996-09-24 | 1999-09-28 | Intervoice Limited Partnership | System and method for establishing a real-time agent pool between computer systems |
US5764916A (en) | 1996-09-27 | 1998-06-09 | Ichat, Inc. | Method and apparatus for real time communication over a computer network |
US5963625A (en) | 1996-09-30 | 1999-10-05 | At&T Corp | Method for providing called service provider control of caller access to pay services |
US5966699A (en) | 1996-10-11 | 1999-10-12 | Zandi; Richard | System and method for conducting loan auction over computer network |
KR100230455B1 (ko) | 1996-10-21 | 1999-11-15 | 윤종용 | 경영관리 자동화 시스템의 회계처리장치 및 방법 |
US5974446A (en) | 1996-10-24 | 1999-10-26 | Academy Of Applied Science | Internet based distance learning system for communicating between server and clients wherein clients communicate with each other or with teacher using different communication techniques via common user interface |
US5948061A (en) | 1996-10-29 | 1999-09-07 | Double Click, Inc. | Method of delivery, targeting, and measuring advertising over networks |
US6603487B1 (en) | 1996-10-31 | 2003-08-05 | International Business Machines Corporation | System for electronically developing and processing a document |
US5796393A (en) | 1996-11-08 | 1998-08-18 | Compuserve Incorporated | System for intergrating an on-line service community with a foreign service |
US5828839A (en) | 1996-11-14 | 1998-10-27 | Interactive Broadcaster Services Corp. | Computer network chat room based on channel broadcast in real time |
US6202155B1 (en) | 1996-11-22 | 2001-03-13 | Ubiq Incorporated | Virtual card personalization system |
US6014644A (en) | 1996-11-22 | 2000-01-11 | Pp International, Inc. | Centrally coordinated communication systems with multiple broadcast data objects and response tracking |
US6134533A (en) | 1996-11-25 | 2000-10-17 | Shell; Allyn M. | Multi-level marketing computer network server |
US5950179A (en) | 1996-12-03 | 1999-09-07 | Providian Financial Corporation | Method and system for issuing a secured credit card |
US5916302A (en) | 1996-12-06 | 1999-06-29 | International Business Machines Corporation | Multimedia conferencing using parallel networks |
US6131095A (en) | 1996-12-11 | 2000-10-10 | Hewlett-Packard Company | Method of accessing a target entity over a communications network |
IL130735A (en) | 1997-01-06 | 2004-05-12 | Bellsouth Corp | Method and system for monitoring network usage |
US6052730A (en) | 1997-01-10 | 2000-04-18 | The Board Of Trustees Of The Leland Stanford Junior University | Method for monitoring and/or modifying web browsing sessions |
US5903641A (en) | 1997-01-28 | 1999-05-11 | Lucent Technologies Inc. | Automatic dynamic changing of agents' call-handling assignments |
US6473787B2 (en) | 1997-02-06 | 2002-10-29 | Genesys Telecommunications Laboratories, Inc. | System for routing electronic mails |
US6044146A (en) | 1998-02-17 | 2000-03-28 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for call distribution and override with priority |
US5819029A (en) | 1997-02-20 | 1998-10-06 | Brittan Communications International Corp. | Third party verification system and method |
US6597377B1 (en) | 1997-02-25 | 2003-07-22 | International Business Machines Corporation | Web links objects |
US5970478A (en) | 1997-03-12 | 1999-10-19 | Walker Asset Management Limited Partnership | Method, apparatus, and program for customizing credit accounts |
US6134318A (en) | 1997-03-19 | 2000-10-17 | At&T Corp | System and method for telemarketing through a hypertext network |
US5796952A (en) | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
US6064987A (en) | 1997-03-21 | 2000-05-16 | Walker Digital, Llc | Method and apparatus for providing and processing installment plans at a terminal |
US5945989A (en) | 1997-03-25 | 1999-08-31 | Premiere Communications, Inc. | Method and apparatus for adding and altering content on websites |
US6892226B1 (en) | 1997-03-27 | 2005-05-10 | Intel Corporation | System for delivery of dynamic content to a client device |
US6028601A (en) | 1997-04-01 | 2000-02-22 | Apple Computer, Inc. | FAQ link creation between user's questions and answers |
US5943478A (en) | 1997-04-04 | 1999-08-24 | Flash Communications, Inc. | System for immediate popup messaging across the internet |
US5832465A (en) | 1997-04-07 | 1998-11-03 | General Electric Company | Method for building a self-learning evidential reasoning system |
US6853984B1 (en) | 1997-04-08 | 2005-02-08 | Propay U.S.A., Inc. | Method and apparatus for credit card processing via facsimile |
US5895454A (en) | 1997-04-17 | 1999-04-20 | Harrington; Juliette | Integrated interface for vendor/product oriented internet websites |
JP3634556B2 (ja) | 1997-05-12 | 2005-03-30 | キヤノン株式会社 | 画像処理方法及びそのシステム |
US20010013009A1 (en) | 1997-05-20 | 2001-08-09 | Daniel R. Greening | System and method for computer-based marketing |
US6119103A (en) | 1997-05-27 | 2000-09-12 | Visa International Service Association | Financial risk prediction systems and methods therefor |
US20010011262A1 (en) | 1997-06-03 | 2001-08-02 | Timothy Hoyt | Photo kiosk for transmitting a photographic image |
US6085195A (en) | 1998-06-02 | 2000-07-04 | Xstasis, Llc | Internet photo booth |
US5991740A (en) | 1997-06-10 | 1999-11-23 | Messer; Stephen Dale | Data processing system for integrated tracking and management of commerce related activities on a public access network |
US5949044A (en) | 1997-06-13 | 1999-09-07 | Walker Asset Management Limited Partnership | Method and apparatus for funds and credit line transfers |
AU8072798A (en) | 1997-06-16 | 1999-01-04 | Doubleclick Inc. | Method and apparatus for automatic placement of advertising |
US6029141A (en) | 1997-06-27 | 2000-02-22 | Amazon.Com, Inc. | Internet-based customer referral system |
US20010054064A1 (en) | 1997-07-02 | 2001-12-20 | Pallipuram V. Kannan | Method system and computer program product for providing customer service over the world-wide web |
US6018774A (en) | 1997-07-03 | 2000-01-25 | Yobaby Productions, Llc | Method and system for creating messages including image information |
US6014647A (en) | 1997-07-08 | 2000-01-11 | Nizzari; Marcia M. | Customer interaction tracking |
CA2301026A1 (en) | 1997-08-13 | 1999-02-25 | Citicorp Development Center, Inc. | Personal banking machine |
US6112190A (en) | 1997-08-19 | 2000-08-29 | Citibank, N.A. | Method and system for commercial credit analysis |
US5940812A (en) | 1997-08-19 | 1999-08-17 | Loanmarket Resources, L.L.C. | Apparatus and method for automatically matching a best available loan to a potential borrower via global telecommunications network |
US7376603B1 (en) | 1997-08-19 | 2008-05-20 | Fair Isaac Corporation | Method and system for evaluating customers of a financial institution using customer relationship value tags |
US6026370A (en) | 1997-08-28 | 2000-02-15 | Catalina Marketing International, Inc. | Method and apparatus for generating purchase incentive mailing based on prior purchase history |
US20010056405A1 (en) | 1997-09-11 | 2001-12-27 | Muyres Matthew R. | Behavior tracking and user profiling system |
US5960411A (en) | 1997-09-12 | 1999-09-28 | Amazon.Com, Inc. | Method and system for placing a purchase order via a communications network |
US6272506B1 (en) | 1997-09-12 | 2001-08-07 | Doxis, Llc | Computerized verification form processing system and method |
US5995947A (en) | 1997-09-12 | 1999-11-30 | Imx Mortgage Exchange | Interactive mortgage and loan information and real-time trading system |
US6000832A (en) | 1997-09-24 | 1999-12-14 | Microsoft Corporation | Electronic online commerce card with customer generated transaction proxy number for online transactions |
WO1999017224A1 (en) | 1997-09-29 | 1999-04-08 | Fujun Bi | A multi-element confidence matching system and the method therefor |
JP4077909B2 (ja) | 1997-10-03 | 2008-04-23 | 富士通株式会社 | 帳票処理装置 |
WO1999018514A1 (en) | 1997-10-06 | 1999-04-15 | Contact Dynamics, Inc. | System enabling a salesperson to chat with a customer browsing the salesperson's web site |
US5970475A (en) | 1997-10-10 | 1999-10-19 | Intelisys Electronic Commerce, Llc | Electronic procurement system and method for trading partners |
US6009410A (en) | 1997-10-16 | 1999-12-28 | At&T Corporation | Method and system for presenting customized advertising to a user on the world wide web |
US6055510A (en) | 1997-10-24 | 2000-04-25 | At&T Corp. | Method for performing targeted marketing over a large computer network |
US6925441B1 (en) | 1997-10-27 | 2005-08-02 | Marketswitch Corp. | System and method of targeted marketing |
US6131087A (en) | 1997-11-05 | 2000-10-10 | The Planning Solutions Group, Inc. | Method for automatically identifying, matching, and near-matching buyers and sellers in electronic market transactions |
US6134532A (en) | 1997-11-14 | 2000-10-17 | Aptex Software, Inc. | System and method for optimal adaptive matching of users to most relevant entity and information in real-time |
US6076100A (en) | 1997-11-17 | 2000-06-13 | Microsoft Corporation | Server-side chat monitor |
US6493447B1 (en) | 1997-11-21 | 2002-12-10 | Mci Communications Corporation | Contact server for call center for syncronizing simultaneous telephone calls and TCP/IP communications |
US6085126A (en) | 1997-11-21 | 2000-07-04 | St. Paul Stamp Works, Inc. | System and method for preparing custom designs for multiple types of imprintable media |
US6084585A (en) | 1998-07-29 | 2000-07-04 | International Business Machines Corp. | System for directly accessing fields on electronic forms |
US6058428A (en) | 1997-12-05 | 2000-05-02 | Pictra, Inc. | Method and apparatus for transferring digital images on a network |
US6195426B1 (en) | 1997-12-11 | 2001-02-27 | At&T Corp. | Service providing customized information to queuing customers |
US6049784A (en) | 1997-12-16 | 2000-04-11 | Capital One Financial Corporation | Method for creating and managing a lease agreement |
US6804659B1 (en) | 2000-01-14 | 2004-10-12 | Ricoh Company Ltd. | Content based web advertising |
US6202053B1 (en) | 1998-01-23 | 2001-03-13 | First Usa Bank, Na | Method and apparatus for generating segmentation scorecards for evaluating credit risk of bank card applicants |
CA2228331C (en) | 1998-01-30 | 2002-01-15 | Ibm Canada Limited-Ibm Canada Limitee | A token-based deadline enforcement system for electronic document submission |
GB9801978D0 (en) | 1998-01-30 | 1998-03-25 | Orbital Technologies Limited | Information systems |
US6449358B1 (en) | 1998-02-17 | 2002-09-10 | Genesys Telecommunications Laboratories, Inc. | Method for predicting and managing call load by determining the optimum frequency of outbound call generation during an out-bound calling campaign from a call center |
US5943416A (en) | 1998-02-17 | 1999-08-24 | Genesys Telecommunications Laboratories, Inc. | Automated survey control routine in a call center environment |
JPH11232330A (ja) | 1998-02-18 | 1999-08-27 | Hitachi Ltd | マーケティングシステム |
US6144991A (en) | 1998-02-19 | 2000-11-07 | Telcordia Technologies, Inc. | System and method for managing interactions between users in a browser-based telecommunications network |
US6170011B1 (en) | 1998-09-11 | 2001-01-02 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for determining and initiating interaction directionality within a multimedia communication center |
US6381640B1 (en) | 1998-09-11 | 2002-04-30 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for automated personalization and presentation of workload assignments to agents within a multimedia communication center |
US6138139A (en) | 1998-10-29 | 2000-10-24 | Genesys Telecommunications Laboraties, Inc. | Method and apparatus for supporting diverse interaction paths within a multimedia communication center |
US6167395A (en) | 1998-09-11 | 2000-12-26 | Genesys Telecommunications Laboratories, Inc | Method and apparatus for creating specialized multimedia threads in a multimedia communication center |
US6535492B2 (en) | 1999-12-01 | 2003-03-18 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for assigning agent-led chat sessions hosted by a communication center to available agents based on message load and agent skill-set |
US6346952B1 (en) | 1999-12-01 | 2002-02-12 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for summarizing previous threads in a communication-center chat session |
GB9803819D0 (en) | 1998-02-24 | 1998-04-22 | Philips Electronics Nv | Context sensitive web communications |
US20020059095A1 (en) | 1998-02-26 | 2002-05-16 | Cook Rachael Linette | System and method for generating, capturing, and managing customer lead information over a computer network |
US6199079B1 (en) | 1998-03-09 | 2001-03-06 | Junglee Corporation | Method and system for automatically filling forms in an integrated network based transaction environment |
US6230121B1 (en) | 1998-03-30 | 2001-05-08 | International Business Machines Corporation | Measurement and validation of interaction and communication |
US6618746B2 (en) | 1998-03-30 | 2003-09-09 | Markettools, Inc. | Survey communication across a network |
US6192380B1 (en) | 1998-03-31 | 2001-02-20 | Intel Corporation | Automatic web based form fill-in |
US6078892A (en) | 1998-04-09 | 2000-06-20 | International Business Machines Corporation | Method for customer lead selection and optimization |
US6173053B1 (en) | 1998-04-09 | 2001-01-09 | Avaya Technology Corp. | Optimizing call-center performance by using predictive data to distribute calls among agents |
US6134530A (en) | 1998-04-17 | 2000-10-17 | Andersen Consulting Llp | Rule based routing system and method for a virtual sales and service center |
US6192319B1 (en) | 1998-04-24 | 2001-02-20 | Cfi Group | Statistical impact analysis computer system |
US6385594B1 (en) | 1998-05-08 | 2002-05-07 | Lendingtree, Inc. | Method and computer network for co-ordinating a loan over the internet |
US6061658A (en) | 1998-05-14 | 2000-05-09 | International Business Machines Corporation | Prospective customer selection using customer and market reference data |
US6185543B1 (en) | 1998-05-15 | 2001-02-06 | Marketswitch Corp. | Method and apparatus for determining loan prepayment scores |
US6182050B1 (en) | 1998-05-28 | 2001-01-30 | Acceleration Software International Corporation | Advertisements distributed on-line using target criteria screening with method for maintaining end user privacy |
US6311169B2 (en) | 1998-06-11 | 2001-10-30 | Consumer Credit Associates, Inc. | On-line consumer credit data reporting system |
US6505176B2 (en) | 1998-06-12 | 2003-01-07 | First American Credit Management Solutions, Inc. | Workflow management system for an automated credit application system |
US6615189B1 (en) | 1998-06-22 | 2003-09-02 | Bank One, Delaware, National Association | Debit purchasing of stored value card for use by and/or delivery to others |
US6029890A (en) | 1998-06-22 | 2000-02-29 | Austin; Frank | User-Specified credit card system |
US6349290B1 (en) | 1998-06-30 | 2002-02-19 | Citibank, N.A. | Automated system and method for customized and personalized presentation of products and services of a financial institution |
US6070149A (en) | 1998-07-02 | 2000-05-30 | Activepoint Ltd. | Virtual sales personnel |
US6327574B1 (en) | 1998-07-07 | 2001-12-04 | Encirq Corporation | Hierarchical models of consumer attributes for targeting content in a privacy-preserving manner |
JP5053483B2 (ja) | 1998-08-03 | 2012-10-17 | グーグル インコーポレイティド | 再ターゲット化広告配布のためのネットワーク |
US7194436B2 (en) | 1998-08-10 | 2007-03-20 | Ford Motor Company | Method and system for internet based financial auto credit application |
US6438526B1 (en) | 1998-09-09 | 2002-08-20 | Frederick T. Dykes | System and method for transmitting and processing loan data |
US6317722B1 (en) | 1998-09-18 | 2001-11-13 | Amazon.Com, Inc. | Use of electronic shopping carts to generate personal recommendations |
US6338066B1 (en) | 1998-09-25 | 2002-01-08 | International Business Machines Corporation | Surfaid predictor: web-based system for predicting surfer behavior |
US6920434B1 (en) | 1998-09-28 | 2005-07-19 | Genesis Three Corporation | Computerized system and method for establishing a loan participation network |
US6236975B1 (en) | 1998-09-29 | 2001-05-22 | Ignite Sales, Inc. | System and method for profiling customers for targeted marketing |
US6449646B1 (en) | 1998-10-13 | 2002-09-10 | Aspect Communications Corporation | Method and apparatus for allocating mixed transaction type messages to resources via an integrated queuing mechanism |
US6285983B1 (en) | 1998-10-21 | 2001-09-04 | Lend Lease Corporation Ltd. | Marketing systems and methods that preserve consumer privacy |
US6189003B1 (en) | 1998-10-23 | 2001-02-13 | Wynwyn.Com Inc. | Online business directory with predefined search template for facilitating the matching of buyers to qualified sellers |
US7742966B2 (en) | 1998-10-24 | 2010-06-22 | Marketcore.Com, Inc. | Efficient market for financial products |
US20050004864A1 (en) | 2000-06-15 | 2005-01-06 | Nextcard Inc. | Implementing a counter offer for an on line credit card application |
US6795812B1 (en) | 1998-11-03 | 2004-09-21 | Nextcard, Inc. | Implementing a counter offer for an on line credit card application |
US6405181B2 (en) | 1998-11-03 | 2002-06-11 | Nextcard, Inc. | Method and apparatus for real time on line credit approval |
US6567791B2 (en) | 1998-11-03 | 2003-05-20 | Nextcard, Inc. | Method and apparatus for a verifiable on line rejection of an application for credit |
US6324524B1 (en) | 1998-11-03 | 2001-11-27 | Nextcard, Inc. | Method and apparatus for an account level offer of credit and real time balance transfer |
US8010422B1 (en) | 1998-11-03 | 2011-08-30 | Nextcard, Llc | On-line balance transfers |
WO2000028453A1 (en) | 1998-11-09 | 2000-05-18 | E-Fin, Llc | Computer-driven information management system for selectively matching credit applicants with money lenders through a global communications network |
US6766302B2 (en) | 1998-11-09 | 2004-07-20 | Joseph Bach | Method and apparatus for advertisement |
US6134548A (en) | 1998-11-19 | 2000-10-17 | Ac Properties B.V. | System, method and article of manufacture for advanced mobile bargain shopping |
US6141653A (en) | 1998-11-16 | 2000-10-31 | Tradeaccess Inc | System for interative, multivariate negotiations over a network |
JP4218099B2 (ja) | 1998-12-03 | 2009-02-04 | ソニー株式会社 | データベース、顧客情報検索方法及び顧客情報検索装置 |
US6298348B1 (en) | 1998-12-03 | 2001-10-02 | Expanse Networks, Inc. | Consumer profiling system |
US6266774B1 (en) | 1998-12-08 | 2001-07-24 | Mcafee.Com Corporation | Method and system for securing, managing or optimizing a personal computer |
US6665395B1 (en) | 1998-12-11 | 2003-12-16 | Avaya Technology Corp. | Automatic call distribution system using computer network-based communication |
US6055573A (en) | 1998-12-30 | 2000-04-25 | Supermarkets Online, Inc. | Communicating with a computer based on an updated purchase behavior classification of a particular consumer |
US6851115B1 (en) | 1999-01-05 | 2005-02-01 | Sri International | Software-based architecture for communication and cooperation among distributed electronic agents |
US6466970B1 (en) | 1999-01-27 | 2002-10-15 | International Business Machines Corporation | System and method for collecting and analyzing information about content requested in a network (World Wide Web) environment |
US6925442B1 (en) | 1999-01-29 | 2005-08-02 | Elijahu Shapira | Method and apparatus for evaluating vistors to a web server |
JP2000242392A (ja) | 1999-02-12 | 2000-09-08 | Dbm Korea:Kk | 動的な情報ディスプレイのためのコンピュータシステム及びその方法 |
US6334110B1 (en) | 1999-03-10 | 2001-12-25 | Ncr Corporation | System and method for analyzing customer transactions and interactions |
US6223165B1 (en) | 1999-03-22 | 2001-04-24 | Keen.Com, Incorporated | Method and apparatus to connect consumer to expert |
US6741995B1 (en) | 1999-03-23 | 2004-05-25 | Metaedge Corporation | Method for dynamically creating a profile |
US6519628B1 (en) | 1999-03-24 | 2003-02-11 | Live Person, Inc. | Method and system for customer service using a packet switched network |
US6907566B1 (en) | 1999-04-02 | 2005-06-14 | Overture Services, Inc. | Method and system for optimum placement of advertisements on a webpage |
US6836768B1 (en) | 1999-04-27 | 2004-12-28 | Surfnotes | Method and apparatus for improved information representation |
US6430539B1 (en) | 1999-05-06 | 2002-08-06 | Hnc Software | Predictive modeling of consumer financial behavior |
US6571234B1 (en) | 1999-05-11 | 2003-05-27 | Prophet Financial Systems, Inc. | System and method for managing online message board |
US6721713B1 (en) | 1999-05-27 | 2004-04-13 | Andersen Consulting Llp | Business alliance identification in a web architecture framework |
US7523191B1 (en) | 2000-06-02 | 2009-04-21 | Yahoo! Inc. | System and method for monitoring user interaction with web pages |
US6393479B1 (en) | 1999-06-04 | 2002-05-21 | Webside Story, Inc. | Internet website traffic flow analysis |
US7350139B1 (en) | 2000-06-16 | 2008-03-25 | American Express Travel Related Services Company, Inc. | System and method for utilizing a drag and drop technique to complete electronic forms |
US20020026351A1 (en) | 1999-06-30 | 2002-02-28 | Thomas E. Coleman | Method and system for delivery of targeted commercial messages |
US7628730B1 (en) | 1999-07-08 | 2009-12-08 | Icon Ip, Inc. | Methods and systems for controlling an exercise apparatus using a USB compatible portable remote device |
US6510427B1 (en) | 1999-07-19 | 2003-01-21 | Ameritech Corporation | Customer feedback acquisition and processing system |
US6965868B1 (en) | 1999-08-03 | 2005-11-15 | Michael David Bednarek | System and method for promoting commerce, including sales agent assisted commerce, in a networked economy |
US7945468B1 (en) | 1999-08-20 | 2011-05-17 | Frontline Technologies, Inc. | Notification of employees via pass code accessed web pages |
US6356909B1 (en) | 1999-08-23 | 2002-03-12 | Proposal Technologies Network, Inc. | Web based system for managing request for proposal and responses |
US6771766B1 (en) | 1999-08-31 | 2004-08-03 | Verizon Services Corp. | Methods and apparatus for providing live agent assistance |
US6892347B1 (en) | 1999-09-16 | 2005-05-10 | Customersat.Com, Inc. | Techniques for monitoring user activities at a web site and for initiating an action when the user exits from the web site |
US6839680B1 (en) | 1999-09-30 | 2005-01-04 | Fujitsu Limited | Internet profiling |
US20020010608A1 (en) | 1999-10-08 | 2002-01-24 | Scott Faber | System for provding services in real-time overthe internet |
US7346604B1 (en) | 1999-10-15 | 2008-03-18 | Hewlett-Packard Development Company, L.P. | Method for ranking hypertext search results by analysis of hyperlinks from expert documents and keyword scope |
US6993557B1 (en) | 1999-10-25 | 2006-01-31 | Broadon Communications Corp. | Creation of customized web pages for use in a system of dynamic trading of knowledge, goods and services |
GB9925289D0 (en) | 1999-10-27 | 1999-12-29 | Ibm | Method and means for adjusting the timing of user-activity-dependent changes of operational state of an apparatus |
US7630986B1 (en) | 1999-10-27 | 2009-12-08 | Pinpoint, Incorporated | Secure data interchange |
US6850896B1 (en) | 1999-10-28 | 2005-02-01 | Market-Touch Corporation | Method and system for managing and providing sales data using world wide web |
WO2001035272A2 (en) | 1999-11-05 | 2001-05-17 | Knowitall, Inc. | Apparatus and method for selective routing of users to experts over a network of computers |
US6954783B1 (en) | 1999-11-12 | 2005-10-11 | Bmc Software, Inc. | System and method of mediating a web page |
US20010032244A1 (en) | 1999-11-15 | 2001-10-18 | Neustel Michael S. | Internet based help system |
GB9927371D0 (en) | 1999-11-20 | 2000-01-19 | Ncr Int Inc | Processing database entries to provide predictions of future data values |
US6671818B1 (en) | 1999-11-22 | 2003-12-30 | Accenture Llp | Problem isolation through translating and filtering events into a standard object format in a network based supply chain |
US6606744B1 (en) | 1999-11-22 | 2003-08-12 | Accenture, Llp | Providing collaborative installation management in a network-based supply chain environment |
US20020022978A1 (en) | 1999-12-03 | 2002-02-21 | Schiff Martin R. | Systems and methods of displaying cruise line pricing data |
US20030036949A1 (en) | 1999-12-10 | 2003-02-20 | Karim Kaddeche | Method and system for targeting internet advertisements and messages by geographic location |
US20010032140A1 (en) | 1999-12-14 | 2001-10-18 | Hoffman Roger P. | Virtual sales agent |
US20020029188A1 (en) | 1999-12-20 | 2002-03-07 | Schmid Stephen J. | Method and apparatus to facilitate competitive financing activities among myriad lenders on behalf of one borrower |
US6760429B1 (en) | 1999-12-23 | 2004-07-06 | Nortel Networks Limited | Web based agent backed system that provides streaming multimedia support |
US6622131B1 (en) | 1999-12-23 | 2003-09-16 | Rategenius, Inc. | Method and system for auctioning loans through a computing system |
US20010054041A1 (en) | 1999-12-29 | 2001-12-20 | Lan Chang | System and method for registering or searching in multiple relationship-searching hosts |
US7003476B1 (en) | 1999-12-29 | 2006-02-21 | General Electric Capital Corporation | Methods and systems for defining targeted marketing campaigns using embedded models and historical data |
US6965865B2 (en) | 1999-12-30 | 2005-11-15 | Bank One Delaware N.A. | System and method for integrated customer management |
AU2931501A (en) | 2000-01-07 | 2001-07-31 | Ineto, Inc. | Customer communication service system |
US6571236B1 (en) | 2000-01-10 | 2003-05-27 | General Electric Company | Method and apparatus for problem diagnosis and solution |
US20020004735A1 (en) | 2000-01-18 | 2002-01-10 | William Gross | System and method for ranking items |
US20010034689A1 (en) | 2000-01-21 | 2001-10-25 | Heilman Theodore A. | Method and system of negotiating a transaction over a network |
US20010027436A1 (en) | 2000-02-09 | 2001-10-04 | Tenembaum Samuel Sergio | On-line market environment (OLME) |
US6691159B1 (en) | 2000-02-24 | 2004-02-10 | General Electric Company | Web-based method and system for providing assistance to computer users |
US6889250B2 (en) | 2000-03-01 | 2005-05-03 | Amazon.Com, Inc. | Method and system for information exchange between users of different web pages |
US20010054020A1 (en) | 2000-03-22 | 2001-12-20 | Barth Brian E. | Method and apparatus for dynamic information connection engine |
US8280773B2 (en) | 2000-03-13 | 2012-10-02 | Intellions, Inc. | Method and apparatus for internet customer retention |
AU2001250936A1 (en) | 2000-03-22 | 2001-10-03 | America To Go Llc | Methods and apparatus for on-line ordering |
JP2001265906A (ja) | 2000-03-23 | 2001-09-28 | Nec Corp | オンラインリアルタイムモニタシステムおよびオンラインリアルタイムモニタビジネス方法 |
US20020023051A1 (en) | 2000-03-31 | 2002-02-21 | Kunzle Adrian E. | System and method for recommending financial products to a customer based on customer needs and preferences |
US6549919B2 (en) | 2000-04-03 | 2003-04-15 | Lucent Technologies Inc. | Method and apparatus for updating records in a database system based on an improved model of time-dependent behavior |
CA2405526A1 (en) | 2000-04-03 | 2001-10-11 | Anthony V. Pugliese, Iii | System and method for displaying and selling goods and services |
US6865593B1 (en) | 2000-04-12 | 2005-03-08 | Webcollege, Inc. | Dynamic integration of web sites |
GB2361335B (en) | 2000-04-14 | 2003-05-07 | Friendspace Inc | Communications arrangement |
AUPQ694700A0 (en) | 2000-04-17 | 2000-05-11 | Facilitate Systems Pty Ltd | Method of advertising on the internet |
US6981028B1 (en) | 2000-04-28 | 2005-12-27 | Obongo, Inc. | Method and system of implementing recorded data for automating internet interactions |
US20030233425A1 (en) | 2000-05-04 | 2003-12-18 | Lyons Barry C. | Method and system for personal portal screen |
NZ517139A (en) | 2000-05-26 | 2003-08-29 | Abova | Method and system for internet sampling |
US7076443B1 (en) | 2000-05-31 | 2006-07-11 | International Business Machines Corporation | System and technique for automatically associating related advertisements to individual search results items of a search result set |
US20080021816A1 (en) | 2000-06-15 | 2008-01-24 | Nextcard, Llc | Integrating Live Chat Into an Online Credit Card Application |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
AU2001270054A1 (en) | 2000-06-22 | 2002-01-02 | Advisorteam.Com, Inc. | Method and system for determining personal characteristics of an individual or group |
US7080321B2 (en) | 2000-06-23 | 2006-07-18 | Aspect Software, Inc. | Dynamic help option for internet customers |
US6829585B1 (en) | 2000-07-06 | 2004-12-07 | General Electric Company | Web-based method and system for indicating expert availability |
US6662215B1 (en) | 2000-07-10 | 2003-12-09 | I Novation Inc. | System and method for content optimization |
US6826594B1 (en) | 2000-07-15 | 2004-11-30 | Commission Junction | Method and system for remote content management of a designated portion of a web page |
US20020035486A1 (en) | 2000-07-21 | 2002-03-21 | Huyn Nam Q. | Computerized clinical questionnaire with dynamically presented questions |
US7337127B1 (en) | 2000-08-24 | 2008-02-26 | Facecake Marketing Technologies, Inc. | Targeted marketing system and method |
US20020161651A1 (en) | 2000-08-29 | 2002-10-31 | Procter & Gamble | System and methods for tracking consumers in a store environment |
US7155508B2 (en) | 2000-09-01 | 2006-12-26 | Yodlee.Com, Inc. | Target information generation and ad server |
US7266510B1 (en) | 2000-09-01 | 2007-09-04 | International Business Machines Corporation | Method for graphically representing clickstream data of a shopping session on a network with a parallel coordinate system |
US6622138B1 (en) | 2000-09-06 | 2003-09-16 | Oracle International Corporation | Method and apparatus for optimizing computation of OLAP ranking functions |
US6950983B1 (en) | 2000-09-07 | 2005-09-27 | International Business Machines Corporation | System and method for populating HTML forms using relational database agents |
US20020038230A1 (en) | 2000-09-25 | 2002-03-28 | Li-Wen Chen | User interface and method for analyzing customer behavior based upon event attributes |
US7181492B2 (en) | 2000-10-17 | 2007-02-20 | Concerto Software, Inc. | Transfer of an internet chat session between servers |
GB2368226B (en) | 2000-10-17 | 2004-08-25 | Hewlett Packard Co | Helper entity for comuunication session |
WO2002033628A2 (en) | 2000-10-18 | 2002-04-25 | Johnson & Johnson Consumer Companies, Inc. | Intelligent performance-based product recommendation system |
US6904408B1 (en) | 2000-10-19 | 2005-06-07 | Mccarthy John | Bionet method, system and personalized web content manager responsive to browser viewers' psychological preferences, behavioral responses and physiological stress indicators |
GB0025911D0 (en) | 2000-10-23 | 2000-12-06 | Amacis Ltd | Classified on-line chat |
US9819561B2 (en) | 2000-10-26 | 2017-11-14 | Liveperson, Inc. | System and methods for facilitating object assignments |
US20060015390A1 (en) | 2000-10-26 | 2006-01-19 | Vikas Rijsinghani | System and method for identifying and approaching browsers most likely to transact business based upon real-time data mining |
US8868448B2 (en) | 2000-10-26 | 2014-10-21 | Liveperson, Inc. | Systems and methods to facilitate selling of products and services |
WO2002044869A2 (en) | 2000-11-02 | 2002-06-06 | Netiq Corporation | System and method for generating and reporting cookie values at a client node |
US7287000B2 (en) | 2000-11-15 | 2007-10-23 | Jda Software Group, Inc. | Configurable pricing optimization system |
US20020103920A1 (en) | 2000-11-21 | 2002-08-01 | Berkun Ken Alan | Interpretive stream metadata extraction |
US20020111847A1 (en) | 2000-12-08 | 2002-08-15 | Word Of Net, Inc. | System and method for calculating a marketing appearance frequency measurement |
US20020083095A1 (en) | 2000-12-13 | 2002-06-27 | Wu Jackie Zhanhong | System and methods for integration of a Web site with a repository server |
US7242760B2 (en) | 2000-12-29 | 2007-07-10 | Intel Corporation | Automatic detecting when an agent is available |
US6792102B2 (en) | 2000-12-29 | 2004-09-14 | Intel Corporation | Matching routed call to agent workstation |
US20030028415A1 (en) | 2001-01-19 | 2003-02-06 | Pavilion Technologies, Inc. | E-commerce system using modeling of inducements to customers |
US20020107728A1 (en) | 2001-02-06 | 2002-08-08 | Catalina Marketing International, Inc. | Targeted communications based on promotional response |
US20020111850A1 (en) | 2001-02-12 | 2002-08-15 | Chevron Oronite Company Llc | System and method for new product clearance and development |
US7464045B2 (en) | 2001-02-14 | 2008-12-09 | The Workplace Helpline, Llc | Method and apparatus for managing workplace services and products |
US20020123926A1 (en) | 2001-03-01 | 2002-09-05 | Bushold Thomas R. | System and method for implementing a loyalty program incorporating on-line and off-line transactions |
US7552080B1 (en) | 2001-03-09 | 2009-06-23 | Nextcard, Llc | Customized credit offer strategy based on terms specified by an applicant |
US7454714B2 (en) | 2001-03-30 | 2008-11-18 | Aol Llc, A Delaware Limited Liability Company | Visually distinguishing menu items |
US7499948B2 (en) | 2001-04-16 | 2009-03-03 | Bea Systems, Inc. | System and method for web-based personalization and ecommerce management |
US20020167539A1 (en) | 2001-04-27 | 2002-11-14 | International Business Machines Corporation | Portal server enabling joint exploration of the internet with an expert |
WO2002097705A1 (en) | 2001-04-30 | 2002-12-05 | Emerson Electric Co. | Network based system design of custom products with live agent support |
JP4953518B2 (ja) * | 2001-05-14 | 2012-06-13 | ケープレックス・インク | オブジェクト指向技術を用いた情報共有方法及び装置 |
US20030004781A1 (en) | 2001-06-18 | 2003-01-02 | Mallon Kenneth P. | Method and system for predicting aggregate behavior using on-line interest data |
GB0116516D0 (en) | 2001-07-06 | 2001-08-29 | Pace Micro Tech Plc | Television system |
CN1395383A (zh) | 2001-07-10 | 2003-02-05 | 颜森辉 | 智能型全方位专家管理系统 |
US20030014304A1 (en) | 2001-07-10 | 2003-01-16 | Avenue A, Inc. | Method of analyzing internet advertising effects |
US7953219B2 (en) | 2001-07-19 | 2011-05-31 | Nice Systems, Ltd. | Method apparatus and system for capturing and analyzing interaction based content |
US7188085B2 (en) | 2001-07-20 | 2007-03-06 | International Business Machines Corporation | Method and system for delivering encrypted content with associated geographical-based advertisements |
US20030023754A1 (en) | 2001-07-27 | 2003-01-30 | Matthias Eichstadt | Method and system for adding real-time, interactive functionality to a web-page |
US7526439B2 (en) | 2001-08-06 | 2009-04-28 | Proficient Systems, Incorporated | Systems and methods to facilitate selling of products and services |
US20030061091A1 (en) | 2001-09-25 | 2003-03-27 | Amaratunga Mohan Mark | Systems and methods for making prediction on energy consumption of energy-consuming systems or sites |
US20030080995A1 (en) | 2001-10-12 | 2003-05-01 | United Virtualities, Inc. | Contextually adaptive web browser |
KR20030032676A (ko) | 2001-10-19 | 2003-04-26 | 인터내셔널 비지네스 머신즈 코포레이션 | 웹브라우저 및/또는 윈도우 탐색기의 일정부분에 광고창을표시하는 광고방법 및 시스템 |
US6865267B2 (en) | 2001-11-27 | 2005-03-08 | Rockwell Electronic Commerce Corp. | Method and system for routing transactions in an automatic call distribution system based on non-voice dialog agent skill set |
US20040034567A1 (en) | 2001-11-28 | 2004-02-19 | Gravett Antony Hugh | On-line transactions and system therefore |
US7222297B2 (en) | 2002-01-14 | 2007-05-22 | International Business Machines Corporation | System and method for using XML to normalize documents |
US20030140037A1 (en) | 2002-01-23 | 2003-07-24 | Kenneth Deh-Lee | Dynamic knowledge expert retrieval system |
US20030177096A1 (en) | 2002-02-14 | 2003-09-18 | Trent, John T. | Mapped website system and method |
US20030221163A1 (en) | 2002-02-22 | 2003-11-27 | Nec Laboratories America, Inc. | Using web structure for classifying and describing web pages |
US20030167195A1 (en) | 2002-03-01 | 2003-09-04 | Fernandes Carlos Nicholas | System and method for prioritization of website visitors to provide proactive and selective sales and customer service online |
US10296919B2 (en) | 2002-03-07 | 2019-05-21 | Comscore, Inc. | System and method of a click event data collection platform |
US20080183745A1 (en) | 2006-09-25 | 2008-07-31 | David Cancel | Website analytics |
US8965998B1 (en) | 2002-03-19 | 2015-02-24 | Amazon Technologies, Inc. | Adaptive learning methods for selecting web page components for inclusion in web pages |
US7346606B2 (en) | 2003-06-30 | 2008-03-18 | Google, Inc. | Rendering advertisements with documents having one or more topics using user topic interest |
US7203909B1 (en) | 2002-04-04 | 2007-04-10 | Microsoft Corporation | System and methods for constructing personalized context-sensitive portal pages or views by analyzing patterns of users' information access activities |
US7743044B1 (en) | 2002-05-28 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Distributed information retrieval in peer-to-peer networks |
US7370002B2 (en) | 2002-06-05 | 2008-05-06 | Microsoft Corporation | Modifying advertisement scores based on advertisement response probabilities |
US7251648B2 (en) | 2002-06-28 | 2007-07-31 | Microsoft Corporation | Automatically ranking answers to database queries |
JP2004054533A (ja) | 2002-07-19 | 2004-02-19 | Nippon Telegr & Teleph Corp <Ntt> | 案内情報提供システム、案内情報提供方法、案内情報提供プログラム及びそのプログラムを記録した記録媒体 |
US20030149581A1 (en) | 2002-08-28 | 2003-08-07 | Imran Chaudhri | Method and system for providing intelligent network content delivery |
JP2004177936A (ja) | 2002-09-02 | 2004-06-24 | Hiromitsu Takayama | 広告配信方法、広告配信システム、広告配信サーバ、クライアント端末 |
US7085682B1 (en) | 2002-09-18 | 2006-08-01 | Doubleclick Inc. | System and method for analyzing website activity |
US7865498B2 (en) | 2002-09-23 | 2011-01-04 | Worldwide Broadcast Network, Inc. | Broadcast network platform system |
US7716322B2 (en) | 2002-09-23 | 2010-05-11 | Alcatel-Lucent Usa Inc. | Automatic exploration and testing of dynamic Web sites |
US8086559B2 (en) | 2002-09-24 | 2011-12-27 | Google, Inc. | Serving content-relevant advertisements with client-side device support |
US7487248B2 (en) | 2002-10-08 | 2009-02-03 | Brian Moran | Method and system for transferring a computer session between devices |
US7136788B2 (en) | 2002-10-15 | 2006-11-14 | The Boeing Company | Optimized parametric modeling system and method |
US7065532B2 (en) | 2002-10-31 | 2006-06-20 | International Business Machines Corporation | System and method for evaluating information aggregates by visualizing associated categories |
US7123974B1 (en) | 2002-11-19 | 2006-10-17 | Rockwell Software Inc. | System and methodology providing audit recording and tracking in real time industrial controller environment |
US7200614B2 (en) | 2002-11-27 | 2007-04-03 | Accenture Global Services Gmbh | Dual information system for contact center users |
US7296230B2 (en) | 2002-11-29 | 2007-11-13 | Nippon Telegraph And Telephone Corporation | Linked contents browsing support device, linked contents continuous browsing support device, and method and program therefor, and recording medium therewith |
WO2004057473A1 (en) | 2002-12-21 | 2004-07-08 | Sos | Methods for providing technical support over networks |
WO2004061740A1 (en) | 2002-12-27 | 2004-07-22 | Payscale, Inc. | A surveying apparatus and method for compensation reports |
US7725562B2 (en) | 2002-12-31 | 2010-05-25 | International Business Machines Corporation | Method and system for user enrollment of user attribute storage in a federated environment |
CA2537229C (en) | 2003-05-14 | 2012-10-16 | Collaborative Sciences And Technology, Inc. | Persistent portal |
US7647344B2 (en) | 2003-05-29 | 2010-01-12 | Experian Marketing Solutions, Inc. | System, method and software for providing persistent entity identification and linking entity information in an integrated data repository |
EA015549B1 (ru) | 2003-06-05 | 2011-08-30 | Интертраст Текнолоджис Корпорейшн | Переносимая система и способ для приложений одноранговой компоновки услуг |
US7689432B2 (en) | 2003-06-06 | 2010-03-30 | Hayley Logistics Llc | System and method for influencing recommender system & advertising based on programmed policies |
KR100958924B1 (ko) | 2003-06-19 | 2010-05-19 | 주식회사 케이티 | 발신자 정보를 이용한 망 정보 제공 시스템 및 그 방법 |
US8155974B2 (en) | 2003-06-30 | 2012-04-10 | At&T Intellectual Property I, L.P. | Methods and systems for obtaining profile information from individuals using automation |
US20050044149A1 (en) | 2003-07-21 | 2005-02-24 | Ufollowup, Llc. | System and methodology for facilitating the sale of goods and services |
US20050033641A1 (en) | 2003-08-05 | 2005-02-10 | Vikas Jha | System, method and computer program product for presenting directed advertising to a user via a network |
US7310612B2 (en) | 2003-08-13 | 2007-12-18 | Amazon.Com, Inc. | Personalized selection and display of user-supplied content to enhance browsing of electronic catalogs |
US8706551B2 (en) | 2003-09-04 | 2014-04-22 | Google Inc. | Systems and methods for determining user actions |
US7379890B2 (en) | 2003-10-17 | 2008-05-27 | Makor Issues And Rights Ltd. | System and method for profit maximization in retail industry |
US20050091254A1 (en) | 2003-10-23 | 2005-04-28 | Stabb Charles W. | Shell browser preview display |
US7506260B2 (en) | 2003-10-31 | 2009-03-17 | Yahoo! Inc. | Method and system of providing browser functionality through a browser button |
US20050096997A1 (en) | 2003-10-31 | 2005-05-05 | Vivek Jain | Targeting shoppers in an online shopping environment |
US20050097089A1 (en) | 2003-11-05 | 2005-05-05 | Tom Nielsen | Persistent user interface for providing navigational functionality |
US20050132205A1 (en) | 2003-12-12 | 2005-06-16 | International Business Machines Corporation | Apparatus, methods and computer programs for identifying matching resources within a data processing network |
US7296026B2 (en) | 2003-12-15 | 2007-11-13 | J2 Global Communications | Method and apparatus for automatically performing an online content distribution campaign |
KR100446640B1 (ko) | 2003-12-16 | 2004-09-04 | 주식회사 아이리스이십일 | 유무선 네트워크를 이용한 실시간 지식정보 검색 시스템과실시간 지식정보 검색방법 및 이에 대한 지식정보의등록관리 방법 |
US20050198212A1 (en) | 2003-12-16 | 2005-09-08 | Alex Zilberfayn | Interactive forms processing system and method |
US20050138115A1 (en) | 2003-12-23 | 2005-06-23 | Luis Llamas | Real time mobile skill set information system |
US7243109B2 (en) | 2004-01-20 | 2007-07-10 | Xerox Corporation | Scheme for creating a ranked subject matter expert index |
US20050183003A1 (en) | 2004-02-17 | 2005-08-18 | Checkpoint Software Technologies Ltd. | Automatic proxy form filing |
US8086492B2 (en) | 2004-03-23 | 2011-12-27 | Douglas Ashbaugh | Frame-based network advertising and exchange therefor |
US7689924B1 (en) | 2004-03-26 | 2010-03-30 | Google Inc. | Link annotation for keyboard navigation |
US8380655B2 (en) | 2004-04-02 | 2013-02-19 | Xpertuniverse, Inc. | Management of expert resources using seeker profiles |
US7562058B2 (en) | 2004-04-16 | 2009-07-14 | Fortelligent, Inc. | Predictive model management using a re-entrant process |
US20050234761A1 (en) | 2004-04-16 | 2005-10-20 | Pinto Stephen K | Predictive model development |
US7966391B2 (en) * | 2004-05-11 | 2011-06-21 | Todd J. Anderson | Systems, apparatus and methods for managing networking devices |
US7552365B1 (en) | 2004-05-26 | 2009-06-23 | Amazon Technologies, Inc. | Web site system with automated processes for detecting failure events and for selecting failure events for which to request user feedback |
US8477331B2 (en) | 2004-05-27 | 2013-07-02 | Property Publications Pte Ltd. | Apparatus and method for creating an electronic version of printed matter |
US7403973B2 (en) | 2004-05-28 | 2008-07-22 | Oracle International Corporation | Managing devices and messages for users during a messaging session |
US7313575B2 (en) | 2004-06-14 | 2007-12-25 | Hewlett-Packard Development Company, L.P. | Data services handler |
KR20050010487A (ko) | 2004-06-28 | 2005-01-27 | 오성일 | 온라인 상에서의 학습정보 제공 방법 |
US8302164B2 (en) | 2004-07-22 | 2012-10-30 | Facebook, Inc. | Authorization and authentication based on an individual's social network |
WO2006011819A1 (en) | 2004-07-30 | 2006-02-02 | Eurekster, Inc. | Adaptive search engine |
US20060026237A1 (en) | 2004-07-30 | 2006-02-02 | Wang Richard G | Method and system for instant message using HTTP URL technology |
US20060041476A1 (en) | 2004-08-17 | 2006-02-23 | Zhiliang Zheng | System and method for providing an expert platform |
WO2006018877A1 (ja) * | 2004-08-19 | 2006-02-23 | Syncplus, Inc. | 販売支援システム |
US7836009B2 (en) | 2004-08-19 | 2010-11-16 | Claria Corporation | Method and apparatus for responding to end-user request for information-ranking |
US7424363B2 (en) | 2004-08-20 | 2008-09-09 | Robert Bosch Corporation | Method and system for adaptive navigation using a driver's route knowledge |
US7865457B2 (en) | 2004-08-25 | 2011-01-04 | International Business Machines Corporation | Knowledge management system automatically allocating expert resources |
US20060059124A1 (en) | 2004-09-16 | 2006-03-16 | Sudhir Krishna S | Central access to remotely located information |
US7730010B2 (en) | 2004-09-20 | 2010-06-01 | Microsoft Corporation | Method, system, and apparatus for maintaining user privacy in a knowledge interchange system |
US7734503B2 (en) | 2004-09-29 | 2010-06-08 | Google, Inc. | Managing on-line advertising using metrics such as return on investment and/or profit |
US20060106788A1 (en) | 2004-10-29 | 2006-05-18 | Microsoft Corporation | Computer-implemented system and method for providing authoritative answers to a general information search |
US20060122850A1 (en) | 2004-12-06 | 2006-06-08 | Ward Mateo D | Real-time Professional Services Facilitator system and method |
US7467349B1 (en) | 2004-12-15 | 2008-12-16 | Amazon Technologies, Inc. | Method and system for displaying a hyperlink at multiple levels of prominence based on user interaction |
US20070206086A1 (en) | 2005-01-14 | 2007-09-06 | Experticity, Inc. | On-line expert provision system and method |
US7499903B2 (en) | 2005-01-24 | 2009-03-03 | Nevin James B | Semantic to non-semantic routing for locating a live expert |
US20060168509A1 (en) | 2005-01-27 | 2006-07-27 | International Business Machines Corporation | System and method to map favorite values for specific values during electronic form filling |
EP1851905A1 (en) | 2005-02-07 | 2007-11-07 | Adzilla, Inc. | Method and system of targeting content |
US8538768B2 (en) | 2005-02-16 | 2013-09-17 | Ingenio Llc | Methods and apparatuses for delivery of advice to mobile/wireless devices |
US20090049192A1 (en) | 2005-03-22 | 2009-02-19 | Feeva Technology Inc. | Systems and methods of network operation and information processing, including use of unique/anonymous identifiers throughout all stages of information processing and delivery |
US7532890B2 (en) | 2005-04-01 | 2009-05-12 | Rockliffe Systems | Content-based notification and user-transparent pull operation for simulated push transmission of wireless email |
US20060253319A1 (en) | 2005-05-04 | 2006-11-09 | Microsoft Corporation | Mechanism for allocating advertisements of varying intervals |
US7877679B2 (en) | 2005-05-04 | 2011-01-25 | Amadesa Ltd. | System and method for generating a user profile from layers based on prior user response |
US8131861B2 (en) | 2005-05-20 | 2012-03-06 | Webtrends, Inc. | Method for cross-domain tracking of web site traffic |
US20060277477A1 (en) | 2005-06-02 | 2006-12-07 | Christenson Mark G K | System and method for generating enhanced depiction of electronic files such as web files |
US7904520B2 (en) | 2005-06-09 | 2011-03-08 | Trueffect, Inc. | First party advertisement serving |
US10510043B2 (en) | 2005-06-13 | 2019-12-17 | Skyword Inc. | Computer method and apparatus for targeting advertising |
US20060288087A1 (en) | 2005-06-17 | 2006-12-21 | Jiehyeong Sun | Web-based method and system for providing content-driven service to internet users |
US20060293950A1 (en) | 2005-06-28 | 2006-12-28 | Microsoft Corporation | Automatic ad placement |
US7975019B1 (en) | 2005-07-15 | 2011-07-05 | Amazon Technologies, Inc. | Dynamic supplementation of rendered web pages with content supplied by a separate source |
US7975020B1 (en) | 2005-07-15 | 2011-07-05 | Amazon Technologies, Inc. | Dynamic updating of rendered web pages with supplemental content |
US9558498B2 (en) | 2005-07-29 | 2017-01-31 | Excalibur Ip, Llc | System and method for advertisement management |
US20070027901A1 (en) | 2005-08-01 | 2007-02-01 | John Chan | Method and System for Developing and Managing A Computer-Based Marketing Campaign |
US9105028B2 (en) | 2005-08-10 | 2015-08-11 | Compete, Inc. | Monitoring clickstream behavior of viewers of online advertisements and search results |
US20070073585A1 (en) | 2005-08-13 | 2007-03-29 | Adstreams Roi, Inc. | Systems, methods, and computer program products for enabling an advertiser to measure user viewing of and response to advertisements |
US8311888B2 (en) | 2005-09-14 | 2012-11-13 | Jumptap, Inc. | Revenue models associated with syndication of a behavioral profile using a monetization platform |
US9432468B2 (en) | 2005-09-14 | 2016-08-30 | Liveperson, Inc. | System and method for design and dynamic generation of a web page |
US20120173373A1 (en) | 2005-09-14 | 2012-07-05 | Adam Soroca | System for retrieving mobile communication facility user data from a plurality of providers |
US8738732B2 (en) | 2005-09-14 | 2014-05-27 | Liveperson, Inc. | System and method for performing follow up based on user interactions |
US20070100653A1 (en) | 2005-11-01 | 2007-05-03 | Jorey Ramer | Mobile website analyzer |
US7895193B2 (en) | 2005-09-30 | 2011-02-22 | Microsoft Corporation | Arbitration of specialized content using search results |
US8843481B1 (en) | 2005-09-30 | 2014-09-23 | Yongyong Xu | System and method of forming action based virtual communities and related search mechanisms |
US20070116239A1 (en) | 2005-10-11 | 2007-05-24 | Yaniv Jacobi | Method and system for providing telephone communications between a website visitor and a live agent |
US20070116238A1 (en) | 2005-10-11 | 2007-05-24 | Yaniv Jacobi | Method and system for on-line trading |
US7734632B2 (en) | 2005-10-28 | 2010-06-08 | Disney Enterprises, Inc. | System and method for targeted ad delivery |
US8914301B2 (en) | 2005-10-28 | 2014-12-16 | Joyce A. Book | Method and apparatus for dynamic ad creation |
US20090063645A1 (en) | 2005-11-30 | 2009-03-05 | Qwest Communications Internatinal Inc. | System and method for supporting messaging using a set top box |
US7818340B1 (en) | 2005-12-01 | 2010-10-19 | Peter Warren | Computer-implemented method and system for enabling network communication using sponsored chat links |
US8732186B2 (en) | 2005-12-01 | 2014-05-20 | Peter Warren | Computer-implemented method and system for enabling communication between networked users based on common characteristics |
US7711607B2 (en) | 2005-12-30 | 2010-05-04 | Sap Ag | Method and system for deploying a business application |
US7930681B2 (en) | 2005-12-30 | 2011-04-19 | Sap Ag | Service and application management in information technology systems |
US8584002B2 (en) | 2006-01-09 | 2013-11-12 | Apple Inc. | Automatic sub-template selection based on content |
US20070185751A1 (en) | 2006-01-11 | 2007-08-09 | Dempers Ramon J | Drug life cycle management system |
US9336333B2 (en) | 2006-02-13 | 2016-05-10 | Linkedin Corporation | Searching and reference checking within social networks |
US20090119173A1 (en) | 2006-02-28 | 2009-05-07 | Buzzlogic, Inc. | System and Method For Advertisement Targeting of Conversations in Social Media |
CN101401422B (zh) | 2006-03-08 | 2011-09-07 | 黄金富 | 个性化区域化商业电视广告的方法和系统 |
US20070239527A1 (en) | 2006-03-17 | 2007-10-11 | Adteractive, Inc. | Network-based advertising trading platform and method |
US7904448B2 (en) | 2006-03-29 | 2011-03-08 | Yahoo! Inc. | Incremental update of long-term and short-term user profile scores in a behavioral targeting system |
US8504575B2 (en) | 2006-03-29 | 2013-08-06 | Yahoo! Inc. | Behavioral targeting system |
US20070233902A1 (en) | 2006-03-30 | 2007-10-04 | Alan Trefler | User interface methods and apparatus for rules processing |
US7861176B2 (en) | 2006-04-13 | 2010-12-28 | Touchcommerce, Inc. | Methods and systems for providing online chat |
US20070256003A1 (en) | 2006-04-24 | 2007-11-01 | Seth Wagoner | Platform for the interactive contextual augmentation of the web |
EP1850284A1 (en) | 2006-04-27 | 2007-10-31 | Unigate Technologies ApS | A computer system for automatically matching the requirements from a customer with the capabilites of a supplier |
JP4767817B2 (ja) | 2006-05-02 | 2011-09-07 | 株式会社ソニー・コンピュータエンタテインメント | 通信システム、通信装置、通信プログラム、通信プログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
US20070265873A1 (en) | 2006-05-11 | 2007-11-15 | Sheth Urvashi | Method and system for online customer relationship management |
US8065666B2 (en) | 2006-06-02 | 2011-11-22 | Rockwell Automation Technologies, Inc. | Change management methodologies for industrial automation and information systems |
US8386509B1 (en) | 2006-06-30 | 2013-02-26 | Amazon Technologies, Inc. | Method and system for associating search keywords with interest spaces |
US7660815B1 (en) | 2006-06-30 | 2010-02-09 | Amazon Technologies, Inc. | Method and system for occurrence frequency-based scaling of navigation path weights among online content sources |
US20080006732A1 (en) | 2006-07-10 | 2008-01-10 | Autoliv Asp, Inc. | Differential dual spool retractor seat belt system with motor actuator |
US10181135B2 (en) | 2006-07-18 | 2019-01-15 | At&T Intellectual Property I, L.P. | Method and apparatus for presenting advertisements |
US20080033941A1 (en) | 2006-08-07 | 2008-02-07 | Dale Parrish | Verfied network identity with authenticated biographical information |
US7590550B2 (en) | 2006-09-08 | 2009-09-15 | American Well Inc. | Connecting consumers with service providers |
US8719047B2 (en) | 2008-06-17 | 2014-05-06 | American Well Corporation | Patient directed integration of remotely stored medical information with a brokerage system |
WO2008062445A2 (en) | 2006-09-14 | 2008-05-29 | Bhavin Turakhia | Method for tracking user behavior and to display advertisements |
GB2435730B (en) | 2006-11-02 | 2008-02-20 | Cvon Innovations Ltd | Interactive communications system |
KR20080046310A (ko) | 2006-11-22 | 2008-05-27 | 김현수 | 채팅 서버 및 채팅 서비스 제공 방법 |
US7734717B2 (en) | 2006-12-05 | 2010-06-08 | Nokia Corporation | Software distribution via peer-to-peer networks |
US20080147486A1 (en) | 2006-12-18 | 2008-06-19 | Lehigh University | Prediction method and system |
US8660899B2 (en) | 2006-12-19 | 2014-02-25 | Yahoo! Inc. | Transferring behavioral profiles anonymously across domains for behavioral targeting |
US8787555B2 (en) | 2006-12-19 | 2014-07-22 | Telethrive, Inc. | Process for obtaining expert advice on-demand |
US8166026B1 (en) | 2006-12-26 | 2012-04-24 | uAffect.org LLC | User-centric, user-weighted method and apparatus for improving relevance and analysis of information sharing and searching |
US20080201436A1 (en) | 2007-02-20 | 2008-08-21 | Gideon Gartner | Enhanced information system and method |
US20080215541A1 (en) | 2007-03-01 | 2008-09-04 | Microsoft Corporation | Techniques for searching web forums |
US8693659B2 (en) | 2007-03-09 | 2014-04-08 | Fonality, Inc. | System and method for centralized presence management of local and remote users |
US20080262897A1 (en) | 2007-04-17 | 2008-10-23 | Embarq Holdings Company, Llc | System and method for geographic location of customer services |
US7693902B2 (en) | 2007-05-02 | 2010-04-06 | Yahoo! Inc. | Enabling clustered search processing via text messaging |
KR20080097751A (ko) | 2007-05-03 | 2008-11-06 | 주식회사 파랑피시 | 검색 정보에 대응하는 실시간 상담원 추천 시스템 및 그방법 |
US7827128B1 (en) | 2007-05-11 | 2010-11-02 | Aol Advertising Inc. | System identification, estimation, and prediction of advertising-related data |
KR20090003049A (ko) | 2007-05-17 | 2009-01-09 | (주)팍스인슈 | 인터넷 상거래 서비스에서 실시간 상품정보를 전달하는능동적 콜서비스 시스템 및 방법 |
US8266127B2 (en) | 2007-05-31 | 2012-09-11 | Red Hat, Inc. | Systems and methods for directed forums |
US20080319778A1 (en) | 2007-06-22 | 2008-12-25 | Fatdoor, Inc. | Neighborhood bartering in a geo-spatial network |
US20090006179A1 (en) | 2007-06-26 | 2009-01-01 | Ebay Inc. | Economic optimization for product search relevancy |
US20090006622A1 (en) | 2007-06-27 | 2009-01-01 | William Doerr | Ultimate client development system |
US8214486B2 (en) | 2007-07-13 | 2012-07-03 | Front Porch, Inc. | Method and apparatus for internet traffic monitoring by third parties using monitoring implements |
US8321359B2 (en) | 2007-07-24 | 2012-11-27 | Hiconversion, Inc. | Method and apparatus for real-time website optimization |
US8149711B2 (en) * | 2007-07-25 | 2012-04-03 | Silicon Image, Inc. | Data stream control for network devices |
EP2176730A4 (en) | 2007-08-08 | 2011-04-20 | Baynote Inc | METHOD AND APPARATUS FOR CONTENT RECOMMENDATION BASED ON CONTEXT |
US20110041168A1 (en) | 2007-08-14 | 2011-02-17 | Alan Murray | Systems and methods for targeting online advertisements using data derived from social networks |
US20090055267A1 (en) | 2007-08-23 | 2009-02-26 | Robert Roker | Internet advertising brokerage apparatus, systems, and methods |
EP2191389A1 (en) | 2007-08-30 | 2010-06-02 | Channel Intelligence, Inc. | Online marketing payment monitoring method and system |
WO2009029947A1 (en) | 2007-08-31 | 2009-03-05 | Numeric Analytics Llc | Method of optimizing internet advertising |
US20090076887A1 (en) | 2007-09-16 | 2009-03-19 | Nova Spivack | System And Method Of Collecting Market-Related Data Via A Web-Based Networking Environment |
WO2009050301A1 (en) | 2007-10-19 | 2009-04-23 | Changing Worlds Ltd. | Systems and methods for providing personalized advertisement |
EP2218019A4 (en) | 2007-11-02 | 2012-04-18 | Hunch Inc | INTERACTIVE AUTOMATIC LEARNING ADVICE INSTALLATION |
US7941557B2 (en) | 2007-11-28 | 2011-05-10 | Yahoo! Inc. | Dynamical routing for text messaging |
WO2009082381A1 (en) | 2007-12-20 | 2009-07-02 | Hewlett-Packard Development Company, L.P. | Incorporating development tools in system for deploying computer based process on shared infrastructure |
JP2011508320A (ja) | 2007-12-21 | 2011-03-10 | エム ケー エス インストルメンツ インコーポレーテッド | 部分的最小二乗分析(pls−ツリー)を用いたデータの階層編成 |
JP4156660B1 (ja) * | 2008-01-25 | 2008-09-24 | Sky株式会社 | リモート制御システム |
US20090192845A1 (en) * | 2008-01-30 | 2009-07-30 | Microsoft Corporation | Integrated real time collaboration experiences with online workspace |
WO2009100460A1 (en) | 2008-02-07 | 2009-08-13 | Epic Advertising, Inc. | Systems and methods for measuring the effectiveness of advertising |
US20090210405A1 (en) | 2008-02-15 | 2009-08-20 | Ortega Kerry A | Method, system, and apparatus for providing advice to users |
US8392580B2 (en) | 2008-02-20 | 2013-03-05 | Research In Motion Limited | Methods and systems for facilitating transfer of sessions between user devices |
US20160292324A1 (en) * | 2008-02-25 | 2016-10-06 | Sas Institute Inc. | Systems and methods for predicting performance |
US20100211579A1 (en) | 2009-02-17 | 2010-08-19 | Robb Fujioka | System and Method For Providing Expert Search In A Modular Computing System |
CA2722273A1 (en) | 2008-04-30 | 2009-11-05 | Intertrust Technologies Corporation | Data collection and targeted advertising systems and methods |
US7966564B2 (en) | 2008-05-08 | 2011-06-21 | Adchemy, Inc. | Web page server process using visitor context and page features to select optimized web pages for display |
US20090287534A1 (en) | 2008-05-14 | 2009-11-19 | Shang Qing Guo | System and method for providing contemporaneous product information and sales support for retail customers |
US20090307003A1 (en) | 2008-05-16 | 2009-12-10 | Daniel Benyamin | Social advertisement network |
US8413042B2 (en) | 2008-06-30 | 2013-04-02 | International Business Machines Corporation | Referrer-based website personalization |
US8762313B2 (en) | 2008-07-25 | 2014-06-24 | Liveperson, Inc. | Method and system for creating a predictive model for targeting web-page to a surfer |
US8260846B2 (en) | 2008-07-25 | 2012-09-04 | Liveperson, Inc. | Method and system for providing targeted content to a surfer |
US8805844B2 (en) | 2008-08-04 | 2014-08-12 | Liveperson, Inc. | Expert search |
US20100063879A1 (en) | 2008-09-05 | 2010-03-11 | Yellowpages.Com Llc | Systems and Methods to Selectively Provide Information Based on User Interest |
US8321906B2 (en) | 2008-09-11 | 2012-11-27 | At&T Intellectual Property I, Lp | Method and system for a transcoder |
US20100106552A1 (en) | 2008-10-27 | 2010-04-29 | International Business Machines Corporation | On-demand access to technical skills |
US9892417B2 (en) | 2008-10-29 | 2018-02-13 | Liveperson, Inc. | System and method for applying tracing tools for network locations |
US20100205024A1 (en) | 2008-10-29 | 2010-08-12 | Haggai Shachar | System and method for applying in-depth data mining tools for participating websites |
ES2621423T3 (es) | 2008-11-11 | 2017-07-04 | Onmobile Global Limited | Método y sistema para actualizar un sitio de red social con información de tonos de espera |
US8713157B2 (en) | 2008-11-14 | 2014-04-29 | Interpret, Llc | System for collecting computer application usage data of targeted application programs executed on a plurality of client devices |
JP2010128877A (ja) | 2008-11-28 | 2010-06-10 | Hitachi Ltd | ウェブシステムおよび処理記録収集方法 |
US8255403B2 (en) | 2008-12-30 | 2012-08-28 | Expanse Networks, Inc. | Pangenetic web satisfaction prediction system |
CN102414705A (zh) | 2009-03-03 | 2012-04-11 | 谷歌公司 | 用于向社交网络的用户提供广告的方法和系统 |
US8185544B2 (en) | 2009-04-08 | 2012-05-22 | Google Inc. | Generating improved document classification data using historical search results |
US20120130819A1 (en) | 2009-04-15 | 2012-05-24 | Imagini Holdings Limited | method and system for providing customized content using emotional preference |
US20100281008A1 (en) | 2009-04-29 | 2010-11-04 | Digital River, Inc. | Universal Tracking Agent System and Method |
US20100306043A1 (en) | 2009-05-26 | 2010-12-02 | Robert Taaffe Lindsay | Measuring Impact Of Online Advertising Campaigns |
CN101572607B (zh) | 2009-06-12 | 2011-11-09 | 阿里巴巴集团控股有限公司 | 一种社会化网络中处理认证请求消息的方法及装置 |
US20110010629A1 (en) * | 2009-07-09 | 2011-01-13 | Ibm Corporation | Selectively distributing updates of changing images to client devices |
US8751586B2 (en) | 2009-08-28 | 2014-06-10 | Go Daddy Operating Company, LLC | Domain name control based social website account authentication |
FR2950214A1 (fr) | 2009-09-14 | 2011-03-18 | Alcatel Lucent | Procede de demande de verification de donnees profil utilisateur d’un site de reseau social. |
US8266098B2 (en) | 2009-11-18 | 2012-09-11 | International Business Machines Corporation | Ranking expert responses and finding experts based on rank |
US20110131077A1 (en) | 2009-12-01 | 2011-06-02 | Microsoft Corporation | Context-Aware Recommendation Module Using Multiple Models |
WO2011072048A2 (en) | 2009-12-08 | 2011-06-16 | Adxpose, Inc. | Methods for capturing and reporting metrics regarding ad placement |
US8935614B2 (en) | 2009-12-08 | 2015-01-13 | At&T Intellectual Property I, L.P. | Method and apparatus for navigating a video program via a transcript of spoken dialog |
US20110246255A1 (en) | 2009-12-11 | 2011-10-06 | James Gilbert | System and method for advancing marketing opportunities to sales |
US8386340B1 (en) | 2009-12-21 | 2013-02-26 | Amazon Technologies, Inc. | Establishing communication based on item interest |
US20110161792A1 (en) | 2009-12-31 | 2011-06-30 | Edward Florence | Producing interactive documents |
US8943145B1 (en) | 2010-02-08 | 2015-01-27 | Intuit Inc. | Customer support via social network |
US20110208822A1 (en) | 2010-02-22 | 2011-08-25 | Yogesh Chunilal Rathod | Method and system for customized, contextual, dynamic and unified communication, zero click advertisement and prospective customers search engine |
WO2011127049A1 (en) | 2010-04-07 | 2011-10-13 | Liveperson, Inc. | System and method for dynamically enabling customized web content and applications |
US20110258039A1 (en) | 2010-04-14 | 2011-10-20 | Microsoft Corporation | Evaluating preferences of users engaging with advertisements |
US8621005B2 (en) | 2010-04-28 | 2013-12-31 | Ttb Technologies, Llc | Computer-based methods and systems for arranging meetings between users and methods and systems for verifying background information of users |
US20110320715A1 (en) | 2010-06-23 | 2011-12-29 | Microsoft Corporation | Identifying trending content items using content item histograms |
US8674223B2 (en) | 2010-07-13 | 2014-03-18 | John Martin Horan | High speed data cable with impedance correction |
US20120036200A1 (en) | 2010-08-09 | 2012-02-09 | Bank Of America Corporation | Social media engagement system |
US8423409B2 (en) | 2010-09-02 | 2013-04-16 | Yahoo! Inc. | System and method for monetizing user-generated web content |
US20120066345A1 (en) | 2010-09-14 | 2012-03-15 | Cyril Rayan | Emergency communications platform |
US20120130918A1 (en) | 2010-11-18 | 2012-05-24 | Noam Gordon | System and Method for Complaint Submission and Management |
US9576276B2 (en) | 2010-11-29 | 2017-02-21 | International Business Machines Corporation | Context-informed summarization of communications |
US9350598B2 (en) | 2010-12-14 | 2016-05-24 | Liveperson, Inc. | Authentication of service requests using a communications initiation feature |
US8918465B2 (en) | 2010-12-14 | 2014-12-23 | Liveperson, Inc. | Authentication of service requests initiated from a social networking site |
US8806054B1 (en) * | 2010-12-15 | 2014-08-12 | Amazon Technologies, Inc. | Sending application input commands over a network |
US8447820B1 (en) * | 2011-01-28 | 2013-05-21 | Decision Lens, Inc. | Data and event synchronization across distributed user interface modules |
US8761377B2 (en) | 2011-02-01 | 2014-06-24 | Cisco Technology, Inc. | Routing contact center interactions |
US20120259891A1 (en) | 2011-04-11 | 2012-10-11 | David Edoja | Method, system and program for analytics data delivering |
US9342817B2 (en) * | 2011-07-07 | 2016-05-17 | Sony Interactive Entertainment LLC | Auto-creating groups for sharing photos |
US10564791B2 (en) * | 2011-07-21 | 2020-02-18 | Nokia Technologies Oy | Method and apparatus for triggering a remote data entry interface |
US9289686B2 (en) | 2011-07-28 | 2016-03-22 | Zynga Inc. | Method and system for matchmaking connections within a gaming social network |
US8832210B2 (en) | 2011-08-30 | 2014-09-09 | Oracle International Corporation | Online monitoring for customer service |
US20150082345A1 (en) * | 2011-09-29 | 2015-03-19 | Avvasi Inc. | System for generating enhanced advertizements and methods for use therewith |
US20130117380A1 (en) | 2011-11-03 | 2013-05-09 | Ebay Inc. | Dynamic content generation in email messages |
US9047476B2 (en) | 2011-11-07 | 2015-06-02 | At&T Intellectual Property I, L.P. | Browser-based secure desktop applications for open computing platforms |
US8589393B2 (en) | 2011-11-08 | 2013-11-19 | Google Inc. | Methods and apparatus for discovery of attributes using a social mobile application |
US20130132194A1 (en) | 2011-11-17 | 2013-05-23 | Giridhar Rajaram | Targeting advertisements to users of a social networking system based on events |
US20130204859A1 (en) | 2012-02-06 | 2013-08-08 | Microsoft Corporation | Providing temporal bias for search-result-webpage items |
US8943002B2 (en) | 2012-02-10 | 2015-01-27 | Liveperson, Inc. | Analytics driven engagement |
US8805941B2 (en) | 2012-03-06 | 2014-08-12 | Liveperson, Inc. | Occasionally-connected computing interface |
JP6051549B2 (ja) * | 2012-03-16 | 2016-12-27 | 株式会社リコー | 通信制御システム、制御装置、プログラムおよび電子情報ボード |
US9275342B2 (en) | 2012-04-09 | 2016-03-01 | 24/7 Customer, Inc. | Method and apparatus for intent modeling and prediction |
US20130275862A1 (en) | 2012-04-16 | 2013-10-17 | Hosni I. Adra | System and Method for Providing a Product-Based Chat Session |
KR101899548B1 (ko) * | 2012-04-16 | 2018-09-17 | 삼성전자 주식회사 | 휴대단말에서 피드 정보 수집 방법 및 장치 |
US9563336B2 (en) | 2012-04-26 | 2017-02-07 | Liveperson, Inc. | Dynamic user interface customization |
US9672196B2 (en) | 2012-05-15 | 2017-06-06 | Liveperson, Inc. | Methods and systems for presenting specialized content using campaign metrics |
US9344519B2 (en) | 2012-06-14 | 2016-05-17 | Discourse Analytics, Inc. | Receiving and correlation of user choices to facilitate recommendations for peer-to-peer connections |
US20140058721A1 (en) | 2012-08-24 | 2014-02-27 | Avaya Inc. | Real time statistics for contact center mood analysis method and apparatus |
IL221685A0 (en) | 2012-08-29 | 2012-12-31 | Google Inc | Predicting content performance with interest data |
US8824998B2 (en) | 2012-09-28 | 2014-09-02 | Intel Corporation | Mechanism for facilitating dynamically prioritized control of calls over a network |
JP6097679B2 (ja) * | 2013-02-28 | 2017-03-15 | エルジー アプラス コーポレーション | 端末間機能共有方法及びその端末 |
US20140278795A1 (en) | 2013-03-13 | 2014-09-18 | Subramaniam Satyamoorthy | Systems and methods to predict purchasing behavior |
WO2014157889A1 (en) * | 2013-03-25 | 2014-10-02 | Samsung Electronics Co., Ltd. | Method and apparatus for improving quality of experience in sharing screen among devices, and recording medium thereof |
JP5632035B2 (ja) * | 2013-03-29 | 2014-11-26 | 沖電気工業株式会社 | 遠隔作業支援システム及び遠隔作業支援プログラム |
US20150101003A1 (en) * | 2013-06-18 | 2015-04-09 | Global Invacom Limited | Data transmission apparatus, system and method |
JP6155906B2 (ja) * | 2013-07-01 | 2017-07-05 | 株式会社リコー | 情報処理装置、第2の情報処理装置、通信端末、通信システム、プログラム |
US20130326375A1 (en) | 2013-08-07 | 2013-12-05 | Liveperson, Inc. | Method and System for Engaging Real-Time-Human Interaction into Media Presented Online |
US9247066B1 (en) | 2013-08-22 | 2016-01-26 | West Corporation | User input drivent short message service (SMS) applications |
US11042898B2 (en) | 2014-03-18 | 2021-06-22 | Staples, Inc. | Clickstream purchase prediction using Hidden Markov Models |
JP2015184827A (ja) * | 2014-03-20 | 2015-10-22 | エヌ・ティ・ティ・コムウェア株式会社 | ブラウジング共有サーバ、ブラウジング共有システム、ブラウジング共有方法、ブラウジング共有プログラム |
US9361469B2 (en) * | 2014-03-26 | 2016-06-07 | Amazon Technologies, Inc. | Electronic communication with secure screen sharing of sensitive information |
US11386442B2 (en) | 2014-03-31 | 2022-07-12 | Liveperson, Inc. | Online behavioral predictor |
US9256761B1 (en) | 2014-08-18 | 2016-02-09 | Yp Llc | Data storage service for personalization system |
CN104394191B (zh) * | 2014-10-22 | 2016-09-14 | 腾讯科技(深圳)有限公司 | 远程控制移动终端的方法、控制终端及系统 |
US10134058B2 (en) | 2014-10-27 | 2018-11-20 | Amobee, Inc. | Methods and apparatus for identifying unique users for on-line advertising |
JP6212533B2 (ja) * | 2015-12-28 | 2017-10-11 | 株式会社オプティム | 画面共有システム、画面共有方法、および画面共有プログラム |
WO2017136166A1 (en) * | 2016-02-04 | 2017-08-10 | TEN DIGIT Communications LLC | Intermediary device for data message network routing and enhancement in a contact center environment |
US10606367B2 (en) * | 2016-07-11 | 2020-03-31 | Light Wave Technology Inc. | Command relay device, system and method for providing remote assistance/remote control |
EP4130998A1 (en) | 2016-08-14 | 2023-02-08 | Liveperson Inc. | Systems and methods for real-time remote control of mobile applications |
-
2017
- 2017-08-11 EP EP22197178.1A patent/EP4130998A1/en not_active Withdrawn
- 2017-08-11 CA CA3033743A patent/CA3033743A1/en active Pending
- 2017-08-11 JP JP2019529459A patent/JP6983887B2/ja active Active
- 2017-08-11 CN CN202310496348.3A patent/CN116521299A/zh active Pending
- 2017-08-11 US US15/675,443 patent/US10278065B2/en active Active
- 2017-08-11 CN CN201780063704.5A patent/CN109844717B/zh active Active
- 2017-08-11 WO PCT/US2017/046550 patent/WO2018034989A1/en unknown
- 2017-08-11 CN CN202310496145.4A patent/CN116528220A/zh active Pending
- 2017-08-11 EP EP17761357.7A patent/EP3497560B1/en active Active
- 2017-08-11 AU AU2017312875A patent/AU2017312875B2/en active Active
-
2019
- 2019-03-14 US US16/353,321 patent/US10785641B2/en active Active
-
2020
- 2020-08-14 US US16/993,520 patent/US11363452B2/en active Active
-
2021
- 2021-07-01 JP JP2021109953A patent/JP7263442B2/ja active Active
- 2021-10-25 AU AU2021257903A patent/AU2021257903B2/en active Active
-
2022
- 2022-05-10 US US17/740,793 patent/US11825555B2/en active Active
-
2023
- 2023-01-05 AU AU2023200054A patent/AU2023200054A1/en active Pending
- 2023-04-12 JP JP2023064825A patent/JP2023098999A/ja not_active Withdrawn
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6826707B1 (en) * | 1996-06-18 | 2004-11-30 | Kroll Ontrack Inc. | Apparatus and method for remote data recovery |
US20050086328A1 (en) * | 2003-10-17 | 2005-04-21 | Landram Fredrick J. | Self configuring mobile device and system |
US20160198509A1 (en) * | 2005-04-20 | 2016-07-07 | Contact At Once!, Llc. | System and method for analyzing messages and initiating communication sessions |
US8373538B1 (en) * | 2007-09-12 | 2013-02-12 | Oceans' Edge, Inc. | Mobile device monitoring and control system |
US20110054296A1 (en) * | 2008-02-07 | 2011-03-03 | Signostics Limited | Remote display for medical scanning apparatus |
US20110004888A1 (en) * | 2009-07-06 | 2011-01-06 | Sudharshan Srinivasan | Screen sharing method with selective access to both data and logic of a shared application using a helper application |
CN102143235A (zh) * | 2011-04-12 | 2011-08-03 | 张�林 | 对触摸屏终端提供远程服务的方法及系统 |
US20130250354A1 (en) * | 2012-03-21 | 2013-09-26 | Yoshinaga Kato | Information providing device, image forming device, and transmission system |
CN104838630A (zh) * | 2012-10-10 | 2015-08-12 | 思杰系统有限公司 | 基于策略的应用程序管理 |
CN105637523A (zh) * | 2013-10-16 | 2016-06-01 | 思杰系统有限公司 | 用于移动设备管理类型保护的安全客户端驱动映射和文件存储系统 |
CN104376266A (zh) * | 2014-11-21 | 2015-02-25 | 工业和信息化部电信研究院 | 应用软件安全级别的确定方法及装置 |
CN105578313A (zh) * | 2016-01-06 | 2016-05-11 | 上海斐讯数据通信技术有限公司 | 远程控制方法,系统,远控执行方法,系统及移动终端 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556261A (zh) * | 2020-04-26 | 2021-10-26 | 阿里巴巴集团控股有限公司 | 数据通信方法、装置、电子设备及计算机可读存储介质 |
CN113556261B (zh) * | 2020-04-26 | 2024-02-13 | 阿里巴巴集团控股有限公司 | 数据通信方法、装置、电子设备及计算机可读存储介质 |
CN111857914A (zh) * | 2020-07-06 | 2020-10-30 | 上海意略明数字科技股份有限公司 | 终端上的应用程序操作信息获取方法及装置、存储介质、终端 |
CN111913675A (zh) * | 2020-07-30 | 2020-11-10 | 维沃移动通信有限公司 | 显示控制方法和装置、电子设备及计算机可读存储介质 |
CN112363405A (zh) * | 2020-11-09 | 2021-02-12 | 深圳康佳电子科技有限公司 | 一种智能家居联动控制方法、智能终端、存储介质 |
CN112363405B (zh) * | 2020-11-09 | 2024-06-11 | 深圳康佳电子科技有限公司 | 一种智能家居联动控制方法、智能终端、存储介质 |
CN113835599A (zh) * | 2021-09-24 | 2021-12-24 | 深圳市道通科技股份有限公司 | 一种基于局域网远程控制诊断设备的方法及系统 |
CN115167969A (zh) * | 2022-09-07 | 2022-10-11 | 平安银行股份有限公司 | 基于云端的远程协同方法及装置 |
CN115167969B (zh) * | 2022-09-07 | 2022-12-23 | 平安银行股份有限公司 | 基于云端的远程协同方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6983887B2 (ja) | 2021-12-17 |
WO2018034989A1 (en) | 2018-02-22 |
US11825555B2 (en) | 2023-11-21 |
AU2023200054A1 (en) | 2023-02-09 |
US20220360976A1 (en) | 2022-11-10 |
JP2021170354A (ja) | 2021-10-28 |
EP3497560A1 (en) | 2019-06-19 |
US20190342749A1 (en) | 2019-11-07 |
AU2017312875B2 (en) | 2021-09-16 |
CN116528220A (zh) | 2023-08-01 |
EP4130998A1 (en) | 2023-02-08 |
JP2023098999A (ja) | 2023-07-11 |
JP7263442B2 (ja) | 2023-04-24 |
CN116521299A (zh) | 2023-08-01 |
CN109844717B (zh) | 2023-05-23 |
US20210029535A1 (en) | 2021-01-28 |
EP3497560B1 (en) | 2022-11-02 |
US20180049023A1 (en) | 2018-02-15 |
US10278065B2 (en) | 2019-04-30 |
US11363452B2 (en) | 2022-06-14 |
JP2019525371A (ja) | 2019-09-05 |
AU2017312875A1 (en) | 2019-02-28 |
AU2021257903B2 (en) | 2022-12-08 |
AU2021257903A1 (en) | 2021-11-18 |
CA3033743A1 (en) | 2018-02-22 |
US10785641B2 (en) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109844717A (zh) | 用于移动应用程序的实时远程控制的系统和方法 | |
US11481199B2 (en) | Dynamic code management | |
KR102197248B1 (ko) | 다른 형태의 정보 공유를 통한 코브라우징의 통합 | |
US10748194B2 (en) | Collaboration group recommendations derived from request-action correlations | |
CN108886487A (zh) | 多模态对话互通 | |
US11212127B2 (en) | Digital workspace sharing over one or more display clients and authorization protocols for collaboration systems | |
CN107646120A (zh) | 用于内容创建的交互式命令行 | |
CN102474432A (zh) | 社交网络虚拟专用网络 | |
CN110493120A (zh) | 一种用于发送设备操作指令的方法与设备 | |
CN105847335B (zh) | 一种数据处理方法及服务器 | |
US20220382825A1 (en) | Method and system for web page co-browsing | |
US11875103B2 (en) | Managing links for tracking user interactions with content items | |
JP2021002169A (ja) | 情報処理方法、情報処理装置、及びプログラム | |
CN107003881A (zh) | 社交网络系统和在其中显示用户信息的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |