Scanner QR / code-barres
Stockaj Kiosk supporte les lecteurs de QR codes et de codes-barres USB HID — c'est-à-dire les scanners qui émulent un clavier et envoient les caractères suivis d'une touche Entrée.
Scanners compatibles
Tout scanner USB qui fonctionne comme un clavier émulé (HID) est compatible. C'est le mode par défaut de la grande majorité des scanners du marché.
Testez votre scanner en ouvrant un éditeur de texte : si le code scanné apparaît comme du texte tapé au clavier suivi d'un retour à la ligne, il est compatible.
Comment ça marche
- Le scanner envoie les caractères du code un par un, comme des frappes clavier
- Le kiosk détecte les frappes rapides (moins de 100 ms entre chaque caractère) et les accumule
- Lorsque la touche Entrée est reçue (ou après un timeout), le code complet est traité
Ce mécanisme permet de distinguer un scan d'une saisie manuelle au clavier.
QR codes Stockaj
Les QR codes Stockaj utilisent le format STK:1:{type}:{uuid}, où {type} identifie ce qui a été scanné :
| Type | Signification |
|---|---|
i | Article (outil) |
v | Variante (unité sérialisée) |
r | Emprunt (mouvement) |
c | Bénévole |
Le kiosk tolère les petites particularités des scanners : les séparateurs alternatifs (; ou |), les espaces autour du code et les caractères de contrôle invisibles sont normalisés automatiquement. Les codes-barres simples d'articles ou de variantes (non-QR) sont aussi supportés — le kiosk les compare au code de l'article ou de la variante.
Scanner sur le cockpit
Le scanner est toujours actif sur le cockpit. Son comportement est intelligent : il détermine automatiquement l'action à effectuer selon ce qui a été scanné.
| Situation | Comportement |
|---|---|
| L'article scanné fait partie d'un emprunt actif | Sélectionne le bénévole et oriente l'article vers un retour |
| L'article scanné est disponible | Ajoute l'article au panier de location |
| Un QR code de bénévole est scanné | Sélectionne ce bénévole |
| L'article n'est pas trouvé | Affiche un message d'erreur et émet un son d'erreur |
| Erreur réseau | Affiche un message d'erreur |

Écrans où le scanner est actif
| Écran | Scanner actif | Comportement |
|---|---|---|
| Cockpit | ✅ | Détection intelligente : emprunt, retour ou sélection d'un bénévole selon ce qui est scanné |
| Qu'est-ce qui est dehors ? | ✅ | Met en évidence la ligne sortie correspondante et l'ajoute à la sélection de retour |
| Mode assisté | ✅ | Actif à l'étape des articles — ajoute l'article scanné à l'emprunt |
| Configuration | ❌ | Le scanner n'est pas actif |
Son de scan
Le kiosk émet un court son à chaque scan — une tonalité de confirmation en cas de succès et une tonalité distincte en cas d'erreur. Vous pouvez le désactiver avec l'option Son de scan dans les paramètres.
Configuration du timeout
Le délai entre les frappes pour considérer qu'il s'agit d'un scan est configurable. La valeur par défaut est 100 ms, ce qui convient à la plupart des scanners.
Si votre scanner envoie les caractères plus lentement, vous pouvez augmenter cette valeur via la variable d'environnement :
VITE_SCANNER_TIMEOUT_MS=150
Dépannage
| Problème | Solution |
|---|---|
| Le scan n'est pas détecté | Vérifiez que le scanner est en mode HID (clavier). Essayez sur un éditeur de texte. |
| Le scan est incomplet | Augmentez le timeout (VITE_SCANNER_TIMEOUT_MS) |
| La saisie au clavier déclenche des scans | Diminuez le timeout si vous avez augmenté la valeur |
| « Code inconnu » après un scan | L'article n'existe pas dans Stockaj — vérifiez qu'il est bien enregistré |
| Le scan ne fonctionne pas sur la page de configuration | Le scanner est désactivé sur cet écran |