Air ticket searching method and system based on OTA channel, electronic equipment and storage medium

By combining price index and flight index, the air ticket search results are generated and returned in batches in real time, the problems of inaccurate search results and long waiting time in the existing technology are solved, and the exhibition effect of OTA channels and the purchase intention of passengers are improved.

CN119829819APending Publication Date: 2025-04-15TRAVELSKY TECHNOLOGY LIMITED
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411824763.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-11
Publication Date
2025-04-15

Smart Images

  • Figure CN119829819A_ABST
    Figure CN119829819A_ABST
Patent Text Reader

Abstract

The invention provides an air ticket search method and system based on an OTA channel, electronic equipment and a storage medium, and the method comprises the steps: receiving a search request from the OTA channel, and verifying the search request; generating a flight result in real time and calculating the price and tax fee of the flight result as a search result aiming at the search request passing the verification by adopting a mode of combining a price index and a flight index; and sorting and assembling the search results in batches, marking each batch of flight results after sorting and assembling are completed, and returning the flight results to the OTA channel. According to the method, the quality of search results is improved, the opportunity of preferentially returning high-quality results is increased, meanwhile, the waiting time of the results is effectively shortened, the probability that the search results are exposed by the OTA channel is increased, and the product competitiveness in the OTA channel is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of online passenger services, and in particular relates to an OTA channel-based air ticket search method, system, electronic device and storage medium. Background Art

[0002] In the current mobile internet era, air tickets are primarily sold through airlines' own channels and online travel agencies (OTAs). Leading domestic OTAs include Ctrip, Fliggy, and Tongcheng Travel, primarily selling civil aviation tickets through their websites or apps. Ticket search systems, on the other hand, serve as the entry point for passengers to purchase air tickets through websites or apps, providing real-time search and display of air tickets. Different ticket search system providers offer different advantages and features in their product and content offerings in different markets. Combined with cost factors, a large OTA typically leverages the ticket search services of multiple providers to enrich and enhance its product offerings and content, thereby addressing fierce competition in these markets. In this business model, for each passenger's flight search request, the OTA concurrently calls the APIs of multiple flight search systems to obtain the corresponding search results. These results are then strategically integrated and displayed to the passenger.

[0003] OTAs typically don't wait for all search results to be returned before displaying them to users. Instead, they asynchronously display search results in batches, following a "first come, first served" strategy, until the OTA's set waiting time is reached or all results have been displayed. This display strategy can significantly reduce passenger wait time, enhance website engagement, and reduce customer churn. Therefore, the "result visibility rate" of each flight search system on OTAs has become a key metric for evaluating the quality of flight search systems. If a flight search system's search results rarely appear on OTAs, it means that the results it provides are unlikely to be seen or purchased by passengers, and therefore, they will not generate value for the OTAs. The key factors determining whether a flight search system's search results are displayed on OTAs are search response time and result quality (typically, results with sufficiently low prices, high flight comfort, and convenience are more likely to be purchased by passengers, which is used to evaluate result quality). However, faced with a massive amount of flight information and complex search requirements, how to quickly and accurately provide search results that meet passenger expectations is crucial for OTA platforms to improve user experience and competitiveness.

[0004] Currently, traditional air ticket search systems usually need to wait for the entire search process to be completed before returning all search results at once. This results in a large amount of business processing and a long search waiting time. In order to shorten the search response time, caching technology is usually used to cache previous search results for subsequent identical queries, or to pre-query some routes and dates and cache search results by analyzing the historical search records of passengers in the market for subsequent searches. This method can only shorten the search response time to a certain extent when the cache is hit, but it will also reduce the quality of search results to a certain extent. For example, caching technology will cause a decrease in the accuracy of the results. Therefore, the existing technology has problems such as inaccurate search results and long waiting times, which affect the display effect of the OTA channel and the purchasing intention of passengers. In order to ensure a competitive advantage in this field, it is necessary to design a ticket search method suitable for the OTA channel based on the business characteristics of the OTA to improve the result display rate on the OTA channel. Summary of the Invention

