|
|
@ -120,6 +120,8 @@ class InfluxOutputPlugin(OutputPluginFactory): |
|
|
|
data_stack.append(f'{measurement},type=pf value={data["powerfactor"]:f} {ctime}') |
|
|
|
data_stack.append(f'{measurement},type=frequency value={data["frequency"]:.3f} {ctime}') |
|
|
|
data_stack.append(f'{measurement},type=temperature value={data["temperature"]:.2f} {ctime}') |
|
|
|
if data['energy_total'] is not None: |
|
|
|
data_stack.append(f'{measurement},type=total value={data["energy_total"]/1000:.3f} {ctime}') |
|
|
|
|
|
|
|
self.api.write(self._bucket, self._org, data_stack) |
|
|
|
|
|
|
@ -201,6 +203,8 @@ class MqttOutputPlugin(OutputPluginFactory): |
|
|
|
self.client.publish(f'{topic}/pf', data['powerfactor']) |
|
|
|
self.client.publish(f'{topic}/frequency', data['frequency']) |
|
|
|
self.client.publish(f'{topic}/temperature', data['temperature']) |
|
|
|
if data['energy_total'] is not None: |
|
|
|
self.client.publish(f'{topic}/total', data['energy_total']/1000) |
|
|
|
|
|
|
|
try: |
|
|
|
import requests |
|
|
@ -256,6 +260,9 @@ class VzInverterOutput: |
|
|
|
self.try_publish(ts, f'frequency', data['frequency']) |
|
|
|
self.try_publish(ts, f'temperature', data['temperature']) |
|
|
|
|
|
|
|
if data['energy_total'] is not None: |
|
|
|
self.try_publish(ts, f'total', data['energy_total']) |
|
|
|
|
|
|
|
def try_publish(self, ts, ctype, value): |
|
|
|
if not ctype in self.channels: |
|
|
|
return |
|
|
|