协调的中断处理的制作方法

文档序号:15518055发布日期:2018-09-25 18:48阅读:184来源:国知局

本发明一般而言涉及处理行程中断,并且更具体地涉及用于协调系统以解决这种中断的系统、方法和计算机程序产品。



背景技术:

向客户提供产品和服务常常涉及若干系统,每个系统提供不同的功能。例如,在航段的情况下,提供产品和服务可以涉及用于跟踪每个定期航班上可用座位的数量的系统、用于管理预约的系统、用于执行票务操作的系统以及用于管理在机场的运作的系统。有时,旅客的预订旅行行程可能会中断,诸如由于旅行行程中的一个航班延迟或取消。对这种中断作出反应,航空公司期望为旅客快速做出替代安排。但是,寻找并做出这种替代安排牵涉到航空公司的许多系统,诸如上面列出的那些系统。因此,如果处理不当,那么为被中断的旅客寻找并做出替代安排会导致每个被牵涉的系统之间的低效和矛盾,这会导致其它不良影响,诸如响应时间缓慢和超额预订。

因此,需要改进的系统、方法和计算机程序产品,以便以全面集成、协调和高效的方式来解决行程中断问题。



技术实现要素:

在一个示例性实施例中,在中断之后协调中断处理系统中包括的多个系统的操作的中断处理系统包括库存系统、预约系统、售票系统和离港控制系统(dcs)。库存系统包括第一数据库,该第一数据库包括计数器,每个计数器跟踪旅行产品的可用性数字(availabilityfigure)。预约系统包括第二数据库,该第二数据库包括用于旅客的一个或多个预约记录,每个旅客被包括在一个或多个预约记录中的一个当中并且在这一个预约记录内关联到该旅客预订的第一旅行行程。dcs包括第三数据库,该第三数据库包括为每个旅客存储的、与该旅客的第一旅行行程相关的旅客数据。售票系统包括第四数据库,该第四数据库包括每个旅客的电子票。库存系统、预约系统、售票系统和dcs经由计算机网络相连接。

中断处理系统还包括处理器和存储设备。库存系统、预约系统、售票系统和dcs中的每一个包括处理器中的至少一个处理器。存储器设备包括指令,指令一旦被中断处理系统的处理器执行,使得中断处理系统:响应于在中断处理系统处并在每个旅客的第一旅行行程已经被中断之后接收到包括旅客和要取代每个旅客的第一旅行行程的第二旅行行程的至少一部分的转移请求,自动执行以下操作。库存系统基于每个旅客的第一旅行行程以及第二旅行行程自动更新第一数据库的计数器,并且预约系统自动更新第二数据库的一个或多个预约记录,以反映每个旅客与第二旅行行程之间的关联。在更新第一数据库和第二数据库之后,售票系统为每个旅客自动执行针对第二旅行行程的自动售票处理,并且dcs为每个旅客自动将与第一旅行行程相关的旅客数据转移到包括在第三数据库中的与第二旅行行程相关的记录。

指令一旦被执行则可以使中断处理系统通过库存系统基于每个旅客的第一旅行行程以及第二旅行行程来更新第一数据库的计数器,并且,通过使中断处理系统通过库存系统基于第一数据库的计数器确定旅客是否可以重新预订到第二旅行行程上,通过预约系统更新第二数据库中的一个或多个预约记录,以反映每个旅客与第二旅行行程之间的关联。响应于确定旅客可以重新预订到第二旅行行程,可以为每个旅客执行以下操作:通过预约系统在第二数据库中将旅客重新预订到的第二旅行行程上,并且响应于旅客被重新预订,通过库存系统基于重新预订来更新第一数据库的计数器。

此外,指令一旦被执行则可以通过使中断处理系统向库存系统发送单个请求而使中断处理系统通过库存系统基于每个旅客的第一旅行行程以及第二旅行行程来更新第一数据库的计数器,其中单个请求包括每个旅客的第一旅行行程的至少一部分和第二旅行行程的至少一部分。之后,库存系统可以基于这单个请求来更新第一数据库的计数器。

此外,指令一旦被执行则还可以使中断处理系统执行以下操作。在接收到转移请求之前并且响应于在库存系统中执行的、影响每个旅客的第一旅行行程的日程表改变,dcs可以为每个旅客自动生成旅客的备份记录,该备份记录包括为旅客存储的、与旅客的第一旅行行程相关的旅客数据。在这种情况下,为旅客转移到与第二旅行行程相关联的记录的旅客数据可以来自旅客的备份记录。在一些情况下,每个旅客的第一旅行行程可以包括共同航班段,日程表改变可以与共同航班段相关,并且日程表改变可以在共同航班段的操作窗口内执行。此外或可替代地,转移请求可以经由dcs生成。

而且,存储在第三数据库中并且与其中一个旅客的第一旅行行程相关的这一个旅客的旅客数据可以包括这一个旅客的第一行李信息,第一行李信息包括第一行李行程和唯一标识符。在这种情况下,指令一旦被执行则可以通过使中断处理系统修改第一行李信息以包括基于第二旅行行程的第二行李行程而使中断处理系统将为这一个旅客存储的、与这一个旅客的第一旅行行程相关的旅客数据转移到包括在第三数据库中的、与第二旅行行程相关联的记录。经修改的行李信息可以被添加到与第二旅行行程相关联的记录中,并且可以包括第一行李信息的唯一标识符。

此外,每个旅客的第一旅行行程可以包括被取代的航班,并且第二旅行行程可以包括取代每个旅客的第一旅行行程的被取代的航班的新航班。相应地,指令一旦被执行则还可以使中断处理系统响应于转移请求被接收并且在第一数据库和第二数据库被更新之前锁定每个旅客的第一旅行行程的被取代的航班以及新航班。

而且,指令一旦被执行则可以通过使中断处理系统在第二数据库中生成新预约记录而使中断处理系统通过预留系统更新第二数据库的一个或多个预约记录,以反映每个旅客与第二旅行行程之间的关联。新的预约记录可以包括至少一个旅客以及第二旅行行程。

此外,指令一旦被执行则可以通过使中断处理系统为每个旅客选择选自包括电子票重新验证交易和电子票交换交易的组的电子票交易而使中断处理系统通过售票系统为每个旅客执行针对第二行程的售票处理。然后可以将包括为每个旅客选择的电子票交易的单个请求发送到售票系统。此外,指令一旦被执行则可以通过进一步使中断处理系统响应于从售票系统接收到对单个请求的拒绝而为每个旅客生成单独的售票请求而使中断处理系统通过售票系统为每个旅客执行针对第二旅行行程的售票处理。为每个旅客生成的单独的售票请求可以被发送到售票系统,并且售票系统可以一次一个地处理每个单独的售票请求。

此外,指令一旦被执行则可以通过进一步使中断处理系统通过售票系统执行为每个旅客选择的电子票交易而使中断处理系统通过售票系统为每个旅客执行针对第二旅行行程的售票处理。响应于售票系统为每个旅客选择的电子售票交易的执行,可以确定与旅客相关联的电子杂费凭证(emd)优惠券,其中每个emd优惠券是针对其中一个旅客的第一旅行行程的。对于每个emd优惠券,可以选择并执行选自包括emd解除关联交易、emd关联交易和emd交换交易的组的、针对emd优惠券的emd交易。

在另一个示例性实施例中,一种用于在中断之后协调包括在中断处理系统中的、经由通信网络相连接的系统的操作的方法,其中系统包括上述库存系统、预约系统、售票系统和dcs,该方法包括在中断处理系统处并且在每个旅客的第一旅行行程已被中断之后接收包括旅客和要取代每个旅客的第一旅行行程的第二旅行行程的至少一部分的转移请求。响应于在中断处理系统处接收到转移请求,该方法包括通过库存系统基于每个旅客的第一旅行行程以及第二旅行行程自动更新第一数据库的计数器,并且通过预约系统自动更新第二数据库的一个或多个预约记录,以反映每个旅客与第二旅行行程之间的关联。在第一数据库和第二数据库已被更新之后,该方法还包括通过售票系统为每个旅客自动执行针对第二行程的自动售票处理,并且为每个旅客通过dcs自动将与第一旅行行程相关的旅客数据转移到包括在第三数据库中的与第二旅行行程相关的记录。

该方法还可以包括以上结合上述示例性中断处理系统描述的特征中的任何一个或多个,和/或执行任何一个或多个操作。

在进一步的示例性实施例中,一种用于在中断之后协调包括在中断处理系统中的、经由通信网络相连接的系统的操作的计算机程序产品,其中系统包括与示例性中断处理系统相关联的上述库存系统、预约系统、售票系统和dcs,该计算机程序产品包括非暂态计算机可读存储介质。指令被存储在非暂态计算机可读存储介质上,指令一旦被中断处理系统的一个或多个处理器执行,使中断处理系统响应于在中断处理系统处并且在每个旅客的第一旅行行程已被中断之后接收到包括旅客和要取代每个旅客的第一旅行行程的第二旅行行程的至少一部分的转移请求而自动执行以下操作。库存系统基于每个旅客的第一旅行行程以及第二旅行行程自动更新第一数据库的计数器,并且预约系统自动更新第二数据库的一个或多个预约记录,以反映每个旅客与第二旅行行程之间的关联。在第一数据库和第二数据库已被更新之后,售票系统为每个旅客自动执行针对第二行程的自动售票处理,并且dcs为每个旅客自动将与第一旅行行程相关的旅客数据转移到包括在第三数据库中的与第二旅行行程相关的记录。

非暂态计算机可读存储介质的指令一旦被执行则还可以使中断处理系统实现以上结合上述示例性中断处理系统描述的特征中的任何一个或多个,和/或执行任何一个或多个操作。

上面的概述可以给出本发明的一些实施例的简化概述,以便提供对本文所讨论的发明的某些方面的基本理解。本概述不意在提供本发明的广泛概述,也不意在识别任何关键或至关重要的要素或描绘本发明的范围。本概述的唯一目的仅仅是以简化的形式给出一些概念,作为下面给出的详细描述的介绍。

附图说明

从下面结合附图的详细描述中将更全面地理解和认识到本发明的实施例。

图1是包括用于处理行程中断的多个计算机系统的示例性操作环境的示意图。

图2是图1中的示例性计算机系统的示意图。

图3是可以由图1的计算机系统实现的示例性处理体系架构的示意图。

图4是可以由图3的处理体系架构促进的、用于处理行程中断的示例性处理的流程图。

图5是用于执行可以包括在图4的处理中的售票操作的示例性处理的流程图。

图6是可以由图1的一个或多个计算机系统和/或由图3的处理体系架构实现的示例性状态机的图。

具体实施方式

本文描述的实施例当中有许多实施例涉及协调系统的网络以处理旅客旅行行程中断。特别地,当旅客预订的旅行行程被中断时(诸如由于航班取消或延迟),可能有必要将旅客转移到新的旅行行程中,并且快速这样做。但是,这种转移可能牵涉若干计算机系统,每个计算机系统在向旅客提供旅行产品和服务方面发挥相应的作用。计算机系统和互联网向旅客提供旅行产品和服务的出现增加了将旅客转移到新的旅行行程的复杂性和敏感性,因为这些系统中的每一个都可以托管与转移相关并且可能受到源自任何数量的其它计算机系统的任何数量的冲突处理的影响的数据。因此,本文描述的是用于以维持计算机系统在其相应角色内的完整性的方式来协调所牵涉到的计算机系统的操作以影响旅客转移的实施例。而且,这些实施例中的一个或多个以改进总响应时间并维持系统完整性的方式协调所牵涉的计算机系统。

图1图示了操作环境10,其可以包括预约系统12、库存系统14、售票系统16、离港控制系统(dcs)18和转移系统20中的一个或多个。这些系统中的每一个可以经由网络24(诸如互联网)通信。此外,这些系统中的两个或更多个可以彼此集成。例如,转移系统20可以由库存系统14托管,和/或由操作环境10的一个或多个其它系统托管。

预约系统12可以被配置为处理由一个或多个服务提供者(诸如一个或多个航空公司)提供的旅行产品和服务的搜索和预订请求。例如,预约系统12可以经由计算机设备(诸如台式机、笔记本电脑、移动设备、平板电脑等等)从旅行代理或客户接收针对一个或多个旅行产品的搜索或预订请求。响应于接收到针对一个或多个旅行产品的搜索请求,预约系统12可以查询由库存系统14托管的数据库,以获得与搜索请求的一个或多个搜索标准匹配的可用旅行产品。在从数据库接收到可用旅行产品时或之后,预约系统12可以将一个或多个可用旅行产品发送给发出请求的计算机设备以供审阅。

响应于接收到包括支付信息和对一个或多个旅行产品的选择的预订请求,预约系统12可以至少部分通过生成并存储预约记录来创建针对一个或多个旅行产品的预订。由预约系统12生成并存储的每个预约记录可以包括一个或多个客户和由这一个或多个客户预订的一个或多个旅行产品的标识。在一些实施例中,预约系统12可以与特定航空公司相关联,并且存储在其中的每个预约记录可以是旅客订座记录(pnr),其包括一个或多个旅客的标识和由这一个或多个旅客预订的旅行行程,使得一个或多个旅客和这一个或多个旅客的旅行行程在预约记录内彼此相关联。旅行行程可以包括航空公司的航班和/或航空公司的伙伴航班(即,由和与预约系统12相关联的航空公司具有协议的另一个航空公司运营的航班)中的一个或多个。

在替代实施例中,预约系统12可以是促进从若干不同的服务提供者搜索和预订航班旅行产品和/或非航班旅行产品的全球分销系统(gds),而不管不同的服务提供者是否具有合作协议。在这种情况下,由预约系统12生成并存储的每个预约记录可以是能够包括来自多个服务提供者的航班旅行产品和非航班旅行产品的总旅行记录(ttr)。非航班旅行产品的非限制性示例包括旅馆房间、租赁汽车、事件和吸引人的活动入场(attractionadmissions),以及常常与旅行相关联的任何其它非航班旅行产品。

由预约系统12生成并存储的预约记录还可以包括客户偏好和/或由客户预订的、与预约记录中识别出的旅行产品相关的辅助服务。特别地,每个客户的偏好和预订的辅助服务可以由包含在预约记录中的特殊服务请求(ssr)元素来表示。例如,在包括航班座位的预约记录的情况下,预约记录还可以包括客户的座位偏好和与航班相关的用餐偏好。作为另一个示例,预约记录可以包括客户所请求的特殊住宿的指示(诸如客户需要帮助的指示,或客户将附带婴儿或服务动物的指示)。包括在预约记录中的一些预订的辅助服务可以是客户购买的收费辅助服务。收费辅助服务的非限制性示例包括座位升级、行李处理、用餐请求等等。

库存系统14可以被配置为跟踪由一个或多个服务提供者提供的每个旅行产品和辅助服务的可用性数字(figure)。具体而言,库存系统14可以包括存储由服务提供者为每个旅行产品提供的可预订单元的总数(例如,航空公司为每个定期航班上的每个预订舱位提供的座位的总数)的数据库,以及通过计数为每个所提供的旅行产品预订的单元的数量来跟踪每个所提供的旅行产品的可用性数字的计数器。类似地,库存系统14可以包括存储结合每个所提供的旅行产品而提供的每个辅助服务的可预订单元的总数的数据库,以及通过针对与每个所提供的旅行产品结合提供的每个辅助服务计数已经被购买和/或预订的单元的数量来跟踪与每个所提供的旅行产品结合提供的每个辅助服务的可用性数字的计数器。

因此,响应于接收到来自旅行代理或客户的旅行产品的搜索请求,预约系统12可以向库存系统14查询与该搜索请求的一个或多个搜索标准匹配的可用旅行产品。而且,响应于接收到针对旅行产品的预订请求,预约系统12可以查询库存系统14,以确定该旅行产品是否可用,并且如果可用,那么还在预订完成时通知库存系统14,使得库存系统14可以调节与预订的旅行产品相关联的计数器。以类似的方式,响应于接收到来自旅行代理或客户的、针对与给定航班结合的辅助服务的搜索或预订请求,预约系统12可以查询库存系统14,以确定该辅助服务是否可用,并且如果可用,那么通知库存系统14该辅助服务的购买或预订,使得库存系统14可以调节适当的计数器。

在一些实施例中,由库存系统14跟踪的多个旅行产品可以涉及相同的事件。例如,在航班的情况下,航空公司可以为航班提供多个旅行产品,每个旅行产品与具有不同价格的不同预订舱位(class)相关联。一般而言,由服务提供者提供的与每个旅行产品相关联的可用性和/或价格可以取决于与旅行产品相关联的服务等级(例如,第一种舱位,经济)和/或与旅行产品相关联的收入标准(例如,在计划使用旅行产品之前已经或预期有多少单位的旅行产品被预订,在在计划使用旅行产品之前已经或预期有多少单位的与同一事件相关的其它旅行产品被预订,以及提前多久进行预订)。

售票系统16可以被配置为生成并存储电子票以及与预订的旅行产品和辅助服务相关联的其它电子文档。更特别地,当旅行产品被预订时,预约系统12可以自动通知售票系统16该预订。作为响应,售票系统16可以为包括在预订中的每个客户生成电子票。由售票系统16生成的每张电子票可以包括用于作为同一旅行行程的一部分的一个或多个预订的旅行产品(诸如一个或多个预订的航班段)的一个或多个优惠券。特别地,每张电子票可以包括客户的标识、针对与同一个预订的旅行行程相关的一个或多个预订的旅行产品的一个或多个优惠券,和/或为这一个或多个预订的旅行产品支付的票价和税费。一般而言,电子票可以代表客户对于在其中指示的已预订的旅行产品的付款证明和应享权利。因此,当客户此后继续使用所预订的旅行产品时,电子票可以被参考来作为客户有资格享受该旅行产品的证明。每张电子票还可以包括特定于该电子票的唯一标识符(诸如参考号)。给定电子票的唯一标识符可以存储在为其生成该电子票的预订的预约记录中,使得唯一标识符与预约记录内与电子票相关联的预订的旅行产品相关联。

如前所述,一些辅助服务可以是收费的,并且因此与费用相关联。响应于收费辅助服务被预订以及相关费用被支付,售票系统16可以为所购买的辅助服务生成电子杂费凭证(emd)优惠券。与电子票类似,emd优惠券可以包括客户的指示、所购买的辅助服务和/或为辅助服务支付的税费和票价。像电子票一样,emd优惠券可以提供对于所购买的辅助服务的付款证明和应享权利。在创建与预订的旅行产品相关的emd优惠券时,可以通过售票系统16将emd优惠券与针对预订的旅行产品生成的电子票彼此相关联。更特别地,电子票和emd优惠券中的每一个可以被修改,以包括对另一方(诸如另一方的唯一标识符)的参考。因此,像电子票一样,emd优惠券可以包括特定于其的唯一标识符,该唯一标识符也可以被包括在为与emd优惠券相关联的预订的旅行产品创建的预约记录中和/或可以被包括在与为其生成emd优惠券的服务相关联的预约记录中。

离港控制系统(dcs)18可以被配置为在旅行终端(诸如机场)处代表服务提供者(诸如利用预约系统12和库存系统14的那些服务提供者)执行操作。更特别地,dcs18可以促进在旅行当天向旅客提供旅行产品。由dcs18执行的操作的非限制性示例可以包括办理登机手续和使旅客登机、管理行李信息和打印登机牌。旅行终端处的单个dcs18可以服务于多个服务提供者,以执行每个相应服务提供者的机场运营。但是,旅行终端中用于dcs18的每个接入点(例如,机场中具有到dcs18的连接性的每个计算机终端)可以被配置为一次服务于和/或专用于一个航空公司。例如,机场中的一组计算机终端可以被配置为服务于和/或专用于航空公司a,并且机场中的另一组计算机终端可以被配置为服务于和/或专用于航空公司b。

当针对给定航班打开“操作窗口”时,dcs18可以开始执行针对给定航班的机场运营,这可以是在航班计划离港之前的一天或多天(例如,3天)。在这个时候,dcs18可以打开航班进行dcs操作,诸如通过为航班创建记录,以及从预约系统12接收航班的旅客名单(pnl)。pnl可以包括来自包括给定航班的预约记录的信息。可以包括在pnl中的信息的非限制性示例包括针对在该航班上预订的每个旅客的标识数据(例如,姓名、年龄、国籍、国家、出生地、出生日期和性别)、每个旅客的全部旅行行程、由每个旅客选择的偏好、由每个旅客预订的辅助服务以及与每个旅客相对于该航班的电子票和emd优惠券相关联的唯一标识符。在打开航班之后,对于pnl中的每个旅客,dcs18可以存储旅客的数据,诸如在与航班相关联和/或特定于旅客的dcs记录中,该记录包括pnl中所包括的旅客信息。以这种方式,对于在包括一个或多个打开的航班的旅行行程上预订的旅客,dcs18可以为每个旅客存储与旅客的旅行行程相关的旅客数据。特别地,对于每个旅客,dcs18可以将旅客数据存储在一个或多个dcs记录中,一个或多个dcs记录中的每一个都与为该旅客预订的旅行行程中的一个打开的航班相关联。在dcs18中打开的每个航班可以与一个或多个dcs记录相关联,每个dcs记录包括在航班上预订的一个或多个旅客的旅客数据。

在航班的操作窗口内,和/或在航班的计划离港时间之前的设定时间段内(诸如在24小时之前),dcs18可以使旅客能够办理航班的登机手续(也就是“接受”)。当旅客被接受到航班上时,dcs18可以修改旅客对于该航班的dcs记录,以指示旅客已办理登机手续的状态,这可以被认为是dcs记录中用于旅客的旅客数据的一部分。这种修改可以将旅客的电子票和/或emd优惠券相对于航班锁定,由此防止它们被改变和/或与替代旅行产品而不是该航班结合使用。dcs18还可以修改旅客对于该航班的dcs记录,以包括旅客对于该航班的附加旅客数据(诸如接受时间、旅客的指定座位和/或监管数据(例如,与政府强加的检查相关的数据))。另外,在此期间,旅客可以选择检查(check)他或她的行李,在这种情况下,dcs18可以为旅客生成电子行李信息。电子行李信息可以包括行李行程、与行李物理相关联的唯一标识符(诸如经由放在行李上的标签),以及行李收费豁免(如果适用的话)。然后,dcs18可以将旅客的行李信息插入旅客对于该航班的dcs记录中,作为存储在其中的旅客的旅客数据的一部分。

dcs18可以托管各种类型的航班(即,为其执行机场运营)。例如,dcs18可以托管内部航班,或者换句话说,由操作环境10的预约系统12和库存系统14管理的那些航班。dcs18还可以托管地面处理航班。地面处理航班是由操作环境10外部的预约和库存系统管理但委托给dcs18在特定机场运营的航班。例如,利用操作环境10外部的预约和库存系统的航空公司通常也可以利用与dcs18不同的另一个dcs用于其机场运营。但是,在航空公司有航班的一些机场,这另一个dcs可能不可用。因此,如果dcs18在这些机场之一处可用,那么航空公司可以将针对那个机场的运营委托给dcs18。不由dcs18托管的其它航班在本文中可以被称为“外部航班”。

一般而言,当旅客经由dcs18办理给定航班的登机手续时,dcs18还可以办理该旅客的旅客行程中其它打开的航班的登机手续。特别地,dcs18可以利用旅客的旅行行程,该旅行行程可以被包括在与该旅客针对给定航班的dcs记录中或与其相关联,以办理旅客到旅行行程的一个或多个打开航班的登机手续。在一些情况下,旅客的旅行行程可以包括经由多个航空公司预订的航班和/或在dcs18外部的航班。当给旅客办理登机手续时,可以代表特定航空公司操作的dcs18也可以使旅客办理与其它航空公司相关联的航班和/或在dcs18外部的航班的登机手续,假设航班同样打开以便办理登机手续和/或适当的安排已就位(properarrangementsareinplace)。在外部航班包括在旅客旅行行程中的情况下,例如,dcs18可以被配置为向与该外部航班相关联的航空公司发消息,然后该航空公司可以利用其dcs使旅客办理该外部航班的登机手续。使旅客办理与经由dcs18触发办理登机手续的航空公司不同的航空公司相关联的航班的登机手续的处理在本文中可以被称为“通程登机(throughcheck-in)”。

有时候,在旅客办理航班的登机手续之前或者之后,旅客的旅行行程可能会中断。例如,由于不可预见的情形(诸如机械问题或恶劣天气),旅客旅行行程中的一个航班可能会被取消或不可接受地延迟(例如,延迟将使旅客错过转机航班或在可接受的时间范围之外到达旅客的最后目的地)。当旅客的旅行行程中的一个航班被取消或者不可接受地延迟时,旅客常常需要被转移到另一个旅行行程,以使旅客能够在他或她期望的时间范围内或者尽可能接近期望的时间范围到达他或她的预期目的地。

将旅客从中断的旅行行程转移到新的旅行行程会牵涉到一定的技术挑战。例如,这个处理中所涉及的系统应当能够快速执行这种转移。具体而言,定期航班的中断常常直到航班的计划离港日期才会发生,并且中断后经过的时间越长,旅客能够在期望的时间范围内到达他或她的预期目的地的可能性越小(例如,替代航班上的座位可能被预订,替代航班可能离港)。因此,所涉及的系统为新的旅行行程提供许多替代航班(包括那些尚未在dcs18上打开的航班)也是期望的。而且,在旅客从中断的旅行行程转移到新的旅行行程之后,期望操作环境10的所有系统处于同步状态,使得每个系统准确地反映每个航班的当前预订和可用库存。

用于将旅客从中断的旅行行程转移到新的旅行行程的常规系统和方法几乎不能解决这些挑战,因此不是令人满意的。例如,当旅行行程在其操作窗口内被中断时,受中断影响的旅客可能已经出现在机场并且办理了一个或多个航班的登机手续。因此,将旅客转移到新的旅行行程可以由与dcs交互的dcs代理处理。但是,在常规环境中,dcs相对于它们相对于旅客转移支持的预约系统和库存系统而言独立地操作。更特别地,当常规dcs执行牵涉给定航班的转移操作时,管理航班的预约系统和库存系统直到航班离港之后的某个时间(诸如在稍后的会计对账(accountingreconciliation)期间)才意识到该操作。因此,当旅客通过常规dcs从一个航班转移到另一个航班时,所牵涉的预约系统和库存系统并不实时地知道该转移,并且通常这些系统直到航班已经离港之后才知晓该转移。因此,在航班出发之前,所牵涉的预约系统和库存系统可能无法准确反映每个航班的预订和可用性。这种不准确性会导致航班意外售出过多或售出过低,并且可能为航空公司以后的会计对账带来附加的工作量。

作为相关的挫折,常规dcs一般使dcs代理能够将旅客转移到已经在dcs上打开的航班,但不能转移到其它航班(诸如尚未打开的航班或不由特定dcs托管的外部航班)。因此,减少了被转移的旅客的替代选项的数量,由此减小了旅客能够在期望的时间范围内到达他或她的预期目的地的机会。

而且,经由常规dcs转移旅客可能是一个容易出错的复杂过程,尤其是在旅客已经办理了该旅客正从其被转移的航班的登机手续之后。如上所述,当旅客办理航班的登机手续时,诸如监管和行李信息之类的某些信息可以被添加到旅客对于该航班的dcs记录中,作为为该旅客存储的针对该航班的旅客数据的一部分。因而,当经由常规dcs将旅客从已办理登机手续的航班转移到新航班时,dcs代理通常需要手动地将旅客重新接受到新航班,这至少部分通过手动地将旅客先前的办理登机手续信息重新输入到dcs。这种手动重新接受过程延迟了执行转移所花的时间,并且,如果重新输入了错误的数据,那么会导致回溯(从而导致进一步的延迟)。而且,dcs代理通常必须为每个被转移的旅客执行这种手动办理登机手续。因此,如果整架飞机的旅客都被中断并且每个旅客都需要被转移(诸如当航班被取消时),那么用于将所有被中断的旅客转移到新的旅行行程的处理时间会是负担显著的。

在一些情况下,由于航空公司经由库存系统执行的日程表改变(例如,取消或时间改变),一个或多个旅客的旅行行程可能中断。但是,由于旅客转移所牵涉的常规系统的配置,航空公司通常不能在航班的操作窗口内和/或在一个或多个旅客已办理航班的登机手续之后执行航班的日程表改变。具体而言,响应于航空公司实现对航班的日程表改变(诸如在常规的库存系统中),对应的常规预约系统被配置为取消旅客在已改变的航班上的预订,这进而触发预约系统通知常规dcs关于取消预订,诸如经由用航班的新旅客添加或航班的先前旅客的删除来补充为航班接收到的pnl的经调节的名单(adl)。一旦接收到这种通知,dcs通常就被配置为自己清理针对该航班的、与取消预订的旅客相关联的旅客数据和/或dcs记录,这导致丢失包括在这些记录中的信息。因此,如果旅客已经办理了改变的航班的登机手续,那么在办理登机手续时添加到旅客的dcs记录中的信息(诸如行李信息和监管信息)丢失。因为出于业务和监管这两个原因,这种信息一般需要被维护,所以,当在常规旅行环境中操作时,航空公司无法在航班的操作窗口内和/或在一个或多个旅客已办理航班的登机手续之后经由常规库存系统实现日程表改变。

转移系统20减轻了这些和其它问题。具体而言,转移系统20可以经由预约系统12、库存系统14或dcs18接收旅客转移请求。例如,dcs代理可以经由dcs18的计算机终端访问转移系统20,经由转移系统20生成的图形用户界面(gui)为新的旅行行程选择一个或多个取代航班,然后向转移系统20提交包括新旅行行程的至少一部分(诸如至少取代航班)的转移请求。可替代地,当在航班的操作窗口内或之前,航空公司库存代理经由库存系统14执行航班的日程表改变时,库存系统14可以显示转移系统20的gui。利用gui,航空公司代理可以为新的旅行行程选择一个或多个取代航班,并且此后向转移系统20提交包括新旅行行程的至少一部分(诸如至少取代航班)的转移请求。作为进一步的示例,在库存系统14中执行日程表改变之后,转移系统20可以自动地为受影响的旅客生成一个或多个转移请求,其中每个转移请求包括由转移系统20自动选择的新行程的至少一部分。换句话说,转移系统20可以通过响应于调度改变在库存系统14中被执行而自动生成转移请求,来经由库存系统14“接收”转移请求。

在任何情况下,响应于接收到转移请求,转移系统20都可以被配置为使操作环境10的系统之间的一个特定系列的复杂交互自动操作,其以很少或没有代理交互将一个或多个旅客从中断的旅行行程完全转移到另一个旅行行程。换句话说,在转移系统20完成处理转移请求之后,被转移的旅客可以能够继续他们的新行程,而不需要代理的任何进一步动作。例如,假设没有错误发生,代理可能不必手动重新将每个被转移的旅客接受到新的旅行行程,或手动复制来自旅客先前的dcs记录的办理登机手续信息。而且,在转移系统20完成处理转移请求之后,操作环境10的其它系统可以处于同步状态,以便确保系统准确地反映受转移影响的每个航班的预订和可用性。

此外,因为快速响应时间是期望的并且有时候在将旅客从中断的旅行行程转移到新的旅行行程时是必要的,所以转移系统20可以被配置为以减少或最小化完成接收到的转移请求的处理的时间的方式促进该一系列的交互。特别地,转移系统20可以被配置为尽管发生了某些错误但仍继续处理转移请求。此后,如果在处理期间发生错误,那么可以向代理显示所有错误的单个综合报告,然后代理可以采取补救动作。而且,对于涉及需要转移的多个旅客的情况,诸如由于在库存系统14中执行的影响整个航班的日程表改变,转移系统20可以被配置为对于转移处理的一个或多个部分促进每个旅客的并行处理,这进一步缩短了系统响应时间。下面更详细地描述转移系统20的这些和其它特征。

现在参考图2,操作环境10的系统可以在一个或多个计算机设备(诸如示例性计算机设备26)上实现。计算机系统26可以包括处理器28、存储器30、大容量存储存储器设备32、输入/输出(i/o)接口34和人机接口(hmi)36。计算机系统26还可以经由网络24或i/o接口34可操作地耦合到一个或多个外部资源38。外部资源可以包括但不限于不限于服务器,数据库,大容量存储设备、外围设备、基于云的网络服务或者任何其它可以被计算机系统26使用的合适的计算机资源。

处理器28可以包括从微处理器、微控制器、数字信号处理器、微型计算机、中央处理单元、现场可编程门阵列、可编程逻辑设备、状态机、逻辑电路、模拟电路、数字电路或者基于存储在存储器30中的操作指令操纵(模拟或数字)信号的任何其它设备中选择的一个或多个设备。存储器30可以包括单个存储器设备或多个存储器设备,包括但不限于只读存储器(rom)、随机存取存储器(ram)、易失性存储器、非易失性存储器、静态随机存取存储器(sram)、动态随机存取存储器(dram)、闪存、高速缓冲存储器或者任何其它能够存储信息的设备。大容量存储存储器设备32可以包括诸如硬盘驱动器、光盘驱动器、带驱动器、非易失性固态设备或者能够存储信息的任何其它设备之类的数据存储设备。

处理器28可以在驻留在存储器30中的操作系统40的控制下操作。操作系统40可以管理计算机资源,使得体现为一个或多个计算机软件应用(诸如驻留在存储器30中的应用42)的计算机程序代码可以具有由处理器28执行的指令。在替代实施例中,处理器28可以直接执行应用42,在这种情况下可以省略操作系统40。一个或多个数据结构44也可以驻留在存储器30中,并且可以被处理器28、操作系统40或应用42用来存储或操纵数据。

i/o接口34可以提供将处理器28可操作地耦合到其它设备和系统(诸如网络24或一个或多个外部资源38)的机器接口。由此,应用42可以通过经由i/o接口34通信来与网络24或外部资源38协同工作,以提供构成本发明的实施例的各种特征、功能、应用、过程或模块。应用42还可以具有由一个或多个外部资源38执行的程序代码,或者以其它方式依赖于由计算机系统26外部的其它系统或网络组件提供的功能或信号。实际上,给定几乎无尽的硬件和软件配置可能,本领域普通技术人员将理解的是,本发明的实施例可以包括位于计算机系统26的外部的应用、分布在多个计算机或其它外部资源38之间的应用,或者由经网络24作为服务(诸如云计算服务)提供的计算资源(硬件和软件)提供的应用。

hmi36可以以已知的方式可操作地耦合到计算机系统26的处理器28,以允许用户直接与计算机系统26进行交互。hmi36可以包括视频或字母数字显示器、触摸屏、扬声器以及能够向用户提供数据的任何其它合适的音频和视频指示器。hmi36还可以包括能够从用户接受命令或输入并将录入的输入发送到处理器28的输入设备和控件(诸如字母数字键盘、指示设备、小键盘、按钮、控制钮、麦克风等)。

数据库46可以驻留在大容量存储存储器设备32上,并且可以被用来收集和组织由本文描述的各种系统和模块使用的数据。数据库46可以包括数据以及存储和组织数据的支持数据结构。特别地,数据库46可以以任何数据库组织或结构来布置,包括但不限于关系数据库、分层数据库、网络数据库或其组合。可以使用在处理器28上作为指令执行的计算机软件应用形式的数据库管理系统来响应于查询而访问存储在数据库46的记录中的信息或数据,其中查询可以由操作系统40、其它应用42或一个或多个模块动态地确定和执行。

图3图示了可以包括转移模块52和多个数据库的处理体系架构50。转移模块52可以由操作环境10的一个或多个系统(诸如库存系统14和/或转移系统20)托管。换句话说,转移模块52可以经由存储在操作环境10的一个或多个系统上的可执行计算机指令执行,使得一个或多个系统中的每一个都包括转移模块52的一部分。

响应于接收到转移请求54,转移模块52可以被配置为自动促进与数据库的一序列交互,以将一个或多个旅客从中断的旅行行程完全转移到新的旅行行程。更特别地,转移模块52可以使可以包括在操作环境10的一个或多个系统中的一个或多个处理器与处理体系架构50的数据库交互,并且执行用于以全面集成和自动化的方式将旅客从中断的旅行行程转移到新的旅行行程的各种操作。在这个处理期间,转移模块52可以监视旅客转移处理的状态并且基于此持续更新所显示的转移报告56。在由传输模块52促进的转移处理完成之后,转移模块52可以将转移报告56的最终版本存储在诸如转移报告数据库70中。由转移模块52促进的转移处理的这些和其它细节参考图4-6更详细地描述。

处理体系架构50的数据库可以包括预约记录数据库58、库存数据库60、电子票数据库62、emd优惠券数据库64、dcs数据库66、转移请求数据库68以及转移报告数据库70。上面提到的数据库中的每一个可以由操作环境10的一个或多个系统托管。这些数据库中的每一个可以包括多个数据库,并且可以是包括一个或多个其它数据库的更大数据库的一部分。

预约记录数据库58可以由操作环境10的预约系统12托管。预约记录数据库58可以为通过预约系统12进行的每个预订存储预约记录(诸如pnr)。更特别地,预约记录数据库58可以存储由预约系统12生成的预约记录,如上面结合图1所描述的。

库存数据库60可以由操作环境10的库存系统14托管。库存数据库60可以跟踪由一个或多个服务提供者提供的每个旅行产品和/或辅助服务的可用性数字。更特别地,库存数据库60可以存储由服务提供者为每个旅行产品和辅助服务提供的可预订单元的总数,以及跟踪已经被预订的每个旅行产品和辅助服务的单元的数量的、用于每个旅行产品和辅助服务的计数器,如上面结合图1所描述的。

电子票数据库62和emd优惠券数据库64可以由操作环境10的售票系统16托管。电子票数据库62可以存储由售票系统16生成的每张电子票,并且emd优惠券数据库64可以存储由售票系统16生成的每个emd优惠券。如前所述,在一些实施例中,电子票数据库62和emd优惠券数据库64可以被包括在单个售票数据库中。以这种方式,存储在售票数据库中的每个emd优惠券可以在售票数据库内关联或链接到与emd优惠券相关的电子票。

dcs数据库66可以由操作环境10的dcs18托管。dcs数据库66可以在dcs18中存储针对每个打开的航班的航班记录。此外,dcs数据库66可以存储由dcs生成的dcs记录18,该记录包括已打开的航班的旅客的旅客数据。存储在dcs数据库66中的用于给定旅客的每个dcs记录可以在dcs数据库66内关联或链接到旅客的旅行行程中的一个打开的航班,诸如经由与包括在dcs数据库66中的打开航班记录的关联。例如,如果旅客的旅行行程包括航班a和航班b,那么旅客的一个dcs记录可以在dcs数据库66内关联或链接到航班a,并且旅客的另一个dcs记录可以在dcs数据库66中关联或链接到航班b。而且,这些dcs记录中的每一个可以在dcs数据库66内彼此关联或链接,和/或关联或链接到旅客的全部旅行行程。

转移请求数据库68和转移报告数据库70可以由转移系统20托管。转移请求数据库68可以存储在转移模块52处接收的每个转移请求54,并且转移报告数据库70可以存储由转移模块52生成的每个最终转移报告。存储在转移报告数据库70中的每个转移报告56可以包括转移请求54的处理的综合概要,包括转移请求54的每个旅客是否被成功转移以及,需要由代理完成或发起什么动作,如果有的话,以完成转移请求54。如前面所提到的,转移请求数据库68和转移报告数据库70可以是单个转移数据库的一部分,并且包括在转移数据库中的每个转移请求54可以在转移数据库中关联或链接到对应的转移报告56。

图4图示了用于将旅客从中断的旅行行程转移到新的旅行行程的处理100。处理100可以由处理体系架构50的转移模块52来实现或促进。一般而言,处理100可以如下进行。授权代理可以访问gui(诸如由转移模块52生成的gui)、选择受中断影响的旅客、并查看与所选旅客的被中断旅行行程最佳匹配的替代旅行产品。然后代理可以使用gui选择替代旅行产品中的一个或多个,以包括在旅客的新旅行行程中,并且此后触发完全集成和自动化的旅客转移处理100。响应于转移处理100被触发,基于代理的选择的转移请求54可以由转移模块52生成和/或在转移模块52处被接收。响应于转移请求54被产生和/或接收,转移模块52可以被配置为调用和/或使各种系统(诸如操作环境10的一个或多个系统)执行一系列子处理。这些子处理被执行的次序可以是特殊的,因为不按次序执行子处理会导致不必要的回溯,这将降低所涉及的系统能够完成转移的速度和效率。

一系列子处理依次可以包括验证处理、库存更新处理、重新预订处理、卸载处理、售票处理、dcs更新处理以及报告处理。验证处理可以包括对转移请求54执行检查,以确保转移请求54是合法且正确的。库存更新处理可以包括基于未包括在新的旅行行程中的被中断旅行行程的未出发航班(即,被取代的航班)以及未包括在被中断旅行行程中的新旅行行程的航班(即,新的航班)来更新存储在库存数据库60中的计数器。重新预订处理可以包括重新预订所选择的旅客,并将其偏好和辅助服务转移到预约记录数据库58中的新旅行行程的新航班上。卸载处理可以包括取消接受在转移请求54中识别出的已经在被中断的旅行行程的被取代的航班上办理了登机手续的旅客,这解除了旅客电子票关于包含在其中的用于被取代的航班的优惠券和与被取代的航班相关联的emd优惠券的控制,由此允许售票处理成功。售票处理可以包括为每个旅客在电子票数据库62中生成新的旅行行程的有效电子票,以及处理用于新的旅行行程的emd优惠券数据库64中与被取代的航班相关联的每个旅客的emd优惠券。dcs更新处理可以包括在dcs数据库66内转移信息(诸如办理登机手续细节),使得与被取代的航班结合存储的每个旅客的信息被沿用到与新航班结合存储的旅客信息。此外,dcs更新处理可以包括将每个旅客接受到在dcs18中打开和/或经由通程登机可用的新航班。在整个上面提到的子处理中,报告处理可以生成并向代理提供完整且详尽的报告。完整且详尽的报告可以提供关于转移处理100的状态的可视和最新数据,诸如处理100的整体状态和/或处理100的哪些部分对于每个旅客成功或失败。