[0005] In response to the shortcomings of the existing technology, the present invention provides an air ticket search method, system, electronic device and storage medium based on the OTA channel, which can effectively solve the problems of inaccurate search results and long waiting time in the existing technology, thereby improving the exhibition effect of the OTA channel and the purchasing intention of passengers.

[0006] The present invention is achieved through the following technical solutions:

[0007] In one aspect of an embodiment of the present invention, a method for searching for air tickets based on an OTA channel is provided, the method comprising the following steps:

[0008] Step 1: Receive a search request from the OTA channel and verify the search request;

[0009] Step 2: Using a combination of price index and flight index, for verified search requests, flight results are generated in real time and their prices and taxes are calculated as search results;

[0010] Step 3: Sort and assemble the search results in batches, mark each batch of flight results after sorting and assembling, and return them to the OTA channel.

[0011] Furthermore, in step 1, the verifying of the search request further includes:

[0012] Perform schema verification on search requests to determine whether they comply with interface specifications;

[0013] Parse the user identity information in the search request to determine the user type and access rights;

[0014] Reject search requests that do not comply with interface specifications or are from illegal users.

[0015] Furthermore, in step 2, the method of combining the price index and the flight index to generate flight results and calculate the prices and taxes in real time for the search requests that pass the verification also includes:

[0016] Parse the search request that passes the verification, obtain the search request parameters, and load the configuration information based on the search request parameters;

[0017] Load configuration information based on search request parameters and generate flights using price index and flight index;

[0018] Based on the flights generated by the price index and the flights generated by the flight index, a column generation algorithm is used to generate flight combinations;

[0019] All generated flight combinations are put into the flight combination selector, which removes duplicates and reorders all the flight combinations, takes out the flight combinations in order, and calculates their prices and taxes as the search results.

[0020] Furthermore, in step 3, the search results are sorted and assembled in batches, and each batch of flight results after sorting and assembling is marked and returned to the OTA channel; and further comprising:

[0021] Re-sort the search results according to the user's desired order or the system's default order to obtain a new flight sorting result;

[0022] Based on the new flight sorting results, assemble the results according to the number of results per batch, the maximum number of batches, the maximum number of results, and the maximum search time. After the assembly is completed, the flight results are returned and marked at the end of each batch of flight results;

[0023] When at least one of the three conditions, namely, the set timeout, the maximum number of results, and all results have been returned, is reached, a mark is placed at the end of the last batch of flight results to indicate that the assembly of the search results is complete and returned to the OTA channel.

[0024] Furthermore, in step 3, after the OTA channel receives the flight results, the return time and quality of the flight results received by the OTA channel are compared through batch processing logic, and the best ones are displayed to the passengers. Specifically:

[0025] For the same flight combinations, the lowest-priced flight combination will be returned for display based on the lowest price principle.

[0026] For different flight combinations, the flight combinations are returned and displayed in descending order according to the convenience and comfort of the flights.

[0027] Another aspect of an embodiment of the present invention provides an air ticket search system based on an OTA channel, the system comprising:

[0028] The request receiving module is used to receive search requests from OTA channels, determine whether the user request is legal, and send legal requests to the business processing module;

[0029] The business processing module is used to parse user requests and obtain parameters related to result grouping configuration, including the maximum number of results, the number of results per batch, and the batch size. The business processing module processes intermediate results based on the relevant parameters and follows a strategy of prioritizing potentially high-quality results. The continuously calculated search results are transmitted to the result assembly module until the set maximum processing time is reached or the last batch of results is processed.

[0030] The result assembly module is used to receive the search results generated by the business processing module, assemble the results according to the number of results in each batch and the batch, mark the end of each batch of results and return them to the OTA channel, and also mark the end of the last batch of results to indicate that all results have been returned.

[0031] In another aspect of the embodiments of the present invention, based on the same inventive concept as the above-disclosed technical content, an electronic device is provided, wherein the electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above-mentioned method for searching for air tickets based on OTA channels.

