Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Das neueste Bild/Video von FTP-Server laden, Telegram senden

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Das neueste Bild/Video von FTP-Server laden, Telegram senden

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      Gonzokalle @haselchen last edited by

      @haselchen

      Habe vor drei Jahren mit dem ioBroker bei Null angefangen.
      Hatte vorher noch nie etwas von Blockly usw gehört und mich nie mit Linux beschäftigt.
      Ich habe schon viel gelernt, denke ich. Ich helfe auch gerne weiter, wenn ich kann.
      Und ja ich habe die Forensuche benutzt.
      Aber die Ergebnisse muss man halt auch anwenden können.

      MartinP 1 Reply Last reply Reply Quote 0
      • MartinP
        MartinP @Gonzokalle last edited by MartinP

        @gonzokalle Das Alarmieren mache ich über den Bewegungserkennungsdatenpunkt vom Reolink-Adapter, und hole mir dann direkt einen frischen Snapshot von der Kamera...

        Die Kamera schreibt per FTP selbsttätig bei Bewegungserkennung auf eine Linux-Instanz.

        Auf der dann dieser cron-Eintrag

        Alle 4 Stunden zur Nullten Minute:

        0 */4 * * * bash /home/martin/skripte/reolink.sh >/dev/null 2>&1
        

        reolink.sh:

        Zeile 3+4 mit rsync auf den Fileserver

        Zeile 6 Aufräumen

        logger "reolink.sh started"
        # debian server is down
        sshpass -p "xxxxxxxxxxxxx" rsync -a /home/martin/ftp/reolink/garage/*.mp4 martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
        sshpass -p "xxxxxxxxxxxxx" rsync -a /home/martin/ftp/reolink/garage/*.jpg martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
        # four hours preserve
        find /home/martin/ftp/reolink/garage/* -mmin +240 -exec rm {} \;
        logger "reolink.sh finished"
        

        Du kann auf die SD der Reolink zugreifen? Und siehst alle Dateien darauf?

        Das hatte ich falsch in Erinnerung - auf die SD greife ich nur über den Browser über das Webinterface der Kamera zu...

        Sozusagen eine Backup mehr ...

        Auf dem Fileserver muss ich inzwischen auch mit dem Platz Haushalten, und räume täglich morgens um 5:17 alles ab, was älter als 40 Tage ist
        Habe das etwas entzerrt, gegen 02:00 die Iobroker-Backups usw. Damit sich diese Aktionen etwas verteilen, und nicht alles auf einmal passiert ...

        17 5 * * * bash /home/martin/skripte/trim_recordings.sh
        

        Gleiches Prinzip

        find /mnt/usbdrives/intenso1/backup/Martin/frigate/recordings/ -type d -mtime +40 -exec rm -rf {} \; >/dev/null 2>&1
        find /mnt/usbdrives/intenso1/backup/Martin/reolink/recordings -type f -mtime +40 -delete >/dev/null 2>&1
        

        Habe noch einen Kamera über frigate angebunden, frigate legt unterverzeichnisse für jeden Tag an, deshalb "-type d"

        G 1 Reply Last reply Reply Quote 0
        • G
          Gonzokalle @MartinP last edited by

          Das hilft mir weiter. Danke

          @martinp sagte in Das neueste Bild/Video von FTP-Server laden, Telegram senden:

          @gonzokalle Das Alarmieren mache ich über den Bewegungserkennungsdatenpunkt vom Reolink-Adapter, und hole mir dann direkt einen frischen Snapshot von der Kamera...

          Das mache ich auch schon mit Bild und Video. Die Videos fangen halt etwas spät an.

          Die Kamera schreibt per FTP selbsttätig bei Bewegungserkennung auf eine Linux-Instanz.

          Ein Verzeichnis auf der Linux-Instanz? Muss das kein FTP-Server sein?
          Wie sieht in deiner Reolink App die FTP Seite dafür aus?

          Auf der dann dieser cron-Eintrag

          Alle 4 Stunden zur Nullten Minute:

          0 */4 * * * bash /home/martin/skripte/reolink.sh >/dev/null 2>&1
          

          reolink.sh:

          Zeile 3+4 mit rsync auf den Fileserver

          Zeile 6 Aufräumen

          logger "reolink.sh started"
          # debian server is down
          sshpass -p "xxxxxxxxxxxxx" rsync -a /home/martin/ftp/reolink/garage/*.mp4 martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
          sshpass -p "xxxxxxxxxxxxx" rsync -a /home/martin/ftp/reolink/garage/*.jpg martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
          # four hours preserve
          find /home/martin/ftp/reolink/garage/* -mmin +240 -exec rm {} \;
          logger "reolink.sh finished"
          

          Befehl in Zeile 6 wird ja das löschen der alten Dateien sein.
          Habe aktuell das Problem, dass ich nicht weiß, wo der FTP die Bilder/Videos ablegt.
          Habe schon das Laufwerk durchsucht.

          Du kann auf die SD der Reolink zugreifen? Und siehst alle Dateien darauf?

          Das hatte ich falsch in Erinnerung - auf die SD greife ich nur über den Browser über das Webinterface der Kamera zu...

          Sozusagen eine Backup mehr ...

          Auf dem Fileserver muss ich inzwischen auch mit dem Platz Haushalten, und räume täglich morgens um 5:17 alles ab, was älter als 40 Tage ist
          Habe das etwas entzerrt, gegen 02:00 die Iobroker-Backups usw. Damit sich diese Aktionen etwas verteilen, und nicht alles auf einmal passiert ...

          17 5 * * * bash /home/martin/skripte/trim_recordings.sh
          

          Gleiches Prinzip

          find /mnt/usbdrives/intenso1/backup/Martin/frigate/recordings/ -type d -mtime +40 -exec rm -rf {} \; >/dev/null 2>&1
          find /mnt/usbdrives/intenso1/backup/Martin/reolink/recordings -type f -mtime +40 -delete >/dev/null 2>&1
          

          Habe noch einen Kamera über frigate angebunden, frigate legt unterverzeichnisse für jeden Tag an, deshalb "-type d"

          MartinP 1 Reply Last reply Reply Quote 0
          • MartinP
            MartinP @Gonzokalle last edited by MartinP

            @gonzokalle

            Ich habe vsftpd auf der Linux-Instanz aktiviert (eigentlich mein Debian LXC-Container zum Testen)

            martin@DebianTest:~$ ps -ef |grep vsftpd
            root         162       1  0  2024 ?        00:00:30 /usr/sbin/vsftpd /etc/vsftpd.conf
            martin    990253     319  0 17:05 pts/1    00:00:00 grep vsftpd
            martin@DebianTest:~$ 
            

            vsftpd speichert standardmäßig in /home/<username>/ (vom User, den man beim FTP login verwendet hat...)

            Das Unter-Verzeichnis stellt man bei der Reolink-Kamera im Web-Interface ein

            91a9b872-c24e-4771-9c42-612bbfba8158-grafik.png

            EDIT vsftpd statt ftpd

            G 1 Reply Last reply Reply Quote 0
            • G
              Gonzokalle @MartinP last edited by Gonzokalle

              @martinp
              Dann bin ich erstmal beschäftigt vsftpd zu testen. 😊
              Vielen Dank für den Tipp.

              Kann ich diese Anleitung benutzen?
              Würde nur über die Fritz.box wireguard darauf zugreifen
              https://www.howtoforge.de/anleitung/ftp-server-mit-vsftpd-und-tls-auf-ubuntu-2204-einrichten/

              MartinP 1 Reply Last reply Reply Quote 0
              • MartinP
                MartinP @Gonzokalle last edited by

                @gonzokalle Wenn die Verbindung zwischen den beiden Servern über Wireguard geht, sollte das offene FTP Protokoll kein Problem sein

                G 1 Reply Last reply Reply Quote 0
                • G
                  Gonzokalle @MartinP last edited by Gonzokalle

                  @MartinP

                  Der VSFTPD-Server läuft.
                  Die Kamera schreibt auch die Bilder und Videos in das angegebene Verzeichnis.
                  Die Cron-Einträge zum Löschen alter Dateien laufen auch.
                  Wundere mich etwas warum die Zeit der Dateien eine Stunde zu weit ist?

                  8a6ccb02-cd44-41e7-93aa-81dd96b7126e-image.png

                  1 Reply Last reply Reply Quote 0
                  • G
                    Gonzokalle last edited by

                    @gonzokalle
                    Ich bin eine gutes Stück weiter gekommen.

                    Mit Benutze Martin kann ich Dateien kopieren, die in der letzten Minute geändert/erstellt worden sind.

                    find /home/Martin/Kamera -type f -mmin -1 -exec cp -a '{}' /home/Martin/Music \;
                    

                    Im iobroker Terminal geht das nicht, da iobroker anscheinend nicht die Rechte dafür hat.
                    setObjekt, exec und sendToHost sind aktiv.
                    Wie kann ich iobroker die Rechte für die Aktionen geben?
                    Habe viel von einer /etc/sudoers.d gelesen. Die konnte ich aber nicht editieren.
                    Ist das der richtige Weg um iobroker mehr Rechte zu geben?

                    find: ‘/home/Martin/kamera’
                    : Keine Berechtigung
                    /opt/iobroker$ find /home/Martin/kamera -type f -mmin -1
                    
                    find: ‘/home/Martin/kamera’
                    : Keine Berechtigung
                    /opt/iobroker$ sudo find /home/Martin/kamera -type f -mmin -1
                    
                    sudo: Zum Lesen des Passworts ist ein Terminal erforderlich; verwenden Sie entweder die Option -S, um aus der Standardeingabe zu lesen oder richten Sie das Askpass-Hilfsprogramm ein
                    sudo: Ein Passwort ist notwendig
                    /opt/iobroker$ sudo -u iobroker find /home/Martin/kamera -type f -mmin -1
                    
                    find: ‘/home/Martin/kamera’
                    : Keine Berechtigung
                    /opt/iobroker$  
                    
                    G Thomas Braun 2 Replies Last reply Reply Quote 0
                    • G
                      Gonzokalle @Gonzokalle last edited by

                      @gonzokalle

                      Da es mit den Rechten nicht funktioniert hat, schreibt der FTP-Server jetzt in das iobroker Verzeichnis.
                      Jetzt funktioniert auch die Suche nach der neuesten Datei.
                      Leider schickt mir Telegram nicht das Bild, sondern nur den Pfad und Namen?
                      /opt/iobroker/FTP-Kamera/Haustuer_00_blablabla.jpg

                      98cf89ad-9fc0-4833-b825-bdda67215908-image.png

                      1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @Gonzokalle last edited by

                        @gonzokalle sagte in Das neueste Bild/Video von FTP-Server laden, Telegram senden:

                        Im iobroker Terminal geht das nicht, da iobroker anscheinend nicht die Rechte dafür hat.

                        Ja, der 'iobroker' darf dem 'Martin' nicht ins home schauen.

                        1 Reply Last reply Reply Quote 0
                        • G
                          Gonzokalle last edited by

                          @thomas-braun
                          Dafür darf der 'Martin' dem 'iobroker' schöne Bilder schicken.

                          Thomas Braun 1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active @Gonzokalle last edited by

                            @gonzokalle

                            Das ist richtig. Da stehen aber auch die Rechte anders...

                            1 Reply Last reply Reply Quote 0
                            • B
                              bishop last edited by

                              Schöner wäre das ganze wenn man, wie schon gesagt auf die SD Karte zugreifen könnte.
                              Da die Bilder und Videos da ja schon liegen.

                              G 1 Reply Last reply Reply Quote 0
                              • G
                                Gonzokalle @bishop last edited by

                                @bishop
                                Da wüsste ich keinen Weg dafür.

                                Ich werde noch verrückt.

                                In der iobroker Konsole geht der Befehl.

                                /opt/iobroker$ find /opt/iobroker/FTP-Kamera -iname "*.mp4" -mmin -10 -exec cp '{}' Haustuer.mp4 \;
                                
                                /opt/iobroker$ find /opt/iobroker/FTP-Kamera -iname "*.mp4" -mmin -10 -exec cp '{}' Haustuer.mp4 \;
                                
                                /opt/iobroker$ find /opt/iobroker/FTP-Kamera -iname "*.mp4" -mmin -10 -exec cp '{}' Haustuer.mp4 \;
                                
                                /opt/iobroker$  
                                

                                Mit dem exec Baustein geht es nicht.

                                fefe5629-e382-4007-b1ab-51144d37f318-image.png

                                Welche Unterschiede gibt es zwischen Konsole und Baustein?

                                8e9ab00a-0c5f-490a-aa61-123f72abfc9e-image.png

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  Gonzokalle @Gonzokalle last edited by

                                  @gonzokalle

                                  So scheint es erstmal zu funktionieren.
                                  Verbesserungsvorschläge sind erwünscht.

                                  708b95b3-6e74-41c0-b8f4-71e2d34e67a3-image.png

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  929
                                  Online

                                  31.9k
                                  Users

                                  80.1k
                                  Topics

                                  1.3m
                                  Posts

                                  6
                                  21
                                  934
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo