One of the key features of NetDaemon is the scheduling features.
Even if Observable has schedulers we recommend using the built-in ones. Then all errors is caught and logged. Also you have to take care of the scheduler life cycle your self.
There are several RunEvery implementations.
Run daily at specific time.
You have to use the hh:mm:ss format setting time of day
or maybe just on weekends?. The dayof week will be implemented in future versions but can be solved like this:
There are specific implementations of RunEvery... like the RunEveryMinute.
If you need to delay excecution a specific time this is the prefered way to do it rather than using await Task.Delay().
Cancel scheduled tasks
Every scheduled task return a
IDisposabe object. You can use that to cancel any running schedules