[0032] In another aspect of the embodiments of the present invention, a computer-readable storage medium is provided, on which a computer program is stored. The program is executed by a processor to implement the steps of the above-mentioned method for searching for air tickets based on OTA channels.

[0033] Compared with the prior art, the present invention has the following advantages:

[0034] 1. By combining price index and flight index, we restructure the search process, optimize the order of search results, improve the quality of search results, and increase the chances of high-quality results being returned first.

[0035] 2. The method of returning results in batches is highly consistent with the OTA business model. It can effectively shorten the waiting time for results, increase the chances of search results being exposed by OTA channels, and enhance product competitiveness in OTA channels.

[0036] 3. Using batch technology to return the first batch of search results within a shorter time can significantly reduce passengers’ waiting time, enhance the stickiness of OTA channels, and reduce passenger churn.

[0037] Other features and advantages of the present invention will be described in the following description, and in part will become apparent from the description, or will be understood by practicing the present invention. The purpose and other advantages of the present invention can be realized and obtained by the structures pointed out in the description, claims and drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0039] Figure 1 This is a flow chart of the air ticket search method based on the OTA channel.

[0040] Figure 2 It is a data structure diagram that uses price index to generate flight combinations.

[0041] Figure 3 It is a flow chart for generating flight combinations.

[0042] Figure 4 It is a data structure diagram that uses flight index to generate flight combinations.

[0043] Figure 5 This is an example diagram of the column generation algorithm.

[0044] Figure 6 This is the flight result assembly flow chart.

[0045] Figure 7 This is a schematic diagram of returning search result messages in batches.

[0046] Figure 8 This is the architecture diagram of the air ticket search system based on the OTA channel. DETAILED DESCRIPTION

[0047] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0048] Example 1:

[0049] In one embodiment, a method for searching air tickets based on OTA channels is provided. Figure 1 , Figure 1 The present invention is a flow chart of a method for searching air tickets based on OTA channels, which includes the following steps:

[0050] Step S1: receiving a search request from an OTA channel and verifying the search request;

[0051] Furthermore, the verification of the search request further includes the following steps:

[0052] Step S101: Schema verification is performed on the search request to determine whether it complies with the interface specification;

[0053] Furthermore, the schema verification is a process of verifying the data structure and format returned by the search request; it mainly checks whether the data follows the predetermined schema, including whether the existence of fields, field types, data formats, etc. are consistent with expectations; Schema verification can ensure data consistency, and through verification, it can ensure that the data conforms to a unified data model, reducing data inconsistencies and errors; it can improve data quality, check missing or invalid fields, data types and formats, and ensure data quality and accuracy; it can enhance security: prevent malicious or incorrectly formatted data from being processed, and reduce the risk of security vulnerabilities; it can promote interoperability: ensure that data conforms to a standardized format to facilitate communication between different systems and devices.

[0054] Step S102: Parse the user identity information in the search request to determine the user type and access rights;

[0055] Step S103: reject search requests that do not comply with the interface specifications and are from illegal users.

[0056] Step S2: Using a combination of price index and flight index, for search requests that pass verification, flight results are generated in real time and their prices and taxes are calculated as search results;

[0057] Furthermore, the method of combining the price index and the flight index to generate flight results and calculate the prices and taxes in real time for the verified search requests also includes:

[0058] Step S201: parsing the verified search request, obtaining search request parameters, and loading configuration information according to the search request parameters;

[0059] Furthermore, the search request that passes the parsing verification specifically includes: parsing the origin, destination, itinerary, passenger information, and trip number information in the request, and completing user-level configuration and system configuration information loading based on the user information; wherein the trip number information includes airline preference, airline alliance preference, number of transfers preference, and result preference; wherein the result preference includes the maximum number of results, and whether to return results in batches or all at once.

[0060] Step S202: Loading configuration information based on the search request parameters, and generating flights using price indexing and flight indexing;

