Data collection module 810 can be implemented using a data-collection daemon, which for example can collect: accelerometer data, gyroscope data, magnetometer data, GPS data, Bluetooth network data, Wi-Fi network data, keystroke data, light sensor data, sound sensor data, NFC data, humidity data or any other kind of sensor data. The collected sensor data is temporarily stored in data buffer 811, from which it is uploaded onto a remote database 812 or datastore for further processing. Data buffer 811 can be implemented using a two-level cache, wherein the first level is stored in volatile memory, and the second level can be stored in persistent storage, if it is available. After buffering, the data is uploaded to remote database 812, which holds the sensor data for subsequent processing.
Data Collection Based on a Beacon Signal
Some embodiments make use of use a multi-device approach, which allows us to use an electronic device, such as a personal computer, mobile device, laptop, console or any other personal Internet-connected, wireless-enabled device, as a beacon. We refer to such as device as a “beacon device” 813 as is illustrated in