orangeqs.juice.fridge._application#

Base application class for the OrangeQS Juice Fridge Service.

Module Contents#

Classes#

FridgeApplication

Base class for OrangeQS Juice Fridge applications.

Data#

API#

orangeqs.juice.fridge._application.logger#

‘getLogger(…)’

class orangeqs.juice.fridge._application.FridgeApplication(*, config: orangeqs.juice.fridge._base_config.FridgeBaseConfig, heaters: dict[str, orangeqs.juice.fridge.protocols.HeaterProtocol] | None = None, thermometry: orangeqs.juice.fridge.protocols.ThermometryProtocol | None = None, compressors: dict[str, orangeqs.juice.fridge.protocols.CompressorProtocol] | None = None, ghs: orangeqs.juice.fridge.protocols.GHSProtocol | None = None)#

Base class for OrangeQS Juice Fridge applications.

Subclass this and pass in device drivers conforming to the protocols defined in orangeqs.juice.fridge.protocols to get data-publishing and report-loop boilerplate for free.

async update() → None#

Update all device states and publish their datapoints.

async report_loop() → None#

Periodically call update every config.report_interval seconds.