[0061] Furthermore, because OTA users simultaneously access search results from multiple suppliers' search systems, and display search results to travelers in batches based on a first-come, first-served strategy, for flight combinations returned by different suppliers in the same batch, if the flight combinations are the same, the lowest-priced flight combination is returned based on the lowest price. If the flight combinations are different, they are returned in descending order of convenience and comfort. Therefore, to maximize the alignment with the OTA channel's business model and increase search result exposure, the present invention generates flight combinations by combining price and flight indexes, increasing the probability that low-priced and high-comfort search results will be returned in the early batches.

[0062] Furthermore, the generation of flights by price indexing includes the following steps:

[0063] Step S202-11: Retrieve fare information from a pre-processed fare database based on the origin, destination, itinerary, and passenger information in the request;

[0064] Step S202-12: Group the fare information by routing (the route corresponding to the fare published by the airline) and sort it by price from low to high, and then generate the flights corresponding to the fare based on the routing (the route corresponding to the fare published by the airline).

[0065] Further, in this embodiment, please refer to Figure 2 , Figure 2 The data structure diagram of flight combinations is generated using price indexes. The fare information is grouped according to routing (the route corresponding to the fare published by the airline), and also includes:

[0066] Step S202-12A: Using a recursive algorithm, the itinerary is divided into different fare units, where each fare unit (UP) includes one or more fare calculation groups (FCs). The fare corresponding to each fare calculation group (FC) is combined and stored in a pre-processed fare database;

[0067] Step S202-12B: Based on the fare combination in the fare database, an index is created according to the fare's origin, destination, fare type, and validity period;

[0068] Step S202-12C: Based on the established index, grouping is performed according to routing (the route corresponding to the fare published by the airline) to generate flight combinations FlightSolutions.

[0069] Further, in this embodiment, please refer to Figure 3 , Figure 3 This is a flow chart for generating flight combinations. In step S202-12C, the flight combinations FlightSolutions are generated by grouping by routing (the route corresponding to the fare published by the airline) based on the established index. The flow chart also includes:

[0070] First, traverse all routes under the current fare calculation group (FC) and obtain the request segments (passenger requested flights) corresponding to the current fare calculation group (FC);

[0071] Secondly, traverse the request segments (passenger request flights), initialize the corresponding flights segments (flight segments), determine the departure and arrival points of the flight, and use bidirectional pathfinding to calculate the flight path corresponding to the flights segments (flight segments);

[0072] Then, determine whether a valid flight path exists. If so, end the traversal of request segments (passenger request flights) and generate the corresponding flight combination FlightSolutions according to the flight route. If not, end the entire process directly.

[0073] Finally, the flight combination FlightSolutions is verified and saved in routing if the verification is successful. At this point, the entire traversal of routing is completed.

[0074] Furthermore, the generation of flights by flight indexing includes the following steps:

[0075] Step S202-21: Generate corresponding flight segment information based on each requested segment of the itinerary searched by the user;

[0076] Step S202-22: Using the flight segment information and departure date as indexes, retrieve corresponding flight information from the pre-processed flight database, and filter the retrieved flights according to the preference information in the request to generate the final flight.

[0077] Furthermore, the pre-processed flight database includes direct flights and connecting flights, and is sorted by factors related to flight convenience and comfort, such as the number of transfers, flight duration, departure time, arrival time, and aircraft type.

[0078] Further, in this embodiment, please refer to Figure 4 , Figure 4 It is a data structure diagram that uses flight index to generate flight combinations. Take the user's search for the Beijing-New York trip on June 18, 2024 as an example. When the user searches for a one-way trip from Beijing to New York on June 18, 2024, the RequestSegment is 1, that is, BJS-NYC Beijing-New York; when the user searches for a round-trip trip from Beijing to New York, with the outbound trip from Beijing to New York and the return trip from New York to Beijing, with the outbound trip on June 18 and the return trip on June 26, the RequestSegment is 2, that is, BJS-NYC Beijing-New York and NYC-BJS New York-Beijing; when the user searches for a multi-segment trip from Beijing to Singapore to Bangkok to Beijing, the RequestSegment is 3, that is, BJS-SI N, SIN-BKK, BKK-BJS. The system supports searching up to six itineraries at a time (system configuration). The corresponding flight segment information is generated based on each requested itinerary segment. Taking the above-mentioned one-way Beijing-New York on 2024-6-18 as an example, the requested itinerary segment RequestSegment is BJS-NYC, and the departure date is 2024-6-18. The corresponding flight segment information AirSegment includes: the flight segments from Beijing Capital International Airport to JFK, LGA or EWR airport in New York are PEK-JFK, PEK-LGA, PEK-EWR; the flight segments from Daxing International Airport to JFK, LGA or EWR airport in New York are PKX-JFK, PKX-LGA, PKX-EWR.

