Hello
I built my doorbells from scratch using gibato universalsensor z wave, I prefer keeping my lan and wifi as decluttered as possible.
I used a nice button free choice and a powersupply, I also spiced it upp with a 12 volt car relay so my lkght in the button is on until yoi push it. Thanks to the relay solution I’m able to have a 12 volt buzzer connected as failover.
Audioplayback is done in two ways speakers connected to rpi running oh 3 and a speakergroup of google nest minis, the respond quite slow so som visitors think we wouldn’t be home but local connected speakers reacts fast. 2 doors and differnet audio on each of them.
I send notification to smartphones and tv set top box. I guess sky is the limit.
For not having door sound pmaying along time if someone rapidly pushes button several times I use a timestamp that needs to bee 30seconds old for audio to start playing.
I have one dnd switch that just send notifications usefull for late moornings.