How can I subscribe to milestone alarms from a non .NET environment. I see there is WebSocket support for events, but can't find something similar for Alarms. We need to listen to alarms as soon as they fire.

There is no Web Socket implementation for Alarms.

You might be able to Alarm Sessions in the Rest API to create something.

https://doc.developer.milestonesys.com/mipvmsapi/api/alarms-rest/v1/#tag/AlarmSessions