Raspberry lädt Fotos direkt in die Nextcloud
Der SmaRPt 3 basiert auf einem Raspberry Pi. Seit einiger Zeit hat er eine eingebaute Kamera. Als Photo-Software benutze ich eine Software von Adafruit. Die WLAN - Funktion Dropbox Upload wird durch Nextcloud ersetzt. Das Hochladen funktioniert nach dem knipsen automatisch.
Und so gehts:
Auf dem Raspberry Pi
cam.py aus einem Terminalfenster starten. -> Im Menue Dropbox auswählen -> Bild machen -> Programm beenden. Im Terminal steht eine Fehlermeldung, die weiter hilft.
Den Ordner Dropbox-Uploader anlegen und das Shellscript dropbox_uploader.sh . Dort hinein kommt nach dem #! /bin/bash nur eine Zeile :
$ curl -u dein_username:dein_PW -k -T $1 -a "https://mein-nextcloud-dingens.de/remote.php/webdav/Photos/smarpt3/"
Durchgestrichenes fällt weg. weil der Upload jetzt mit Webdav funktioniert.
sshpass -p " geheimes PW" scp $1 username@Server_mit_nextcloud:/home/username/data/nextcloudusername/files/Photos/photoupload (username und PW sind die vom Linuxuser)
cam py im Editor bis zu Zeile 488: if storeMode == 2: # Dropbox scrollen -> die verschachtelten if und else Bedingungen löschen oder auskommentieren.
if storeMode == 2: # Dropbox
# if upconfig:
# cmd = uploader + ' -f ' + upconfig + ' upload ' + filename + ' Photos/' + os.path.basename(filename)
# else:
# cmd = uploader + ' upload ' + filename + ' Photos/' + os.path.basename(filename)
cmd = uploader + ' ' + filename
call ([cmd], shell=True)
Auf dem Nextcloud- Server ist nichts zu ändern
Der Linux-User muß Schreibrechte in /data haben z.B so: usermod -a -G www Linux-User . (Gruppe ist abhängig von Linuxdistro www oder www-data)
Ordner photoupload anlegen. Jetzt zeigt sich ob die Rechte vorhanden sind .
Vielleicht ist dieser Button nach dem Patch nützlich:
Anmerkung
Fertig. Bei mir funktioniert es! sshpass ist nicht sicher, aber wenn ich Anmeldung mit SSH- Key mache, dann ist der auch kopierbar. Passwort Eingabeformular wäre gut.
Falls das jemand nachmachen will: Ich gebe keine Garantie auf gar nichts !