TELCOTELEKOM

🔗 PeerLink - Sichere P2P Kommunikation

Eine einzige HTML-Datei für Text, Audio und Video - ohne externe Abhängigkeiten!

PeerLink ist ein ultraleichtes Peer-to-Peer Kommunikationssystem, das direkt im Browser läuft. Kein Build-Prozess, keine komplexen Installationen - einfach die HTML-Datei öffnen und loslegen!

✨ Features

🚀 Schnellstart

Option 1: Automatisch (Empfohlen)

# Klone Repository oder lade Dateien herunter
# Starte alles mit einem Befehl
./start-peerlink.sh start

Option 2: Manuell

  1. TURN-Server starten:
    docker-compose up -d turn-server
    
  2. Signaling-Server starten:
    npm install ws
    node server.js
    
  3. PeerLink öffnen:
    • Öffne peerlink.html in deinem Browser
    • Konfiguriere bei Bedarf die Server-Einstellungen

📁 Projekt-Struktur

peerlink/
├── peerlink.html          # Haupt-PWA-Anwendung
├── monitoring.html        # Entwickler-Monitoring-Dashboard
├── server.js              # WebRTC Signaling-Server
├── docker-compose.yml     # TURN-Server Setup
├── start-peerlink.sh      # Automatischer Start
├── stop-peerlink.sh       # System stoppen
└── README.md             # Diese Datei

🔧 Konfiguration

Automatische Konfiguration

Die Anwendung erkennt automatisch lokale Server:

Manuelle Konfiguration

  1. Öffne peerlink.html
  2. Klicke auf “⚙️ Konfiguration”
  3. Passe die Server-URLs an deine Bedürfnisse an
  4. “💾 Speichern” klicken

🎯 Verwendung

Für Benutzer

  1. PeerLink öffnen: peerlink.html im Browser öffnen
  2. Modus wählen: Text 💬, Audio 🎤 oder Video 📹
  3. Link teilen: QR-Code oder Link kopieren und an Kontakte senden
  4. Verbinden: Alle öffnen den gleichen Link und sind automatisch verbunden

Verbindungs-Tagebuch

📊 Entwickler-Monitoring

Separate Monitoring-Datei

Öffne monitoring.html für detaillierte Statistiken:

Server-Monitoring

Der Signaling-Server sammelt automatisch:

🛠️ Technische Details

WebRTC Architektur

Sicherheit

Browser-Support

🌐 Deployment

Lokale Entwicklung

# Klone Repository
git clone <repository-url>
cd peerlink

# Starte System
./start-peerlink.sh start

# Öffne http://localhost:8080 für PeerLink
# Öffne monitoring.html für Monitoring

Produktions-Deployment

Option 1: Statisches Hosting

# Lade peerlink.html auf einen Webserver
# Beispiel: Apache, Nginx, GitHub Pages, Netlify
cp peerlink.html /var/www/html/

Option 2: Vollständiges System

# Deploy Signaling + TURN Server
# Verwende Docker Compose in Produktion
docker-compose up -d

# PeerLink-Datei auf HTTPS-Hosting deployen
# Konfiguriere Produktions-URLs in der App

Option 3: Cloud-Deployment

Signaling-Server:

TURN-Server:

🔧 Erweiterte Konfiguration

TURN-Server Anpassen

# docker-compose.yml
environment:
  - TURN_REALM=your-domain.com
  - TURN_USER=your-user
  - TURN_PASSWORD=your-secure-password

Signaling-Server Konfiguration

// server.js - Anpassungen
const PORT = process.env.PORT || 8080;
const MONITORING_ENABLED = process.env.MONITORING === 'true';

PWA-Manifest Anpassen

{
  "name": "Dein PeerLink",
  "short_name": "PeerLink",
  "description": "Deine P2P Kommunikation",
  "theme_color": "#2563eb"
}

📈 Monitoring & Analytics

Automatische Datensammlung

Der Signaling-Server sammelt automatisch:

Datenschutz

🐛 Fehlerbehebung

Häufige Probleme

Verbindung schlägt fehl:

# TURN-Server Status prüfen
docker-compose logs turn-server

# Signaling-Server testen
curl http://localhost:8080/health

Audio/Video funktioniert nicht:

PWA installiert sich nicht:

Logs & Debugging

# Signaling-Server Logs
tail -f signaling.log

# Docker Logs
docker-compose logs -f

# Browser Console für Client-Debugging

📄 Lizenz & Rechtliches

Rechtliche Hinweise

Open Source

Dieses Projekt ist Open Source und kann frei verwendet werden. Bei kommerzieller Nutzung bitte den Autor kontaktieren.

🤝 Mitwirken

Entwicklung

# Abhängigkeiten installieren
npm install

# Entwicklungsserver starten
npm run dev

# Tests ausführen
npm test

Beitragen

  1. Fork das Repository
  2. Erstelle einen Feature-Branch
  3. Committe deine Änderungen
  4. Push zum Branch
  5. Erstelle einen Pull Request

📞 Support

Dokumentation

Community


🎉 Los geht’s!

1. Starte das System:

./start-peerlink.sh start

2. Öffne PeerLink:

http://localhost:8080/peerlink.html

3. Verbinde dich: Teile den Link oder QR-Code mit deinen Kontakten!

Happy communicating! 🚀