From a78c6952f092fe8ab80b6be28d0e2c59871b687e Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Mon, 22 Dec 2025 18:50:59 +0100 Subject: [PATCH] voltage hack --- .woodpecker.yml | 12 ++++-------- src/udi/handlers/mbgw3/mbgw3.go | 12 +++++++++++- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 75e2f2c..bee1cae 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -1,3 +1,7 @@ +when: + - event: tag + + steps: build: image: golang:1.22.5-alpine3.20 @@ -7,8 +11,6 @@ steps: - go mod tidy - go build -a -installsuffix nocgo -o udi main.go - cp udi ../.. - when: - - event: [push, tag] scan: image: quay.io/wollud1969/woodpecker-helper:0.5.1 @@ -43,8 +45,6 @@ steps: -F "projectVersion=$TAG" \ -F "bom=@/tmp/sbom.xml"\ "$DTRACK_API_URL/api/v1/bom" - when: - - event: [push, tag] dockerize: image: plugins/kaniko @@ -58,8 +58,6 @@ steps: password: from_secret: local_password dockerfile: Dockerfile - when: - - event: tag deploy: image: quay.io/wollud1969/k8s-admin-helper:0.4.1 @@ -73,5 +71,3 @@ steps: - printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig - export KUBECONFIG=/tmp/kubeconfig - ./deployment/deploy.sh - when: - - event: tag diff --git a/src/udi/handlers/mbgw3/mbgw3.go b/src/udi/handlers/mbgw3/mbgw3.go index 42ea730..cc15477 100644 --- a/src/udi/handlers/mbgw3/mbgw3.go +++ b/src/udi/handlers/mbgw3/mbgw3.go @@ -74,12 +74,22 @@ func (self *Mbgw3Handler) Handle(message handler.MessageT) { measurement.Values = make(map[string]database.VariableType) unitMap := map[string]string { "Energy": "Wh", "Power": "W", "Voltage": "V", "Current": "A", "Volume": "m3" } + keyCount := make(map[string]int) + for k, v := range observation.Values { unit, exists := unitMap[k] if ! exists { unit = "Unmapped Unit" } - measurement.Values[k] = database.VariableType { + + // Check if key already exists and create unique key if needed + keyCount[k]++ + uniqueKey := k + if keyCount[k] > 1 { + uniqueKey = k + strconv.Itoa(keyCount[k]) + } + + measurement.Values[uniqueKey] = database.VariableType { Label: "", Variable: k, Unit: unit,