Buildings often have many resources. For example, spaces could be considered a resource. An office building, for example, might have a variety of spaces, such as offices, conference rooms, common spaces, restrooms, pantries, and other types of spaces. In a large building, these spaces might be spread across a large floor, or across multiple floors. To find a particular space, an employee might wander around the building looking at room numbers, or might look at a map of the building to identify where the particular space might be located. An employee might also walk to a particular space, only to find that the employee cannot use the space because it is already occupied. Once arriving at a particular space, a person might have to spend time configuring the space to an employee's liking.
A tool in a building might also be considered a resource. An office building, for example, might have a variety of tools, such as printers, projectors, computers, telephones, conference phones, fax machines, or other type of equipment used in the workplace. In a large building, these tools might be dispersed in particular locations across a large floor, or across multiple floors. To find a particular tool, an employee might ask another employee or support person, or wander around the building looking for the particular tool.
An amenity in a building might also be considered a resource. An office building, for example, might have a variety of amenities, such as coffee makers, microwaves, refrigerators, and vending machines. In a large building, these amenities might be spread across a large floor, or across multiple floors. To find a particular amenity, an employee might ask another employee or support person, or wander around the building looking for the particular amenity.
A person in a building might also be considered a resource. An office building, for example, might have a number of employees. In a large building, it might be difficult to determine where an employee is at any one time, and might be difficult to coordinate a meeting with a particular person. To find a particular person, an employee might ask another employee or support person, or wander around the building looking for the particular person.
An issue might sometimes arise with a building resource. For example, a tool or amenity might break, or a particular space might be dirty. An employee might report such an issue to a support person in order to get the issue resolved. Alternatively, a support person might periodically check for issues, and the issue might not get resolved until it is noticed by the support person.
For some buildings, such as office buildings, there are times when a person that is not an employee of a tenant in the building might need to visit the building, but may not have access to the building. In these situations, the person visiting the building might have to check in with security staff, or might need to wait in a lobby for an employee to let the person into the building.
Embodiments of the present disclosure relate to systems and methods for providing information about building resources. In addition, embodiments of the present disclosure relate to solutions for providing information about building resources, such that the building resources might be more utilized more efficiently.
In accordance with some embodiments of the present disclosure, there is provided a computer-implemented method for providing information about building spaces. The method comprises receiving, by a computing system comprising one or more processors, an indication of whether a space is occupied from a sensor within the space, and determining, by the computing system, a location of a client device based on a signal received from the client device indicating a proximity of the client device to one or more wireless beacons. The method also comprises receiving, by the computing system, a request from the client device for directions between the client device and the space, and determining, by the computing system, a route between the client device and the space. The method further comprises providing, by the computing system, information for displaying at least a portion of the route on a map of at least a portion of a floor of a facility housing the space, such that the at least a portion of the route is displayed on the map on a screen of the client device.
In accordance with aspects of the disclosure, the information for displaying the at least a portion of the route includes information that causes the client device to display the at least a portion of the route as a line between the location of the client device and the space.
In accordance with further aspects of the disclosure, the location of the client device is a first location, and the signal is a first signal, and the method further comprises determining, by the computing system, a second location of the client device based on a second signal received from the client device indicating a proximity of the client device to one or more additional wireless beacons. The method still further comprises providing, by the computing system, information for displaying an updated position of the client device and an updated route based on the second location.
In accordance with still further aspects of the disclosure, the method further comprises providing, by the computing system, information that causes the screen of the client device to display instructions to turn right or turn left after moving a certain distance.
In accordance with aspects of the disclosure, the method further comprises receiving, by the computing system, indications of whether a plurality of spaces are occupied from sensor located within the spaces. The method still further comprises providing, by the computing system, information for displaying representations of the spaces on the map on the screen of the client device, and for displaying the representations of each of the spaces in a color based on the occupancy of the space.
In accordance with further aspects of the disclosure, the method further comprises receiving, by the computing system, a request to filter the spaces based on a type of activity, and identifying, by the computing system, one or more of the spaces as suitable for the type of activity. The method still further comprises providing, by the computing system, information for displaying the colors for only the one or more spaces identified as suitable for the type of activity.
In accordance with still further aspects of the disclosure, the method further comprises receiving, by the computing system, a request to filter the spaces based on a tool, and identifying, by the computing system, one or more of the spaces as having the tool. The method still further comprises providing, by the computing system, information for displaying the colors for only the one or more spaces identified as having the tool.
In accordance with aspects of the disclosure, the method further comprises identifying, by the computing system, a user associated with the client device, and identifying, by the computing system, one or more preferences associated with the user. The method still further comprises providing, by the computing system, information for configuring the space according to the one or more preferences.
In accordance with further aspects of the disclosure, the one or more preferences includes a preference associated with an environmental aspect, the environmental aspect being one of a temperature, humidity level, or brightness, and the information for configuring the space including an instruction to a sensor for controlling the environmental aspect of the space.
In accordance with still further aspects of the disclosure, the one or more preferences includes a preference associated with a tool, the tool being one of a phone, audiovisual equipment, projector, or computing device, and the information for configuring the space including an instruction to a device associated with an employee or vendor for configuring the space to include the tool.
In accordance with aspects of the disclosure, the one or more preferences includes a preference associated with a catering aspect, and the information for configuring the space includes an instruction to a device associated with an employee or vendor to deliver food or beverage to the space in accordance with the catering aspect.
In accordance with further aspects of the disclosure, the one or more preferences are updated over time using a machine learning algorithm based on selections made by the user.
Furthermore, in accordance with some embodiments, there is provided a system for providing information about building spaces. The system comprises one or more memory devices storing instructions, and one or more processors that execute the instructions. The one or more processors, when executing the instructions, are configured to receive an indication of whether a space is occupied from a sensor within the space, and determine a location of a client device based on a signal received from the client device indicating a proximity of the client device to one or more wireless beacons. The one or more processors, when executing the instructions, are further configured to receive a request from the client device for directions between the client device and the space, and determine a route between the client device and the space. The one or more processors, when executing the instructions, are still further configured to provide information for displaying at least a portion of the route on a map of at least a portion of a floor of a facility housing the space, such that the at least a portion of the route is displayed on the map on a screen of the client device.
In accordance with aspects of the disclosure, the information for displaying the at least a portion of the route includes information that causes the client device to display the at least a portion of the route as a line between the location of the client device and the space.
In accordance with further aspects of the disclosure, the location of the client device is a first location, and the signal is a first signal, and the one or more processors are further configured to determine a second location of the client device indicating a proximity of the client device to one or more additional wireless beacons. The one or more processors are still further configured to provide information for displaying the updated position of the client device and an updated route based on the second location.
In accordance with still further aspects of the disclosure, the one or more processors are further configured to provide information that causes the screen of the client device to display instructions to turn right or turn left after moving a certain distance.
In accordance with aspects of the disclosure, the one or more processors are further configured to receive indications of whether a plurality of spaces are occupied from sensors located within the spaces. The one or more processors are still further configured to provide information for displaying representations of the spaces on the map on the screen of the client device, and for displaying the representations of each of the spaces in a color based on the occupancy of the space.
In accordance with further aspects of the disclosure, the one or more processors are further configured to identify a user associated with the client device, identify one or more preferences associated with the user, and provide information for configuring the space according to the one or more preferences.
In accordance with still further aspects of the disclosure, the one or more preferences includes a preference associated with an environmental aspect, the environmental aspect being one of a temperature, humidity level, or brightness, and the information for configuring the space including an instruction to a sensor for controlling the environmental aspect of the space.
Further still, in accordance with some embodiments of the present disclosure, there is provided a computer-implemented method for receiving information about building spaces. The method comprises receiving, by a processor in a device, information about one or more wireless beacons located in proximity to the device, and providing, by the processor, the information to a computing system. The method further comprises providing, by the processor, a request for directions to a space, and receiving, by the processor, information for displaying at least a portion of a route between a location of the device and a location of the space on a map of at least a portion of a floor of a facility housing the space. The method still further comprises causing, by the processor, the at least a portion of the route to be displayed on the map on a screen of the device.
In accordance with some embodiments of the present disclosure, there is provided a computer-implemented method for providing information about building spaces. The method comprises receiving, by a computing system comprising one or more processors, an indication of whether a space is occupied from a motion sensor located in proximity to the space, and determining, by the computing system, a location of a client device based on a proximity of one or more beacons to the client device. The method also comprises determining, by the computing system, a route between the client device and the space. The method further comprises providing, by the computing system, information for displaying at least a portion of the route on a map of at least a portion of a floor of a facility housing the space, such that the at least a portion of the route is displayed as an overlay on the map on a screen of the client device.
In accordance with aspects of the disclosure, the method further comprises receiving, by the computing system, a request from the client device to navigate to the space.
In accordance with further aspects of the disclosure, the method further comprises providing, by the computing system, an indication that the space is unoccupied for display on the client device.
In accordance with still further aspects of the disclosure, the location of the client device is a first location of the client device. The method further comprises determining, by the computing system, a second location of the client device at a time later than a time at which the first location was determined. The method still further comprises providing, by the computing system, information for displaying an updated position of the client device on the screen of the client device.
In accordance with still further aspects of the disclosure, the information for displaying the at least a portion of the route includes information that causes the client device to display the at least a portion of the route as a line between the location of the client device and the space.
In accordance with aspects of the disclosure, the method further comprises providing, by the computing system, information for displaying the map of the at least a portion of the floor of the facility, including information for displaying one or more room names or points of interest on the map of the at least a portion of the floor of the facility.
In accordance with further aspects of the disclosure, the method further comprises providing, by the computing system, information for displaying the map of the at least a portion of the floor of the facility, including information for displaying overlays on spaces of the floor indicating whether each of the spaces is available or unavailable.
In accordance with still further aspects of the disclosure, the method further comprises receiving, by the computing system, an indication of a user request to filter information regarding spaces that are available or unavailable. The method further comprises providing, by the computing system, updated information for displaying overlays on spaces of the floor indicating whether each of the spaces is available or unavailable based on the user request.
In accordance with aspects of the disclosure, the user request is a request to filter the information such that only available spaces meeting certain criteria are displayed, wherein the criteria includes at least one of a time frame during which the user wants to use a space, whether a space is reservable, a type of work the user intends to perform, a tool the user requires, or an amenity of a space.
In accordance with further aspects of the disclosure, the method further comprises receiving, by the computing system, an indication that a user of the client device has requested an unoccupied space for performing a particular task, and determining, by the computing system, that the space is the closest space to the user that is unoccupied and that is suitable for the particular task. The method still further comprises determining, by the computing system in response to determining that the space is the closest space to the user that is unoccupied and that is suitable for the particular task, the route between the client device and the space.
In accordance with still further aspects of the disclosure, the particular task is one of making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
Furthermore, in accordance with some embodiments, there is provided a system for providing information about building spaces. The system comprises one or more memory devices storing instructions, and one or more processors that, when executing the instructions, are configured to receive an indication of whether a space is occupied from a motion sensor located in proximity to the space. The one or more processors are further configured to determine a location of a client device based on a proximity of one or more beacons to the client device and determine a route between the client device and the space. The one or more processors are still further configured to provide information for displaying at least a portion of the route on a map of at least a portion of a floor of a facility housing the space, such that the at least a portion of the route is displayed as an overlay on the map on a screen of the client device.
In accordance with aspects of the disclosure, the one or more processors are further configured to receive a request from the client device to navigate to the space.
In accordance with further aspects of the disclosure, the one or more processors are further configured to provide an indication that the space is unoccupied for display on the client device.
In accordance with still further aspects of the disclosure, the location of the client device is a first location of the client device. The one or more processors are further configured to determine a second location of the client device at a time later than a time at which the first location was determined and provide information for displaying an updated position of the client device on the screen of the client device.
In accordance with aspects of the disclosure, the information for displaying the at least a portion of the route includes information that causes the client device to display the at least a portion of the route as a line between the location of the client device and the space.
In accordance with further aspects of the disclosure, the one or more processors are further configured to provide information for displaying the map of the at least a portion of the floor of the facility, including information for displaying one or more room names or points of interest on the map of the at least a portion of the floor of the facility.
In accordance with still further aspects of the disclosure, wherein the one or more processors are further configured to provide information for displaying the map of the at least a portion of the floor of the facility, including information for displaying overlays on spaces of the at least a portion of the floor indicating whether each of the spaces is available or unavailable.
In accordance with aspects of the disclosure, the one or more processors are further configured to receive an indication of a user request to filter information regarding spaces that are available or unavailable and provide updated information for displaying overlays on spaces of the floor indicating whether each of the spaces is available or unavailable based on the user request.
In accordance with further aspects of the disclosure, the user request is a request to filter the information such that only available spaces meeting certain criteria are displayed, wherein the criteria includes at least one of a time frame during which the user wants to use a space, whether the space is reservable, a type of work the user intends to perform, a tool the user requires, or an amenity of a space.
In accordance with still further aspects of the disclosure, the one or more processors are further configured to receive an indication that a user of the client device has requested an unoccupied space for performing a particular task and determine that the space is the closest space to the user that is unoccupied and that is suitable for the particular task. The one or more processors are still further configured to determine, in response to determining that the space is the closest space to the user that is unoccupied and that is suitable for the particular task, the route between the client device and the space.
In accordance with aspects of the disclosure, the particular task is one or making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
Further still, in accordance with some embodiments, there is provided a non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform a method. The method comprises receiving an indication of whether a space is occupied from a motion sensor located in proximity to the space, and determining a location of a client device based on a proximity of one or more beacons to the client device. The method further comprises determining a route between the client device and the space, and providing information for displaying at least a portion of the route on a map of at least a portion of a floor of a facility housing the space, such that the at least a portion of the route is displayed as an overlay on the map on a screen of the client device.
In accordance with aspects of the disclosure, the method further comprises receiving a request from the client device to navigate to the space.
In accordance with further aspects of the disclosure, the method further comprises providing an indication that the space is unoccupied for display on the client device.
In accordance with still further aspects of the disclosure, the location of the client device is a first location of the client device. The method further comprises determining a second location of the client device at a time later than a time at which the first location was determined, and providing information for displaying an updated position of the client device on the screen of the client device.
In accordance with aspects of the disclosure, the information causes the client device to display the at least a portion of the route as a line between the location of the client device and the space.
In accordance with further aspects of the disclosure, the method further comprises providing information for displaying the map of the at least a portion of the floor of the facility, including information for displaying one or more room names or points of interest on the map of the at least a portion of the floor of the facility.
In accordance with still further aspects of the disclosure, the method further comprises providing information for displaying the map of the at least a portion of the floor of the facility, including information for displaying overlays on spaces of the floor indicating whether each of the spaces is available or unavailable.
In accordance with aspects of the disclosure, the method further comprises receiving an indication of a user request to filter information regarding spaces that are available or unavailable, and providing updated information for displaying overlays on spaces of the at least a portion of the floor indicating whether each of the spaces is available or unavailable based on the user request.
In accordance with further aspects of the disclosure, the user request is a request to filter the information such that only available spaces meeting certain criteria are displayed, wherein the criteria includes at least one of a time frame during which the user wants to use a space, whether a space is reservable, a type of work the user intends to perform, a tool the user requires, or an amenity of a space.
In accordance with still further aspects of the disclosure, the method further comprises receiving an indication that a user has requested an unoccupied space for performing a particular task, and determining that the space is the closest space to the user that is unoccupied and that is suitable for the particular task. The method still further comprises determining, in response to determining that the space is the closest space to the user that is unoccupied and that is suitable for the particular task, the route between the client device and the space.
In accordance with aspects of the disclosure, the particular task is one of making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
In accordance with some embodiments, there is provided a computer-implemented method for receiving information about building spaces, the method comprising receiving, by a processor in a device, information about one or more beacons located in proximity to the device, and providing, by the processor, the information to a computing system. The method further comprises providing, by the processor, a request to navigate to a space, and receiving, by the processor, information for displaying at least a portion of a route between a location of the device and a location of the space on a map of at least a portion of a floor of a facility housing the space. The method still further comprises causing, by the processor, the at least a portion of the route to be displayed as an overlay on the map on a screen of the device.
In accordance with aspects of the disclosure, the method further comprises receiving, by the processor, an indication that a space is unoccupied.
In accordance with further aspects of the disclosure, the method further comprises causing, by the processor, information to be displayed on the screen of the device indicating that the space is unoccupied.
In accordance with still further aspects of the disclosure, the information about the one or more beacons is first information about the one or more beacons and the location of the device is a first location. The method further comprises receiving, by the processor, second information about one or more beacons located in proximity to the device at a time later than a time at which the first information was received, and providing, by the processor, the second information to the computing system. The method still further comprises receiving, by the processor, information regarding a second location of the device, and causing, by the processor, an updated position of the client device to be displayed on the screen of the device based on the information regarding the second location of the device.
In accordance with aspects of the disclosure, the at least a portion of the route is displayed as a line between the location of the device and the space.
In accordance with further aspects of the disclosure, the method further comprises causing, by the processor, a map of the at least a portion of the floor of the facility to be displayed with one or more room names or points of interest.
In accordance with still further aspects of the disclosure, the method further comprises causing, by the processor, the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the floor indicating whether each of the spaces is available or unavailable.
In accordance with aspects of the disclosure, the method further comprises receiving, by the processor, a user request to filter information regarding spaces that are available or unavailable, and providing, by the processor, an indication of the user request to the computing system. The method still further comprises receiving, by the processor, updated information for displaying overlays on spaces of the at least a portion of the floor indicating whether each of the spaces is available or unavailable based on the user request. The method also comprises causing, by the processor, the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the at least a portion of the floor based on the received updated information.
In accordance with further aspects of the disclosure, the method further comprises sending, by the processor, a request for an unoccupied space for performing a particular task to the computing system in response to a user selection on the device. The method still further comprises receiving by the processor, an indication that the space is the closest space to the user that is unoccupied and that is suitable for a particular task and the information for displaying the at least a portion of the route between the location of the device and the location of the space on the map of the at least a portion of the floor of the facility housing the space.
In accordance with still further aspects of the disclosure, the task is one of making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
Furthermore, in accordance with some embodiments, there is provided a device for receiving information about building spaces, the device comprising one or more memory devices storing instructions, and a processor that, when executing the instructions, is configured to receive information about one or more beacons located in proximity to the device, and provide the information to a computing system. The processor is further configured to provide a request to navigate to a space, and receive information for displaying at least a portion of a route between a location of the device and a location of the space on a map of at least a portion of a floor of a facility housing the space. The processor is still further configured to cause the at least a portion of the route to be displayed as an overlay on the map on a screen of the device.
In accordance with aspects of the disclosure, the processor is further configured to receive an indication that a space is unoccupied.
In accordance with further aspects of the disclosure, the processor is further configured to cause information to be displayed on the screen of the device indicating that the space is unoccupied.
In accordance with still further aspects of the disclosure, the information about the one or more beacons is first information about the one or more beacons and the location of the device is a first location. The processor is further configured to receive second information about one or more beacons located in proximity to the device at a time later than a time at which the first information was received, and provide the second information to the computing system. The processor is still further configured to receive information regarding a second location of the client device, and cause an updated position of the device to be displayed on the screen of the device based on the information regarding the second location.
In accordance with aspects of the disclosure, the at least a portion of the route is displayed as a line between the location of the device and the space.
In accordance with further aspects of the disclosure, the processor is further configured to cause a map of the at least a portion of the floor of the facility to be displayed with one or more room names or points of interest.
In accordance with still further aspects of the disclosure, the processor is further configured to cause the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the floor indicating whether each of the spaces is available or unavailable.
In accordance with aspects of the disclosure, the processor is further configured to receive a user request to filter information regarding spaces that are available or unavailable, and provide an indication of the user request to the computing system. The processor is still further configured to receive updated information for displaying overlays on spaces of the at least a portion of the floor indicating whether each of the spaces is available or unavailable based on the user request. The processor is also configured to cause the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the at least a portion of the floor based on the received updated information.
In accordance with further aspects of the disclosure, the processor is further configured to send a request for an unoccupied space for performing a particular task to the computing system in response to a user selection on the device. The processor is still further configured to receive an indication that the space is the closest space to the user that is unoccupied and that is suitable for the particular task and the information for displaying the at least a portion of the route between the location of the device and the location of the space on the map of the at least a portion of the floor of the facility housing the space.
In accordance with still further aspects of the disclosure, the task is one of making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
Further still, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by a processor, cause the processor to perform a method. The method comprises receiving information about one or more beacons located in proximity to a device, and providing the information to a computing system. The method further comprises receiving information for displaying at least a portion of a route between a location of the device and a location of the space on a map of at least a portion of a floor of a facility housing the space, and causing the at least a portion of the route to be displayed as an overlay on the map on a screen of the device.
In accordance with aspects of the disclosure, the method further comprises receiving an indication that a space is unoccupied.
In accordance with further aspects of the disclosure, the method further comprises causing information to be displayed on the screen of the device indicating that the space is unoccupied.
In accordance with still further aspects of the disclosure, the information about the one or more beacons is first information about the one or more beacons and the location of the device is a first location. The method further comprises receiving second information about one or more beacons located in proximity to the device at a time later than a time at which the first information was received, and providing the second information to the computing system. The method still further comprises receiving information regarding a second location of the device, and causing an updated position of the device to be displayed on the screen of the device based on the information regarding the second location of the device.
In accordance with aspects of the disclosure, the at least a portion of the route is displayed as a line between the location of the device and the space.
In accordance with further aspects of the disclosure, the method further comprises causing the map of the at least a portion of the floor of the facility to be displayed with one or more room names or points of interest.
In accordance with still further aspects of the disclosure, the method further comprises causing the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the floor indicating whether each of the spaces is available of unavailable.
In accordance with aspects of the disclosure, the method further comprises receiving a user request to filter information regarding spaces that are available or unavailable, and providing an indication of the user request to the computing system. The method still further comprises receiving updated information for displaying overlays on spaces of the at least a portion of the floor indicating whether each of the spaces is available or unavailable based on the user request, and causing the map of the at least a portion of the floor of the facility to be displayed with overlays on spaces of the at least a portion of the floor based on the received updated information.
In accordance with further aspects of the disclosure, the method further comprises sending a request for an unoccupied space for performing a particular task to the computing system in response to a user selection on the device, and receiving an indication that the space is the closest space to the user that is unoccupied and that is suitable for the particular task and the information for displaying the at least a portion of the route between the location of the device and the location of the space on the map of the at least a portion of the floor of the facility housing the space.
In accordance with still further aspects of the disclosure, the task is one of making a call, meeting with a small group, meeting with a large group, or working in a quiet space.
In accordance with some embodiments, there is provided a computer-implemented method for sharing a location in a building, comprising determining, by a computing system comprising one or more processors, a location of a client device based on a proximity of one or more beacons to the client device. The method also comprises receiving, by the computing system, information regarding a user request from the client device to share a location in a building, the user request specifying one or more persons with whom to share the location, a location to be shared, and a message. The method further comprises providing, by the computing system, a notification to one or more devices associated with the one or more persons, the notification identifying the user making the user request, the location, and the message.
In accordance with aspects of the disclosure, the location in the building is the location of the client device.
In accordance with further aspects of the disclosure, the user request includes a request to select a location on a map of at least a portion of the facility, and the method further comprises providing, by the computing system, information for display of the map of the at least a portion of the floor of the facility. The method still further comprises receiving, by the computing system, a selection of a location on the displayed map of the at least a portion of the floor of the facility by the user, and providing, by the computing system, the selected location as the location to be shared as part of the notification.
Furthermore, in accordance with some embodiments, there is provided a system for sharing a location in a building, comprising one or more memory devices storing instructions, and one or more processors that are configured to execute the instructions. The one or more processors, when executing the instructions, are configured to determine a location of a client device based on a proximity of one or more beacons to the client device. The one or more processors are further configured to receive information regarding a user request from the client device to share a location in a building, the user request specifying one or more persons with whom to share the location, a location to be shared, and a message. The one or more processors are still further configured to provide a notification to one or more devices associated with one or more persons, the notification identifying the user making the user request, the location, and the message.
In accordance with aspects of the disclosure, the location in the building is the location of the client device.
In accordance with further aspects of the disclosure, the user request includes a request to select a location on a map of at least a portion of a floor of a facility, and the one or more processors are further configured to provide information for display of the map of the at least a portion of the floor of the facility. The one or more processors are still further configured to receive a selection of a location on the displayed map of the at least a portion of the floor of the facility by the user, and provide the selected location as the location to be shared as part of the notification.
Still further, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform a method, the method comprising determining a location of a client device based on a proximity of one or more beacons to the client device. The method further comprises receiving information regarding a user request from the client device to share a location in a building, the user request specifying one or more persons with whom to share the location, the location to be shared, and a message. The method still further comprises providing a notification to one or more devices associated with the one or more persons, the notification identifying the user making the user request, the location, and the message.
In accordance with aspects of the disclosure, the location in the building is the location of the client device.
In accordance with further aspects of the disclosure, the method further comprises providing information for display of the map of the at least a portion of the floor of the facility, and receiving a selection of a location on the displayed map of the at least a portion of the floor of the facility by the user. The method still further comprises providing the selected location as the location to be shared as part of the notification.
In accordance with some embodiments, there is provided a computer-implemented method for sharing a location in a building, comprising receiving, by a processor, a user request to share a location in a building, the user request including a selection of one or more persons with whom to share the location, a location to be shared, and a message. The method further comprises providing, by the processor, information regarding the user request to a computing system, the information identifying the one or more persons with whom to share the location, the location to be shared, and the message. The method still further comprises receiving, by the processor, information causing display of a confirmation indicating that a notification including the location and the message has been sent to the one or more persons.
In accordance with aspects of the disclosure, the location in the building is the location of a device that includes the processor.
In accordance with further aspects of the disclosure, the user request includes a request to select a location on a map of at least a portion of a floor of a facility, and the method further comprises receiving, by the processor, information causing display of a map of at least a portion of the floor of a facility from the computing system for display on the client device. The method still further comprises receiving, by the processor, a user selection of a location on the displayed map of the floor of the facility, and providing, by the processor, the location selected by the user as the location to be shared in the information regarding the user request that is provided to the computing system.
Furthermore, in accordance with some embodiments, there is provided a device for sharing a location in a building, comprising one or more memory devices storing instructions, and a processor that executes the instructions. The processor executes the instructions to receive a user request to share a location in a building, the user request including a selection of one or more persons with whom to share the location, the location to be shared, and a message. The processor further executes the instructions to provide information regarding the user request to a computing system, the information identifying the one or more persons with whom to share the location, the location to be shared, and the message. The processor still further executes the instructions to receive information causing display of a confirmation indicating that a notification including the location and the message has been sent to the one or more persons.
In accordance with aspects of the disclosure, the location in the building is the location of a device.
In accordance with further aspects of the disclosure, the processor is further configured to receive information causing display of a map of at least a portion of the floor of a facility from the computing system for display on the client device and to receive a user selection of a location on the displayed map of the floor of the facility. The processor is still further configured to provide the location selected by the user as the location to be shared in the information regarding the user request that is provided to the computing system.
Still further, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by a processor, cause the processor to perform a method. The method comprises receiving a user request to share a location in a building, the user request including a selection of one or more persons with whom to share the location, a location to be shared, and a message. The method further comprises providing information regarding the user request to a computing system, the information identifying the one or more persons with whom to share the location, the location to be shared, and the message. The method still further comprises receiving information causing display of a confirmation indicating that a notification including the location and the message has been sent to the one or more persons.
In accordance with aspects of the disclosure, the location in the building is the location of a device.
In accordance with further aspects of the disclosure, the method further comprises receiving information causing display of a map of at least a portion of the floor of a facility from the computing system for display on the client device, and receiving a user selection of a location on the displayed map of the floor of the facility. The method further comprises providing the location selected by the user as the location to be shared in the information regarding the user request that is provided to the computing system.
In accordance with some embodiments, there is provided a computer-implemented method for reserving a space, comprising receiving, by a computing system comprising one or more processors, information regarding a user request to reserve a space, the request including a date and time for reserving the space, a duration for reserving the space, a location of the space, and one or more persons to invite to the space. The method further comprises identifying, by the computing system, one or more preferences associated with the user making the user request or with the space, and sending, by the computing system, one or more messages in advance of the date and time to configure the space in accordance with the one or more preferences.
In accordance with aspects of the disclosure, the one or more messages are sent to one or more environmental control systems associated with the space to configure at least one of a temperature or lighting.
In accordance with further aspects of the disclosure, the one or more messages are sent to one or more devices associated with technical staff to configure technology within the space.
In accordance with still further aspects of the disclosure, the one or more messages are notifications to one or more persons identifying a catering provider and requesting that the one or more persons select a food or beverage to be delivered to the space.
In accordance with aspects of the disclosure, the method further comprises updating, by the computing system, a status of the space to indicate that it is reserved at the date and time. The method still further comprises receiving, by the computing system, an indication that the space is unoccupied from a motion sensor located in proximity to the space at a defined period of time after the date and time, and updating, by the computer system, the status of the space to indicate that it is no longer reserved.
Furthermore, in accordance with some embodiments, there is provided a system for reserving a space, comprising one or more memory devices storing instructions and one or more processors. The one or more processors, when executing the instructions, are configured to receive information regarding a user request to reserve a space, the request including a date and time for reserving the space, the duration for reserving the space, the location of the space, and one or more persons to invite to the space. The one or more processors are further configured to identify one or more preferences associated with the user making the user request or with the space, and send one or more messages in advance of the date and time to configure the space in accordance with the one or more preferences.
In accordance with aspects of the disclosure, the one or more messages are sent to one or more environmental control systems associated with the space to configure at least one of a temperature or lighting.
In accordance with further aspects of the disclosure, the one or more messages are sent to one or more devices associated with technical staff to configure technology within the space.
In accordance with still further aspects of the disclosure, the one or more messages are notifications to the one or more persons identifying a catering provider and requesting that the one or more persons select a food or beverage to be delivered to the space.
In accordance with aspects of the disclosure, the one or more processors are further configured to update a status of the space to indicate that it is reserved at the date and time, and receive an indication that the space is unoccupied from a motion sensor located in proximity to the space at a defined period of time after the date and time. The one or more processors are still further configured to update the status of the space to indicate that it is no longer reserved.
Still further, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform a method. The method comprises receiving information regarding a user request to reserve a space, the request including a date and time for reserving the space, a duration for reserving the space, a location of the space, and one or more persons to invite to the space. The method further comprises identifying one or more preferences associated with the user making the user request or with the space, and sending one or more messages in advance of the date and time to configured the space in accordance with the one or more preferences.
In accordance with aspects of the disclosure, the one or more messages are sent to one or more environmental control systems associated with the space to configure at least one of a temperature or lighting.
In accordance with further aspects of the disclosure, the one or more messages are sent to one or more devices associated with technical staff to configure technology within the space.
In accordance with still further aspects of the disclosure, the one or more messages are notifications to the one or more persons identifying a catering provider and requesting that the one or more persons select a food or beverage to be delivered to the space.
In accordance with aspects of the disclosure, the method further comprises updating a status of the space to indicate that it is reserved at the date and time, and receiving an indication that the space is unoccupied from a motion sensor located in proximity to the space at a defined period of time after the date and time. The method still further comprises updating the status of the space to indicate that it is no longer reserved.
In accordance with some embodiments, there is provided a computer-implemented method for sharing information about an issue in a building space, comprising determining, by a computing system comprising one or more processors, a location of a client device based on a proximity of one or more beacons to the client device. The method further comprises receiving, at the computing system, a user notification from the client device regarding an issue in a building space, the user notification including information about the issue, an identity of a user that generated the user notification, and the location of the client device. The method still further comprises providing, by the computing system, one or more messages to one or more devices associated with one or more support staff persons to address the issue.
In accordance with aspects of the disclosure, the user notification includes information about a priority of the issue.
In accordance with further aspects of the disclosure, the user notification further includes a picture of the issue.
In accordance with still further aspects of the disclosure, the user notification further includes information about a category of the issue.
Furthermore, in accordance with some embodiments, there is provided a system for sharing information about an issue in a building space, comprising one or more memory devices storing instructions and one or more processors that execute the instructions. The one or more processors, when executing the instructions, are configured to determine a location of a client device based on a proximity of one or more beacons to the client device. The one or more processors are further configured to receive a user notification from the client device regarding an issue in a building space, the user notification including information about the issue, an identity of a user that generated the user notification, and the location of the client device. The one or more processors are still further configured to provide one or more messages to one or more devices associated with one or more support staff persons to address the issue.
In accordance with aspects of the disclosure, the user notification further includes information about a priority of the issue.
In accordance with further aspects of the disclosure, the user notification further includes a picture of the issue.
In accordance with still further aspects of the disclosure, the user notification further includes information about a category of the issue.
Still further, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform a method. The method comprises determining a location of a client device based on a proximity of one or more beacons to the client device. The method further comprises receiving a user notification from the client device regarding an issue in a building space, the user notification including information about the issue, an identity of a user that generated the user notification, and the location of the client device. The method still further comprises providing one or more messages to one or more devices associated with one or more support staff persons to address the issue.
In accordance with aspects of the disclosure, the user notification further includes information about a priority of the issue.
In accordance with further aspects of the disclosure, the user notification further includes a picture of the issue.
In accordance with still further aspects of the disclosure, the user notification further includes information about a category of the issue.
In accordance with some embodiments, there is provided a computer-implemented method for providing information to a building visitor, comprising receiving, by a computing system comprising one or more processors, a user request to provide information to a building visitor, the user request including contact information for the visitor, an identity of the visitor, and a time and date that the visitor will be visiting the building. The method further comprises generating, by the computing system, a code based on the information in the user request, and sending, by the computing system using the contact information, a notification to the visitor including the code, wherein the code is operable to check the visitor into the building using a building security terminal.
In accordance with aspects of the disclosure, the code is one of a Quick Response (QR) code, a bar code, or a mobile key.
In accordance with further aspects of the disclosure, the notification includes a message to a printer to print a label with information about the visitor.
In accordance with still further aspects of the disclosure, the notification includes Wi-Fi settings for configuring a device of the visitor to be capable of using Wi-Fi within the building.
In accordance with aspects of the disclosure, the notification includes access rights that permit the visitor to enter certain areas of the building that are normally restricted to only employees.
Furthermore, in accordance with some embodiments, there is provided a system for providing information to a building visitor, comprising one or more memory devices storing instructions, and one or more processors configured to execute the instructions. The one or more processors are configured to execute the instructions to receive a user request to provide information to a building visitor, the user request including contact information for the visitor, an identity of the visitor, and a time and date that the visitor will be visiting the building. The one or more processors are further configured to generate a code based on the information in the user request, and send a notification to the visitor including the code, wherein the code is operable to check the visitor in to the building using a building security terminal.
In accordance with aspects of the disclosure, the code is one of a Quick Response (QR) code, a bar code, or a mobile key.
In accordance with further aspects of the disclosure, the notification includes a message to a printer to print a label with information about the visitor.
In accordance with still further aspects of the disclosure, the notification includes Wi-Fi settings for configuring a device of the visitor to be capable of using Wi-Fi within the building.
In accordance with aspects of the disclosure, the notification includes access rights that permit the visitor to enter certain areas of the building that are normally restricted to only employees.
Still further, in accordance with some embodiments, there is provided a non-transitory computer readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform a method. The method comprises receiving a user request to provide information to a building visitor, the user request including contact information for the visitor, an identity of the visitor, and a time and date that the visitor will be visiting the building. The method further comprises generating a code based on the information in the user request, and sending a notification to the visitor including the code, wherein the code is operable to check the visitor into the building using a building security terminal.
In accordance with aspects of the disclosure, the code is one of a Quick Response (QR) code, a bar code, or a mobile key.
In accordance with further aspects of the disclosure, the notification includes a message to a printer to print a label with information about the visitor.
In accordance with still further aspects of the disclosure, the notification includes Wi-Fi settings for configuring a device of the visitor to be capable of using Wi-Fi within the building.
In accordance with aspects of the disclosure, the notification includes access rights that permit the visitor to enter certain areas of the building that are normally restricted to only employees.
Before explaining example embodiments consistent with the present disclosure in detail, it is to be understood that the disclosure is not limited in its application to the details of constructions and to the arrangements set forth in the following description or illustrated in the drawings. The disclosure is capable of embodiments in addition to those described and is capable of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein, as well as in the abstract, are for the purpose of description and should not be regarded as limiting.
It is to be understood that both the foregoing general description and the following detailed description are explanatory only and are not restrictive of the claimed subject matter.
The accompanying drawings, which are incorporated in and constitute part of this specification, and together with the description, illustrate and serve to explain the principles of various example embodiments.
In the following description, numerous specific details are set forth regarding the systems and methods of the disclosed subject matter and the environment in which such systems and methods may operate in order to provide a thorough understanding of the disclosed subject matter. It will be apparent to one skilled in the art, however, that the disclosed subject matter may be practiced without such specific details, and that certain features, which are well known in the art, are not described in detail in order to avoid unnecessary complication of the disclosed subject matter. In addition, it will be understood that the embodiments provided below are exemplary, and that it is contemplated that there are other systems and methods that are within the scope of the disclosed subject matter.
Embodiments of the present disclosure relate to systems and methods for providing information about building resources. In addition, embodiments of the present disclosure relate to solutions that provide information about building resources to optimize utilization of the building resources.
Buildings often have many resources. For example, spaces could be considered a resource. An office building, for example, might have a variety of spaces, such as offices, conference rooms, common spaces, restrooms, pantries, and other types of spaces. In a large building, these spaces might be spread across a large floor, or across multiple floors. To find a particular space, an employee might wander around the building looking at room numbers or might look at a map of the building to identify where the particular space might be located. An employee might also walk to a particular space, only to find that the employee cannot use the space because it is already occupied. Once arriving at a particular space, a person might have to spend time configuring the space to an employee's liking.
A tool in a building might also be considered a resource. An office building, for example, might have a variety of tools, such as printers, projectors, computers, telephones, conference phones, fax machines, or other types of equipment used in the workplace. In a large building, these tools might be dispersed in particular locations across a large floor, or across multiple floors. To find a particular tool, an employee might ask another employee or support person, or wander around the building looking for the particular tool.
An amenity in a building might also be considered a resource. An office building, for example, might have a variety of amenities, such as coffee makers, microwaves, refrigerators, and vending machines. In a large building, these amenities might be spread across a large floor, or across multiple floors. To find a particular amenity, an employee might ask another employee or support person, or wander around the building looking for the particular amenity.
A person in a building might also be considered a resource. An office building, for example, might have a number of employees. In a large building, it might be difficult to determine where an employee is at any one time and might be difficult to coordinate a meeting with a particular person. To find a particular person, an employee might ask another employee or support person, or wander around the building looking for the particular person.
An issue might sometimes arise with building resource. For example, a tool or amenity might break, or a particular space might be dirty. An employee might report such an issue to a support person in order to get the issue resolved. Alternatively, a support person might periodically check for issues, and the issue might not get resolved until it is noticed by the support person.
For some buildings, such as office buildings, there are times when a person that is not an employee of a tenant in the building might need to visit the building but may not have access to the building. In these situations, the person visiting the building might have to check in with security staff or might need to wait in a lobby for an employee to let the person into the building.
Embodiments of the present disclosure can address the challenges associated with finding a particular resource in a building. For example, some embodiments of the present disclosure provide systems and methods that can provide information about building resources. The information may include, for example, a location of a space, tool, amenity, or person in a building. The information may also include, for example, directions from a person's current location to the location of a particular building resource.
Embodiments of the present disclosure can also address the challenges associated with configuring a space prior to its use. For example, some embodiments of the present disclosure provide systems and methods that can configure a space, such as a conference room, in accordance with a particular person's preferences prior to that person using the space. The preferences might include environmental preferences for the space, such as preferences as to the lighting or temperature of the room. The preferences could also include, for example, preferences for a food or beverage to be served in the room. The preferences might also include preferences regarding whether tools are available in a space, such as whiteboards, projectors, or telephones for making a conference call.
Embodiments of the present disclosure can further address the challenges associated with identifying issues with building resources. For example, some embodiments of the present disclosure provide systems and methods that can receive notice of an issue with a building resource, along with information about the issue that needs to be resolved, such as the location of the issue.
Embodiments of the present disclosure can still further address the challenges associated with managing access to building resources by building visitors. For example, some embodiments of the present disclosure provide systems and methods that can provide information about building resources to a building visitor prior to the visitor entering a restricted part of a building.
The floorplan illustrated in view 100 includes a variety of different spaces. For example, space 135 may correspond to a conference room, space 140 may correspond to a space next to the elevators, space 145 may correspond to a focus room, space 150 may correspond to a break room, space 155 may correspond to a particular employee's office, space 160 may correspond to a hallway, space 165 may correspond to a lounge space, and space 170 may correspond to a restroom.
In some embodiments, people on a floor, such as employees of the business that rents or owns at least a portion of the floor, might have client devices 110 on them while they are on the floor. One such client device 110 is illustrated in view 100 as a circle with cross-hatching inside of it. A client device 110 may be a mobile device, for example, a mobile phone, smart phone, tablet, netbook, electronic reader, personal digital assistant (PDA), personal computer, laptop computer, smart watch, gaming device, personal organizer, navigation device, and/or other type of mobile computing devices. In some embodiments, a client device 110 may be implemented with one or more hardware devices and/or software applications running thereon. For example, a client device 110 might run a software application for providing a user with information about building resources. A client device 110 may communicate by transmitting data to and/or receiving data from one or more beacons 120 and/or one or more servers 190. In some embodiments, one or more of client device(s) 110 may be implemented using a computer system, such as computer system 3500 of
The environment might also include one or more beacons 120, which are represented as circles in view 100. In some embodiments, beacon(s) 120 may be configured to transmit and/or receive Bluetooth signals, such as Bluetooth low energy (BLE) signals. In other embodiments, beacon(s) 120 may be configured to transmit and/or receive Wi-Fi signals. Beacon(s) could also be configured to transmit and/or receive ultra-wideband (UWB) signals. In some embodiments, a beacon may be configured to transmit and/or receive a combination of BLE signals, Wi-Fi signals, UWB signals, and/or other types of short range wireless signals. In other embodiments, some beacons in an environment might transmit and/or receive one type of signal, while other beacons in the environment might transmit and/or receive another type of signal. In some embodiments, a beacon 120 might store certain information for uniquely identifying the beacon. A beacon 120 might transmit this information periodically, or upon receiving a signal from a client device 110 and/or a server 190. In some embodiments, a beacon 120 may be implemented with hardware devices and/or software applications running thereon. A beacon 120 may communicate by transmitting data to and/or receiving data from client device(s) 110 or server(s) 190. In some embodiments, one or more of beacon(s) 120 may be implemented using a computer system, such as computer system 3500 of
The environment might also include one or more sensors 130, which are represented as squares in view 100. A sensor 130 might include a motion sensor. A motion sensor might be, for example, a passive infrared (PIR) sensor, a microwave sensor, an ultrasonic sensor, or a video camera. A motion sensor might be configured to, for example, detect motion of a human in its vicinity. A sensor 130 could also be a light sensor, a temperature sensor, a humidity sensor, or any other type of sensor. In some embodiments, a sensor 130 might include a combination of different types of sensors. In some embodiments, a sensor 130 may be implemented with hardware devices and/or software applications running thereon. A sensor 130 may communicate by transmitting data to and/or receiving data from server(s) 190 or client device(s) 110. In some embodiments, one or more sensor(s) 130 may be implemented using a computer system, such as computer system 3500 of
As shown in view 100, the environment might also include one or more servers 190. By way of example, server(s) 190 may include any combination of one or more of backend servers, web servers, databases, mainframe computers, general-purpose computers, personal computers, or other types of computing devices. In some embodiments, one or more of server(s) 190 may be configured to receive and provide information about building resources, implement searches, index information, store information, and/or retrieve information. In some embodiments, a server 190 may be a standalone computing system or apparatus, or it may be part of a larger system. For example, server(s) 190 may represent distributed servers that are remotely located and communicate over a communications network, or over a dedicated network, such as a local area network (LAN). Server(s) 190 may include one or more back-end servers for carrying out one or more aspects of the present disclosure.
Server(s) 190 may be implemented as a server system comprising a plurality of servers, or a server farm comprising a load balancing system and a plurality of servers. In some embodiments, a server 190 may be implemented with hardware devices and/or software applications running thereon. A server 190 may communicate with client device(s) 110, beacon(s) 120, and/or one or more sensors 130 over network(s) 180. For example, a server 190 may communicate by transmitting data to and/or receiving data from client device(s) 110, beacon(s) 120, and/or sensor(s) 130. In some embodiments, one or more of server(s) 190 may be implemented using a computer system, such as computer system 3500 of
As shown in view 100, the environment might also include one or more networks 180. Network(s) 180 may connect server(s) 190 with client device(s) 110, beacon(s) 120, and/or sensor(s) 130. Network(s) 180 may provide for the exchange of information, such as queries for information and results, between client device(s) 110 and server(s) 190, between beacon(s) 120 and server(s) 190, or between sensor(s) 130 and server(s) 190. Network(s) may include one or more types of networks interconnecting client device(s) 110, server(s) 190, beacon(s) 120, and/or sensor(s) 130. For example, one client device 110 may communicate with server(s) 190 using a different type of network 180 than a second client device 110 may use to communicate with server(s) 190. As another example, a beacon 120 or sensor 130 may use a different type of network 180 than a client device 110 may use to communicate with server(s) 190.
Network(s) 180 may include one or more wide area networks (WANs), metropolitan area networks (MANs), local area networks (LANs), personal area networks (PANs), or any combination of these networks. Network(s) 180 may include combination of one or more of a variety of different network types, including Internet, intranet, Wi-Fi, IEEE 802.11, cellular, Bluetooth, UWB, infrared, satellite, wireless universal serial bus (wireless USB), Ethernet, twisted-pair, coaxial cable, fiber optic, and/or other types of wired or wireless networks.
Server(s) 190 may store a variety of information about one or more building floors, such as the floor illustrated in view 100. For example, server(s) 190 may store a representation of the floorplan of the floor. Server(s) 190 may also store information about spaces on the floor. For example, server(s) 190 may store information identifying that space 135 corresponds to a conference room, that space 140 corresponds to a space next to the elevators, that space 145 corresponds to a focus room, that space 150 corresponds to a break room, that space 155 corresponds to a particular employee's office, that space 160 corresponds to a hallway, that space 165 corresponds to a lounge space, and that space 170 corresponds to a restroom. Server(s) 190 may also store information about tools and/or amenities that are available in a particular space.
Server(s) 190 may also store a variety of additional information. For example, server(s) 190 may store information about employees, employee contact information, or employee availability. In some embodiments, server(s) 190 may integrate with office software, such as scheduling software, email software, or personnel management software, to provide this information to server(s) 190.
Server(s) 190 may also store information about beacon(s) 120 located on one or more building floors. For example, server(s) 190 may store unique identifying information for each of beacon(s) 120 and/or information about a location where each of beacon(s) 120 is installed. Server(s) 190 may also store information about sensor(s) 130 located on one or more building floors. For example, server(s) 190 may store unique identifying information for each of sensor(s) 130 and/or information about a location where each of sensor(s) 130 is installed.
In some embodiments, the information stored in server(s) 190 can be stored as a result of a person having entered the information. For example, a system administrator might authenticate with server(s) 190 with a username and password, and might then be able to enter information about a building's floorplan, resources, beacons, and/or sensors. An administrator might also be able to modify or reconfigure this information. For example, an administrator might change information about tools available in a room to add an additional tool when that tool has been added to the room. The administrator may enter and/or change the information stored in server(s) 190 through a user interface, which might enable the information to be entered or changed through entry of text and/or selection of buttons.
Server(s) 190 may receive signals from sensor(s) 130. For example, a sensor 130 in a space may include a motion sensor and may send information about whether motion has been detected to server(s) 190. Sensor(s) 130 may send this information to server(s) 190 periodically, or upon being polled by server(s) 190. In this way, at any one time, server(s) 190 may determine whether motion has been detected in a particular space. If motion has been detected within some period of time (e.g., within the past 5 minutes), server(s) 190 may consider the space to be occupied. If motion has not been detected for some period of time (e.g., within the past 5 minutes), server(s) 190 may consider the space to be unoccupied. Server(s) 190 may receive signals from multiple sensor(s) 130, and may track which spaces are occupied or unoccupied at any one time. Server(s) 190 may also receive signals from light sensors, temperature sensors, humidity sensors, or other types of sensors. Server(s) 190 may use this information to track the climate or lighting of particular spaces.
Within an environment, such as the environment shown in view 100, a software application may be opened on a client device 110. The software application may, for example, provide information about building resources. The software application may configure client device 110 to periodically receive information from one or more of the beacons 120 distributed through the floor of the building. For example, client device 110 may periodically transmit a signal to beacons 120 within proximity of client device 110 over a short range wireless network, such as a Bluetooth, Wi-Fi, or UWB network. The proximity could be, for example, a range of up to 30 feet. In doing so, a client device 110 may continuously scan for beacons 120 within its vicinity. A beacon 120 receiving the signal from client device 110 may respond over the short range wireless network with a transmission that includes information that uniquely identifies beacon 120. Alternatively, rather than have a client device 110 periodically transmit to scan for beacons 120, a beacon 120 may be configured to periodically transmit its unique identifying information. A client device 110 may receive the information for beacons 120 within its vicinity. A client device 110 may receive information from multiple beacons 120 at any particular location on the floor. For example, in the example shown in view 100, client device 110 may receive transmissions from the three or four beacons that are closest to client device 110. In addition to receiving information identifying beacons 120 within its vicinity, a client device 110 may also measure a signal strength of the signals it receives from those beacons 120.
Once a client device 110 has received information about one or more beacons 120 within its vicinity, it may send this information over one or more networks 180 to server(s) 190. In some embodiments, a client device 110 may also send signal strengths associated with the signals it received from beacons 120 within its vicinity to server(s) 190. Server(s) 190 may use the information received from a client device 110 to triangulate a location of client device 110 on the floor. For example, server(s) 190 may determine that, based on the three beacons from which client device 110 received signals, a client device 110 is in a particular location. Server(s) 190 may also utilize information about signal strengths of each of the signals client device 110 received from beacons to further triangulate a location of client device 110. Once a location of client device 110 has been determined, server(s) 190 may use this information to provide information to client device 110. For example, server(s) 190 may provide client device 110 with information about its location, about building resources near its location, and/or with directions from its location to a particular building resource.
In step 301, an indication of whether a space is occupied may be received. For example, server(s) 190 may receive information from a motion sensor 130 located in proximity to a space indicating whether the space is occupied. The space could be, for example, a room, and motion sensor 130 may be located within the room. Server(s) 190 may update stored information about the occupancy of the space based on the received indication.
In step 302, a location of a client device 110 may be determined. For example, a client device 110 may receive signals with information uniquely identifying one or more beacons 120 in proximity to client device 110. Client device 110 may also identify signal strengths associated with the signals it receives from beacon(s) 120. Server(s) 190 may receive the information uniquely identifying the one or more beacons from the client device. Server(s) 190 may also receive information about the signal strengths of the signals from the client device. Server(s) 190 may then use the information uniquely identifying beacon(s) 120 to determine a location of client device 110. Server(s) 190 may also use signal strength information to determine the location of client device 110. Server(s) 190 may determine the location of client device 110 using, for example, triangulation.
In step 303, a route between client device 110 and the space may be determined. For example, a client device 110 may display an indication that a space is unoccupied based on information received from server(s) 190. A user of client device 110 may then request a route between client device 110 and the space by sending a request to server(s) 190. Server(s) 190 may use the determined location of client device 110 and a stored location of the space to determine the shortest route to take in the building to get from the location of client device 110 to the space.
In step 304, once the route has been determined, server(s) 190 may provide information that allows at least a portion of the route to be displayed on a map of at least a portion of a floor of a facility that houses the space. The information may be, for example, graphics primitives or other display information. The information may also include information that enables visual and/or audio turn-by-turn directions to be output on device 110. The information may cause the at least a portion of the route to be displayed as an overlay on the map on a screen of client device 110. In some embodiments, the route may be displayed on client device 110 as a line between the location of client device 110 on the map and the space on the map. If a route is relatively short, the information may cause the entire route to be displayed on client device 110. If the route is relatively long, the information may cause only a first part to be traversed of the route to be displayed. If the building has multiple tenants on the floor, the map may display only a portion of the floor. For example, if the user of client device 110 is an employee of a company renting only a portion of a floor, client device 110 may only display a map of that portion of the floor on client device 110. In some embodiments, the map displayed on client device 110 may also include information about spaces, tools, and/or amenities on the floor, such as room names or points of interest (e.g., restrooms, pantries, coffee makers).
Once the route on the map is displayed on client device 110, a displayed location of client device 110 on the map may be updated as client device 110 moves. For example, server(s) 190 may receive from client device 110 information about beacon(s) in its proximity and/or signal strength of beacons in its proximity at a time later than a time at which the previous location of client device 110 was determined. Server(s) 190 may use this information to determine a second location of client device 110. Server(s) 190 may then provide information to client device 110 that allows client device 110 to display an updated position of client device 110 on the route on the map.
In some embodiments, server(s) 190 may provide a client device 110 with information for overlays on portions of the map corresponding to spaces, indicating whether each of the spaces is available or unavailable. For example, server(s) 190 may receive information from multiple sensors 130 indicating an occupancy status of multiple spaces. Server(s) 190 may use this status information to provide client device 110 with information for displaying overlays on the portions of the map corresponding to spaces, indicating whether each of the spaces is available or unavailable based on its occupancy status. In some embodiments, the overlays can be color overlays, where different colors are used to indicate whether each of the spaces is available or unavailable. For example, green overlays may be displayed over spaces that are unoccupied, red overlays may be displayed over spaces that are occupied, and grey overlays may be displayed over spaces with unknown occupancy.
In some embodiments, a user of a client device 110 may request to filter the displayed overlays regarding occupancy status. For example, a user may request to filter the displayed overlays to display only overlays for spaces meeting certain criteria. The criteria could be, for example, a time frame during which the user wants to use a space, whether a space is reservable, a type of work the user intends to perform, a tool the user requires, or an amenity of a space. Server(s) 190 may receive the request from client device 110, determine which of the available or unavailable spaces meets the user specified criteria, and send to client device 110 updated information for displaying overlays only on spaces of the floor that meet the user specified criteria.
In some embodiments, a user of a client device 110 may request an unoccupied space for performing a particular task, such as making a call, meeting with a small group, meeting with a large group, or working in a quiet space. Server(s) 190 may receive an indication that the user of client device 110 has requested an unoccupied space for performing the particular task. Server(s) 190 may then determine the closest space to the user that is unoccupied and that is suitable for the particular task. Server(s) 190 may store information about tasks for which different spaces in a building are suitable, and may use this information in determining which spaces are suitable for the task identified by the user. Server(s) 190 may then determine a route between the location of client device 110 and the space, and may provide information so that the route is displayed as an overlay on a map of the floor on client device 110.
In step 401, information about a beacon may be received by client device 110. For example, a client device 110 may receive signals with information uniquely identifying one or more beacons 120 in proximity to client device 110. Client device 110 may also identify signal strengths associated with the signals it receives from beacon(s) 120.
In step 402, client device 110 may provide the information uniquely identifying beacon(s) 120 to server(s) 190. Client device 110 may also provide to server(s) 190 information about signal strengths associated with the signals client device 110 received from beacon(s) 120. Server(s) 190 may utilize this information to determine a location of client device 110.
In step 403, client device 110 may provide a request to navigate to a space to server(s) 190. For example, a user of client device 110 may select a particular space to which the user wishes to navigate, and in response, client device 110 may send the request to server(s) 190.
In step 404, client device 110 may receive from server(s) 190 information for displaying at least a portion of a route between a location of client device 110 and a location of the space on a map of at least a portion of a floor of a facility housing the space. The information received from server(s) 190 may be, for example, graphics primitives or other display information. The information may also include information that enables visual and/or audio turn-by-turn directions to be output on device 110.
In step 405, at least a portion of the route may be displayed as an overlay on the map on a screen of client device 110, based on the information received from server(s) 190. In some embodiments, the route may be displayed on client device 110 as a line between the location of client device 110 on the map and the space on the map. If a route is relatively short, the entire route may be displayed on client device 110. If the route is relatively long, only a first part to be traversed of the route may be displayed. If the building has multiple tenants on the floor, the map may display only a portion of the floor. For example, if a user of client device 110 is an employee of a company renting only a portion of a floor, client device 110 may only display a map of that portion of the floor on client device 110. In some embodiments, the map displayed on client device 110 may also include information about spaces, tools, and/or amenities on the floor, such as room names or points of interest (e.g., restrooms, pantries, coffee makers).
Once the route on the map is displayed on client device 110, a displayed location of client device 110 on the map may be updated as client device 110 moves. For example, client device 110 may receive information about beacon(s) 120 in its proximity and/or signal strength of beacons in its proximity at a time later than a time at which the previous location of client device 110 was determined. Client device 110 may provide this provide this information to server(s) 190, and then receive from server(s) 190 information regarding the current location of client device 110. Client device 110 may then display an updated position of client device 110 on the route on the map.
In some embodiments, client device 110 may display overlays on portions of the map corresponding to spaces, indicating whether each of the spaces is available or unavailable. For example, server(s) 190 may provide client device 110 with information for displaying these overlays. The overlays may indicate whether each of the spaces is available or unavailable based on its occupancy status. In some embodiments, the overlays can be color overlays, where different colors are used to indicate whether each of the spaces is available or unavailable. For example, green overlays may be displayed over spaces that are unoccupied, red overlays may be displayed over spaces that are occupied, and grey overlays may be displayed over spaces with unknown occupancy.
In some embodiments, a user of client device 110 may request to filter the displayed overlays regarding occupancy status. For example, a user may request to filter the displayed overlays to display only overlays for spaces meeting certain criteria. The criteria could be, for example, a time frame during which the user wants to use a space, whether a space is reservable, a type of work the user intends to perform, a tool the user requires, or an amenity of a space. An indication of the user request can be sent to server(s) 190. Client device 110 may then receive updated information for displaying overlays only on spaces of the floor that meet the user specified criteria.
In some embodiments, a user of a client device 110 may request an unoccupied space for performing a particular task, such as making a call, meeting with a small group, meeting with a large group, or working in a quiet space. Client device 110 may send this request to server(s) 190. In response, client device 110 may receive from server(s) 190 an indication of the closest space to client device 110 that is unoccupied and that is suitable for the particular task. Client device 110 may also receive from server(s) 190 information for displaying at least a portion of the route between the location of client device 110 and the location of the space on the map displayed on client device 110.
In step 501, a location of a client device 110 may be determined. For example, a client device 110 may receive signals with information uniquely identifying one or more beacons 120 in proximity to client device 110. Client device 110 may also identify signal strengths associated with the signals it receives from beacon(s) 120. Server(s) 190 may receive the information uniquely identifying the one or more beacons from the client device. Server(s) 190 may also receive information about the signal strengths of the signals from the client device. Server(s) 190 may then use the information uniquely identifying beacon(s) 120 to determine a location of client device 110. Server(s) 190 may also use signal strength information to determine the location of client device 110. Server(s) 190 may determine the location of client device 110 using, for example, triangulation.
In step 502, information regarding a user request to share a location in a building may be received from the client device. For example, a user of a client device 110 might wish to share the client device's current location, or a meeting location, with one or more persons. The location could be the location of a bookable space, or a non-bookable space, such as a common space. The user request may specify one or more persons with whom to share the location, a location to be shared, and/or a message to the one or more persons. In some embodiments, the user request may include a request to select a location on a map of at least a portion of a floor of a facility. In response to such a request, server(s) 190 may provide to client device 110 information for display of the map of the at least a portion of the facility, and the client device may display the map. A user may then select a location on the map, and server(s) 190 may receive the selection of the location from the client device. Server(s) 190 may then include the selected location as the location to be shared as part of the notification.
In step 503, a notification may be provided to one or more devices associated with the one or more persons. The notification may identify the user making the user request, the location, and the message. The notification may be provided to the one or more devices based on contact information input by the user. Alternatively, server(s) 190 may look up contact information for the specified one or more persons and use that contact information to deliver the notification.
In step 601, a user request to share a location in a building may be received. For example, a user of a client device 110 might wish to share the client device's current location, or a meeting location, with one or more persons. The location could be the location of a bookable space, or a non-bookable space, such as a common space. The user request may include, for example, a selection of one or more persons with whom to share the location, a location to be shared, and/or a message to the one or more persons. In some embodiments, the user request may include a request to select a location on a map of at least a portion of a floor of a facility. Such a request may be provided to server(s) 190, and client device 110 may receive in response from server(s) 190 information for displaying a map of at least a portion of the floor of the facility. Client device 110 may display the map using this information. A user may then select a location on the map, and provide the selected location to server(s) 190. Server(s) 190 may then include the selected location as the location to be shared as part of the notification.
In step 602, information regarding the user request to share the location may be sent to server(s) 190. The information may include information about the one or more persons with whom to share the location, the location to be shared, and/or a message to the one or more persons. Server(s) 190 may then use this information to send a notification to the one or more persons. Once the notification has been sent, server(s) 190 may generate information for causing client device 110 to display a confirmation indicating that a notification including the location and the message has been sent to the one or more persons.
In step 603, the information for causing display of the confirmation may be received by client device 110. Once this information has been received, client device 110 may display the confirmation.
In step 701, server(s) 190 may receive information regarding a user request to reserve a space. For example, server(s) may maintain information about which spaces in a building are reservable, which spaces have already been reserved at particular dates and times, and which spaces are available at particular dates and times. A user wishing to reserve a space can request information about the availability of the spaces from server(s) 190, and may then request to reserve a particular space. The user request may include a date and time for reserving the space, a duration for reserving the space, a location of the space, and/or one or more persons to invite to the space.
In step 702, server(s) 190 may identify one or more preferences. The one or more preferences may be associated with the user making the user request, with a person invited to the space, or with the space itself. For example, server(s) 190 may store preferences associated with users or with spaces. These preferences may include, for example, a preference as to environmental conditions in the space, technology tools within the space, or food or beverage for consumption in the space. For example, a user may have preferences as to environmental conditions of a space, such as a temperature level, humidity level, or lighting level of a space. A user might also have preferences as to technology tools of a space, such as always wanting a projector to be set up before the user's reserved time for using the space. A user might also have preferences as to a food or beverage for consumption in the space. For example, a user might prefer to have coffee served during his meetings or might prefer that sandwiches be served from a particular food vendor at lunch meetings. Server(s) 190 may store user preferences for spaces.
In step 703, server(s) 190 sends one or more messages in advance of the date and time for which the space is reserved to configure the space in accordance with the one or more preferences. For example, server(s) 190 may send messages to appropriate control systems, food vendors, and/or support staff to configure the space to the user's liking.
In some embodiments, the one or more messages could be notifications to one or more persons invited to the space at the reserved time. For example, the notifications could notify the one or more persons that the user has invited them to a particular space at a particular date and time, and could include a message asking the one or more persons whether they have any preferences for the space, such as preferences as to environmental conditions, preferences as to a technology tool to use in the space, or preferences as to a food or beverage to be served in the space. In some embodiments, the notification may indicate that the user has selected a particular caterer for a meeting in the space, and could request that the one or more persons select particular food or beverage items from that caterer's menu for delivery to the space at the reserved date and time.
In some embodiments, machine learning or artificial intelligence algorithms may be implemented in server(s) 190 to automatically determine a user's likely preferences for certain spaces, and to update those preferences as they change over time by tracking the user's preferences for different types of spaces.
When a user has reserved a space for a particular date and time, server(s) 190 may update a status of the space in a database to track that it is reserved at the particular date and time. In some embodiments, server(s) 190 may receive an indication from a motion sensor located in proximity to the space at a defined period of time after the date and time. For example, the motion sensor could send indications of occupancy status to server(s) 190 periodically or in response to polling by server(s) 190. In some embodiments, a motion sensor may send an indication of occupancy of the space to server(s) 190 some time period into a reservation, such as 10 minutes into a reservation. If the space is unoccupied, server(s) 190 may update the status of the space in the database to indicate that the space is no longer reserved and is now available during the previously reserved time. In doing so, spaces can be made available even when they are reserved if the space is not being utilized.
In step 801, a location of a client device 110 may be determined. For example, a client device 110 may receive signals with information uniquely identifying one or more beacons 120 in proximity to client device 110. Client device 110 may also identify signal strengths associated with the signals it receives from beacon(s) 120. Server(s) 190 may receive the information uniquely identifying the one or more beacons from the client device. Server(s) 190 may also receive information about the signal strengths of the signals from the client device. Server(s) 190 may then use the information uniquely identifying beacon(s) 120 to determine a location of client device 110. Server(s) 190 may also use the signal strength information to determine the location of client device 110. Server(s) 190 may determine the location of client device 110 using, for example, triangulation.
In step 802, server(s) 190 may receive a user notification from the client device regarding an issue in the building space. The user notification may include information about the issue, an identity of a user that generated the user notification, and/or the location of the client device. For example, a user in a building may identify a particular issue with a building resource, such as a printer that is broken, a bathroom that is dirty, a conference room with a broken projector, or some other issue. The user may select to report the issue. The user may enter information describing the issue. The user may also select a location of the issue. For example, the user could select the current location of client device 110 as the location of the issue or could select a location on a displayed map on client device 110. The information describing the issue, the location of the issue, and information identifying a user of the client device may then be sent as a user notification to server(s) 190. In some embodiments, the user may also enter a priority of the issue or a category of the issue for inclusion in the user notification. In some embodiments, the user may also take a picture of the issue and include the picture in the user notification. Server(s) 190 may receive the notification and determine the type of issue. Based on the type of issue, server(s) 190 may provide one or more messages to one or more devices associated with one or more appropriate support staff persons for the type of issue, so that they can address the issue.
In step 901, server(s) 190 may receive from a client device 110 a user request to provide information to a building visitor. The user request may include contact information for the visitor, an identity of the visitor, and/or a time and date that the visitor will be visiting the building. For example, a user may schedule a meeting in a conference room in the building for a particular date and time, invite the visitor to the meeting, and generate the user request based on the scheduled meeting.
In step 802, based on the information in the user request, server(s) 190 may generate a code, such as a bar code, a quick response (QR) code, or a mobile key.
In step 803, server(s) 190 may then send a notification to the visitor using the contact information, and the notification may include the code. The code may be displayed on a device of the visitor, such that the visitor can display the code and scan it on a terminal to check in with a security desk upon arriving at the building. In some embodiments, the notification may also include a message to a printer that causes the printer to print a label with information about the visitor for the visitor to wear while visiting the building. In some embodiments, the notification may include Wi-Fi settings for configuring the device of the visitor so that it is capable of using Wi-Fi when in the building. In some embodiments, the bar code, QR code, or mobile key included in the notification may scanned at doorways, such that the visitor can access certain areas of the building that are normally restricted to only employees working in the building.
If a user searches for a particular building resource, the map may focus in on that particular resource. For example, if a user searches for a conference room named “Room 4” using search bar 1220 in screen 1200, screen 1300 may be displayed.
The software application disclosed herein may also be utilized to provide a variety of additional features. For example, the software application may be utilized as an employee's badge, to provide an employee with access to various portions of a building. For example, the user may open a particular feature in the software application that allows the user to scan a code or mobile key into an appropriate reader at a doorway, to gain access to the room through the doorway. Alternatively, the software application may configure client device 110 such that it automatically detects when client device 110 approaches a door to a restricted area and may configured that the client device to automatically transmit a code or mobile key to a reader on the door to gain access to the restricted area. The software application may also be utilized to post notifications to users throughout a building. For example, an administrator may use the software application to push notifications to users regarding building events or emergencies. The software application may also include features for concierge services that allows a user to schedule things like dry cleaning or to request cab service.
As shown in
A computing device 3510 may include one or more storage devices configured to store data and/or software instructions used by processor(s) 3520 to perform operations consistent with the disclosed embodiments. For example, a computing device 3510 may include main memory 3540 configured to store one or more software programs that, when executed by processor(s) 3520, cause processor(s) 3520 to perform functions or operations consistent with disclosed embodiments. By way of example, main memory 3540 may include NOR or NAND flash memory devices, read only memory (ROM) devices, random access memory (RAM) devices, etc. A computing device 3510 may also include one or more storage medium(s) 3550. By way of example, storage medium(s) 3550 may include hard drives, solid state drives, tape drives, redundant array of independent disks (RAID) arrays, etc. Although
Storage medium(s) 3550 may be configured to store data, and may store data received from one or more of server(s) 190, client device(s) 110, beacon(s) 120, and/or sensor(s) 130. The data may take or represent various content or information forms, such as documents, presentations, textual content, graphical content, mapping information, geographic information, directory information, polling information, user profile information, software applications, event information, scheduled meeting information, personnel information, calendar information, room status information, room booking information, and any other type of information and/or content in which user may be interested, or any combination thereof. The data may further include other data received, stored, and/or inferred by computer system 3500, such as data regarding locations of client device(s) 110, data regarding locations of beacon(s) 120, data regarding locations of sensor(s) 130, identities of client device(s) 110, identities of beacon(s) 120, identities of sensor(s) 130, content items displayed at client device(s) 110, content items provided to client device(s) 110, histories of user interaction with the software application, user preference information, space occupancy status information, space booking status information, building issue information, and/or any other data used for carrying out embodiments of the present disclosure.
A computing device 3510 may also include one or more displays (not shown). Display(s) may be implemented using one or more display panels, which may include, for example, one or more cathode ray tube (CRT) displays, liquid crystal displays (LCDs), plasma displays, light emitting diode (LED) displays, organic light emitting diode (OLED) displays, touch screen type displays, projector displays (e.g., images projected on a screen or surface, holographic images, etc.), field emission displays (FEDs), active matrix displays, vacuum fluorescent (VFR) displays, 3-dimensional (3-D) displays, electronic paper (e-ink) displays, microdisplays, or any combination of the above types of displays.
A computing device 3510 may further include one or more communications interfaces 3560. Communication interface(s) 3560 may allow content, software, data, messages, and/or other information to be transferred between server(s) 190, client device(s) 110, beacon(s) 120, and/or sensor(s) 130. Examples of communication interface(s) 3560 may include modems, network interface cards (e.g., an Ethernet card), communications ports, personal computer memory card international association (PCMCIA) slots and card, antennas, etc. Communication interface(s) 3560 may transfer software, content, data, messages, or other information in the form of signals, which may be electronic, electromagnetic, optical, and/or other types of signals. The signals may be provided to/from communications interface 3560 via a communication path (e.g., Bluetooth network, Wi-Fi network, network(s) 180), which may be implemented using wired, wireless, cable, fiber optic, radio frequency (RF), and/or other communication channels.
A computer system 3500 may continue additional or fewer components depending on whether the computer system is a client device 110, beacon 120, sensor 130, or server 190. For example, a client device 110 may also include one or more accelerometers or gyroscopes, which can be utilized for assisting with navigation and locating features of the present disclosure. A client device 110, beacon 120, and/or sensor 130 may also include a battery, such that these devices are capable of operating without having to be plugged into a wall outlet. A sensor 130 may include additional hardware components for sensing motion, temperature, humidity, lighting, or other environmental factors.
The subject matter disclosed herein can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structural means disclosed in this specification and structural equivalents thereof, or in combination of them. The subject matter described herein can be implemented as one or more computer program products, such as one or more computer programs tangibly embodied in an information carrier (e.g., in a machine readable storage device), or embodied in a propagated signal, for execution by, or to control the operation of, data processing apparatus (e.g., a programmable processor, a computer, or multiple computers). A computer program (also known as a program, software, software application, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file. A program can be stored in a portion of a file that holds other programs or data, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.
The processes and logic flows described in this specification, including the method steps of the subject matter described herein, can be performed by one or more programmable processors executing one or more computer programs to perform functions of the subject matter described herein by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus of the subject matter described herein can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
Processors suitable for the execution of computer programs include, by way of example, both general and special purpose microprocessors, and any one or more processor of any kind of digital computer. Generally, a processor will receive instructions and data from a read only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, certain computers might also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of nonvolatile memory, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and optical disks (e.g., CD and DVD disks). The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
To provide for interaction with a user, some subject matter described herein can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user, and a keyboard and a pointing device (e.g., a mouse, trackball, touchscreen), by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well. For example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the user can be received in any form, including acoustic, speech, or tactile input.
Some subject matter described herein can be implemented in a computing system that includes a back end component (e.g., a data server), a middleware component (e.g., an application server), or a front end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the subject matter described herein), or a combination of such back end, middleware, and front end components. The components of the system can be interconnected by any form of medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet.
It is to be understood that the disclosed subject matter is not limited in its application to the details of construction and to the arrangements of the components set forth in the foregoing description or illustrated in the drawings. The disclosed subject matter is capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein are for the purpose of description and should not be regarded as limiting.
As such, those skilled in the art will appreciate that the conception, upon which this disclosure is based, may readily be utilized as a basis for the designing of other structures, methods, and systems for carrying out the several purposes of the disclosed subject matter. It is important, therefore, that the claims be regarded as including such equivalent constructions insofar as they do not depart from the spirit and scope of the disclosed subject matter.
Although the disclosed subject matter has been described and illustrated in the foregoing exemplary embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the disclosed subject matter may be made without departing from the spirit and scope of the disclosed subject matter, which is limited only by the claims which follow.
This application claims priority to and the benefit of U.S. Provisional Application 62/736,872 titled “Systems and Methods for Providing Information about Building Resources,” filed on Sep. 26, 2018, the disclosure of which is incorporated herein by reference in its entirety. This application also claims priority to and the benefit of U.S. Provisional Application 62/754,442 titled “Systems and Methods for Managing Information about Building Resources,” filed on Nov. 1, 2018, the disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62754442 | Nov 2018 | US | |
62736872 | Sep 2018 | US |