Compare commits
9 Commits
Author | SHA1 | Date |
---|---|---|
starcalc | 0c69e35d9c | |
starcalc | f2def056b1 | |
starcalc | 8f079d6756 | |
starcalc | fbf4acec3d | |
starcalc | 5e284d7fcd | |
Lucas Pleß | 0082d4932b | |
Lucas Pleß | d8e93ed525 | |
Lucas Pleß | d95d7f4567 | |
Lucas Pleß | 9e1adca45d |
|
@ -16,9 +16,7 @@ steps:
|
||||||
from_secret: dockerhub_password
|
from_secret: dockerhub_password
|
||||||
repo: ctdo/raumstatus
|
repo: ctdo/raumstatus
|
||||||
tags: latest
|
tags: latest
|
||||||
dry_run: true
|
when:
|
||||||
# when:
|
ref:
|
||||||
# ref:
|
- refs/heads/master
|
||||||
# - refs/heads/master
|
|
||||||
|
|
||||||
|
|
||||||
|
|
26
README.md
26
README.md
|
@ -23,6 +23,13 @@ Fionera fügte HTML5 Push notifications hinzu.
|
||||||
|
|
||||||
Danach kleinere Änderungen und Erweiterungen von henne, zeus, smash.
|
Danach kleinere Änderungen und Erweiterungen von henne, zeus, smash.
|
||||||
|
|
||||||
|
## config via environment variablen
|
||||||
|
|
||||||
|
PING_INTERVAL_MS default 60000
|
||||||
|
MQTT_SERVER default 'mqtt://mqtt.ctdo.de
|
||||||
|
FLUKSO_URL default "/sensor/cf00e0b22230f4a8870af58f2b8719dd
|
||||||
|
FLUKSO_HOST default"flukso.raum.ctdo.de"
|
||||||
|
STATUS_POLL_HOST default "snapserv.ctdo.de"
|
||||||
|
|
||||||
|
|
||||||
## Entrümpelung 2022
|
## Entrümpelung 2022
|
||||||
|
@ -30,7 +37,7 @@ Danach kleinere Änderungen und Erweiterungen von henne, zeus, smash.
|
||||||
Das meiste an Funktionn wurde wiede raus geworfen weil sich die CTDO infrastruktur
|
Das meiste an Funktionn wurde wiede raus geworfen weil sich die CTDO infrastruktur
|
||||||
sehr verändert hat und einiges kaputt war.
|
sehr verändert hat und einiges kaputt war.
|
||||||
|
|
||||||
Der Status zeit nur noch Power und Raumstatus an. Es läuft wie gehabt via nmap-Ping.
|
Der Status zeigt nur noch Power und Raumstatus an. Es läuft wie gehabt via ICMP Ping.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,6 +52,19 @@ Dependencies installieren und Server lokal laufen lassen:
|
||||||
node raumstatus.js
|
node raumstatus.js
|
||||||
|
|
||||||
|
|
||||||
Docker container bauen:
|
Docker container bauen zum testen:
|
||||||
|
|
||||||
|
docker build . -t ctdo/ctdo-raumstatus
|
||||||
|
|
||||||
|
Es gibt hier eine .drone.yml Datei die eine Pipeline auf ci.ctdo.de konfiguriert.
|
||||||
|
Jeder Push auf den master branch triggert einen Build Prozess. Dann wird ein neues Docker
|
||||||
|
Image gebaut und auf hub.docker.com gepushed.
|
||||||
|
|
||||||
|
|
||||||
|
## ToDos
|
||||||
|
|
||||||
|
- [ ] Automatisch Version aus package.json nehmen beim Docker bauen und taggen
|
||||||
|
- [ ] Hosts einstellbar machen via ENV (welcher host zum Pingen ist, flukso adresse+url)
|
||||||
|
- [ ] Ping Intervall einstellbar machen via ENV
|
||||||
|
|
||||||
|
|
||||||
docker build . -t ctdo/ctdo-raumstatus
|
|
|
@ -8,7 +8,8 @@ var IpPoll = require("./ip-poll");
|
||||||
var routes = require("./routes");
|
var routes = require("./routes");
|
||||||
var path = require('path');
|
var path = require('path');
|
||||||
var mqttClient = require('mqtt');
|
var mqttClient = require('mqtt');
|
||||||
|
var process = require('process')
|
||||||
|
// phone: "+49 231 8 404 777",
|
||||||
var spaceanswer = {
|
var spaceanswer = {
|
||||||
api: "0.13",
|
api: "0.13",
|
||||||
ext_ccc: "erfa",
|
ext_ccc: "erfa",
|
||||||
|
@ -25,7 +26,7 @@ var spaceanswer = {
|
||||||
lat: 51.527611
|
lat: 51.527611
|
||||||
},
|
},
|
||||||
contact: {
|
contact: {
|
||||||
phone: "+49 231 8 404 777",
|
phone: "",
|
||||||
irc: "irc://irc.hackint.eu/#ccc.do",
|
irc: "irc://irc.hackint.eu/#ccc.do",
|
||||||
ml: "discuss@lists.chaostreff-dortmund.de",
|
ml: "discuss@lists.chaostreff-dortmund.de",
|
||||||
twitter: "@ctdo",
|
twitter: "@ctdo",
|
||||||
|
@ -63,15 +64,20 @@ var spaceanswer = {
|
||||||
var simpleanswer = {state: "unknown", lastchange: 0, power: 0};
|
var simpleanswer = {state: "unknown", lastchange: 0, power: 0};
|
||||||
|
|
||||||
|
|
||||||
var ippoll = new IpPoll("rpi3.raum.ctdo.de");
|
var ippoll = new IpPoll(process.env.STATUS_POLL_HOST || "snapserv.raum.ctdo.de");
|
||||||
var flukso = new Flukso("flukso.raum.ctdo.de", "/sensor/cf00e0b22230f4a8870af58f2b8719dd");
|
var flukso = new Flukso(process.env.FLUKSO_HOST || "flukso.raum.ctdo.de",
|
||||||
var mqtt = mqttClient.connect('mqtt://raum.ctdo.de');
|
process.env.FLUKSO_URL || "/sensor/cf00e0b22230f4a8870af58f2b8719dd");
|
||||||
|
var mqtt = mqttClient.connect(process.env.MQTT_SERVER || 'mqtt://mqtt.ctdo.de');
|
||||||
var connected = false;
|
var connected = false;
|
||||||
|
|
||||||
//express js settings
|
//express js settings
|
||||||
var port = '9911';
|
var port = process.env.HTTP_PORT || '9911';
|
||||||
var address = '0.0.0.0';
|
var address = '0.0.0.0';
|
||||||
|
|
||||||
|
process.on('SIGINT', () => {
|
||||||
|
console.info("Interrupted")
|
||||||
|
process.exit(0)
|
||||||
|
})
|
||||||
|
|
||||||
ippoll.on('doneState', function (state) {
|
ippoll.on('doneState', function (state) {
|
||||||
spaceanswer.state.open = state;
|
spaceanswer.state.open = state;
|
||||||
|
@ -113,7 +119,7 @@ function work() {
|
||||||
sendSimple();
|
sendSimple();
|
||||||
}
|
}
|
||||||
|
|
||||||
setInterval(work, 60000);
|
setInterval(work, process.env.PING_INTERVAL_MS || 60000);
|
||||||
work();
|
work();
|
||||||
|
|
||||||
setInterval(flukso.pollPower, 5000);
|
setInterval(flukso.pollPower, 5000);
|
||||||
|
|
Loading…
Reference in New Issue