Smarter Old Doorbell

Inspired by some stuff online, I decided to make my own smart-ish doorbell.  You can buy these for a few grand, but I paid about R200 for a normal wirelss doorbell.   Got home and started to "Frankenstein" the product.

I opened up the plastic housing, and using a dremel tool, I cut away the  plastic moulded part that holds the AA batteries, as this area would be the new home of a NodeMCU micro controller.  I ordered a pack of transistors online I used the 2N2222A transistors.  This little thing allows me to control the functions of the bell effectively replacing the switch on the back which has 3 modes, LED - LED+SOUND - SOUND ONLY.
Now using the transistor, I can switch between two of these states using the micro controller.  Of course using MQTT again, so now I can Silence or Chime the bell from my phone.  
All that is left to do now is to connect one GPIO pin from my NodeMCU to the LED pin on the doorbell's circuit board.  I will read that state of the LED from my firmware, telling me if the bell button was pressed or not.  Also connected power and ground to the circuit board, allowing me to power the doorbell now with USB power.  I made sure to buy a doorbell that is powered by 2 AA batteries, 1.5v each.  The reason for this is because the NodeMCU can provide 3v of power to external devices.  So my Micro Controller boards power, also powers the doorbell now.

But wait there is more.  When the doorbell is pressed, I now get a push notification to my phone, alerting that someone is at the door. - Future expansion to this project is underway - adding a DHT22 sensor to the doorbell, to provide real time Temperature and Humidity reading of the Kitchen (Cause that is where the the device is mounted)

To enhance this even more, as soon as I have installed the IP Camera on the front door, I will tap into the RTSP stream, grab a snap shot of who rang the bell, and in the push notification to my phone, get snapshot of who is at the door. - Cool ??? Well I think so.