axlemoxle
Goto Top

Datei per QR Code Teilen

Hallo,

ich habe einen Kunden, der möchte auf einfachem Wege eine Datei mit seinem Kunden teilen.
Idealerweise Datei irgendwo hochladen und dann wird ein QR Code ausgeworfen den er ausdruckt und dem Kunden mit gibt.

Soll selbst gehostet sein, damit die Daten nicht auf irgend einem Server rum lungern....

Nextcloud kann das prinzipiell, allerdings nur über die Weboberfläche und es sind doch einige Klicks bis man das hat was man möchte.

Hat jemand ne Idee wie man das smart lösen kann ?

Content-ID: 668625

Url: https://administrator.de/contentid/668625

Ausgedruckt am: 21.11.2024 um 12:11 Uhr

150704
150704 07.10.2024 aktualisiert um 22:23:15 Uhr
Goto Top
Einfach die Nextcloud API benutzen ...
Per API Datei hochladen, Freigabe-Link generieren lassen und vom Link einen QR Code erstellen
Nextcloud API-Aufruf für Upload und Erstellen einer Freigabe mit Ausgabe

https://docs.nextcloud.com/server/19/developer_manual/client_apis/OCS/oc ...
QR Code von nem String zu erstellen ist ja dann ein Klacks ...
https://github.com/TobiasPSP/Modules.QRCodeGenerator
colinardo
colinardo 09.10.2024, aktualisiert am 11.10.2024 um 14:10:55 Uhr
Goto Top
Servus,
hier mal etwas Beispiel-Code für den automatisierten Upload zu einer Nextcloud und Generierung eines QR-Codes nach dem Upload, inkl. anschließendem Dialog mit Anzeige des Codes und der Möglichkeit der Speicherung des Codes als Bilddatei oder für den direkten Ausdruck mit Druckvorschau und Druckereinstellungen oder Versand per Mail.
Es können entweder einzelne Dateien oder mehrere Dateien hochgeladen werden. Bei der Auswahl von mehreren Dateien wird ein Ordner erstellt und am Ende dieser freigegeben.
Zusätzlich kann ein Aufräumvorgang nach dem Upload angestoßen werden,, der ältere Dateien oder Ordner aus dem Upload-Ordner entfernt.

screenshot

back-to-topSkript-Download:

back-to-topnextcloud_upload_668625.zip

Wer es gebrauchen kann, viel Spaß damit.

Grüße Uwe
Michi91
Michi91 10.10.2024 um 07:59:25 Uhr
Goto Top
Sehr cool Uwe. Den PrintPreviewDialog kannte ich noch nicht, vielen Dank dafür, da gibts sicher Anwendungsfälle für face-smile
colinardo
colinardo 10.10.2024 um 08:08:42 Uhr
Goto Top
Zitat von @Michi91:

Sehr cool Uwe. Den PrintPreviewDialog kannte ich noch nicht, vielen Dank dafür, da gibts sicher Anwendungsfälle für face-smile

Keine Ursache, freut mich wenn's hilft 🙂.
axlemoxle
axlemoxle 10.10.2024 um 10:30:24 Uhr
Goto Top
Richtig geil,

die Passwortgenerierung funktioniert aber leider nicht....da kommt bei mir eine Fehlermeldung..

Davon abgesehen kommt beim Laden des Codesnippets für den QR Code immer ein Stop wo man Return drücken muss...kann man das QR-Snippet nicht fest einbauen, oder in den Ordner mit dem Script (wäre am Besten als Exe, oder?) damit das nicht jedes mal gedownloaded werden muss ?

Jetzt stelle ich mir vor, dass der Kunde nach und nach seine Dateien hochlädt, irgendwann quillt halt die Cloud auch über, kann man automatisch nach 2 Wochen oder so löschen ?
colinardo
colinardo 10.10.2024 aktualisiert um 10:44:53 Uhr
Goto Top
Zitat von @axlemoxle:

Richtig geil,

