Greater Than
- class knx_plugin.trigger.GreaterThan(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)
A trigger triggered when
it has some ASAPs in common with the compared Description and
the knx_stack.datapointtypes.DPT int value contained in the compared Description received from bus is lesser than the knx_stack.datapointtypes.DPT int value contained into the trigger
Use it when the comparison result has to be immediate otherwise use
knx_plugin.trigger.mean.definition.GreaterThan()
DPT Value Temp
- class knx_plugin.trigger.dpt_value_temp.Hot(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)
>>> import io >>> import json >>> import knx_stack >>> import knx_plugin
>>> hot = knx_plugin.trigger.dpt_value_temp.Hot.make_from_yaml(addresses=[1234], value=35)
>>> address_table = knx_stack.AddressTable(knx_stack.Address(4098), [], 255) >>> association_table = knx_stack.AssociationTable(address_table, []) >>> groupobject_table = knx_stack.GroupObjectTable() >>> hot.associate(association_table, groupobject_table)
>>> bus_event = ''' ... {"name": "DPT_Value_Temp", ... "addresses": [1234], ... "fields": {"decoded_value": 36}} ... ''' >>> another_description = knx_plugin.Description(json.loads(bus_event)) >>> another_description.associate_with(association_table) >>> hot.is_triggered(another_description) True
- DPT = {'addresses': [], 'fields': {'decoded_value': 25.0}, 'name': 'DPT_Value_Temp', 'type': 'knx'}
- DEFAULT_EVENTS = [<Event.Hot: 'Hot'>]
DPT Value Wsp
- class knx_plugin.trigger.dpt_value_wsp.Strong(description: knx_plugin.message.Description, events: home.Event = None, value: int = None)
>>> import io >>> import json >>> import knx_stack >>> import knx_plugin
>>> strong = knx_plugin.trigger.dpt_value_wsp.Strong.make_from_yaml(addresses=[1234], value=8)
>>> address_table = knx_stack.AddressTable(knx_stack.Address(4098), [], 255) >>> association_table = knx_stack.AssociationTable(address_table, []) >>> groupobject_table = knx_stack.GroupObjectTable() >>> strong.associate(association_table, groupobject_table)
>>> bus_event = ''' ... {"name": "DPT_Value_Wsp", ... "addresses": [1234], ... "fields": {"decoded_value": 8.1}} ... ''' >>> another_description = knx_plugin.Description(json.loads(bus_event)) >>> another_description.associate_with(association_table) >>> strong.is_triggered(another_description) True
>>> bus_event = ''' ... {"name": "DPT_Value_Wsp", ... "addresses": [1234], ... "fields": {"decoded_value": 7.9}} ... ''' >>> another_description = knx_plugin.Description(json.loads(bus_event)) >>> another_description.associate_with(association_table) >>> strong.is_triggered(another_description) False
- DPT = {'addresses': [], 'fields': {'decoded_value': 4.0}, 'name': 'DPT_Value_Wsp', 'type': 'knx'}
- DEFAULT_EVENTS = [<Event.Strong: 'Strong'>]
DPT Value Power
- class knx_plugin.trigger.dpt_value_power.consumption.Overhead(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.Overhead.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": 8100}} ... ''' >>> 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': 8000}, 'name': 'DPT_Value_Power', 'type': 'knx'}
- DEFAULT_EVENTS = [<Event.High: 'High'>]
DPT Value Power
- class knx_plugin.trigger.dpt_value_power.production.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),] >>> producing = knx_plugin.trigger.dpt_value_power.production.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() >>> producing.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) >>> producing.is_triggered(another_description) True
- DPT = {'addresses': [], 'fields': {'decoded_value': 0}, 'name': 'DPT_Value_Power', 'type': 'knx'}
- DEFAULT_EVENTS = [<Event.No: 'No'>]