Skip to main content

A Python library for interacting with the Sector Alarm API.

Project description

SectorAlarm Library

A Python client library for interacting with Sector Alarm systems.

Overview

The sectoralarm library allows developers to interact with Sector Alarm systems programmatically. It provides methods to authenticate, retrieve system status, control locks, arm/disarm the alarm system, and access sensor data.

Features

  • Authentication: Securely log in to the Sector Alarm API.
  • System Status: Retrieve panel status and sensor data.
  • Control Actions: Arm/disarm the alarm system and lock/unlock doors.
  • Logs Access: Access system logs and events.
  • Cache Management: Efficiently cache data to minimize API calls.

Installation

You can install the library via pip:

pip install sectoralarm

Usage

Importing the Library

from sectoralarm import SectorAlarmAPI, AuthenticationError

Initializing the API Client

# Replace with your actual credentials
email = "your_email@example.com"
password = "your_password"
panel_id = "your_panel_id"
panel_code = "your_panel_code"

api = SectorAlarmAPI(email, password, panel_id, panel_code)

Logging In

try:
    api.login()
    print("Logged in successfully.")
except AuthenticationError as e:
    print(f"Authentication failed: {e}")

Retrieving Panel Status

status = api.retrieve_category_data("Panel Status")
print("Panel Status:")
print(status)

Arming the System

success = api.actions_manager.arm_system()
if success:
    print("System armed successfully.")
else:
    print("Failed to arm the system.")

Disarming the System

success = api.actions_manager.disarm_system()
if success:
    print("System disarmed successfully.")
else:
    print("Failed to disarm the system.")

Locking a Door

lock_serial = "your_lock_serial_number"
success = api.actions_manager.lock_door(lock_serial)
if success:
    print("Door locked successfully.")
else:
    print("Failed to lock the door.")

Unlocking a Door

lock_serial = "your_lock_serial_number"
success = api.actions_manager.unlock_door(lock_serial)
if success:
    print("Door unlocked successfully.")
else:
    print("Failed to unlock the door.")

API Reference

Please refer to the code documentation and docstrings within the library for more detailed information on available methods and their usage.

Dependencies

requests: Used for making HTTP requests to the Sector Alarm API. License This project is licensed under the MIT License - see the LICENSE file for details.

Disclaimer

This library is not affiliated with or endorsed by Sector Alarm. Use it responsibly and at your own risk.

Contributing

Contributions are welcome! Please submit a pull request or open an issue on GitHub.

Contact

For questions or suggestions, please contact Jonathan Petersson jpetersson@garnser.se.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sectoralarm-1.2.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

sectoralarm-1.2.0-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file sectoralarm-1.2.0.tar.gz.

File metadata

  • Download URL: sectoralarm-1.2.0.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.7

File hashes

Hashes for sectoralarm-1.2.0.tar.gz
Algorithm Hash digest
SHA256 c770c5c0a421dee829ced39e792633b8652feaba1272e34435597f13faeb0a05
MD5 00dc17c322c98caceaaa78ca530887a9
BLAKE2b-256 cfe29c1aa8e169feccf1b7c779d543eb7769f53dbc8356dedcb8c621bf8e22fc

See more details on using hashes here.

File details

Details for the file sectoralarm-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: sectoralarm-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.7

File hashes

Hashes for sectoralarm-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb4e72ee72e5534f66a1876565381cbdbeed4fcb188b5b57b84f85b1d8ad6fc3
MD5 a5bdc1c30fe2e459896ff5ecb6998943
BLAKE2b-256 ddd4ee51d469118c563cfcf9c99f9f2d4917edf051751aeedefe72b445a4e166

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page