Issue fixes thanks to @flotpg. Before hoursToCollect would not work for intervals longer than 24 hours, because that is the maximum time span the Office APIs allow. Now the program automatically splits >24 time spans into separate 24 hour slices and collects them all. So it is now possible to collect up to 168 hours (hard limit on Office API). Collecting more will log a warning and default back to 168.
Self scheduling is now optionally available and off by default. See the schedule.yaml config example for details. By setting a schedule the program will never terminate but simply run, sleep, and run again after the interval defined in the schedule. This would allow running e.g. every hour without using CRON or task scheduler. This makes it more container friendly.