Ein iOS Widget für Scriptable, das die aktuelle Auslastung deines Fitnessstudios anzeigt, welches die ClubConnector App verwendet.
- Live-Auslastung: Zeigt die aktuelle Besucherzahl in deinem Gym
- Visuelle Darstellung: Farbcodierte Balkendiagramme für erwartete Auslastung über den Tag (6:00 - 24:00)
- Drei Widget-Größen: Klein, Mittel und Groß
- Status-Indikator: Grün/Gelb/Rot je nach Auslastung
- iPhone/iPad mit iOS 14+
- Scriptable App (kostenlos)
- ClubConnector App deines Fitnessstudios
- Die ClubConnector App muss den Bereich "Was ist los in meinem Club" unterstützen
Da die ClubConnector API nicht öffentlich dokumentiert ist, musst du die Zugangsdaten über einen HTTPS-Proxy ermitteln. Wichtig: Jedes Gym hat unterschiedliche API-URLs und Zugangsdaten.
- Installiere Proxyman auf deinem iPhone
- Folge den Anweisungen in Proxyman, um ein Root-Zertifikat zu installieren und HTTPS-Traffic zu entschlüsseln
- Starte Proxyman und aktiviere die Aufzeichnung
- Öffne die ClubConnector App
- Navigiere zur Auslastungs-Ansicht (z.B. "Was ist los in meinem Club")
- In Proxyman, suche nach Requests zu
*.sovd.cloud/api/app/content/Capacity - Tippe auf den Request und schaue in die Headers
- Notiere dir folgende Werte:
- URL: Die komplette URL (z.B.
https://fl02-mcc.sovd.cloud/api/app/content/Capacity) - Authorization: Der Bearer Token (beginnt mit "Bearer eyJ...")
- x-app-id: Die App-ID
- x-device-id: Deine Device-ID
- x-standort-id: Die Standort-ID deines Gyms
- URL: Die komplette URL (z.B.
Verwende eine Proxy-Software (z.B. Charles Proxy, mitmproxy, Fiddler) auf deinem Computer, um den iPhone-Traffic zu loggen. Konfiguriere dein iPhone, um den Proxy zu nutzen, und ermittle die gleichen Werte wie oben beschrieben.
- Öffne die Scriptable App
- Tippe auf das + Symbol um ein neues Script zu erstellen
- Kopiere den kompletten Code aus
clubconnector-widget.js - Füge den Code in Scriptable ein
- Benenne das Script (z.B. "ClubConnector Widget")
Öffne das Script in Scriptable und passe die Konfiguration am Anfang der Datei an:
const CONFIG = {
// Dein Gym-Name
clubName: "Mein Gym",
// API Konfiguration
api: {
url: "https://[DEINE-SUBDOMAIN].sovd.cloud/api/app/content/Capacity",
bearerToken: "Bearer [DEIN-TOKEN]",
appId: "[DEINE-APP-ID]",
deviceId: "[DEINE-DEVICE-ID]",
standortId: "[DEINE-STANDORT-ID]",
// Diese Werte kannst du meist so lassen:
appVersion: "2.0.1",
platform: "iOS"
},
// Optional: Schwellenwerte anpassen
thresholds: {
low: 40, // Niedrige Auslastung unter 40 Besucher
medium: 90 // Mittlere Auslastung unter 90 Besucher
}
};- Lange auf den Home Screen drücken bis die Apps wackeln
- Tippe auf + in der oberen Ecke
- Suche nach Scriptable
- Wähle die gewünschte Widget-Größe
- Füge das Widget hinzu
- Bearbeite das Widget (lange drücken und "Widget bearbeiten" wählen)
- Wähle dein Script (z.B. "ClubConnector Widget") aus
colors: {
gradientStart: "#667eea", // Obere Gradient-Farbe
gradientEnd: "#764ba2", // Untere Gradient-Farbe
currentHourBar: "#FEC503", // Farbe für aktuelle Stunde
normalBar: "#ffffff" // Farbe für normale Balken
}Die Schwellenwerte bestimmen, wann das Widget grün/gelb/rot anzeigt:
thresholds: {
low: 30, // Anpassen an dein Gym
medium: 70 // Anpassen an dein Gym
}Alle Texte können in der Konfiguration angepasst werden:
labels: {
visitors: "Besucher",
average: "Durchschnitt",
// ... weitere Texte
}MIT License - siehe LICENSE Datei
Pull Requests sind willkommen! Für größere Änderungen, bitte erst ein Issue öffnen.
