Lesser Than

class knx_plugin.trigger.LesserThan(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)

A trigger triggered when

  1. it has some ASAPs in common with the compared Description and

  2. the knx_stack.datapointtypes.DPT int value contained in the compared Description received from bus is greater than the knx_stack.datapointtypes.DPT int value contained into the trigger

DPT Value Temp

class knx_plugin.trigger.dpt_value_temp.Cold(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)
>>> import io
>>> import json
>>> import knx_stack
>>> import knx_plugin
>>> cold = knx_plugin.trigger.dpt_value_temp.Cold.make_from_yaml(addresses=[1234])
>>> address_table = knx_stack.AddressTable(knx_stack.Address(4098), [], 255)
>>> association_table = knx_stack.AssociationTable(address_table, [])
>>> groupobject_table = knx_stack.GroupObjectTable()
>>> cold.associate(association_table, groupobject_table)
>>> bus_event = '''
...        {"name": "DPT_Value_Temp",
...         "addresses": [1234],
...         "fields": {"decoded_value": 2.5}}
... '''
>>> another_description = knx_plugin.Description(json.loads(bus_event))
>>> another_description.associate_with(association_table)
>>> cold.is_triggered(another_description)
True
DPT = {'addresses': [], 'fields': {'decoded_value': 5.0}, 'name': 'DPT_Value_Temp', 'type': 'knx'}
DEFAULT_EVENTS = [<Event.Cold: 'Cold'>]

DPT Value Power

class knx_plugin.trigger.dpt_value_power.consumption.No(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)
>>> import io
>>> import json
>>> import knx_stack
>>> import knx_plugin
>>> addresses = [knx_stack.GroupAddress(free_style=1234),]
>>> consuming = knx_plugin.trigger.dpt_value_power.consumption.No.make(addresses=addresses)
>>> address_table = knx_stack.layer.AddressTable(knx_stack.Address(4098), [], 255)
>>> association_table = knx_stack.layer.AssociationTable(address_table, [])
>>> groupobject_table = knx_stack.GroupObjectTable()
>>> consuming.associate(association_table, groupobject_table)
>>> bus_event = '''
...        {"name": "DPT_Value_Power",
...         "addresses": [1234],
...         "fields": {"decoded_value": -600}}
... '''
>>> another_description = knx_plugin.Description(json.loads(bus_event))
>>> another_description.associate_with(association_table)
>>> consuming.is_triggered(another_description)
True
DPT = {'addresses': [], 'fields': {'decoded_value': 0}, 'name': 'DPT_Value_Power', 'type': 'knx'}
DEFAULT_EVENTS = [<Event.No: 'No'>]