0

PNR を生成しようとしています。この目的のために、Air Book には「EnhancedAirBookRQ」、価格には「OTA_AirBookRQ」を使用しました。


以下にワークフローを示します。

(1) I used “BargainFinderMaxRQ” for search  
(2) Then I used “EnhancedAirBookRQ” for Air book and Price Iternary.  
(3) Then I used “PassengerDetailsRQ” to input passenger details 
(4) Last I want to end transaction.

いろいろ試してみましたが、うまく仕上げることができませんでした。「EnhancedAirBookRQ」で欠落している予約と価格の必要なフィールドと、「PassengerDetailsRQ」に進む方法。

//Request “EnhancedAirBookRQ”
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <SOAP-ENV:Header>
        <m:MessageHeader xmlns:m="http://www.ebxml.org/namespaces/messageHeader">
          <m:From>
            <m:PartyId type="urn:x12.org:IO5:01">malikexpress.com</m:PartyId>
          </m:From>
          <m:To>
            <m:PartyId type="urn:x12.org:IO5:01">http://webservices.sabre.com/sabreXML/2011/10</m:PartyId>
          </m:To>
          <m:CPAId>XF08</m:CPAId>
          <m:ConversationId>SWS-Test-Tool-CID</m:ConversationId>
          <m:Service m:type="OTA">Air Shopping Service</m:Service>
          <m:Action>EnhancedAirBookRQ</m:Action>
          <m:MessageData>
            <m:MessageId>mid:20001209-136453-2333@clientofsabre.com</m:MessageId>
            <m:Timestamp>2016-02-08T06:10:06Z</m:Timestamp>
            <m:TimeToLive>2016-02-08T06:10:06Z</m:TimeToLive>
          </m:MessageData>
          <m:DuplicateElimination />
          <m:Description>Passenger Details</m:Description>
        </m:MessageHeader>
        <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
          <wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/ACPCRTD!ICESMSLB\/CRT.LB!-3439407437566183902!431259!0</wsse:BinarySecurityToken>
        </wsse:Security>
      </SOAP-ENV:Header>
      <SOAP-ENV:Body>
        <EnhancedAirBookRQ xmlns="http://services.sabre.com/sp/eab/v3_2" version="3.2.0" IgnoreOnError="false" HaltOnError="false">
          <OTA_AirBookRQ>
            <HaltOnStatus Code="UC" />
            <HaltOnStatus Code="LL" />
            <HaltOnStatus Code="UL" />
            <HaltOnStatus Code="UN" />
            <HaltOnStatus Code="NO" />
            <HaltOnStatus Code="HL" />
            <OriginDestinationInformation>
              <FlightSegment DepartureDateTime="2016-06-06T01:40:00" ArrivalDateTime="2016-06-07T06:00:00" FlightNumber="7731" NumberInParty="1" ResBookDesigCode="Y" Status="NN">
                <DestinationLocation LocationCode="TPE" />
                <MarketingAirline Code="DL" FlightNumber="3" />
                <OperatingAirline Code="Dl" />
                <OriginLocation LocationCode="SFO" />
              </FlightSegment>
            </OriginDestinationInformation>
          </OTA_AirBookRQ>
          <OTA_AirPriceRQ>
            <PriceComparison AmountSpecified="787.00" />
            <PriceRequestInformation FutureTicket="true" Retain="true">
              <OptionalQualifiers></OptionalQualifiers>
            </PriceRequestInformation>
          </OTA_AirPriceRQ>
          <PostProcessing IgnoreAfter="false">
            <RedisplayReservation WaitInterval="2000" />
          </PostProcessing>
          <PreProcessing IgnoreBefore="true" />
        </EnhancedAirBookRQ>
      </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>


