← Buellton

Clients/Buellton/ThingsBoard SCADA Platform.md

manual
Source
10
Chunks
25
Entities
Doc
Type

Content

# Buellton — ThingsBoard SCADA Platform ## Overview The City of Buellton water system monitoring runs on **ThingsBoard CE 4.3.0.1** hosted on a Hetzner cloud server. It provides real-time dashboards, alarms, and notifications for water system operators via web browser and mobile app. --- ## Access | Method | URL | |--------|-----| | Web UI | https://scada.autosysapp.com | | Mobile App (Android) | [Autosys on Google Play](https://play.google.com/store/apps/details?id=com.autosysnet.scada) | | iOS App | Pending (needs Apple Developer account) | - **DNS:** scada.autosysapp.com -> 89.167.31.76 (A record on autosysapp.com via Google/Squarespace Domains) - **SSL:** Let's Encrypt, expires 2026-06-16, auto-renew via certbot - **Previous URL:** https://static.76.31.167.89.clients.your-server.de (deprecated) --- ## Server - **Host:** Hetzner, 89.167.31.76 (Tailscale: 100.98.113.103) - **SSH:** `ssh root@100.98.113.103` (key-based, Tailscale only) - **OS:** Ubuntu 24.04 aarch64, 2 cores, 3.7GB RAM - **ThingsBoard:** 4.3.0.1, running on port 8080 behind nginx (443 SSL) - **Database:** PostgreSQL localhost:5432, db: thingsboard - **MQTT:** port 1883 - **Backups:** borgmatic daily 6AM UTC -> Google Drive + OneDrive --- ## Accounts | Role | Email | Password | | ------------------ | --------------------- | -------- | | System Admin | mason@autosysnet.com | @ut0sys! | | Tenant Admin | admin@autosysnet.com | @ut0sys! | | Customer (Autosys) | mason.radke@gmail.com | @ut0sys! | | Customer (Autosys) | kevin@autosysnet.com | @ut0sys! | **Tenant:** Autosys Networks (ID: 8b0d7370-090f-11f1-9184-af68548c726e) --- ## Buellton Customer Users **Customer ID:** d3575b40-0ad7-11f1-a505-058da7d3bc9c | Name | Email | User ID | Status | |------|-------|---------|--------| | Mason Radke | mason@buellton.autosysnet.com | 43f518e0-139f-... | Active | | Joe G | JoeG@cityofbuellton.com | d41c58f0-0ad7-... | Active | | JC | JCVel@cityofbuellton.com | deaf1aa0-0ad7-... | Active | | Joe V | Jvelasquez@cityofbuellton.com | a18ee230-1424-... | Active | | Kurt G | kurtg@cityofbuellton.com | 41ebd190-22d8-... | Activation sent 2026-03-18 | | Marco C | marcoc@cityofbuellton.com | 4bc22110-22d8-... | Activation sent 2026-03-18 | ### Other Customers on Platform - **Autosys** (ID: c0c6a7c0-090f-11f1-9184-af68548c726e) - **Google** (ID: 3b0bc3d0-0c80-11f1-a505-058da7d3bc9c) --- ## Telemetry & Alarms - **Keys:** `Tank Level` (ft), `Pump Status` (1/0), `Pressure` (PSI) - **Low Tank Level:** CRITICAL when < 5 (ID: edf7e5fb-9ad0-4902-bfd7-cfa9823487d7) - **High Pressure:** WARNING when > 80 (ID: fbe34546-c491-421b-8508-053f85b278ea) - **Alarm monitor service:** systemctl alarm-monitor, script /opt/alarm_monitor.py --- ## Email / Notifications ### Mail Relay (deployed 2026-03-18) - **Service:** systemd `mail-relay` on the TB server - **Script:** /opt/mail-relay/mail_relay.py (Python, venv at /opt/mail-relay/venv) - **How it works:** ThingsBoard sends SMTP to localhost:2525 -> Python relay -> Microsoft Graph API `/sendMail` - **Sends as:** `Autosys SCADA <email@autosysnet.com>` - **Why not direct SMTP?** M365 tenant has SMTP AUTH disabled org-wide. OAuth2 SMTP failed with 535 5.7.3. Graph API with client credentials works reliably. ### Azure AD App (used by mail relay) - **App name:** Autobot (Client ID: 5eb0402b-0966-471c-bc60-f4b580385f06) - **Credentials:** datavault `/opt/vault/config/ms365_app.env` - **Permissions:** Mail.Send (application), SMTP.Send (delegated), plus others - **Redirect URI:** https://scada.autosysapp.com/api/admin/mail/oauth2/code ### Notification Targets | Target | ID | |--------|-----| | All users | 8b568a60-090f-11f1-9184-af68548c726e | | Tenant admins | 8b5774c0-090f-11f1-9184-af68548c726e | | Entity owner users | 8b5997a0-090f-11f1-9184-af68548c726e | | Affected user | 8b5a33e0-090f-11f1-9184-af68548c726e | - **Critical alarm reminder template ID:** bbfa9b80-09e5-11f1-a505-058da7d3bc9c - **Firebase:** 3 templates (New alarm, Alarm update, Device activity) + Critical alarm reminder --- ## Mobile App - **Package:** com.autosysnet.scada - **Play Store:** https://play.google.com/store/apps/details?id=com.autosysnet.scada - **Source:** ~/flutter_thingsboard_app/ (Flutter, tag v.1.8.0) - **Config:** configs.json (server URL hardcoded — users don't need to enter it) - **Build:** FVM 4.0.5, Flutter 3.29.0, Java 17, Android SDK - **Firebase:** thingsboard-autosys (project 132103559308) ### Pending - configs.json still points to old `static.76.31.167.89...` URL — needs update to `https://scada.autosysapp.com` and new build pushed to Play Store - iOS build requires Apple Developer account ($99/yr), Firebase iOS app, APNs key, provisioning profile --- ## Activation Email Template Branded emails sent via Graph API (not TB's built-in mail). Includes: 1. **Activation button** — sets password for new account 2. **Play Store link** — download Autosys app, log in with email + password 3. **Web access** — https://scada.autosysapp.com Footer: "Autosys, LLC"

