Remote selection of beverages using a beverage dispenser
By integrating wireless communication and web browser software into the beverage dispenser and using QR codes to achieve contactless interaction, the queuing problem and mobile application dependence of the self-service beverage dispensing system are solved, improving the system's efficiency and flexibility.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- THE COCA COLA CO
- Filing Date
- 2021-05-28
- Publication Date
- 2026-04-14
AI Technical Summary
Existing self-service beverage dispensing systems are prone to queuing problems when multiple consumers use them simultaneously, and consumers need to download a specific mobile application to interact with the beverage dispenser, which limits the flexibility and efficiency of use.
By integrating wireless communication devices and web browser software into the beverage dispenser, and using QR codes to achieve contactless interaction with mobile devices, consumers can select and control beverages through a regular Internet connection. The beverage dispenser communicates bidirectionally with the web server, enabling personalized interaction without the need for a dedicated mobile application.
It solves the queuing problem, improves the efficiency and flexibility of the beverage dispensing system, allows consumers to interact with the beverage dispenser using ordinary mobile devices, and simplifies the operation process.
Smart Images

Figure CN115916689B_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application claims priority to U.S. Provisional Patent Application Serial No. 63 / 032,610, filed May 30, 2020, entitled “Remote Beverage Selection with a Beverage Dispenser,” and U.S. Patent Application Serial No. 17 / 007,608, filed August 31, 2020, entitled “Remote Beverage Selection with a Beverage Dispenser,” and is incorporated herein by reference in its entirety.
[0003] background
[0004] Traditional post-mixing beverage dispensing systems typically mix syrups, concentrates, sweeteners, additional flavorings, other types of flavorings, and / or other ingredients containing water or other types of diluents by directing the syrup stream downwards along the center of the nozzle while the water stream flows around the outside. The syrup and water streams are guided downwards so that they mix as they fall into the consumer's cup. The overall goal is for beverage dispensing systems to provide as many different types and flavors of beverages as possible with the smallest possible footprint. Recent improvements in beverage dispensing technology focus on the use of micro-ingredients. With micro-ingredients, traditional beverage bases can be separated into components with much higher dilution or reconstitution ratios.
[0005] This technology is made possible by a cartridge containing highly concentrated micro-ingredients. The micro-ingredients are mixed with sweeteners and still or sparkling water using precise metering and dosing techniques, and dispensed through nozzles that promote air mixing to prevent residue. The technology includes user input for selecting the desired beverage, customizing the drink (if desired), and dispensing it at the dispenser. These beverages are made with precise recipes to ensure good taste regardless of customization.
[0006] The use of micro-ingredients in a post-mixing beverage dispensing system significantly increases the number of beverage options available at a given dispenser. For example, personalized interaction with the beverage dispenser can be performed as described in US2015 / 0082243, filed September 15, 2014, entitled “ProductCategorization User Interface for a Dispensing Device,” which is incorporated herein by reference in its entirety.
[0007] Because a large number of users may form queues or sequences (i.e., queues) waiting for their turn to interact with the beverage dispenser, a queuing problem can arise, where it becomes difficult to determine which consumer is using the dispenser and wants to interact with it at a given time. The queuing problem is particularly pronounced when the handshake between the dispenser and the consumer's mobile computing device is conducted via wireless communication technology, the range of which can cover multiple consumer mobile computing devices. The queuing problem can be further exacerbated when there are multiple beverage dispensers within wireless communication range.
[0008] Existing solutions to the queuing problem focus on deterministic methods that determine which consumer is using a particular beverage dispenser at a given time. For example, a consumer using a beverage dispenser can scan its identifier with their mobile computing device, as described in US2015 / 0039776, filed February 5, 2015, entitled "Facilitating Individualized User Interaction with an Electronic Device," which is incorporated herein by reference in its entirety. Similarly, for the wireless handshake between the beverage dispenser and the consumer's mobile computing device, the range of the radio beacon transmitting the beverage dispenser's identifier is limited (e.g., within 1 to 12 inches of the beverage dispenser) to constrain the likelihood of multiple mobile computing devices in or adjacent queues receiving the signal, as described in US2018 / 0288594, filed September 27, 2016, entitled "Dispenser Connectivity," which is also incorporated herein by reference in its entirety.
[0009] Another development in beverage fulfillment has allowed consumers to interact with beverage dispensers using personal computer device applications (i.e., “mobile apps”). An example implementation of a beverage dispenser controlled by a mobile app is discussed in detail in co-owned international patent application PCT / US2019 / 067875, filed December 20, 2019, and incorporated herein by reference. As discussed therein, when the mobile application installed on the consumer's mobile device reports to the server that it has received a first dispenser identifier (e.g., a scanned QR code) from a certain area, the server can supply data about available beverages. For example, the server can supply a consumer's profile to all beverage dispensers within a specific retailer or to all beverage dispensers within a predetermined distance from the consumer's mobile device. In this non-limiting alternative embodiment, each beverage dispenser maintains a regional profile database—a profile of consumers within a given area (e.g., a retailer or a predetermined distance). Similarly, when the mobile application no longer receives a first dispenser identifier within a threshold time period or leaves the area, the consumer's profile is removed from the regional profile database.
[0010] Even with so much development in beverage fulfillment using mobile devices, consumers remain hampered by technological barriers that require modifications to current beverage systems. Today's beverage customer base uses self-service beverage dispensers across multiple locations and often "flash" (making impulse purchase decisions instantly). Consequently, some customers may not want to download necessary software and mobile apps, especially if a specific app is required for each retail location. In the beverage fulfillment space, there continues to be a need for a simpler system to use self-service beverage dispensers and to provide consumers with maximum flexibility.
[0011] Overview
[0012] In one embodiment, a computerized system for beverage order fulfillment can be described as a system in which a first computer is connected to communicate bidirectionally electronically with at least one server via a network. A beverage dispenser having a processor and a computerized memory storing beverage dispensing software thereon communicates electronically with the at least one server via the network. The first computer incorporates web browser software stored on the first computer, and the web browser software is configured to initiate a communication session with the at least one server. An interactive graphical user interface (GUI) can be displayed on the first computer via the web browser, and the interactive GUI is configured and updated via communication from the at least one server. Data entry options are displayed on the interactive GUI to allow the first computer to transmit a beverage selection command to the beverage dispensing software via the at least one server in a corresponding beverage fulfillment instance. The at least one server incorporates a network socket application programming interface (API), which is stored on the at least one server and configured to connect a communication link between the beverage dispenser and the web browser software on the first computer. These and other features will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims.
[0013] In another embodiment, a computer-implemented method for beverage fulfillment includes establishing a beverage fulfillment instance using electronic communication between a mobile device and a beverage dispenser via a web server using a corresponding computer. The first computer may be a mobile device that scans a QR code displayed on the beverage dispenser to initiate the electronic communication between the mobile device, the web server, and the beverage dispenser. The first computer or mobile device is connected to a URL at the web server, wherein the URL is embedded within the QR code. The method continues by receiving an interactive graphical user interface (GUI) at the mobile device from the web server corresponding to beverage options available at the beverage dispenser and using the GUI to transmit a beverage command to the URL. The web server is used to implement the beverage command using beverage dispensing software stored on the beverage dispenser.
[0014] In another embodiment, the beverage dispenser may include a beverage dispenser display connected to a computer processor and a computerized memory storing beverage dispensing software. The beverage dispenser includes: a nozzle configured to dispense a selected beverage; and a plurality of pumping and / or metering devices, each configured to supply beverage ingredients of the selected beverage from an ingredient source to the nozzle according to a command executed in the beverage dispensing software. A communication device is configured to connect the beverage dispenser to a network server over a network and receive beverage selection commands from the network server. Attached Figure Description
[0015] To gain a more complete understanding of this disclosure, reference is now made to the following brief description taken in conjunction with the accompanying drawings and detailed description, wherein similar reference numerals denote similar parts.
[0016] Figure 1 An exemplary system block diagram is shown for preloading beverage selections on a beverage dispenser according to various embodiments of this disclosure.
[0017] Figure 2A This document presents an overview diagram of a communication system that enables a mobile device to control a beverage dispenser, based on the disclosures herein.
[0018] Figure 2B This document presents an overview diagram of a communication system that enables a mobile device to control a beverage dispenser, based on the disclosures herein.
[0019] Figure 2C This document presents an overview diagram of a communication system that enables a mobile device to control a beverage dispenser, based on the disclosures herein.
[0020] Figure 3 A data sequence according to an embodiment of this disclosure is shown, through which a mobile device controls a beverage dispenser via a web server.
[0021] Figure 4 Exemplary dealerships with multiple beverage dispensers located therein are shown according to various embodiments of this disclosure.
[0022] Figure 5 Multiple consumers at different ranges of a row of beverage dispensers are shown according to various embodiments of this disclosure.
[0023] Figure 6 Exemplary graphical user interface screens on mobile devices for controlling a corresponding beverage dispenser and navigating options on the beverage dispenser, according to various embodiments of this disclosure, are shown.
[0024] Figure 7 Exemplary graphical user interface screens on a beverage dispenser for navigating to a selected beverage associated with the beverage dispenser, according to various embodiments of this disclosure, are shown.
[0025] Figure 8 Exemplary graphical user interface screens on mobile devices according to various embodiments of this disclosure are shown.
[0026] Figure 9 Exemplary beverage dispenser systems suitable for implementing several embodiments of this disclosure are shown.
[0027] Figure 10 Exemplary fluid circuits with positive displacement pumps suitable for implementing several embodiments of this disclosure are shown.
[0028] Figure 11 Exemplary fluid loops with static mechanical flow control elements are shown that are suitable for implementing several embodiments of this disclosure.
[0029] Figure 12 Exemplary fluid loops with dynamic mechanical flow control elements and flow meters are shown that are suitable for implementing several embodiments of this disclosure.
[0030] Figure 13 Exemplary fluid loops with multiple independent control paths originating from a single ingredient source are shown, suitable for implementing several embodiments of this disclosure.
[0031] Figure 14 An exemplary block diagram of the control architecture for a beverage dispenser applicable to several embodiments of this disclosure is shown.
[0032] Figure 15 Exemplary computer systems suitable for implementing several embodiments of this disclosure are shown.
[0033] Detailed description
[0034] Initially, it should be understood that although illustrative implementations of one or more embodiments are described below, the disclosed systems and methods can be implemented using any number of techniques, whether currently known or existing. This disclosure should not in any way limit itself to the illustrative embodiments, drawings, and techniques described below, but can be modified within the full scope of the appended claims, together with their equivalents. The phrase “and / or” indicates that any one or any combination of options in the list can be used. For example, “A, B, and / or C” means “A”, or “B”, or “C”, or “A and B”, or “A and C”, or “B and C”, or “A and B and C”.
[0035] Beverage dispenser 102 may have one or more wireless communication devices associated with the dispenser, thereby providing additional functionality to the various embodiments of this disclosure. For example, if such technology facilitates secure communication with customer devices, servers, or other computers in a retail store, each wireless communication device may be configured to broadcast one or more dispenser identifiers of the beverage dispenser to remote devices. For example, the dispenser identifier may be an identifier shared by multiple beverage dispensers or all compatible beverage dispensers. Another dispenser identifier may uniquely identify a particular beverage dispenser.
[0036] In some implementations, specialized configurations are possible when the beverage dispenser is a "smart dispenser" with multiple communication capabilities. For example, beverage dispenser 102 may include multiple wireless communication devices, each broadcasting a dispenser identifier at different communication ranges and connected to various remote computers. For example, a first wireless communication device may be a WiFi modem 112 with a communication range of approximately 100 to 300 feet. A second wireless communication device may broadcast a second dispenser identifier at a second range of the beverage dispenser. For example, a second wireless communication device may be a Bluetooth beacon with a communication range of approximately 10 to 20 feet.
[0037] As a general overview Figure 1 An exemplary system 100 for preloading a selection of beverages on a beverage dispenser 102, according to various embodiments of this disclosure, is shown. The beverage dispenser 102 includes a user interface 104, such as a display 107 for selecting the desired beverage to be dispensed from a nozzle 106 on the beverage dispenser 102. In some embodiments, the beverage dispenser 102 includes a dispensing compartment 108 for storing multiple beverage ingredients (e.g., beverage micro-ingredients). One or more additional beverage ingredients (not shown) can be supplied to the beverage dispenser 102 from a remote location (e.g., a rear compartment). Additional beverage ingredients may include sweeteners, flavored syrups, carbon dioxide, water, carbonated water, and / or other beverage ingredients. Pumps and / or metering devices (e.g., positive displacement pumps, static mechanical flow control valves, dynamic mechanical flow control valves, shut-off valves, etc.) are coupled between each of the beverage ingredients and the nozzle 106 to control the amount, rate, or proportion of the dispensed beverage ingredient to dispense the selected beverage, as described in more detail below.
[0038] The beverage dispenser 102 may include a control architecture 110 having a modem 112 for communicating with external devices. Although shown as a single component, modem 112 may be multiple modems for communicating using different communication standards. For example, modem 112 may have an Ethernet card and / or a cellular modem for connecting (e.g., via a local gateway, not shown) to a wide area network (WAN) 114, such as the Internet. Modem 112 may additionally include a local wireless communication modem for supporting communication over a local network 116 using one or more local wireless communication standards, such as WiFi, WiFi Direct, Zigbee, Z-Wave, Bluetooth, or Bluetooth Low Energy (BLE) communication. In addition to modem 112, beverage dispenser 102 may also transmit beacons (not shown), such as BLE beacons for broadcasting a unique identifier associated with beverage dispenser 102. These modern features enable a variety of programming and update technologies with state-of-the-art telecommunications processes.
[0039] Beverage dispenser 102 is configured to communicate 118 with remote server 119 via wide area network 114 using modem 112. In some embodiments, beverage dispenser 102 is also configured to receive one or more notifications from server 118 regarding how to handle communications with consumer mobile device 122 intended to utilize beverage dispenser 102. Mobile device 122 may be a smartphone, smartwatch, personal digital assistant, or any other mobile computing device carried by the consumer. Beverage dispenser 102 is also configured to communicate locally with consumer mobile device 122 or point-of-sale (POS) device 124 using modem 112.
[0040] In some non-limiting embodiments, the POS device 124 may be located in the same retail store (e.g., a restaurant, convenience store, etc.) as the beverage dispenser 102. For example, the POS device 124 may be a self-service order entry system for receiving consumer orders at the retail store. The POS device 124 facilitates consumers selecting their desired food order on the POS device 124 when placing their order, before the consumer uses the beverage dispenser 102. The POS device 124 may or may not communicate with the beverage dispenser 102 via a local network 116 (e.g., via wired or wireless communication).
[0041] In some implementations, a single POS device 124 may communicate with each beverage dispenser 102 in a given retail store to facilitate beverage fulfillment. In some implementations, the POS device 124 may be associated with more than one beverage dispenser 102.
[0042] In one embodiment of this disclosure, mobile device 122 avoids requiring consumers to download a mobile application and remains compatible with personalized interactions with the beverage dispenser 102. Embodiments of this disclosure enable the use of mobile device 122 with a standard internet connection (rather than a specialized mobile app) to order (multiple) favorite beverages, browse options for mixed or blended beverages, and maintain access to updated or future beverage options available at one of the aforementioned beverage dispensers 102.
[0043] Typically, mobile device 122 and beverage dispenser 102 are configured for bidirectional online communication via a web server, as discussed below. When the mobile device is located close enough to the beverage dispenser 102 to scan, photograph, or process an image (such as a QR code 155) displayed on the beverage dispenser display 107, an online communication link 118 is facilitated via web server 119. Of course, this disclosure is also broad enough to be used for other beverage dispenser-related technologies that are not the primary focus of this disclosure (e.g., when mobile device 122 is within a first range of beverage dispenser 102 or within the retail store where beverage dispenser 102 is located, if scanning a QR code is not the most efficient means of connection, mobile device 122 and beverage dispenser can connect via web server).
[0044] Figure 2 to Figure 5 Exemplary figures illustrate a communication session 200 between a mobile device 122 and a beverage dispenser 102 according to various embodiments of this disclosure. In the illustrated embodiments, and without limiting the scope of this disclosure, the beverage dispenser 102 may include communication resources, such as, but not limited to, a first wireless communication device and a second wireless communication device configured to broadcast data for wireless communication with the Internet, other computers, and / or the mobile device 122.
[0045] consider Figure 2A The diagram illustrates how mobile device 122 can implement a communication link 118 via web server 119 to beverage dispenser 102 to complete a beverage fulfillment operation. Without limiting the scope of this disclosure, the beverage fulfillment example includes all steps, communications, and beverage dispenser operations through which the consumer selects, completes, and can fill a cup with a ready-to-drink beverage. Figure 2AThe schematic diagram illustrates that at step 201, beverage dispenser 102 connects to network 113 using a communication device such as modem 112, thereby providing an internet connection to network server 119. In one embodiment, at step 202, a retailer of beverages dispensed by beverage dispenser 102 can utilize a private network (providing specialized and secure connections to specific devices via a known internet service provider) to connect thousands of beverage dispensers distributed across various geographical areas to servers, computers, and peripherals described below. At step 203, after communication data from the beverage dispenser connection leaves its private network 113 for communication with consumer-operated mobile device 122 over a public communication network, the beverage dispenser connection can connect to load balancing device 117 and gateway hardware 116 for managing secure communication between mobile device 122 and the beverage dispenser network. As shown in step 204, network traffic flows through load balancer 117 to implement network communication and data processing operations, such as, but not limited to, services provided at least in part by Amazon Web Services (AWS). In some embodiments, traffic leaves AWS and enters a public Internet service provider network (e.g., step 205) to communicate over a global communications network to serve mobile devices operated by beverage consumers. At the retailer, the consumer uses mobile device 122 to select a beverage fulfillment order transmitted across the aforementioned network to complete a beverage fulfillment instance at beverage dispenser 102. Step 206 demonstrates optional connectivity, such as connectivity provided by a cloud service provider, for caching transaction data at the network edge.
[0046] Figure 2BAnother version of the beverage fulfillment instance is illustrated. First, beverage dispenser 102 establishes a communication connection 251 with an application programming interface (“API”) via a gateway (“GW”) that initiates an appropriate network socket protocol (e.g., AWS), and in one embodiment, passes the dispenser 102’s serial number to a web server. At step 252, the API gateway server assigns a security token to beverage dispenser 102 upon connection, sending it every ten seconds. At step 253, beverage dispenser 102 displays a barcode 155 including an encrypted URL on a graphical user interface 104, and at communication connection 251, beverage dispenser 102 sends this barcode 155 along with a previously received security token updated every 10 seconds to API gateway server 123. At step 254, the customer scans the 2D barcode (i.e., QR code 155), authorizing the launch of a web browser on mobile device 122, and opening a mobile version of the website on mobile device 122. A browser on mobile device 122 connects to the API gateway network socket at step 256 and receives an authentication token at step 258 to establish bidirectional communication between mobile device 122 and API gateway server 123. Beverage fulfillment occurs via this connection. At step 255, API gateway server 123 sends a notification to beverage dispenser 102 that mobile device 122 is connected. The dispenser updates its 2D barcode to indicate that the consumer is connected. In step 256, the consumer selects a beverage using the graphical user interface selection options displayed on mobile device 122, received from API gateway server 123, and presses the pour button, ice button, or stop button, as well as other options in various embodiments. In some embodiments, the selection may include choosing to mix the beverage in a desired proportion in a single cup. At step 257, the API gateway relays the pouring event from the mobile device to the dispenser. At 258, the consumer clicks "complete" on the mobile device user interface, indicating a timeout or another activity requiring termination of beverage fulfillment.
[0047] Figure 2CA schematic diagram outlining the operations described above is presented. This diagram essentially illustrates the processes within application layer 215 accessed via gateway server 123, which can initiate cloud-based operations 217 using electronics configured within beverage dispenser 219. Depending on the type of user communicating with web server 119 via API gateway server 123, different application programming interfaces 215 can be implemented by API gateway server 123. In this regard, beverage dispenser 102 can be configured for secure communication via customer user interface 225A and / or non-customer user interface 225B, each with different network socket connections and authorizations. In this way, web server 119 can provide access to appropriate data and communication resources depending on whether the user is a member of the beverage manufacturer's staff (with dedicated access), a beverage dispenser technician (e.g., with maintenance access), or a user with contactless access for beverage purchase as described herein. In the cloud operations 217 available in at least one embodiment, appropriate application services are provided to each user using different network socket connections.
[0048] Figure 3 An exemplary entity sequence diagram 300 illustrates various embodiments of this disclosure for an indirect communication session between a mobile device 122, a web server 119, and a beverage dispenser 102. Sequence diagram 300 shows the server 119 acting as an intermediary to facilitate a communication link 118 between the mobile device 122 and the beverage dispenser 102. The steps of the sequence include, but are not limited to:
[0049] At 325, QR code 155 can be displayed on the graphical user interface 104 of beverage dispenser 102 for reading by mobile device 122 and indicating that it can be used by a mobile phone to obtain a contactless experience. As shown at 325, a consumer can thus scan QR code 155 with their mobile camera and activate the experience via web server 119 without installing a mobile app. Mobile phone or mobile device 122 will prompt the user to ensure they want to activate the contactless experience. In some embodiments, on an LTE smartphone with good signal reception, the mobile experience can be activated in less than three seconds. QR code 155 will have an embedded security token, allowing only someone in front of beverage dispenser 102 to activate the experience. Once the consumer has activated mobile experience 147, it will be connected to beverage dispenser 102 via cloud infrastructure network socket 137. From the consumer's perspective, this will have all the quality of a direct connection, but the security between the two is controlled by web server 119.
[0050] like Figure 3As described above, beverage dispenser 102 continuously updates its connection to the cloud infrastructure and associated network socket 137. A cloud-based web server 119 receives an updated QR code and associated token via periodic security updates between the web server 119 and beverage dispenser 102. The updated QR code is displayed on a display 107 associated with the graphical user interface 104 on the beverage dispenser. At steps 345 and 355, mobile device 102 receives updates to its mobile website connection to web server 119 to appropriately display beverage availability, and other updates relate to using the beverage dispenser. These communications with web server 119 are secured by the previously received communication tokens described at step 325 and discussed in more detail below.
[0051] exist Figure 3 In the context of the beverage dispenser 102, once a consumer connects to the dispenser, the QR code 155 displayed on the beverage dispenser's customer user interface ("CUI") 225A will change to reflect the connection. In a non-limiting embodiment, the QR code 155 with a mobile phone icon at the top can be displayed to indicate that a busy operation is in progress. This will also effectively prevent another consumer from scanning the code. The consumer should be able to select a beverage from the mobile device 122. This selection should also reflect the sold-out option, as the beverage dispenser can transmit inventory data to the web server 119. The customer user interface 225A should reflect that the selection was made by the consumer. This is a good feedback mechanism, but it also allows the consumer to continue their experience using touch in the event of an accidental disconnection. Technician and staff settings established via the corresponding non-customer user interface 225B can enable the consumer to complete the volume dispensing based on existing inputs and settings from the non-customer user interface 225B or retail staff settings. The consumer should be able to cancel dispensing. The consumer may be able to postpone the dispensing operation in some cases. Figure 3 These operations are summarized at points 375 and 385.
[0052] In the touch-to-pour embodiment, if the consumer loses connection to the beverage dispenser 102, the beverage fulfillment instance should cancel pouring after a selected number of milliseconds. This time period can be variable, based on test latency of the network connection between the mobile device, the web server, and the beverage dispenser.
[0053] Once consumers have finished pouring, they should be able to make an "end" screen selection on their mobile devices.
[0054] Once the consumer has fully completed the experience, they should be able to click "Done." This will return the dispenser and 2D barcode to their original state.
[0055] If anyone touches the dispenser CUI while the mobile experience is in operation, the mobile experience will be terminated.
[0056] If the mobile phone loses connection for X seconds or the user does not continue the experience for Y seconds, CUI will return to its original state.
[0057] In one embodiment, a computerized system 200 for beverage order fulfillment can be described as a system in which a first computer 122 is connected to communicate bidirectionally electronically with at least one web server 119 via a network through a gateway server 123. A beverage dispenser 102, having a processor and a computerized memory storing beverage dispensing software thereon, communicates electronically with at least one server via the network. The first computer incorporates web browser software stored on the first computer, and the web browser software is configured to initiate a communication session with at least one server 119. An interactive graphical user interface (GUI) 600 can be displayed on the first computer 122 via a web browser, and the interactive GUI 600 is configured and updated via communication from at least one server 119. Data entry options are displayed on the interactive GUI to allow the first computer to transmit beverage selection commands to the beverage dispensing software via the at least one server in a corresponding beverage fulfillment instance. At least one server incorporates network socket application programming interfaces (APIs) 116, which are stored on the at least one server and configured to connect a communication link 113 to the beverage dispenser 102 and the web browser software on the first computer.
[0058] The encryption program is stored in the computerized memory of the beverage dispenser. The encryption program is configured to... Figure 2C The corresponding beverage fulfillment instances 215 to 217 shown create verification tokens that confirm the authenticity of electronic communication between the first computer, at least one server, and the beverage dispenser. The encryption procedure is further configured to incorporate the verification tokens into a QR code displayed on the beverage dispenser via a display screen, wherein the beverage dispenser transmits the QR code-encoded token to at least one server for use in the corresponding beverage fulfillment instance. A busy icon is displayed on the beverage dispenser display while the beverage fulfillment instance is in progress.
[0059] The beverage dispenser further includes a customer user interface and a non-customer user interface, connecting the beverage dispenser display to the processor and computerized memory of the beverage dispenser. The non-customer user interface may include a specialized screen through which retail store employees can program the functions or functional limitations of the beverage dispenser. The first computer may be a mobile device, which further includes a camera and is configured to launch web browser software and present a beverage selection experience when the camera processes a QR-coded image displayed on the beverage dispenser. The image may include a QR code with a verification token and a URL, which launches a website on the mobile device corresponding to the beverage fulfillment software on the beverage dispenser.
[0060] As discussed above, Figure 3 The embodiments illustrating this disclosure can also be described as a computer-implemented method for beverage fulfillment, and the method includes establishing a beverage fulfillment instance 300 via a web server 119 through optional steps 325 to 385 of beverage fulfillment performed by a corresponding computer, enabling electronic communication between a mobile device 122 and a beverage dispenser 102. For example, at 325, using the mobile device 122, a consumer can initiate beverage fulfillment at the beverage dispenser by scanning a QR code 155 displayed on the beverage dispenser 102 to initiate electronic communication between the mobile device 122, the web server 119, and the beverage dispenser 102. Telecommunications networks 113, 123 accessible via the mobile device can connect the mobile device to a URL at the web server 119, wherein the URL is embedded within the QR code. Utilizing the web server as an intermediary between the mobile device and the beverage dispenser, the mobile device can receive from the web server an interactive graphical user interface (GUI) 600 corresponding to the beverage options available at the beverage dispenser. At 345 to 375, the method of this embodiment uses the interactive graphical user interface 600 to transmit beverage commands to a URL. A web server is used to implement beverage fulfillment instances, and beverage commands utilize beverage dispensing software stored on the beverage dispenser to control the devices described below.
[0061] At the beverage dispenser, the method includes the following steps: creating a QR code and a unique verification token to prove the authenticity of information used during a beverage fulfillment instance using beverage dispensing software. The beverage dispensing software at the dispenser embeds the unique verification token and website address within the QR code and further transmits and stores the QR code, wherein the unique verification token and website address are embedded in the QR code, at a web server. Simultaneously, the beverage dispenser displays the QR code at the dispenser, wherein the unique verification token and website address are embedded in the QR code.
[0062] From the consumer's perspective, using the camera on their mobile device, the consumer processes an image of a QR code displayed at the beverage dispenser and initiates a beverage fulfillment instance by connecting the mobile device to a website address embedded within the QR code. Importantly, this connection does not require a mobile app on the mobile device, as beverage fulfillment as disclosed herein can be accomplished via a simple website connection on the Internet.
[0063] Consumers use mobile devices to retrieve a unique verification token embedded in a QR code and transmit the retrieved token back to a web server. The web server then compares the retrieved token with the unique verification token to verify the electronic communication between the mobile device and the beverage dispenser. The web server verifies the token's authenticity via a digital signature, for example, using a shared secret HMAC (Hash-Based Message Authentication Code).
[0064] The graphical user interface on the mobile device transmits beverage commands. In a non-limiting embodiment, these beverage commands may include selecting a beverage available at the beverage dispenser, pouring a beverage from the beverage dispenser, and stopping the pouring of a beverage.
[0065] As used herein, and by way of example only, the beverage dispenser used in embodiments of this disclosure includes: a beverage dispenser display connected to a computer processor and a computerized memory storing beverage dispensing software; a nozzle configured to dispense a selected beverage; and a plurality of pumping and / or metering devices, each configured to supply beverage ingredients of the selected beverage from an ingredient source to the nozzle according to a command executed in the beverage dispensing software. As described above, the beverage dispenser includes an encryption program stored on the computerized memory of the beverage dispenser. The encryption program is configured to create verification tokens for corresponding beverage fulfillment instances, which verify the authenticity of electronic communications and beverage selection commands from a web server. The encryption program is further configured to incorporate the verification tokens into a QR code displayed on the beverage dispenser via the beverage dispenser display, wherein the beverage dispenser transmits the tokens and QR codes to at least one server for use in the corresponding beverage fulfillment instance.
[0066] As shown in Figure 2 and Figure 3The computerized system shown for beverage order fulfillment may include a first computer, including but not limited to a mobile device 122, connected to a network 118 for bidirectional electronic communication with at least one web server 119. The beverage dispenser 102 is a network-connected smart device utilizing hardware such as a processor and a computerized memory storing beverage dispensing software thereon. The beverage dispenser 102 also communicates electronically with at least one server 119 via the network 118. Web browser software is stored on the first computer, typically the mobile device 122 or a smartphone, and the web browser software on the mobile device 122 is configured to initiate a communication session with at least one server 119. The first computer, such as the mobile device 122, includes an interactive graphical user interface (GUI) including a display on the first computer for interacting with the web browser. The interactive GUI is configured and updated via communication from at least one server, and data entry options are displayed on the interactive GUI to allow the first computer / mobile device 122 to transmit beverage selection commands to the beverage dispensing software on the beverage dispenser 102 via at least one server 119 in the corresponding beverage fulfillment instance.
[0067] like Figure 3The computerized system shown further includes network socket application programming interfaces (APIs) stored on at least one server 119 and accessible via a gateway server 123, and configured to connect to the beverage dispenser 102 and web browser software on the first computer / mobile device 122. These communications are secured via an encryption program stored in the computerized memory of the beverage dispenser. The encryption program is configured to create verification tokens for each beverage fulfillment instance, which authenticate the electronic communication between the first computer / mobile device 102, the at least one server 119, and the beverage dispenser 102. The encryption program is further configured to incorporate the verification tokens into QR codes 155 displayed on the beverage dispenser 102 via beverage dispenser displays 104, 107, wherein the beverage dispenser transmits the token encoded by the QR code 155 to the at least one server 119 for use in the corresponding beverage fulfillment instance. In one embodiment, the beverage dispenser 102 is equipped to display various images including beverage selections and QR codes. The QR code may include an encrypted verification token and a URL that launches a website on the mobile device corresponding to the beverage fulfillment software on the beverage dispenser 102. Thus, the first computer may be characterized as a mobile device, which further includes a camera and is configured to launch web browser software and present a beverage selection experience when the camera processes a QR-coded image displayed on the beverage dispenser. The graphical user interface on the mobile device may be configured for the user to transmit beverage selection commands to the beverage dispenser 102 via a network without having to touch the beverage dispenser 102. In some embodiments, the cup may also be automatically positioned under the nozzle, making beverage fulfillment completely touch-free or contactless. The contactless beverage fulfillment system allows the mobile device 102 to send beverage selection data, including but not limited to individual beverage selections from the beverage selections available at the beverage dispenser, pouring beverages from the beverage dispenser, and stopping the pouring of beverages. In some embodiments, the graphical user interface may include commands for mixing different beverages into a single cup during the same beverage fulfillment instance.
[0068] As a complement to the mobile device and beverage dispenser, a web server for completing beverage fulfillment instances may include at least one processor connected to computerized memory that stores network content and web server applications accessible over a network. In some non-limiting embodiments, the web server utilizes an application programming interface (API) to connect to components of the system for network socket communication via the beverage dispenser, wherein the web server application receives beverage data from the beverage dispenser for use in the beverage fulfillment instance. The beverage data may include inventory data of beverages available at the dispenser or other information useful to the consumer, such as a repeat customer's consumer profile. The beverage data includes a QR code generated by the beverage dispenser using beverage dispensing software stored on the beverage dispenser. For a given beverage fulfillment instance, the QR code includes a unique verification token to be stored on the web server. At least one component of the web server application uses the beverage data from the beverage dispenser to update the graphical user interface assigned to a remote mobile device. In other embodiments, at least one component of the web server application receives a beverage command from the remote mobile device and transmits the beverage command to the beverage dispenser. Beverage commands can include, without limitation, selecting the beverage available at the beverage dispenser, pouring the beverage from the beverage dispenser, stopping the pouring of the beverage, and ending the pouring of the beverage into a container.
[0069] Embodiments of this disclosure further include a web server 119 for performing beverage fulfillment instances. The web server incorporates at least one web server processor connected to a network-based computerized memory that stores web content and web server applications accessible via networks such as, but not limited to, cloud-based networks. An application programming interface (API) for network socket communication connects the web server to the beverage dispenser, wherein the web server application receives beverage data from the beverage dispenser for use in the beverage fulfillment instance.
[0070] Figure 4 An exemplary retail store 400 with multiple beverage dispensers located therein, according to various embodiments of this disclosure, is shown. As illustrated, the retail store 400 includes a first row 402 of beverage dispensers, a second row 404 of beverage dispensers, and a third row 406 of beverage dispensers. Each of the three rows of beverage dispensers 402, 404, and 406 includes one or more beverage dispensers. For example, row 402 includes beverage dispensers 402a and 402b. Similarly, the second row 404 includes beverage dispensers 404a, 404b, 404c, and 404d. Furthermore, the third row 406 includes beverage dispensers 406a and 406b.
[0071] Consumer 408 may be one of many customers entering the dealership 400 through entrance 412. As previously discussed in other jointly owned patent applications, the beverage dispenser may rearrange secure communication with the customer's mobile device as the mobile device enters the dealership 400 or comes within a predetermined distance of the dealership 400, and the mobile device 122 carried by consumer 408 may be determined to be within a first range of one or more beverage dispensers within the dealership 400. As a further example, the mobile device 122 may be determined to be within a first range of one or more beverage dispensers within the dealership 400 when entering a geofenced location around or within a predetermined distance of the dealership 400.
[0072] Figure 5 The technology surrounding communication between beverage dispensers and mobile devices demonstrates how it can be integrated with all the protections of a "smart system" used to verify the communication. Figure 5 In the example, multiple consumers are located at different positions around the beverage dispensers 404a to 404d in the second row 404, according to various embodiments of this disclosure. As shown, consumers may be located at different ranges from the beverage dispensers in the second row 404, including a first range 502, a second range 504, a third range 506, and a fourth range 508. The first range 502 may be located at the position furthest from the second row 404, and the fourth range 508 may be located at the position closest to the second row 404. A first consumer 510 (consumer A) and a second consumer 512 (consumer B) may be located between the third range 506 and the fourth range 508. A fourth consumer 516 (consumer D) may be located between the second range 504 and the third range 506. A third consumer 514 (consumer C) and a fifth consumer 518 (consumer E) may be located between the first range 502 and the second range 504.
[0073] Although shown as different ranges from the second row 404 for simplicity, each dispenser in the second row 404 can have one or more wireless communication devices that establish different communication ranges for the corresponding dispenser. For example, beverage dispenser 404a can have a wireless communication device with a corresponding range within the fourth range 508 that covers the adjacent beverage dispenser 404b but not the remaining beverage dispensers 404c and 404d in the second row 404. Similarly, beverage dispenser 404b can have a wireless communication device with a corresponding range within the fourth range 508 that covers the adjacent beverage dispensers 404a and 404c but not the remaining beverage dispensers 404d, etc.
[0074] As a consumer passes through the store, they may cross one or more of ranges 502 to 508. For example, a first consumer 510 may move to use beverage dispenser 404a, and a second consumer 512 may move to use beverage dispenser 404c. Meanwhile, a third consumer 514, a fourth consumer 516, and a fifth consumer 518 may move to other parts of the store 400 without using any of the beverage dispensers in the second row 404.
[0075] Figure 6 Exemplary graphical user interfaces 605 and associated screens according to various embodiments of this disclosure are shown. These graphical user interfaces and associated screens can be implemented on mobile device 122 to transmit beverage fulfillment commands to beverage dispenser 102 and navigate beverage dispenser operation 102. (Continuing from above...) Figure 5 Examples in, Figure 6 The graphical user interface screen shown can correspond to the user interface 104 of the beverage dispenser 102.
[0076] As shown, the main screen 602 may present a graphical user interface 605 with multiple buttons 603 for selecting beverages. For example, one or more of the buttons 603 on the main screen 602 may be used to navigate to sub-screens with different categories of beverages. These buttons may correspond to buttons that will be visible on the beverage dispenser 102, such as those described in co-owned U.S. Patent Application Serial No. 14 / 485,826 entitled “ProductCategorization User Interface for a Dispensing Device,” which is incorporated herein by reference in its entirety. The main screen 602 also includes a pour button 620 to control the length of the pouring operation of the selected beverage on the beverage dispenser 102. Another ice button 630 may be used for manual operation of the ice dispenser function on the beverage dispenser 102.
[0077] Figure 7 Exemplary graphical user interface screens for navigating to a previously selected beverage are shown on a beverage dispenser according to various embodiments of this disclosure, associated with multiple pre-loaded consumer profiles. Following on... Figure 6 Examples in, Figure 7 The graphical user interface screen shown can be displayed on the user interface 104 of the beverage dispenser 102 and on the graphical user interface 600 of the mobile device 122 that controls the beverage dispenser.
[0078] Details of the user interface 104 on the beverage dispenser 102 can be configured for operation on the dispenser and also configured to be replicated on the graphical user interface 600 on the mobile device 122. As shown on the beverage dispenser 102, the main screen 702 can present a graphical user interface with multiple buttons for selecting beverages. For example, one or more of the buttons 704 on the main screen 702 are used to navigate to sub-screens with different categories of beverages, such as those described in U.S. Patent Application Serial No. 14 / 485,826 entitled "Product Categorization User Interface for a Dispensing Device". The main screen 702 also includes one or more buttons for pre-selected beverage categories maintained in the user profile. For example, the main screen 702 may include a selectable favorite beverage icon 706, a selectable mix icon 708, and a selectable order icon 710.
[0079] After selecting the mixture icon 708, the mixture screen 718 can be displayed on the user interface 104. The mixture screen 718 lists the first three mixtures from each of a plurality of profiles (e.g., from each of the profiles in a profile queue, or from a predetermined number of profiles arranged in a regional profile database). Other numbers of mixtures from each profile may be shown in various embodiments.
[0080] Figure 8 An exemplary graphical user interface 600 and associated screen on mobile device 122 are shown for selecting and associating beverage orders with beverage dispenser 102. Figure 8 Each of the graphical user interface screens shown can be displayed via a user interface on mobile device 122, such as on a touchscreen display. A profile mobile application on mobile device 122 facilitates the creation of customized consumer profiles, which can be stored on a networked server or the hard drive of the beverage dispenser. Multiple beverage selection options can be presented from the order screen 910. For example, one or more of the buttons 916 on the order screen 910 can be used to navigate to corresponding buttons on the associated beverage dispenser 102.
[0081] In response to the selection of a beverage icon, an order verification screen 926 may be displayed on the user interface of mobile device 122. For example, the order verification screen 926 may display the selected beverage icon 924 and include a selectable verification icon 928 (“I select you”) to verify the selection of the selected beverage icon 924 for the next order. This disclosure contemplates... Figure 8Other variations and modifications to the order selection screen shown are included. For example, one or more of the screens or icons may be omitted, while other options not shown may be included.
[0082] Figure 9 An exemplary beverage dispenser system 1000 suitable for implementing several embodiments of this disclosure is shown. As illustrated, the beverage dispenser system 1000 is configured as a chilled beverage dispenser. This disclosure contemplates other configurations of the beverage dispenser, such as a plug-in chilled beverage dispenser, a reverse-electric beverage dispenser, a remote recirculating beverage dispenser, or any other beverage dispenser configuration.
[0083] The beverage dispenser system 1000 includes a rear chamber system 1006 and a front chamber system 1002 having a beverage dispenser 1004. The beverage dispenser 1004 includes a user interface 1008, such as a touchscreen display, to facilitate the selection of the beverage to be dispensed. The user interface 1008 may employ various screens to facilitate user interaction on the beverage dispenser 1004 and / or to receive user profiles through interaction with the user's mobile device 1052, such as those described in co-owned U.S. Patent Application Serial No. 14 / 485,826 entitled "Product Categorization User Interface for a Dispensing Device," which is incorporated herein by reference in its entirety.
[0084] After receiving a beverage selection via user interface 1008, the pour button 1010 can be activated to dispense the selected beverage from beverage dispenser 1004 via nozzle 1014. For example, the pour button 1010 can be an electromechanical button, a capacitive touch button, or another user-selectable button to activate beverage dispenser 1004 to dispense beverage. Although shown as a button, the pour button 1010 can alternatively be implemented as a lever or other mechanism to actuate beverage dispenser 1004 to dispense beverage. Figure 10 As shown, the pour button 1010 is separate from the user interface 1008. In some embodiments, the pour button 1010 may be implemented as a selectable icon in the user interface 1008.
[0085] In some embodiments, the beverage dispenser may also include an ice rod 1014. When activated, the ice rod 1014 causes the beverage dispenser 1004 to dispense ice through an ice trough (not shown). For beverage dispensers without a freezer, such as reverse electric beverage dispensers or remote recirculating beverage dispensers, the ice rod 1014 may be omitted.
[0086] The beverage dispenser 1004 can be secured via a main door 1016 and a dispensing door 1018. The main door 1016 and the dispensing door 1018 can be secured via one or more locks. In some embodiments, these locks are both locks and keys. In some embodiments, the lock on the dispensing door 1018 can be opened via an RFID reader (not shown) that reads an authorized ingredient package 1028. The main door 1016 can secure the electronics of the beverage dispenser 1004, including one or more controllers 1020. The dispensing door 1018 can secure the dispensing compartment housing the dispensing matrix 1024.
[0087] The ingredient matrix 1024 includes a plurality of slots 1026 for receiving ingredient packets 1028. In various embodiments, the ingredient packet 1028 may be a micro-ingredient cartridge. The micro-ingredient cartridge may be a single cartridge or a dual-cartridge cartridge, as described in co-owned U.S. Patent Application Serial No. 14 / 209,684 entitled “Beverage Dispenser Container and Carton” and U.S. Patent Application Serial No. 12 / 494,427 entitled “Container Filling Systems and Methods”, both of which are incorporated herein by reference in their entirety. Figure 9 As shown, the ingredient matrix 1024 has three ingredient drawers. One or more drawers can slide back and forth along tracks to periodically agitate the ingredients contained in the drawers. Other configurations of the ingredient matrix 1024 are possible, such as via one or more static towers and / or stirred ingredient towers.
[0088] Each ingredient packet 1028 may include an RFID tag, an accessory 1030, and an accessory seal 1032. The accessory seal 1032 may be removed before installation into the beverage dispenser 1004. During installation, the accessory 1030 may engage with a probe (not shown) in the slot 1026 and the ingredients contained in the ingredient packet 1028, providing fluid communication between the probe and these ingredients. The ingredient matrix 1024 may also include one or more large-volume micro-ingredient packets 1034, such as for one or more micro-ingredient sweetener sources.
[0089] The beverage dispenser 1004 may also include a carbonator (not shown) for receiving water and carbon dioxide to produce carbonated water. The beverage dispenser 1004 may also include one or more heat exchangers (not shown), such as a cold plate, for cooling one or more ingredients contained in or received by the beverage dispenser 1004. In some embodiments, one or more of the micro-particles dispensed via nozzle 1012 are not cooled via a heat exchanger or otherwise maintained at ambient temperature. Larger quantities of ingredients dispensed via nozzle 1012 are typically cooled via a heat exchanger prior to dispensing.
[0090] The back chamber system 1006 is typically located in a back chamber, away from the front chamber system 1002, such as a storage area in a retail location. The back chamber system 1006 includes a water source 1036, such as a municipal water supply providing pressurized freshwater. Water received via the water source 1036 can be filtered or otherwise treated by a water treatment system 1038. The treated water can optionally be pressurized to a desired pressure by a water booster 1040 and supplied to beverage dispensers. A carbon dioxide source 1042 can supply carbon dioxide to beverage dispensers 1004.
[0091] One or more bulk ingredient sources 1044 may be located in the rear chamber. Bulk ingredients from each bulk ingredient source 1044 may be supplied to the beverage dispenser 1004 via a pump 1046. The pump 1046 may be a controlled gear pump, diaphragm pump, BIB pump, or any other suitable pump for supplying bulk ingredients to the beverage dispenser 1004. The rear chamber system 1006 may also include a rack having one or more storage locations 1048 for spare micro-ingredients and one or more storage locations 1050 for spare bulk ingredients.
[0092] Beverage dispenser 1004 may include one or more network interfaces for communicating directly with devices in the anteroom or backroom, with devices in the anteroom or backroom on a local area network (LAN), or with devices located remotely from the beverage dispenser system 1000 via a wide area network (WAN) connection. For example, beverage dispenser 1004 may include networking devices such as a near field communication (NFC) module, Bluetooth module, WiFi module, cellular modem, Ethernet module, etc. Beverage dispenser 1004 may communicate directly or via LAN with a user's mobile device 1052 or point-of-sale (POS) device 1054 to receive the user's beverage selection or user profile to configure beverage dispenser 1004 to dispense one or more beverages based on the beverage selection or user profile. The user profile may include favorite beverages stored for the user, mixed or blended beverages created or stored by the user in their profile, and / or one or more beverage preferences, such as preferred nutritional levels. The beverage dispenser 1004 can also communicate via WAN 1056 to communicate with one or more remote servers 1058 to receive software updates, content updates, user profiles, or beverage selections via the remote servers 1058.
[0093] Figures 10 to 12 An exemplary fluid loop 1100 to 1300, from the ingredient sources 1102, 1202, 1302 of a beverage dispenser 1004 to the nozzle 1012, is shown, incorporating a pumping or metering device. The beverage dispenser 1004 may include zero, one, or more... Figures 10 to 12 The fluid loop shown is illustrated. For each ingredient source, the beverage dispenser 1004 may include... Figures 10 to 12 One of the fluid loops shown.
[0094] Figure 10 An exemplary fluid loop 1100 with a positive displacement pump 1110 is shown, suitable for implementing several embodiments of this disclosure. The fluid loop 1100 provides a fluid path from a dispensing source 1102 to a nozzle 1012. The dispensing source 1102 may be a micro-dispensing source or a large-volume dispensing source housed in a dispensing matrix 1024 of a beverage dispenser 1004, located away from the beverage dispenser 1004 in the front chamber (e.g., adjacent to the beverage dispenser 1004 or below the counter where the beverage dispenser 1004 is located) or located in the rear chamber. The positive displacement pump 1110 can meter a predetermined volume or flow rate of dispensing from the dispensing source 1102 to the nozzle 1012. The positive displacement pump 1110 may be a piston pump, a controlled gear pump, a peristaltic pump, a nutating pump, a diaphragm pump, or other such positive displacement pumps for metering a fixed flow rate volume of fluid in each cycle of the pump.
[0095] The fluid circuit 1100 may optionally include a sold-out sensor 1104 for detecting when the ingredient source 1102 is emptied. When the ingredient source 1102 is positioned away from the beverage dispenser 1004, the fluid circuit 1100 may also optionally include an auxiliary pump 1106 for providing a pressurized supply of beverage ingredients to the beverage dispenser 1004. Within or adjacent to the beverage dispenser 1004, the fluid circuit 1100 may include a pressure regulator 1108 such that the inlet of the positive displacement pump 1110 receives a lower pressure or zero pressure supply of beverage ingredients. The fluid circuit 1100 may also optionally include a shut-off valve 1112 configured to remain closed when no ingredients are being dispensed to prevent beverage ingredients from dripping from the nozzle 1012.
[0096] Figure 11 An exemplary fluid circuit 1200 with a static mechanical flow control 1208 is illustrated, suitable for implementing several embodiments of this disclosure. The static mechanical flow control 1208 receives pressurized beverage ingredients from a dispensing source 1202 and supplies a fixed flow rate of beverage ingredients to a nozzle 1012. The static mechanical flow control 1208 can be calibrated via a positioning screw for configuring the flow rate of the static mechanical flow control 1208. A shut-off valve 1210 downstream of the static mechanical flow control 1208 can be actuated to open and close in order to dispense beverage ingredients from the nozzle 1012 or prevent dispensing beverage ingredients.
[0097] The ingredient source 1202 can be a micro- or macro-sized ingredient source housed in an ingredient matrix 1024 of the beverage dispenser 1004, located away from the beverage dispenser 1004 in the anteroom (e.g., adjacent to the beverage dispenser 1004 or below the counter where the beverage dispenser 1004 is located) or in the stern. The ingredient source 1202 can also be a municipal water supply 1036 or other pressurized ingredient source. When the ingredient source 1202 is not pressurized, the fluid loop 1200 can include a pump 1206 for pressurizing beverage ingredients from the ingredient source 1202. The pump 1206 can be any pump suitable for pressurizing beverage ingredients from the ingredient source 1202, such as a BIB pump, a CO2-driven pump, a controlled gear pump, or a positive displacement pump. The fluid loop 1200 may also optionally include a sold-out sensor 1204 for detecting when the ingredient source 1202 is emptied.
[0098] Figure 12An exemplary fluid circuit 1300 with a dynamic mechanical flow control 1308, a flow meter 1310, and a shut-off valve 1312, suitable for implementing several embodiments of this disclosure, is shown. The dynamic mechanical flow control 1308 receives pressurized beverage ingredients from a dispensing source 1302 and supplies an adjustable flow rate of beverage ingredients to a nozzle 1012. The dynamic mechanical flow control 1308 may include a variable-size orifice that is adjusted based on control signals provided by one or more controllers 1020 to dynamically change the flow rate of beverage ingredients supplied to the nozzle 1012. A flow meter 1310 downstream of the dynamic mechanical flow control 1308 measures the flow rate of beverage ingredients supplied by the dynamic mechanical flow control 1308 and provides a feedback loop to the dynamic mechanical flow control 1308 to control the variable-size orifice. The shut-off valve 1312 downstream of the dynamic mechanical flow control 1308 can be actuated to open and close to dispense or prevent dispensing of beverage ingredients from the nozzle 1012.
[0099] Ingredient source 1302 may be a micro- or macro-ingredient source housed in an ingredient matrix 1024 of beverage dispenser 1004, located away from beverage dispenser 1004 in the anteroom (e.g., adjacent to beverage dispenser 1004 or below the counter where beverage dispenser 1004 is located) or in the stern. Ingredient source 1302 may also be municipal water supply 1036 or other pressurized ingredient source. When ingredient source 1302 is not pressurized, fluid loop 1300 may include a pump 1306 for pressurizing beverage ingredients from ingredient source 1302. Pump 1306 may be any pump suitable for pressurizing beverage ingredients from ingredient source 1302, such as a BIB pump, CO2 driven pump, controlled gear pump, or positive displacement pump. Fluid loop 1300 may also optionally include a sold-out sensor 1304 for detecting when ingredient source 1302 is emptied.
[0100] Although Figures 10 to 12 The components of fluid circuits 1100 to 1300 are shown in a specific order, but any order of the components described above can be used. For example, shut-off valve 1312 may be upstream of flow meter 1310. Other variations will be readily identifiable to those skilled in the art. Additionally, one or more heat exchangers (not shown) may be used in… Figures 10 to 12 The heat exchanger can be located anywhere in the fluid circuit. It can include a freezer, water bath, cold plate, or remote recirculation system.
[0101] Figure 13An exemplary fluid loop 1400 with multiple independent control paths from a single ingredient source 1402 to a nozzle 1012 is illustrated, suitable for implementing several embodiments of this disclosure. The fluid loop 1400 includes a manifold 1404 for supplying beverage ingredients to each of these independent control paths. Each path includes pumping or metering devices 1406, 1408, 1410 for supplying beverage ingredients from the ingredient source 1402 to the nozzle 1012. The pumping or metering devices 1406, 1408, 1410 can be configured to... Figures 11 to 13 Any of the fluid loops 1100 to 1300 shown. Compared to using any one of the pumps or metering devices 1406, 1408, and 1410, a wider range of flow rates is possible through multiple independent paths from the ingredient source 1402 to the nozzle 1012. For example, for a first flow rate of beverage ingredients from the ingredient source, only one of the pumps or metering devices 1406, 1408, and 1410 can be activated. For a second flow rate of beverage ingredients from the ingredient source, multiple pumps or metering devices 1406, 1408, and 1410 can be activated.
[0102] Figure 14 Exemplary block diagrams are shown of a control architecture 1500 that can be used to control a beverage dispenser 1504, applicable to several embodiments of implementing this disclosure. Figure 14 As shown, the control architecture 1500 may include a core dispensing module (CDM) 1006, a human-machine interface (HMI) module 1504, a user interface (UI) 1502, and a machine bus (MBUS) 1005. The HMI 1504 may connect to or otherwise interface with and communicate with at least one external device (e.g., a mobile device 1052 or a POS 1054) outside the beverage dispenser 1504. The HMI 1504 may also control and update the display screen on the UI 1502. The CDM 1506 may control the flow from multiple pumps and / or valves 1510 in the beverage dispenser 1504 according to a recipe to mix and dispense the product (e.g., a beverage) from the beverage dispenser 1504.
[0103] Beverage ingredients (e.g., micro-ingredients, macro-ingredients, and / or diluents) can be combined to dispense a variety of products, which may include beverages or blended beverages (i.e., finished beverage products) from beverage dispenser 1504. However, beverage dispenser 1504 can also be configured to dispense beverage ingredients individually.
[0104] An example of a control architecture 1500 for a beverage dispenser 1504 may be described in U.S. Serial No. 61 / 987,020, filed May 1, 2014, entitled “Dispenser Control Architecture,” which is incorporated herein by reference in its entirety. MBUS 1005 can facilitate communication between HMI 1504 and CDM 1506 via one or more API calls. HMI 1504, MBUS 1005, and CDM 1506 may collectively include common core components implemented as hardware or a combination of hardware and software, which can be adapted to provide custom functionality in the beverage dispenser 1504. The beverage dispenser 1504 may further include a memory storage device and a processor. An example of UI 1502 may be described in U.S. Serial No. 61 / 877,549, entitled “Product Categorization User Interface for a Dispensing Device”, filed on September 13, 2013, which is incorporated herein by reference in its entirety.
[0105] UI 1502 can detect which area of the touchscreen has been touched by a user (e.g., user 108). In response, UI 1502 can send HMI 1504 data regarding the touch location on the touchscreen. In response, HMI 1504 can interpret this received data to determine whether to cause UI 1502 to display a different UI screen or to issue a command to CDM 1506. For example, HMI 1504 can determine that the user has touched the portion of the touchscreen corresponding to a beverage brand. In response, HMI 1504 can issue a command to CDM 1506 to pour the corresponding beverage brand. In response to receiving the command to pour the corresponding beverage brand, CDM 1506 then issues a command via one or more control buses 1508 to the pumping or metering device 1510 to obtain the beverage ingredients required to dispense the beverage brand. Alternatively, HMI 1504 can determine that the user has touched the portion of the touchscreen corresponding to a request for another screen. In response, HMI 1504 can cause UI 1502 to display the requested screen.
[0106] In some embodiments, the UI 1502 in the beverage dispenser 1504 can be used to select and individually dispense one or more beverages. These beverages can be dispensed as beverage components in a continuous pouring operation, thereby continuing to dispense one or more selected beverage components while the user actuates the pouring input, or in a batch pouring operation, wherein a predetermined volume of one or more selected beverage components (e.g., one ounce at a time) is dispensed. The UI 1502 can be addressed via various methods to select and dispense beverages. For example, a user can interact with the UI 1502 via touch input to navigate one or more menus from which to select and dispense beverages. As another example, a user can use an on-screen keyboard or a physical keyboard (not shown) on the beverage dispenser 1504 to type codes to navigate one or more menus from which to select and dispense beverages. As yet another example, a user can interact with the HMI 1504 via the user interface of an application on the mobile device 1052.
[0107] The UI 1502, which may include a touchscreen and a touchscreen controller, can be configured to receive various commands from a user (i.e., consumer input) in the form of touch input in response to receiving the aforementioned commands, generate graphical output, and / or perform one or more operations (e.g., via HMI 1504 and / or CDM 1506) in conjunction with the beverage dispenser 1504. The touchscreen driver in the HMI 1504 can be configured to receive consumer input or customer input and generate events (e.g., touchscreen events), which can then be transmitted to the operating system of the HMI 1504 via the controller.
[0108] The beverage dispenser 1504 can communicate with one or more external devices (e.g., mobile device 1052 or POS 1054). In some embodiments, communication between the beverage dispenser 1504 and the external devices can be accomplished using any number of communication technologies, including but not limited to near-field wireless technologies via communication interfaces, such as Bluetooth, Wi-Fi, and other wireless or wired communication standards or technologies.
[0109] Figure 15 Exemplary computer systems 1600 suitable for implementing several embodiments of this disclosure are shown. For example, one or more components or controller components of a beverage dispenser 1504 may be implemented as computer system 1600. In some embodiments, one or both of HMI 1504 and CDM 1506 may be implemented as computer system 1600.
[0110] It should be understood that the logical operations described herein with respect to the various figures can be implemented as (1) a series of computer-implemented actions or program modules (i.e., software) running on a computing device (e.g., the computing device described in Figure 16), (2) interconnected machine logic circuits or circuit modules (i.e., hardware) within the computing device, and / or (3) a combination of software and hardware of the computing device. Therefore, the logical operations discussed herein are not limited to any particular combination of hardware and software. Implementation is a matter of choice depending on the performance and other requirements of the computing device. Therefore, the logical operations described herein are referred to differently as operations, structural devices, actions, or modules. These operations, structural devices, actions, and modules can be implemented in software, firmware, dedicated digital logic, and any combination thereof. It should also be understood that more or fewer operations than those shown in the figures and described herein can be performed. These operations can also be performed in a different order than those described herein.
[0111] refer to Figure 15 An example computing device 1600 on which embodiments of the invention can be implemented is shown. For example, each of the beverage dispenser 102, server 118, mobile device 122, POS device 124, beverage dispenser 1004, mobile device 1052, POS 1054, and remote server 1058 described herein can each be implemented as a computing device, such as computing device 1600. It should be understood that the example computing device 1600 is merely one example of a suitable computing environment on which embodiments of the invention can be implemented. Optionally, computing device 1600 can be a known computing system, including but not limited to personal computers, servers, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, networked personal computers (PCs), minicomputers, mainframes, embedded systems, and / or distributed computing environments comprising multiple of any of the above systems or devices. Distributed computing environments enable remote computing devices connected to communication networks or other data transmission media to perform various tasks. In a distributed computing environment, program modules, applications, and other data can be stored on local and / or remote computer storage media.
[0112] In some embodiments, computing device 1600 may include two or more computers that communicate with each other to collaborate in performing tasks. For example, but not in a restrictive manner, applications may be partitioned in a way that allows simultaneous and / or parallel processing of applications. Alternatively, data processed by an application may be partitioned in a way that allows different portions of a dataset to be processed simultaneously and / or in parallel by two or more computers. In some embodiments, computing device 1600 may employ virtualization software to provide the functionality of multiple servers that are not directly integrated into computing device 1600. For example, virtualization software may provide twenty virtual servers on four physical computers. In some embodiments, the functionality disclosed above may be provided by executing one or more applications in a cloud computing environment. Cloud computing may include providing computing services via network connections using dynamically scalable computing resources. Cloud computing may be supported at least in part by virtualization software. Cloud computing environments may be established by an enterprise and / or may be rented from third-party providers as needed. Some cloud computing environments may include cloud computing resources owned and operated by the enterprise as well as cloud computing resources rented and / or leased from third-party providers.
[0113] In its most basic configuration, computing device 1600 typically includes at least one processing unit 1620 and system memory 1630. Depending on the exact configuration and type of computing device, system memory 1630 may be volatile (e.g., random access memory (RAM)), non-volatile (e.g., read-only memory (ROM), flash memory, etc.) or some combination of both. This most basic configuration is illustrated by dashed line 1610 in Figure 16. Processing unit 1620 may be a standard programmable processor that performs the arithmetic and logical operations required to operate computing device 1600. Although only one processing unit 1620 is shown, multiple processors may be present. Therefore, while instructions may be discussed as being executed by a processor, these instructions may be executed simultaneously, sequentially, or otherwise by one or more processors. Computing device 1600 may also include a bus or other communication mechanism for transferring information between the various components of computing device 1600.
[0114] Computing device 1600 may have additional features / functions. For example, computing device 1600 may include additional storage devices, such as removable storage device 1640 and non-removable storage device 1650, including but not limited to disks, optical discs, or magnetic tapes. Computing device 1600 may also include multiple network connections 1680 that allow the device to communicate with other devices, such as through the communication paths described herein. The multiple network connections 1680 may take the form of: modems; modem groups; Ethernet cards; Universal Serial Bus (USB) interface cards; serial interfaces; token ring cards; Fiber Distributed Data Interface (FDDI) cards; Wireless Local Area Network (WLAN) cards; radio transceiver cards, such as Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), Long Term Evolution (LTE), Global System for Microwave Access Interoperability (WiMAX), and / or other air interface protocol radio transceiver cards; and other known network devices. The computing device 1600 may also have multiple input devices 1670, such as a keyboard, keypad, switch, dial pad, mouse, trackball, touchscreen, voice recognizer, card reader, paper tape reader, or other known input devices. It may also include multiple output devices 1660, such as a printer, video monitor, liquid crystal display (LCD), touchscreen display, monitor, speaker, etc. Additional devices may be connected to a bus to facilitate data communication between components of the computing device 1600. All these devices are well known in the art and need not be discussed in detail here.
[0115] Processing unit 1620 can be configured to execute program code encoded in a tangible computer-readable medium. A tangible computer-readable medium refers to any medium capable of providing data that causes computing device 1600 (i.e., the machine) to operate in a particular manner. Various computer-readable media can be used to provide instructions to processing unit 1620 for execution. Examples of tangible computer-readable media include, but are not limited to, volatile, non-volatile, removable, and non-removable media implemented in any method or technique for storing information such as computer-readable instructions, data structures, program modules, or other data. System memory 1630, removable storage device 1640, and non-removable storage device 1650 are examples of tangible computer storage media. Examples of tangible computer-readable recording media include, but are not limited to, integrated circuits (e.g., field-programmable gate arrays or application-specific integrated circuits), hard disks, optical disks, magneto-optical disks, floppy disks, magnetic tapes, holographic storage media, solid-state devices, RAM, ROM, electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROMs, digital multi-discs (DVDs) or other optical storage devices, magnetic tape cassettes, magnetic tapes, disk storage devices or other magnetic storage devices.
[0116] Importantly for both electrical and software engineering fields, functionality that can be implemented by loading executable software into a computer can be translated into a hardware implementation using known design rules. The decision between implementing a concept in software or hardware typically depends on considerations of design stability and the number of units to be produced, rather than any issues involved in transitioning from the software domain to the hardware domain. Generally, designs still subject to frequent changes are preferably implemented in software because redeveloping a hardware implementation is far more expensive than redeveloping a software design. Stable designs that will typically be mass-produced are often preferably implemented in hardware (e.g., with application-specific integrated circuits (ASICs)) because hardware implementations may be cheaper than software implementations for large-scale production runs. Typically, a design can be developed and tested in software form and then translated into an equivalent hardware implementation in an ASIC hardwired with the software instructions using known design rules. Just as a machine controlled by a new ASIC is considered a specific machine or device, a computer programmed and / or loaded with executable instructions can also be considered a specific machine or device.
[0117] In an example implementation, processing unit 1620 may execute program code stored in system memory 1630. For example, a bus may carry data to system memory 1630, and processing unit 1620 may receive and execute instructions from system memory. Data received by system memory 1630 may optionally be stored on removable storage device 1640 or non-removable storage device 1650 before or after execution by processing unit 1620.
[0118] It should be understood that the various techniques described herein can be implemented in combination with hardware or software, or in a combination thereof where appropriate. Therefore, the methods and apparatus of the subject matter currently disclosed, or certain aspects or parts thereof, can take the form of program code (i.e., instructions) embodied in a tangible medium, such as a floppy disk, CD-ROM, hard disk, or any other machine-readable storage medium, wherein when the program code is loaded into and executed by a machine such as a computing device, the machine becomes an apparatus for practicing the subject matter currently disclosed. In the case of executing program code on a programmable computer, the computing device typically includes a processor, a storage medium readable by the processor (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device. One or more programs can implement or utilize the processes described in conjunction with the subject matter currently disclosed, for example, by using an application programming interface (API), reusable controls, etc. Such programs can be implemented in a high-level procedural language or an object-oriented programming language to communicate with a computer system. However, if desired, the programs can be implemented in assembly language or machine language. In any case, the language can be a compiled language or an interpreted language, and it can be combined with hardware implementations.
[0119] This document describes embodiments of methods and systems with reference to block diagrams and flowcharts illustrating methods, systems, apparatus, and computer program products. It should be understood that each block and combination of blocks in the block diagrams and flowcharts can be implemented by computer program instructions. These computer program instructions can be loaded onto a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to create a machine, such that the instructions, which execute on the computer or other programmable data processing apparatus, create means for performing the functions specified in one or more flowchart blocks.
[0120] These computer program instructions may also be stored in a computer-readable storage medium that can instruct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of writing including computer-readable instructions for implementing the functions specified in one or more flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus, thereby producing a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowchart blocks.
[0121] Therefore, the boxes shown in the block diagrams and flowcharts support combinations of means for performing a specified function, combinations of steps for performing a specified function, and program instruction means for performing a specified function. It should also be understood that each box in the block diagrams and flowcharts, as well as combinations of boxes in the block diagrams and flowcharts, can be implemented by a dedicated hardware-based computer system or a combination of dedicated hardware and computer instructions that performs a specific function or step.
[0122] While several embodiments have been provided in this disclosure, it should be understood that the disclosed systems and methods may be embodied in many other specific forms without departing from the spirit or scope of this disclosure. The examples of the invention should be considered illustrative rather than restrictive, and the invention is not limited to the details given herein. For example, various elements or components may be combined or integrated in another system, or certain features may be omitted or not implemented.
[0123] Furthermore, without departing from the scope of this disclosure, the technologies, systems, subsystems, and methods described and illustrated as discrete or separate in the various embodiments may be combined or integrated with other systems, modules, technologies, or methods. Other objects shown or discussed as directly coupled or communicating with each other may be indirectly coupled or communicating through an interface, device, or intermediate component, whether electrically, mechanically, or otherwise. Other examples of changes, substitutions, and modifications can be determined by those skilled in the art and may be made without departing from the spirit and scope of this disclosure.
Claims
1. A computerized system for fulfilling beverage orders, the system comprising: A first computer, the first computer being connected to a network for bidirectional electronic communication with at least one server; A beverage dispenser, comprising a processor and a computerized memory storing beverage dispensing software thereon, the beverage dispenser communicating electronically with the at least one server via the network and configured to transmit a verification token for a corresponding beverage fulfillment instance, wherein the verification token confirms the authenticity of the electronic communication between the first computer, the at least one server and the beverage dispenser. Web browser software stored on the first computer, the web browser software being configured to initiate a communication session with the at least one server; An interactive graphical user interface (GUI) displayed on the first computer via a web browser, the interactive GUI being configured and updated through communication from the at least one server; and Data entry options displayed on the interactive GUI are used to enable the first computer to transmit a beverage selection command to the beverage dispensing software via the at least one server in the corresponding beverage fulfillment instance.
2. The computerized system of claim 1, further comprising a network socket application programming interface (API) stored on the at least one server and configured to connect to the beverage dispenser and the web browser software on the first computer.
3. The computerized system of claim 1, further comprising an encryption program stored on the computerized memory of the beverage dispenser.
4. The computerized system according to claim 3, wherein, The encryption program is configured to create a verification token for the corresponding beverage fulfillment instance.
5. The computerized system according to claim 3, wherein, The encryption procedure is further configured to incorporate the verification token into a QR code displayed on the beverage dispenser via a beverage dispenser display, wherein the beverage dispenser transmits the corresponding verification token encoded by the QR code to the at least one server for use in the corresponding beverage fulfillment instance.
6. The computerized system of claim 5 further includes a busy icon displayed on a beverage instance display during the corresponding beverage fulfillment instance.
7. The computerized system according to claim 1, wherein, The beverage dispenser further includes a client user interface and a non-client user interface that connect the beverage dispenser display to the processor and computerized memory of the beverage dispenser.
8. The computerized system according to claim 1, wherein, The first computer is a mobile device, which further includes a camera and is configured to launch the web browser software and present a beverage selection experience when the camera processes a QR-encoded image displayed on the beverage dispenser.
9. The computerized system according to claim 8, wherein, The image is a QR code that includes a verification token and a URL that launches a website on the mobile device corresponding to the beverage fulfillment software on the beverage dispenser.
10. A computer-implemented method for beverage fulfillment, the method comprising: A beverage fulfillment instance is established by performing the following steps using a suitable computer, utilizing electronic communication between the mobile device and the beverage dispenser via a web server: Using the mobile device, a QR code displayed on the beverage dispenser is scanned to initiate electronic communication between the mobile device, the web server, and the beverage dispenser, wherein the beverage dispenser communicates electronically with the web server via a network. The beverage dispenser transmits a unique verification token for the corresponding beverage fulfillment instance, wherein the unique verification token confirms the authenticity of the electronic communication between the mobile device, the web server, and the beverage dispenser. The mobile device is connected to the URL of the network server, wherein the URL is embedded in the QR code; The mobile device receives an interactive graphical user interface (GUI) from the network server corresponding to the beverage options available at the beverage dispenser. Use the interactive graphical user interface to transmit beverage orders to the URL; and The network server is used to execute the beverage command using beverage dispensing software stored on the beverage dispenser.
11. The computer-implemented method according to claim 10, further comprising: Using the beverage dispensing software, the QR code and the unique verification token that proves the authenticity of the information used during the beverage fulfillment instance are created; The unique verification token and website address are embedded in the QR code; The QR code is transmitted and stored at the network server, wherein the unique verification token and the website address are embedded in the QR code; and The QR code is displayed at the beverage dispenser, wherein the unique verification token and the website address are embedded in the QR code.
12. The computer-implemented method according to claim 11, further comprising: Using the camera on the mobile device, process the image of the QR code displayed at the beverage dispenser; The beverage fulfillment instance is initiated by connecting the mobile device to the website address embedded in the QR code using the QR code.
13. The computer-implemented method according to claim 12, further comprising: Using the mobile device, extract the unique verification token embedded in the QR code; The extracted verification token is transmitted from the mobile device to the network server; Using the network server, the extracted verification token is compared with the unique verification token to verify the electronic communication between the mobile device and the beverage dispenser; The network server is used to verify the authenticity of the token via digital signature using HMAC, a hash-based message authentication code with shared secrets.
14. The computer-implemented method of claim 10, further comprising using the graphical user interface at the mobile device to transmit a beverage command selecting a beverage available at the beverage dispenser; Pour the beverage from the beverage dispenser; And stop pouring the beverage.
15. A beverage dispenser, comprising: A beverage dispenser display is connected to a computer processor and a computerized memory storing beverage dispensing software. The beverage dispenser communicates electronically with at least one server via a network and is configured to transmit a verification token for a corresponding beverage fulfillment instance, wherein the verification token confirms the authenticity of the electronic communication between the corresponding computer, the at least one server, and the beverage dispenser. A nozzle configured to dispense a selected beverage; Multiple pumping and / or metering devices, each configured to supply beverage ingredients of the selected beverage from an ingredient source to the nozzle according to a command executed in the beverage dispensing software; and A communication device configured to connect the beverage dispenser to a network server on the network and receive beverage selection commands from the network server.
16. The beverage dispenser of claim 15, further comprising an encryption program stored on the computerized memory of the beverage dispenser.
17. The beverage dispenser according to claim 16, wherein, The encryption program is configured to create the verification token for the corresponding beverage fulfillment instance, and the verification token confirms the authenticity of the electronic communication and beverage selection command from the web server.
18. The beverage dispenser according to claim 17, wherein, The encryption procedure is further configured to incorporate the verification token into a QR code displayed on the beverage dispenser via a beverage dispenser display, wherein the beverage dispenser transmits the token and the QR code to the at least one server for use in the corresponding beverage fulfillment instance.
19. The beverage dispenser of claim 18, further comprising a busy icon displayed on the beverage dispenser display during the corresponding beverage fulfillment instance.
20. The beverage dispenser of claim 15, further comprising a client user interface and a non-client user interface for connecting the beverage dispenser display to the processor and computerized memory of the beverage dispenser.
Citation Information
Patent Citations
Container Filling Systems and Methods
US20100326562A1
Beverage Dispenser Container and Carton
US20140263454A1
Facilitating Individualized User Interaction with an Electronic Device
US20150039776A1
Product Categorization User Interface for a Dispensing Device
US20150082243A1
Dispenser connectivity
US20180288594A1