1. One or more non-transitory computer readable media storing instructions that, when executed by a processor, cause the processor to:
identify information associated with a user;
determine a location schedule for the user; and
move the information associated with the user from a first storage device to a second storage device, wherein the second storage device is identified in the location schedule and the first and second storage devices serve different geographical locations.
2. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
use the location schedule to anticipate a geographical location change of the user, wherein moving the information associated with the user occurs in response to anticipating the geographical location change.
3. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
identify a plurality of storage devices corresponding to a geographical location;
select the second storage device based on one or more of its proximity, cost, availability, and speed.
4. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
identify a plurality of storage devices corresponding to a geographical location;
provide, to the user, at least one of proximity information, cost information, availability information, and speed information associated with the plurality of storage devices;
receive, from the user, a selection of a storage device from the plurality of storage devices; and
store, in the location schedule, the selected storage device as the second storage device.
5. The one or more non-transitory computer readable media of claim 1, wherein determining the location schedule comprises:
receiving, from the user, location and time frame information for a geographical location;
associating action information with the location and time frame information, the action information identifying one or more of a storing action and a transfer action; and
storing, in the location schedule, the location, time frame, and action information.
6. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
determine that the second storage device is unavailable;
in response to determining that the second storage device is unavailable, move the information associated with the user to a temporary storage device;
periodically determine whether the second storage device is available; and
in response to determining that the second storage device is available, move the information associated with the user from the temporary storage device to the second storage device.
7. The one or more non-transitory computer readable media of claim 6, wherein the temporary storage device comprises at least one of a mobile device associated with the user and a stationary local device.
8. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
identify a time frame during which the user changes geographical locations,
wherein moving the information associated with the user from the first storage device to the second storage device comprises initiating movement during the identified time frame.
9. The one or more non-transitory computer readable media of claim 8, wherein the identified time frame is associated with a time frame during which the user travels from a first geographical location to a second geographical location.
10. The one or more non-transitory computer readable media of claim 1, storing additional instructions that, when executed by the processor, cause the processor to:
determine that a likelihood that the user will access the information associated with the user during a time frame is less than a predetermined likeliness threshold; and
in response to determining that the likelihood is less than a predetermined likeliness threshold, initiate, during the time frame, moving the information associated with the user from the first storage device to the second storage device.
11. An apparatus, comprising:
a processor; and
one or more non-transitory computer readable media storing instructions that, when executed by the processor, cause the processor to:
identify, for a user, a geographical location change from a first geographical location to a second geographical location; and
identify a routing path to route the user’s information from a first storage device associated with the first geographical location to a second storage device associated with the second geographical location.
12. The apparatus of claim 10, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
in response to identifying the geographical location change, transfer the user’s information using the identified routing path.
13. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
identify a plurality of storage devices that serve the second geographical location; and
select the second storage device based on one or more of the second storage device’s proximity, cost, availability, and speed.
14. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
determine that the second storage device is unavailable;
in response to determining that the second storage device is unavailable, transfer the user’s information to a temporary storage device;
periodically determine whether the second storage device is available; and
in response to determining that the second storage device is available, transfer the user’s information from the temporary local storage device to the second storage device.
15. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
identify a time frame during which the user is not located in the first geographical location or the second geographical location,
wherein transferring the user’s information using the identified routing path comprises initiating transfer during the identified time frame.
16. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
determine that a likelihood that the user will access the user’s information during a time frame is less than a predetermined likeliness threshold; and
in response to determining that the likelihood is less than a predetermined likeliness threshold, initiate, during the time frame, transferring the user’s information using the identified routing path.
17. The apparatus of claim 12, wherein identifying the routing path further comprises:
identifying a first potential routing path and a plurality of network nodes associated with the first potential routing path;
determining that the plurality of network nodes includes one or more network nodes to avoid; and
in response to determining that the plurality of network nodes includes one or more network nodes to avoid, assigning a second potential routing path as the routing path to use to transfer the user’s information, wherein the second routing path does not include the one or more network nodes to avoid.
18. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
identify a plurality of potential routing paths to use to transfer the user’s information;
provide, to the user, at least one of a cost information, speed information, and information identifying a number of nodes to avoid for at least one routing path of the plurality of potential routing paths;
receive, from the user, a selection of a preferred routing path from the plurality of routing paths; and
identify the selected routing path as the routing path to use to transfer the user’s information.
19. The apparatus of claim 12, wherein the one or more non-transitory computer readable media stores additional instructions that, when executed by the processor, cause the processor to:
identify a device associated with the user changing geographical locations; and
identify information incompatible with the device,
wherein the information transferred to the second storage device excludes information incompatible with the device.
20. The apparatus of claim 12, wherein transferring the user’s information further comprises:
identifying additional information associated with the user’s information, the additional information previously being accessed by the user within a predetermined time period from accessing the user’s information;
in response to identifying the additional information, transferring the additional information from the first storage device to the second storage device with the user’s information.
21. The apparatus of claim 12, wherein the routing path includes a plurality of network nodes and communication lines, the first storage device comprises a first cache storage, and the second storage device comprises a second cache storage.
22. A method, comprising:
identifying information corresponding to a user;
accessing a location schedule for the user, wherein the location schedule comprises information identifying:
a first geographical location, a first time frame associated with the first geographical location, and a storage action associated with the first geographical location, wherein the storage action identifies a first cache storage;
a user transition, a second time frame associated with the user transition, and a transfer action associated with the user transition, wherein the transfer action identifies transfer of the user’s information to the first cache storage;
determining whether the first cache storage is available;
moving the information corresponding to the user to the first cache storage during the second time frame if the first cache storage is available; and
moving the information corresponding to the user to a temporary cache storage different from the first cache storage during the second time frame if the first cache storage is unavailable.
23. The method of claim 22, further comprising:
using the location schedule to anticipate a geographical location change of the user, wherein moving the information corresponding to the user to the first cache storage or the temporary cache storage occurs in response to anticipating the geographical location change.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A building security system comprising:
means for detecting human motion;
an imaging device configured to scan for a visible code in response to the detection of human motion by the detecting means; and
a security device configured to:
decipher the scanned code;
determine an authorization level associated with the deciphered code; and
provide the human with a level of access to the building commensurate with the authorization level.
2. The system of claim 1 wherein the detecting means comprises an infrared motion detector.
3. The system of claim 1 wherein the imaging device comprises a camera configured to scan for the visible code in each of two perpendicular directions.
4. The system of claim 1 wherein the imaging device configured to scan for a visible code in response to the detection of human motion in a space within six feet of the imaging device.
5. The system of claim 1 wherein the visible code comprises a QR code.
6. The system of claim 1, wherein a response of the security device to a security sensor signal is dependent upon the determined authorization level.
7. The system of claim 1 wherein the security device is configured to:
wirelessly transmit a code to a personal electronic device of the human; and
provide the human with access to the building only if the deciphered scanned code corresponds to the wirelessly transmitted code.
8. A method of operating a building security system, comprising the steps of
detecting human motion near an imaging device of the security system;
in response to the detecting step, using an imaging device to scan for a visible code displayed in front of the imaging device;
deciphering the scanned code;
determining an authorization level associated with the deciphered code; and
providing the human with a level of access to the building commensurate with the authorization level.
9. The method of claim 8 wherein the detecting step is performed by an infrared motion detector.
10. The method of claim 8 wherein the imaging device comprises a camera, the using step comprising using the camera to scan for the visible code in each of two perpendicular directions.
11. The method of claim 8 wherein the using step comprises using the imaging device to scan for a visible code in response to the detecting of human motion in a space within six feet of the imaging device.
12. The method of claim 8 wherein the visible code comprises a QR code.
13. The method of claim 8, comprising the further step of using the security device to respond to a security sensor signal dependent upon the determined authorization level.
14. The method of claim 8 comprising the further steps of:
using the security device to wirelessly transmit a code to a personal electronic device of the human; and
using the security device to provide the human with access to the building only if the deciphered scanned code corresponds to the wirelessly transmitted code.
15. A building security system comprising:
a motion detector;
an imaging device configured to scan a two-dimensional visible code in each of two different directions in response to the detection of motion by the motion detector; and
a security device configured to:
decipher the scanned code;
determine an authorization level associated with the deciphered code; and
provide a human with a level of access to the building, the level of access being dependent upon the authorization level.
16. The system of claim 15 wherein the imaging device comprises a camera configured to scan for the visible code in each of two perpendicular directions.
17. The system of claim 15 wherein the imaging device configured to scan for a visible code in response to the detection of human motion in a space within six feet of the imaging device.
18. The system of claim 15 wherein the visible code comprises a QR code.
19. The system of claim 15, wherein a response of the security device to a security sensor signal is dependent upon the determined authorization level.
20. The system of claim 15 wherein the security device is configured to:
wirelessly transmit a code to a personal electronic device of the human; and
provide the human with access to the building only if the deciphered scanned code corresponds to the wirelessly transmitted code.