//Response “EnhancedAirBookRS”
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
  <soap-env:Header>
    <eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1">
      <eb:From>
        <eb:PartyId eb:type="URI">http://webservices.sabre.com/sabreXML/2011/10</eb:PartyId>
      </eb:From>
      <eb:To>
        <eb:PartyId eb:type="URI">malikexpress.com</eb:PartyId>
      </eb:To>
      <eb:CPAId>DF08</eb:CPAId>
      <eb:ConversationId>SWS-Test-Tool-CID</eb:ConversationId>
      <eb:Service eb:type="OTA">Air Shopping Service</eb:Service>
      <eb:Action>EnhancedAirBookRS</eb:Action>
      <eb:MessageData>
        <eb:MessageId>566216237794571760</eb:MessageId>
        <eb:Timestamp>2016-02-08T06:36:22</eb:Timestamp>
        <eb:RefToMessageId>mid:20001209-136453-2333@clientofsabre.com</eb:RefToMessageId>
      </eb:MessageData>
    </eb:MessageHeader>
    <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
      <wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/ACPCRTD!ICESMSLB\/CRT.LB!-3439407437566183902!431259!0</wsse:BinarySecurityToken>
    </wsse:Security>
  </soap-env:Header>
  <soap-env:Body>
    <EnhancedAirBookRS xmlns="http://services.sabre.com/sp/eab/v3_2">
      <ns2:ApplicationResults xmlns:ns2="http://services.sabre.com/STL_Payload/v02_01" status="Complete">
        <ns2:Success timeStamp="2016-02-08T00:36:22.412-06:00" />
        <ns2:Warning type="BusinessLogic" timeStamp="2016-02-08T00:36:20.139-06:00">
          <ns2:SystemSpecificResults>
            <ns2:Message code="WARN.SWS.HOST.ERROR_IN_RESPONSE">CODE - UC SEG STATUS NOT ALLOWED</ns2:Message>
            <ns2:Message code="0003">CODE - UC SEG STATUS NOT ALLOWED</ns2:Message>
          </ns2:SystemSpecificResults>
        </ns2:Warning>
      </ns2:ApplicationResults>
      <OTA_AirBookRS>
        <OriginDestinationOption>
          <FlightSegment ArrivalDateTime="06-07T06:00" DepartureDateTime="06-06T01:40" FlightNumber="7731" NumberInParty="001" ResBookDesigCode="Y" Status="NN" eTicket="true">
            <DestinationLocation LocationCode="TPE" />
            <MarketingAirline Code="DL" FlightNumber="7731" />
            <OriginLocation LocationCode="SFO" />
          </FlightSegment>
        </OriginDestinationOption>
      </OTA_AirBookRS>
      <TravelItineraryReadRS>
        <TravelItinerary>
          <CustomerInfo />
          <ItineraryInfo>
            <ReservationItems>
              <Item RPH="1">
                <FlightSegment AirMilesFlown="6469" ArrivalDateTime="06-07T06:00" DayOfWeekInd="1" DepartureDateTime="2016-06-06T01:40" ElapsedTime="13.20" FlightNumber="7731" NumberInParty="01" ResBookDesigCode="Y" SegmentNumber="0001" SmokingAllowed="false" SpecialMeal="false" Status="UC" StopQuantity="00" eTicket="false">
                  <DestinationLocation LocationCode="TPE" Terminal="TERMINAL 2" TerminalCode="2" />
                  <Equipment AirEquipType="77W" />
                  <MarketingAirline Code="DL" FlightNumber="7731" />
                  <Meal Code="B" />
                  <OperatingAirline Code="CI" CompanyShortName="CHINA AIRLINES" />
                  <OriginLocation LocationCode="SFO" Terminal="INTERNATIONAL TERMINAL" TerminalCode="I" />
                  <SupplierRef ID="DCDL" />
                  <Text>OPERATED BY CHINA AIRLINES</Text>
                  <UpdatedArrivalTime>06-07T06:00</UpdatedArrivalTime>
                  <UpdatedDepartureTime>06-06T01:40</UpdatedDepartureTime>
                </FlightSegment>
              </Item>
            </ReservationItems>
          </ItineraryInfo>
          <ItineraryRef AirExtras="false" InhibitCode="U" PartitionID="AA" PrimeHostID="1B">
            <Header>CURRENTLY DISPLAYING A PNR OWNED BY THE SABRE PRIME HOST</Header>
            <Header>RULES AND FUNCTIONALITY FOR THAT PRIME HOST WILL APPLY</Header>
            <Source PseudoCityCode="XF08" />
          </ItineraryRef>
        </TravelItinerary>
      </TravelItineraryReadRS>
    </EnhancedAirBookRS>
  </soap-env:Body>
</soap-env:Envelope>
4

3 に答える 3

2

EndTransaction で発生するエラーが何であるかを知っておくとよいでしょう。さらに、(PostProcessing 要素内の) PassengerDetails に EndTransaction があります。

PNR には 5 つの基本的な情報が必要です。 旅程 名 から受け取った
電話番号 発券時間制限




上記の情報など、PNR の詳細については、このFormatFinder リンクを確認することをお勧めします。

とにかく、関係ないかもしれませんが、EnhancedAirBook の応答で、予約された旅程が確認されなかったために価格設定が失敗したことがわかりました。Status="UC" が表示されます。これは、確認できないことを意味します。(UC または別のステータスの詳細については、Web サービスのサポートに直接確認することをお勧めします。)

于 2016-02-08T12:06:45.760 に答える
0

PNR 作成応答を適切に作成しても、この問題が発生することがあります。

これは、PNR リクエストを作成するまでに、リクエストしているキャビン タイプに利用可能なフライトがない可能性があるためです。少なくとも 1 つのフライト セクターが利用できないにもかかわらず、セイバーは PNR の作成を許可していません

次のセイバー コマンドを使用して、フライト セグメントの可用性を確認できます。 ここに画像の説明を入力

コマンドの詳細: http://www.emquest.ae/downloads/STM/Quick%20Reference%20English.pdf

于 2017-08-30T16:31:13.543 に答える