E-Build API 用戶手冊模版_第1頁
E-Build API 用戶手冊模版_第2頁
E-Build API 用戶手冊模版_第3頁
E-Build API 用戶手冊模版_第4頁
E-Build API 用戶手冊模版_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

10E-BuildAPI用戶手冊編寫單位:中國航信研發(fā)中心總體設(shè)計(jì)部根底平臺組本手冊使用說明.......\l“_TOC_250043“1.1什么是訂座 5\l“_TOC_250042“旅客姓名記錄—PNR 5\l“_TOC_250041“訂座流程〔從查詢到出票〕 6\l“_TOC_250040“出票 6\l“_TOC_250039“民航系統(tǒng)的數(shù)據(jù)表述 6\l“_TOC_250038“留意事項(xiàng) 7二、什么是E-BuildAP...\l“_TOC_250037“E-BuildAPI. 8\l“_TOC_250036“E-BuildAPI的特點(diǎn) 8\l“_TOC_250035“主要功能列表 9\l“_TOC_250034“構(gòu)建自己的商務(wù)模式 10\l“_TOC_250033“便利的開發(fā) 10\l“_TOC_250032“完備的日志治理 11\l“_TOC_250031“確保使用安全 11四、使用之前..\l“_TOC_250030“E-BuildAPI客戶端 12\l“_TOC_250029“E-BuildAPI客戶端的運(yùn)行環(huán)境 12\l“_TOC_250028“E-BuildAPI客戶端的使用前提 12\l“_TOC_250027“開發(fā)環(huán)境部署 12五、開發(fā)指南..\l“_TOC_250026“AV解惑 15\l“_TOC_250025“AV指令介紹 15\l“_TOC_250024“E-BUILDAPI中AV類 15\l“_TOC_250023“獵取艙位信息的方法 16\l“_TOC_250022“\l“_TOC_250021“訂座指南 18\l“_TOC_250020“訂座流程圖 18\l“_TOC_250019“SS的使用 19\l“_TOC_250018“PNR封口 19\l“_TOC_250017“對于旅客姓名的特別說明 19\l“_TOC_250016“假A現(xiàn)象 20\l“_TOC_250015“PNR其它組的輸入 20\l“_TOC_250014“從費(fèi)改稅看FF 20\l“_TOC_250013“行動代碼的說明 21\l“_TOC_250012“航班變更的處理方法 22\l“_TOC_250011“外航訂座技巧 22\l“_TOC_250010“代理人系統(tǒng)與外航訂座系統(tǒng)的連接方式 22\l“_TOC_250009“連接狀態(tài)的查看 23\l“_TOC_250008“外航訂座小技巧 24\l“_TOC_250007“E-BuildAPI功能介紹 25\l“_TOC_250006“ASR〔機(jī)上座位預(yù)訂〕 25.\l“_TOC_250005“關(guān)于連接問題 26\l“_TOC_250004“訂座不成功問題 26\l“_TOC_250003“PNR修改問題 26\l“_TOC_250002“PAT問題 26\l“_TOC_250001“附1 27\l“_TOC_250000“E-BuildAPI指令接口 27本手冊使用說明E-BuildAPI申請流程和具體開發(fā)指南。對于完全不生疏訂座業(yè)務(wù)的開發(fā)人員,在本文第一章特地介紹訂座常識和根本概念。已經(jīng)生疏這方面業(yè)務(wù)的人員完全可以跳過這一章進(jìn)入后面的內(nèi)容。E-BuildAPI特點(diǎn)和根本功能簡介。第三章介紹了E-BuildAPI能夠解決哪些用戶的哪些需要。第四章介紹了使用E-BuildAPIE-BuildAPI的具體流程。E-BuildAPI兩個主要包的內(nèi)部關(guān)系圖清楚直觀的給出了圍繞航班查詢和訂座的這些類的關(guān)系和使用方法。E-BuildAPI的開發(fā)過程中E-BuildAPI支持中用戶API的用戶起到很好的幫助作用。本手冊的編寫得到了公司各方面的大力支持和協(xié)作,現(xiàn)在還很不完善。期望各方在讀后給出修改意見,并聯(lián)系我們,以便我們更好的改進(jìn)。李明中國航信研發(fā)中心總體設(shè)計(jì)部根底平臺組 Tel:86-10-84669396“mailto:ibesupport@travelsky“ibesupport@travelsky2023-08-05通信承受民航通信承受民航專有網(wǎng)絡(luò)通信1.1什么是訂座位信息。旅客想乘坐任何一個航空公司的客機(jī)出行,必需首先在主機(jī)系統(tǒng)預(yù)定一個座位。這就需要向主機(jī)詢問某時間、動身到達(dá)地是否有適宜的航班、可利用的座位。假設(shè)確定預(yù)訂該座位,系統(tǒng)就會生成一個記錄編號—PNR〔PassengerNameRecoder〕,這個訂座記錄將會跟隨旅客,從訂妥座位,行程修改,付款,出票,機(jī)場登機(jī),始終到航班起飛到達(dá)目的地后,該記錄才會被系統(tǒng)刪除。不管訂座的方式、流程如何簡潔多樣,原理都是這樣的。有受過訂座指令培訓(xùn)的專業(yè)操作員,在專有終端上,才能夠自如的與主機(jī)進(jìn)展信息交互。下面就是傳統(tǒng)訂座模式圖。操作終端訂座指令:AVFD、操作終端訂座指令:AVFD、SD、SS……主機(jī)主機(jī)上存放了大量航班信息、旅客訂座信息,主機(jī)處理來自各地的查詢、訂座懇求,旅客姓名記錄—PNR所謂的訂妥座位就是生成一個PN〔PassengerNameRecode,旅客訂座記錄口使之生效。旅客本次訂座的全部信息都記錄在這里。包括乘客姓名、航段信息〔包括起飛城市、到達(dá)城市、起飛時間、艙位等級等、座位數(shù)、乘客聯(lián)系方式、特別效勞要求、是否某航空公司的常旅客、票價信息、航空公司或代理人規(guī)定的出票時限等等。PNR中的信息格外豐富。旅客修改行程、航班改期、付款、出票、退票等信息都會表達(dá)出來。座位訂妥后,假設(shè)旅客不馬上購票,應(yīng)告知PNR號和出票時限,超過出票時限,原定座位將不予保存。訂座流程〔從查詢到出票〕查詢需要航班座位可利用狀況—>確定訂某航班某座位—>付款—>得到機(jī)票—>機(jī)場登機(jī),如以以下圖:確定訂票航班座位查詢確定訂票航班座位查詢?nèi)∑备犊畹菣C(jī)起飛出票