在针对所选择的旅客执行了这些处理中的每一个处理之后,旅客转移中所涉及的各种系统和/或数据库可以处于同步状态。具体而言,存储在预约记录数据库58中的、用于每个所选择的旅客的预约记录可以包括新的旅行行程的细节,包括与其相关的预订的辅助服务,库存数据库60中的计数器可以准确地反映在被中断的旅行行程和新的旅行行程中都牵涉到的旅行产品和辅助服务的可用性(例如,用于被取代的旅行产品的计数器可以减小,而用于新的旅行产品的计数器可以增加,等等),并且dcs18可以包括一个或多个用于新航班的dcs记录,该记录包括被转移的旅客、新的旅行行程和/或先前为旅客存储的、与被中断的旅行行程相关的任何相关信息(例如,行李信息)。以这种方式,在转移处理100完成之后,并且以很少或没有代理交互的方式,dcs18可以能够为被转移的旅客执行其常规操作,就好像旅客最初预订了新旅行行程的航班和/或办理了该航班的登机手续一样。此外,旅客可以继续在被取代的航班(如果不取消的话)和新航班上都预订,这减少了由于不知道经由dcs转移的旅客而过多售出或过少售出这些旅行产品的风险。

现在将更详细地描述处理100。在方框102中,可以诸如在转移模块52处接收转移请求54。更特别地,转移请求54可以在转移模块52处经由预约系统12、库存系统14或dcs18被接收。例如,从与dcs18连接的计算机终端,dcs代理可以访问客户记录屏幕或客户列表屏幕,这些屏幕可以作为呈现给代理并且由gui转移模块52和/或dcs18生成的gui的一部分被显示。从客户记录屏幕或客户列表屏幕,dcs代理然后可以选择一个或多个被中断的旅客进行转移。

一般而言,dcs18和/或转移模块52可以使dcs代理能够将旅客转移到任何类型的托管航班,包括由操作环境10的预约系统12和库存系统14管理的航班以及由操作环境10外部的预约系统和库存系统管理的地面处理航班。处理100中所包括的某些子处理(诸如上述重新预订处理)可以受旅客是从地面处理航班转移还是从其它托管航班转移的影响。下面更详细地描述这种变化。

响应于接收到代理对要转移的一个或多个旅客的选择,gui可以显示包括用于所选择的旅客的替代航班列表的航班选择屏幕。替代航班的列表可以包括由dcs18托管的航班(无论在dcs18上已打开还是尚未打开),和/或在dcs18外部的航班(例如,在其它dcs上托管的航班)。后一类航班可以会被明确识别为外部航班。以这种方式,与常规系统不同,dcs18和/或转移模块52可以使dcs代理能够将旅客从被中断的旅行行程转移到新的旅行行程,该新的旅行行程包括由dcs18托管的航班、在dcs18外部的航班,或其组合。换句话说,dcs18提供比常规系统所提供的选项更多的转移选项。对于由dcs18托管的替代航班,航班选择显示屏幕可以显示每个替代航班的总可用性,其中一些可以基于运营一些替代航班的航空公司与连接到dcs18的计算机终端正在为其执行操作的航空公司之间的合作协议。

对于dcs18外部的替代航班,航班选择屏幕可以显示每个航班的总预约可用性。如果dcs代理确实为新的旅行行程选择了一个或多个外部航班,那么,响应于代理的选择,gui可以显示舱位选择屏幕。舱位选择屏幕可以使dcs代理能够基于可用性来选择旅客在所选择的外部航班应当重新预订的舱位。

在dcs代理已经选择要转移的旅客以及用于新旅行行程的新航班之后,dcs代理可以利用gui向转移模块52提交转移请求54。转移请求54可以包括请求要的转移的每个被中断的旅客的标识、每个旅客被中断的旅行行程的至少一部分(例如,至少被取代的航班)的细节,和/或要取代每个旅客被中断的旅行行程的新旅行行程的至少一部分的细节(例如,至少新的航班)。响应于向转移模块52提交转移请求54,gui可以显示基于转移处理100的当前状态被周期性刷新的转移报告56。特别地,转移报告56可以包括处理100的整体状态,以及处理100针对转移中所请求的每个旅客的状态。

如前面所提到的,转移请求54还可以经由库存系统14在转移模块52处被接收。特别地,类似于上述dcs18的情况,库存代理可以访问由库存系统14和/或转移模块52生成的gui,诸如经由与库存系统14连接的计算机终端。利用gui,库存代理可以选择一个或多个要转移的旅客,为旅客的新旅行行程选择一个或多个替代航班选项,并且此后向转移模块52提交包括上面讨论的一个或多个项的转移请求54。

与常规系统不同(常规系统一般将库存系统14中对于给定航班的日常表改变的执行限制到航班的操作窗口之前),预约系统12、库存系统14、dcs18和转移模块52可以使航空公司能够在航班操作窗口内的某个时间执行库存系统14中对航班的日程表改变。特别地,dcs18和/或转移模块52可以被配置为维护一个或多个备份记录,诸如在dcs数据库66中,该备份记录包括来自存储在dcs数据库66中的dcs记录的旅客数据,诸如旅客信息、办理登机手续细节、行李信息、监管信息以及旅行行程信息。dcs18和/或转移模块52还可以被配置为使得这些备份记录不响应于日常表改变而被删除。存储在备份记录中的数据在本文中可以被称为“非操作数据”。

因此,尽管在航班的操作窗口内在库存系统14中执行的给定航班的日程表改变可以触发删除与预订该航班的旅客相关存储的重要信息(诸如存储在预约记录数据库58和dcs数据库66中的信息),但是旅客仍然可以经由处理100被自动转移。特别地,通过利用由dcs18和/或转移模块52维护的非操作数据,尽管由于日程表改变而造成数据的清理,处理100仍然可以有效地转移受影响的旅客。

在一些实施例中,dcs18和/或转移模块52可以被配置为响应于接收到影响一个或多个旅客的旅行行程的航班改变已经在库存系统14中执行的通知(诸如经由adl)而生成并存储备份记录。以这种方式,由dcs18和/或转移模块52生成的备份记录可以仅与受该改变影响的那些航班和/或旅客相关,这使得dcs18和/或转移模块52能够通过不是针对由dcs18处理的每个航班和/或旅客来存储备份记录,来实现资源节约。换句话说,响应于在库存系统14中执行的影响一个或多个旅客的旅行行程的日程表改变,dcs18可以为每个旅客生成备份记录,该备份记录包括与旅客的旅行行程相关联地或者更特别地与旅行行程的受影响的航班相关联地存储的旅客的旅客数据。之后,当针对这些旅客发起到新旅行行程的转移时,对于每个旅客,被转移到用于取代受影响的航班的一个或多个新航班的一个或多个dcs记录的旅客数据可以来自旅客的备份记录。

预约系统12和/或转移模块52还可以存储诸如由于日程表改变而经历改变的、存储在预约记录数据库58中的每个预约记录的历史。这个历史在本文中可以被称为“pnr历史”,并且可以被包括在对应的预约记录中。具体而言,pnr历史可以包括先前旅客预订的旅行行程的细节。与备份记录一起,处理100还可以在必要时利用pnr历史来诸如确定旅客被中断的旅行行程,以便将新航班与被取代航班匹配,这将在下面进一步详细描述。

在一些实施例中,响应于日程表改变在库存系统14中执行,库存系统14和/或转移模块52可以被配置为自动地触发转移处理100。特别地,库存系统14和/或转移模块52可以被配置为为受到日程表改变不利影响的旅客自动选择用于新旅行行程的一个或多个替代旅行产品。例如,若干旅客的旅行行程可以包括共同航段,日程表改变可以与该共同航段相关,并且可以在该共同航段的操作窗口内。因而,这几个旅客中的每一个都会受到日程表改变的不利影响。在任何情况下,库存系统14和/或转运模块52都可以基于与日程表改变相关联的、由航空公司定义的规则和/或参数和/或基于哪些可用的替代旅行产品与受日程表改变影响的一个或多个航班最接近匹配来为新的旅行行程选择替代旅行产品。

结合旅行处理100响应于日程表改变而被自动触发,库存系统14和/或转移模块52可以被配置为以自动模式或导向模式进行操作。当以自动模式运行时,一旦已经选择了一个或多个替代旅行产品,库存系统14和/或转移模块52就可以被配置为自动继续转移处理100的其余部分。但是,当以导向模式运行时,库存系统14和/或转移模块52可以在继续处理之前首先诸如经由由库存系统14和/或转移模块52生成的gui向库存代理给出接受或改变所选择的替代旅行产品的机会。

在其它实施例中,响应于日程表改变,库存系统14和/或转移模块52可以被配置为诸如经由由库存系统14和/或转移模块52生成的gui来自动提示库存代理,以手动选择一个或多个替代旅行产品以包括在受日程表改变不利影响的旅客的新旅行行程中,诸如使用上面结合dcs18描述的gui的屏幕。可替代地,转移模块52和/或库存系统14可以不被配置为响应于日程表改变在库存系统14中执行而关于转移旅客采取任何动作。在这种情况下,库存代理可以手动访问由库存系统14和/或转移模块52生成的gui以进行选择并触发上面结合dcs18描述的转移处理100,或者什么也不做并且将其留给dcs代理以经由dcs18将任何被中断的旅客辨别出来。

如图4中所示,在接收到转移请求54之后,可以确定转移请求54是否有效(方框104)。特别地,转移模块52可以被配置为检查提交代理是否具有触发转移的许可,诸如通过检索与代理的登录信息相关联存储的许可数据。可替代地,可以假设代理的触发许可基于代理能够登录并访问转移模块52,诸如经由连接到dcs18或库存系统14的计算机终端。换句话说,只有某些用户登录可以接收使代理能够触发转移请求的gui的访问。

方框104还可以包括确定包括在转移请求54中的数据是否满足多个检查。例如,转移模块52可以执行路线检查、航班订单检查、反连接(negativeconnection)检查、航班状态检查、跨承运人转移检查、转移状态检查、旅客类型和预订状态检查,和/或日程表检查。以下段落将更详细地描述这些检查中的每一个。

路线检查可以包括检查转移请求54中的新旅行行程和被中断的旅行行程具有相同的路线。具体而言,转移模块52可以确保新的旅行行程包括与被中断的旅行行程相同的起点、连接点和目的地(例如,相同的机场、相同的城市)。如果不是,那么转移模块52可以确定转移请求54是无效的。路线检查可以包括使违反上述测试的转移请求54能够通过或绕过这个检查的一个或多个例外。例如,如果转移请求54由具有监督者级许可的代理提交,那么转移请求54可以自动地或响应于代理的明确指示而绕过路线检查。

航班订单检查可以包括检查新旅行行程中的航班顺序是否合理。特别地,转移模块52可以核实新旅行行程中的航班顺序是正确的。例如,如果新的旅行行程包括从a到b的航班和从b到c的航班,并且从a到b的航班在从b到c的航班之后出发,那么转移模块52可以确定转移请求54是无效的。

反连接检查可以包括检查新旅行行程中的航班顺序不构成反连接。特别地,对于新旅行行程中的每个航班,转移模块52可以核实该航班到达旅客的最终目的地或者到达后续航班在该地点出发的目的地。因此,即使新的旅行行程保留了来自被中断的旅行行程的航班,新旅行行程中所包括的新航班也可能需要连接到保留的航班,以便新的旅行行程满足此项检查。就像路线检查一样,反连接检查可以包括使违反上述测试的转移请求54通过或绕过反连接检查的一个或多个例外。例如,如果转移请求54由具有监督者级许可的代理提交,那么转移请求54可以自动地或响应于代理的明确指示而绕过反连接检查。

航班状态检查可以包括检查旅客是否可以从被中断的旅行行程中的一个或多个航班(诸如转移请求54中的至少一个旅客已经办理登机手续的被取代航班)卸载。此外,航班状态检查可以包括检查旅客可以或者将能够被接受并登上新旅行行程的一个或多个航班(诸如旅客尚未办理登机手续的新旅行行程的打开的航班和/或新航班)。特别地,转移模块52可以查询dcs18和/或使dcs18核实在被中断的旅行行程中的一个或多个航班中的每一个的状态将允许任何已办理登机手续的旅客卸载。例如,如果转移请求54的一个或多个旅客已经办理了被中断的旅行行程的其中一个被取代的航班的登机手续,那么转移模块52和/或dcs18可以核实那个航班的状态不指示用于那个航班的登机手续已完成。类似地,转移模块52可以查询dcs18和/或使dcs18核实新旅行行程中的一个或多个航班中的每一个航班的状态指示该航班对于办理登机手续是打开的和/或尚未离港。如果转移模块52和/或dcs18不能进行这些核实,那么转移模块52可以确定转移请求54是无效的。

跨承运人转移检查可以包括根据承运人之间的合作协议和/或定义的业务规则来检查由于新的旅行行程而产生的在承运人之间的任何转移。特别地,转移模块52可以查询存储合作协议和/或业务规则的细节的数据库,以核实跨承运人转移被允许。如果不是,那么转移模块52可以确定转移请求54是无效的。

转移状态检查可以包括检查对于任何所选择的旅客没有正在进行的其它转移。如果转移模块52确定对于一个或多个所选择的旅客正在进行另一个转移,那么整个转移请求54可以被确定为无效。可替代地,转移模块52可以确定转移请求54相对于已经在进行转移的旅客是无效的,但对于其他所选择的旅客不是。

旅客类型和预订状态检查可以包括基于旅客的类型和预订状态来检查每个旅客有资格进行转移。例如,业务规则和条例(regulations)可以阻止婴儿自己进行转移。因此,如果转移请求54牵涉到婴儿自己的转移,那么转移模块52可以确定转移请求54是无效的。作为另一个示例,业务规则和条例可以指出,当旅客的预订被旅行代理取消时,旅客不能由dcs代理经由dcs18转移到新的旅行行程。因此,如果转移请求54牵涉到这种情况,那么转移模块52可以确定转移请求54是无效的。

日程表检查可以包括检查在转移请求54中指示的一个或多个航班(诸如新的旅行行程中的新航班)的有效性。特别地,转移模块52和/或库存系统14可以被配置为对照库存数据库60中的日程表数据来检查在转移请求54中识别出的一个或多个航班。如果存在差异,那么转移模块52和/或库存系统14可以确定转移请求54是无效的。

