The following How To in the community – created wiki will walk you through how to create the simulated switch and use power allowance as a timer. So that’s the one you would set to run for one minute
Then you need to create a second one which turns itself off after 20 minutes.
Then daisychain them so when the 20 minute one turns off the one minute one turns on and vice versa.
Now start the 20 minute one manually.
The 20 minute switch will run for 20 minutes, then turn itself off.
When the 20 minute one turns off, that triggers the one minute switch to turn on. It runs for one minute, then turns itself off.
When the one minute switch turns itself off, the 20 minute Switch will then turn on.
What you need for the daisychain
2 switches, each using The power allowance feature, but for different periods of time.
Four smart lighting rules:
Power allowance rule for switch A
Power allowance rule for switch B
Turn switch A on when switch B turns off.
Turn switch B on when switch A turns off
Note that once you start this, the daisychain will run forever, you will have to actually change one of the rules to get it to stop.
Otherwise, I’m sure @RobinWinbourne could design a webcore piston for you that would do all of the above plus provide for some kind of emergency override option.
While the daisychain method is easier to set up, long-term the webcore merhod is probably easier to maintain because you’ll be able to see all of the logic in one place. But it’s up to you.