CN113010530A - 用于内容共享的系统和方法 - Google Patents

用于内容共享的系统和方法 Download PDF

Info

Publication number
CN113010530A
CN113010530A CN202011502877.2A CN202011502877A CN113010530A CN 113010530 A CN113010530 A CN 113010530A CN 202011502877 A CN202011502877 A CN 202011502877A CN 113010530 A CN113010530 A CN 113010530A
Authority
CN
China
Prior art keywords
computing
data
user interface
database
computing devices
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.)
Pending
Application number
CN202011502877.2A
Other languages
English (en)
Inventor
M·加莱
N·布拉亚尔
S·奈特·奥斯李梅恩
J·莫雅德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amadeus SAS
Original Assignee
Amadeus SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amadeus SAS filed Critical Amadeus SAS
Publication of CN113010530A publication Critical patent/CN113010530A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]

Abstract

本发明涉及用于内容共享的系统和方法。在网络中执行的协作内容创建的方法。网络包括多个计算设备和计算资源。计算资源包括数据库。多个计算设备通信连接到计算资源。该方法包括在计算资源处从多个计算设备中的第一计算设备接收选择数据。计算资源基于该选择数据从数据库中选择存储在数据库中的多个数据记录中的至少一个数据记录。所选择的至少一个数据记录具有第一数据尺寸。计算资源创建用户界面信息,用户界面信息代表至少一个数据记录并且被配置为允许所述多个计算设备中的第二计算设备在第二计算设备用户界面中显示所选择的至少一个数据记录的表示。用户界面信息具有小于第一尺寸的第二数据尺寸。计算资源将用户界面信息传输到第二计算设备。

Description