响应于转移请求54的全部或部分被确定为无效(方框104的“否”分支)(诸如由于未能满足上述检查之一),在方框106中,可以生成错误通知并在转移报告56中呈现给发出请求的代理。错误通知可以包括无效的原因(诸如转移请求54或转移请求54的旅客未能满足的检查的指示)。在一些实施例中,如果转移请求54相对于任何一位旅客被确定为无效,那么整个处理100可以被中止。在替代实施例中,处理100可以仅代表转移请求54对其有效的那些旅客继续进行,由此使得尽管出现了无效错误但是处理100仍然能够继续。

响应于转移请求54的全部或部分被确定为有效(方框104的“是”分支),在方框108中,由转移请求54牵涉的航班中的一个或多个(诸如被取代的航班和/或新的航班)可以被锁定在其它处理之外。特别地,转移模块52可以调用和/或使库存系统14和/或操作环境10的一个或多个其它系统防止牵涉的航班中的一个或多个受到处理100外部的冲突处理的影响。以这种方式,可以避免处理100与其它处理(诸如日程表改变或者涉及所指示的航班中的一个或多个的自动等待列表触发)之间的冲突。这些锁可以在处理100完成之后或者在处理100的后续子处理中的至少一些完成之后(例如,在预约和库存数据库完成更新之后)被移除。

更特别地,由于操作环境10的系统的集成性质和不同角色,能够通过操作环境10的系统中的不同系统被发起的若干不同处理可以影响由转移请求54牵涉的航班中的一个或多个。因此,与处理100并行地运行这种处理会不利地影响存储在操作环境10的系统中的一个或多个中和/或处理体系架构50的数据库中的数据的完整性,这进而可以造成系统和/或数据库中的一个或多个停止正确运作,并且在最坏的情况下会崩溃。因此,诸如在处理100被配置为对与在操作环境10的一个或多个系统中和/或在处理体系架构50的数据库中指示的航班相关的数据进行改变之前,通过锁定转移请求54所牵涉的航班中的一个或多个在处理100中早先的冲突处理之外,这些问题出现的可能性降低。因此,这种锁定改进了操作环境10中的系统和处理体系架构50的数据库的完整性和稳定性。

在所指示的航班中的一个或多个被锁定之后,在方框110中,可以使转移请求54中的数据经历初步处理。特别地,转移模块52可以分析每个被中断的旅行行程和新旅行行程的航班,以确定每个旅行行程的航班之间的关系,和/或根据执行转移的航空公司的偏好对新旅行行程中的航班中的一个或多个实施改变。虽然所示实施例将方框110示为在方框104中的验证确定和方框108中的航班锁定之后发生,但是在其它实施例中,方框110可以发生在方框104和/或方框108之前和/或至少部分地与方框104和/或方框108并行发生。

在一些实施例中,方框110可以包括在被中断的旅行行程中的被取代航班与新旅行日程中的新航班之间构建from-to匹配。特别地,转移模块52可以将新旅行行程中的每个新航班与由该新航班取代的被中断旅行行程中的航班进行匹配。如果被中断的旅行行程中的一个航班被新的旅行行程中的多个航班取代,那么这多个航班中的每一个可以与被中断的旅行行程中的该同一个航班匹配。

当预订和/或将旅客转移到新航班时,from-to匹配可以使转移模块52能够利用为与新航班匹配的被中断旅行行程的航班相关的旅客存储的数据。因此,代替常规系统中常见的并且可能延迟转移处理并增加错误发生的代理必须为每个被转移的旅客手动地重新输入某些数据项,转移模块52可以被配置为自动复制和利用已经为每个旅客存储的数据。因此,执行转移的一个或多个计算机系统能够相对于代理触发旅客转移和完成转移的时刻实现更快的响应时间。而且,一个或多个计算机系统能够实现改进的结果,因为在旅客转移期间出错的可能性降低了。在转移处理100中可以由转移模块52使用的针对旅客的先前存储数据的非限制性示例包括应用于旅客的任何特殊状态、旅客先前的预订舱位、旅客原始预约的创建日期、用于原始预约的销售点、原始预约中的服务请求以及旅客座位偏好,其中每一个都可以是存储在预约记录数据库58中的旅客的预约记录的一部分。转移模块52还可以利用与存储在dcs数据库66中的被中断的旅行行程相关的旅客dcs记录(或备份记录)中的信息(诸如旅客先前的办理登机手续细节),并且可以利用分别在电子票数据库62和emd优惠券数据库64中为旅客存储的电子票和emd优惠券。

转移模块52可以被配置为如下构建from-to匹配。如果被中断的旅行行程中仅一个航班被取代,那么转移模块52可以将新旅行行程中的每个新航班与被中断的旅行行程中的该一个被取代航班匹配。如果被中断的旅行行程中多于一个航班被取代,那么转移模块52可以搜索并配对被取代航班与新航班之间的类似子路线。这个搜索可以基于一个或多个业务规则,这些业务规则可以由执行转移的航空公司来定义。例如,业务规则可以规定搜索在机场级别被执行。在这种情况下,转移模块52可以搜索并配对被取代航班或被取代航班序列与从同一机场出发并到达同一机场的新航班或新航班序列。可替代地,业务规则可以规定在城市级别或国家级别执行搜索。在这些情况下,转移模块52可以搜索并配对被取代航班或被取代航班序列与分别从同一个城市或国家出发和到达同一城市或国家的新航班或新航班序列。

在子路线配对之后,对于一对中的每个子路线,转移模块52可以识别主航班。在一些实施例中,对于给定的航班序列,主航班可以是国际航班或就经过的飞行时间而言最长的航班。此后,对于每对子路线,转移模块52可以将来自新的航班子路线的主航班匹配到被取代的航班子路线的主航班。对于一对子路线一旦主航班是匹配的,该对中新航班子路线的馈送者和接收者航班就可以分别与该对中被取代的航班子路线中的馈送者和接收者航班匹配。对于给定的子路线,馈送者航班可以被视为主航班之前的航班,并且接收者航班可以被视为主航班之后的航班。如果给定对的新航班子路线包括馈送者航班,并且该对的被取代的航班子路线不包括,那么新航班子路线的馈送者航班可以同样与被取代的航班子路线的主航班匹配。在将新航班子路线的接收者航班与被取代的航班子路线的航班匹配时,也可以应用相同的规则。

除了进行from-to匹配之外,方框110还可以包括变换在转移请求54中指示的新航班中的一个或多个。特别地,一些航班可能由一个航空公司运营,但以各自与不同航空公司相关联的多个航班号市场推广。当合作协议使一个航空公司能够出售在另一个航空公司运营的航班上座位时,可能会出现这种情况。因此,对于新旅行行程中的每个新航班,转移模块52可以确定在转移请求54中针对新航班提交的航班号是否与匹配新航班的被取代航班的航班号关联到同一家航空公司。如果不是,那么转移模块52可以确定是否存在与被取代航班的相同的航空公司相关联的新航班的航班号可用。如果是,那么转移模块52可以将新航班的航班号转换成与被取代航班的同一家航空公司相关联的航班号,并且在将该旅客预订到新航班时利用转换后的航班号。以这种方式,旅客就可以尽可能多地从航班转移到同一家航空公司的航班上,这使得航空公司能够保留被转移的旅客作为客户和与之相关的收入。

例如,从尼斯(nice)到巴黎的一个航班可以与用于运营航空公司的航班号x1和用于市场推广航空公司的航班号y1相关联。一个旅客可以按照航班号x1预定这个航班,而另一个旅客可以按照航班号y1预定这个航班。如果这个航班被中断并且这些旅客被转移,那么代理可以选择将这两个旅客都转移到与该运营航空公司的航班号x2相关联的另一个航班。这个航班也可以与市场推广航空公司的航班号y2相关联。因此,响应于接收到转移请求54,转移模块52可以为最初按照航班号y1预订的旅客将航班号x2转换成航班号y2。但是,对于其它旅客,转移模块52可以继续以航班号x2进行,因为他或她最初按照x1预订。

在方框110的初步处理之后,在方框112中,可以基于转移请求54或者更具体地是基于每个旅客的新的旅行行程和/或被中断的旅行行程来更新库存数据库60。特别地,转移模块52可以调用和/或使库存系统14更新新旅行行程中的每个新航班以及被中断的旅行行程中的每个被取代航班的可用性计数器。转移模块52和/或库存系统14可以递增库存数据库60中与每个新航班相关联的旅行产品可用性计数器,和/或可以递减库存数据库60中为每个被取代的航班存储的旅行产品可用性计数器。例如,当转移请求54包括将一个或多个新航班添加到旅客的旅行行程而不取消或修改任何现有航班时,转移模块52可以调用和/或使库存系统14递增仅针对每个新航班的旅行产品可用性计数器。作为另一个示例,当转移请求54既包括取代航班又包括增加新航班时,转移模块52可以调用和/或使库存系统14递减与每个被取代的航班相关联的旅行产品可用性计数器,并递增与每个新航班相关联的旅行产品可用性计数器。针对给定航班递增或递减的旅行产品可用性计数器可以取决于预订航班的预订舱位。特别地,并且如上所述,给定的航班可以与若干旅行产品可用性计数器相关联,每个计数器针对航班的不同预订舱位。

当基于转移请求54更新可用性时,转移模块52和/或库存系统14还可以更新与每个被取代的航班和新航班相关联的辅助服务计数器。特别地,对于转移请求54中的每个旅客和每个新航班,转移模块52和/或库存系统14可以确定存储在预约记录数据库58中的该旅客的预约记录是否包括和与新航班匹配的被取代的航班相关联的辅助服务,诸如在ssr数据元素中。如果是,那么转移模块52和/或库存系统14可以检查该辅助服务是否在新航班上可用,诸如基于与存储在库存数据库60中的新航班相关的辅助服务的可预订单元的总数,并且基于存储在库存数据库60中的跟踪已经与新航班相关地预订的辅助服务的单元数量的计数器。如果它们之间的比较指示该计数器至少等于可预订单元的总数,那么辅助服务不可用于新航班,并且转移报告56可以被更新,以指示辅助服务将不在新航班上被重新预订。可替代地,如果比较指示该计数器小于可预订单元的总数,那么与辅助服务相关联的计数器可以被递增。

出于性能原因,库存系统14中的所有更新可以在单个交易中执行。换句话说,转移模块52可以针对转移中所涉及的所有旅客和/或旅行产品向库存系统14进行单个调用或提供单个请求,并且库存系统14可以响应于并基于该调用或请求而更新库存计数器。例如,单个请求可以包括每个旅客被中断的旅行行程的至少一部分(例如,至少被取代的航班)和新旅行行程的至少一部分(例如,至少新航班),并且库存系统可以基于此更新计数器。以这种方式,实现处理100的系统能够实现更快的响应时间,因为针对转移请求54牵涉的每个旅行产品和/或旅客向库存系统14分别调用或请求降低了方框112完成的速度。此外,针对转移请求54牵涉的所有旅客和/或旅行产品进行单个调用或请求还使库存数据库60中的计数器能够被并行地更新,这进一步提高了系统能够实现处理100的速度。而且,因为来自转移模块52的每个请求或调用一般需要由操作环境10的系统中的一个或多个利用附加的计算机资源,所以,通过对所有牵涉的旅行产品和/或旅客进行单个调用或请求,处理100能够实现计算机资源节省。

因为转移处理100可以不阻止正常的销售操作发生,所以一般期望尽可能快地更新库存数据库60,以准确地反映受转移影响的每个旅行产品和辅助服务的可用性。因此,在所示实施例中,更新库存数据库60在方框110的初步处理之后立即发生,初步处理可以是更新库存数据库60的必要前提(例如,可以利用from-to匹配来更新库存数据库60)。以这种方式,假设没有发生造成转移处理100取消或完全失败的错误,那么库存数据库60可以尽可能快地成为最新,以防止受转移影响的旅行产品和辅助服务被预订过多和预订过少。

更新库存数据库60还可以包括在新航班上使旅客重新就座。特别地,针对每个新航班,每个旅客可以被指派新的座位。一般而言,重新就座处理可考虑旅客的值或状态,优先考虑转移请求54中具有更高值或状态的那些旅客的偏好。在重新就座先前已预订收费座位的旅客的情况下,重新就座处理可以基于所购买座位的特点(例如,位置和膳宿)以及由航空公司定义的参数(例如,位置胜过膳宿,反之亦然)尝试将先前预订的座位与新航班上的座位匹配。

方框112可以在某些情况下被绕过。例如,当转移请求54简单地包括对被中断的旅行行程中的一个或多个航班的定时改变时,库存数据库60不需要被更新。作为另一个示例,当相关的转移请求54包括不由库存系统14和/或预约系统12管理的新的或被取代的航班(例如,地面处理航班、外部航班)时,库存计数器一般不可由转移模块52和/或库存系统14访问操纵,并且因此对于这些航班可以绕过更新操作。

在方框114中,可以基于转移请求54或者更具体地基于转移请求54的新旅行行程的至少一部分(诸如新航班)来更新预约记录数据库58。特别地,转移模块52可以调用和/或使预约系统12更新存储在预约记录数据库58中的一个或多个预约记录,以指示每个所选择的旅客与新旅行行程之间的关联。这种更新可能需要在预约记录数据库58中生成一个或多个包括旅客中的至少一个与新旅行行程之间的标识和关联的新预约记录,和/或修改预约记录数据库58中一个或多个受转移请求54影响的现有预约记录。例如,对一个或多个现有预约记录的修改可以包括通过从中移除被中断的旅行行程或者在预约记录中指示被中断的旅行行程的取消来取消每个现有预约记录中被中断的旅行行程。而且,修改可以包括将现有预约记录的每个所选择的旅客与新旅行行程之间的指示和关联插入到现有预约记录中。在更新之后,预约记录数据库58可以包括针对每个被转移的旅客的、包括新旅行行程的预约记录。已经被更新为包括新旅行行程的现有预约记录还可以包括包含与被中断的旅行行程相关的细节的历史(诸如上述pnr历史)。

在所示实施例中,更新预约记录数据库58是在库存数据库60已经基于转移请求54被更新之后发生的。在预约记录被更新时,转移模块52和/或预约系统12可以监视预约记录,以检测库存数据库60是否变得与预约记录数据库58不一致。例如,如果尽管它们可用,但是传输模块52和/或预约系统12不能将旅客预订到新旅行行程的航班上,或者不能将旅客先前的辅助服务重新应用到新旅行行程上,那么库存数据库60中的计数器可能不准确地反映与给定航班相关的预订的旅行产品或辅助服务的数量。因而,当不一致性被确定时,转移模块52可以发起回滚(rollback)处理,该回滚处理通知库存系统14这种不一致性,然后库存系统14可以撤销与先前在库存数据库60中发生的不一致相关的改变。以这种方式,在方框114完成之后,库存数据库60和预约记录数据库58可以处于同步状态。

