1. Technical Field
The present invention relates in general to a system and method for providing electronic restaurant menus. In particular, the present invention relates to a system and method for providing a wireless electronic menu that interacts with a restaurant server.
2. Description of the Related Art
Traditional restaurant menus often lack information that consumers would like to have before making their order. Pictures, in-depth description, and nutritional information is often lacking. In addition, changes to the menu or “daily specials” are often poorly communicated to customers. Daily specials are often hand-written on a chalk board or white board near the front of the restaurant or printed on loose pieces of paper that are slipped into the menu. The problem with these approaches is that the patron often forgets the daily special by the time he or she is seated and loose pieces of paper often fall out of the menu. The problem with in-depth information, including pictures, in-depth descriptions, and nutritional information, is that providing this information in a traditional menu takes additional space, making the menu overly large and cumbersome to handle. In addition, when something changes, it is difficult to change the traditional menu. Often changes, such as price increases, are taped or written over the original price making the menu look less professional. However, printing new menus every time something changes is exceedingly expensive for most restaurants.
The above described challenges with traditional restaurant menus are further exacerbated when dealing with a person with particular dietary needs. For example, someone with a food allergy needs to know whether the food they are ordering contains any traces of the food that causes the allergic reaction. Wait staff that assists customers often has a high degree of turnover and, therefore, does not always know specific details regarding items that appear on the menu.
What is needed, therefore, is a system and method that provides an up-to-date electronic restaurant menu with detailed information regarding menu items. Further, what is needed is an electronic menu that provides a patron with the status, such as the amount of time to completion, for their order. Finally, what is needed is an electronic menu that allows the patron to order directly from the menu without having to wait for wait staff and that also allows the patron to pay using the electronic menu rather than entrusting the patron's credit card to an unknown wait staff person.
It has been discovered that the aforementioned challenges are resolved using a system and method that provides an electronic menu that is wirelessly interconnected with a restaurant's server. The electronic menu runs on a portable computing device (the electronic menu device), such as a tablet PC. The restaurant server provides the electronic menu device with the menu items as well as menu updates, such as daily specials, and menu software used to navigate through the menu items and options.
When requested by the patron, the electronic menu provides the patron with details regarding menu items including detailed descriptions, photographs and videos, and nutritional information. Frequently requested information can be stored on the electronic menu device for faster retrieval, while less frequently requested information can be stored on the restaurant server and transmitted to the electronic menu device upon request in order to conserve storage space on the electronic menu device.
The patron navigates through the electronic menu using a touch screen or other input mechanism. The patron places his or her order which is wirelessly transmitted to the restaurant server and communicated to the restaurant kitchen staff. The patron can also use the electronic menu device to request assistance and request the status of an order that has been placed. The patron can pay using the electronic menu device by providing credit card information or the patron can request assistance and provide payment, such as cash, to the restaurant's wait staff.
The foregoing is a summary and thus contains, by necessity, simplifications, generalizations, and omissions of detail; consequently, those skilled in the art will appreciate that the summary is illustrative only and is not intended to be in any way limiting. Other aspects, inventive features, and advantages of the present invention, as defined solely by the claims, will become apparent in the non-limiting detailed description set forth below.
The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
The following is intended to provide a detailed description of an example of the invention and should not be taken to be limiting of the invention itself. Rather, any number of variations may fall within the scope of the invention, which is defined in the claims following the description.
In the example shown in
Returning to
Based upon the item being ordered, no additional items or several additional items may be included. In the example shown, the patron is informed that the steak includes two side dishes with additional sides being available for a given price. If the patron selects more than the allowed number (two), then the amount of the additional sides will be included in the bill. In the example shown in
Save selections command button 580 is used when the patron is finished making selections and wishes to save the selections and return to the previously displayed screen (such as menu screen 100 shown in
In one embodiment, the patron can view the actual preparation of the patron's order. Video window 630 provides a video feed of the order being prepared. When requested by the patron pressing view command button 640, the video feed from the camera in the kitchen area that is directed towards the patron's order is wirelessly sent from the restaurant server to the patron's electronic menu device and displayed in window 630.
Menu command button 650 takes the patron back to the electronic menu so the patron can view other items or make additional orders, such as ordering dessert (see
The patron selects pay electronic menu command button 710 to process a credit card payment. In one embodiment, a credit card reader is attached to the electronic menu device so that the patron simply swipes the credit card using the reader. In an alternative embodiment, a textbox can be used for entering credit card information such as the patron's name, credit card number, expiration date, and any other information required by the credit card company.
Authorization summary 760 provides status on the patron's credit card authorization. In one embodiment, such as with a electronic menu device that includes tablet PC functionality, the patron uses at stylus to provide a signature in input area 770. In another embodiment, a paper statement is provided, either by wait staff or printed from the electronic menu device, that is signed by the patron using a standard pen. If the patron chooses to provide payment, such as cash, to a member of the wait staff, the patron selects pay waiter command button 780 and a member of the wait staff is notified and provides assistance to the patron.
Preferably prior to the assignment, the electronic menu device is loaded with electronic menu 820, any menu updates, such as specials, 835, and menu software 840 used to control the patron's use of the electronic menu device and provide the various functionality. Restaurant server 810 retrieves this information from nonvolatile storage area 815, such as a fixed disk drive. Detailed descriptions, nutritional information, photographic material (850) can be provided before assignment of the electronic menu device or, if electronic menu device storage space is limited, some or all of this information can reside on server 810 and be wirelessly transmitted to the electronic menu device when requested by the patron. Video feeds 850, such a video feed of the patron's order being prepared, are also provided to the electronic menu device from the restaurant server.
When patrons 830 have used electronic menu device 825 and made their selections, orders 855 are wirelessly transmitted from electronic menu device 825 to electronic menu device 810. Order details 860 are provided to kitchen area for actual preparation of the order. If, at any time, the patrons require assistance, they use electronic menu device to indicate their request and assistance request 865 is wirelessly transmitted from electronic menu device 825 to restaurant server 810. The appropriate member of the wait staff is retrieved based upon the patron's location or assignment and assistance request 870 is wirelessly transmitted to portable device 880, such as a digital assistant device, which is carried by member of the wait staff 875. If a video feed is requested, a video camera in kitchen area 840 captures video of the patron's order being prepared and video feed 845 which is connected to restaurant server 810 and wirelessly transmitted to electronic menu device 825 for viewing by the patrons.
Patrons 830 can also use electronic menu device 825 to request status, whereupon status request 885 is wirelessly transmitted from electronic menu device 825 to restaurant server 810. Status information 890, such as the current preparation activity and the estimated time to completion, is provided by the kitchen area to restaurant server 810. The restaurant server forwards status information 895 to electronic menu device using a wireless transmission.
After each of the aforementioned processes are performed, processing loops back to receive the patron's next request at step 910. This looping continues until the patron requests to checkout, at which point predefined process 970 is performed (see
When a patron enters the restaurant, the electronic menu device is provided to the patron and the wait staff, such as the host or hostess, assigns the electronic menu device to the patron (step 1040). This information is transmitted to the restaurant server whereupon, at step 1045, the restaurant server receives and records the assignment of the electronic menu device to the patron. The assignment also includes the table or other location information so that the wait staff can easily locate the patron should the patron require assistance or upon completion of the patron's order. The restaurant server retrieves a timestamp indicating the last time that the electronic menu device that was assigned to the patron was updated. Based upon this information, a determination is made as to whether updates are needed by the electronic menu device (decision 1055). If updates are needed, such as new program files or new menu data (e.g., daily specials), then decision 1055 branches to “yes” branch 1058 whereupon the needed program updates and menu data are sent to the electronic menu device and the current timestamp is written recording the electronic menu device's last update time (step 1060). The electronic menu device receives any program or menu updates at step 1065.
The patron then uses the electronic menu device to make selections and order (predefined process 1070, see
The electronic menu device is reset and made ready for another patron to use (step 1090). A determination is made as to whether the electronic menu device is assigned to another patron (decision 1092). If it is assigned to another patron, decision 1092 branches to “yes” branch 1094 which loops back to assign the electronic menu device to another patron and process the next patron's requests. This looping continues until the electronic menu device is not assigned to another patron (e.g., the restaurant is closing and the electronic menu device is shutdown), at which point decision 1092 branches to “no” branch 1096 and electronic menu device processing ends at 1099.
Restaurant server processing commences at 1101 whereupon, at step 1125, the restaurant server receives a request for information from an electronic menu device. The request includes the unique identifier of the electronic menu device making the request. At step 1130, the restaurant server searches its memory areas and nonvolatile storage areas for the requested information. A determination is made as to whether the requested information was found (decision 1135). If the requested information was not found by the restaurant server, decision 1135 branches to “no” branch 1138 whereupon, at step 1140, the information is set to “none.” On the other hand, if the requested information was found, decision 1135 branches to “yes” branch 1142 bypassing step 1140. At step 1145 the information (either “none” or the retrieved information) is returned to the requesting electronic menu device and restaurant server processing ends at 1150.
Returning to electronic menu device processing, the electronic menu device receives the requested information from the server at step 1155. Returning to decision 1110, if the information was found on the electronic menu device, decision 1110 branches to “yes” branch 1158 bypassing steps 1120 and 1155. A determination is made as to whether any information has been gathered to display to the patron (decision 1160). If information was gathered, decision 1160 branches to “yes” branch 1165 whereupon, at step 1170, the retrieved information is displayed to the patron on the electronic menu device's display screen. On the other hand, if no information was gathered, decision 1160 branches to “no” branch 1175 whereupon, at step 1180, a message is displayed to the patron using the electronic menu device's display screen indicating that the requested information is not available. After the requested information or the message is displayed to the patron, processing returns at 1195.
Restaurant server processing commences at 1201 whereupon, at step 1225, the restaurant server receives a request for selection options from an electronic menu device. The request includes the unique identifier of the electronic menu device making the request and the selection identifier that uniquely identifies the selection. At step 1230, the restaurant server searches its memory areas and nonvolatile storage areas for the selection options. A determination is made as to whether the selection options were found (decision 1235). If the selection options were not found by the restaurant server, decision 1235 branches to “no” branch 1240 whereupon, at step 1245, the options are set to “none.” On the other hand, if the selection options were found, decision 1235 branches to “yes” branch 1250 bypassing step 1245. At step 1255 the selection options (either “none” or the retrieved selection options) are returned to the requesting electronic menu device and restaurant server processing ends at 1160.
Returning to electronic menu device processing, the electronic menu device receives the requested selection options from the server at step 1265. Returning to decision 1210, if the selection options were found on the electronic menu device, decision 1210 branches to “yes” branch 1268 bypassing steps 1220 and 1265. A determination is made as to whether any selection options have been gathered to display to the patron (decision 1270). If selection options were gathered, decision 1270 branches to “yes” branch 1272 whereupon, at step 1275, the options that are available for the patron's selection are displayed on the electronic menu device's display screen. At step 1280, the electronic menu device receives the patron's option selections, and at step 1285, the patron's option selections are stored, and processing returns at 1295.
On the other hand, if there are no options corresponding to the patron's selection, decision 1270 branches to “no” branch 1290 bypassing steps 1275-1285 and processing returns at 1295.
Restaurant server processing commences at 1301 whereupon, at step 1320, the restaurant server receives a selection and any options from the patron's electronic menu device. At step 1325, the restaurant server checks available inventory to ensure that the selection and/or options are available. A determination is made as to whether the selection and options are available (decision 1330). If the selections and/or one or more of the options are not available, decision 1330 branches to “no” branch 1332 whereupon, at step 1335, an error message is sent to the patron's electronic menu device and informing the patron of which selection/option(s) are unavailable, and restaurant server processing ends at 1340. On the other hand, if the selection and options are available, decision 1330 branches to “yes” branch 1342 whereupon, at step 1345 an acknowledgement is sent to the patron's electronic menu device in a wireless message.
Returning to electronic menu device processing, an acknowledgement or an error is received at step 1350. A determination is made as to whether an error was received (decision 1355). If an error was received, decision 1355 branches to “yes” branch 1358 whereupon electronic menu device processing returns so that the patron can make an alternative selection. On the other hand, if an error was not received, decision 1355 branches to “no” branch 1362 whereupon a determination is made as to whether there are more menu selections that have been made by the patron that need to be transmitted to the restaurant server (decision 1365). If there are more menu selections to process, decision 1365 branches to “yes” branch 1366 which loops back to retrieve and process the patron's next menu selection. This looping continues until there are no more menu selections to process, at which point decision 1365 branches to “no” branch 1368 whereupon, at step 1370, a message is sent to the restaurant server notifying the restaurant server that there are no more selections in the patron's order, and electronic menu device processing returns at 1375.
Returning to restaurant server processing, the restaurant server receives a reply at 1380. A determination is made as to whether the reply indicates that the order has been completely sent to the server (decision 1385). If the order has not been completely sent, decision 1385 branches to “no” branch 1386 which loops back to receive and process the next selection from the electronic menu device. This looping continues until the restaurant server receives a reply indicating that the patron's order has been completely sent and received, at which point decision 1385 branches to “yes” branch 1388 whereupon, at step 1390, all of the menu selections and options ordered by the patron are sent to the kitchen for preparation. Restaurant server processing thereafter ends at 1395.
Restaurant server processing commences at 1401 whereupon, at step 1410 the assistance request is received from a patron's electronic menu device. The restaurant server uses the identifier of the electronic menu device to lookup the patron's table to which the electronic menu device has been assigned (step 1415). The table identifier, such as a table number, is matched against an identifier for a member of the wait staff at step 1420. At step 1425, a wireless message is sent to a handheld device assigned to the wait staff member that informs the member that a particular patron at the identified table has requested assistance and, at step 1430, an acknowledgement is sent to the patron's electronic menu device. Returning to the patron's electronic menu device processing, the acknowledgement is received at step 1435 and a message is displayed at step 1440 indicating that a member of the wait staff will provide assistance momentarily. Electronic menu device processing thereafter returns at 1445.
Wait staff processing commences at 1402 whereupon, at step 1450, the handheld unit assigned to the wait staff member receives a message from the restaurant server that a particular patron has requested assistance. At step 1455, the wait staff member acknowledges the request and walks to the patron's table to provide assistance. Wait staff handheld processing thereafter ends at 1460.
Returning to restaurant server processing, at ste[ 1465, the restaurant server receives an acknowledgement from the wait staff member who is using the handheld device. A determination is made as to whether an acknowledgement is received from the wait staff member within a given period of time (decision 1470). If an acknowledgement was not received, decision 1470 branches to “no” branch 1475 whereupon, at step 1480, the restaurant server contacts another wait staff member or a manager to provide the patron with assistance. On the other hand, if an acknowledgement is received within the time period, decision 1470 branches to “yes” branch 1485 bypassing step 1480. Restaurant server processing thereafter ends at 1495.
At 1520, the kitchen sends an initial status of the order's preparation to the restaurant server. The restaurant server, at step 1525, receives the current status from the kitchen process and forwards the status information to the patron's electronic menu device. The patron's electronic menu device receives and displays the current status of the order at step 1540.
Returning to the kitchen process, the kitchen process transmits an estimated time to completion for the order at step 1530. The estimated time is received by the restaurant server and forwarded to the patron's electronic menu device at step 1535. At step 1542, the estimated time to complete the order is received at patron's electronic menu device and a decrementing counter is started beginning at the estimated time.
Returning to the kitchen process once again, a camera identifier corresponding to a camera that is currently capturing video of the area of the kitchen where the patron's order is being prepared is sent to the restaurant server at step 1545. The restaurant server receives and stores the camera identifier at step 1550. At step 1555, the restaurant server begins sending a video feed from camera 1560, where camera 1560 corresponds to the received camera identifier, to the patron's electronic menu device. Restaurant server processing thereafter ends at 1565.
The video feed is received by the patron's electronic menu device at step 1565. At step 1570 the information received from the restaurant server is displayed on the patron's electronic menu device. This information includes the current status of the order, the decrementing counter representing the estimated time to completion, and the video feed (if available), showing the patron's order being prepared by the kitchen staff. Patron electronic menu device processing thereafter returns at 1575.
Returning to the kitchen process, a determination is made as to whether there are any changes to the order's status, estimated time to completion, or the camera identifier corresponding to the camera being used to video the patron's order being prepared (decision 1580). An example of a change would be when an order moves from one preparation area to another, it would be likely that both the current status and camera identifiers would change. If the kitchen process notices any change in the status, completion time, or camera identifier, decision 1580 branches to “yes” branch 1585 which loops back to capture the changed information and transmit any changes to the restaurant server which, in turn, passes the changed information back to the patron's electronic menu device. This looping continues until there are no more changes (i.e., the order is complete), at which time decision 1580 branches to “no” branch 1590 and processing ends at 1595.
On the other hand, if the patron chooses to pay using the electronic menu device, decision 1605 branches to “no” branch 1612 whereupon, at step 1615 the patron decides how much gratuity to pay the waiter and the total bill amount (including gratuity) is computed. At step 1620, the total bill amount and the patron's credit card information are sent to the restaurant server for processing.
Restaurant server processing commences at 1601 whereupon, at step 1625 the restaurant server receives the patron's bill total and the patron's credit card information. At step 1630 the restaurant server contacts a credit card service for approval of the charge to the patron's credit card. At step 1635, the restaurant server receives an approval or a denial from the credit card service and, at step 1640, the approval or denial is sent to the patron's electronic menu device.
Returning to patron's electronic menu device processing, the approval or denial is received and displayed at the electronic menu device at step 1645. A determination is made as to whether the charge was approved (decision 1650). If the charge was not approved, decision 1650 branches to “no” branch 1652 whereupon the patron's electronic menu device requests assistance from a member of the restaurant's wait staff (predefined process 1610, see
Returning to restaurant server processing, a determination is made as to whether the patron's credit card charge was approved by the credit card service (decision 1675). If the charge was approved, decision 1675 branches to “yes” branch 1678 whereupon, at step 1680, the restaurant server receives a signature from the patron using the electronic menu device and, at step 1685, a record of the sale is made and recorded to a nonvolatile storage device. On the other hand, if the charge was denied, decision 1675 branches to “no” branch 1688 whereupon, at step 1690, a manager or member of the wait staff is notified of the situation. Restaurant server processing thereafter ends at 1695.
PCI bus 1714 provides an interface for a variety of devices that are shared by host processor(s) 1700 and Service Processor 1716 including, for example, flash memory 1718. PCI-to-ISA bridge 1735 provides bus control to handle transfers between PCI bus 1714 and ISA bus 1740, universal serial bus (USB) functionality 1745, power management functionality 1755, and can include other functional elements not shown, such as a real-time clock (RTC), DMA control, interrupt support, and system management bus support. Nonvolatile RAM 1720 is attached to ISA Bus 1740. Service Processor 1716 includes JTAG and I2C busses 1722 for communication with processor(s) 1700 during initialization steps. JTAG/I2C busses 1722 are also coupled to L2 cache 1704, Host-to-PCI bridge 1706, and main memory 1708 providing a communications path between the processor, the Service Processor, the L2 cache, the Host-to-PCI bridge, and the main memory. Service Processor 1716 also has access to system power resources for powering down information handling device 1701.
Peripheral devices and input/output (I/O) devices can be attached to various interfaces (e.g., parallel interface 1762, serial interface 1764, keyboard interface 1768, and mouse interface 1770 coupled to ISA bus 1740. Alternatively, many I/O devices can be accommodated by a super I/O controller (not shown) attached to ISA bus 1740.
In order to attach computer system 1701 to another computer system to copy files over a network, LAN card 1730 is coupled to PCI bus 1710. Similarly, to connect computer system 1701 to an ISP to connect to the Internet using a telephone line connection, modem 1775 is connected to serial port 1764 and PCI-to-ISA Bridge 1735.
While the computer system described in
One of the preferred implementations of the invention is a client application, namely, a set of instructions (program code) in a code module that may, for example, be resident in the random access memory of the computer. Until required by the computer, the set of instructions may be stored in another computer memory, for example, in a hard disk drive, or in a removable memory such as an optical disk (for eventual use in a CD ROM) or floppy disk (for eventual use in a floppy disk drive), or downloaded via the Internet or other computer network. Thus, the present invention may be implemented as a computer program product for use in a computer. In addition, although the various methods described are conveniently implemented in a general purpose computer selectively activated or reconfigured by software, one of ordinary skill in the art would also recognize that such methods may be carried out in hardware, in firmware, or in more specialized apparatus constructed to perform the required method steps.
While particular embodiments of the present invention have been shown and described, it will be obvious to those skilled in the art that, based upon the teachings herein, that changes and modifications may be made without departing from this invention and its broader aspects. Therefore, the appended claims are to encompass within their scope all such changes and modifications as are within the true spirit and scope of this invention. Furthermore, it is to be understood that the invention is solely defined by the appended claims. It will be understood by those with skill in the art that if a specific number of an introduced claim element is intended, such intent will be explicitly recited in the claim, and in the absence of such recitation no such limitation is present. For non-limiting example, as an aid to understanding, the following appended claims contain usage of the introductory phrases “at least one” and “one or more” to introduce claim elements. However, the use of such phrases should not be construed to imply that the introduction of a claim element by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim element to inventions containing only one such element, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an”; the same holds true for the use in the claims of definite articles.