用于内容共享的系统和方法
技术领域
本文描述的实施例一般而言涉及联网决策支持工具,并且更具体地涉及使实现来自多个源的贡献的网络决策支持工具。
背景技术
电子商务的普及已急剧增加,并且经由各种类型的电子通信设备进行的购买是司空见惯的。这种购买给托管电子商务业务的服务器带来了巨大的计算负担。
附图说明
从以下结合附图的详细描述中,实施例将得到更全面的理解和认识,其中:
[图1]示出了其中可以实践实施例的通信系统的概述;
[图2]示出了根据实施例的用户设备的示例;以及
[图3]图示了协作通信方法中的数据流。
具体实施方式
现在将详细参考根据本公开实现的示例性实施例,其示例在附图中示出。将在所有可能的情况下贯穿所有附图使用相同的附图标记指代相同或相似的部分。
在实施例中,提供了一种在包括多个计算设备和计算资源的网络中执行的协作内容创建的方法。计算资源包括数据库。多个计算设备通信连接到计算资源。该方法包括在计算资源处从多个计算设备中的第一计算设备接收选择数据,计算资源基于该选择数据从数据库中选择存储在数据库中的多个数据记录中的至少一个数据记录,所选择的至少一个数据记录具有第一数据尺寸,计算资源创建用户界面信息,所述用户界面信息代表至少一个数据记录,并被配置为允许多个计算设备中的第二计算设备在第二计算设备的用户界面中显示所选择的至少一个数据记录的表示,其中用户界面信息具有小于第一尺寸的第二数据尺寸,并且将用户界面信息传输到第二计算设备。
在实施例中,该方法还包括在计算资源处从多个计算设备中的计算设备接收更新后的选择数据。在该实施例中,计算资源基于更新后的选择数据来更新数据记录,基于更新后的数据记录来更新用户界面信息以创建更新后的用户界面信息,生成在存储的用户界面信息与更新后的用户界面信息之间的差异并将该差异传输到通信连接到计算资源的多个计算设备。
在实施例中,通信连接到计算资源的多个计算设备在选择存储在数据库中的数据记录的过程中进行协作,其中多个计算设备全都对单个通信服务进行订阅以促进实时更新到所有订阅设备的递送。
在实施例中,多个计算设备全都订阅相同的websocket/双向/全双工服务。
在实施例中,至少一个第二计算设备经由用户界面从用户接收输入并将接收到的输入实时传输到中央计算资源。中央计算资源将从该至少一个第二计算设备接收的输入传输到第一计算设备。
在实施例中,该方法还包括在更新触发事件之后更新存储在数据库中的一个或多个数据记录,其中所述更新触发事件是更新该一个或多个数据记录的指令的接收或对链接到该一个或多个数据记录的数据记录的选择或修改中的至少一个。
在实施例中,数据记录包括多个数据条目。在所有计算设备都从计算资源断开之后,数据记录保留在数据库中。数据条目中的一个或多个可在数据库中独立更新。在该实施例中,该方法还包括每当更新数据条目时就更新数据记录,而与计算设备的连接状态无关。以这种方式,数据库始终是最新的,因此,一旦用户设备重新连接到数据库,就可以显示正确的数据记录。这使得恢复数据记录的显示变得容易,比如说在用户设备从数据库非自愿断开之后。将认识到的是,数据记录的状态独立于用于创建数据记录的设备和/或持续参与预订会话的设备的连接状态。因此,有可能将数据记录保留一段不确定的时间或可自由选择的时间,例如,使数据记录保留几个月或比如说四分之一年。
根据另一个实施例,提供了一种在通信连接到计算资源的多个计算设备之间实时协作的方法。多个计算设备连接到联合通信资源,以促进信息从计算资源到多个计算设备的基本上同时的递送。计算资源包括存储可更新数据记录的数据库。计算资源经由所述通信资源将对一个或多个所选择的数据记录的更新传送到多个计算设备。
根据另一个实施例,提供了由一个或多个处理器执行的计算机程序指令。指令在由一个或多个处理器执行时使一个或多个处理器执行如本文所述的方法。
优选地,指令存储在非易失性存储设备上。
根据另一个实施例,提供了一种包括处理器和存储器的计算设备。计算设备被配置为可通信连接到数据库和多个计算设备。存储器存储程序指令,该程序指令在由处理器执行时使处理器从多个计算设备中的第一计算设备接收选择数据,并基于该选择数据从数据库中选择存储在数据库中的多个数据记录中的至少一个数据记录,所选择的至少一个数据记录具有第一数据尺寸,创建代表该至少一个数据记录的用户界面信息并被配置为允许多个计算设备中的第二个计算设备在第二计算设备的用户界面中显示所选择的至少一个数据记录的表示,其中用户界面信息具有小于第一数据尺寸的第二数据尺寸,并且将用户界面信息传输到第二计算设备。
在实施例中,程序指令还被配置为,当由处理器执行时,使处理器从多个计算设备中的用户设备接收更新后的选择数据,基于更新后的选择数据来更新数据记录,基于更新后的数据记录来更新用户界面信息以创建更新后的用户界面信息,生成在存储的用户界面信息与更新后的用户界面信息之间的差异并将该差异传输到通信连接到计算资源的多个计算设备。
在实施例中,程序指令还被配置为,当由处理器执行时,使处理器使多个计算设备全都能够向单个通信服务订阅,以促进实时更新到所有订阅设备的递送。单个通信服务可以是基于Websocket的。
在实施例中,设备包括数据库。在该实施例中,程序指令还被配置为,当由处理器执行时,使处理器在更新触发事件之后更新存储在所述数据库中的一个或多个数据记录。更新触发事件是更新该一个或多个数据记录的指令的接收或对链接到该一个或多个数据记录的数据记录的选择或修改中的至少一个。
在实施例中,数据记录包括多个数据条目,其中在所有计算设备都从计算资源断开之后,所述数据记录保留在数据库中,并且其中所述数据条目中的一个或多个可在数据库中独立更新。程序指令还被配置为在由处理器执行时使处理器每当更新所述数据条目时就更新数据记录,而与计算设备的连接状态无关。
在另一个实施例中,提供了一种计算资源,该计算资源包括可通信连接到多个计算设备以用于多个计算设备之间的实时协作的联合通信资源。该联合通信资源被配置为促进信息从计算资源到多个计算设备的基本上同时的递送。计算资源包括存储可更新数据记录的数据库。计算资源被配置为经由通信资源将对一个或多个所选择的数据记录的更新传送到多个计算设备。
联网系统允许多个实体同时访问网络资源。多个实体可以期望同时或基本上同时被告知网络资源的当前状态。例如,出于对与网络资源相关联的做决策过程有贡献的目的,这个信息可以是期望或必需的,以允许实体的用户显示网络资源的当前状态。这个做决策过程可以涉及对商品或服务的协作预订,诸如例如旅行行程的合作创建和修改。
网络资源可以是在诸如服务器或虚拟机之类的集中式计算资源上操作的虚拟或在线购物车。在线购物车是已知的,但是在撰写本文时,据发明人所知,可以由多个实体以可靠且资源有效的方式更改的购物车还是未知的。虽然将参考用于旅行服务的协作预订的多方购物车来描述实施例,但是实施例不限于这个具体示例。其它实施例可以涉及其它集中管理的信息,这种信息也经历快速改变并且被分发给连接到管理该信息的服务的多方。
快速改变是可以在任何时间发生的改变,并且可能在几分钟、几小时、几天或几周内至少发生一次,并且可能发生多次。由于旅行服务提供者提供的服务打算在旅行时被完全利用,因此旅行信息尤其会快速改变,因此航班、旅馆和汽车租赁等被完全预订,而在服务递送时很少或没有剩余不产生收入的闲置容量。就预订过程而言,这个模型意味着所提供服务的可用性会发生快速改变,特定服务的可用性仅在服务已经大量可用之后的短时间内(比如说几小时甚至几分钟)就变得稀缺。服务可用性的改变的快速程度当然取决于总可用性与关注的强度/关注的各方的数量之间的平衡。不过,将认识到的是,即使在信息有时不快速改变的系统中,信息改变的速率在其它时间也可以更大。在实施例中,提供了一种可以应对任一种情况的系统。
而且,在线购买平台可以将动态定价策略应用于所提供的商品或服务。例如,商品或服务可以在货源充足时以比在货源变得稀缺时更低的价格出售。相反,在一段时间的高价之后,为了试图出售少量剩余的商品或服务供应(offerings),可以降低销售价格。这有助于集中维护的信息的改变的快速程度。
在中央商品或服务管理平台聚合来自多个服务的商品或服务供应的实施例中,诸如例如针对旅行数据、航班、租车或宾馆预订商品的供应,信息可以或者甚至可能源自多个数据源,比如说,在示例中,来自提供航班的航空公司、一个或多个租车公司或甚至聚合多个租车公司和各种宾馆、连锁宾馆或宾馆预订聚合商的供应的另一个平台。在此类情况下,数据的改变不受中央资源的控制,该中央资源被配置为协调各种商品或服务向联网实体的提供。这种缺乏控制的一个结果是数据更新无法被协调并且在任何时间都可能需要。这进一步增加了数据改变的快速程度。
在多个人类用户参与协作选择数据库中的数据(比如说协作地预订服务或商品)的场景中,重要的是数据库可以在一定的时间范围内应用相关的内部更新,这允许没有人类用户可注意到的延迟地传送可以影响人类用户做出的决定的改变。为了这个目的,期望提供一种机制,用于以高效的方式将任何这样的改变传送到在数据选择过程中协作的用户,并且优选地没有用户更新的及时性对网络传输条件的依赖的风险。
图1示出了系统100的概述,该系统100包括中央计算资源110和多个用户设备1201至120m,这些用户设备可以经由网络130和通信接口140通信连接到中央计算资源110。中央计算资源110包括一个或多个实时数据库150和预约API 160。实时数据库包括与提供给用户设备1201至120m的用户的商品或服务相关的最新信息。预约API 160被配置为促进各个用户1201至120m的预订活动之间的协调。
数据可以由中央计算资源110外部的计算设备1701至170p存储在实时数据库150中。计算设备1701至170p中的一个或多个或全部可以在操作中央计算资源110的一方的控制之下。可替代地,计算设备1701至170p可以在除了操作中央计算资源110的一方以外的各方的控制之下。例如,计算设备1701至170p中的一个或多个或全部可以在服务或商品提供者(诸如不在操作中央计算设备110的一方的控制下的旅馆或航班预订站点或汽车租赁站点)的控制之下。将认识到的是,虽然计算设备1701至170p被示为在中央计算设备110的外部,但是计算设备1701至170p中的一个或多个或全部可以是中央计算设备110的一部分,特别是当计算设备1701至170p中的一个或多个或全部在操作中央计算设备110的一方的控制之下时。相反,对于不在操作中央计算设备110的一方的控制之下的计算设备1701至170p,对中央计算设备110的访问可以通过通信接口140被提供,虽然这在图1中未示出。
在实施例中,中央计算资源110可以是在操作计算资源110的一方的排他性控制之下的计算资源,诸如一个或多个服务器。在替代实施例中,计算资源110可以是基于云的计算资源,即,其中托管预约API 160并且维护和更新数据库150的资源。合适的云服务的示例可以是Google云,但是可以代替地使用能够托管预约API 160和数据库150的其它基于云的服务。
网络130可以是任何类型的通信网络,诸如互联网、LAN或WAN或任何其它类型的计算机网络、电话网络或任何此类网络的组合。网络130的目的是允许用户设备1201至120m经由通信接口140例如以用户将连接到在线购物门户的方式连接到中央计算资源110。
在一个实施例中,通信接口140是作为服务供应的移动后端,其将中央计算资源110与各种不同的计算设备1201至120m(诸如移动计算设备,包括移动电话、平板计算机和膝上型计算机或任何其它能够经由通信接口140和网络130向用户显示由预约API 160提供的用户界面的计算设备)接口。在实施例中,通信接口140特别地被配置为代表计算资源110来管理用户联系人或账户,以提供推送通知、文本消息、任何基于web的推送技术(诸如pushlets、web套接字、HTTP服务器推送、长时间轮询和Adobe Flash等),或将消息传输到用户设备和/或与社交媒体站点的接口的任何其它合适方式。在实施例中,通信接口140包括由Google或mongoDB提供的Firebase服务中提供上面讨论的功能所需的那些元素或由那些元素组成。
图2示出了根据实施例的计算设备的示例。计算设备可以是用户设备120或计算资源110。用户设备120包括通信接口200、处理器210、被配置为被处理器210访问以进行读取和/或写入操作的存储器220以及I/O接口230。存储器220存储计算机程序指令,该计算机程序指令被配置为在处理器210执行计算机程序指令时使处理器210以本文描述的方式与连接的计算设备进行交互。如果计算设备是用户设备120,那么用户I/O接口230被配置为向用户设备120的用户显示信息并从用户接收输入信息。用户I/O接口230可以例如包括显示屏,用于向用户显示用户界面。显示屏可以是触摸屏,以允许用户输入信息,例如,填写呈现给用户的表格。可替代地或附加地,计算设备可以包括其它输入部件,诸如键盘。通信接口200被配置为连接到一个或多个通信信道240以建立与通信接口140的通信。将认识到的是,如果用户设备120是无线设备(诸如移动电话、平板计算机或膝上型计算机),那么通信接口200可以连接到天线(未示出)以访问无线通信信道240。可替代地,对于固定用户设备120,可以提供有线连接以连接到/建立通信信道240。
存储器220可以存储计算机程序指令250,该计算机程序指令250在处理器210执行计算机程序指令250时使处理器210运行计算机应用,该计算机应用被配置为与其它计算设备(诸如通信接口140、用户设备120或计算资源110)通信连接。可替代地,用户设备120与计算资源110之间的交互完全基于浏览器。在这种情况下,计算机程序指令250使用户设备120操作浏览器。
图3图示了协作通信方法中的数据流。在该实施例中,三个用户使用三个用户设备(用户设备1至3)进行协作。第一用户使用他/她的用户设备(用户设备1)发起通信。用户最初连接(步骤400)到预约API 160,以从计算资源110获得可用的报价(offers)。如以上所讨论的,用户设备可以包括专用应用,用于向设备的用户呈现所获取的报价和/或在浏览器中提供相关的呈现。呈现的报价可以包括具体的建议或广告。可替代地或附加地,在用户设备上运行的应用或浏览器包括要由用户填充的输入字段。在实施例中,将用户在任何这样的输入字段中输入的每条信息从用户设备流式传输到实时数据库。用户可以例如开始输入他或她希望访问的城市的名称或他或她希望飞往的机场的名称或缩写。用户设备被配置为将各个击键流式传输到通信接口140。通信接口140进而被配置为将可能目的地的列表缩小到可以由用户已经提供的信息识别出的那些目的地。在实施例中,通过预约API 160将这种可能目的地的缩小列表提供给用户设备。通过将信息流式传输到用户,该实施例避免了需要使用第三方通知系统(诸如WhatsApp、Mail、SMS等)来通知用户。
一旦用户在用户设备上指示期望对一个或多个服务或商品的当前选择,即,一旦用户在步骤405中将他或她的购物车发布到预约API160,预约API就与实时数据库通信(步骤410)以创建存储在实时数据库中的第一旅行选项/购物车。旅行选项/购物车是参考的集合,各个参考用于识别实时数据库中对应的各个数据条目。这个购物车构成节点,系统的其他用户可以使用他们的用户设备订阅该节点,并且可以使用购物车ID识别该节点。用户设备1的用户可以通过在步骤415中指示期望的进一步选择来创建进一步的旅行选项。每当用户设备向预约API 160提供这样的指示时,实时数据库150就在与API160的交互中创建旅行选项(步骤420)。
到目前为止,彼此已经进行交互的设备仅仅是第一用户设备和预约API 160。在该实施例中,用户可以选择与其他用户共享购物车。在该实施例中,预约API 160包括使实现这种共享的功能。这可以包括软件可激活的显示按钮或地址字段,用于输入识别与之共享购物车的一个或多个用户的信息。一旦用户输入了相关信息,诸如例如联系人的姓名、他或她的电子邮件地址或计算资源110并且特别是通信接口140已经知道的任何标识符,当链接到期望的联系人或允许经由社交媒体平台联系期望的联系人的相关标识符时,这个信息由用户设备传输到通知服务器。在美国专利9,704,109中公开了邀请其他用户协作参与数据选择的几种方式,该专利的全部内容通过引用并入本文。
在实施例中,通知服务器形成通信接口140的一部分,并且特别地可以由后端作为通信接口140的服务元素来提供。通知服务器被配置为向由为用户1接收的信息识别出的各方发送通知(步骤430)。这种通知可以采取推送通知、SMS、Messenger消息的形式,或更一般地,可以从通知服务器发送给用户的任何类型的通知的形式,而无需对用户或用户设备方面的任何动作。
在该实施例中,发送给第二和第三用户的通知分别包括向接收用户通知第一用户希望共享旅行选择的信息,以及允许接收用户指示他或她希望参与共享旅行选项的手段。为此,通知可以例如包括用于让接收用户例如在浏览器中激活的链接。一旦接收用户已经经由他或她的用户设备,例如通过激活在步骤430中从通知服务器接收到的链接,指示愿意参与旅行选项的共享,实时数据库就在步骤435中提供允许接收用户设备向用户显示购物车的用户界面状态。
用户界面状态包括向用户显示当前旅行选项所必需的所有信息,但不包括定义购物车的完整信息。用户界面状态包括以下信息中的一个或多个或全部:
浏览器的当前URL
在线搜索中通常使用的参数,例如:
出发机场,
目的地机场以及
旅行日期
服务相关的信息,诸如:
预订的行李限额
随身行李限额和费用,
任何包括的乘客餐
座位号和/或位置,以及
允许进入休息室
与饮食偏好和/或过敏相关的信息,
机载WiFi的选择,
与特殊服务需求相关的信息,
与其它提供者(例如,airbnb)的追加销售或交叉销售相关的信息
与在用户设备上显示的当前面板/屏幕相关的信息,以及
与用户发起的所显示的面板/屏幕的过渡相关的信息。
用户界面状态具有几个字节的尺寸。
相反,整个购物车包括以下信息中的一个或多个或全部:
航班信息:
出发日期,
出发时间,
出发机场,
目的地机场,
航班号/标识符,
航班运营商,
飞行持续时间,
飞机类型
去程票价(outbound fare),
旅程代码,
包括的行李限额,
含餐
座位位置(过道、中间或靠窗),
改变行程的费用(并且如果费用可退还),
旅游舱(经济舱、商务舱、头等舱等),
乘客信息:
乘客年龄
乘客生日
乘客联系方式细节:
乘客电子邮件地址
乘客电话号码
乘客地址
名字
乘客ID
照片
付款细节:
收款人姓名
付款方式(信用卡、Apple Pay、Pay Pal)
卡的种类
卡上的名字
卡号+CVV
卡到期日期。
对于包括多个段的旅程,比如说包括一个或多个中途分程航班的旅程,旅程的每一段都需要上述购物车信息。而且,这个信息仅涉及单个旅客和单个付款人。而且,对于团体旅行,对于每个旅客和每个付款人都要求购物车信息。而且,将认识到的是,虽然以上购物车信息仅与航班预订相关,但是其可以可替代地与其它服务或商品的预订相关。还将认识到的是,另外的服务(诸如旅馆预订或租车预订)可以与航班预订相关联。在那种情况下,附加信息与购物车相关联。
购物车信息的尺寸为数百KB。虽然一个或仅几个购物车的传输可能是可管理的,但是在任何一次都发生大量预订操作的情况下,仅传输非常小的用户界面信息是有利的。在这种情况下,如果必须将整个购物车传送到用户设备,那么计算资源110必须处理一定量的数据流,这可能会损害系统性能甚至完整性。通过将传输到用户设备的信息限制到用户界面信息,共享旅行选项所消耗的计算资源大大减少。而且,由于从未共享购物车的内容,因此不会对购物车的当前/最新状态造成任何混淆。换句话说,购物车在创建过程中的唯一且真实的副本由实时数据库保持。
预约API 160通过将存储的数据量限制到仅用户设备向用户显示购物车的当前状态所需的数据、特定预订过程中所涉及的用户的列表、相关联的预订标识符和预订所覆盖的产品的列表来访问实时数据库并摘要提取(abstract)购物车。预约API 160创建单个用户界面状态以递送给所有订阅用户。这个用户界面状态存储在实时数据库中,由通信界面140从实时数据库将其分发给参与的用户。以这种方式,一旦预约API 160已经摘要提取了购物车,更新与用户设备的通信就可以由通信接口140管理,而不涉及预约API 160。倘若通信接口可以促进只需单次访问实时数据库150与用户设备的通信,那么位于通信接口140的计算资源110侧的系统100的部分与用户设备之间的通信数量被最小化,从而避免了必须在用户设备和预约API之间建立耗时和耗资源的连接。
以这种方式,进一步创建了用于意外断开的用户设备的参考点,同时使需要存储的数据量最小化。在一个实施例中,用户界面状态独立于用户设备类型。以这种方式,用户还能够使用不同的用户设备来访问他们当前的购物车。因此,系统100是耐多触点的。然后,在这个抽象过程中创建的用户界面状态或用户界面更新由通信接口140递送给用户。用户界面更新仅包括将新创建的用户界面状态与先前创建的用户界面状态区分开的信息。在先前的用户界面状态或先前的用户界面更新中已经递送给用户设备的信息已经可供用户设备用于显示当前用户界面状态,因此仅要求将新信息递送给用户设备,以允许用户设备仍显示完整的最新用户界面状态。将认识到的是,通过递送用户界面状态更新而不是完整的用户界面状态,进一步减少了向用户设备传输信息所需的带宽。在一个实施例中,预约API160存储导出的用户界面状态和/或用户界面状态更新,例如作为对象、Redux、对实时数据库内相关数据的引用的集合,这些将被递送给用户,以便以后通过通信接口对用户设备或类似设备进行检索。当预约API 160抽象购物车时,实时数据库150仅需要由单个实体(预约API 160)访问,而不是被多个用户访问多次。以这种方式,给定规格的数据库可以管理的购物车的数量增加。如以上所讨论的,基于用户界面更新,通信接口140促进了预约API 160与用户设备1201和120m之间的通信。以这种方式,减少了预约API 160的处理负荷。在一个实施例中,所有用户设备1201至120m参与创建订阅特定套接字的特定购物车,并且所有订阅的用户设备一旦状态改变就接收存储的用户界面状态的自动更新。通过将购物车数据抽象为上面讨论的用户界面状态,还限制要递送给用户设备的数据量。如以上所讨论的,存储在数据库中的数据可以经受快速改变。反映这些改变的信息需要同等迅速地被递送,或者至少以向用户提供更新而不会产生可感知的延迟的方式被递送。通过减小要传输的数据的尺寸,可以用给定的硬件系统传送给用户的更新的数量增加了。
一旦用户设备已经获得用户界面信息,它就在步骤440中使用该信息来更新显示给用户的用户界面。其他用户之一(图3中所示示例中的用户2)可能希望提议对用户1最初提出的购物车进行改变。为了促进这个操作,在步骤445中,将用户2在他/她的用户界面中输入的击键流式传输到预约API 160。预约API 160使用在预约API 160处接收的击键信息来更新由预约API 160存储的用户界面的当前、持久状态。在步骤450中,进而将由这个更新创建的用户界面状态的改变流式传输到所有参与预订过程的其他用户。在流式传输期间,将对所有用户动作进行排序和存储。这允许解决用户动作之间的任何冲突。在步骤455中,其他用户使用UI状态更新来更新他们各自的UI。
一旦用户2已经决定了期望的改变,该用户就在步骤460中将这些改变提交给实时数据库150。在实施例中,实时数据库使用所提交的改变来更新改变所应用到的购物车。在替代实施例中,实时数据库创建改变将被应用到其上的购物车的副本,并将改变应用于购物车的副本。以这种方式,可以通过还原到购物车的先前版本来撤消改变。一旦预订过程完成或终止,就可以删除相关购物车的所有副本。
在步骤465中,对购物车的改变(或者如果通过制作原始购物车的副本并更改这个副本来更新购物车,那么新的/更新后的购物车与其前身之间的差异)被发送给尚未请求购物车更新的用户(图3中所示示例中的用户1和3)。应当注意的是,发送给其他用户的信息仅仅表示对先前传输的信息的更新。以这种方式,减少了传输信息所需的带宽,并且改善了实时数据库150的响应性。在步骤470中用户使用所传输的信息来更新他们各自的用户界面。
图3进一步图示了一种情况,其中实时数据库中的数据点之一发生改变。在这种示例中,在步骤475中,由预约API 140将价格改变通知给实时数据库150来实现改变。在步骤480中,将由于数据的改变而导致的购物车中的任何这种改变传送到在购物车上工作的所有用户。如以上所讨论的,仅购物车中的改变被传输,而不是整个购物车。在步骤485,用户的设备使用接收到的信息来更新其用户界面。
将认识到的是,步骤475至485可以发生在图3所示的步骤序列的任何阶段。
在实施例中创建的购物车是持久的,并且即使在所有用户1201至120m都已经从通信接口140断开的情况下也可以存储一段时间。在该实施例中,每当与购物车中的元素/对象相关的改变发生改变时,所有存储的购物车都由实时数据库持续地更新,使得所有存储的购物车始终是最新的。在替代实施例中,如果用户设备1201至120m返回到所存储的购物车,那么实时数据库150更新购物车的内容。
如以上所讨论的,本文公开的系统可以允许多个用户支付所选择的服务或商品的部分。如果选择的服务是旅程,那么每个用户可以例如为自己的航班和/或住宿付费。但是,该系统被配置为可替代地接受单个付款人,该单个付款人覆盖了多于一个旅客或甚至所有旅客的费用。在一种布置中,系统被配置为将总成本除以付款人的数量,如用户使用用户设备所指示的那样。
当用户使用多个用户设备协作从数据库中选择数据时,系统不会将基于约定的数据选择进行的预订视为与个人进行的多个预订有关。在旅游行业中,个人进行的预订被视为独立的。相反,在实施例中,该系统被配置为将以上面讨论的方式协作地进行的预订相反地视为彼此依赖的预订,从而例如以组为基础分配航班上的座位,使得组的成员坐在一起。
在实施例中,预约API还被配置为:如果当前正在进行或先前开始的预订过程的细节已经改变,那么经由他们的用户设备通知用户。如果仍然可用的物品(比如说飞机上的座位)数量低于所选择的物品的数量,或者如果可用数量以接近所选择的物品的数量的方式减少,或者如果与选择相关联的报价已过期,那么此类通知可以与所选择的预订选项的成本改变相关。
在前述说明书中,已经参考可以随实施方式而变化的许多具体细节描述了实施例。可以对所描述的实施例进行某些适应和修改。考虑到本文公开的发明的说明书和实践,其它实施例对于本领域技术人员而言可以是显而易见的。说明书和示例旨在仅被认为是示例性的。附图中所示的步骤顺序也旨在仅仅用于说明性目的,并且不旨在限于任何特定的步骤顺序。照此,本领域技术人员可以认识到,在实现相同方法的时候,可以以不同次序执行这些步骤。

