Specify time zone when downloading submissions using ruODK

Hello,
I have data submitted in different countries (with different time zones). When I download the data using ruODK, the time of submissions is modified to my time zone (CET). I have checked ruODK time specs.
In there, is written:

Global default time zone. ruODK's time zone is determined in order of precedence:

Function parameter: e.g. odata_submission_get(tz = "Australia/Perth")

ruODK setting: ru_setup(tz = "Australia/Perth")

Environment variable RU_TIMEZONE (e.g. set in .Renviron)

UTC (GMT+00)

But is not clear to me how to modify. For example, when using odata_submission_get, tz can be Tegucigalpa? or how can I assign for example that I want to download the submissions in UTC-6? and Finally is possible to especify that the time zone of submissions be kept the same as the one used in submission?
Thank you for your help!!

Hi @Inti_Luna,
Thanks for using ruODK!

ODK Collect and Central store all datetimes as UTC.
ruODK::odata_submission_get(parse=T) will run lubridate::with_tz(tz=ru_timezone()) to display the UTC PosixCT timestamps in your specified timezone.

The docs you quoted show the three ways to specify your local timezone, in your example that's "america/tegucigalpa".

When exporting from R, e.g. to CSV, you need to cast datetimes to a character in order to preserve the local timezone. Exporting plain PosixCT from R will default to UTC.

2 Likes

Hello Florian,
Thank you very much for the detailed explanation! It is clear now for me how to proceed.
Kind regards and thanks for ruODK!

2 Likes