在方框114的预约记录更新处理期间,转移模块52可以提供在方框110中确定的from-to匹配,以包括在新的或更新后的预约记录中,诸如在名为pnr行程匹配(pim)的专用元件中。预约系统12和/或转移模块52可以利用from-to匹配将旅客的细节(包括辅助服务和偏好)重新应用到新航班上。例如,旅客可以最初预订了包括x1尼斯到巴黎和y2巴黎到纽约的双程旅行行程。如果这个旅行行程被中断,那么代理可以提交转移请求54,该转移请求54包括两个新航班来取代旧航班,即,x3尼斯到伦敦和y4伦敦到纽约。如果from-to匹配将x3映射到x1并将y4映射到y2,那么当为旅客创建或更新预约记录时,并且假设在新航班上旅客先前预订的辅助服务可用,预约系统12和/或传输模块52可以为从x1到x3的旅客重新应用预订的服务和偏好,并且可以为从y2到y4的旅客重新应用预订的服务和偏好。以这种方式,旅客的偏好和预订的辅助服务尽可能地多地在新旅行行程上被维持。

更新由转移请求54牵涉的预约记录可以如下进行。对于每个旅客,转移模块52和/或预约系统12可以搜索存储在预约记录数据库58中的预约记录,以确定被转移的旅客的预约记录(有时被称为“分发pnr”)是否与被中断的旅行行程相关地可用。例如,如果被中断的旅行行程通过操作环境10外部的预约系统为旅客预订,那么这种预约记录可能不可用,这可能是如果被中断的旅行行程包括地面处理航班或代码共享航班(例如,由利用预约系统12的航空公司运营但是通过不利用预约系统12的市场推广航空公司预订的航班)的情形。如果预约记录对于给定旅客可用,那么转移模块52可以基于新旅行行程调用和/或使预约系统12更新预约记录。如果不是,那么转移模块52可以调用和/或使预约系统12为旅客创建包括新旅行行程的新预约。在任一情况下,转移模块52和/或预约系统12都可以将与新旅行行程相关联的ssrckin元素输入到新预约记录中或者所找到的包括以上确定的from-to匹配的用新旅行行程更新的预约记录中。

在一些情况下,只有存储在预约记录数据库58中的给定预约记录的旅客中的一些可以被转移请求54牵涉,这意味着仅包括在预约记录中的旅客的子集将被重新预订到新旅行行程。在这种情况下,转移模块52和/或预约系统12可以将预约记录拆分成两个或更多个子预约记录,其中子预约记录中的一个或多个特定于被中断的旅客。此后,转移模块52和/或预约系统12可以用新旅行行程更新包括被中断的旅客的子预定记录。每个子预约记录的pim元素可以被修改,以存储与拆分相关的信息(诸如父预约记录和/或从父预约记录拆分的每个子预约记录的标识)。

在一些实施例中,不是在预约记录数据库58被更新之前为每个旅客更新库存数据库60,而是可以针对每个旅客并行执行这些处理,以改进系统响应时间。例如,首先可以确定是否可以将一个或多个旅客和/或旅客预订的辅助服务转移或重新预订到新旅行行程的新航班上,诸如经由查询库存数据库60以查找相关计数器的当前值。如果是,那么转移模块52可以调用和/或使预约系统12将每个旅客和/或其辅助服务并行地重新预订到新航班上。然后,响应于旅客和/或辅助服务被重新预订到一个或多个新航班上,转移模块52可以调用和/或使库存系统14更新库存数据库60中的计数器,以反映重新预订。换句话说,与重新预订的旅客的被取代的航班相关联的计数器可以递减,并且与重新预订的旅客的新航班相关联的计数器可以递增。以这种方式,直到实际将旅客和/或辅助服务重新预订到预约记录数据库58中的新航班上,库存数据库60中的新航班和辅助服务的计数器才被更新,这可以增加转移处理100期间库存数据库60的准确性和完整性。而且,通过对每个旅客并行地执行上述操作,系统不必在执行库存更新处理之前等待每个旅客重新预订,反之亦然,这可以改进系统的响应时间。

在一些实施例中,一旦一个旅客或辅助服务被重新预订到一个或多个新航班上,转移模块52和/或预约系统12就可以开始重新预订下一个旅客或辅助服务,并且转移模块52和/或库存系统14可以开始更新用于先前旅客或辅助服务的计数器。以这种方式,库存数据库60与预约记录数据库58并行地被更新,与更新所有旅客的数据库之一并且仅在那种更新完成之后才更新所有旅客的其它数据库相比,这实现了实施处理100的系统的改进的响应时间。在替代实施例中,请求被转移的每个旅客或旅客子组可以由库存系统14和预约系统12并行处理(即,针对每个旅客或旅客子组彼此同时地执行重新预订和库存更新,而无需等待针对给定旅客或旅客子组的更新完成),这可以进一步实现用于实施处理100的系统的改进的响应时间。

在一些情况下,库存数据库60中的计数器可以指示被请求转移的一个或多个旅客不能被转移到新旅行行程,或者一个或多个预订的辅助服务不能被重新应用到新旅行行程上。作为响应,转移模块52、库存系统14和/或预约系统12可以被配置为将所有旅客放在新旅行行程和/或一个或多个辅助服务的等待列表中。可替代地,转移模块52、库存系统14和/或预约系统12可以被配置为实现尽力而为的处理,其中尽可能多的旅客和辅助服务被重新预订,直到不再剩余更多的可用性。于是,未被重新预订到新旅行行程上的那些旅客可能不被处理100的其余部分处理。在前一种情况下,响应于旅客在等待列表中,转移模块52可以更新转移报告56,以指示旅客的等待列表状态。在后一种情况下,转移模块52可以更新转移报告56,以指示不能被重新预订并因此不会被转移的那些旅客。

在预约记录数据库58和库存数据库60已被更新之后,在方框116中,包括在转移请求54中的被成功重新预订并且已经办理了被中断的旅行行程的被取代的航班的登机手续的旅客可以从被取代的航班卸载。特别地,转移模块52可以调用和/或使dcs18卸载每个办理了登机手续的旅客。可替代地,一旦旅客被重新预订,预约系统12可以自动生成一个或多个对应的消息并将其发送到dcs18,以向dcs18通知重新预订,或者更特别地,重新预订的旅客不再在被取代的航班上被预订,作为响应,被取代的航班可以被配置为自动从被取代的航班中卸载重新预订的旅客。具体而言,对应的消息可以指示每个旅客先前的旅行行程或被取代的航班、每个旅客的新旅行行程或新航班,和/或前面描述的可以被dcs18存储并稍后用于dcs数据转移处理的from-to匹配。从给定航班上卸载旅客会使旅客的电子票和emd优惠券相对于那个航班变成“打开”状态。例如,当旅客从航班上被卸载时,包括在该旅客针对那个航班的电子票中的优惠券可以变成“打开”状态。一般而言,与被取代的航班相关联的每个被转移的旅客的电子票和emd优惠券需要相对于被取代的航班处于打开状态,以便成功执行处理100的售票部分,这在下面更详细地讨论。

在一些实施例中,转移模块52和/或dcs18可以被配置为从由dcs18托管的被中断的旅行行程中的第一被取代的航班并从包括外部航班在内的所有向前继续的(onward)被取代的航班卸载已办理登机手续的旅客(例如,经由发送到适当的外部系统的消息)。例如,需要被转移的旅客最初可以在包括航班x1和y1的被中断的旅行行程上预订,其中x1由dcs18托管,而y1在dcs18外部,但是可用于使用通程登机在dcs18上办理登机手续。如果x1在y1之前被调度,并且x1和y1在新旅行行程中都被取代,那么转移模块52和/或dcs18可以从x1和y1都卸载旅客。可替代地,如果y1在x1之前被调度,并且x1和y1都被取代,那么转移模块52和/或dcs18可以仅从x1卸载旅客。作为另一种替代方案,如果x1在y1之前被调度,并且只有y1被取代,那么转移模块52和/或dcs18可以不执行任何卸载操作。

在方框118中,可以为重新预订和/或卸载的旅客执行一个或多个自动售票操作。具体而言,转移模块52可以调用售票系统16以自动处理旅客针对新旅行行程的电子票和emd优惠券。转移模块52和/或售票系统16可以交换或重新验证每张电子票。此后,转移模块52和/或售票系统16可以解除关联、重新关联或交换emd优惠券。参考图5更详细地讨论方框116的特定操作。

在方框120中,可以发起dcs数据转移,使得dcs数据库66可以被更新,以反映每个重新预订的旅客的新旅行行程。特别地,在在重新预订处理和售票处理完成之后,转移模块52和/或预约系统12可以向dcs18发送与重新预订和售票处理相关的数据,以便触发dcs数据转移处理。触发数据可以指示被转移的旅客、每个旅客的被中断的旅行行程和/或被取代的航班、新的旅行行程和/或任何重新预订的辅助服务。此外,触发数据可以包括转移交易id、每个旅客的唯一标识符、重新预订失败(如果有的话)、电子票标识符和/或emd优惠券标识符和/或售票错误(如果有的话)。当dcs18正在处理触发数据时,转移模块52可以更新转移报告56,以显示每个旅客的新转移状态(例如,处理dcs数据转移)。

响应于接收到上述触发数据,转移模块52和/或dcs18可以确定新旅行行程是否包括一个或多个新航班,并且如果是的话,确定那些航班是否由dcs18托管或在dcs18外部。如果新旅行行程中的第一个新航班在dcs18的外部,那么转移可以被认为已经完成,因为dcs18可能不负责处理那个航班的机场运营。如果不是,那么对于由dcs18托管的每个新航班,转移模块52和/或dcs18可以发起dcs数据转移。

如前所述,当一个或多个旅客从dcs18中打开的航班重新预订或重新预订到dcs18中打开的航班时,预约系统12可以被配置为向dcs18发送pnl或adl,这可以触发dcs18基于包括在pnl或adl中的信息更新在dcs数据库66中的dcs记录。例如,在重新预订之后一旦接收到pnl或adl,dcs18可以被配置为生成与包括重新预订的旅客的新旅行行程的一个或多个航班相关联的一个或多个dcs记录。有时候,上述触发数据可以在pnl或adl之前被接收,在这种情况下,dcs数据库66可能还不包括用于包括在其中转移数据的旅客的新旅行行程的dcs记录。当发生这种情况时,转移模块52和/或dcs18可以被配置为在预定时段之后和/或在接收到pnl和/或adl之后自动重试发起dcs数据转移。

在一些实施例中,触发数据可以在新旅行行程中的所有被托管航班已经在dcs18中打开之前被接收。在这种情况下,转移模块52和/或dcs18可以一直等到新旅行行程中由特定的一家航空公司(在本文中表示为“主要航空公司”)运营的每一个航班都已经在dcs18中打开。例如,主要航空公司可以是与新旅行行程中的第一个新航班相关联的航空公司,并且在数据转移被发起之前转移模块52和/或dcs18可以一直等到与主要航空公司相关联的每个新航班都已经在dcs18中打开。对于在数据转移实际被发起时与主要航空公司不相关联并且还没有在dcs18中打开的那些新航班,一般可以假设旅客数据(诸如行李信息和接受状态)将在由代理触发的手动办理登机手续处理中添加到那些航班的dcs记录。

在任何情况下,响应于针对一个或多个旅客发起的dcs数据转移处理,对于每名旅客,转移模块52和/或dcs18可以将为该旅客存储的与被中断的旅行行程相关的旅客数据(诸如在dcs数据库66中与被中断的旅行行程相关联的旅客的备份记录或dcs记录)复制或转移到包括在dcs数据库66中并在dcs数据库66中关联到新旅行行程或更特别地是关联到新旅行行程的新航班的旅客的dcs记录。这种被转移的的数据的至少一些(如果不是全部的话)可以不在旅客的预约记录中,并且因而可以不在旅客被重新预订之后提供给dcs18的pnl或adl中。例如,虽然与旅客购买或请求的服务相关的特殊服务请求(ssr)的改变可以存储在预约记录中并由dcs18经由pnl或adl对应地接收,但是某些监管数据(例如,护照号、apis数据)可能没有。因而,dcs数据转移处理有助于减轻这种数据的丢失。

旅客数据从其被复制或转移到与新旅行行程相关联的每个dcs记录的具体数据源可以由各个航空公司微调,或者可以基于上面确定的from-to匹配。更特别地,对于与新旅行行程的新航班相关联的dcs记录,对于给定旅客,一些旅客数据可以从与匹配到新航班的被取代的航班相关联的旅客的备份记录或dcs记录复制或转移,而其它数据可以从另一个源被复制或转移。数据源很大程度上取决于被复制或转移的数据类型。表1图示了用于dcs数据转移的数据类型和数据源相对于每个旅客的每个新航班的示例性映射。在没有航空公司的任何特定规则的情况下,转移模块52和/或dcs18可以缺省地使用表1。

在dcs数据转移处理中,如果行李信息已经相对于被中断的旅行行程为给定的被转移的旅客生成并存储,那么转移模块52和/或dcs18可以修改行李信息,以包括基于新旅行行程的行李行程,并将修改后的行李信息添加到与新旅行行程相关联的该给定旅客的dcs记录。特别地,转移模块52和/或dcs18可以从行李行程移除被取代的航班,并且可以将新旅行行程的新航班添加到行李行程。行李信息中包括的、可以物理地附连到旅客行李的行李标签号可以不更改并且也可以包括在修改后的行李信息中。如果特定旅客的行李信息指示行李被短标记(即,行李行程在作为旅客最终目的地之前的连接点的目的地处结束),那么转移模块52和/或dcs18可以确定原始行李行程中的短标记目的地是否包括在新旅行行程中。如果是,那么转移模块52和/或dcs18可以再次在这个目的地接受旅客的行李。可替代地,如果行李被短标记并且新旅行行程不包括行李的原始目的地,那么转移模块52和/或dcs18可以接受行李到达并且完成新旅行行程,使得行李将被处理到旅客的最终目的地。在行李信息被修改之后,转移模块52和/或dcs18可以将更新后的行李信息发送到适当的行李处理系统。