Claims (16)

1.一种在包括多个计算设备和计算资源的网络中执行的协作内容创建的方法,计算资源包括数据库,并且所述多个计算设备通信连接到计算资源,该方法包括:
在计算资源处从所述多个计算设备中的第一计算设备接收选择数据;
计算资源基于该选择数据从数据库中选择存储在数据库中的多个数据记录中的至少一个数据记录,所选择的至少一个数据记录具有第一数据尺寸;
计算资源创建用户界面信息,该用户界面信息代表所述至少一个数据记录并被配置为允许所述多个计算设备中的第二计算设备在第二计算设备的用户界面中显示所选择的至少一个数据记录的表示,其中用户界面信息具有小于第一尺寸的第二数据尺寸;以及
将用户界面信息传输到第二计算设备。
2.如权利要求1所述的方法,该方法还包括:
在计算资源处从所述多个计算设备中的计算设备接收更新后的选择数据;
计算资源:
基于更新后的选择数据来更新所述数据记录;
基于更新后的数据记录来更新所述用户界面信息以创建更新后的用户界面信息;
生成在存储的用户界面信息与更新后的用户界面信息之间的差异;以及
将该差异传输到被通信连接到计算资源的所述多个计算设备。
3.如权利要求1或2所述的方法,其中通信连接到计算资源的所述多个计算设备在选择存储在数据库中的数据记录的过程中进行协作;以及
其中所述多个计算设备全都对单个通信服务进行订阅,以促进到所有订阅设备的实时更新的递送。
4.如权利要求3所述的方法,其中所述多个计算设备全都订阅相同的websocket/双向/全双工服务。
5.如前述权利要求中的任一项所述的方法,还包括:
所述至少一个第二计算设备经由用户界面从用户接收输入并将所述接收到的输入实时传输到中央计算资源;
中央计算资源将从所述至少一个第二计算设备接收的输入传输到第一计算设备。
6.如前述权利要求中的任一项所述的方法,还包括:
在更新触发事件之后更新存储在所述数据库中的一个或多个数据记录,其中所述更新触发事件是以下至少之一:
更新所述一个或多个数据记录的指令的接收;或者
对链接到所述一个或多个数据记录的数据记录的选择或修改。
7.如前述权利要求中的任一项所述的方法,其中所述数据记录包括多个数据条目,并且其中在所有计算设备都从计算资源断开之后,所述数据记录保留在数据库中,并且其中所述数据条目中的一个或多个可在数据库中独立更新,该方法还包括:
每当更新所述数据条目时就更新所述数据记录,而与计算设备的连接状态无关。
8.一种在通信连接到计算资源的多个计算设备之间实时协作的方法,其中所述多个计算设备连接到联合通信资源,以促进信息从计算资源到所述多个计算设备的基本上同时的递送,其中计算资源包括存储可更新数据记录的数据库,并且其中计算资源经由所述通信资源将对一个或多个所选择的数据记录的更新传送到所述多个计算设备。
9.由一个或多个处理器执行的计算机程序指令,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行根据前述权利要求中的任一项所述的方法。
10.一种计算设备,包括处理器、存储器,并且被配置为可通信连接到数据库和多个计算设备,存储器存储程序指令,程序指令在由处理器执行时使处理器:
从所述多个计算设备中的第一计算设备接收选择数据;
基于该选择数据从数据库中选择存储在数据库中的多个数据记录中的至少一个数据记录,所选择的至少一个数据记录具有第一数据尺寸;
创建用户界面信息,该用户界面信息代表所述至少一个数据记录并被配置为允许所述多个计算设备中的第二个计算设备在第二计算设备的用户界面中显示所选择的至少一个数据记录的表示,其中用户界面信息具有小于第一数据尺寸的第二数据尺寸;以及
将用户界面信息传输到第二计算设备。
11.如权利要求10所述的设备,程序指令还被配置为在由处理器执行时使处理器:
从所述多个计算设备中的用户设备接收更新后的选择数据;
基于更新后的选择数据来更新所述数据记录;
基于更新后的数据记录来更新所述用户界面信息,以创建更新后的用户界面信息;
生成在存储的用户界面信息与更新后的用户界面信息之间的差异;以及
将该差异传输到被通信连接到计算资源的所述多个计算设备。
12.如权利要求10或11所述的设备,程序指令还被配置为在由处理器执行时使处理器使得所述多个计算设备全都能够对单个通信服务进行订阅,以促进到所有订阅设备的实时更新的递送。
13.如权利要求12所述的设备,其中单个通信服务基于websocket。
14.如权利要求10至13中的任一项所述的设备,其中设备包括所述数据库,程序指令还被配置为在由处理器执行时使处理器:
在更新触发事件之后更新存储在所述数据库中的一个或多个数据记录,其中更新触发事件是以下至少之一:
更新所述一个或多个数据记录的指令的接收;或者
对链接到所述一个或多个数据记录的数据记录的选择或修改。
15.如权利要求14所述的设备,其中所述数据记录包括多个数据条目,其中在所有计算设备都从计算资源断开之后,所述数据记录保留在数据库中,并且其中所述数据条目中的一个或多个可在数据库中独立更新,程序指令还被配置为在由处理器执行时使处理器:
每当更新所述数据条目时就更新所述数据记录,而与计算设备的连接状态无关。
16.一种计算资源,包括可通信连接到多个计算设备以用于在所述多个计算设备之间的实时协作的联合通信资源,其中联合通信资源被配置为促进信息从计算资源到所述多个计算设备的基本上同时的递送,其中计算资源包括存储可更新数据记录的数据库,并且其中计算资源被配置为经由所述通信资源将对一个或多个所选择的数据记录的更新传送到所述多个计算设备。
CN202011502877.2A 2019-12-20 2020-12-18 用于内容共享的系统和方法 Pending CN113010530A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1915259 2019-12-20
FR1915259A FR3105521B1 (fr) 2019-12-20 2019-12-20 Système et procédé pour le partage de contenu

