Skip to content

Télécommande Mobile ​

StreamooS peut être piloté depuis un mobile sur le réseau local via une PWA (Progressive Web App).

Prérequis ​

  • PC et mobile sur le même réseau Wi-Fi
  • StreamooS lancé (le serveur remote démarre automatiquement)

Accès ​

  1. Dans les réglages de StreamooS, note l'adresse affichée (ex: https://streamoos.local:8080 ou https://192.168.1.x:8080)
  2. Ouvre cette URL dans le navigateur de ton mobile

Couplage PIN ​

Sécurité

Le token JWT est signé avec un secret unique de 32 octets généré par installation et stocké de manière chiffrée via safeStorage. Cela garantit que même sur un réseau local, aucun appareil non autorisé ne peut forger de tokens de contrôle.

Au premier accès, un code PIN s'affiche dans l'app desktop. Entre-le sur mobile pour valider le pairing. Un token JWT est ensuite stocké sur le mobile pour les connexions suivantes.

HTTPS et certificats auto-signés ​

La PWA requiert HTTPS. StreamooS génère automatiquement un certificat auto-signé dans userData/.

Sur iOS (Safari) ​

  1. Accepte l'avertissement : Avancé → Continuer vers le site
  2. Partager → Sur l'écran d'accueil

Sur Android (Chrome) ​

Confiance du certificat

Le certificat étant auto-signé et généré localement, votre navigateur affichera un avertissement de sécurité. C'est un comportement normal pour le HTTPS sur réseau local. Vous devez manuellement "Continuer" ou "Faire confiance" au certificat pour permettre à la PWA de communiquer avec le serveur StreamooS.

  1. Accepte l'avertissement : Paramètres avancés → Accéder au site
  2. Menu ⋮ → Installer l'application

Architecture technique ​

Mobile (PWA) ──HTTPS:8080──▶ Fastify (app/src/main/remote/)
                                      │
                              HandlerRuntime.dispatchCommand()
                                      │
                              FeatureHandlers (timer, khinsider…)
  • Découverte : mDNS via DiscoveryService → streamoos.local
  • Auth : JWT signé par AuthService après PIN pairing
  • Commandes : même interface que les overlays WS - toutes les features sont accessibles

Controles disponibles ​

Une fois couple, la PWA donne acces a toutes les features StreamooS :

FeatureActions disponibles
KHInsider RadioPlay, Pause, Next, Shuffle, Volume
SMTCPlay, Pause, Next, Previous
TimerStart, Stop, Reset
DiscordConnect, Disconnect, Status

La telecommande utilise la meme interface de commandes que les overlays WebSocket -- toutes les actions FeatureHandler sont accessibles via HandlerRuntime.dispatchCommand().

Bascule de port ​

Le serveur de telecommande essaie le port 8080 d'abord, puis 8443 si 8080 est occupe. Le QR code et l'URL affichee dans le dashboard refletent toujours le port reel -- scanne-les ou copie-les plutot que de taper l'adresse de memoire. Si les deux ports sont occupes, la carte Telecommande affiche une erreur explicite ; ferme l'application qui utilise ces ports puis genere un nouveau PIN.

Appareils appaires ​

La carte Telecommande liste chaque appareil appaire (nom + derniere activite). Utilise Revoquer pour invalider immediatement l'acces d'un appareil -- il devra refaire l'appairage avec un nouveau PIN.

Depannage ​

Erreur navigateurCause probableSolution
DNS_PROBE_FINISHED_NXDOMAIN sur streamoos.localmDNS bloque par le routeur/OS (frequent sous Windows sans Bonjour, certains Android)Utilise l'URL IP de secours encodee dans le QR code (https://192.168.x.x:<port>)
ERR_CERT_AUTHORITY_INVALID / avertissement certificatCertificat auto-signe (attendu)Accepte le certificat manuellement -- voir la section HTTPS ci-dessus
ERR_CONNECTION_REFUSEDServeur non demarre (deux ports occupes) ou pare-feuVerifie le statut sur la carte Telecommande, libere les ports 8080/8443, ouvre le port dans le pare-feu
Appairage refuse avec un PIN validePIN expire (5 min) ou deja consommeGenere un nouveau PIN depuis le dashboard
La telecommande ne repond plus apres redemarrage de l'appLes appairages sont gardes en memoire seulementRefais l'appairage avec un nouveau PIN

mDNS ​

Certains routeurs bloquent mDNS. Dans ce cas, scanne le QR code : il encode l'URL IP directe du LAN, qui contourne entierement la resolution de nom.

Pare-feu ​

Si la telecommande n'est pas joignable, verifie que les ports 8080/8443 (HTTPS) sont ouverts dans ton pare-feu. Sous Windows, StreamooS peut demander une exception pare-feu au premier lancement.

Released under the MIT License.