Computer-implemented method, the method comprising: receiving, from a remote computing device, a map (154, 290) indicating a layout of a location; receiving, from the remote computing device, a point-of-interest data structure representing a physical point-of-interest, referred to as POI (202, 212, 214, 216, 222, 232, 242, 244), and POI metadata associated with the POI, wherein the POI data structure includes a POI location, and the POI metadata includes a POI type, and a POI status indicated by a status variable; generating, by a client computing device, an annotated floor map (128, 200), based upon the map, the annotated floor map (128, 200) including a POI indicator placed on the map at the location of the POI, the POI indicator indicating the type of the POI and the status (252, 254) of the POI (212, 202); and displaying, via a display interface of the client computing device, at least a portion of the annotated floor map (128, 200); in response to the client computing device entering a predefined location, transmitting location information to a map selector in the remote computing device; and receiving one or more maps selected by the map selector, the one or more maps include or bound the location information, the method characterized by the following steps: receiving a request to perform a POI action that includes receiving, in response to establishing a short-range wireless communication between the client computing device and a particular POI device, a request to perform a first POI action; causing the POI action to be performed with causing the first POI action to be performed, wherein the POI action includes changing the status variable included by the POI data structure; and in response to terminating the short-range wireless communication between the client computing device and the POI device, receiving a request to perform a second POI action with causing the second POI action to be performed. receiving, from a remote computing device, a map (154, 290) indicating a layout of a location; receiving, from the remote computing device, a point-of-interest data structure representing a physical point-of-interest, referred to as POI (202, 212, 214, 216, 222, 232, 242, 244), and POI metadata associated with the POI, wherein the POI data structure includes a POI location, and the POI metadata includes a POI type, and a POI status indicated by a status variable; generating, by a client computing device, an annotated floor map (128, 200), based upon the map, the annotated floor map (128, 200) including a POI indicator placed on the map at the location of the POI, the POI indicator indicating the type of the POI and the status (252, 254) of the POI (212, 202); and displaying, via a display interface of the client computing device, at least a portion of the annotated floor map (128, 200); in response to the client computing device entering a predefined location, transmitting location information to a map selector in the remote computing device; and receiving one or more maps selected by the map selector, the one or more maps include or bound the location information, the method characterized by the following steps: receiving a request to perform a POI action that includes receiving, in response to establishing a short-range wireless communication between the client computing device and a particular POI device, a request to perform a first POI action; causing the POI action to be performed with causing the first POI action to be performed, wherein the POI action includes changing the status variable included by the POI data structure; and in response to terminating the short-range wireless communication between the client computing device and the POI device, receiving a request to perform a second POI action with causing the second POI action to be performed. receiving a request to perform a POI action that includes receiving, in response to establishing a short-range wireless communication between the client computing device and a particular POI device, a request to perform a first POI action; causing the POI action to be performed with causing the first POI action to be performed, wherein the POI action includes changing the status variable included by the POI data structure; and in response to terminating the short-range wireless communication between the client computing device and the POI device, receiving a request to perform a second POI action with causing the second POI action to be performed.