Publications (1)

Publication Number Publication Date
CN113010530A true CN113010530A (zh) 2021-06-22

Family

ID=72266331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011502877.2A Pending CN113010530A (zh) 2019-12-20 2020-12-18 用于内容共享的系统和方法

Country Status (4)

Country Link
US (1) US11662892B2 (zh)
EP (1) EP3839867A1 (zh)
CN (1) CN113010530A (zh)
FR (1) FR3105521B1 (zh)

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751272B1 (en) * 1999-07-20 2014-06-10 Expedia, Inc. Fare compare—a system for collecting and displaying price information
US6876977B1 (en) * 1999-07-27 2005-04-05 The Foxboro Company Shared shopping basket management system
GB2362243A (en) * 1999-11-04 2001-11-14 Foxboro Co Shared shopping basket management system
US8700459B2 (en) * 2000-04-28 2014-04-15 Yisroel Lefkowitz Method and apparatus for selling international travel tickets in combination with duty free goods
JP2002041898A (ja) * 2000-07-06 2002-02-08 Hewlett Packard Co <Hp> 電子商取引の実施方法及び装置
US6850917B1 (en) * 2000-10-02 2005-02-01 Oracle International Corporation Methods and systems for sharing an online shopping cart
EP1355238A1 (en) * 2002-04-19 2003-10-22 Sap Ag Method and computer system for delta-handling in server-pages
US7434163B2 (en) * 2002-05-31 2008-10-07 Sap Aktiengesellschaft Document structures for delta handling in server pages
US8069069B2 (en) * 2002-06-18 2011-11-29 Amadeus S.A.S Method for loading flight schedule modifications
US7287256B1 (en) * 2003-03-28 2007-10-23 Adobe Systems Incorporated Shared persistent objects
US20060106655A1 (en) * 2003-08-05 2006-05-18 Ladislav Lettovsky System and method for coordinating travel itineraries
US20050216281A1 (en) * 2004-03-23 2005-09-29 Prior Francis J System and method for managing flight information
US8600784B1 (en) * 2004-07-30 2013-12-03 Kayak Software Corporation Indentifying information sources to search based on rules
US20070162314A1 (en) * 2005-03-15 2007-07-12 Gunn Gerald B Multi-traveler flight pass
US8706560B2 (en) * 2011-07-27 2014-04-22 Ebay Inc. Community based network shopping
US7996270B2 (en) * 2006-03-30 2011-08-09 Ebay Inc. Community based network shopping
US20090287513A1 (en) * 2006-06-23 2009-11-19 Unisys Corporation System and method for processing multiple bookings to receive a transportation service
US20080189190A1 (en) * 2007-02-01 2008-08-07 Jeff Ferber Proxy server and api extension for online stores
US20090030885A1 (en) * 2007-07-26 2009-01-29 Ridecharge Method and system for on-demand and scheduled services relating to travel and transportation
US20130215116A1 (en) * 2008-03-21 2013-08-22 Dressbot, Inc. System and Method for Collaborative Shopping, Business and Entertainment
US10872322B2 (en) * 2008-03-21 2020-12-22 Dressbot, Inc. System and method for collaborative shopping, business and entertainment
AU2009249272B2 (en) * 2008-05-18 2014-11-20 Google Llc Secured electronic transaction system
US8719251B1 (en) * 2008-11-14 2014-05-06 Kayak Software Corporation Sharing and collaboration of search results in a travel search engine
US20100306249A1 (en) * 2009-05-27 2010-12-02 James Hill Social network systems and methods
US20120072249A1 (en) * 2010-09-22 2012-03-22 Mobiata LLC System and method for sending travel information to a wireless mobile device
US10242327B2 (en) * 2010-11-15 2019-03-26 Pros Travel Commerce, Inc. Discovering and reserving travel solutions
WO2012097285A2 (en) * 2011-01-14 2012-07-19 Suarez Corporation Industries Social shopping apparatus, system and method
US20120197753A1 (en) * 2011-01-28 2012-08-02 Etsy, Inc. Systems and methods for shopping in an electronic commerce environment
US20120253972A1 (en) * 2011-03-28 2012-10-04 Rawllin International Inc. Electronic shared shopping list management
US20130036024A1 (en) * 2011-08-02 2013-02-07 Edward George Boettcher Systems and methods for online pre-purchase visual bundling
US20130218610A1 (en) * 2012-02-22 2013-08-22 ZigAir LLC Method and System for Aggregating Travelers to Transact Air Travel Reservations
TW201351339A (zh) * 2012-06-13 2013-12-16 Hon Hai Prec Ind Co Ltd 登機資訊提示系統及方法
US8924848B2 (en) * 2012-07-16 2014-12-30 Sap Se Synchronizing a user interface area
US20140058939A1 (en) * 2012-08-24 2014-02-27 Ebay Inc. Method and apparatus for processing payment transactions from a chat application integrated with a payment application that leverages social features from the chat application
US20150317611A1 (en) * 2012-11-27 2015-11-05 Secure Accreditation Solutions Technologies, S.L. Method and system for providing participation validations
US10169806B1 (en) * 2013-02-13 2019-01-01 Amazon Technologies, Inc. Shared aggregated e-commerce shopping cart
US9704109B2 (en) 2013-03-28 2017-07-11 Amadeus S.A.S. Community travel booking
JP2015036887A (ja) * 2013-08-13 2015-02-23 富士通株式会社 購入サービス提供装置、方法及びプログラム
US20150242927A1 (en) * 2013-10-03 2015-08-27 Jason Will Method and system of an online travel website
US20150161712A1 (en) * 2013-12-10 2015-06-11 12 Retail (HK) Limited Unifying shopping experience system
US20150178642A1 (en) * 2013-12-20 2015-06-25 Amadeus S.A.S. Dynamic travel planner
US9875446B2 (en) * 2014-04-03 2018-01-23 Amadeus S.A.S. Travel product information sharing
CN104133852B (zh) * 2014-07-04 2018-03-16 小米科技有限责任公司 网页访问方法、装置、服务器及终端
US10127600B2 (en) * 2014-07-31 2018-11-13 Walmart Apollo, Llc Online cart and shopping list sharing
US10127590B2 (en) * 2014-12-15 2018-11-13 Sears Brands, L.L.C. Methods and systems supporting online shopping as a shared and social activity
US9881262B2 (en) * 2015-01-26 2018-01-30 Amadeus S.A.S. Undo/redo of database files for modifying re-accommodation
EP3098711B1 (en) * 2015-05-29 2019-11-27 Amadeus S.A.S. Airplane-to-ground communication
US20170180352A1 (en) * 2015-12-22 2017-06-22 Mavatar Technologies, Inc. Single (social) login authentication and user-centric portal
US20170228668A1 (en) * 2016-02-10 2017-08-10 Khalid R. Oreif Comprehensive door-to-door trip planning and purchasing process and system that provides ongoing support to a traveler throughout a trip
US11188990B2 (en) * 2016-05-02 2021-11-30 Onriva Llc Purchasing a travel package via a communication network
US10331665B2 (en) * 2016-09-30 2019-06-25 Amadeus S.A.S. Search query processing
US20180211189A1 (en) * 2017-01-23 2018-07-26 Amadeus S.A.S. Record aggregation database
US10510024B2 (en) * 2017-03-08 2019-12-17 Amadeus S.A.S. Coordinated disruption handling
US11196714B2 (en) * 2018-11-07 2021-12-07 Citrix Systems, Inc. Systems and methods for encrypted browser cache
US11163590B2 (en) * 2018-12-04 2021-11-02 Sap Se Graphical user interface command pattern
US11138611B2 (en) * 2019-06-18 2021-10-05 Target Brands, Inc. Transferable and blended shopping cart
US20210065015A1 (en) * 2019-09-04 2021-03-04 Idk Tonight, Llc Computerized platform for facilitating group based decision making
US11042918B2 (en) * 2019-10-11 2021-06-22 Target Brands, Inc. Customer service tool

