Output
Output
Output(panel: DMPPanel, number: int, name: str = '', state: str = 'unknown')
Represents a DMP output.
Initialize output.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
panel
|
DMPPanel
|
Parent panel instance |
required |
number
|
int
|
Output number (1-4) |
required |
name
|
str
|
Output name |
''
|
state
|
str
|
Current output 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_on
property
is_on: bool
Check if output is on.
is_off
property
is_off: bool
Check if output is off.
formatted_number
property
formatted_number: str
Get zero-padded 3-digit output number.
update_state
update_state(state: str, name: str | None = None) -> None
Update output state.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state
|
str
|
New state |
required |
name
|
str | None
|
Updated name (optional) |
None
|
set_mode
async
set_mode(mode: str) -> None
Set output mode.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mode
|
str
|
Output mode ('O'=Off, 'P'=Pulse, 'S'=Steady, 'M'=Momentary) |
required |
Raises:
| Type | Description |
|---|---|
DMPOutputError
|
If command fails |
turn_on
async
turn_on() -> None
Turn output on (steady mode).
Raises:
| Type | Description |
|---|---|
DMPOutputError
|
If command fails |
turn_off
async
turn_off() -> None
Turn output off.
Raises:
| Type | Description |
|---|---|
DMPOutputError
|
If command fails |
pulse
async
pulse() -> None
Pulse output (momentary activation).
Raises:
| Type | Description |
|---|---|
DMPOutputError
|
If command fails |
toggle
async
toggle() -> None
Toggle output state.
Raises:
| Type | Description |
|---|---|
DMPOutputError
|
If command fails |
to_dict
to_dict() -> dict
Return a JSON-serializable representation of the output.
OutputSync
OutputSync(output: Output, panel_sync: DMPPanelSync)
Synchronous wrapper for Output.
Initialize sync output.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
output
|
Output
|
Async Output instance |
required |
panel_sync
|
DMPPanelSync
|
Sync panel instance |
required |
number
property
number: int
Get output number.
name
property
name: str
Get output name.
state
property
state: str
Get current state.
is_on
property
is_on: bool
Check if output is on.
is_off
property
is_off: bool
Check if output is off.
turn_on_sync
turn_on_sync() -> None
Turn output on (sync).
turn_off_sync
turn_off_sync() -> None
Turn output off (sync).
pulse_sync
pulse_sync() -> None
Pulse output (sync).
toggle_sync
toggle_sync() -> None
Toggle output (sync).