Files
laermsensor-stack/noise
admin 10cd964ede Stadtsuche in den Einstellungen repariert (graue Karte)
Wer auf dem Kartenreiter die Einstellungen oeffnete und eine Stadt eingab,
bekam danach nur noch ein graues Fenster. Drei Fehler wirkten zusammen:

1. getCityCoords() rief Nominatim ohne eigenen User-Agent auf. Nominatim
   beantwortet den axios-Default mit 403, und zwar fuer jede Stadt. Die
   Schwesterfunktion getAddress() setzt seit jeher einen User-Agent -
   deshalb funktionierten die Adressen an den Sensoren, nur die
   Stadtsuche nicht. Beide nutzen jetzt dieselbe Konstante.

2. cityCoords() lieferte im Fehlerfall den String "no coordinates". Der
   landete als Kartenzentrum in L.map().setView(), Leaflet warf "Invalid
   LatLng object" - und weil showMap() die alte Karte vorher schon
   entfernt hat, blieb der Container leer. Daher grau statt Fehlermeldung.
   cityCoords() liefert jetzt {coords, err}; schlaegt die Suche fehl,
   bleibt das bisherige Zentrum stehen und der Text wird angezeigt.

3. Der Proxy in noise/routes/api.js kodierte die bereits prozentkodierte
   req.originalUrl ein zweites Mal. 'Goettingen' kam als 'G%c3%b6ttingen'
   an. Das fiel bisher nicht auf, weil schon Punkt 1 alles abfing.

Ausserdem: Tippfehler getCityCoord.name, fehlendes encodeURI bei der
Stadtsuche, Koordinaten als Zahl statt String, und eine eigene Meldung
(ENOCITY), wenn Nominatim den Ort nicht kennt.

Geprueft ueber die volle Kette noise -> sensorapi -> Nominatim:
Stuttgart, Goettingen (Umlaut), Bad Cannstatt (Leerzeichen) liefern
Koordinaten, ein erfundener Ort eine saubere Meldung.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 15:03:27 +00:00
..

Develop und Deploy der Noise-Anwendung

rxf 2025-08-08

Develop local ( auf esprimo !)

  • via VS die APP sensorapi auf dem esprimo starten
  • als mongo direkt die auf ionos verwenden
  • in VS die app laerm_web_sensorapi editieren und starten
  • im Browser aufrufen: esprimo:3000

Deploy auf ionos

  • überprüfen, ob portainer richtig läuft, ggf. neu installieren
  • prüfen, ob alle Container richtig laufen, vor Allem der watchtower, ggf. das Stack neu starten
  • in VS (auf esprimo) das script deploy.sh aufrufen
  • auf ionos sollte nun via watchtower die neue Version geladen werden (spätestens nach 1 Minute) ** nun im Browser https://noise.fuerst-stuttgart.de aufrufen und testen

Deploy auf rbsensors

  • wenn deplay.sh noch nicht gestartet wurde (via VS auf esprimo), diese aufrufen.
  • Portainer auf rbsensors aufrufen: 192.168.51.22:9000
  • über Images das neueste Image (noise:latest) vom Repository Reinhard holen
  • das Stack noisesensor aufrufen
  • den Container noise löschen
  • via edit das Stack neu starten
  • und nun im Browser mit laerm.rbsensors.de testen
Datum Version Bemerkung
2025-08-08 1.0.1 Typos verbessert
2024-12-20 1.0.0 erste Version