Also Published As

Publication number Publication date
EP3839867A1 (en) 2021-06-23
FR3105521A1 (fr) 2021-06-25
US11662892B2 (en) 2023-05-30
FR3105521B1 (fr) 2021-12-17
US20210191601A1 (en) 2021-06-24

Similar Documents

Publication Publication Date Title
AU2010298137B2 (en) Collaboration and travel ecosystem
US9990682B2 (en) Facilitating passenger to manage airline reservation within electronic message
US10049330B2 (en) Platform for multi-service procurement
US20140279444A1 (en) Peer to peer email based financial transactions
US20160019472A1 (en) System and method for organizing a group activity for multiple paying parties
US20170351977A1 (en) Facilitating user action based on transmissions of data to mobile devices
US20110022405A1 (en) System and method of managing customer information
US20110202377A1 (en) Method and system for providing a segment based differentiated customer experience solution
US20110313897A1 (en) Pay group
EP3745277B1 (en) Aggregating and updating heterogeneous data objects
US20160012514A1 (en) Providing gifted travel-related services to a traveler
CN109995581B (zh) 内容发布方法和装置
US20200065920A1 (en) Charter airline computerized reservation system with online communities to share reservations
US11093909B1 (en) System and methods for negotiating ticket transfer
CN113010530A (zh) 用于内容共享的系统和方法
US20220036433A1 (en) Shared Virtual Shopping Basket
US20190213651A1 (en) Online social activity-driven group gifting
Hammoud et al. Development of airlines’ distribution capabilities
US20150161711A1 (en) Systems and methods for completion of item purchases without merchant interaction
US20240078150A1 (en) Device, system and method for resolving errors between a client device, an intermediation server and a provider system
US20240054448A1 (en) Device, system and method for managing inventory of provider objects
CN112231542B (zh) 一种标准化航空公司附加服务销售的方法及装置
US20240135272A1 (en) Device, system and method for distributing and locally persisting provider objects
US11898858B2 (en) System and method for determining a set of routes, in a computerized environment
WO2024088838A1 (en) Device, system and method for generating trained models to generate provider objects

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