Format de données QR

Import QR et format de données QR

Les codes QR d'ArxSilex MapTools sont un format d'échange versionné pour des données compactes de l'app. Cette page explique l'usage, la confidentialité et les détails techniques.

Dernière mise à jour : 28 mai 2026

Résumé

Vue d'ensemble pour l'usage et le développement

Cette section résume ce que contiennent les codes QR, comment ils peuvent être générés techniquement et pourquoi l'import se fait localement.

Contenu QR

Les QR peuvent contenir coordonnées, noms d'objets, notes, parties de projet ou informations de groupe; les QR de groupe sont donc confidentiels.

Compatibilité technique

Des outils propres peuvent générer des QR s'ils respectent version, limites de taille, encodage et règles de validation.

Import local

Le lien n'est pas un téléversement. Le serveur ne traite pas le payload; l'app lit les données localement depuis le lien QR.

Structure d'URL

Le lien QR

Les codes QR utilisent un app link HTTPS vérifié. Le bloc de données est placé après le signe de fragment.

https://www.arxsilex.de/app/maptools/qr#d=<base64url-json>

La partie après # n'est normalement pas envoyée au serveur web. Le même lien sert donc d'app link et de repli vers cette explication.

Confidentialité

Partager confidentiellement

Les QR peuvent contenir coordonnées, noms d'objets, notes, parties de projet ou informations de groupe.

Pas de transfert automatique

Les données QR sont traitées localement. Ce site ne décode ni ne stocke le payload.

Géodonnées

Les positions et objets de projet peuvent être des données personnelles. Partagez les QR seulement avec les bons destinataires.

Groupes

Les QR de groupe contiennent la clé du groupe. Toute personne qui scanne le code peut rejoindre le groupe ou importer ses données.

Spécification technique

Statut du format

La version 1 est actuellement documentée. Les versions plus récentes peuvent être refusées par des apps plus anciennes.

ÉlémentValeurNote
Current HTTPS app linkhttps://www.arxsilex.de/app/maptools/qr#d=<payload>Chemin sans barre finale; c'est ainsi que l'app link Android est enregistré.
Documentation URLhttps://www.arxsilex.de/app/maptools/qr/index.htmlCette documentation web est servie comme index.html dans le dossier QR.
Legacy schemeasmaptools://qr?v=1&d=<payload>Format de compatibilité pour anciens lecteurs ou lecteurs externes.
Payload encodingBase64URL, UTF-8 JSONBase64 compatible URL sans padding; le contenu est du JSON UTF-8.
Schema versionv: 1Les versions inférieures à 1 sont invalides; les versions nouvelles peuvent être refusées.
Payload limit2,200 bytesLimite prudente pour générer et décoder les QR de manière fiable.
Incoming URI cap64 KiBLimite stricte pour les deep links entrants.
QR renderingZXing QR, error correction M, 512 pxThe app renders 512 px QR bitmaps and may place a small app logo overlay.

Schema

Schéma compact des objets

Les QR d'objets utilisent des clés courtes pour garder le code petit. Les clés restent des identifiants techniques.

CléSignificationChamps
vVersion du schémainteger
mMarqueursi, n, inf, la, lo, ic, cl
cCerclesi, n, la, lo, r, cl, sc, fc
dDistancesi, n, la, lo, ea, eo, cl
bRelèvements/directionsi, n, la, lo, bg, ln, iv, bc, cl
aSurfacesi, n, pts, cl, sc, fc
rRoutesi, n, pts, cl

Groups

Payloads de groupe typés

Les QR de groupe utilisent des payloads JSON typés. La clé du groupe est confidentielle.

type: group

Contient nom, group_id, group_key, origine, couleur, description et messages rapides optionnels.

type: objects

Encapsule les données d'objets dans un champ objects.

type: group_with_objects

Combine profil de groupe et objets optionnels. L'app peut importer le groupe, les objets ou les deux.

Validation

Validation et limites

L'app vérifie les données QR avant import et refuse géométrie invalide ou données trop grandes.

Coordonnées

Latitude -90 à 90, longitude -180 à 180. Les coordonnées exportées sont arrondies à 5 décimales.

Géométrie

Les ID doivent être supérieurs à 0. Les routes nécessitent au moins 2 points distincts et les surfaces au moins 3.

Relèvements

Relèvement 0 à 360 degrés, correction -180 à 180 degrés, longueur et intervalle au plus 1 000 km.

JSON

Exemples

Exemples avant encodage Base64URL. Dans le vrai lien QR, le JSON encodé se trouve dans #d=...

{
 "v": 1,
 "m": [
 {"i":1,"n":"Start","la":48.13715,"lo":11.57612,"ic":"PIN"}
 ]
}
{
 "v": 1,
 "type": "group",
 "name": "Team Alpha",
 "group_id": 123456,
 "group_key": "shared-secret",
 "originLat": 48.13715,
 "originLon": 11.57612
}