Zone
Zone
Zone(panel: DMPPanel, number: int, name: str = '', state: str = 'unknown')
Represents a DMP zone.
Initialize zone.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
panel
|
DMPPanel
|
Parent panel instance |
required |
number
|
int
|
Zone number (1-999) |
required |
name
|
str
|
Zone name |
''
|
state
|
str
|
Current zone state |
'unknown'
|
panel
instance-attribute
panel = panel
number
instance-attribute
number = number
name
instance-attribute
name = name
state
property
state: str
Get current state.
is_open
property
is_open: bool
Check if zone is open/tripped.
is_normal
property
is_normal: bool
Check if zone is normal (closed).
is_bypassed
property
is_bypassed: bool
Check if zone is bypassed.
has_fault
property
has_fault: bool
Check if zone has a fault.
formatted_number
property
formatted_number: str
Get zero-padded 3-digit zone number.
update_state
update_state(state: str, name: str | None = None) -> None
Update zone state from status response.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state
|
str
|
New state |
required |
name
|
str | None
|
Updated name (optional) |
None
|
bypass
async
bypass() -> None
Bypass this zone.
Raises:
| Type | Description |
|---|---|
DMPZoneError
|
If bypass fails |
restore
async
restore() -> None
Restore (un-bypass) this zone.
Raises:
| Type | Description |
|---|---|
DMPZoneError
|
If restore fails |
get_state
async
get_state() -> str
Get current state from panel.
Returns:
| Type | Description |
|---|---|
str
|
Current zone state |
to_dict
to_dict() -> dict
Return a JSON-serializable representation of the zone.
ZoneSync
ZoneSync(zone: Zone, panel_sync: DMPPanelSync)
Synchronous wrapper for Zone.
Initialize sync zone.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
zone
|
Zone
|
Async Zone instance |
required |
panel_sync
|
DMPPanelSync
|
Sync panel instance |
required |
number
property
number: int
Get zone number.
name
property
name: str
Get zone name.
state
property
state: str
Get current state.
is_open
property
is_open: bool
Check if zone is open.
is_normal
property
is_normal: bool
Check if zone is normal.
is_bypassed
property
is_bypassed: bool
Check if zone is bypassed.
has_fault
property
has_fault: bool
Check if zone has fault.
formatted_number
property
formatted_number: str
Get formatted number.
bypass_sync
bypass_sync() -> None
Bypass zone (sync).
restore_sync
restore_sync() -> None
Restore zone (sync).
get_state_sync
get_state_sync() -> str
Get current state from panel (sync).