Virtual-wait queue for mobile commerce
First Claim
1. A method for maintaining a virtual-wait queue for access to a physical resource, comprising:
- maintaining in a computer server a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such entry is associated a hold-place-in-line indicator, wherein the hold-place-in-line indicator is selectively set to be in at least one of a first state and a second state, wherein in the first state, the at least one such entry is selectively set to move toward the front of the queue as other customer entries in the queue are deleted from the front of the queue and wherein in the second state, the at least one such entry is set to maintain a fixed position in the queue while other customer entries are allowed to pass;
accepting an input from a packet based data network, wherein a remote user mobile wireless device is wirelessly coupled to the packet based data network via a wireless access node, and at least a portion of the input is wirelessly transmitted from the remote user mobile wireless device;
transmitting at least partially via the packet based data network to the remote user mobile wireless device an indication of an estimate of the amount of time left for the user to wait in order to have access to a physical resource;
controlling access to the physical resource by allowing a customer access to the physical resource based upon the position of the customer'"'"'s associated entry in the queue substantially when the entry associated with the customer has reached the front of the queue data structure;
receiving via the packet based data network at a time before the user has reached the end of the queue a first request sent from the remote user mobile device to hold a remote user'"'"'s position in the queue;
in response to receiving the first request, toggling the hold-place-in-line indicator of the record associated with the remote user mobile wireless device from the first state to the second state;
maintaining the queue data structure by advancing any entries associated with customers whose hold-place-in-line indicator is in the first state toward the front of the queue as other customer entries are deleted from the queue as their associated customers are granted physical access to the physical resource, while at the same time holding one or more entries whose hold-place-in-line indicator had been selectively set to be in the second state in a set of one or more relative fixed positions in the queue, thereby allowing customer entries whose associated hold-place-in-line indicator is in the first state to pass the one or more customer entries whose associated hold-place-in-line indicator is in the second state;
receiving a second request from the remote user mobile wireless device to be re-set to move through the queue and to thereby change the state of the hold-place-in-line indicator to back to the first state; and
continuing to control access to the physical resource, wherein the remote user'"'"'s entry reassumes its position in the queue where the remote user'"'"'s place was held in line so that the remote user'"'"'s entry can advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource.
5 Assignments
0 Petitions
Accused Products
Abstract
A method and a system are provided for maintaining a virtual-wait queue that controls access by customers to a physical resource such as a restaurant table. The method and system are especially adapted for use by customers operating Internet-enabled wireless devices. The system operates by maintaining a virtual-wait queue data structure capable of storing a plurality of entries. Each entry is representative of a customer. The system accepts an instruction from a premises I/O device indicating to either add or delete an entry to the data structure. The system also accepts an instruction from a network connection to either add or delete the remote customer into or from the virtual wait queue. The virtual wait queue system indicates to the remote customer the estimated time left in the queue, freeing the customer from the need to wait in line.
212 Citations
54 Claims
-
1. A method for maintaining a virtual-wait queue for access to a physical resource, comprising:
-
maintaining in a computer server a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such entry is associated a hold-place-in-line indicator, wherein the hold-place-in-line indicator is selectively set to be in at least one of a first state and a second state, wherein in the first state, the at least one such entry is selectively set to move toward the front of the queue as other customer entries in the queue are deleted from the front of the queue and wherein in the second state, the at least one such entry is set to maintain a fixed position in the queue while other customer entries are allowed to pass;
accepting an input from a packet based data network, wherein a remote user mobile wireless device is wirelessly coupled to the packet based data network via a wireless access node, and at least a portion of the input is wirelessly transmitted from the remote user mobile wireless device;
transmitting at least partially via the packet based data network to the remote user mobile wireless device an indication of an estimate of the amount of time left for the user to wait in order to have access to a physical resource;
controlling access to the physical resource by allowing a customer access to the physical resource based upon the position of the customer'"'"'s associated entry in the queue substantially when the entry associated with the customer has reached the front of the queue data structure;
receiving via the packet based data network at a time before the user has reached the end of the queue a first request sent from the remote user mobile device to hold a remote user'"'"'s position in the queue;
in response to receiving the first request, toggling the hold-place-in-line indicator of the record associated with the remote user mobile wireless device from the first state to the second state;
maintaining the queue data structure by advancing any entries associated with customers whose hold-place-in-line indicator is in the first state toward the front of the queue as other customer entries are deleted from the queue as their associated customers are granted physical access to the physical resource, while at the same time holding one or more entries whose hold-place-in-line indicator had been selectively set to be in the second state in a set of one or more relative fixed positions in the queue, thereby allowing customer entries whose associated hold-place-in-line indicator is in the first state to pass the one or more customer entries whose associated hold-place-in-line indicator is in the second state;
receiving a second request from the remote user mobile wireless device to be re-set to move through the queue and to thereby change the state of the hold-place-in-line indicator to back to the first state; and
continuing to control access to the physical resource, wherein the remote user'"'"'s entry reassumes its position in the queue where the remote user'"'"'s place was held in line so that the remote user'"'"'s entry can advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource. - View Dependent Claims (2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
4. The method of claim wherein the indication of an estimate of the amount of time left in the queue takes into account the number of resources available to service the queue.
-
16. A method for maintaining a virtual-wait queue for access to a resource, comprising:
-
maintaining in a computer server a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such entry is associated a hold-place-in-line indicator, wherein the hold-place in-line indicator is selectively set to be in at least one of a first state and a second state, wherein in the first state, the at least one such entry is selectively set to move toward the front of the queue as other customer entries in the queue are deleted from the front of the queue and wherein in the second state, the at least one such entry is set to maintain a fixed position in the queue while other customer entries are allowed to pass;
controlling access to the physical resource by allowing a customer access to the physical resource based upon the position of the customer'"'"'s associated entry in the queue substantially when the entry associated with the customer has reached the front of the queue data structure;
receiving a first request sent from a remote user mobile device to hold a remote user'"'"'s position in the queue at a time before the user has reached the end of the queue;
in response to receiving the first request, toggling the hold-place-in-line indicator of the record associated with the remote user mobile wireless device from the first state to the second state;
maintaining the queue data structure by advancing any entries associated with customers whose hold-place-in-line indicator is in the first state toward the front of the queue as other customer entries are deleted from the queue as their associated customers are granted physical access to the physical resource, while at the same time holding one or more entries whose hold-place-in-line indicator had been selectively set to be in the second state in a set of one or more relative fixed positions in the queue, thereby allowing customer entries whose associated hold-place-in-linc indicator is in the first state to pass the one or more customer entries whose associated hold-placein-line indicator is in the second state;
receiving a second request from the remote user mobile wireless device to be re-set to move through the queue and to thereby change the state of the hold-place-in-line indicator to back to the first state; and
continuing to control access to the physical resource, wherein the remote user'"'"'s entry reassumes its position in the queue where the remote user'"'"'s place was held in line so that the remote user'"'"'s entry can advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A method for maintaining a virtual-wait queue for access to a physical resource, comprising:
-
maintaining in a computer server a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such entry is also associated a hold-place-in-line indicator;
receiving, at a time before the user has reached the end of the queue, a first request sent from a remote user mobile device to hold a remote user'"'"'s position in the queue, wherein prior to the first request, the remote user'"'"'s entry was allowed to advance forward through the queue as other users were deleted from the front of the queue;
in response to receiving the first request, identifying by the hold-place-in-line indicator associated with the entry associated with the remote user that the associated entry is to be held in a relative fixed position in the queue while other entries are allowed to pass it;
maintaining the queue data structure by advancing toward the front of the queue a first group of zero or more entries associated with customers whose hold-place-in-line indicator indicates a desire to progress toward the front of the queue, while at the same time holding a second group of zero or more entries in relative fixed positions in the queue, wherein the second group of entries hold-place-in-line indicators indicate a desire to allow others to pass in the queue, thereby allowing customer entries in the first group to advance through the queue relative to customer entries in the second group, and wherein the number of entries in each of the first and second groups is a function of the hold-state-in line indicators associated with the entries of the of the total set of users in the queue;
receiving a second request sent from the remote user mobile device to again advance the remote user'"'"'s position in the queue as other users are deleted from the front of the queue; and
continuing to control access to the physical resource, wherein the remote user'"'"'s entry once again is allowed to advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A system for maintaining a virtual-wait queue for access to a physical resource, comprising:
-
a computer server coupled to a packet based data network, wherein to the packet based data network is coupled to one or more wireless access points, wherein the computer server is operable to communicate with one or more wireless mobile devices via the packet based data network and one or more of the wireless access points;
wherein the computer server further comprises;
a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such entry is associated a hold-place-in-line indicator, wherein the hold-place-in-line indicator is selectively set to be in at least one of a first state and a second state, wherein in the first state, the at least one such entry is selectively set to move toward the front of the queue as other customer entries in the queue are deleted from the front of the queue and wherein in the second state, the at least one such entry is set to maintain a fixed position in the queue while other customer entries are allowed to pass;
a first software function that is operable to accept an input, at least part of which is coupled from a remote user mobile wireless device via the wireless access point and the packet based data network;
a second software function that is operable to transmit at least partially via the packet based data network to the remote user mobile wireless device an indication of an estimate of the amount of time left for the user to wait in order to have ads to a physical resource;
a third software function that is operable to control access to the physical resource by allowing a customer access to the physical resource based upon the position of the customer'"'"'s associated entry in the queue substantially when the entry associated with the customer has reached the front of the queue data structure;
a fourth software function that is operable to receive via the packet based data network a first request sent from the remote user mobile device to hold a remote user'"'"'s position in the queue at a time before the user has reached the end of the queue;
a fourth software function that is operable to, in response to receiving the first request, toggle the hold-place-in-line indicator of the record associated with the remote user mobile wireless device from the first state to the second state;
a fifth software function that is operable to maintain the queue data structure by advancing any entries associated with customers whose hold-place-in-line indicator is in the first state toward the front of the queue as other customer entries are deleted from the queue as their associated customers are granted physical access to the physical resource, while at the same time holding one or more entries whose hold-place-in-line indicator had been selectively set to be in the second state in a set of one or more relative fixed positions in the queue, thereby allowing customer entries whose associated hold-place-in-line indicator is in the first state to pass the one or morc customer entries whose associated hold-place-in-line indicator is in the second state;
a sixth software function that is operable to receive a second request from the remote user mobile wireless device to be re-set to move through the queue and to thereby change the state of the hold-place-in-line indicator to back to the first state; and
a seventh software function that is operable to continue to control access to the physical resource, wherein the remote user'"'"'s entry reassumes its position in the queue where the remote user'"'"'s place was held in line so that the remote user'"'"'s entry can advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A system for maintaining a virtual-wait queue for access to a resource, comprising:
-
a computer server that is coupled to communicate with one or more wireless mobile devices;
wherein the computer server further comprises;
a queue data structure, the queue data structure for designating the relative positions in line of a plurality of customers, the queue data structure containing an ordered list of entries related to customer records, wherein with at least one such record is associated a hold-place-in-line indicator, wherein the hold-place-in-line indicator is selectively set to be in at least one of a first state and a second state, wherein in the first state, the at least one such record is selectively set to move toward the front of the queue as other customer records in the queue are deleted from the front of the queue and wherein in the second state, the at least one such record is set to maintain a fixed position in the queue while other customer records are allowed to pass;
a first software function that is operable to control access to the physical resource by allowing a customer access to the physical resource based upon the position of the customer'"'"'s associated entry in the queue substantially when the entry associated with the customer has reached the front of the queue data structure;
a second software function that is operable to receive a first request sent from a remote user mobile device to hold all associated remote user'"'"'s position in the queue at a time before the user has reached the end of the queue;
a third software function that is operable to, in response to receiving the fist request, toggling the hold-place-in-line indicator of the record associated with the remote user mobile wireless device from the first state to the second state;
a fourth software function that is operable to maintain the queue data structure by advancing any entries associated with customer whose hold-place-in-line indicator is in the first state toward the front of the queue as other customer entries are deleted from the queue as their associated customers are granted physical access to the physical resource, while at the same time holding one or more entries whose hold-place-in-line indicator bad been selectively set to be in the second state in a set of one or more relative fixed positions in the queue, thereby allowing customer entries whose associated hold-place-in-line indicator is in the first state to pass the one or more customer entries whose associated bold-place-in-line indicator is in the second state;
a fifth software function that is operable to receive a second request from the remote user mobile wireless device to be re-inserted into the queue and to thereby change the state of the hold-place-in-line indicator to back to the first state; and
a sixth software function that is operable to continue to control access to the physical resource, wherein the remote user'"'"'s entry reassumes its position in the queue where the user'"'"'s place was held in line so that the user'"'"'s entry can advance to the rog of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resource. - View Dependent Claims (44, 45, 46, 47, 48)
-
-
49. A system for maintaining a virtual-wait queue for access to a resource, comprising:
-
a computer server that is coupled to communicate with one or more wireless mobile devices;
wherein the computer server further comprises;
a first software function that is operable to maintain in a computer server a qu ie data structure, the queue data structure for designating the relative positions il line of a plurality of customers, the queue data structure containing an ordered list of entnise related to customer records, wherein with at least one such entry is also associated a hold place-in-line indicator, a second software function that is operable to receive, at a time before the user has reached the end of the queue, a first request sent from a remote user mobile device to hold a remote user'"'"'s position in the queue, wherein prior to the first request, the remote user'"'"'s entry was allowed to advance forward through the queue as other users were deleted from the front of the queue;
a third software function that is operable to, in response to receiving the first request, identify by the hold-place-in-line indicator associated with the entry associated with the remote user that the associated entry is to be held in a relative fixed position in the queue while other entries are allowed to pass it;
a fourth software function that is operable to maintain the queue data structure by advancing toward the front of the queue a first group of zero or more entries associated with customers whose hold-place-in-line indicator indicates a desire to progress toward the front of the queue, while at the same time holding a second group of zero or more entries in relative fixed positions in the queue, wherein the second group of entries hold-place-in-line indicators indicate a desire to allow others to pass in the queue, thereby allowing customer entries in the first group to advance through the queue relative to customer entries in the second group, and wherein the number of entries in each of the first and second groups is a function of the hold-state-in line indicators associated with the entries of the of the total set of users in the queue;
a fifth software function that is operable to receive a second request sent from the remote user mobile device to again advance the remote user'"'"'s position in the queue as other users are deleted from the front of the queue; and
a sixth software function that is operable to continue to control to control access to the physical resource, wherein the remote user'"'"'s entry once again is allowed to advance to the front of the queue data structure as other user entries are removed from the front of the queue data structure and the associated customers are granted access to the physical resources. - View Dependent Claims (50, 51, 52, 53, 54)
-
Specification