This setup relies on having Zigbee switches, connected to zigbee2mqtt. systemd timers just publish messages to the MQTT broker and z2m acts on them.
Setup the systemd unit files, service and timers. Remember to daemon-reload
afterwards.
(The names are a leftover from my 433MHz RF switch)
# head -100 /etc/systemd/system/lightswitch*
==> /etc/systemd/system/lightswitch-off.timer <==
[Unit]