https://github.com/maximiliangt500/testflight-watcher
Dies ist ein einfacher TestFlight-Watcher, der in regelmäßigen Abständen die Einladungen auf verfügbare Plätze überprüft. Sobald ein Platz frei wird, erfolgt eine Benachrichtigung über Pushover.
https://github.com/maximiliangt500/testflight-watcher
pushover testflight testflight-api testflight-invite testflight-link
Last synced: 11 months ago
JSON representation
Dies ist ein einfacher TestFlight-Watcher, der in regelmäßigen Abständen die Einladungen auf verfügbare Plätze überprüft. Sobald ein Platz frei wird, erfolgt eine Benachrichtigung über Pushover.
- Host: GitHub
- URL: https://github.com/maximiliangt500/testflight-watcher
- Owner: MaximilianGT500
- License: mit
- Created: 2024-12-13T23:57:22.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-20T20:58:40.000Z (about 1 year ago)
- Last Synced: 2025-04-02T16:54:09.682Z (12 months ago)
- Topics: pushover, testflight, testflight-api, testflight-invite, testflight-link
- Language: JavaScript
- Homepage:
- Size: 23.4 KB
- Stars: 14
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Beschreibung 📜
Der **TestFlight Watcher** ist ein Skript, das TestFlight-Betas überwacht und Benachrichtigungen versendet, wenn neue Plätze für Betatests verfügbar sind. Es prüft regelmäßig die angegebenen TestFlight-URLs und benachrichtigt den Benutzer, wenn Plätze verfügbar werden. Diese Benachrichtigungen werden über die [Pushover-API](https://pushover.net/) versendet.
## Funktionen 🛠️
- Überwachung von TestFlight-Betas.
- Senden von Benachrichtigungen bei Verfügbarkeit von Testplätzen.
- Einfache Verwaltung der zu überwachenden URLs über eine Konfigurationsdatei oder über das Setup-Script.
- Webserver zum Löschen von bereits angenommenen Beta-Einladungen.
- Einstellbare Priorität
- Einstellbares Prüfinterval
## Installation 💻
### Voraussetzungen
- Internetverbindung
- 128MB Arbeitsspeicher
- 0,5 - 1 Thread
- [Node.js](https://nodejs.org/) (Version 12 oder höher)
- [Pushover Account](https://pushover.net/) (für Benachrichtigungen)
### Schritte
1. **Klone das Repository:**
```bash
git clone https://github.com/MaximilianGT500/testflight-watcher.git
cd testflight-watcher
```
2. **Installiere die benötigten Pakete:**
```bash
npm install
```
3. **Erstellung der `.env`-Datei:**
Falls noch nicht vorhanden, erstelle die `.env`-Datei, indem Du den Setup-Prozess ausführen:
```bash
node setup.js / npm run setup
```
4. **Starte das Skript:**
```bash
node index.js / npm start
```
## Konfiguration ⚙️
In der `.env`-Datei müssen folgende Variablen konfiguriert werden:
- **PUSHOVER_USER_KEY**: Dein Pushover-Benutzer-Schlüssel.
- **PUSHOVER_APP_TOKEN**: Dein Pushover-App-Token.
- **TESTFLIGHT_URLS**: Eine Liste der TestFlight-URLs, die überwacht werden sollen. Beispiel:
```json
[{ "name": "App 1", "url": "https://testflight.apple.com/join/abcd1234" },{ "name": "App 2", "url": "https://testflight.apple.com/join/xyz5678" }]
```
- **OTP_SECRET**: Ein geheimer Schlüssel für die OTP-Generierung.
- **OTP_VALIDITY**: Die Gültigkeitsdauer des OTP in Sekunden (Standard: 300).
- **USER_AGENT**: Der User-Agent für Anfragen an die TestFlight-URLs.
- **PORT**: Der Port, auf dem der Webserver läuft (Standard: 3000).
- **HTTP_URL**: Die URL des Webservers (Standard: `http://localhost:3000`).
- **PUSHOVER_PRIORITY**: Die Priorität der Benachrichtigungen bei freier Beta. (Standard: 1)
- **CHECK_INTERVAL**: Wie oft soll nach ein freien Platz geprüft werden? (Standard: 30)
### Beispiel `.env`-Datei:
```env
PUSHOVER_USER_KEY=dein_pushover_benutzer_key
PUSHOVER_APP_TOKEN=dein_pushover_app_token
TESTFLIGHT_URLS='[{"name":"App 1", "url":"https://testflight.apple.com/join/abcd1234"}]'
OTP_SECRET=AendereDiesenString
OTP_VALIDITY=300
USER_AGENT=Testflight-Watcher/0.0.2
PORT=3000
HTTP_URL=http://localhost:3000
PUSHOVER_PRIORITY=1
CHECK_INTERVAL=30
```
## Nutzung 🚀
### Überwachung starten
Nachdem das Skript erfolgreich gestartet wurde, überwacht es kontinuierlich die angegebenen TestFlight-URLs und prüft standardmäßig alle 30 Sekunden auf ein neuen Platz.
### Benachrichtigungen
Wenn ein Platz für einen TestFlight-Betatests verfügbar ist, wird automatisch eine Benachrichtigung an den angegebenen Pushover-Benutzer gesendet.
### URLs verwalten
Du kannst TestFlight-URLs über die Konsole verwalten, indem du die `.env`-Datei bearbeitest oder `npm run setup` bzw. `node setup.js` ausführst.
## Setup 📦
Beim ersten Start des Skripts musst Du die Konfiguration einrichten. Falls die `.env`-Datei fehlt oder unvollständig ist, wird automatisch das Setup gestartet, um die fehlenden Werte zu konfigurieren.
## Debugging und Fehlerbehebung ⚠️
- **Fehlende `.env`-Datei**: Wenn die `.env`-Datei fehlt, startet das Skript den Setup-Prozess automatisch.
- **Pushover-Benachrichtigungen**: Überprüfe, ob der Benutzer-Schlüssel und das App-Token korrekt sind, wenn keine Benachrichtigungen gesendet werden.
- **TestFlight-URLs**: Stelle sicher, dass die URLs korrekt sind und auf existierende Betatests verweisen.
## Lizenz 📄
Dieses Projekt ist unter der MIT-Lizenz lizenziert - siehe die [LICENSE](LICENSE)-Datei für Details.
---