1.2訂座流程示意圖機(jī)。航空公司或代理人為了防止有人空耗座位,一般對出票時限有確定要求,一般最遲也2個小時出票。民航系統(tǒng)的數(shù)據(jù)表述要看得懂航班信息、PNR信息首先必需了解以下幾個數(shù)據(jù)表述:航空公司代碼:由二位英文字母表示,如中國國際航空公司:“CA”, 德國漢莎航空公司L。在完成客運(yùn)行為時,也就是承運(yùn)人兩字碼。城市三子碼:動身地、到達(dá)地均用城市三子碼表述,如:中國北京PE”,美國洛杉LA艙位等級:F――頭等艙。C――公務(wù)艙Y——經(jīng)濟(jì)艙〔一般艙。在票價計(jì)算時以經(jīng)濟(jì)艙成人全票價為根底票價。頭等艙按根底票價的150%計(jì)算,公務(wù)艙按根底票價的130%計(jì)算。(A)和折扣票價〔B〕,YB80,就表示這是一張八折票,按80%計(jì)算。航段:航段是指航線點(diǎn)與點(diǎn)之間的航程,航線的經(jīng)停點(diǎn)越多,航段就越多,航線由一個或多個航段組成。經(jīng)停與轉(zhuǎn)飛:這是兩個不同的概念。經(jīng)停發(fā)生在一個航段的飛行中,該航段經(jīng)停多少是均發(fā)生了變化。航班號MU5143。航班號編排有規(guī)律可循,這里不再詳述。國家兩字碼:中華人民共和國“C”,美國“U幣種:人民幣“CNUS留意事項(xiàng)PNR里可以訂幾個不同航班的座位。人以上〔含10人,航程、乘機(jī)日期和航班一樣的旅客訂座。團(tuán)隊(duì)PNR必需定義團(tuán)名。最遲出票時間的規(guī)定,這些在訂票時應(yīng)當(dāng)留意。E-BuildAPIE-BuildAPIE-BuildAPI〔原稱IBE〕,是由中國航信開發(fā)的互聯(lián)網(wǎng)訂座引擎。它轉(zhuǎn)變了傳統(tǒng)的方傳統(tǒng)訂座業(yè)務(wù)的解決方案。E-BuildAPI產(chǎn)品在中國航信的電子商務(wù)效勞器上封裝了與主機(jī)之間的通訊,再把對主通信方式基于TCP/IP協(xié)議的互聯(lián)網(wǎng)通信方式機(jī)的操作依據(jù)不同功能封裝成客戶端API公布客戶;客戶端與航信電子商務(wù)效勞器使用互E-BuildAPI通信方式基于TCP/IP協(xié)議的互聯(lián)網(wǎng)通信方式網(wǎng)站掃瞄者:通過網(wǎng)頁提交訂座懇求,輸入個人信息客戶端效勞器:接收用戶的訂座懇求,網(wǎng)站掃瞄者:通過網(wǎng)頁提交訂座懇求,輸入個人信息客戶端效勞器:接收用戶的訂座懇求,發(fā)送用戶懇求IBEServer監(jiān)聽端口,接收封裝的懇求,編譯并發(fā)送給主機(jī)主機(jī)響應(yīng)IBEServer發(fā)送來的懇求2.1訂座流程示意圖E-BuildAPI的特點(diǎn)E-BUILDAPIAPI〔應(yīng)用程序接口〕方式的接口。因此:E-BuildAPI本身不是一個完整的應(yīng)用系統(tǒng),它是構(gòu)成客戶商務(wù)系統(tǒng)的重要組件;E-BuildAPI的根底上進(jìn)展二次開發(fā);E-BuildAPI供給訪問中國航信CRS和ICS系統(tǒng)的AP設(shè)計(jì);基于標(biāo)準(zhǔn)開放的TCP/IP協(xié)議,能夠運(yùn)行在多種應(yīng)用平臺上;主機(jī)指令格式的更改不會影響客戶端程序的穩(wěn)定性;開放的產(chǎn)品,隨著用戶需求和應(yīng)用增加其功能將不斷完善,并具有很好版本兼容性;互連簡潔,效率高;使用安全,效勞器端具有完備的日志記錄與分析功能;主要功能列表航班時刻查詢航班座位可利用狀況查詢航班經(jīng)停點(diǎn)查詢運(yùn)價查詢散客、團(tuán)隊(duì)旅客實(shí)時訂座實(shí)時旅客訂座記錄查詢散客、團(tuán)隊(duì)旅客訂座記錄修改刪除航班最低運(yùn)價信息查詢?nèi)?、您為什么需要?gòu)建自己的商務(wù)模式不管您是代理人、航空公司、或是為代理人供給效勞的商家,您可以使用E-BuildAPI輕松構(gòu)架您的商務(wù)模式,E-BuildAPI作為連接訂座主機(jī)的API,供給網(wǎng)上查詢航班、訂票等效勞支持。您在構(gòu)建企業(yè)商務(wù)規(guī)律時可以充分利用E-BuildAPI,將它構(gòu)建到自己的高級組件中去,從而增加企業(yè)的各項(xiàng)效勞功能。如圖:各種企業(yè)級應(yīng)用各種企業(yè)級應(yīng)用Web效勞應(yīng)用效勞企業(yè)業(yè)務(wù)規(guī)律圖企業(yè)級組件〔EJB/bean/〕企業(yè)級文檔根底組建IBE其他API其他根底組件訂座主機(jī)3.1訂座流程示意圖便利的開發(fā)本手冊的使用指南局部將會指導(dǎo)您順當(dāng)開頭E-BuildAPI的使用;javadoc中各個類和方法的具體說明;開發(fā)前期我們將會給與確定程度的使用指導(dǎo)〔不包括現(xiàn)場參與開發(fā);在開發(fā)中消滅的問題您可以在問題集尋求解決方法;完備的日志治理E-BuildAPI日志分析機(jī)制查看。假設(shè)消滅非法操作,系統(tǒng)將會對操作進(jìn)展追蹤。這樣保證用戶的正常使用安全和糾錯處理。確保使用安全E-BuildAPI產(chǎn)品完善的安全機(jī)制將會保證您的使用安全。身份認(rèn)證機(jī)制安全的傳輸E-BuildAPI機(jī)的操作依據(jù)不同功能封裝成客戶端API公布給我們的客戶;客戶端與航信電子商務(wù)效勞器使用tcpE-BuildAPI獨(dú)有的編碼解碼方式使得信息傳輸中的安全得以保障。四、使用之前E-BuildAPI客戶端E-BuildAPI分為客戶端與效勞器端兩個局部。E-BuildAPI用戶用以同E-BuildAPIServerE-BuildAPI客E-BuildAPIServerE-BuildAPI客戶端并沒有特別的要求。E-BuildAPI客戶端的運(yùn)行環(huán)境Java產(chǎn)品包使用者:擁有公網(wǎng)〔Internet〕固定IP;JDK開發(fā)環(huán)境;Com版產(chǎn)品包使用者:擁有公網(wǎng)〔Internet〕固定IP;微軟開發(fā)平臺(windows2023及以上);E-BuildAPI客戶端的使用前提要求客戶有確定的技術(shù)開發(fā)力氣;合法的代理人或航空公司身份〔假設(shè)需要預(yù)定功能;E-BuildAPI產(chǎn)品包〔Java包或.dll文件。開發(fā)環(huán)境部署javaibeclient.JAR,將它部署于應(yīng)用pertiesjavaClassPath中。[留意]確保pertiesClassPath中的唯一性,以免在配置修改時,定位不到正確的文件。ibeclient.JAR的構(gòu)造:sky.ibe.client包括了航班查詢等常用指令sky.ibe.client.pnr 包括了PNR預(yù)定處理相關(guān)的指令sky.ibe.exceptions包括了全部的錯誤信息sky.util 供給了一些用于支持上述類的公用類sky.ibe.clientsky.ibe.client.pnr是用戶最常接觸的功能包,下面的兩個圖將包中的類之間關(guān)系加以簡要介紹:航班可利用 AV座位查詢:AvResultAvItemAvSegment航班時刻顯示: SKSkResultSkItemSkSegment航班經(jīng)停點(diǎn)及起降時間查詢:FFFFResult票價查詢:FDFDResult旅客名單提取:MLMultiResultMultiSegment MultiItem航班飛行時間顯示:DSGDsgResultDsgSegmentCsky.ibe.client4.2sky.ibe.client包構(gòu)成Csky.ibe.client機(jī)上座位預(yù)定:機(jī)上座位顯示:ASRItemADMASRAdmResultBSP出票:DZ電子票出票:ETDZsky.ibe.client.pnr建PNR記錄修改PNR信息sky.ibe.client.pnr建PNR記錄修改PNR信息增加旅客組BookPassenger增加航段組BookAirSeg增加聯(lián)系組BookContact增加開賬地址組BookBA增加備注組BookRMKSellSeatSSResultSSSegment增加其它效勞組BookOSI增加票價組BookFNPNRManage增加票價計(jì)算組BookFCBookInformation增加付款方式組BookFP增加簽注組BookEI增加?jì)雰盒畔ookInfant增加特別效勞組BookSSR增加旅游代碼組BookTCPNRPassenger 旅客信息PNRAirSeg航段信息PNRContact聯(lián)系組電子票出票:BARRPNRBA開賬地址組PNRSSR特別效勞組提取PNR信息:RTRTResultPNRInfant嬰兒信息PNROSI其他效勞信息PNROther其他組信息PNRResp責(zé)任組信息PNRRMK備注組信息PNRTkt出票信息假設(shè)您現(xiàn)有的開發(fā)平臺是微軟開發(fā)平臺,可以使用我們供給的IBECom.dll。相應(yīng)的配Windowsibeclient.JAR。五、開發(fā)指南E-BuildAPIJava開發(fā)為例進(jìn)展現(xiàn)E-BuildAPI來實(shí)現(xiàn)從查詢航班,座位預(yù)定,PNR提取的一個根本訂票流程。建議您將本局部和API具體說明〔javadoc〕結(jié)合使用。查看類的具體定義和使用方法。AV解惑AVE-BuildAPIAV函數(shù)和終端上的信息是如何對應(yīng)的,其FD,SKAV的原理一樣。AV指令介紹AV指令,查詢航信主機(jī)系統(tǒng)內(nèi)全部航空公司的全艙位實(shí)時航班信息,供給簡潔有效的航班信息實(shí)時查詢通道,查詢指定日期及航線上的可用航班信息〔航班號,艙位,起飛到達(dá)時間,經(jīng)停點(diǎn)等,支持多種查詢參數(shù),支持對電子客票航段的查詢。E-BUILDAPIav指令的類共四個:sky.ibe.client.AVsky.ibe.client.AvRsky.ibeAPI.client.AvIsky.ibe.client.AvSegmentAV函數(shù)輸入:getAvailability(“PEK”,”XMN”,”2023090500:00:00”)對應(yīng)主機(jī)指令:AV:PEKXMN/05SEP045.1AV類返回結(jié)果存儲示意圖一次V的結(jié)果是一個查詢返回結(jié)果〔vResult對象AvItem對象,每一條航班信息可能包含一個或多個AvSegmentAVResult中的全部的具體航段信息都保存AVSegment中。特別提示:eTermAV時,假設(shè)當(dāng)天沒有查詢的城市對航班,會顯示離查詢?nèi)掌谧罱惶斓暮桨嘈畔?。例如:E-Build APIAVeTerm信息,會顯示離查詢?nèi)掌谧罱惶斓暮桨嘈畔?。例如:try{AvResultavres=avExample.getAvailability(“PEK“,“CGD“,“2023051200:00:00“,“ALL“,true,true);System.out.println(avres);}catch(Exceptione){e.printStackTrace;}請開發(fā)人員留意查詢結(jié)果的日期信息,以避開把查詢結(jié)果的日期弄混。獵取艙位信息的方法AVResult中獵取艙位信息的方法有兩種:一種是通過輸入艙位名稱來獵取F艙的艙位狀況,可以用getCangweiinfoOf(?F?)得到。另外一種是首先依據(jù)艙位等級獲得艙位名稱,然后再依據(jù)艙位名稱得到具體的座位數(shù)StringBufferStringBufferstrtmp=newStringBuffer;intk=0;while(k<26){charcangwei=avseg.getCangweiCodeSort(k);if(cangwei==”-”)break;strtmp.append(cangwei);strtmp.append(avseg.getCangweiinfoOfSort(cangwei));strtmp.append(””);k++;}這樣就能夠得到等同于終端的輸出顯示。AVFD相結(jié)合為了預(yù)定一個座位,首先需要供給三個信息:動身地,目的地和時間。這樣就能夠進(jìn)展AV操作,在確定航班有座的狀況下,可能更關(guān)心艙位的價格,主機(jī)指FD可以用來查詢航班價格。我們可以把航班座位查詢和艙位價格查詢組合在一起,以便獲得更加直觀的顯示結(jié)果。AVAVFD查詢價格,這樣做每次都要和主機(jī)進(jìn)展交互,效率低下,我們不建議您承受這種方法。建議作法AVAVResultAV的航班查詢和一次FD的全航空公司的FD價格查詢把航班和價格信息插入到定義的構(gòu)造中。小技巧:為了便于查詢航班中艙位的價格,可以使用HashTable來保存艙位的價格。具HashTableKeyHashTableFDResult來查詢,同時把查詢結(jié)果插入到HashTable中。privateHashtablepriceTable=newHashtable;Stringkey=airCorp+String.valueOf(cabinName);if(priceTable.containsKey(key)){tmpCabin.setSingleprice((String)priceTable.get(key));}else{StringsinglePrice=findInFDResult(fdRes,airCorp,if(singlePrice==null)tmpCabin.setSingleprice(“Unknown“);

String.valueOf(cabinName));else{}

tmpCabin.setSingleprice(singlePrice);priceTable.put(key,singlePrice);}}訂座指南訂座流程圖對盡可能少的對盡可能少的AV結(jié)果FD航班座位查詢:AV票價查詢:FD封口之前必需確保已經(jīng)參與這四個組,出票時限組是指定該P(yáng)NR最遲出票時間將選定航段參與Pnr航段組(SellSeat.addAirSeg)參與Pnr姓名組(SellSeat.addPassenger)參與Pnr聯(lián)系組〔SellSeat.addContract)參與Pnr出票時限(SellSeat.setTimelimit)??封口,使該pnr生效(SellSeatmit1)提取PNR當(dāng)前信息給訂票人作確認(rèn)〔RT〕PNR一旦生成,參與其他組的方式可以通過PnrManage對PNR修改來完成出票之前必需增加FN、FC、FP組.其它組可選擇參與參與FN組參與FC組保證您有出票的權(quán)限配置參與FP組出票〔ETDZ〕5.2訂票流程圖如圖,預(yù)訂機(jī)票通常的流程是:1.查詢航班可用座位、票價。確定某航段的一個或多個座位。將該航段參與到生成PNR中,作為航段組。當(dāng)前PNR參與姓名組、聯(lián)系組、出票時限組〔這些信息可以從網(wǎng)站數(shù)據(jù)庫已保存用戶信息中提取,然后對PNR封口。留意:航段組、姓名組、聯(lián)系組、出票時限組這四個組是構(gòu)成一個生效的PNR最根本信息,也就是說要想讓一個生成PNR進(jìn)展封口操作使之生效,必需保證包含了這四個組。對PNR,姓名組中要定義團(tuán)名、人數(shù)。PNRFN、FC、FP組Dz出票SS的使用E-BUILDAPI需要明確的一點(diǎn)是:全部的函數(shù)之間沒有相關(guān)性,他們之間都是相SSAVSD來訂取eterm訂票時常用的方法。SellSeatsellseat=newSellSeat;(方法一)sellseat.addAirSeg(“CA1301”,?Y?,“PEK”,”CAN”,”NN”,1,”2023-10-20”)〔方法二〕BookAirSegbairseg=SellSeatsellseat=newSellSeat;(方法一)sellseat.addAirSeg(“CA1301”,?Y?,“PEK”,”CAN”,”NN”,1,”2023-10-20”)〔方法二〕BookAirSegbairseg=newBookAirSeg(“CA1301”,?Y?,“PEK”,”CAN”,”NN”,1,”2023-10-20”);sellseat.addAirSeg(bairseg);PNR封口sellseat.addAdult(“ZHANG/QIANG”);sellseat.addContact(“66017755-2509”);sellseat.setTimelimit(“2023-10-2012:00:00”);Stringpnrno=sellseatmit;一個PNR的最根本信息包括:姓名組,航段組,聯(lián)系組,出票時限組,只要生成了這sellseat.addAdult(“ZHANG/QIANG”);sellseat.addContact(“66017755-2509”);sellseat.setTimelimit(“2023-10-2012:00:00”);Stringpnrno=sellseatmit;對于旅客姓名的特別說明英文姓名輸入時必需使用“/”來分割,并且在整個姓名中只能有一個“//”前的局部中的空格全部被無視,在“/”后的局部中的空格被保存。英文姓名最長不能超過5528個。對于中文姓名和中英文混合姓名的輸入,英文必需在中文之后,不能間隔輸入。中文姓名輸入建議小于十個漢字。如名叫“地力不拉提玉素卜江艾力”的旅客就不能完成出票,這些條件都應(yīng)當(dāng)在界面上進(jìn)展限制,以免為后臺維護(hù)帶來麻煩。此外,假設(shè)姓名承受中文,編碼方式必需為GBK。A現(xiàn)象“假A〔即10〕個座位,但是在PNR封口時消滅艙位沒有訂妥的狀況〔如何看訂妥沒有訂妥座位請參考下面的章節(jié),這時候建議使用sellseatmit1方法,這個方法除了返回PNR信息還會返回一個航段信息的集合,通過逐一檢查每個航段中的行動代碼來推斷是否訂妥座位。PNR其它組的輸入在PNR中除了輸入必要的姓名組,航段組,聯(lián)系組,設(shè)定出票時限之外,還可以輸入其它的組信息,為了自動出票,可以輸入F〔票價組F〔票價計(jì)算組F〔付款方式組;為了保證民航安全可以輸入SSRFOID〔輸入身份認(rèn)證信息息〔如支付信息〕RMK〔特別效勞信息組。下面具體講解一下這些組信息輸入時的留意事項(xiàng):PNR的內(nèi)容由各種組構(gòu)成,主要有:姓名組、航段組、聯(lián)系租、出票時限組、票價組、備注組、責(zé)任組、簽注組等等。一個組對應(yīng)了PNR記錄中的一行或幾行。其它組說明:比較常用到的還有:SSR〔特別效勞組〕的使用:乘客的身份證號SSR_FOID添加常旅客信息SSR_FQTV添加護(hù)照信息SSR_PSPTOSI〔其它信息組〕的使用:重要旅客VIPRMK〔備注組〕的使用:備注組是用來記錄某些可能有助于了解旅客狀況的信息。假設(shè)有什么需要說明的文字,RMK來向訂座說明。使用時留意不得超過三條。javadoc。從費(fèi)改稅看FF問題是:PNR中每個航段的機(jī)型依據(jù)機(jī)型查詢機(jī)場建設(shè)費(fèi)的額度FN,F(xiàn)C項(xiàng)上。為了得到每個航段的機(jī)型,可以通過使用FF指令來查詢機(jī)型。FFFFff=newFF;FFResultffres=ff.flightTime(“CA1301”,”20SEP04”);Stringplanemodel=ffres.getPlaneModel;通過FD的接口findPrice(Stringorg,Stringdst,Stringdate,Stringairline,StringplaneModel,StringpassType,booleanfullFareBasis)建設(shè)費(fèi)的金額。20239月公布的機(jī)場建設(shè)費(fèi)計(jì)算通知,僅作參考:對于乘坐以下機(jī)型的國內(nèi)支線航班的,每航段機(jī)場費(fèi)為10元人民幣:機(jī)型名稱機(jī)型名稱CESSNA208(大篷車)DONIER328ATR-72CRJ-200ERJ145208D38AT7CRJERJEM4DH8YN2FDfindPrice(Stringorg,Stringdst,Stringdate,FDfindPrice(Stringorg,Stringdst,Stringdate,Stringairline,StringplaneModel,StringpassType,booleanfullFareBasis)得出。行動代碼的說明真實(shí)占座狀況。如NN,表示要申請座位,系統(tǒng)在承受申請后可能返回HK,就是表示承受這個申請,在該航班上預(yù)留了座位給訂座人,也可能返回HL,就是現(xiàn)在沒有座位,不過有適宜的座位時,系統(tǒng)會自動占上這個座位。在日常使用中比較重要的行動代碼:NN,表示提出申請需要占座HK,KL,KK,TK,DK,表示占座成功。RR,表示已經(jīng)出票或者馬上出票行動代碼描行動代碼描述封口〔@〕后狀態(tài)及含義DR再確認(rèn)RR再確認(rèn)DK直接占座HK確認(rèn)DW候補(bǔ)HL候補(bǔ)KK確認(rèn)HK確認(rèn)KL從候補(bǔ)狀態(tài)確認(rèn)HK確認(rèn)SS銷售HK確認(rèn)TK確認(rèn),提示旅客航班時刻已更改HK確認(rèn)TL候補(bǔ),提示旅客航班時刻已更改HL候補(bǔ)TN申請,提示旅客航班時刻已更改HN申請NN申請HN申請行動代碼NOUCUN

