Backend Troubleshooting
This page covers backend, API, and database issues. For general installation, sync, and data collection issues, see Troubleshooting. For custom app, TestFlight, and custom survey issues, see App Developer Troubleshooting.
Push notifications
-
Push notifications from OneSignal don't show up on my device.
- Ensure focus modes on the iPhone and Apple Watch are disabled during the installation of the Cozie app and testing of the push notifications.
- Check the correctness of the Player ID in the Cozie data tab.
- Check the correctness of the API key.
- Check the correctness of the information in the Advanced tab and in your Python notebook.
- If you have created your own Cozie app:
- Check the correctness of the Player ID on OneSignal.com.
- Make sure you created the .p12 certificate for the main identifier.
- Send a test push notification from the dashboard on OneSignal.com.
- Check the "Subscriptions" under the user profile in the OneSignal dashboard. If it is marked with "Never Subscribed", do the following:
- Check if push notifications are enabled on the iPhone for Cozie.
- Force close and open the Cozie app.
- Restart the iPhone.
- Re-install the Cozie app.
-
OneSignal shows "Prompted But Never Answered" for a participant.
In rare cases, when the Cozie iPhone app is launched for the first time, multiple iOS permission pop-ups may appear close together. The notification permission prompt may not be clearly answered, and OneSignal may show the subscription status as "Prompted But Never Answered".
- Check
Settings > Notifications > Cozieon the iPhone and allow notifications if they are disabled. - Force close and reopen the Cozie app.
- Send a test push notification from the OneSignal dashboard or from your Cloud Scheduler job.
- If the device still does not receive notifications, reinstall the Cozie app and complete the permission prompts again.
- Check
Missing data
-
I added a new data field to be stored in the InfluxDB. However, when I submit data, it is not stored
The first time data with a new field name is saved in the database, the database sets the data type, e.g., if you were to implement the extraction of stride length information, you could save it as
ts_stride_length. If you submit the value1.04, the value will be stored as a floating-point number (float). The stride length might vary. If you happen to submit the value1, the database will attempt to store it as an integer. It would then see that there is already a floating point number stored underts_stride_lengthand reject the new value ofts_stride_length, which is then lost.To avoid this issue, we force-cast the type for each field name in the backend. Let us know what type and field name you would like to add to Cozie, we can help you with this issue.