caspia.toolbox.integrations.eq3 package

Submodules

caspia.toolbox.integrations.eq3.cli module

caspia.toolbox.integrations.eq3.thermostat module

class caspia.toolbox.integrations.eq3.thermostat.EQ3Thermostat(name, mac_address, *, loop, storage, sync_interval=30)[source]

Bases: caspia.meadow.client.gateway.ServiceGatewayMixin, caspia.meadow.services.thermostat.ThermostatBase

Initialize new service.

Parameters
  • name – Name of the service (or just its path)

  • include – What optional characteristics to include. Tuple of their names.

property all_observables
attach(connection)
property attached
auto_discovery = True
characteristic_cached_read(characteristic)
characteristic_cached_write(characteristic, value_and_meta)
async characteristic_read(characteristic, **kwargs)[source]

Read value of the characteristic.

Parameters
  • characteristic – The characteristic to which the value should be written.

  • value – The value to be written.

  • kwargs – Dictionary with extra key (dictionary with metadata) and optionally a timeout (float specifing explicit timeout for the operation).

Returns

Tuple (value, extra).

characteristic_subscribe(characteristic, on_value, on_error=None)
async characteristic_write(characteristic, value, **kwargs)[source]

Write a value to the characteristic.

Parameters
  • characteristic – The characteristic to which the value should be written.

  • value – The value to be written.

  • kwargs – Dictionary with extra key (dictionary with metadata) and optionally a timeout (float specifing explicit timeout for the operation).

characteristics = {'$metadata': <Characteristic <class 'caspia.meadow.services.base.ServiceMeta'>:$metadata>, 'current_state': <Characteristic <class 'caspia.meadow.services.base.ServiceMeta'>:current_state>, 'current_temp': <Characteristic <class 'caspia.meadow.services.base.ServiceMeta'>:current_temp>, 'target_state': <Characteristic <class 'caspia.meadow.services.base.ServiceMeta'>:target_state>, 'target_temp': <Characteristic <class 'caspia.meadow.services.base.ServiceMeta'>:target_temp>}
current_state
current_temp
detach()
static get_subclass(stype, mixin=None)
load_definition(spec)

Update characteristics of this instance based on serialized specs.

Parameters

spec – Dict most likely going to be coming from meadow - from some gateway informing us about its services and their characteristics.

metadata
async notify(characteristic, value, if_changed=False, extra=None)
async notify_current_state()[source]
on(name, *args, **kwargs)
optional = {}
async published()
serialize()

Return serialized version (most likely dict) if possible or None.

async sync_periodically(interval)[source]
target_state
target_temp
target_temp_value
type = 'thermostat'
class caspia.toolbox.integrations.eq3.thermostat.Eq3State(target_temp, valve)

Bases: tuple

Create new instance of Eq3State(target_temp, valve)

count()

Return number of occurrences of value.

index()

Return first index of value.

Raises ValueError if the value is not present.

property target_temp

Alias for field number 0

property valve

Alias for field number 1

Module contents