[0079] Step S203: Generate flight combinations using a column generation algorithm based on the flights generated by the price index and the flights generated by the flight index;

[0080] Furthermore, the flights generated based on the price index and the flights generated based on the flight index use a column generation algorithm to generate flight combinations. The flights generated by the price index use routing as a column, and the flights generated by the flight index use realSegment as a column, and the flight combinations are generated using a column generation algorithm respectively.

[0081] Furthermore, the flight combination is generated by using the column generation algorithm with routing as the column, as shown in the following Table 1: Flight combination table generated by routing column generation algorithm;

[0082] Table 1: Flight combination table generated by routing column generation algorithm

[0083]

[0084] Furthermore, the realSegment is used as a column and a column generation algorithm is used to generate flight combinations, as shown in the following Table 2: Flight combination table generated by the realSegment column generation algorithm.

[0085] Table 2: Flight combination table generated by realSegment column generation algorithm

[0086]

[0087]

[0088] Furthermore, the generation of flight combinations using a column generation algorithm includes the following steps:

[0089] Step S2031: Sort the flights (FlightSolution) in each column by their comprehensive scores from low to high, with lower scores indicating better flights.

[0090] Step S2032: Take the flight with the lowest current score from each column and combine them to obtain the flight combination for the entire journey. This flight combination is the flight combination with the lowest current score for the entire journey, i.e., the optimal flight combination.

[0091] Step S2033: Based on the optimal flight combination, the flight with the second lowest score is sequentially extracted from each column, while the lowest-scoring flight remains unchanged in the remaining columns, until the flight with the second lowest score in the last column is extracted. This will result in multiple suboptimal flight combinations, and all suboptimal flight combinations are aggregated to form a suboptimal flight combination set.

[0092] Step S2035: Based on each suboptimal flight combination in the suboptimal flight combination set, the flight combination is extracted according to the method of step S2033 to obtain a suboptimal flight combination set;

[0093] Step S2036: flexibly set the system performance according to the number of flight combinations to be generated, and extract flight combinations according to the method of step S2033 above until a sufficient number of flight combinations are generated.

[0094] Furthermore, in this embodiment, in order to more intuitively understand the column generation algorithm to generate flight combinations, please refer to Figure 5 , Figure 5 This is an example diagram of the column generation algorithm. The column generation algorithm example diagram is used to further explain the generation of flight combinations by the column generation algorithm. In this embodiment, three columns are used, each containing three flight comprehensive scores:

[0095] First, sort the flights in each column from low to high according to the comprehensive score, that is: the first column, column1, contains flights with scores of 10, 15, and 20; the second column, column2, contains flights with scores of 12, 16, and 18; the third column, column3, contains flights with scores of 25, 32, and 36;

[0096] Next, take the lowest-rated flights from each column and combine them to get the flight combination for the entire journey. This flight combination is the one with the lowest score for the entire journey, so the flight combination "10, 12, 25" is the optimal flight combination.

