Ce projet est un script JavaScript/TypeScript qui se connecte à textboard via un protocole WebSocket (WS) et affiche le contenu d'une chaîne ASCII prédéfinie.
- Node.js : Assurez-vous d'avoir Node.js installé sur votre machine.
- Clonez ce dépôt :
git clone https://github.com/TonyKun7/textboard && cd textboard
- Installez les dépendances nécessaires :
npm install
- Créez un fichier
.envà la racine du projet contenant les informations de configuration nécessaires (trouvable dans le.env.example). - Modifiez le fichier
string.txtpour définir le texte ASCII à afficher.
- En mode production :
npm run build && npm run start - En mode développement :
npm run dev
- Docker : Assurez-vous d'avoir Docker installé sur votre machine.
- Docker Compose : Assurez-vous d'avoir Docker Compose installé.
- Clonez ce dépôt :
git clone https://github.com/TonyKun7/textboard && cd textboard
- Créez un fichier
.envà la racine du projet contenant les informations de configuration nécessaires (trouvable dans le.env.example). - Modifiez le fichier
string.txtpour définir le texte ASCII à afficher.
-
Construisez et démarrez les services définis dans
docker-compose.yml:docker-compose up -d
Cette commande :
- Crée les images Docker nécessaires à partir du
Dockerfile. - Lance les conteneurs définis dans
docker-compose.yml.
- Crée les images Docker nécessaires à partir du
-
Pour arrêter les services :
docker-compose down
-
Vérifiez que les services fonctionnent correctement :
docker-compose ps
-
Pour accéder aux logs (optionnel) :
docker-compose logs -f
Si vous souhaitez exécuter plusieurs instances (non optimisé, mais fonctionnel), voici un exemple de configuration :
version: '3.9'
services:
textboard:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
environment:
- KEY=1
textboard-1:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
environment:
- KEY=2
textboard-2:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
environment:
- KEY=3Pour que le script fonctionne correctement, récupérez la clé d'authentification sur textboard :
-
Accéder au site Web :
- Rendez-vous sur textboard.
- Connectez-vous à votre compte si nécessaire.
-
Ouvrir les outils de développement :
- Appuyez sur
F12ou faites un clic droit sur la page, puis sélectionnez Inspecter.
- Appuyez sur
-
Naviguer vers l’onglet "Application" :
- Cliquez sur l’onglet Application (ou Storage selon le navigateur).
- Sous Storage, cliquez sur Cookies.
-
Rechercher la clé
refresh_token:- Trouvez l'entrée
refresh_tokenet copiez sa valeur.
- Trouvez l'entrée
-
Configurer
.env:- Collez la clé dans le fichier
.env:KEY=valeur_du_refresh_token
- Collez la clé dans le fichier
- La clé
refresh_tokenest sensible : ne la partagez pas et utilisez-la uniquement pour ce script. - Si le cookie expire, reconnectez-vous et récupérez un nouveau
refresh_token.
- Assurez-vous que le fichier
string.txtcontenant le texte ASCII est présent dans le répertoire du projet. - Pour ajuster les paramètres comme les coordonnées, l’espacement ou le délai entre les envois, modifiez les variables correspondantes dans le fichier
.env, puis redémarrez le programme.
Ce projet a été réalisé avant tout pour le fun et à des fins d'apprentissage. Il peut fonctionner correctement pour des usages simples, mais peu d'efforts ont été consacrés à l'optimisation ou à la prise en charge de cas complexes. Si vous souhaitez l'améliorer, n'hésitez pas à contribuer ou à l'adapter à vos besoins ! 😊