Aller au contenu

Transport scolaire

En une phrase

Le module Transport convertit votre ramassage scolaire chaotique (parents qui s'inquiètent, conducteurs sans listing, chefs d'école sans visibilité) en suivi temps réel avec notification automatique à chaque montée/descente — c'est l'un des arguments commerciaux les plus puissants d'Argon.

Cet article couvre la configuration, le workflow chauffeur, le suivi parent, la sécurité (cas d'urgence, élève qui descend au mauvais arrêt), et les stratégies tarifaires.


Pourquoi le suivi transport est critique

Le drame typique sans Argon

Le ramassage scolaire est souvent le service le plus risqué d'une école :

  • Un enfant manque dans le bus du matin → personne ne sait
  • Un parent panique parce que son enfant n'est pas rentré (ou est rentré en retard)
  • Le bus a un retard de 40 minutes sans que personne en soit averti
  • Disputes parents-école ("Vous avez perdu mon enfant !")
  • Accidents où on ne sait pas qui était à bord

Statistique : dans une école avec ramassage scolaire, c'est le module qui génère le plus d'appels téléphoniques quotidiens (estimation : 15-30 appels/jour pour 100 élèves transportés).

Le constat avec Argon Transport

  • Chaque montée/descente d'élève est enregistrée et notifiée
  • Le parent reçoit instantanément : "Marie est montée à 7h05, arrêt Bastos"
  • Le directeur voit en temps réel quel bus est en route et où
  • En cas d'incident, liste exhaustive des élèves à bord
  • Géolocalisation capturée à chaque pointage (preuve, statistique)

Effet : appels téléphoniques anxieux divisés par 10. Confiance des parents multipliée par 3.


Architecture du module

┌──────────────────────────────────────────────────────────────┐
│                    Module Transport                          │
│                                                              │
│  ┌──────────┐    ┌─────────┐    ┌──────────┐  ┌───────────┐ │
│  │Véhicules │───▶│ Lignes  │───▶│ Arrêts   │  │Inscrip-   │ │
│  │(bus/cars)│    │(circuits│    │(géoloc)  │  │tions      │ │
│  └──────────┘    └─────────┘    └──────────┘  └───────────┘ │
│       │              │               │              │       │
│       └──────────────┴───────────────┴──────────────┘       │
│                          │                                  │
│                          ▼                                  │
│                   ┌─────────────┐                           │
│                   │   Trajets   │  (instances quotidiennes) │
│                   └──────┬──────┘                           │
│                          │                                  │
│                          ▼                                  │
│                   ┌─────────────┐                           │
│                   │ Pointages   │  (montées/descentes)      │
│                   │ + Géoloc    │                           │
│                   └─────────────┘                           │
└──────────────────────────────────────────────────────────────┘

Configuration (admin)

1. Véhicules

Admin → Transport → onglet Véhicules → Nouveau véhicule

Champ Importance Exemple
Nom interne Identification simple Bus 1, Car bleu
Plaque d'immatriculation Légal CE 1234 AB
Capacité (places assises) Sécurité 30
Marque + modèle Optionnel Toyota Coaster
Année Optionnel 2020
Conducteur principal Lien vers compte sélection utilisateur
Document assurance (upload PDF) Légal scan
Document carte grise (upload PDF) Légal scan
Date prochaine visite technique Sécurité 15/12/2026
Actif Toggle Oui / Non

Pourquoi tracker tout ça : en cas de contrôle MINTRANSPORT ou d'incident, vous devez prouver que le véhicule était conforme.

2. Lignes (circuits)

Une ligne = un circuit régulier (ex : "Ramassage matin centre-ville").

Admin → Transport → onglet Lignes → Nouvelle ligne

Champ Exemple
Code unique L01, L02 (court, mnémotechnique)
Nom Centre-ville matin
Type matin (école → arrêts), soir (arrêts → école), aller_retour
Véhicule affecté Bus 1
Conducteur (peut différer du conducteur principal du véhicule)
Heure de départ 06:30
Heure d'arrivée prévue 07:30
Jours actifs Lundi-Vendredi (par défaut)
Couleur #FF5733 (pour distinction visuelle)

3. Arrêts (sur la ligne)

Pour chaque ligne, définir les arrêts dans l'ordre du circuit.

Ligne → onglet Arrêts → Ajouter un arrêt

Champ Exemple
Ordre dans la ligne 1, 2, 3, …
Nom de l'arrêt Carrefour Bastos
Adresse Bastos, après pharmacie BHM
Latitude 3.8901 (optionnel — sera captée par chauffeur)
Longitude 11.5234
Heure prévue de passage 06:45

Pourquoi la géolocalisation : au pointage, Argon capture la position GPS du chauffeur — preuve qu'il était bien à l'arrêt. Permet aussi le suivi temps réel côté parent.

4. Inscriptions élèves à une ligne

Admin → Transport → onglet Inscriptions → Inscrire un élève

Champ Exemple
Élève Marie Mballa
Ligne L01 — Centre-ville matin
Arrêt de montée Carrefour Bastos
Arrêt de descente École (terminus)
Date début 01/09/2026
Date fin 31/07/2027
Tarif Hérité du frais Transport ou personnalisé

Important : l'inscription déclenche automatiquement la facturation du frais transport (si configuré).


Workflow chauffeur

Le chauffeur utilise une URL dédiée mobile-friendly : /transport-conduite.

Prérequis : compte admin + permission transport.process.

1. Démarrer un trajet

  1. /transport-conduite (URL dédiée)
  2. Démarrer un trajet :
    • Choisir la ligne (parmi celles assignées au chauffeur)
    • Sens (aller ou retour)
    • Kilométrage début (optionnel — pour le suivi carburant)
  3. Confirmer

Effet :

  • Argon crée un trajet instancié (date du jour, ligne, chauffeur)
  • Affiche la liste des élèves attendus (selon les inscriptions actives)
  • Le mode pointage s'active

2. Pointer chaque élève à chaque arrêt

À chaque arrêt, pour chaque élève :

  • Montée (bouton vert) : élève monte dans le bus
  • Descente (bouton rouge) : élève descend
  • Absent (bouton gris) : élève n'est pas présent

Géolocalisation : capturée automatiquement (si autorisée par l'OS du téléphone) lors du pointage. Sert de preuve.

Notification parent : déclenchée immédiatement :

"🚌 Marie est montée dans le bus à 7h05, arrêt Carrefour Bastos."

3. Terminer le trajet

Une fois tous les pointages faits (typiquement arrivée à l'école) :

  1. Terminer le trajet
  2. Kilométrage fin (pour calcul carburant)
  3. Notes éventuelles ("Retard de 10 min cause embouteillage", "Incident M.X")
  4. Confirmer

Effet :

  • Trajet passe en statut termine
  • Heure d'arrivée enregistrée
  • Stats du jour mises à jour

Mode hors-ligne (avenir)

Pour la v1 : il faut du réseau pour pointer en temps réel.

Roadmap : mode offline-first où le pointage est stocké localement et synchronisé dès retour réseau. À venir.

Workaround actuel : si pas de réseau, noter sur papier + saisir au retour à l'école.


Côté parent : suivi temps réel

/parent/transport : interface qui montre, par enfant inscrit :

  • Ligne fréquentée + arrêts
  • Statut du trajet du jour : pas commencé / en cours / terminé
  • Dernier pointage : icône ↑ (montée) ou ↓ (descente) + heure + arrêt
  • Position du bus (si géoloc activée) : carte avec point bus + itinéraire restant
  • Historique des 30 derniers trajets

Notifications push reçues

Pour chaque pointage de son enfant :

  • Matin : "Marie est montée dans le bus à 7h05, arrêt Bastos"
  • Matin : "Marie est arrivée à l'école à 7h32"
  • Soir : "Marie est montée dans le bus à 16h05"
  • Soir : "Marie est descendue à 16h28, arrêt Bastos"

Le parent ne reçoit PAS les notifications des autres enfants (sécurité, vie privée).


Cas pratiques

Élève absent ce jour-là

Le chauffeur clique Absent sur la fiche élève à l'arrêt.

Effet :

  • Pas de notification automatique au parent (logique : si l'enfant est resté à la maison, le parent le sait)
  • Le pointage absent est enregistré
  • Statistiques fréquentation mises à jour

Notification d'absence : ce n'est pas le rôle du module Transport. C'est le module Présences (à l'école) qui détecte et notifie.

Élève qui prend le bus exceptionnellement

Cas : un élève normalement non inscrit veut prendre le bus une fois.

Procédure :

  1. Inscrire l'élève à la ligne avec date début = aujourd'hui et date fin = aujourd'hui
  2. Au prochain trajet, il apparaîtra dans la liste
  3. Facturation : selon votre politique (gratuit, frais ponctuel)

Alternative : pas d'inscription, le chauffeur ajoute manuellement l'élève au trajet (mode "passager exceptionnel"). Moins propre mais possible.

Élève descend au mauvais arrêt

Cas : Marie devait descendre à Bastos mais demande à descendre à Etoa-Meki (arrêt précédent).

Procédure :

  • Le chauffeur pointe sa descente à Etoa-Meki
  • La notification au parent indique la réalité : "Marie est descendue à Etoa-Meki à 16h22"
  • Audit log montre l'écart entre l'arrêt prévu et l'arrêt réel
  • Au directeur de décider si c'est une exception tolérée ou un problème (politique école)

Élève qui rate son bus

Cas : Marie arrive après le départ du bus.

Procédure :

  • Le chauffeur ne fait rien (l'élève n'est pas dans le bus)
  • Au pointage du trajet, le chauffeur marque Marie comme absent
  • Le parent ne reçoit pas de notification de montée (il comprend que son enfant n'a pas pris le bus)

Recommandation : la famille doit avoir un plan B (trajet famille, taxi). Pas d'attente au-delà de 5 minutes par l'école.

Incident en cours de trajet (accident, panne)

Procédure :

  1. Le chauffeur appelle la direction immédiatement (téléphone, pas Argon)
  2. La direction active une procédure d'urgence (voir manuel sécurité école)
  3. Argon comme outil de support :
    • La direction consulte la liste des élèves à bord (les monte non encore descendu)
    • Contacte les familles
    • Trace tout dans les notes du trajet

Argon n'a pas vocation à gérer la communication d'urgence (téléphone est plus rapide). Mais il fournit la liste des élèves à bord — info critique.


Suivi et statistiques

Admin → Transport → onglet Aperçu :

  • Nombre de trajets aujourd'hui / cette semaine / ce mois
  • Taux de présence (pointages monte / pointages attendus)
  • Kilométrage total parcouru
  • Ponctualité (retards moyens)
  • Top arrêts (les plus fréquentés)
  • Élèves non inscrits malgré besoin signalé (croisement avec adresses domicile)

Statistiques par véhicule

  • Kilométrage cumulé
  • Date dernière révision
  • Consommation moyenne (si saisie)
  • Incidents déclarés

Statistiques par chauffeur

  • Trajets effectués
  • Ponctualité moyenne
  • Pointages effectués (signal d'attention au travail)

Tarification

La tarification transport est gérée via le module Finances (voir Configurer les frais § Transport).

Stratégies tarifaires

Modèle Pour qui ? Avantage
Forfait annuel unique Petites écoles, 1-2 lignes Simple, prévisible
Tarif par zone Villes étendues Juste (qui va loin paie plus)
Mensuel (10 mensualités) Souplesse parents Charge admin modérée
Par trajet Rare Trop complexe en pratique

Notre recommandation : forfait annuel avec 3 zones (proche / moyen / éloigné) + paiement en 3 tranches trimestrielles.

Lien automatique inscription → facturation

Si vous avez configuré un frais transport obligatoire :

  • À chaque inscription d'un élève à une ligne, Argon ajoute automatiquement la ligne transport à sa facture annuelle
  • Pas de saisie manuelle nécessaire

Sécurité et conformité

Permissions requises

  • Chauffeur : compte avec rôle admin + permission transport.process UNIQUEMENT
  • Pas de droit financier
  • Pas de droit pédagogique
  • Juste pointer les élèves de sa ligne

Cette séparation stricte protège vos données : si un chauffeur perd son téléphone, l'accès à Argon est limité au strict nécessaire.

Audit log

Chaque pointage est tracé :

  • Qui a pointé
  • Quel élève
  • À quel arrêt
  • Statut (monté / descendu / absent)
  • Géolocalisation captée
  • Date + heure précise

Conservé 5 ans minimum.

Conformité MINTRANSPORT

  • Liste élèves à bord disponible en cas de contrôle (export PDF)
  • Documents véhicule stockés dans Argon (cartes grises, assurances)
  • Documents chauffeur : à compléter (permis, ATPL le cas échéant)

Erreurs courantes

Symptôme Cause Solution
Chauffeur ne voit pas la liste élèves Pas d'inscriptions actives sur cette ligne Vérifier inscriptions, date début/fin
Notification parent pas reçue Push notifications désactivées chez parent Demander au parent de vérifier les permissions du navigateur
Géolocalisation manquante Permissions GPS refusées par l'OS du chauffeur Activer dans paramètres téléphone
Trajet bloqué en en_cours Chauffeur a oublié de terminer Admin peut clôturer manuellement
Liste élèves chargeant lentement Beaucoup d'inscriptions OU faible réseau Optimisation à venir, en attendant : 4G obligatoire

"Aucun élève ne s'affiche à l'arrêt"

Causes possibles :

  1. La date d'inscription n'a pas commencé (date début dans le futur)
  2. Aucun élève inscrit avec cet arrêt_montee ou arrêt_descente
  3. Filtre "sens" incorrect (matin vs soir)

Bonnes pratiques

  • Tester un trajet en conditions réelles avant la rentrée (vide, juste chauffeur + un admin)
  • Former les chauffeurs : ils doivent maîtriser le pointage en 30 secondes
  • Téléphone dédié au bus (pas le téléphone perso du chauffeur — risque de coupure)
  • Géolocalisation activée systématiquement
  • Liste papier de secours dans le bus (au cas où Argon coupe)
  • Ne jamais laisser un trajet en_cours non clos plus d'une journée
  • Ne pas saisir manuellement des pointages "pour rattraper" en fin de journée — perte de crédibilité des données

Checklist pré-rentrée

  • Tous les véhicules créés avec documents (carte grise + assurance scannés)
  • Toutes les lignes créées avec arrêts ordonnés et géolocalisés
  • Tous les chauffeurs ont un compte admin avec permission transport.process
  • Tous les chauffeurs ont testé l'app sur leur téléphone
  • Frais transport configuré dans Finances
  • Inscriptions élèves saisies avec arrêts corrects
  • Test à blanc d'un trajet (avec 1-2 élèves test)
  • Annonce aux parents : "Inscrivez vos enfants au transport, voici les lignes"

Voir aussi