Mr. Smith
Commander
- Registriert
- Mai 2010
- Beiträge
- 2.257
Hallo zusammen,
diese Anfrage ist etwas spezieller und ich hoffe, dass mir hierbei jemand behilflich sein kann.
Ohne unnötig ins Detail zu gehen: Es muss ein SignatureString auf eine gewisse Art und Weise aufbereitet werden, um daraus am Ende einen für mich verwertbaren QR-Code erzeugen zu können.
Momentan mache ich das mehr oder weniger von Hand und das ist sehr mühsam.
Ziel wäre am Ende eine Batch-File o.ä. zu haben, die mir die Arbeit zumindest zum Teil abnehmen kann.
Als Beispiel bekomme ich folgende Textsequenz per Mail als *.txt o.ä. rein:
eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Diese Signatur besteht grundsätzlich aus drei Teilen (getrennt durch Punkte):
eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Der erste Teil (rot) sieht immer gleich aus und sollte aus der Sequenz automatisch entfernt werden (inkl. des Punktes), sodass folgendes verbleibt:
X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Beim blauen Part handelt es sich um eine Base64-URL die in einen normalen String konvertiert werden muss.
Dies erledigt z.B. 'https://www.base64decode.org/' So wird aus dem blauen Part (wieder ohne Punkt) letztlich:
_R1-AT2_123456_51_2018-01-03T15:46:17_0,00_0,00_0,00_0,00_0,00_Ma9yvxpUdp4=_01E2E46DF428EAE46ACCB12958_rAeo3Q1dw5Q=
Der letzte Teil (orange) muss ebenfalls umgewandelt werden (von Base64-URL auf Base64) und zusätzlich muss die Länge des Datensatzes am Ende durch 4 teilbar sein. Dies mache ich aktuell ebenfalls von Hand. Hier genügt eine einfache Zeichenersetzung.
Im Grunde muss man nur aus jedem "_" ein "/" machen und aus jedem "-" wird ein "+".
Am Ende also aus:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
das:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g
Diese Sequenz hat aktuell 86 Ziehen und soll am Ende durch 4 teilbar sein.
Die 2 fehlenden Zeichen müssen am Ende mit "=" aufgefüllt werden. Also:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g==
Der Datensatz kann aber in seiner Ausgangsform auch mal 82 Zeichen haben und muss dann auf 84 Zeichen ergänzt werden oder auch mal von 91 auf 92 Zeichen. Die Länge ist leider variabel.
Beide Teile werden dann am Ende zusammenkopiert und durch "_" voneinander getrennt:
R1-AT2_123456_51_2018-01-03T15:46:17_0,00_0,00_0,00_0,00_0,00_Ma9yvxpUdp4=01E2E46DF428EAE46ACCB12958_rAeo3Q1dw5Q=_imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g==
Abschließend erzeuge ich daraus einen QR-Code mit einem beliebigen QR-Code Generator.
Die Frage ist jetzt ob bzw. in wie weit sich das automatisieren lässt.
Wenn ich am Ende einen String erhalten würde, den ich nur noch in einen QR-Code Generator schmeissen muss, wäre das extrem hilfreich. Allerdings verfüge ich selbst nicht über die nötigen Kenntnisse, das zu realisieren. Any ideas?
diese Anfrage ist etwas spezieller und ich hoffe, dass mir hierbei jemand behilflich sein kann.
Ohne unnötig ins Detail zu gehen: Es muss ein SignatureString auf eine gewisse Art und Weise aufbereitet werden, um daraus am Ende einen für mich verwertbaren QR-Code erzeugen zu können.
Momentan mache ich das mehr oder weniger von Hand und das ist sehr mühsam.
Ziel wäre am Ende eine Batch-File o.ä. zu haben, die mir die Arbeit zumindest zum Teil abnehmen kann.
Als Beispiel bekomme ich folgende Textsequenz per Mail als *.txt o.ä. rein:
eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Diese Signatur besteht grundsätzlich aus drei Teilen (getrennt durch Punkte):
eyJhbGciOiJFUzI1NiJ9.X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Der erste Teil (rot) sieht immer gleich aus und sollte aus der Sequenz automatisch entfernt werden (inkl. des Punktes), sodass folgendes verbleibt:
X1IxLUFUMl8xMjM0NTZfNTFfMjAxOC0wMS0wM1QxNTo0NjoxN18wLDAwXzAsMDBfMCwwMF8wLDAwXzAsMDBfTWE5eXZ4cFVkcDQ9XzAxRTJFNDZERjQyOEVBRTQ2QUNDQjEyOTU4X3JBZW8zUTFkdzVRPQ.imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
Beim blauen Part handelt es sich um eine Base64-URL die in einen normalen String konvertiert werden muss.
Dies erledigt z.B. 'https://www.base64decode.org/' So wird aus dem blauen Part (wieder ohne Punkt) letztlich:
_R1-AT2_123456_51_2018-01-03T15:46:17_0,00_0,00_0,00_0,00_0,00_Ma9yvxpUdp4=_01E2E46DF428EAE46ACCB12958_rAeo3Q1dw5Q=
Der letzte Teil (orange) muss ebenfalls umgewandelt werden (von Base64-URL auf Base64) und zusätzlich muss die Länge des Datensatzes am Ende durch 4 teilbar sein. Dies mache ich aktuell ebenfalls von Hand. Hier genügt eine einfache Zeichenersetzung.
Im Grunde muss man nur aus jedem "_" ein "/" machen und aus jedem "-" wird ein "+".
Am Ende also aus:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM_iAv60mglD_Ysf08HYBCOn4vC8ISaXkgamKgGic-PIy9-LpDvs3g
das:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g
Diese Sequenz hat aktuell 86 Ziehen und soll am Ende durch 4 teilbar sein.
Die 2 fehlenden Zeichen müssen am Ende mit "=" aufgefüllt werden. Also:
imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g==
Der Datensatz kann aber in seiner Ausgangsform auch mal 82 Zeichen haben und muss dann auf 84 Zeichen ergänzt werden oder auch mal von 91 auf 92 Zeichen. Die Länge ist leider variabel.
Beide Teile werden dann am Ende zusammenkopiert und durch "_" voneinander getrennt:
R1-AT2_123456_51_2018-01-03T15:46:17_0,00_0,00_0,00_0,00_0,00_Ma9yvxpUdp4=01E2E46DF428EAE46ACCB12958_rAeo3Q1dw5Q=_imjuZePqAY07MYcIuw8lQbOWOM5cNUNxQM/iAv60mglD/Ysf08HYBCOn4vC8ISaXkgamKgGic+PIy9+LpDvs3g==
Abschließend erzeuge ich daraus einen QR-Code mit einem beliebigen QR-Code Generator.
Die Frage ist jetzt ob bzw. in wie weit sich das automatisieren lässt.
Wenn ich am Ende einen String erhalten würde, den ich nur noch in einen QR-Code Generator schmeissen muss, wäre das extrem hilfreich. Allerdings verfüge ich selbst nicht über die nötigen Kenntnisse, das zu realisieren. Any ideas?
Zuletzt bearbeitet: