For signaling I decided to deme the NODEMCU monitoring the door as the main, and the receiving nodes the slave. The main node would then send an HTTP get request to the slave, triggering the slave to flash the light and sound the buzzer. The specific method I used for this is not ideal, as it uses no security measures. One need only visit the ip of the slave node in their web browser and the lights can be triggered, but for ease of testing this actually kind of works out well. I've posted the code and the wiring diagrams for each circuit below.
Main.ino uses a dynamic Wifi address. Upon successful Wifi connection it flashes the built in LED on the chip twice. The looped function for the microcontroller continuously monitors the Reed switch pin. When the door is opened, the pin reads HIGH at which point the microcontroller begins an HTTP connection with the static Wifi address I assigned to the two slave nodes. It then executes a get function, the result of which is unimportant. What is important is that the slave is aware of the http request and uses it as the flag to begin flashing/sounding.
To counter the problem of the slave node continuing to make noise while the door is held open, I created a boolean flag variable called "opened". This is false until the door is opened, at which point the http request is executed and the flag switched to true. Because the flag being false is a condition in the if statement for the http request, it prevents the request from being executed twice. Then once the door is closed, the first if statement is executed which changes the flag variable to false again.
This is a much simpler program that first connects to the Wifi network with a static ip. This is to avoid lag that I've experienced with NODEMCU's and mDNS. Even though mDNS would allow me to use an easy IP address like http://alarmsystem.local, I've found it adds ~0.5s or longer to the http request. It sets up a server with the function "handleRoot" that is excuted when an http request is made to http://192.168.1.100/. It's in this function that the response for the door opening takes place, which in this case is flashing the lights and chirping the buzzer by triggering the appropriate pins.