在方框122中,在dcs数据转移完成之后,可以使被转移的旅客办理新旅行行程中的一个或多个航班的登机手续(或被接受)。特别地,对于每个旅客,如果该旅客在被中断的旅行行程的一个或多个航班(诸如第一个被取代的航班)上被接受或待命(standby),那么转移模块52和/或dcs18可以尝试重新将该旅客接受到新旅行行程的一个或多个航班上。可替代地,如果代理在创建转移请求54时选择了相关选项,那么转移模块52和/或dcs18可以接受每个客户作为待命旅客而不是作为新旅行行程的一个或多个航班上的完全被接受旅客。然后旅客可以经由正常的待命协议被完全接受到航班上(例如,在航班之前的某个时间,待命旅客中的一个或多个可以基于优先级被完全接受)。

作为dcs数据转移处理或接受处理的一部分,转移模块52和/或dcs18也可以核实新旅行行程的最小连接时间(诸如在新旅行行程中的最后一个新航班与新旅行行程中的下一个航班之间)被遵守。例如,被中断的旅行行程可以包括三个航班,即,依次是x1、x2和x3,而新旅行行程可以依次包括y1、y2和x3。在这种情况下,转移模块52和/或dcs18可以核实在y2和x3之间最小连接被遵守。如果是,那么如上所述,转移模块52和/或dcs18可以继续进行dcs数据转移和/或将被转移的旅客接受到新旅行行程上。如果不是,那么转移报告56和/或dcs18可以使转移报告56包括错误和基本理由(例如,dcs数据转移或旅客接受由于未能满足最小连接时间要求而不能完成)。可替代地,如果不满足最小连接时间,那么转移模块52和/或dcs18可以继续执行dcs数据转移和/或将旅客接受到新旅行行程上,但在转移报告56中生成最小连接时间未满足的警告。此外和/或可替代地,这种检查可以在方框104的验证处理中被执行。

在方框124中,转移报告56可以被完成并呈现给代理。特别地,转移模块52可以生成代表转移报告56的数据,其可以是总结转移处理100的结果的单个整合的显示。然后转移模块52可以将代表转移报告56的数据呈现给代理,诸如经由连接到dcs18或库存系统14的计算机终端。

转移报告56可以包括总结转移处理100的结果的若干项。例如,转移报告56可以包括全局交易结果,诸如“已完成”、“完成但有错误”、“完成但有警告”、对所有请求的旅客“未完成”或“正在进行”。转移报告56还可以包括和/或识别已成功重新预订到新旅行行程上的旅客的数量、服务(例如,ssr)被成功地重新应用到新旅行行程上的旅客的数量、相对于新旅行行程电子票和emd票被成功处理的旅客的数量、在dcs数据库66内数据被成功转移的旅客的数量,和/或被成功接受到新旅行行程的一个或多个航班上的旅客的数量。类似地,转移报告56可以包括相对于上述处理不成功的旅客的数量。

转移报告56还可以包括针对转移请求54的每个旅客关于处理100中的每个子处理的结果的细节。具体而言,对于每个旅客,转移报告56可以包括重新预订结果、服务重新处理结果、针对旅客执行了何种电子票操作(例如,重新验证或交换)、针对旅客执行了何种emd优惠券操作(例如,解除关联、重新关联或交换)、数据是否在dcs数据库66内为旅客成功转移,和/或旅客是否被成功接受到新旅行行程的一个或多个航班上。而且,如果这些处理导致出错或警告,那么可以在转移报告56中为旅客提供对应的错误或警告。

换句话说,转移报告56可以向代理提供相对于每个旅客总结转移处理100的单个综合显示。因此,代理可以利用转移报告56来快速识别针对每个旅客的问题,并相应地为旅客手动校正的这些问题(例如,手动交换电子票、手动将数据输入到dcs数据库66中)。而且,如果旅客在旅行处理100期间失去了预订的服务(诸如收费座位),那么转移报告56可以使代理能够快速识别失去的服务56(诸如经由转移报告内与旅客相关联的特定图标)。

在一些实施例中,航空公司可以定义用于转移模块52响应于失败或错误(诸如服务或收费服务未能重新预订到新旅行行程上,如在转移报告56上报告的)而执行的具体指令集。例如,响应于在转移处理100中失去收费服务,航空公司可以为转移模块52定义指令,以自动地在特定航空公司办事处排队相关的预约记录(诸如为了处理退款),和/或在相关预约记录中添加指示在转移期间收费服务已失去的指示(诸如“ssroths”元素)。

图5图示了用于执行转移处理100中方框118的自动售票操作的处理200。处理200可以由转移模块52和/或售票系统16执行。特别地,并且如前所述,在转移处理100期间,转移模块52可以调用和/或使售票系统16自动处理对于被转移的旅客的电子票和emd优惠券的处理。此后,售票系统16和/或转移模块52可以执行处理200。

在方框202中,可以选择在其中执行售票交易的售票处。售票处的选择确定哪家航空公司是“验证承运人”,其一般可以指向旅客验证和/或签发机票、收集/接收旅客对新旅行行程的付款、将付款分发给新旅行行程中所涉及的运营航空公司和/或发放退款或信用的承运人。

转移模块52和/或售票系统16可以使用以下逻辑来选择售票处。如果触发转移的航空公司具有可在其中执行售票交易的售票处,那么转移模块52和/或售票系统16可以选择触发航空公司的售票处。否则,转移模块52和/或售票系统16可以选择受影响的航班的运营航空公司(例如,运营在被中断的旅行行程的起点处的航班的航空公司)的售票处。

除了由dcs18托管的其它航班之外,上述逻辑还使得处理200能够与地面处理航班一起工作。具体而言,对于地面处理航班,请求转移的地面处理者或航空公司可能没有可以代表运营该地面处理航班的航空公司执行处理200的售票交易的售票处,因为地面处理航班可能在地面处理者或航空公司的系统外部。但是,地面处理航班的运营航空公司应当有能够为地面处理航班执行售票操作的售票处,并且可以使用上述逻辑来选择这个售票处。

如果使用上述逻辑转移模块52和/或售票系统16不能确定售票处,那么转移模块52和/或售票系统16可以断开处理200。在这种情况下,转移处理100的其余部分可以继续进行,并且转移模块52可以更新转移报告56,以包括售票处理失败的声明。转移报告56还可以包括失败的原因(例如,售票处不可用)。

在方框204中,响应于选择了售票处,可以确定转移请求54中的每个旅客是否有资格进行自动电子票交易。例如,转移模块52和/或售票系统16可以检查新旅行行程中的一个或多个新航班是否由无票的航空公司运营。如果是,那么没有任何旅客可以有资格进行自动电子票交易,至少相对于这些航班不行。另一个检查可以包括检查转移请求54是否包括婴儿。如果是,那么婴儿可以需要他或她自己的电子票。如果婴儿没有他或她自己的电子票,那么转移模块52和/或售票系统16可以确定该婴儿旅客和/或随该婴儿一起旅行的任何旅客没有资格进行自动电子票交易。进一步的检查可以包括检查由转移请求54牵涉并且要在处理200中处理的每张电子票(和emd优惠券)上的旅客姓名是否与包括在转移请求54中的旅客姓名之一匹配,其可以是从存储在预约记录数据库58中的相关预约记录中沿用的(例如,呈现给代理以供选择的姓名可以从预约记录数据库58中的预约记录生成)。一般而言,这种检查可以确保处理的一致性并且避免潜在的欺诈,由此提高整个系统的安全性。如果包括在转移请求54中的旅客姓名不同于要为旅客处理的电子票或emd优惠券上的旅客姓名,那么转移模块52和/或售票系统16可以确定转移请求54的这个旅客没有资格进行自动电子票交易。

转移模块52和/或售票系统16还可以检查由转移请求54牵涉并且要在处理200中被处理的每张电子票(和emd优惠券)至少相对于被取代的航班具有“打开”状态。如果电子票之一仍然相对于被取代的航班具有“已办理登机手续”状态,那么转移模块52和/或售票系统16可以实施重试机制,该重试机制在小的延迟之后再次执行这种检查,以便留给电子票更多时间来获得相对于被取代的航班的“打开”状态。这种重试可以被执行若干次,并且,如果电子票仍然相对于被取代的航班示出“已办理登机手续”状态,那么转移模块52和/或售票系统16可以确定与该电子票相关联的旅客没有资格进行自动电子票交易。

进一步在方框204中,转移模块52和/或售票系统16可以确定哪些电子票要执行上述检查和/或在处理200的其余部分中处理。智能逻辑可以被用来确定相关电子票,即,与被中断的旅行行程对应的每个旅客的一张或多张电子票,并且更特别地包括用于被取代的航班的优惠券。特别地,对于每个被转移的旅客,并且对于每个被取代的航班,转移模块52和/或售票系统16可以利用数据源的优先列表来确定对于该航班该旅客的电子票。例如,转移模块52和/或售票系统16可以检查航班是否已与dcs18中旅客的电子票标识符相关联。如果不是,那么转移模块52和/或售票系统16可以检查包括该航班的旅客的旅客订座记录是否在用于该航班的fa元素中具有电子票标识符,其表示一旦旅客被预订到航班上并且出票则由预约系统12自动添加到旅客订座记录的电子票标识符。如果仍然没有找到电子票号码,那么转移模块52和/或售票系统16可以检查包括该航班的旅客的旅客订座记录是否在用于该航班的fhe元素中包括电子票号码,其表示当创建预订时由代理手动输入的电子票标识符。一旦为旅客的每个被取代的航班选择了电子票标识符,就可以确定与所选择的标识符相关联的电子票是否与被取代的航班匹配,诸如通过显示每张电子票并确定电子票是否包括被取代的航班的优惠券。如果找到完全匹配,那么针对旅客为上述检查和/或处理200的其余部分选择与标识符对应的电子票中的一个或多个。如果没有找到,那么可以确定旅客没有资格进行自动电子票交易。

如果旅客中的一个或多个被确定为没有资格进行自动电子票交易(方框204的“否”分支),那么控制被转移到方框218,转移报告56可以被更新,以指示电子票无资格错误和/或错误的原因,并且处理200可以被断开。可替代地,转移报告56可以被更新,以仅针对被确定为没有资格相对于新航班中的一个或多个进行自动电子票交易的那些旅客指示错误。在这种情况下,处理200可以继续,以便为相对于新航班中的一个或多个被确定有资格的旅客执行售票交易。在一些场景中,给定的旅客可能相对于新旅行行程中的一个新航班没有资格,并且相对于新旅行行程中的另一个新航班有资格。在这种情况下,旅客可以在转移报告56中对于该一个新航班被指示为无资格,并且处理200可以对于该旅客与另一个新航班相关地继续进行。

响应于旅客中的一个或多个被确定为有资格相对于新航班中的一个或多个进行自动电子票交易(方框204的“是”分支),那么在方框208中,可以为每个有资格的旅客确定电子票交易的类型(诸如来自由电子票重新验证交易和电子票交换交易组成的组)。具体而言,转移模块52和/或售票系统16可以为每个有资格的旅客选择重新验证交易或交换交易。一般而言,重新验证交易可以包括用新航班细节更新现有的电子票,并且可以只有当新旅行行程包括与被中断的旅行行程相同的路线、日期和舱位时才有可能。此外,航空公司可以定义某些对于要被选择的电子票重新验证交易也需要满足的基线条件,以便提高重新验证的成功率。

如果对于给定的旅客重新验证不可用,那么转移模块52和/或售票系统16可以为该给定旅客选择电子票据交换交易。电子票交换交易可以包括为新旅行行程发放具有新售票号码或标识符的新电子票。在一些实施例中,在处理交换交易(或针对该事项的重新验证交易)之前,转移模块52和/或售票系统16可以执行附加的检查,以确认新旅行行程中下一个未出发的和/或新航班出发之前的时间是否大于预定时间。如果是,那么处理200可以被断开,以便将交换(或重新验证)留在与旅客先前的一张或多张电子票相连接的验证承运人的手中。以这种方式,验证承运人避免失去对他们已经发放的电子票的控制权。这个预定时间可以由每个航空公司分别地配置。

在一些实施例中,对于每个有资格的旅客仅一个电子票交易可以被执行。以这种方式,转移模块52和/或售票系统16能够避免给定旅客的部分失败(即,对于给定旅客,一些电子票交易成功而一些电子票交易失败)。此外,将每个旅客限制到一个电子票交易可以减少系统响应时间,并且可以减轻由代理执行的手动处理(如果有的话)。因此,如果对于给定的旅客两张或更多张电子票被确定包括被中断的旅行行程的被取代的航班,那么旅客可以被限制到一个交换交易,以便遵守每个旅客一个电子票交易的规则。

在方框210中,为每个有资格的旅客确定的类型的电子票交易可以在旅客的一张或多张电子票上被处理,诸如在方框204中识别出的一张或多张电子票上。在一些实施例中,转移请求54的全部电子票交易可以经由由所确定的售票处和/或转移模块52发送到售票系统16的一个请求来触发,该请求包括为每个旅客确定的电子票交易类型,这实现了改进的系统响应时间(例如,与单个请求相比,多个请求需要使用附加的计算机资源和增加的响应时间)。但是,响应于单个请求被售票系统16拒绝,每个电子票交易可以逐个旅客重试。更特别地,转移模块52和/或所确定的售票处可以为每个旅客生成分开的售票请求,以便触发售票系统16一次一个地处理每个所确定的电子票交易。

在电子票交易正在被处理的同时,受影响的航空公司之间通常的联运协议也可以被检查。如果对于给定的旅客或电子票在这个处理中发生错误,那么可以在预约记录数据库58中的相关预约记录中添加包括失败的电子票标识符或号码的备注,这可以减轻代理对需要手动处理的电子票的识别。否则,对电子票标识符或号码的参考可能以其它方式从相关预约记录中丢失,诸如,如果电子票仅在dcs18中而不在预约记录中手动关联,或者如果在转移处理100期间为旅客创建新预约记录,这会阻碍代理尝试修复电子售票错误。

响应于为每个旅客执行电子票交易,emd优惠券可以开始针对每个旅客被处理。为了处理针对给定旅客的emd优惠券,针对该旅客的电子票交易可能需要已经成功,因为可能需要有效的电子票以为了处理emd优惠券并与其相关联。换句话说,处理emd优惠券可能直到处理完被转移的旅客的电子票才会开始。

