Using a NodeMCU and RXB6 to Publish Doorbell Presses to MQTT
I have a Eufy Video doorbell that does a great* job with push notifications, 2K video streaming, and providing basic doorbell functionality; all without a monthy subscription. It comes with a basic 433MHz chime that you can pair and put anywhere in your house. This doesn't really work well with a two story house... it is no where near loud enough to hear it upstairs.
* Despite notifying me that the tree in my front yard is a person when it is windy enough.