Extracted Entities

TypeKeyValueConfidenceEvidence
contact Customer User Joe G Email JoeG@cityofbuellton.com 100% Joe G | JoeG@cityofbuellton.com
contact System Admin Email mason@autosysnet.com 100% System Admin | mason@autosysnet.com
contact Tenant Admin Email admin@autosysnet.com 100% Tenant Admin | admin@autosysnet.com
contact Customer Email Mason Radke mason.radke@gmail.com 100% Customer (Autosys) | mason.radke@gmail.com
contact Customer Email Kevin kevin@autosysnet.com 100% Customer (Autosys) | kevin@autosysnet.com
contact Customer User Marco C Email marcoc@cityofbuellton.com 100% Marco C | marcoc@cityofbuellton.com
contact Customer User Kurt G Email kurtg@cityofbuellton.com 100% Kurt G | kurtg@cityofbuellton.com
contact Customer User Joe V Email Jvelasquez@cityofbuellton.com 100% Joe V | Jvelasquez@cityofbuellton.com
contact Customer User JC Email JCVel@cityofbuellton.com 100% JC | JCVel@cityofbuellton.com
contact Customer User Mason Radke Email mason@buellton.autosysnet.com 100% Mason Radke | mason@buellton.autosysnet.com
credential Customer SCADA Login Mason Radke username: mason.radke@gmail.com / password: @ut0sys! 100% Customer (Autosys) | mason.radke@gmail.com | @ut0sys!
credential System Admin SCADA Login username: mason@autosysnet.com / password: @ut0sys! 100% System Admin | mason@autosysnet.com | @ut0sys!
credential Tenant Admin SCADA Login username: admin@autosysnet.com / password: @ut0sys! 100% Tenant Admin | admin@autosysnet.com | @ut0sys!
credential Customer SCADA Login Kevin username: kevin@autosysnet.com / password: @ut0sys! 100% Customer (Autosys) | kevin@autosysnet.com | @ut0sys!
server SCADA Web UI URL https://scada.autosysapp.com 100% Web UI | https://scada.autosysapp.com
server PostgreSQL Port 5432 100% Database: PostgreSQL localhost:5432, db: thingsboard
server MQTT Port 1883 100% MQTT: port 1883
server Mobile App Play Store URL https://play.google.com/store/apps/details?id=com.autosysnet.scada 100% Play Store: https://play.google.com/store/apps/details?id=com.autosysnet.scada
server SCADA Server IP 89.167.31.76 100% DNS: scada.autosysapp.com -> 89.167.31.76
server SCADA Server Tailscale IP 100.98.113.103 100% Host: Hetzner, 89.167.31.76 (Tailscale: 100.98.113.103)
server SCADA Server SSH Access ssh root@100.98.113.103 100% SSH: ssh root@100.98.113.103 (key-based, Tailscale only)
server ThingsBoard Port 8080 100% ThingsBoard: 4.3.0.1, running on port 8080 behind nginx (443 SSL)
site Client Site Buellton 100% Client: Buellton
system SCADA Platform ThingsBoard CE 4.3.0.1 100% The City of Buellton water system monitoring runs on ThingsBoard CE 4.3.0.1
system Mobile App Package com.autosysnet.scada 100% Package: com.autosysnet.scada
File: Clients/Buellton/ThingsBoard SCADA Platform.md
Updated: 2026-03-18 18:02:32.074061