Skip to content

Commit

Permalink
added support for MQTT over websockets, fixes #17
Browse files Browse the repository at this point in the history
  • Loading branch information
Mathias authored and mdzio committed Jan 6, 2021
1 parent 507a179 commit 36a52a6
Show file tree
Hide file tree
Showing 3 changed files with 215 additions and 185 deletions.
10 changes: 2 additions & 8 deletions README.md
Expand Up @@ -42,13 +42,7 @@ Folgende Leitlinien sind bei der Entwicklung des CCU-Jacks maßgebend:

Nach der Implementierung von MQTT sind zukünftig erst einmal kleinere Erweiterungen geplant, um den CCU-Jack für die V1.0 abzurunden:

* Erweiterungen für MQTT
* Zugriffsberechtigungen
* Erweiterungen VEAP-API
* Zugriffsberechtigungen
* Erweiterungen der Web-UI
* Setzen von Datenpunkten im _Navigator_ und der _Überwachung_
* Benutzer- und Rechteverwaltung
* Web-Socket-Unterstützung für MQTT

Langfristig sind dann bereits folgende Erweiterungen geplant:
* Erweiterungen für MQTT
Expand Down Expand Up @@ -158,7 +152,7 @@ Mit dem [Kommandozeilenwerkzeug CURL](https://curl.haxx.se), das praktisch für

## Beschreibung der MQTT-Schnittstelle

Der CCU-Jack enthält einen vollwertigen und leistungsfähigen MQTT-Server (V3.1.1). Dieser kann von beliebigen Fremdapplikationen genutzt werden. Zudem werden die Wertänderungen aller Gerätedatenpunkte der CCU und ausgewählter Systemvariablen automatisch an den MQTT-Server gesendet und stehen daraufhin allen MQTT-Clients zur Verfügung.
Der CCU-Jack enthält einen vollwertigen und leistungsfähigen MQTT-Server (V3.1.1). Dieser kann von beliebigen Fremdapplikationen genutzt werden. Zudem werden die Wertänderungen aller Gerätedatenpunkte der CCU und ausgewählter Systemvariablen automatisch an den MQTT-Server gesendet und stehen daraufhin allen MQTT-Clients zur Verfügung. Die Netzwerk-Ports können mit den Optionen `MQTT.Port` und `MQTT.PortTLS` eingestellt werden. Ein Zugriff über Web-Sockets ist über den Pfad `/ws-mqtt` des HTTP(S)-Servers möglich.

Um das MQTT-Protokoll hat sich ein großes Ökosystem gebildet. Eine Übersicht ist in dieser [Link-Sammlung](https://github.com/hobbyquaker/awesome-mqtt) zu finden.

Expand Down
18 changes: 9 additions & 9 deletions build/main.go
Expand Up @@ -12,7 +12,7 @@ import (
const (
logLevel = logging.InfoLevel
appName = "ccu-jack"
appVersion = "0.10.1"
appVersion = "0.10.2"
appPkg = "github.com/mdzio/ccu-jack"
ldFlags = "-s -w -X main.appVersion=" + appVersion
buildDir = ".."
Expand All @@ -23,7 +23,7 @@ var (
targetSystems = []string{
"ccu2",
"rm-rp0+1",
"ccu3-rm-rp2+3",
"ccu3-rm-rp2+3+4",
"vccu-x86",
"win",
"linux",
Expand All @@ -35,13 +35,13 @@ var (
addon bool
goSpec releng.GoSpec
}{
"ccu2": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "5", LDFlags: ldFlags}},
"rm-rp0+1": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "6", LDFlags: ldFlags}},
"ccu3-rm-rp2+3": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "7", LDFlags: ldFlags}},
"vccu-x86": {true, releng.GoSpec{OS: "linux", Arch: "386", LDFlags: ldFlags}},
"win": {false, releng.GoSpec{OS: "windows", Arch: "amd64", LDFlags: ldFlags}},
"linux": {false, releng.GoSpec{OS: "linux", Arch: "amd64", LDFlags: ldFlags}},
"darwin": {false, releng.GoSpec{OS: "darwin", Arch: "amd64", LDFlags: ldFlags}},
"ccu2": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "5", LDFlags: ldFlags}},
"rm-rp0+1": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "6", LDFlags: ldFlags}},
"ccu3-rm-rp2+3+4": {true, releng.GoSpec{OS: "linux", Arch: "arm", Arm: "7", LDFlags: ldFlags}},
"vccu-x86": {true, releng.GoSpec{OS: "linux", Arch: "386", LDFlags: ldFlags}},
"win": {false, releng.GoSpec{OS: "windows", Arch: "amd64", LDFlags: ldFlags}},
"linux": {false, releng.GoSpec{OS: "linux", Arch: "amd64", LDFlags: ldFlags}},
"darwin": {false, releng.GoSpec{OS: "darwin", Arch: "amd64", LDFlags: ldFlags}},
}

// files for non ccu target systems
Expand Down

0 comments on commit 36a52a6

Please sign in to comment.