← Modèle SATELLITE

Modèle SATELLITE — hotspot WiFi payant à vouchers

Kit complet pour monter un cybercafé / une zone WiFi payante autour d'un routeur MikroTik : portail captif multilingue, vouchers à durée, caisse Android et caisse web. Ce kit est la version générique du système en exploitation à Amdjarass (Niger).

Aucun secret n'est inclus : tous les identifiants sont des marqueurs @@...@@ à remplir pour votre site.

Contenu

Dossier Rôle
routeur/config-modele.rsc configuration RouterOS complète, à importer sur un routeur neuf
portail/ les 6 pages du portail captif + style.css + i18n.js (fr/ar/en/zh)
caisse-web/ caisse en Python (bibliothèque standard), écran tactile navigateur
caisse-android/ caisse Android (Kotlin) : vente, rapport, clients, QR code
deploiement/ unité systemd de la caisse web
docs/ guide d'exploitation et retours de terrain
personnaliser.sh génère une copie du kit aux valeurs de votre site

Mise en service, de zéro

  1. Fiche du site

    cp site.conf.exemple site.conf
    $EDITOR site.conf          # nom, SSID, plan d'adressage, PIN, mots de passe
    ./personnaliser.sh

    Une copie personnalisée est écrite à côté du kit. On travaille ensuite dedans.

  2. Routeur — le remettre à zéro avec sa configuration par défaut, lui donner un mot de passe admin, puis :

    /import file-name=config-modele.rsc
    /user set admin password="..."
  3. Portail — téléverser le contenu de portail/ dans le dossier /hotspot du routeur, par FTP avec le compte admin (le compte caisse n'a pas la politique ftp) :

    curl -T portail/login.html ftp://<ip-routeur>/hotspot/login.html --user admin:<mdp>
  4. Caisse web (facultative, sert de secours) — sur un PC du réseau :

    ssh-keygen -t ed25519 -f caisse-web/cle_caisse -N ''
    # importer la clé publique sur le routeur, compte 'caisse'
    sudo cp deploiement/satellite-caisse.service /etc/systemd/system/
    sudo systemctl enable --now satellite-caisse
  5. Caisse Android — compiler avec le JDK 21 (Gradle 8.14.3 refuse le JDK 26) :

    JAVA_HOME=/usr/lib/jvm/java-21-openjdk gradle assembleDebug
    adb install -r app/build/outputs/apk/debug/app-debug.apk

    Puis mettre le téléphone en bypass du portail (/ip hotspot ip-binding, par MAC).

Ce qu'il faut savoir avant de commencer

docs/RETOURS-TERRAIN.md rassemble les pièges qui ont coûté du temps sur le premier site : ils se reproduiront à l'identique ailleurs. À lire avant l'installation.

Matériel

Licence et responsabilité

Modèle interne. Régénérer tous les mots de passe et toutes les clés pour chaque site : ne jamais réutiliser ceux d'un autre déploiement.

Modèle SATELLITE — documentation générique. Les identifiants réels ne figurent pas dans ces pages.