Compare commits

..

No commits in common. "743fd8af03ad9b523c5551e519bda33eb8216ebb" and "3791223643d73764681d2c3ebadb6efa68ce9b6e" have entirely different histories.

7 changed files with 24 additions and 51 deletions

View file

@ -1,5 +1,5 @@
--- ---
- hosts: bank-pi.bitlair.nl - hosts: bar
vars: vars:
raspi_rotate_display: "2" raspi_rotate_display: "2"
roles: roles:

View file

@ -1,12 +0,0 @@
---
- name: Install dependencies
apt:
name: [ links, python3-pyquery ]
state: present
- name: Clone revbank-inflatinator source
git:
repo: https://github.com/bitlair/revbank-inflatinator.git
version: main
dest: /opt/revbank-inflatinator
accept_hostkey: yes

View file

@ -4,6 +4,3 @@
- tags: [ bank, bank_revbank ] - tags: [ bank, bank_revbank ]
import_tasks: revbank.yaml import_tasks: revbank.yaml
- tags: [ bank, bank_inflatinator ]
import_tasks: inflatinator.yaml

View file

@ -1,12 +1,7 @@
---
- name: Install dependencies
apt:
name: [python3-paho-mqtt, python3-requests]
- name: Install power-mqtt - name: Install power-mqtt
template: template:
src: power-mqtt.py src: power-mqtt.sh
dest: /var/lib/power-mqtt.py dest: /var/lib/power-mqtt.sh
owner: root owner: root
group: root group: root
mode: 0755 mode: 0755

View file

@ -1,27 +0,0 @@
#!/usr/bin/env python3
import paho.mqtt.client as mqtt
import paho.mqtt.subscribe as subscribe
from time import sleep
import requests
sdm630_host = '100.64.0.187'
mqtt_host = '{{ mqtt_internal_host }}'
client = mqtt.Client()
client.connect(mqtt_host, 1883, 60)
while True:
sleep(1)
try:
data = requests.get(f'http://{sdm630_host}/api/v1/data').json()
client.publish('bitlair/power/total_kwh', data['total_power_import_kwh'])
client.publish('bitlair/power/All/all_now', data['active_power_w'])
client.publish('bitlair/power/L1/all_now', data['active_power_l1_w'])
client.publish('bitlair/power/L2/all_now', data['active_power_l2_w'])
client.publish('bitlair/power/L3/all_now', data['active_power_l3_w'])
except Exception as err:
print(err)
continue

View file

@ -6,10 +6,11 @@ After=network.target
[Service] [Service]
Type=simple Type=simple
ExecStart=/var/lib/power-mqtt.py ExecStart=/bin/bash /var/lib/power-mqtt.sh
Restart=on-failure Restart=on-failure
RestartSec=10s RestartSec=10s
DynamicUser=true DynamicUser=true
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target

View file

@ -0,0 +1,19 @@
#!/bin/bash
# Managed by Ansible
set -euo pipefail
h="{{ mqtt_internal_host }}"
while true; do
j=$(curl -s http://100.64.0.187/api/v1/data)
mqtt-simple -h $h -p bitlair/power/total_kwh -m $(echo "$j" | jq .total_power_import_kwh)
mqtt-simple -h $h -p bitlair/power/All/now_w -m $(echo "$j" | jq .active_power_w)
mqtt-simple -h $h -p bitlair/power/L1/now_w -m $(echo "$j" | jq .active_power_l1_w)
mqtt-simple -h $h -p bitlair/power/L2/now_w -m $(echo "$j" | jq .active_power_l2_w)
mqtt-simple -h $h -p bitlair/power/L3/now_w -m $(echo "$j" | jq .active_power_l3_w)
sleep 1
done