
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
node-alarm-dot-com
Advanced tools
An interface module written in node.js to arm and disarm Alarm.com security systems.
Unofficial interface module written in Node.js to access and operate Alarm.com security systems.
This interface works best with the fork: https://github.com/node-alarm-dot-com/homebridge-node-alarm-dot-com, based off of John Hurliman's FrontPoint* plugin for Homebridge↗. This variation adds changes the default login authentication for to Alarm.com. with a switch to use the FrontPoint login authentication process if desired.
*FrontPoint is simply a rebranded service provider for Alarm.com.
Originally intended for use with the fork: https://github.com/node-alarm-dot-com/homebridge-node-alarm-dot-com, originally created by Bryan Bartow for his Alarm.com plugin for Homebridge↗.
Install:
npm i node-alarm-dot-com
Querying:
const nodeADC = require('node-alarm-dot-com');
nodeADC
.login('your_username', 'your_password')
.then((authOpts) => nodeADC.getCurrentState(authOpts.systems[0], authOpts))
.then((res) => {
console.log('Security Systems:', res.partitions);
console.log('Sensors:', res.sensors);
})
.catch((err) => console.error(err));
Arming:
const nodeADC = require('node-alarm-dot-com');
nodeADC
.login('your_username', 'your_password')
.then((authOpts) => {
return nodeADC.getCurrentState(authOpts.systems[0], authOpts).then((res) => {
// This will take 20-30 seconds
nodeADC.armStay(res.partitions[0].id, authOpts).then((res) => {
console.log(res);
});
});
})
.catch((err) => console.error(err));
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Promise
Authenticate with alarm.com using the mobile webpage login form (loads faster than the desktop webpage login form). Returns an authentication object that can be passed to other methods.
Kind: inner method of module_nodeADC
Param | Type | Description |
---|---|---|
username | string | FrontPoint username. |
password | string | FrontPoint password. |
Promise
Retrieve information about the current state of a security system including attributes, partitions, sensors, and relationships.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
systemID | string | ID of the FrontPoint system to query. The Authentication object returned from the login method contains a systems property which is an array of system IDs. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Get information for a single security system partition.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
partitionID | string | Partition ID to retrieve |
authOpts | Object | Authentication object returned from the login method. |
Promise
Get information for one or more sensors.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
sensorIDs | string | Array.<string> | Array of sensor ID strings. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Get information for one or more lights.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lightIDs | string | Array.<string> | Array of light ID strings. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Sets a light to ON and adjusts brightness level (1-100) of dimmable lights.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lightID | string | Light ID string. |
brightness | number | An integer, 1-100, indicating brightness. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Sets a light to OFF. The brightness level is ignored.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lightID | string | Light ID string. |
brightness | number | |
authOpts | Object | Authentication object returned from the login method. |
Promise
Get information for one or more locks.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lockIDs | string | Array.<string> | Array of lock ID strings. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Sets a lock to "locked" (SECURED).
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lockID | string | Lock ID string. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Sets a lock to "unlocked" (UNSECURED).
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
lockID | string | Lock ID string. |
authOpts | Object | Authentication object returned from the login method. |
Promise
Update Thermostat State (see THERMOSTAT_STATES
)
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
thermostatID | string | Thermostat ID string. |
newState | THERMOSTAT_STATES | Desired state, THERMOSTAT_STATES.OFF /HEAT /COOL /AUTO |
authOpts | Object | Authentication object returned from the login method. |
Promise
Set desired Heat setpoint temperature for Thermostat
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
thermostatID | string | Thermostat ID string. |
newTemp | number | Desired temperature |
authOpts | Object | Authentication object returned from the login method. |
Promise
Set desired Cool setpoint temperature for Thermostat
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
thermostatID | string | Thermostat ID string. |
newTemp | number | Desired temperature |
authOpts | Object | Authentication object returned from the login method. |
Promise
Arm a security system panel in "stay" mode. NOTE: This call may take 20-30 seconds to complete.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
partitionID | string | Partition ID to arm. |
authOpts | Object | Authentication object returned from the login method. |
opts | Object | Optional arguments for arming the system. |
opts.noEntryDelay | boolean | Disable the 30-second entry delay. |
opts.silentArming | boolean | Disable audible beeps and double the exit delay. |
Promise
Arm a security system panel in "away" mode. NOTE: This call may take 20-30 seconds to complete.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
partitionID | string | Partition ID to arm. |
authOpts | Object | Authentication object returned from the login method. |
opts | Object | Optional arguments for arming the system. |
opts.noEntryDelay | boolean | Disable the 30-second entry delay. |
opts.silentArming | boolean | Disable audible beeps and double the exit delay. |
Promise
Disarm a security system panel.
Kind: inner method of nodeADC
Param | Type | Description |
---|---|---|
partitionID | string | Partition ID to disarm. |
authOpts | Object | Authentication object returned from the login method. |
In efforts to maintain this project as a native Alarm.com implementation, authentication and reference to FrontPoint have been removed altogether within the code as of versions 1.6.0. This allows for the codebase to be cleaner without having to solve everyone else's extraneous Alarm.com Verified-Partner setups, encouraging separate forks and augmentation for those unique scenarios.
FAQs
An interface module written in node.js to arm and disarm Alarm.com security systems.
We found that node-alarm-dot-com demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.