在方框212中,可以确定与旅客相关联的一个或多个emd优惠券,每个emd优惠券针对其中一个旅客的被中断的旅行行程,并且可以确定与该旅客相关联的每个emd优惠券是否有资格进行自动处理。特别地,转移模块52和/或售票系统16可以识别与被替代的航班相关的旅客的emd优惠券,诸如通过使用执行相同的基于优先级的处理来确定要被检查和/或处理的电子票,如上面所讨论的。关于每个emd优惠券是否有资格被自动处理的确定可以基于与该emd优惠券相关联的旅客是否在上面讨论的重新预订处理(处理100的方框114)期间在新的航班上被确认,和/或是否与emd优惠券相关联的旅客的电子票交易已与新航班相关地成功执行。具体而言,如果旅客没有被确认到新航班上,或者不存在与新航班相关的旅客的有效电子票,那么emd优惠券可能无法自动针对新航班为该旅客处理。

如果emd优惠券中的一个或多个(或者可替代地,全部)被确定为有资格进行自动化处理(方框212的“是”分支),那么可以针对有资格的emd优惠券执行方框214。在方框214中,对于被确定为有资格进行自动处理的每个emd优惠券,可以选择emd交易的类型,诸如从由emd解除关联交易、emd重新关联交易和emd交换交易组成的组中选择。例如,如果与emd优惠券相关联的服务不能被重新应用到新航班上(诸如在重新预订处理(处理100的方框114)期间),那么转移模块52和/或售票系统16可以选择emd解除关联交易。一般而言,对于给定的emd优惠券执行emd解除关联交易可以包括改变emd优惠券上(以及任何相关电子票上)的“与...相关”链接的状态,以解除关联和/或从emd优惠券移除相关电子票的唯一标识符,和/或反之亦然。

可替代地,如果在重新预订处理期间与emd优惠券相关联的服务被重新应用到新航班上,那么转移模块52和/或售票系统16可以选择emd重新关联交易,并且新航班仅包括相对于映射到该新航班的被取代的航班的微小改变。一般而言,对于给定的emd优惠券执行emd重新关联交易可以包括将用于emd优惠券(以及用于相关的电子票)的“与...相关”链接的状态改变为关联和/或将相关电子票的唯一标识符添加到emd优惠券,和/或反之亦然。作为非限制性示例,机场的改变、航班数量的改变(例如,被取代的航班被映射到多个新航班)和/或运营承运人的改变可以被认为在“微小改变”的范围之外。

作为另一种替代方案,转移模块52和/或售票系统16可以为emd优惠券选择emd交换交易。例如,如果emd优惠券没有资格进行emd解除关联交易或emd重新关联交易,那么会发生这种情况。作为进一步的示例,如果在处理200的方框208和方框210中为旅客确定并处理交换电子票交易,那么转移模块52和/或售票系统16可以为与交换的电子票相关联的旅客的所有emd选择emd交换交易,因为用于电子票的电子票交换交易的选择意味着超出微小的改变。为了执行emd交换交易,可以用执行emd交换可能必需的基线信息(诸如tsm-p元素、fo线、付款方式等等)更新相关预约记录。

在方框216中,可以根据所确定的交易处理有资格的emd优惠券。类似于上述电子票处理,在发生错误的情况下,可以将包括旧emd优惠券号码的备注添加到每个相关预约记录。在一些实施例中,可以在确定每个emd交易之后立即处理该每个emd交易,和/或可以并行处理一个或多个emd交易。以这种方式,可以减少系统响应时间。

在方框218中,在为旅客完成电子票处理和emd处理之后,可以在转移报告56中总结处理的结果。具体而言,在执行所确定的emd交易之后和/或在emd优惠券中的一个或多个被确定为没有资格进行自动处理之后(方框212的“否”分支),那么在方框218中,转移报告56可以被更新,以包括针对所有旅客的全局结果(例如,“成功”、“完成”、“完成但有错误”)。此外或可替代地,转移报告56可以被更新,以针对每个旅客指示哪些电子票被成功处理或未能被处理和/或哪些emd优惠券被成功处理或未能被处理。在出现任何失败的情况下,转移换报告56也可以被更新,以包括这种失败针对每个旅客的细节。例如,被确定为没有资格进行自动交易的任何emd优惠券可以以链接到与emd优惠券相关联的旅客、与emd优惠券相关联的航班和/或与转移报告56内的emd优惠券相关联的服务的方式包括在转移报告56中。

图6图示了可以针对处理中包括的一个或多个旅客监视处理100的状态的有限状态机300。如图中所指示的,在转移处理100期间出现的非最终状态由细实心圆圈表示,当转移处理100没有错误/警告地完成时出现的最终状态由粗虚线圆圈表示,并且当转移处理100有错误/警告地完成时出现的最终状态由粗实线圆圈表示。状态机300可以由转移模块52用来在转移处理100的各个阶段更新转移报告56。每个状态可以表示整个处理100的全局状态,和/或处理100针对一个或多个所请求的旅客的状态。换句话说,在给定的时间,每个所请求的旅客可以处于状态机300的不同状态,并且每个旅客可以与由操作环境10和/或处理体系架构50实现的状态机300的不同实例相关联或由其表示。

当转移处理100被触发时,状态机300可以进入“未决验证”状态302。当处于未决验证状态302时,处理100的方框104的验证可以正在进行中。一旦验证处理已经完成,状态机300就可以诸如从转移模块52接收代表转移请求54被发现是有效还是无效的输入。响应于接收到代表转移请求54被发现无效的输入,状态机300可以过渡到“转移失败-无效”状态304。可替代地,响应于代表传输请求54被发现有效的输入,状态机300可以过渡到“重新预订正在进行”状态306。

当处于重新预订正在进行状态306时,处理100的方框108-118中的一个或多个可以正在进行中。一旦完成,状态机300就可以接收多个输入中的一个,每个输入使状态机300过渡到不同的状态。例如,如果状态机300接收到代表重新预订对于一个或多个旅客失败的输入,那么那些旅客中的每一个的状态机300可以过渡到“转移失败-重新预订错误”状态308。如前所述,状态机300可以分开代表每个旅客或表示处理100的全局结果。因而,当一个或多个旅客不能被重新预订时,状态机300可以仅针对未能被重新预订的每个旅客或者针对整个处理100过渡到“转移失败-重新预订错误”状态308。

可替代地,如果接收到的输入代表重新预订成功并且新旅行行程的第一个新的和/或第一个未出发的航班在dcs18的外部,那么状态机300可以过渡到“转移完成-外部”状态308。可替代地,如果接收到的输入代表重新预订成功并且对于重新预订所牵涉的航班还没有接收到pnl或adl,那么状态机300可以过渡到”等待pnl/adl”状态310。可替代地,如果接收到的输入代表重新预订成功并且新旅行行程中的新航班中的一个或多个尚未在dcs18中打开,那么状态机300可以过渡到“等待航班打开状态”312。可替代地,如果接收到的输入代表重新预订成功并且对于重新预订所牵涉的新航班已经接收到pnl或adl,那么状态机300可以过渡到“dcs数据转移正在进行”状态314,在此期间可以执行处理100的方框120-124中的一个或多个。

当处于“等待pnl/adl”状态310或“等待航班打开”状态312时,状态机300可以接收分别代表pnl或adl与重新预订相关地被接收或者与重新预定相关的一个或多个航班变得打开的输入。响应于接收到任何一个输入,状态机300可以过渡到“dcs数据转移正在进行”状态314。

再次,一旦状态机300处于“dcs数据转移正在进行”状态314,状态机300可以接收不同地影响状态机300的下一个过渡的多个输入中的一个。例如,状态机300可以接收代表dcs数据转移处理已完成和/或被代理手动忽略/绕过的输入,这会导致状态机300过渡到“转移完成”状态316。可替代地,如果接收到的输入代表针对一个或多个旅客的dcs数据转移处理已经完成,但是旅客中的一个或多个不能被接受到新航班上,那么状态机300可以过渡到“完成但有错误-不接受”状态318。可替代地,如果接收到的输入代表针对旅客中的一个或多个dcs数据转移处理已经完成,但是在售票处理期间发生错误,那么状态机300可以过渡到“完成但有错误-售票失败”状态320。可替代地,如果接收到的输入代表在dcs数据转移处理期间发生错误,那么状态机300可以过渡到“完成但有错误-dcs转移失败”状态。基于转移报告56中所示的完成状态,然后代理可以修复任何错误以及重新触发处理100的任何子处理,如果有必要的话。

一般而言,上面提到的卸载和售票处理可以在退出状态306和退出状态314之间发生。例如,在重新预订完成并且预约记录数据库58被更新之后,预约系统12可以自动触发一个或多个pnl或adl被发送到反映重新预订(例如,反映从被取消的航班移除旅客,或者旅客被添加到新航班)的dcs18,在这个时候可以将被转移的旅客从任何他们已经被接受的被取代的航班中卸载。而且,在重新预订完成之后,还可以对售票系统16进行调用,以便为被转移的旅客执行售票操作,如上所述。在状态314期间,可以发生上面提到的接受处理,该处理需要为旅客办理新旅行行程的新航班的登机手续。

操作环境10的系统中的一个或多个和/或转移模块52可以包括一般而言遵循状态机300的状态的可执行代码。在特定实施例中,这些系统和/或转移模块52可以是专门被编程为以便在字面上实现有限状态机300。特别地,这些系统和/或转移模块52可以存储代表存储来自有限状态机300的可能状态的阵列或数据结构的可执行代码。此外,代码可以包括被配置为在转移处理100期间指向当前状态的指针。每个状态可以在代码内与查找表相关联,该查找表示出给定某个输入的下一个状态。因此,在转移处理100期间,当用于状态机300的可编程代码接收到输入时,代码可以利用查找表来确定要过渡到的下一个状态。如前所述,状态机300的当前状态可以在转移报告56中相对于全局级别和/或与特定旅客相关地显示。因此,通过被编程为在字面地实现状态机300,系统和/或转移模块52可以能够通过简单地查询状态机300的状态来报告转移处理100的当前状态,这使得,与连续查询不同系统以在处理100期间的任何给定点处计算已经发生哪些处理及其结果相比,系统和/或转移模块52能够实现资源节省和改进的响应时间。

一般而言,实现本发明实施例要执行的例程(无论是实现为操作系统的一部分还是具体的应用、组件、程序、对象、模块或指令序列,或甚至其子集)都可以在本文被称为“计算机程序代码”,或简称为“程序代码”。程序代码通常包括在不同时间驻留在计算机中的不同存储器和存储设备中的计算机可读指令,并且当由计算机中的一个或多个处理器读取和执行时,使该计算机执行执行体现本发明实施例的各个方面的操作和/或要素所需的操作。用于执行本发明实施例的操作的计算机可读程序指令可以是例如汇编语言或者以一种或多种编程语言的任意组合编写的源代码或目标代码。

本文描述的各种程序代码可以基于应用来识别,在该应用中程序代码被实现在本发明的具体实施例中。但是,应当认识到的是,以下的任何特定程序命名仅仅是为了方便而使用的,因此本发明不应当限于仅在由这种命名识别和/或暗示的任何具体应用中使用。此外,给定计算机程序可以被组织成例程、过程、方法、模块、对象等的通常无限数量的方式,以及程序功能可以在驻留在典型计算机内的各种软件层(例如,操作系统、库、api、应用、小应用程序等)之间分配的各种方式,应当认识到的是,本发明的实施例不限于本文描述的程序功能的具体组织和分配。

本文描述的任何应用/模块中体现的程序代码能够作为各种不同形式的程序产品单独地或集体地分布。特别地,可以使用其上具有计算机可读程序指令的计算机可读存储介质来分发程序代码,以使处理器执行本发明的实施例的各个方面。

固有地非暂态的计算机可读存储介质可以包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术实现的易失性和非易失性、可移动和不可移动的有形介质。计算机可读存储介质还可以包括随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、闪速存储器或其它固态存储器技术,便携式光盘只读存储器(cd-rom)或其它光学存储装置、磁带盒、磁带、磁盘存储装置或其它磁性存储设备,或者可以被用来存储期望信息并可以被计算机读取的任何其它介质。计算机可读存储介质不应当被接收为本身是暂态信号(例如,无线电波或其它传播电磁波、通过诸如波导的传输介质传播的电磁波,或通过导线传输的电信号)。计算机可读程序指令可以从计算机可读存储介质下载到计算机、另一种类型的可编程数据处理装置或另一种设备,或者经由网络下载到外部计算机或外部存储设备。

存储在计算机可读介质中的计算机可读程序指令可以被用来指引计算机、其它类型的可编程数据处理装置或其它设备以特定方式工作,使得存储在计算机可读介质中的指令产生包括指令的制品,其中指令实现在流程图、序列图和/或框图中指定的功能、动作和/或操作。计算机程序指令可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的一个或多个处理器,以产生机器,使得指令在经由一个或多个处理器执行时使得执行一系列计算,以实现在流程图、序列图和/或框图中指定的功能、动作和/或操作。

在某些替代实施例中,流程图、序列图和/或框图中指定的功能、动作和/或操作可以与本发明的实施例一致地重新排序、串行处理和/或并发处理。而且,流程图、序列图和/或框图中的任何一个可以包括比与本发明的实施例一致地所示的方框更多或更少的方框。

本文使用的术语仅用于描述特定的实施例,而不意在限制本发明的实施例。将进一步理解的是,当在本说明书中使用时,术语“包括”指定所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或多个其它特征、整数、步骤、操作、元件、组件和/或其组合的存在或添加。此外,就在详细描述或权利要求中使用术语“包含”、“具有”、“由...组成”或其变体的术语的程度而言,以类似于术语“包括”的方式,这些术语意在是包容性的。

虽然已经通过各种实施例的描述说明了所有发明,并且虽然已经相当详细地描述了这些实施例,但是申请人的意图不是将所附权利要

求的范围限定或以任何方式限制到这种细节。附加的优点和修改对于本领域技术人员将是容易看出的。因此,本发明的更广泛的方面不限于所述具体细节、代表性装置和方法以及示出和描述的说明性示例。因而,在不背离本申请人的总体发明构思的精神或范围的情况下,可以从这些细节中作出偏离。

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