QR-Code des Endgeräts in der Konsole anzeigen
Zum Testen, Validieren und Speichern in einer Datei
CLI-Unterstützung läuft, siehe #1392;
$ ttn-lw-cli device generate-qr app1 dev1 --file qr.png
QR-Codes in der Konsole sehen und speichern können
Es gibt mehrere Arten von QR-Codes, die der Benutzer auswählen muss.
Ich würde vorschlagen, den QR-Code im Browser zu generieren, zum Beispiel mit qrcode.react
Die Frage ist meist, woher die Inhalte kommen. Wir haben wahrscheinlich einen "QR-Code beanspruchen", der das in JS gespeicherte claim_authentication_code
benötigt, aber wir könnten auch andere QR-Codes haben, die andere Komponenten benötigen.
Wir haben ein paar Optionen;
pkg/webui
, damit es weiß, welche Felder es benötigt und wie alles formatiert ist. So funktioniert im Wesentlichen auch die CLI, da sie pkg/qrcode
importiertEndDeviceRegistry
und JsEndDeviceRegistry
mit rpcs, um Formate aufzulisten und QR-Code-Werte zu generieren. Dadurch kann die Konsole QR-Codes erkennen und vermeidet die Implementierung von QR-Codes in Javascript (obwohl es kein Hexenwerk ist).@htdvisser was denkst du?
Kann rezensieren
Ich sehe einen Wert in einem Ansatz, bei dem das Backend QR-Codes generiert. Auf diese Weise können wir sie auch über unsere APIs verfügbar machen, vielleicht sogar in svg/png/pdf gerendert. Wir müssten das QR-Rendering nicht in jedem Client neu implementieren (falls wir jemals iOS/Android/...-Clients wollen) und können einfach die gerenderten Bilder direkt verwenden.
Sicher, aber in V3 gibt es kein "Backend", besonders wenn die betreffenden Felder auf mehrere Komponenten verteilt sind.
Wir könnten:
EndDevice
(zukünftig auch Gateway
) mit der angeforderten Feldmaske bereitstellenEndDevice
an den gRPC-Dienst und lassen Sie ihn den QR-Code rendern (Rückgabe als Bild-Blob und/oder [][]bool
Bitmap und/oder Textwert)Ich bin damit einverstanden, den QR-Code auch im Frontend zu generieren, aber ich stimme @htdvisser zu, dass ein Backend-Ansatz vielseitiger wäre.
Es ist bereits in Arbeit, siehe hier; https://github.com/TheThingsNetwork/lorawan-stack/pull/1413/files#diff -9cb528d150f69af9e93f350e10df9c7fR86
Hinzufügen von Hilfe, die für neue Mitarbeiter gesucht wird, um dies abzuholen
Ich denke, wir brauchen etwas Input von @kschiffer für UX, da es scheint, dass die Serverseite bereit ist und QR-Codes für Endgeräte generieren kann.
Lassen Sie uns dies in einer nächsten Version aufgreifen.
Verweise:
Mit der aktuellen API-Unterstützung sollte es wirklich einfach sein. Das Bild wird im PNG-Format in der gewünschten Größe generiert und muss nur noch irgendwo gezeigt werden.
@kschiffer für Ideen, wo das Bild platziert werden kann.
Übrigens wäre es wirklich schön, das Bild auch speichern zu können.
Hilfreichster Kommentar
Sicher, aber in V3 gibt es kein "Backend", besonders wenn die betreffenden Felder auf mehrere Komponenten verteilt sind.
Wir könnten:
EndDevice
(zukünftig auchGateway
) mit der angeforderten Feldmaske bereitstellenEndDevice
an den gRPC-Dienst und lassen Sie ihn den QR-Code rendern (Rückgabe als Bild-Blob und/oder[][]bool
Bitmap und/oder Textwert)