pyg90alarm.local.base_cmd
Provides support for basic commands of G90 alarm panel.
Classes
|
Class for handling base G90 panel commands. |
|
Base class for command handling for alarm panel protocol. |
- class pyg90alarm.local.base_cmd.G90Command(host, port, code, data=None, local_port=None, timeout=30.0, retries=3)
Bases:
DatagramProtocol,Generic[CommandT,CommandDataT]Base class for command handling for alarm panel protocol.
- from_wire(data)
Deserializes the command from wire format.
- property result: CommandDataT
The result of the command.
- async process()
Processes the command.
- Return type:
Self
- pause_writing()
Called when the transport’s buffer goes over the high-water mark.
Pause and resume calls are paired – pause_writing() is called once when the buffer goes strictly over the high-water mark (even if subsequent writes increases the buffer size even more), and eventually resume_writing() is called once when the buffer size reaches the low-water mark.
Note that if the buffer size equals the high-water mark, pause_writing() is not called – it must go strictly over. Conversely, resume_writing() is called when the buffer size is equal or lower than the low-water mark. These end conditions are important to ensure that things go as expected when either mark is zero.
NOTE: This is the only Protocol callback that is not called through EventLoop.call_soon() – if it were, it would have no effect when it’s most needed (when the app keeps writing without yielding until pause_writing() is called).
- resume_writing()
Called when the transport’s buffer drains below the low-water mark.
See pause_writing() for details.
- class pyg90alarm.local.base_cmd.G90BaseCommand(*args, **kwargs)
Bases:
G90Command[G90Commands,List[Any]]Class for handling base G90 panel commands.
- pause_writing()
Called when the transport’s buffer goes over the high-water mark.
Pause and resume calls are paired – pause_writing() is called once when the buffer goes strictly over the high-water mark (even if subsequent writes increases the buffer size even more), and eventually resume_writing() is called once when the buffer size reaches the low-water mark.
Note that if the buffer size equals the high-water mark, pause_writing() is not called – it must go strictly over. Conversely, resume_writing() is called when the buffer size is equal or lower than the low-water mark. These end conditions are important to ensure that things go as expected when either mark is zero.
NOTE: This is the only Protocol callback that is not called through EventLoop.call_soon() – if it were, it would have no effect when it’s most needed (when the app keeps writing without yielding until pause_writing() is called).
- async process()
Processes the command.
- Return type:
Self
- resume_writing()
Called when the transport’s buffer drains below the low-water mark.
See pause_writing() for details.