[0097] Next, based on the optimal flight combination, take the second lowest-scoring flight from each column in turn, keep the other two columns of flights unchanged, and combine them to get a new flight combination as the suboptimal flight combination, until the last column of flights with the second lowest score is taken out. All the obtained suboptimal flight combinations are collected to get the suboptimal flight combination set; that is: first, take the second lowest-scoring flight 15 from the first column, and keep the other two columns of flights 12 and 25 unchanged, and combine them to get a new flight combination of 15, 12, 25, which is the suboptimal flight combination; secondly, take out the second lowest-scoring flight 15 from the second column, and keep the other two columns of flights 12 and 25 unchanged, and combine them to get a new flight combination of 15, 12, 25, which is the suboptimal flight combination; The flight with the second lowest score is 16, and the other two columns of flights 10 and 25 remain unchanged, and the new flight combination 10, 16, 25 is obtained by combining them. This flight combination is also the suboptimal flight combination. Then, the flight with the second lowest score is taken from the third column, and the other two columns of flights 10 and 12 remain unchanged, and the new flight combination 10, 12, 32 is obtained by combining them. This flight combination is also the suboptimal flight combination. Finally, all the suboptimal flight combinations "15, 12, 25", "10, 16, 25", and "10, 12, 32" are collected to obtain the suboptimal flight combination set.

[0098] Then, based on each suboptimal flight combination in the suboptimal flight combination set, take the flight with the second lowest score from each column in turn, keep the other two columns of flights as suboptimal flights, and combine them to obtain a new flight combination as the suboptimal flight combination, until the last column of flights with the second lowest score is taken out, and all suboptimal flight combinations are collected to obtain the suboptimal flight combination set, that is: all suboptimal flight combinations "20, 12, 25", "15, 16, 25", "15, 12, 32", "10, 18, 25", and "10, 16, 32" are collected to obtain the suboptimal flight combination set;

[0099] Finally, the system performance is flexibly set according to the number of flight combinations that need to be generated, and the above algorithm is followed until a sufficient number of flight combinations are generated.

[0100] Step S204: All generated flight combinations are put into a flight combination selector. The flight combination selector removes duplicates and reorders all the flight combinations, takes out the flight combinations in order, and calculates their prices and taxes as search results.

[0101] Step S3: sorting and assembling the search results in batches, marking each batch of flight results after sorting and assembling, and returning them to the OTA channel;

[0102] Further, in this embodiment, please refer to Figure 6 , Figure 6 This is a flight result assembly flow chart, which sorts and assembles the search results in batches, labels each batch of flight results after sorting and assembling, and returns them to the OTA channel; it also includes the following steps:

[0103] Step S301: re-sorting the search results according to the user's desired order or the system's default order to obtain a new flight sorting result;

[0104] Furthermore, the default order of the system is to sort from high to low based on the comprehensive score obtained by price score + flight combination convenience score.

[0105] Step S302: Based on the new flight sorting results, assemble the results according to the number of results per batch, the maximum number of batches, the maximum number of results, and the maximum search time. After assembling, return the flight results and mark them at the end of each batch of flight results.

[0106] Step S303: When at least one of the three conditions of a set timeout, a maximum number of results, and all results having been returned is reached, an end mark is added at the end of the last batch of flight results to indicate that the assembly of the search results is complete and returned to the OTA channel.

[0107] Further, in this embodiment, please refer to Figure 7 , Figure 7 This is a diagram showing the batch return of search result messages. After assembly is complete, flight results are returned and an identifier is added at the end of each batch of flight results. Identifiers batch 1 to batch n are used to identify whether the current batch of flight results has been returned.

[0108] Furthermore, in this embodiment, after the OTA channel receives the flight return result, it displays it to the passenger in an asynchronous manner using batch processing technology; specifically:

[0109] Batch processing logic is used to compare the return time and quality of flight results received from OTA channels, and the best ones are displayed to passengers.

[0110] For the same flight combinations, the lowest-priced flight combination will be returned for display based on the lowest price principle.

[0111] For different flight combinations, the flight combinations are returned and displayed in descending order according to the convenience and comfort of the flights.

[0112] Furthermore, by optimizing the batch processing logic, we ensure that the results can be presented to users smoothly and orderly. At the same time, we have taken into account the result caching mechanism. For frequently searched queries, results can be quickly retrieved from the cache, reducing waiting time. This means that users do not need to wait for all results to be loaded, but can gradually see the search results as the results are gradually returned.

