The Elk M1 alarm is a very capable alarm system that provides TCP network access via the optional ethernet interface.
Elk fortunately documented the command set in their RS-232 Interface Specification ref. ELK-M1_RS232_PROTOCOL
Some excellent Interfaces have been built using node.js ref. https://github.com/kevinohara80/elkington and Perl ref. https://sourceforge.net/projects/elkm1control/ but are missing key components and are not designed to work with node-RED or MQTT.
The example flow shows how to monitor alarm messages, issue speech commands and other general commands. A continuous speech routine is also included.
To use, alter the TCP nodes to point to the IP address of your alarm.
Note: The nodes have been configured for use on the internal network using the default non-secure port 2101.
Flow Link
http://flows.nodered.org/flow/3f489862e075e228cba96d00d2fb931f