I have not seen the implementation of a scheduler from an experience, mostly because the Timer Node does not accept payload values, so having a dynamic start time is not possible. I think this could be done with a third party service, but I have not done it myself. It would be quite simple in a workflow to limit an event to maximum once a day, the problem lies in scheduling the event after the user triggers it.
There is currently a feature request here for this functionality, be sure to vote for it!
I will check with our engineers for any unique solutions they may have and follow up with any additional information.