METHOD AND APPARATUS FOR DETERMINING AND PRESENTING
LODGING ALTERNATIVES
DESCRIPTION OF THE INVENTION
Field of the Invention
This invention relates to electronic commerce and, more particularly, to an apparatus and methods for determining the most suitable available lodging alternatives for travelers based upon location, availability and amenities.
Background of the Invention
The Internet has been hailed the marketplace of the future, a result of its accessibility and usability. A computer equipped with a communication mechanism such as a modem and telephone connection is nearly all that is necessary to gain access to the Internet. A program called a browser, such as the Netscape Navigator from Netscape Corporation, makes it a simple task to traverse the vast network of information available on the Internet and, specifically, its subpart known as the "World Wide Web."
The architecture of the Web follows a conventional client-server model. The terms "client" and "server" are used to refer to a computer's general role as a requester of data (the client) or provider of data (the server). Under the Web environment, Web browsers reside in clients and specially formatted "Web documents" reside on Internet (Web) servers. Web clients and Web servers communicate using a protocol called "Hyper Text Transfer Protocol" (HTTP). tii operation, a browser opens a connection to a server and initiates a request for a document. The server delivers the requested document, typically in a standard coded format generally known as "Hyper Text Markup Language" (HTML). After the document is delivered, the connection is closed. The browser displays the document or performs a function designated by the document.
Every day, more people gain access to the Web, and every day, more of them are shopping online. Online shopping provides a level of convenience they want,
need and will soon demand. Electronic commerce or "e-commerce" is the term often used to refer, at least in part, to online shopping on the Web. E-commerce is a unique opportunity for businesses of any size. E-commerce can expand a company's marketplace-and consequently, its customer database. By simply providing a Web server having information on the company's product offerings and the customer database, and linking the Web server to the Web, the company can track visits, sales, buying trends and product preferences-all at the customer level. The company can then present its customers with products they are most likely to buy-on an individual basis. For this reason alone most marketing professionals consider the Web to be one of the best direct marketing tools.
But the number of retailers with online stores is growing exponentially every year, making it increasingly difficult for online shoppers to navigate the Web to locate particular products at the best prices. At one site, called the "Internet Mall," online shoppers can browse through more than 20,000 "virtual stores." This challenge for consumers also introduces a problem for merchants in designing campaigns to attract consumers to the merchants' Web sites and away from their competitors' sites.
Certain known business methods, and conventional implementations of those methods, give consumers greater control over a business deal by permitting consumers to set customized parameters for selected products and/or services, such as travel resources like hotels, airfare, car rentals, and similar travel commodities. Such methods and implementations, however, do not necessarily provide consumers with the best available price for the products and/or services, as well as provide real-time feedback with respect to consumers' choices.
The problems associated with conventional implementations are demonstrated in the hotel reservation environment. Specifically, such conventional implementations do not provide travelers with graphical based detailed information with respect to various hotel locations, options and confirmations, in real-time. Furthermore, it is very difficult to get accurate information regarding hotel locations because hotels link their location to a point of interest. Thus, travelers may not be receiving up to date rate and facility information. Travelers may be paying too much for undesirable hotels using these implementations, also they are provided only with general location information, and delayed confirmations. Such conventional
implementations lack the ability to display hotel options based on location, thus forcing travelers to shop from a list of hotels based on a single direction (i.e. East, West, North, South), within a distance locator and an index point address. Only once a traveler has selected a hotel may a map of its location be generated. At the same time, such conventional implementations may not guarantee that the desired index point would be represented on the map. Accordingly, such known business methods, and conventional implementations of those methods require a number of procedures that travelers may have to traverse during a search session in order to located a desired hotel within a certain location.
There is therefore a need for a an efficient and user-friendly system that provides travelers with better information on hotels, finding availability, rate and location information based on spatial location, as well as real-time confirmation information.
SUMMARY OF THE INVENTION
Methods, systems, and articles of manufacture consistent with the present invention overcome the shortcomings of existing systems by enabling travelers to obtain real-time information on available or unavailable hotels including: current rates, graphical locations, amenity descriptions, room descriptions and confirmations. Such methods, systems, and article of manufacture receive requests from users reflecting lodging preferences. Each request is analyzed to determine a set of alternative lodging properties providing preferences comparable to the lodging preferences specified in the request. The methods, systems, and article of manufacture consistent with the present invention then present a graphical map showing the alternative lodging properties within a predetermined proximity of a target location designated in the lodging preferences requested by the user.
Such methods, systems, and article of manufacture may also receive requests from users reflecting selections of particular alternative lodging properties. Information reflecting detailed descriptions of the selected alternative lodging properties is then presented for user selection. The presented alternative lodging properties include amenity, price and location information for each alternative lodging
property and enable users to perfonn a side by side comparison of the preferences provided by each lodging property.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate an implementation of the invention and, together with the description, serve to explain the advantages and principles of the invention, hi the drawings,
Figure 1 is a pictorial diagram of a computer network in which systems consistent with the present invention may be implemented;
Figure 2 shows a computer network containing a client system and a server system;
Figure 3 illustrates the retrieval of remote image and text and their integration in a document;
Figure 4 is a block diagram of the architecture of a hotel genie server in a manner consistent with the principle of the present invention;
Figure 5 illustrates a hotel genie server and its relationship to other computers in a manner consistent with the principle of the present invention;
Figures 6A-6D are flow charts of the steps performed by a hotel genie server in a manner consistent with the principle of the present invention;
Figure 7 is a flow chart of a booking process performed by a hotel genie server in a manner consistent with the present invention; and
Figures 8A-8C illustrate alternative lodging property maps generated by a mapping processor in a manner consistent with the present invention.
DESCRIPTION OF THE EMBODIMENTS
Reference will now be made in detail to an implementation consistent with the present invention as illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings and the following description to refer to the same or like parts.
Introduction
Systems consistent with the present invention enable travelers to define lodging preferences such that only those alternative lodging properties that provide services that are comparable to the lodging preferences are presented to the traveler. Lodging preferences are those preferences travelers wish to have provided by a hotel they may stay at. For example, lodging preferences may include: proximity preferences that include a city or a location the traveler wishes to visit; dates of stay; proximity range information that reflects a maximum distance from the location the traveler will be visiting; proximity direction information that reflect a desired direction location in relation to a desired location, such as North, South, East, West and combinations of these directions (NE, SE, SW, NW), amenity preferences such as swimming pools, meeting facilities, restaurant facilities and other resources desired; and hotel type preferences such as specific hotel companies preferred.
Systems and methods consistent with the present invention collect current lodging property description information from each properties' central reservation server. The collected information may include preferences available at the lodging properties. The available preferences are queried and tested to determine whether there are suitable matches for travelers' preferred preferences. Properties providing the most suitable preferences that match the travelers' preferences are grouped into a set and presented to the traveler in a geographical map via a traveler's browser application. The map may include icons, which reflect a location for each lodging property in the set, superimposed on a map of a location designated and bounded by the travelers' proximity preferences. Travelers may then compare current services provided by the lodging properties in the set, and select a property that meets their preferences. Real-time confirmations of selected lodging properties are provided to the traveler. Furthermore, travelers may select to view only those lodging properties that have available rooms, thus ensuring the lodging property's presented to the travelers allow for reservations to be accepted for a selected date range.
Systems consistent with the present invention permit a traveler, seasoned or occasional, to systematically discover and take advantage of information from hotel establishments without having to individually search for the locations of these establishments. Systems consistent with the present invention allow travelers to
accomplish some of the main stream tasks associated with searching for a lodging property and subsequent reservation operations associated with selected lodging properties just as if he or she had the services of a seasoned traveler or reservation agent by their side. Systems consistent with the present invention store lodging property information, including rate information, such that it is provided to the traveler on a real-time basis. Systems consistent with the present invention continually update the lodging property information to provide current infonnation to the traveler. Additionally, the methods and systems consistent with the present invention search for the best rate matching the users pricing preferences. Such systems may conduct this search by checking the availability and preferences, that include rate information of lodging properties. They may go a step further than even the seasoned traveler or reservation agent by requesting just-in-time "best offer" rate quotes from lodging properties, thereby creating a type of online, last-minute auction. Also, rates may be provided by suppliers other than the lodging properties. These suppliers may include travel consolidators / wholesalers, hi one implementation, a network accessible system such as the h temet, client/server, personal digital assistant (PDA), or voice telephony, can be used for travelers to access and retrieve information in a manner consistent with the present invention.
The systems contain fundamental geographic and proximity-based search capabilities for situations where rate is influenced by location. They may be able to automatically relax search constraints based upon a traveler's priorities. For example, a free continental breakfast may be a lower priority requirement than having an indoor swimming pool. Consequently, they offer the uninformed, occasional traveler the same savings discovery power as the seasoned buyer or buyer agent.
Network Architecture
Figure 1 illustrates a conceptual diagram of a computer network 100, such as the Internet. Computer network 100 comprises small computers (such as computers 102, 104, 106, 108, 110, 112 and 114) and large computers (such as servers 120 and 122). In general, small computers 102 through 114, are computer equipment that are at the site at which a human user operates the equipment to make requests for data from other computer equipment on the network. Usually, the requested data resides in
large computers, til this scenario, small computers are clients and the large computers are servers.
In this specification, the terms "client" and "server" are used to refer to a computer's general role as a requester of data (client) or provider of data (server). In general, the size of a computer or the resources associated with it do not preclude the computer's ability to act as a client or a server. Further, each computer may request data in one transaction and provide data in another transaction, thus changing the computer's role from client to server, or vice versa.
A client, such as computer 102, may request a file from Server A 120. Since computer 102 is directly connected to Server A 120, for example, through a local area network, this request would not normally result in a transfer of data over what is shown as "network" of FIG. 1. The "network" of FIG. 1 represents, for example, the Internet, which is an interconnection of networks. A different request from computer 102 may be for a file that resides in Server B 122. til this case, the data is transferred from Server B 122 through the network to Server A 120 and, finally, to computer 102. The distance between Server A 120 and Server B 122 may be very long, e.g. across states, or very short, e.g., a few inches. Further, in traversing the network the data may be transferred through several intennediate servers and many routing devices, such as bridges and routers.
FIG. 2 shows, in more detail, an example of a client-server system interconnected through network 100. In this example, a remote server system 222 is interconnected through network 100 to client system 220. Client system 220 includes conventional components such as a processor 224, memory 225 (e.g. RAM), a bus 226 which couples processor 224 and memory 225, a mass storage device 227 (e.g. a magnetic hard disk or an optical storage disk) coupled to processor 224 and memory 225 through an I/O controller 228 and a network interface 229, such as a conventional modem.
Server system 222 also includes conventional components such as a processor
234, memory 235 (e.g. RAM), a bus 236 which couples processor 234 and memory
235, a mass storage device 237 (e.g. a magnetic or optical disk) coupled to processor 234 and memory 235 through an I/O controller 238 and a network interface 239, such as a conventional modem. It will be appreciated from the description below that the
present invention may be implemented in software which is stored as executable instructions on a computer readable medium on the client and server systems, such as mass storage devices 227 and 237 respectively, or in memories 225 and 235 respectively.
Distributed Document Retrieval
The Internet consists of a worldwide computer network that communicates using well defined protocol known as the Internet Protocol (IP). Computer systems that are directly connected to the Internet each have an unique address consisting of four numbers separated by periods such as "192.101.0.3". To simplify Internet addressing, a "Domain Name System" was created that allows users to access Internet resources with a simpler alphanumeric naming system. For example, the name "Sabre.com" is the name for a computer operated by Sabre Inc.
To further define the addresses of resources on the Internet, a Uniform Resource Locator system was created that uses a Uniform Resource Locator (URL) as a descriptor that specifically defines a type of Internet resource and its location. URLs have the following format: "resource-type://domain.address/path-name." The "resource-type" defines the type of Internet resource. Web documents, for example, are identified by the resource type "http", which indicates the protocol used to access the document.
To access a document on the Web, the user enters a URL for the Web document into a browser program executing on a client system with a connection to the Internet. The Web browser then sends a request in accordance with the HTTP protocol to the Web server that has the Web document using the URL. The Web server responds to the request by transmitting the requested object to the client. In most cases, the object is a plain text document containing text (in ASCII) that is written in HTML. Such objects often contain hyperlinks to other Web documents. The Web browser displays the HTML document on the screen for the user and the hyperlinks to other Web documents are emphasized in some fashion such that the user can selected the hyperlink.
In some instances, the HTML document may contain data from more than one server. For example, FIG. 3 illustrates the retrieval of remote text and images and
their integration in a Web document by a client system 340. In FIG. 3, server A 310 contains an image 315, server B 320 contains a combination of text and image data 325 and server C 330 contains text data 335. Each of these servers is remotely located from the other servers and client 340. The transfer of data is via network 100. It should be appreciated that the text and image files could be located in the same server which is remote from client 340.
Different techniques are available to display these types of composite Web documents. For example, a program called a servlet executing on one of the servers may combine data from the various servers referenced in a selected Web document and transmit the composite Web document to the client. In other configurations, the client may utilize a program called an applet, which may be transmitted to the client from one of the servers, to access the multiple servers offering parts of the composite and to build the composite Web document.
System Architecture and Operation
Systems consistent with the present invention employ a hotel genie server, for example, the server 400 shown in FIG. 4. Server 400 is connected to a network interface 445 that facilitates communication with users, traders, and lodging property suppliers on the Internet. Server 400 includes a number of components, business logic processor 405, component supplier system interface 410, geocoding processor 415, proximity search processor 420, users' requests datastore 425, lodging property datastore 430, search constraint relaxation processor 435, mapping processor 440, booking processor 450, local memory 455, traders' datastore 460 and search comparison ranking processor 465. The operation of each of these components will be explained below with reference to Figures 5, 6A-6D and 7.
Figure 5 shows a hotel genie server 400 and machines distributed in the network having facilities such as interfaces for a user, trader, and supplier to communicate with server 400. FIG. 5 illustrates an example of this configuration with user interface 510, trader interface 520, and supplier interface 530 communicably connected to server 400. Suppliers provide information on available lodging services, such as rooms available, amenity information, lodging property description information and similar lodging resources. Traders, on the other hand, are
"consolidators" of lodging resources that either buy the resources, such as reservations for particular rooms on certain dates, from suppliers in bulk at discount rates for resale or package various resources to resale. In many instances, traders may have the best available rate for lodging resources, even better than the rate offered by a supplier for the same resource. Although the figure shows only one trader interface and only one supplier interface, the principles of the present invention contemplate many such interfaces.
In operation, server 400 receives requests from users for lodging resources; receives rate and availability information from various suppliers and traders; sends just-in-time "rates-to-beat" messages to the suppliers and traders asking for their last minute best offer; and automatically presents the information to the users. Underlying capabilities include geographic data encoding (geocoding), geographic/proximity- based searching, mapping, and search constraint relaxation.
User interface 510 allows each user to input lodging preferences such as preferred locations, dates, and amenity services. A users' requests datastore 425 persistently stores users' requests for subsequent access/marketing analysis.
Trader interface 520 and supplier interface 530 allow lodging service traders and suppliers to input, configure, target, and maintain lodging services, including prepackaged services in a traders' datastore 460. This datastore contains pre-packaged offerings of services that have been pre-configured and pre-negotiated by traders such as consolidators and wholesalers.
FIG. 6A is a flow chart of operations performed by server 400 consistent with one embodiment of the invention. At step 600, the user (or user's agent) logs on to server 400 via network interface 445 and creates user's request 501 via user interface 510. User request 501 is generally composed of information such as city and state preferences, property location affiliations or names, proximity tolerances for the property location affiliation or city preferences, direction information in relation to a property location affiliation, such as North or Southwest, amenity preferences and dates. User's request 501 is also stored in user's request datastore 425 for subsequent access/marketing analysis. Receipt of user's request 501 triggers business logic processor 405 into action to serve as the main process control and orchestrate a search for lodging properties that match the user's preferences. In one embodiment of the
invention, the receipt of user's request 501 may also trigger a search for lodging properties with the best rates available. Discovery response 502 is transmitted back to user interface 510 via network interface 445.
At step 602, business logic processor 405 determines whether the user's request includes a property location affiliation or a city and state address. A property location affiliation corresponds to a general or popular location the user wishes to visit. This may be, for example, a state park, a popular geographic location, a popular monument or museum, or any other location affiliation that is more general than a city name. The property location affiliation includes a designated state to allow server 400 to narrow down a correct location for the user. Upon determining the type of location information requested, business logic processor 405 calls upon the services of geocoding processor 415 and mapping processor 440 to attach geocodes (for example, latitude and longitude or similar information identifying location) to the property location affiliation or city and state address request. Mapping processor operates with a map server / client API developed by MapQuestTM and is installed as a map serving daemon with client connectivity libraries.
These geocodes are used to generate a center point for a geographical map to be created at a later time. For example, if business logic process 405 determines that a property location affiliation has been requested, a center point is determined based on the property location affiliation designated by the user, at step 604. A boundary radius of the map is generated using the proximity tolerance preferences designated in the user's request. However, if the business logic processor 405 determines that a city address has been selected, a center point is determined based on the city address designated by the user, at step 606. A boundary radius of the map is generated using the proximity tolerance preferences designated in the user's request. In both steps, 604 and 606, business logic processor 405 searches lodging property datastore 430 for lodging properties having geocodes reflecting their geographical location within the proximity tolerances of the city or property location affiliations requested by the user. An initial set of alternative lodging properties is created and stored in a local memory 455.
In one embodiment of the invention, server 400 keeps lodging property information up to date by periodically performing updating operations from each
lodging property supplier server and trader server it has access to. Business logic processor 405 continuously performs checking operations to detennine whether it is time for updating the information in traders data store 430. til the event it is time for an update, business logic processor 405 initiates a query to the supplier interface 530 though network interface 445, as availability rate request message 503. Supplier interface 530 may connect to central reservation or property management servers that house service information associated with the lodging services they provide. Supplier interface 530 returns response data in availability response message 506 reflecting the lodging service information, and this is stored in traders datastore 430.
In accordance with another embodiment of the invention, server 400 may also perform rate checking to ensure users are receiving the best rate available for each lodging property to be provided. At step 608, business logic processor 405 determines the lowest rate of all lodging properties that have been identified and are available at this point. These lowest rates are formatted as rate-to-beat messages 504 and sent to trader interface 520 and supplier interface 530 via component supplier system interface 410 and network interface 445. Traders and suppliers determine if they want to respond with rates equal to or less than the rate conveyed in rate-to-beat messages 504. At step 610, if they wish to respond, traders and suppliers format just- in-time offerings 505 and send them to business logic processor 405 via network interface 445 and component supplier system interface 410.
At step 612, business logic processor 405 updates the rate information associated with the lodging properties who have responded. This process ensures that the alternative lodging properties that are located within the proximity preferences designated by the user's request, are providing the best rate at the time of the request.
At step 614, search constraint relaxation processor 435 filters the initial set of alternative lodging properties to produce a reduced set of alternative lodging properties. Search constraint relaxation processor 435 queries local memory 455 and performs a search for lodging properties that offer lodging preferences comparable to those requested by the user in request 501. This may include searching for lodging properties that offer at least one of the amenities requested by the user.
In another embodiment of the invention, server 400 does not perform steps 610, 612 and 614, as shown in Figure 6A as dotted lines flowing from steps 604 and 606 to step 616.
At step 616, business logic processor 405 determines whether dates were specified in the user's request 501. If no dates were specified, processing continues to step 630, described later. If dates were specified, processing proceeds to Figure 6B and step 618, where a hotel offering command (HOT) is executed for lodging properties in the reduced set of alternative lodging properties.
This command generates a query to lodging property datastore 430, as shown in step 620. The query determines whether lodging services are available for the dates specified in the user's request and data may or may not be returned reflecting a result of the determination. At steps 622 and 624, each lodging property is marked as "available" or "unavailable" based on the result of the determination operations. At step 626, business logic processor 405 determines whether all of the lodging properties in the set have been queried, and if not, the query process is perfonned for the next lodging property in the set. Once all of the lodging properties in the set have been queried, processing returns to Figure 6A, to step 630.
At step 630, business logic processor 405 utilizes mapping processor 440 to generate a graphical-based map including the alternative lodging properties offering lodging services. Mapping processor 440 generates a URL that is appended to a Web page downloaded to the user's initiating the search for lodging alternative. The appended URL is used to access a mapping server (not shown), operated by a web-based mapping service such as MapQuestTM . The mapping server generates a map with the center reflecting the center point defined in steps 605, 607 and the boundaries defined by the proximity tolerance preferences designated in the user's request, and forwarded to the mapping server, via the URL. Once completed, the mapping server sends the generated map back to server 400. Mapping processor 440 receives and modifies the map to include hotel genie features. Mapping processor 440 creates icons reflecting each alternative lodging property in the reduced set, and plots them in the map based on their geocodes. The result is a map that is displayed to the user with the center point being the location of the city or property location affiliation requested by the user, and includes lodging property icons plotted in the
map in relation to their proximity to the center point. The lodging properties represented in the displayed map may be available or unavailable properties, depending upon the conditions set forth by the user making the request. In one embodiment of the invention, the displayed lodging properties are defaulted as available properties, while user's may designated to view unavailable properties when providing their lodging preferences.
In one embodiment of the invention, the icons may be ranked based on a number of criteria, including the proximity of each lodging property's location to the center point. These icons may be numerically labeled according to their ranking, and a list of the numerically ranked lodging properties may be displayed along side of the map as a legend. For example, a map may be generated based on a user request that produces five alternative lodging properties that meet the preferences designated in the user request. The set of lodging properties may be displayed in the map as icons labeled "1" though "5". The lodging property icon labeled "1" would be the property nearest to the user's designated property location affiliation or address. In accordance with the mapping processor's operations, the icon labeled "1" would also be nearest to the center of the map. A legend may be placed along side of the map, listing each alternative lodging property associated with each icon, til this example, there would be a list of five alternative lodging properties, numbered "1" through "5". The ranking attributes of the alternative lodging properties are not limited to proximity data alone. A number of different preferences and rules may be applied to rank the set of alternative lodging properties, such as the number of common preferences provided by a property with the user's preferences.
In one embodiment of the invention, users may manipulate the map to obtain different zoom preferences. Users may select to zoom in or out of the displayed map, to obtain a different view of the area surrounding the center point. Users may select to zoom in on the map, in order to obtain detailed graphical information on the exact location of desirable targets in the map, such as the property location affiliation designated in the request or particular alternative lodging properties. Mapping processor 440 processes the zoom requests in order to allow users to customize the view of the map. The zoom requests are forwarded to the mapping server through the generated URL. Server 400 receives the generated map,
with new boundaries designated in the URL, defined by the zoom features selected by the user.
Figure 8 A illustrates an example of a map that may be presented to a user searching for hotels near the grand canyon. Initially, the user provides the saving discovery server 400 with a plurality of lodging preferences, including a property location affiliation preference designating the grand canyon and the state of Arizona, with a predetermined proximity range preference of six miles. Map 800 is generated by mapping processor 440, and displayed to the user. Map 800 includes a plurality of icons representing hotels that are ranked according to the lodging preferences designated by the user. A group of overlapping icons 805 is shown in map 800 indicating a plurality of hotels located within a close proximity to each other and the grand canyon. The user may select to "zoom in" on icons 805, to view detailed location infonnation not present in map 800.
In one embodiment of the invention, the user may selectively "zoom in" on map 800 by selecting any location within the map and "clicking though" with an input device, such as a mouse, hi this example, the user may decide to view additional information on hotels represented by group of icons 805 by selecting and "clicking through" on the overlapping icons. The result of the user's selection is a "zoomed" generated map 810, shown in Figure 8B, reflecting additional detailed location information regarding the hotels represented by the icons displayed in map 800. As shown in Figure 8B, a new group of fewer overlapping icons 815 is displayed in map 810 reflecting hotels that are located within a certain distance of each other and the property location affiliation. The user may "zoom in" on selected icons displayed in map 810 until it is determined by the user that sufficient geographical information is displayed in a generated map. Figure 8C illustrates an example of a web page that may be generated after a user has completed "zooming in" on displayed map 800. The web page includes detailed map 820, and an associated legend 825 including a listing of all the hotels displayed in map 800, ranked according to their icon number. Detailed map 820 shows the remaining ranked icons representing the hotels located nearest to the grand canyon.
In one embodiment of the invention, mapping processor 440 may be programmed to recognize when a user selects a group of overlapping icons in a
displayed map and subsequently generate and display a table including information on the hotels included in the group of overlapping icons. For example, referring to Figure 8A, when a user "clicks through" on the group of icons 805, a table or legend may be generated including information on hotels included in the group of overlapping icons 805. The table or legend may include information similar to that shown in legend 825, except that only those hotels associated with the group of overlapping icons would be displayed. This feature would enable a user to view information on the hotels reflected in the group of icons 805, without having to "zoom in" on map 800.
Referring back to Figure 6A, once the map is displayed, step 640 receives requests from the user reflecting particular alternative lodging properties selected as possible lodging prospects. In one embodiment of the invention, users may choose specific alternative lodging properties by selecting designated selection icons associated with each alternative lodging property displayed in the legend described above. Users may select one or more lodging properties for viewing. Along with the lodging properties selected, users may also select compare or information icons, that may be displayed along with the map and legend. Compare and information icons perform specific functions in relation to the alternative lodging properties.
At step 650, business logic processor 405 determines whether the user has selected a compare icon or an information icon. Figure 6C illustrates the processing performed by search comparison ranking processor 465 when the information icon is selected. At step 652, search comparison ranking processor 465 executes a hotel description command (HOD) for each property selected in the legend. The search comparison ranking processor 465 initiates a query, step 654, to determine if dates are associated with the HOD command. At step 656, it is determined that the commands have dates, and search comparison ranking processor 465 queries the lodging property datastore 430 to determine whether each selected alternative lodging property has available rooms during the dates specified in the request. At step 658, it is determined that the commands do not have dates, and search comparison ranking processor 465 retrieves property information associated for each selected alternative lodging property from lodging property datastore 430. At step 660, search
comparison ranking processor 465 determines whether all of the selected alternative lodging properties have been processed, and if not, processing is returned to step 652.
Once all of the selected alternative lodging properties have been selected, processing continues to step 662. At step 662, the collected information is compiled into a report reflecting booking information for each selected alternative lodging property that is available. The report is displayed to the user, from which they can book a reservation at particular lodging properties. The displayed report may include information reflecting room type, rate, rate type, policies, icons for booking, and extra available resources such as cribs or roll away beds, for each available room at a particular lodging property. The report may also include graphical images of the
I lodging properties, and selected rooms. In an alternate embodiment of the invention, the report may show unavailable lodging properties as well, depending upon the user's preferences designated in the user's request 501. The operation of the booking process will be explained below with reference to Figure 7.
Figure 6D illustrates the process performed when the comparison icon is selected in step 650. At step 680, search comparison ranking processor 465 executes a HOT command for each selected alternative lodging property. At step 682, the HOT commands initiate a query to collect amenity codes associated with each selected alternative lodging property. The query may be directed to lodging management servers associated with each selected property, or may be directed to the lodging property datastore 430, which houses current lodging property description information. At step 684, the amenity codes are decoded and a table is generated reflecting the amenities associated with each selected lodging property. At step 686, search comparison ranking processor 465 determines whether every selected alternative lodging property has been queried, and if not, processing is returned to step 680. If all of the alternative lodging properties have been queried, a comparison table is displayed at step 688.
The displayed comparison table may include detailed amenity and description information associated with each selected lodging property. The amenity information may include information regarding the status of dining facilities, swimming facilities, health and fitness facilities, conference room facilities, television capabilities, game room facilities, and other similar amenities known to be associated
with hotels. The description information may include address information, distance from the search point designated by the user in the request, price ranges, number of rooms and floors provided by the property, graphical images of the property and facilities, and other similar descriptive information associated with hotels. The user may select specific lodging properties displayed in the table by selecting designated selection icons associated with each lodging property. Upon selection of these icons, search comparison ranking processor 465 passes the operations to the information processing procedures described in Figure 6C.
Figure 7 illustrates booking operations performed by hotel genie server 400. At step 710, business logic processor 405 receives requests reflecting the user's selections of particular alternative lodging properties they wish make a reservation with. Booking processor 450 receives the user's selections from business logic processor 405, and retrieves availability information associated with the selected alternative lodging property from lodging property datastore 430. Booking processor 450 may then generate a table in calender format reflecting daily rates for particular days in particular months designated by the dates reflected in the user's request 501. In the event no dates were included in user's request 501, booking processor 450 may generate the table corresponding to the current month that user's request 501 was made. Booking processor 450 may be programmed to generate tables for any month, and is not limited to default to the current month. Booking processor 450 subsequently creates a graphical image reflecting a monthly calender designated by the created table. The calender image may show the daily rates provided by the lodging property for each day of the month. The user may choose particular days they are interested in staying at the lodging property by selecting the days on the displayed calender. The selection process may be perfonned using an input device, such as a mouse, keyboard, stylus, finger, or any other well known input device. The user's selections may be highlighted by the input device, thus showing the user the rates and days being selected for booking in a user friendly manner. A variety of input selection techniques may be implemented with the present invention, and methods, systems, and articles of manufacture consistent with the present invention are not limited to the particular examples described above.
A variety of selection techniques may be programmed into the booking processor 450 to enable users to have a plurality of options on how they manipulate the information displayed in the booking calender. Additionally, a variety of graphical images representing the booking table information may be selected for the user to view, and methods, systems, and articles of manufacture consistent with the present invention are not limited to the specific examples described above. For example, the calender image generated by booking processor 450 may be altered to be displayed in a weekly or daily format.
At step 720, the day selections are compiled by booking processor 450 and a sell message is generated and sent to the central reservation server (CRS) associated with the selected lodging property through supplier system interface 410 and network interface 445. Supplier interface 530 receives the sell message and processes the request for reservations for the rates and days selected by the user.
At step 730, supplier interface 530 then generates a confirmation message reflecting a confirmation of the reservations for the selected rooms on the days selected by the user. In the event several different rates apply, separate confirmation messages may be generated for each rate type. The confirmation message(s) are returned to hotel genie server 400, and passed to booking processor 450, via network interface 445 and supplier system interface 410. At step 740, booking processor 450 compiles the confirmation message(s) and generates confirmation information to be displayed to the user at the user interface 510. Accordingly, users may view the confirmation information and acknowledge that they have reserved the selected rooms on the dates they chose, in real-time. The confirmation messages may be passed to the user using a variety of forms of communication techniques including, but not limited to, E-mails, auto-return voicemails, facsimile messages, pager messages, and any other form of communication technique that would enable the user to receive the confirmation message.
Conclusion
As explained, systems consistent with the present invention permit a traveler, seasoned or occasional, to systematically discover and take advantage of
information from hotel establishments without having to individually search for the locations of these establishments. Travelers are essentially educated and perform reservation operations just as if he or she had the services of a seasoned traveler or reservation agent by their side. Methods, systems and articles of manufacture consistent with the present invention house lodging property information, including rate information, such that it is provided to the traveler on a real-time basis. Methods, systems and articles of manufacture consistent with the present invention continually update the lodging property information to provide current information to the traveler. Additionally, methods, systems and articles of manufacture consistent with the present invention search for the best rate provided by the lodging properties. Such systems conduct this search by checking the rates of lodging properties. They go a step further than even the seasoned traveler or reservation agent by requesting just-in- time "best offer" rate quotes from lodging properties, thereby creating a type of online, last-minute auction.
The foregoing description of an implementation of the invention has been presented for purposes of illustration and description. It is not exhaustive and does not limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or maybe acquired from practicing of the invention. For example, the described implementation includes software but the present invention maybe implemented as a combination of hardware and software or in hardware alone. The invention may be implemented with both object-oriented and non-object-oriented programming systems. Additionally, although aspects of the present invention are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on other types of computer-readable media, such as secondary storage devices, like hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet or other propagation medium; or other forms of RAM or ROM. The scope of the invention is defined by the claims and their equivalents.