die Passwortgenerierung funktioniert aber leider nicht....da kommt bei mir eine Fehlermeldung..
Hatte ich nur vergessen den Type zu laden.
Kannst du aber auch jede andere Random Funktion zur Passwort-Erzeugung verwenden , war nur ein Beispiel.

Davon abgesehen kommt beim Laden des Codesnippets für den QR Code immer ein Stop wo man Return drücken muss...
Kann ich nicht bestätigen.

kann man das QR-Snippet nicht fest einbauen, oder in den Ordner mit dem Script (wäre am Besten als Exe, oder?) damit das nicht jedes mal gedownloaded werden muss ?
Ist schon implementiert. Die Funktion lädt die DLL automatisch in den Skriptordner sofern das Skript gespeichert wurde, ansonsten legt es die DLL im Temp-Ordner ab.
Also Skript fest in einem Ordner abspeichern dann wird die DLL auch nicht neu runtergeladen sondern direkt wieder aus dem Skript-Ordner verwendet und nicht neu runtergeladen!
Jetzt stelle ich mir vor, dass der Kunde nach und nach seine Dateien hochlädt, irgendwann quillt halt die Cloud auch über, kann man automatisch nach 2 Wochen oder so löschen ?
Lässt sich machen, geht alles 😉.
Kann ich bei Bedarf später noch ergänzen, obwohl man das ja auch die Nextcloud per Cron erledigen lassen könnte.
axlemoxle
axlemoxle 10.10.2024 um 10:44:43 Uhr
Goto Top
Ich bin irgendwie zu blöd dafür....

wenn ichs als .ps1 speichere und doppelt klicke, dann öffnet er es im editor
Wenn ich rechte Maus als Powershell ausführen klicke, dann öffnet es sich kurz und verschwindet direkt wieder...

Bislang hatte ich wenig Berührung mit Scripten
colinardo
colinardo 10.10.2024 aktualisiert um 10:56:14 Uhr
Goto Top
Zitat von @axlemoxle:

Ich bin irgendwie zu blöd dafür....

wenn ichs als .ps1 speichere und doppelt klicke, dann öffnet er es im editor
Wenn ich rechte Maus als Powershell ausführen klicke, dann öffnet es sich kurz und verschwindet direkt wieder...

Bislang hatte ich wenig Berührung mit Scripten

Dann solltest du dich vorher erst noch in die Grundlagen einlesen und vor allem die Executionpolicy bei der Ausführung von Skripten anpassen.

Da das hier immer wieder kommt und ich das nicht jedes mal runterbeten will, ist es hier detailliert nachzulesen.

Powershell Leitfaden für Anfänger
axlemoxle
axlemoxle 10.10.2024 aktualisiert um 11:43:25 Uhr
Goto Top
Hab das mal bisschen angepasst, als ich die Funktion selber gesucht hatte habe ich dann gesehen dass du das auch aktualisiert hattest...egal, so lernt man.

Jetzt habe ich noch das Problem dass das Powershell Fenster am Ende stehen bleibt, Exit Befehl hats irgendwie nicht gebracht.

Für den geplanten Anwendungsfall wäre aber evtl. eine .exe ohnehin die sinnvollere Lösung denke ich.
Habe die mal aus der ps1 kompiliert, damit ist es dann super praktikabel

Ist es denkbar mehrere Dateien zu uploaden und die über einen Code zu teilen, evtl. sogar im Dateiauswahlfenster mehrere wählbar ?
Dann müsste die Cloud halt Ordner anlegen und da die Dateien speichern.
colinardo
colinardo 11.10.2024 aktualisiert um 14:18:38 Uhr
Goto Top
Ist es denkbar mehrere Dateien zu uploaden und die über einen Code zu teilen, evtl. sogar im Dateiauswahlfenster mehrere wählbar ?
Dann müsste die Cloud halt Ordner anlegen und da die Dateien speichern.

Selbstverständlich, alles ist machbar wenn man den Workflow kennt. Habe das ganze im Beitrag oben als Package mit den zusätzlichen Features zusammengestellt und die Nextcloud-Funktionen auch in ein separates Modul überführt und als Download bereitgestellt.