[0113] Example 2:

[0114] In one embodiment, based on the same inventive concept as the above disclosed technical content, a flight ticket search system based on OTA channels is also provided. Figure 8 , Figure 8 This is an architecture diagram of an air ticket search system based on OTA channels. The system includes: a request receiving module, a business processing module, and a result assembly module; wherein:

[0115] The request receiving module is used to receive search requests from OTA channels, determine whether the user request is legal, and send legal requests to the business processing module;

[0116] The business processing module is used to parse user requests and obtain parameters related to result grouping configuration, including the maximum number of results, the number of results per batch, and the batch size. The business processing module processes intermediate results based on the relevant parameters and in accordance with a strategy of prioritizing potentially high-quality results, and transmits the continuously calculated search results to the result assembly module until the set maximum processing time is reached or the last batch of results is processed.

[0117] The result assembly module is used to receive the search results generated by the business processing module, assemble the results according to the number of results in each batch and the batch, mark the end of each batch of results and return them to the OTA channel, and also mark the end of the last batch of results to indicate that all results have been returned.

[0118] Example 3:

[0119] In one embodiment, based on the inventive concept with the same technical content as disclosed above, an electronic device is provided, wherein the electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above-mentioned method for searching for air tickets based on an OTA channel.

[0120] Example 4:

[0121] In one embodiment, a computer-readable storage medium is further provided, on which a computer program is stored. The program is executed by a processor to implement the steps of the above-mentioned method for searching for air tickets based on OTA channels.

[0122] In addition, in the description of the present invention, explanations of terms are shown in the following Table 3: Explanation of terms.

[0123] Table 3: Explanation of terms

[0124]

[0125]

[0126] Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A flight ticket search method based on OTA channel, characterized in that: include: Receive search requests from OTA channels and verify the search requests; By combining price index and flight index, flight results are generated in real time for search requests that have passed verification, and their prices and taxes are calculated as search results; The search results are sorted and assembled in batches, and after the sorting and assembly are completed, each batch of flight results is marked and returned to the OTA channel.

2. The air ticket search method based on OTA channel as claimed in claim 1, characterized in that: The receiving a search request from an OTA channel and verifying the search request further includes: Perform schema verification on search requests to determine whether they comply with interface specifications; Parse the user identity information in the search request to determine the user type and access rights; Reject search requests that do not comply with interface specifications or are from illegal users.

3. The air ticket search method based on OTA channel as claimed in claim 1, characterized in that: The method of combining the price index and the flight index to generate flight results in real time and calculate the price and tax for the search request that has passed the verification also includes: Parse the search request that has passed the verification, obtain the search request parameters, and load the configuration information according to the search request parameters; Load configuration information based on search request parameters and generate flights using price index and flight index; Based on the flights generated by the price index and the flights generated by the flight index, a column generation algorithm is used to generate flight combinations; All the generated flight combinations are put into the flight combination selector, and the flight combination selector removes duplicates and reorders all the flight combinations, takes out the flight combinations in order and calculates their prices and taxes as the search results.

4. The air ticket search method based on OTA channel as claimed in claim 3, characterized in that: The method of generating flights by price indexing also includes: Retrieve fare information from a pre-processed fare database based on the origin, destination, itinerary and passenger information in the request; The fare information is grouped by route and sorted by price from low to high, and then the flights corresponding to the fare are generated based on the route.

5. The air ticket search method based on OTA channel as claimed in claim 4, characterized in that: The fare information is grouped according to the route, and sorted from low to high by price, and then the flights corresponding to the fare are generated according to the route, and further includes: Traverse all routes under the current fare calculation group and obtain the request segments corresponding to the current fare calculation group; Traverse request segments, initialize the corresponding flights segment, determine the departure and arrival points of the flight, and use bidirectional path finding to calculate the flight path corresponding to flights segment; Determine whether a valid flight path exists. If so, end the traversal of request segments and generate the corresponding flight combination FlightSolutions according to the flight route. If not, end the entire process directly. Verify the flight combination FlightSolutions and save it into routing if the verification is successful.

