sabre - 如何为旅客添加特殊服务?
问题描述
我使用 SpecialServiceLLSRQ 为乘客添加特殊服务,但响应 Saber 返回错误,我不明白响应的含义是什么?这是我的要求:
<SpecialServiceRQ Version="2.3.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:ns2="http://services.sabre.com/STL/v01" ReturnHostCommand="true">
<SpecialServiceInfo>
<Service SSR_Code="SPML" SegmentNumber="1">
<PersonName NameNumber="1.1" />
<Text>TEST</Text>
</Service>
</SpecialServiceInfo>
</SpecialServiceRQ>
这是回应:
<SpecialServiceRS xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01" Version="2.3.0">
<stl:ApplicationResults status="NotProcessed">
<stl:Error type="BusinessLogic" timeStamp="2019-03-06T04:06:21-06:00">
<stl:SystemSpecificResults>
<stl:HostCommand LNIATA="623814">3SPML1/TEST-1.1</stl:HostCommand>
<stl:Message>.USE 4 ENTRY.NOT ENT BGNG WITH</stl:Message>
<stl:Message>3SPML1/TEST-1.1</stl:Message>
<stl:ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
</SpecialServiceRS>
我该如何解决这个问题?谢谢 !
解决方案
只是为了上下文化,SPML 它是 Special Meals 的首字母缩写词。尝试使用代码来指定您想要哪种食物。例如:VGML - 素食蛋奶餐
注意:对于 VVML - Vegetarian Vegan Meal(某些航空公司需要 VGML)。你必须考虑这种限制。
要添加 SSR,您必须检索预订 (TravelItineraryReadRQ),添加 SSR (PassengerDetailsRQ) 并保存信息 (PassengerDetailsRQ)
我正在抽象打开/关闭会话的因素,我假设您有一个有效的令牌正确插入到每个请求的标头中。
要检索预订 (TravelItineraryReadRQ):
<v3:TravelItineraryReadRQ TimeStamp="${P-S#Timestamp}" Version="3.8.0">
<v3:MessagingDetails>
<v3:SubjectAreas>
<v3:SubjectArea>FULL</v3:SubjectArea>
</v3:SubjectAreas>
</v3:MessagingDetails>
<v3:UniqueID ID="YOUR PNR CODE"/>
</v3:TravelItineraryReadRQ>
添加 SSR - (PassengerDetailsRQ):
<v3:PassengerDetailsRQ version="3.3.0" HaltOnError="true" IgnoreOnError="false">
<v3:SpecialReqDetails>
<!--Optional:-->
<v3:SpecialServiceRQ>
<v3:SpecialServiceInfo>
<!--Mandatory-->
<!--Repeat Factor=1-99-->
<v3:Service SegmentNumber="1" SSR_Code="VGML">
<v3:PersonName NameNumber="1.1"/>
<v3:VendorPrefs>
<v3:Airline Hosted="true"/>
</v3:VendorPrefs>
</v3:Service>
</v3:SpecialServiceInfo>
</v3:SpecialServiceRQ>
</v3:SpecialReqDetails>
</v3:PassengerDetailsRQ>
要保存添加的信息 (ER) - (PassengerDetailsRQ):
<v3:PassengerDetailsRQ version="3.3.0" HaltOnError="true" IgnoreOnError="false">
<v3:PostProcessing IgnoreAfter="false" RedisplayReservation="true">
<v3:EndTransactionRQ>
<v3:EndTransaction Ind="true">
<v3:Email Ind="true"/>
</v3:EndTransaction>
<v3:Source ReceivedFrom="APPNAME/USERNAME"/>
</v3:EndTransactionRQ>
</v3:PostProcessing>
</v3:PassengerDetailsRQ>
xmlns:v3="http://services.sabre.com/sp/pd/v3_3"
国际航空运输协会膳食代码
- ALML - 过敏原餐
- AVML - 亚洲素食餐
- BBML - 婴儿餐
- CAKE - 生日蛋糕(在 SAS 上)
- BLML - 清淡的一餐
- CHML - 儿童餐
- CLML - 庆祝蛋糕餐
- DBML - 糖尿病餐
- FPML - 水果拼盘餐
- GFML - 麸质不耐受餐
- HFML - 高纤维膳食
- HNML - 印度教非素食餐
- OBML - 日本便当餐(联合航空公司)
- JPML - 日本餐(在日本航空公司)
- JNML - 初级膳食
- KSML - 犹太餐
- KSMLS - 犹太餐(小吃)
- LCML - 低热量膳食
- LFML - 低脂餐
- NBML - No Beef Meal (中华航空)
- NFML - 无鱼粉(汉莎航空)
- NLML - 无乳糖餐
- LPML - 低蛋白餐
- PRML - 低嘌呤膳食
- LSML - 低盐餐
- MOML - 穆斯林餐
- ORML - 东方餐
- PFML - 无花生餐
- RFML - 难民餐(联合航空公司)
- SFML - 海鲜餐
- SPML - 特色餐,指定食物
- VJML - 耆那教素食餐
- VLML - 素食蛋奶餐
- VOML - 东方素食餐
- RVML - 素食生餐
- VVML - 素食素食餐(一些航空公司需要 VGML)
重要提示:当您添加文本以进一步定义通用 SSR 代码(例如 OTHS 或 SPML)时,请使用纯文本。您可以在单词之间使用空格。避免使用特殊字符,因为系统会返回错误消息:INVALID FREE TEXT CHARACTERS。修改并重新输入。请勿使用
推荐阅读
- php - HTML 中的 PHP 导致 SyntaxError: Invalid or unexpected token 错误?
- python - 将 zip 文件转换为 bytea 以存储在 postgres 中 - python
- security - Windows 10 和以“cookies”开头的文件名
- ios - 在 iOS 上播放 MPMusicPlayerController 时,AVAudioPlayer 不播放声音
- git - 在 Git 中是否可以将我未提交的更改视为合并冲突?
- swift - 在 Core Data 中获取多个 objectID?
- azure - 使用 terraform 创建 Azure 资源组
- cplex - Cplex Python API 中间 LB 和 UB 打印输出
- mysql - 使用 SQL 获取真实列
- android - 康耐视条形码 SDK 不扫描代码