Compare commits

...

9 Commits

Author SHA1 Message Date
starcalc 0c69e35d9c „.drone.yml“ ändern
continuous-integration/drone Build was killed Details
2022-11-24 17:53:28 +00:00
starcalc f2def056b1 Small change to maybe trigger drone 2022-11-24 18:45:23 +01:00
starcalc 8f079d6756 Master-Check entfernt (testweise) 2022-11-24 17:44:04 +00:00
starcalc fbf4acec3d Telefonnummer voruebergehend entfernt 2022-11-24 18:41:13 +01:00
starcalc 5e284d7fcd Neuer Hostname zu pingen
snapserv.raum.ctdo.de
2022-11-24 17:10:08 +00:00
Lucas Pleß 0082d4932b feat: added environment variables for configuration
continuous-integration/drone Build is passing Details
feat: added SIGINT event for CTRL+C support
2022-10-18 17:18:49 +02:00
Lucas Pleß d8e93ed525 feat: added environment variables for configuration 2022-10-12 08:48:30 +02:00
Lucas Pleß d95d7f4567 droneCI hinweis in README.md
continuous-integration/drone/push Build is passing Details
2022-09-04 17:45:57 +02:00
Lucas Pleß 9e1adca45d dry run entfernt und check für master branch wieder eingeschaltet
continuous-integration/drone/push Build is passing Details
2022-09-04 16:10:53 +02:00
3 changed files with 39 additions and 15 deletions

View File

@ -16,9 +16,7 @@ steps:
from_secret: dockerhub_password
repo: ctdo/raumstatus
tags: latest
dry_run: true
# when:
# ref:
# - refs/heads/master
when:
ref:
- refs/heads/master

View File

@ -23,6 +23,13 @@ Fionera fügte HTML5 Push notifications hinzu.
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
@ -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
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
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

View File

@ -8,7 +8,8 @@ var IpPoll = require("./ip-poll");
var routes = require("./routes");
var path = require('path');
var mqttClient = require('mqtt');
var process = require('process')
// phone: "+49 231 8 404 777",
var spaceanswer = {
api: "0.13",
ext_ccc: "erfa",
@ -25,7 +26,7 @@ var spaceanswer = {
lat: 51.527611
},
contact: {
phone: "+49 231 8 404 777",
phone: "",
irc: "irc://irc.hackint.eu/#ccc.do",
ml: "discuss@lists.chaostreff-dortmund.de",
twitter: "@ctdo",
@ -63,15 +64,20 @@ var spaceanswer = {
var simpleanswer = {state: "unknown", lastchange: 0, power: 0};
var ippoll = new IpPoll("rpi3.raum.ctdo.de");
var flukso = new Flukso("flukso.raum.ctdo.de", "/sensor/cf00e0b22230f4a8870af58f2b8719dd");
var mqtt = mqttClient.connect('mqtt://raum.ctdo.de');
var ippoll = new IpPoll(process.env.STATUS_POLL_HOST || "snapserv.raum.ctdo.de");
var flukso = new Flukso(process.env.FLUKSO_HOST || "flukso.raum.ctdo.de",
process.env.FLUKSO_URL || "/sensor/cf00e0b22230f4a8870af58f2b8719dd");
var mqtt = mqttClient.connect(process.env.MQTT_SERVER || 'mqtt://mqtt.ctdo.de');
var connected = false;
//express js settings
var port = '9911';
var port = process.env.HTTP_PORT || '9911';
var address = '0.0.0.0';
process.on('SIGINT', () => {
console.info("Interrupted")
process.exit(0)
})
ippoll.on('doneState', function (state) {
spaceanswer.state.open = state;
@ -113,7 +119,7 @@ function work() {
sendSimple();
}
setInterval(work, 60000);
setInterval(work, process.env.PING_INTERVAL_MS || 60000);
work();
setInterval(flukso.pollPower, 5000);