6. The air ticket search method based on OTA channel as claimed in claim 3, characterized in that: The method of generating flights by using a flight index includes: generating corresponding flight segment information based on each requested itinerary segment constituting the itinerary searched by the user; Using the flight segment information and departure date as indexes, the corresponding flight information is retrieved from the preprocessed flight database, and the retrieved flights are filtered according to the preference information in the request to generate the final flight.

7. The air ticket search method based on OTA channel as claimed in claim 3, characterized in that: The column generation algorithm is used to generate flight combinations, including: Sort the flights in each column from low to high according to the comprehensive score. The lower the score, the better the flight. Take the flight with the lowest current score from each column and combine them to get the flight combination for the entire trip. This flight combination is the flight combination with the lowest current score for the entire trip, that is, the optimal flight combination. Based on the optimal flight combination, the flight with the second lowest score is taken from each column in turn, and the flight with the lowest score in the remaining columns remains unchanged until the flight with the second lowest score in the last column is taken out. Multiple suboptimal flight combinations will be obtained, and all suboptimal flight combinations are collected as the suboptimal flight combination set; Based on each suboptimal flight combination in the suboptimal flight combination set, the flight combination is extracted in the above manner to obtain a suboptimal flight combination set; The system performance is flexibly set according to the number of flight combinations to be generated, and the flight combinations are extracted in the above manner until a sufficient number of flight combinations are generated.

8. The air ticket search method based on OTA channel as claimed in claim 1, characterized in that: The step of sorting and assembling the search results in batches, marking each batch of flight results after the sorting and assembling are completed, and returning the results to the OTA channel further includes: Re-sort the search results according to the order expected by the user or the system default order to obtain a new flight sorting result; Based on the new flight sorting results, assemble according to the number of results per batch, the maximum number of batches, the maximum number of results, and the maximum search time. After the assembly is completed, the flight results are returned and marked at the end of each batch of flight results; When at least one of the three conditions, namely, the set timeout period, the maximum number of results, and all results have been returned, is reached, an end mark is placed at the end of the last batch of flight results to indicate that the assembly of the search results is complete and returned to the OTA channel.

9. The air ticket search method based on OTA channel according to any one of claims 1 to 8, characterized in that: Also includes: The batch processing logic is used to compare the return time and quality of flight results received from the OTA channel, and the best ones are displayed to passengers.

10. The air ticket search method based on OTA channel as claimed in claim 9, characterized in that: The batch processing logic is used to compare the return time and quality of the flight results received from the OTA channel and present the best results to the passengers, and further includes: For the same flight combinations, the flight combination with the lowest price will be returned for display based on the principle of low price; For different flight combinations, the flight combinations are returned and displayed in order from high to low in terms of convenience and comfort.

11. An air ticket search system based on OTA channels, characterized in that: The system includes a request receiving module, a business processing module and a result assembling module, wherein: The request receiving module is used to receive the search request from the OTA channel, determine whether the user request is legal, and send the legal request to the business processing module; The business processing module is used to parse the user request and obtain the relevant parameters of the result grouping configuration, including the maximum number of results, the number of results per batch and the batch; the business processing module processes the intermediate results according to the relevant parameters and the strategy of giving priority to the results with potential high quality, and transmits the continuously calculated search results to the result assembly module until the set maximum processing time is reached or the last batch of results is processed; The result assembly module is used to receive the search results generated by the business processing module, assemble the results according to the number of results in each batch and the batch, mark the end of each batch of results and return them to the OTA channel, and also mark the end of the last batch of results to indicate that all results have been returned.

12. A computer device comprising a memory and a processor, wherein a computer program is stored in the memory, wherein: When the computer program is executed by the processor, the processor executes the air ticket search method based on the OTA channel as described in any one of claims 1 to 8.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, an air ticket search method based on an OTA channel as described in any one of claims 1 to 8 is implemented.