Welcome to DataSentry README page!👋 This page introduces how to install DataSentry and how to import data in DataSentry. Please carefully read this page before using the system.
- DataSentry is a data management system supporting missing data detection, diagnosis, and addressing from many people and many sensors.
- By importing data on the system, DataSentry provides multifaceted visualization of diverse sensor streams collected from smartphones.
- To install the DataSentry in local, please do the following:
- Download whole project (In current state, because the codes are shared with anonymous github, you cannot use
git clone
) - Open terminal, move to DataSentry directory, type
cd DataSentry
- Install the system, by typing
npm install
- Start the system, by typing
npm run start
- Download whole project (In current state, because the codes are shared with anonymous github, you cannot use
- If you successfully install the system or visit the website, you can first meet the 'Data import' page. Please refer to the following before importing data.
- Import CSV files downloaded from your database.
- Each file should contain one type of sensor data. Set a filename as each sensor name (ex. For battery data, set file name as BATTERY.csv)
- For visualization, each file needs to contain the following column (all files share the same column names)
- Timestamp column (13-digit)
- Participant ID column
- Sensor type column (optional)
- For example, a BATTERY.csv file looks like this:
- Input the name of timestamp, subject ID, and sensor type columns. Depending on the data collection framework, these column names can be different.
- If your files do not have a ‘sensor type’ column, DataSentry will detect the file names as sensor type. In that case, don't change the 'Sensor Type' field.
- If you click the ‘Upload files’ button, you can import files on your local computer.
- If you import the files, you can check that a row is added in the below.
- You can set the category of the sensor data, among emotion, connectivity, smartphone usage, social interaction, and physical activity.
- For sensor types with predefined item count per day, you can input the threshold in the ‘Row Count per Day’ input field. (this threshold will be marked in visualization). For example, if your data collection campaign needs to collect self-report surveys at least ten times a day for each participant, input 10 to the field.
- If you click the arrow on the right side, you can expand the section and check columns inside a file. Leave only the columns you want to examine through visualization and remove others using the ‘Del’ button. If there are too many columns specified, the system will become slow for data processing.
- If you finish the whole steps, clicking the ‘Overview’ button (at the top right side) navigates to visualization. It will take some time to process data.
- In 'manual contact' and 'predefined contact', you can send emails to participants. If you click 'setting' icon on the right part of popup, screen, you can see the area like below:
- This area is to configure sender information for email. You need to input your email address, service id, template id, and public key, which need to be set in the EmailJS website.
- Sign in to the EmailJS website (https://dashboard.emailjs.com/sign-in) and create your account.
- Go to the 'Email Service' tab, add a new service, and click Gmail. Connect your account, copy the 'Service ID', and paste it on the popup screen.
- Go to the 'Email Template' tab and create a new template. In the 'To Email' area, please set the value as
{{to_email}}
and click the 'save' button. Copy the 'Template ID' and paste it on the popup screen. - Go the the `Account' tab, copy the 'Publick Key', and paste it on the popup screen.
- For the email address, just write the email address when you used to sign up for the EmailJS website.
- Depending on your data collection framework, the format of data can be diverse. To be interoperable with diverse formats, DataSentry deal with the following cases:
- If your files do not have a ‘sensor type’ column, DataSentry will detect the file names as sensor type, so in that case, you don’t need to fill the ‘sensor type’ input field in Step 1 or manually add the ‘sensor type’ column in your raw data.
- Sometimes, CSV files downloaded from a database (such as data collected from AWARE framework), can include columns with object strings (e.g., {‘field1’: value1, ‘field2’: value2, …}). DataSentry will detect those columns and divide them into separate columns.