|
|
@@ -37,6 +37,20 @@ def on_publish(client, userdata, mid):
|
|
|
#print('Data successfully published.')
|
|
|
pass
|
|
|
|
|
|
+def flores_to_openhab_items(flores):
|
|
|
+ items = list()
|
|
|
+ items.append('// Generated by miflora-mqtt-daemon. Adapt to your needs!\n\n// Mi Flora specific groups')
|
|
|
+ for param in parameters:
|
|
|
+ items.append('Group g{} "Mi Flora{} elements" (gAll)'.format(param.capitalize(), param.capitalize()))
|
|
|
+ for [flora_name, flora] in flores.items():
|
|
|
+ items.append('\n// Mi Flora "{}" ({})'.format(flora['pretty'], flora['mac']))
|
|
|
+ for param in parameters:
|
|
|
+ basic = 'Number {}_{}'.format(flora['location'], flora_name.capitalize())
|
|
|
+ parameter = '"{} {} {} [%.0f]" <text> (g{}, g{})'.format(flora['location'], flora['pretty'], param.capitalize(), flora['location'], param.capitalize())
|
|
|
+ channel = '{{mqtt="<[broker:{}/{}:state:JSONPATH($.{})]"}}'.format(base_topic, flora_name, param)
|
|
|
+ items.append(' '.join([basic, parameter, channel]))
|
|
|
+ print('\n'.join(items))
|
|
|
+
|
|
|
# Load configuration file
|
|
|
config = ConfigParser(delimiters=('=', ))
|
|
|
config.optionxform = str
|