【问题标题】:How can reserve Air Seats for all segments in a given PNR?如何为给定 PNR 中的所有航段预订 Air Seats?
【发布时间】:2016-01-16 18:48:06
【问题描述】:

我计划通过 Sabre 的 SOAP API 使用 <AirSeatRQ> 请求,但根据文档,您必须根据用户的偏好为每个航段上的每位乘客请求座位分配。

根据 Dev Studio 上的示例是这样的:

<AirSeatRQ ReturnHostCommand="false" TimeStamp="2011-10-27T15:30:00-06:00" Version="2.0.0">
<!--Repeat Factor=0-->
    <Seats>
        <Seat BoardingPass="true" ChangeOfGauge="true" NameNumber="1.1" Number="21A" Preference="AN" SegmentNumber="1"/>
    </Seats>
</AirSeatRQ>

此外,根据请求文档,&lt;Seats&gt; 请求的重复因子为零。这是否意味着如果我想为所有航段的所有乘客分配座位,我必须发送多个请求吗?

理想情况下,我希望在阅读 PNR 后自动为所有航段中的所有乘客分配座位。这可以通过 Web 服务实现吗?

【问题讨论】:

    标签: sabre


    【解决方案1】:

    检查&lt;PassengerDetailsRQ&gt; XML Schema 定义,可以发送&lt;AirSeatRQ&gt;。我猜你可以执行一个独立的&lt;AirSeatRQ&gt; 请求,但是将它与乘客详细信息捆绑起来更容易,而且我们不用向 Sabre 的 API 发出额外的请求。

    您必须为每个行程段中的每位乘客发送&lt;Seat\&gt; 请求。这是我为两条腿的行程做的一个工作示例,每条腿由两个成人的两个部分组成:

    我省略了大部分乘客详细信息属性并专注于 AirSeat 元素:

    <PassengerDetailsRQ Version="2.3.0">
        <PriceQuoteInfo HaltOnError="true"></PriceQuoteInfo>
        <SpecialReqDetails>
            <AddRemarkRQ>
                <RemarkInfo>
                    <Remark Code="H" Type="General">
                        <Text>THANK YOU FOR BOOKING MAURICIO CUENCA AIRLINES</Text>
                    </Remark>
                </RemarkInfo>
            </AddRemarkRQ>
            <AirSeatRQ>
                <Seats>
                    <Seat NameNumber="1.1" Preference="AN" SegmentNumber="1"/>
                    <Seat NameNumber="1.2" Preference="AN" SegmentNumber="2"/>
                    <Seat NameNumber="1.1" Preference="AN" SegmentNumber="3"/>
                    <Seat NameNumber="1.2" Preference="AN" SegmentNumber="4"/>
                </Seats>
            </AirSeatRQ>
            <SpecialServiceRQ HaltOnError="true">
                <SpecialServiceInfo></SpecialServiceInfo>
            </SpecialServiceRQ>
        </SpecialReqDetails>
        <TravelItineraryAddInfoRQ HaltOnError="true">
            <AgencyInfo></AgencyInfo>
            <CustomerInfo></CustomerInfo>
        </TravelItineraryAddInfoRQ>
    </PassengerDetailsRQ>
    

    这样,在创建 PNR 后,每个航段中所有乘客的所有座位都已分配,无需进一步请求分配座位。

    【讨论】:

      【解决方案2】:

      好像是这样的。

      &lt;Seats&gt; 中测试多个&lt;Seat&gt; 元素会返回架构验证错误。使用多个 &lt;Seats&gt; 元素时也是如此。

      目前看来唯一的选择是发送多个请求,每个航段上的每位乘客一个。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-16
        • 2020-09-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多