This is an unofficial project that is not affiliated with Alarm.com.
Forked from Daren Lord's pyalarmdotcom.
To install use pip:
pip install pyalarmdotcomajax
Or clone the repo:
git clone https://github.com/pyalarmdotcomajax/pyalarmdotcomajax.git
cd pyalarmdotcomajax
pip install .
Usage examples not yet posted for v0.6 beta.
Pyalarmdotcomajax supports core features (monitoring and using actions) of the device types listed below.
Device Type | Actions | Notes |
---|---|---|
Garage Door | open, close | |
Gate | open, close | |
Image Sensor | peek_in | |
Light | turn_on (with brightness), turn_off | No support for RGB/W, effects, temperature, etc. |
Locks | lock, unlock | |
Partition | clear faults, arm away, arm stay, arm night, disarm | |
Sensor | bypass/unbypass (via partition) | Contact sensors will not report the same state within a 3-minute window. This means that this library will only show one event if, say, a door has been opened and closed multiple times within 3 minutes. See (this post)[https://support.suretyhome.com/t/alarm-com-3-minute-deduplication-window/24637] for details. |
System | stop alarms, clear smoke sensor, clear alarms in memory | |
Thermostat | set attributes | |
Water Sensor | (none) | |
Water Valve | open, close |
Skybell HD configuration support not yet implemented in v0.6 beta.
The CLI is available by running adc
from anywhere in your terminal. Use adc --help
for more information.
Detailed helptext for the CLI is also available here.
This repository includes a full development environment for VS Code:
- VS Code dev container. Automatically installs extensions and Python dependencies and registers Git pre-commit scripts.
- Configuration files for type checking (mypy), linting & formatting (ruff), etc.
- Pre-commit checks run all of the above when committing to Git and on demand via VS Code tasks.
- Support additional components (light RGBW, irrigation, etc.).
- Support more sensor types (see list above in this README).
- Add
debug_info
property toADCController
that returns aggregate of raw JSON from all endpoints. This will allow users to export the entity model of unsupported devices to help maintainers implement support in this library.