-
Notifications
You must be signed in to change notification settings - Fork 35
How to Test & Debug
Below are instructions for performing various testing and debugging actions to help developers debug issues.
-
In Home Assistant, go to HACS and click on the Alarm.com integration. This will open up the description page for the Alarm.com integration.
-
Click on the three dots on the top right, then click on "Redownload".
-
From the "Select version" menu, select "master", then click download.
-
Restart Home Assistant.
-
In Home Assistant, go to Settings > Devices & Services > Devices. You'll see a list of all of your devices.
-
Click on the device for which you want to get debug information. That will take you to the device's information page.
-
Click on "PRESS" for the device's Debug entity:
-
Go to Settings > System > Logs and click on the debug log for your device:
-
Use the copy button in the log entry's modal to copy and paste the required information into your GitHub comment. Please don't post a screenshot!
- Adding the following to Home Assistant's
configuration.yaml
file:
logger:
default: warn
logs:
custom_components.alarmdotcom: debug
pyalarmdotcomajax: debug
- Restart Home Assistant
- Perform the Alarm.com action that needs debugging.
- Review the logs by going to Settings > System > Logs.
- Once on the logging page, click on the "Load Full Logs" button at the bottom of the page.
- Use
Ctrl+F
to use your browser's search function to find the relevant entries. - When done, turn off debugging mode by removing the lines you added to
configuration.yaml
and restarting Home Assistant.
WARNING: The adc
command line tool dumps information about your Alarm.com devices. This may leak sensitive information such as your location, your name, or names of your family members (i.e.: if your devices have names like "Noah's Bedroom Right Window"). When posting, be sure you manually remove any information that you don't want to share publicly.
- Install Python >= 3.10.
- Install pyalarmdotcomajax via pip:
pip install pyalarmdotcomajax
. (If you're being asked to install a specific version (e.g.:v0.5.0-beta
), use the formatpip install pyalarmdotcomajax==0.5.0-beta
.) - You can now use ADC in the command line. Below are useful commands:
Name | Command | Description |
---|---|---|
Basic | adc -u "YOUR_USERNAME" -p "YOUR_PASSWORD" get |
Shows human-readable device statuses. |
Raw JSON | adc -v -u "YOUR_USERNAME" -p "YOUR_PASSWORD" get |
Same as above, but returns the server's raw responses broken out by device type. |
Stream Live Events | adc -u "YOUR_USERNAME" -p "YOUR_PASSWORD" stream |
Stream alarm events as they happen. |
Code Flow Debugging | adc -d -u "YOUR_USERNAME" -p "YOUR_PASSWORD" get |
Shows debug message from pyalarmdotcomajax. Useful for determining where in the connection process a feature is breaking. |
Help - General | adc -h |
|
Help - get Command |
adc get -h |
The get command retrieve device states. |
Help - set Command |
adc set -h |
The set command changes device settings. It currently only works for Skybell HD doorbells. |
Turn off Skybell HD's indoor chime | adc -u "YOUR_USERNAME" -p "YOUR_PASSWORD" set -i 634798620-3745 -s indoor-chime-on -k False |
Assumes Skybell HD's Alarm.com ID is 634798620-3745 . See the pyalarmdotcomajax README for more set commands. |