rabtechhug/NotificationChannel
0
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
🔔 NotificationChannel
Service de notifications en temps réel professionnel
Notification push • WebSockets • Diffusion ciblée • Historique
✨ Fonctionnalités
- 🚀 Connexions WebSocket - Gestion optimisée des connexions persistantes
- 🎯 Notifications ciblées - Envoi par utilisateur, rôle ou diffusion globale
- 📊 Historique intelligent - Conservation des dernières notifications
- 🔐 Sécurité renforcée - Gestion de session et validation
- 📈 Monitoring intégré - Statistiques temps réel des connexions
🏗️ Architecture
graph TD
A[Client] -->|WebSocket| B(API Gateway)
B --> C{NotificationChannel}
C --> D[(Historique)]
C --> E[Utilisateur]
C --> F[Rôle]
C --> G[Broadcast]🚀 Déploiement
# Construction de l'image
docker build -t notification-channel .
# Lancement du service
docker run -d -p 7860:7860 --name notif-service notification-channelAccès rapide :
- Interface : http://0.0.0.0:7860
- Documentation API : http://0.0.0.0:7860/api-docs
⚙️ Configuration
🔄 Workflow CI/CD
graph LR
A[Code] --> B[Tests]
B --> C[Build Docker]
C --> D[Scan Sécurité]
D --> E[Staging]
E --> F[Validation]
F --> G[Production]📋 API Endpoints
WebSocket
ws://localhost:8000/ws/{user_id}- Connexion utilisateurws://localhost:8000/ws/broadcast- Diffusion globale
REST API
POST /notify/user/{user_id}- Notification individuellePOST /notify/role/{role}- Notification par rôlePOST /notify/broadcast- Diffusion généraleGET /history/{user_id}- Historique utilisateur
🛠️ Développement
# Installation des dépendances
pip install -r requirements.txt
# Lancement en mode dev
uvicorn main:app --reload --host 0.0.0.0 --port 7860