Geogram est une application de suivi d’aventures en semi-temps réel qui ne nécessite aucun autre outil qu’un téléphone avec l’application Telegram. Je l’ai créée en mars 2023 pour le 727. J’étais fatigué de voir des solutions onéreuses et lourdes à mettre en œuvre (surtout pour les organisateurs d’évènements, avec location des balises, demande de caution, assurances…). Depuis, Geogram a été utilisée par des centaines d’aventuriers. On peut non seulement se géolocaliser, mais partager des photos, des textes, tant avec les autres aventuriers que ses proches.
Je viens de passer dix jours à réviser le code de Geogram pour le rendre plus réactif et simplifier l’interface. J’en profite pour distribuer le code sur GitHub (sans lui associer de documentation).
L’application repose sur @GeoBikepacking_bot, un bot Telegram qui peut être invité dans des groupes pour gérer la géolocalisation des utilisateurs, alias aventuriers.
Désormais, dès qu’un message est posté sur le groupe, il est immédiatement pris en charge par Geogram (alors qu’initialement la prise en charge ne s’effectuait que toutes les dix minutes — j’ai remplacé le cron par un webhook).
Cette nouvelle approche permet de faire apparaître dans les groupes un menu pour piloter Geogram.
Le menu principal pointe vers le site associé au groupe sur Geogram et renvoie vers les menus utilisateur et administrateur.
L’utilisateur peut mettre à jour son avatar, accéder à son historique de géolocalisation et de message, voire effacer son historique.
Le menu administrateur, accessible uniquement par le créateur du groupe, permet de régler le comportement de Geogram. Par exemple, il existe désormais trois modes de fonctionnement : silencieux, tous les messages effacés dès leur prise en compte, normal, seules les géolocalisations sont effacées, verbose, rien n’est effacé.
L’administrateur peut même gérer individuellement les aventuriers.
La commande "/menu" réaffiche le menu en bas du groupe. Il n’y a plus d’autres commandes obscures à connaître.
Initialement, uniquement les GPX avec une seule trace étaient acceptés. J’ai ouvert la possibilité de traces multiples. J’avais besoin de cette fonction pour le i727 2024 qui offre un itinéraire principal et trois short cuts. Logiquement le système supporte des traces de plus de 3 000 km (en fait il n’y a pas vraiment de limites et je peux jouer sur ce paramètre).
Côté interface web, exemple du g727 2023, je n’ai pas changé grand-chose. La plupart des aventures sont réservées aux aventuriers disposant du lien d’invitation envoyé par l’administrateur du groupe Telegram, mais il est possible de créer des aventures ouvertes en ITT, par exemple le 727. Tout le monde peut rejoindre librement le groupe et se géolocaliser. En revanche, après une semaine d’inactivité, les aventuriers disparaissent (leurs historiques ne sont pas pour autant effacés et on peut les retrouver dans la story du groupe).
Cette nouvelle version de Geogram sera mise à l’épreuve lors du i727 qui part le 8 mai 2024.
PS : En tant que projet Open Source, Geogram est actuellement hébergé sur mon serveur personnel, un vieux NAS Synology, qui risque de crouler sous les requêtes si des centaines d’aventuriers se mettent à échanger des messages. Si un sponsor veut financer l’hébergement, j’en serai ravi, tout comme développer des versions de Geogram à son image.
Test de la première version lors du 727.