Afficher le code QR de l'appareil final dans la console
Pour les tests, la validation et l'enregistrement dans un fichier
Support CLI en cours, voir #1392 ;
$ ttn-lw-cli device generate-qr app1 dev1 --file qr.png
Pouvoir voir et enregistrer les codes QR dans la console
Il existe plusieurs types de codes QR que l'utilisateur doit pouvoir choisir.
Je suggérerais de générer le code QR dans le navigateur, en utilisant par exemple qrcode.react
La question est surtout de savoir d'où vient le contenu. Nous avons probablement un "code QR de réclamation" qui nécessite le claim_authentication_code
stocké dans JS, mais nous pourrions également avoir d'autres codes QR qui nécessitent d'autres composants.
Nous avons quelques options;
pkg/webui
, afin qu'il sache de quels champs il a besoin et comment tout est formaté. C'est essentiellement ainsi que fonctionne la CLI, car elle importe pkg/qrcode
EndDeviceRegistry
et JsEndDeviceRegistry
avec rpcs pour lister les formats et générer des valeurs de code QR. Cela permet à la console de découvrir les codes QR et évite d'implémenter des codes QR en Javascript (bien que ce ne soit pas sorcier)@htdvisser qu'en pensez-vous ?
Peut revoir
Je vois de la valeur dans une approche où le backend génère des codes QR. De cette façon, nous pouvons également les rendre disponibles via nos API, peut-être même rendus en svg/png/pdf. Nous n'aurions pas à réimplémenter le rendu QR dans chaque client (au cas où nous voudrions des clients iOS/Android/...) et pouvons simplement utiliser les images rendues directement.
Bien sûr, mais dans la V3, il n'y a pas de "backend", en particulier lorsque les champs concernés sont répartis sur plusieurs composants.
Nous pourrions:
EndDevice
(futur également Gateway
) avec le masque de champ demandéEndDevice
au service gRPC et laissez-le restituer le code QR (retour sous forme de blob d'image et/ou [][]bool
bitmap et/ou valeur de texte)Je suis d'accord pour générer le code QR sur le frontend également, mais je suis d'accord avec @htdvisser qu'une approche backend serait plus polyvalente.
C'est déjà en cours, voir ici; https://github.com/TheThingsNetwork/lorawan-stack/pull/1413/files#diff -9cb528d150f69af9e93f350e10df9c7fR86
Ajout de l'aide recherchée pour une nouvelle recrue pour ramasser cela
Je pense que nous avons besoin d'une contribution de @kschiffer pour UX car il semble que le côté serveur soit prêt et puisse générer des codes qr pour les périphériques finaux.
Reprenons cela dans une prochaine version.
Les références:
Avec la prise en charge actuelle de l'API, cela devrait être très simple. L'image est générée au format PNG dans la taille souhaitée et doit seulement être affichée quelque part.
@kschiffer pour des idées sur l'endroit où mettre l'image.
BTW, ce serait vraiment bien de pouvoir également enregistrer l'image.
Commentaire le plus utile
Bien sûr, mais dans la V3, il n'y a pas de "backend", en particulier lorsque les champs concernés sont répartis sur plusieurs composants.
Nous pourrions:
EndDevice
(futur égalementGateway
) avec le masque de champ demandéEndDevice
au service gRPC et laissez-le restituer le code QR (retour sous forme de blob d'image et/ou[][]bool
bitmap et/ou valeur de texte)