描 述航空公司不允許銷售不承受候補(bǔ)或訂座,航班已關(guān)閉〔不承受申請〕航班取消

封口〔@〕后狀態(tài)及含義PNRPNRPNRUS 不承受訂座〔航班已關(guān)閉,可以候補(bǔ)〕 HL 候補(bǔ)UU 不承受訂座〔可以候補(bǔ)〕 HL 候補(bǔ)XL 取消候補(bǔ)XX 取消確認(rèn)或申請

PNRPNR航班變更的處理方法E-BUILDAPI沒有供給關(guān)于航班變更的通知功能,也不建議用戶通過定時程序循環(huán)提取已經(jīng)訂票的PNR,再通過檢測航段狀態(tài)的方法來推斷航班變更狀況,這樣會對主機(jī)系統(tǒng)產(chǎn)生很大的壓力,一經(jīng)查出,后果自負(fù)??尚械姆椒ㄊ窃诰W(wǎng)站后臺人為通過監(jiān)控Queue信息來獲得航班變更信息。外航訂座技巧代理人系統(tǒng)與外航訂座系統(tǒng)的連接方式CACAMU航信航空公司系統(tǒng)〔1E〕無縫連接航信代理人系統(tǒng)〔1E〕CZ...國外GDS(1W)AMADEUS聯(lián)盟SQUABR...UA...NW...5.3國內(nèi)外訂座主機(jī)連接圖中航信的主機(jī)系統(tǒng)分航空公司系統(tǒng)和代理人系統(tǒng)兩局部。兩系統(tǒng)主機(jī)硬件和數(shù)據(jù)庫相互獨(dú)立,但由于使用了先進(jìn)的技術(shù)手段,故系統(tǒng)聯(lián)接極其嚴(yán)密,隨時進(jìn)展數(shù)據(jù)交換。例如航空公司的航班信息傳送到代理人系統(tǒng),代理人建立的訂座記錄也會傳給航空公司系統(tǒng)。上感覺不到是在不同系統(tǒng)進(jìn)展銷售,銷售的實(shí)時性和準(zhǔn)確性是格外高的。*直接存取NN-SS-HK有*直接存取NN-SS-HK有從連接角度考慮,與代理人系統(tǒng)聯(lián)接的航空公司大致分為如下幾類:直聯(lián)的航空公司〔圖中黃色箭頭AV、SD數(shù)據(jù)都會準(zhǔn)確;通過其它系統(tǒng)〔國外分銷系統(tǒng)/航空公司系統(tǒng)〕聯(lián)接的航空公司〔圖中紫色箭頭:與該系統(tǒng)間的聯(lián)接等級高的航空公司,----AV、SD與該系統(tǒng)間的聯(lián)接等級低的航空公司,----AV、SD無聯(lián)接關(guān)系的航空公司〔圖中未列出, 無法取得數(shù)據(jù),只能申請座位。連接狀態(tài)的查看與航空公司系統(tǒng)的連接狀態(tài)可以直接通過AVAVSegment.getlink方法可以查看。依據(jù)返回的連接標(biāo)識,我們可以推斷進(jìn)展哪些操作。航班顯示標(biāo)識與聯(lián)接方式比照表國內(nèi)航空公司:聯(lián)接方式 SS結(jié)果記錄編示的標(biāo)識說明 顯示結(jié)果號返回DS#無縫聯(lián)接 直接看到航班的準(zhǔn)確的艙位狀態(tài)DK→HK有及可利用座位數(shù)DW→HLNN→HNAS#無縫聯(lián)接 與上述內(nèi)容一樣,只是提示營業(yè)員DK→HK有該航班做過修改DW→HLNN→HN國外航空公司:聯(lián)接方式 AV加航空公司SS結(jié)果示的標(biāo)識說明 顯示結(jié)果 代碼號返回DK→HKDS*直接銷售DW→HL有NN→HN同CRS存航班座位狀況顯示具體航班座DK→HKTY*在直接銷不明,顯示Z 售的聯(lián)接 AV后加代碼繼數(shù)字DW→HLNN→HN有AB*直接響應(yīng)續(xù)查詢NN-SS-HK有CRS存DK→HKTY在直接銷ZDW→HL有售的聯(lián)接通過申請訂座NN→HN直接響應(yīng)AB存在記錄編號反響Z通過申請訂座NN-SS-HK有空格無聯(lián)接Z,NN→HN無通過申請訂座外航訂座小技巧1)航班查詢您要查詢或銷售國外航空公司的航班座位時,為了得到準(zhǔn)確的航班信息,一般需要兩個步驟:AV對該航線的承運(yùn)航空公司的航班狀況進(jìn)展查詢,如>AV:LONLAX;對于有“*”標(biāo)識的航班,承受指定航空公司的方式進(jìn)一步查詢,以便得到更為準(zhǔn)確的航班數(shù)據(jù)。其次次數(shù)據(jù)提取是實(shí)時的、準(zhǔn)確的。建議大家在訂座時,要依據(jù)其次次(即加上航空公司代碼)提取而得到的航班信息。座位預(yù)訂與修改階段〔1)PNR封口要確認(rèn)記錄編號返回回,存在了記錄編號說明在航空公司系統(tǒng)中訂上了座位。PNR中航空公司系統(tǒng)的記錄編號〔需要留意的是各航空公司記錄編號返回格式不同〕PNR的操作在對所訂外航座位進(jìn)展分別操作時確定要留意確認(rèn)該外航允許分別PNR,或得到對方許可對外航的分別確定要等分別出來的局部的外航記錄編號返回,才算完成,在此期間切PNR進(jìn)展其它操作,否則可能造成與外航記錄的不全都,影響旅客正常登機(jī)。3PNR狀態(tài)。修改姓名的操作絕大局部國外航空公司不允許修改姓名,或只允許修改局部姓名,假設(shè)違反,一般會取消代理人的訂座。PNRQUEUEDRMKCA/XXXXX/QUEUEDFORMANUALHANDLING/XXXXXXXXXX假設(shè)PNR中消滅上述信息,表示訂座或修改操作不成功,確定要通知航空公司或與中航信在線支持中心聯(lián)系處理。對于重復(fù)訂座重復(fù)訂座也是航空公司取消您的預(yù)訂的一個重要緣由,如無特別理由請不要重復(fù)訂座。對于重復(fù)訂座航空公司一般均會只保存一套。有時航空公司會以O(shè)SI,SSR的形式通知你,PNR中此類說明項(xiàng)。出票階段公司取消。E-BuildAPI功能介紹E-BuildAPI是一個不斷完善的產(chǎn)品。盡管目前發(fā)放的E-BuildAPI產(chǎn)品包中已包含了機(jī)票查詢、預(yù)訂等根本功能,還有一些拓展功能。但是為了使其使用更便利、功能更完善,E-BuildAPI的開發(fā)工作。下面對您介紹一下最的一些功能開發(fā):ASR〔機(jī)上座位預(yù)訂〕首先必需明確,訂座系統(tǒng)的機(jī)上座位預(yù)訂在功能上不等同于離港值機(jī)中的指定機(jī)上座位。在訂座中預(yù)訂某航班上的某個座位,并指定座位在機(jī)艙中具體位置,這是為旅客供給的一項(xiàng)效勞。座位信息會保存在旅客訂座的pnr記錄中,在離港值機(jī)時,旅客的座位會默認(rèn)為vip旅客座位沖突等等緣由,最終不能坐在最初預(yù)訂的座位,這都是有可能的。也就是說,最終打算機(jī)上座位的是機(jī)場值機(jī)系統(tǒng)。固然訂座中的機(jī)上預(yù)訂將賜予參考和默認(rèn)值的功能。有關(guān)機(jī)上座位預(yù)訂的類主要有:機(jī)上座位圖查看:ADM、AdmResult機(jī)上座位預(yù)訂:ASR、ASRItem他們均存在于sky.ibe.client.pnr包中,使用方法可參看以下代碼:Stringpnrno=“J900L“;Stringpnrno=“J900L“;ADMadm=newADM;AdmResultadmresult=null;ASRasr=newASR;ASRItem(“趙炎“,“12A“,2);Vectorv1=newVector;v1.addElement(asritem);asr.doASR(pnrno,v1);admresult=adm.advanceDisplayMap(pnrno,2);System.out.println(admresult.getSeatmap);六、使用中的問題集關(guān)于連接問題perties文件正常設(shè)置而且沒有被改動。假設(shè)確實(shí)找不到出錯原因,再聯(lián)系E-BUILDAPI技術(shù)支持人員賜予幫助。確認(rèn)連接成功E-BUILDAPI6891E-BUILDAPI客戶端的連接,確認(rèn)網(wǎng)E-BUILDAPItelnet航信E-BUILDAPI6891端口:telnet***.***.***.***6891〔***E-BUILDAPIip地址〕telnetE-BUILDAPI效勞拒絕的特別〔返回結(jié)果消滅IBE_EXCEPTION即可認(rèn)為網(wǎng)絡(luò)已經(jīng)開通,在確認(rèn)您申請開通的E-BUILDAPIE-BUILDAPI效勞許可。訂座不成功問題E-BUILDAPI客戶端的開發(fā)人員對民航訂座學(xué)問的不了解造成的。E-BUILDAPIE-BUILDAPI的懇求照舊需要遵E-BUILDAPI返回的信息查閱相關(guān)特別說明,協(xié)作中國航信《訂座業(yè)務(wù)操作手冊》找出問題所在。在確定時期內(nèi),我們的技術(shù)支持人〔此時您應(yīng)當(dāng)供給錯誤發(fā)生的時間,您的程序進(jìn)展的操作以及返回的特別,有可能的話將程序代碼段通過電子郵件發(fā)送給我們。PNR修改問題PnrManage的方法可以修改預(yù)訂成功PNR中的乘客姓名、航段、證件號、出PNRPNR項(xiàng)的刪除。請認(rèn)真閱讀該類的JAVADOCPAT問題eTERMPAT;APnrManage類中通過doPat(Stringpnrno,Stringoption,Stringtype,intindex,booleanifinput)doPatASecond(PATResultpatres_pre,Stringpnrno,intindex,intpsgid)兩步完成自動運(yùn)價計(jì)算。1javaE-BUILDAPI代碼簡潔范例E-BuildAPI指令接口訂票流程主要應(yīng)用E-BuildAPI指令接口留意:本文檔全部測試程序使用城市對,日期為編寫程序時所寫,如要參考這些程序,請更換日期〕E-BuildAPI訂票過程1〕第一步:av查詢程序如下:importimportsky.ibe.client.*;importsky.ibe.exceptions.IBEException;importsky.util.QDateTime;publicpublicclassStep_1_AV{publicstaticvoidmain(String[]args){try{AVav=newAV;AvResultavres=av.getAvailability(“PEK“,“SHA“,QDateTime.stringToDate(“20230901“,“yyyymmdd“),true,true);System.out.println(avres);System.out.println(“-------------------------------------------“);}catch(IBEExceptione){e.printStackTrace;}catch(Exceptione){e.printStackTrace;}}}得到的結(jié)果如下:其次步:訂票importimportjava.util.Calendar;importjava.util.Date;importimportsky.ibe.client.pnr.SellSeat;importsky.ibe.exceptions.IBEException;importsky.util.QDateTime;publicpublicclassStep_2_SellSeat{publicstaticvoidmain(String[]args){try{Datetktldt=QDateTime.stringToDate(“20230819“,“yyyymmdd“);Datedt=QDateTime.stringToDate(“20230901“,“yyyymmdd“);SellSeatss=newSellSeat;ss.addAdult(“Test/Test“);ss.addAirSeg(“CA1895“,”Y”,“PEK“,“SHA“,“NN“,1,dt);ss.addContact(“NC“);ss.addSSR_FOID(“CA“,“NI“,“1234567890“,“Test/Test“);ss.addFN(“FCNY2250.00/SCNY2250.00/C3.00/TCNY50.00CN/TCNY40.00YQ“);ss.addFP(“CASH,CNY“);ss.setTimelimit(tktldt);StringpnrNo=ssmit;System.out.println(System.out.println(“[INFO]PNR+pnrNo);}catch(IBEExceptione){e.printStackTrace;e.printStackTrace;}catch(Exceptione){e.printStackTrace;}}}這就可以完成訂票了,得到了pnrRTimportimportsky.ibe.client.pnr.RT;importsky.ibe.client.pnr.RTResult;publicpublicclassStep_3_RT{publicstaticvoidmain(String[]args){RTRTrt=newRT;try{RTResultrs=rt.retrieve(“JBH09“);System.out.println(rs);System.out.println(“-------------------------------------------“);}catch(Exceptione){System.out.println(e);}}}得到的結(jié)果:ADMASRADMpublicpublicclassTestADM{/*利用ADM查詢航班的座位圖,選擇想要的座位號調(diào)用ADM的advanceDisplayMap參數(shù)為:〔string〕pnr號〔int〕航段在pnr中的序號選擇的座位號為兩位數(shù)字和一位字母,例如“10E”選擇好座位號后,就可以利用ASR來選定座位*/publicstaticvoidmain(String[]args){ADMadm=newADM;trytry{AdmResultadmres=adm.advanceDisplayMap(“JBH09“,2);System.out.print(System.out.print(“航班號:“+admres.getAirNo);System.out.print(“\t艙位:“);System.out.print(admres.getCabin);System.out.print(“\t航班日期:“);System.out.print(admres.getDepDate);System.out.print(admres.getDepDate);System.out.print(“\r\n“);System.out.print(“始發(fā)城市:“);System.out.print(admres.getOrgCity);System.out.print(“\t到達(dá)城市:“);System.out.print(admres.getDstCity);System.out.print(“\t機(jī)型:“);System.out.print(admres.getPlaneType);System.out.print(“\n座位\n“);System.out.print(admres.getSeatmap);}catch(IBEExceptione){e.printStackTrace;}}}}得到的座位圖示:20EASR中的doASRpublicclassTestASR{publicstaticvoidmain(String[]args){ASRasr=newASR;ASRItemai=newASRItem(“TEST/TEST“,“16D“,2);Vectorai_vec=newVector;ai_vec.add(0,ai);try{Stringa=asr.doASR(“JBH09“,ai_vec);////假設(shè)成功,a的值為“ok”System.out.print(a);}catch(IBEExceptione){e.printStackTrace;}}}最終就得到“okrt其它E-BUILDAPISK:指令的使用:航班時刻顯示信息importsky.ibe.client.SK;importsky.ibe.client.SkResult;importsky.ibe.exceptions.IBEException;publicimportsky.ibe.client.SK;importsky.ibe.client.SkResult;importsky.ibe.exceptions.IBEException;publicclassSKtest{publicpublicstaticvoidmain(String[]args){SKsk=newSK;try{SkResultrs=sk.getSchedule(“pek“,“csx“,“2023051010:00:00“,“ca“);/*getSchedule(Stringorg,Stringdst,java.util.Datedate,Stringairline,*booleandirect,booleannostop)getSchedule(Stringorg,Stringdst,Stringdate,Stringairline,booleandirect,booleannostop)參數(shù)org為起始城市代碼;dst為到大城市代碼;date;airline碼;direct;nostop*getSchedule(Stringorg,Stringdst,Datedate,Stringairline,boolean*direct)*getSchedule(Stringorg,Stringdst,Stringdate,Stringairline,boolean*direct)*getSchedule(Stringorg,Stringdst,Datedate,Stringairline)*getSchedule(Stringorg,Stringdst,Stringdate,Stringairline)*getSchedule(Stringorg,Stringdst,Datedate)*getSchedule(Stringorg,Stringdst,Stringdate)*getSchedule(String*getSchedule(Stringorg,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論