Skip to content

Latest commit

 

History

History
71 lines (47 loc) · 2.37 KB

README.md

File metadata and controls

71 lines (47 loc) · 2.37 KB

Zm-py

image

Python package

image

license

A loose python wrapper around the ZoneMinder API. As time goes on additional functionality will be added to this API client.

Acknowledgments

Not to be confused with ZoneMinder's Pythonic wrapper pyzm, this zm-py project (with a hyphen) is tailored for the Home Assistant ZoneMinder Integration

zm-py is based on code that was originally part of Home Assistant. Historical sources and authorship information is available as part of the Home Assistant project:

Installation

PyPI

pip install zm-py

Usage

from zoneminder.zm import ZoneMinder

SERVER_HOST = "{{host}}:{{port}}"
USER = "{{user}}"
PASS = "{{pass}}"
SERVER_PATH = "{{path}}"

zm_client = ZoneMinder(
    server_host=SERVER_HOST,
    server_path=SERVER_PATH,
    username=USER,
    password=PASS,
    verify_ssl=False
)

# Zoneminder authentication
zm_client.login()


# Get all monitors
monitors = zm_client.get_monitors()

for monitor in monitors:
    print(monitor)

>>> Monitor(id='monitor_id', name='monitor_name', controllable='is_controllable')


# Move camera down
controllable_monitors = [m for m in monitors if m.controllable]

for monitor in controllable_monitors:
    zm_client.move_monitor(monitor, "right")