Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [Erledigt] WEB-Cam - exec Befehl

    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

    [Erledigt] WEB-Cam - exec Befehl

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      LotharF last edited by LotharF

      Hallo, ich habe eine Logitech WEB-Cam auf meinem Raspi (auf dem auch der ioBroker läuft) angeschlossen und "fswebcam" (nach diesem Link: https://tutorials-raspberrypi.de/raspberry-pi-ueberwachungskamera-webcam/) installiert.
      Das klappt soweit super und ich kann auf dem Raspi in der Konsole per "fswebcam image.jpg" in dem Ordner in dem ich mich gerade befinde Bilder aufnehmen.

      Nun wollte ich per Blockly ein Foto aufnehmen lassen. Mit dem "exec" Befehl habe ich versucht den Befehl "fswebcam image.jpg" auszulösen. Nach dem LOG wird der Befehl auch ausgeführt. Nur es werden keine Bilder aufgenommen.

      Benötigt der iobroker noch andere Rechte oder ist der Ansatz über exec falsch?

      Jey Cee AlCalzone 2 Replies Last reply Reply Quote 0
      • A
        aleks-83 last edited by

        Ist nicht ganz der richtige Ansatz, oder?

        Manchmal braucht es auch im Forum ein paar Tage bis jemand antwortet.

        1 Reply Last reply Reply Quote 0
        • Jey Cee
          Jey Cee Developer @LotharF last edited by

          @LotharF Definitiv nicht, deswegen habe ich deinen Beitrag wieder hergestellt.

          Wohin willst du die Bilder den Speichern, ein Screenshot deines Blockly wäre sicher nicht verkehrt. Man kann beim Exec befehl auch den Output des Befehls zurück geben lassen, dann sieht man was genau passiert.

          1 Reply Last reply Reply Quote 1
          • L
            LotharF last edited by LotharF

            Naja, ich dachte nur, bevor hier ne Karteileiche herumliegt .... 😉

            Ich möchte vn der Logitech WEB-Cam (angeschlossen an dem Raspberry auf dem auch der iobroker läuft) das Bild auf dem Raspberry zwischenspeichern ... und es kann gerne immer wieder überschrieben werden.
            Wenn ich über Putty den Befehl absetze klappt es auch:
            Putty.jpg

            Nur wenn ich versuche das über Blockly zu realisieren komme ich nicht weiter.
            Hab auch versucht das dann über Telegram zu verschicken ... was natürlich mangels Aufnahme auch nicht klappt:
            Blockly.jpg

            Obwohl das LOG keinen Fehler ausspuckt habe ich aber kein Bild in dem Ordner:
            log.jpg

            Letztendlich möchte ich "nur" eine Aufnahme wenn der Kontakt ausgelöst wird.
            Und das Bild sollte (wenn es geht) über Telegram verschickt werden.
            Aber hier stoße ich an meine Grenzen. Da habe ich dann doch zu wenig Hintergrundwissen wie ich das hier realisieren kann.
            Wenn mir da jemand unter die Arme greifen könnte wäre es schon super 🙂

            1 Reply Last reply Reply Quote 0
            • L
              LotharF last edited by

              Scheint ja so, also wenn sonst keiner ne normale WEB-Cam wie ich angeschlossen hat 🤷‍♂️
              Ist dann wohl nicht möglich meine Vorstellung so umzusetzen?

              Jey Cee 1 Reply Last reply Reply Quote 0
              • Jey Cee
                Jey Cee Developer @LotharF last edited by

                @LotharF Doch sicher, aber du hast meinen Vorschlag nach deinem Screenshot zu Urteilen nicht umgesetzt. Hack doch einfach mal beim exec "mit Ergebnissen" an, dann bekommst du auch den Output deines Befehls ins log und nicht nur die Meldung das exec ausgeführt wurde.

                1 Reply Last reply Reply Quote 0
                • AlCalzone
                  AlCalzone Developer @LotharF last edited by

                  @LotharF Wohin speichert der Befehl denn die Bilder? Im aktuellen Verzeichnis? Das ist dann ggf. nicht da wo du erwartest. Gebe doch statt image.jpg mal einen vollständigen Dateipfad an, z.B. /home/pi/image.jpg.

                  1 Reply Last reply Reply Quote 0
                  • L
                    LotharF last edited by

                    Naja, so direkt hast du das nicht geschrieben 😉
                    Wenn ich nur den Haken bei "mit Ergebnissen" setze kommt nix.
                    Hab nach einer Suche dann noch nen "debug output" drangesetzt ... wo dann im LOG ne Zeile mehr kommt.
                    Ob das so richtig ist ... keine Ahnung. Ich bin leider noch Anfänger mit dem Script usw. Sonst bitte genau schreiben was ich wo wie machen / testen soll 😊

                    Blockly2.jpg

                    log2.jpg

                    1 Reply Last reply Reply Quote 0
                    • O
                      ooooli last edited by ooooli

                      Ich dachte, ich bin der einzige, der fswebcam nutzt. Hab folgendes Script, welches aufgerufen wird, wenn der Bewegungsmelder im Flur schaltet und ich nicht da bin. Schickt das aufgenomme Bild per Telegram rum.
                      Bildschirmfoto 2019-11-28 um 17.40.21.png

                      Der Exec Aufruf ist btw:
                      ../usr/bin/fswebcam --no-banner -r 1280x960 --skip 8 /opt/iobroker/cam/alarm.jpg

                      --> beim Raspi hat's ggf. andere Pfade

                      1 Reply Last reply Reply Quote 0
                      • L
                        LotharF last edited by

                        supi 👍 Ich dachte schon ich versuche das gaaaanz alleine 😵
                        Du erzeugt dann das Bild im Ordner /usr/bin und kopierst das dann nach /opt/iobroker/cam ?
                        Was hast du denn bei dir vor dem /usr/bin noch stehen ?
                        Hast du irgendwelche Rechte vergeben müssen?
                        Sorry wenn ich so doof frage ... aber ich steige da noch nicht durch 😰

                        1 Reply Last reply Reply Quote 0
                        • O
                          ooooli last edited by

                          in /usr/bin liegt die fswebcam binary. Das Bild lege ich in /opt/iobroker/cam ab. Das kann aber auch jeder andere Ordner sein.
                          ../usr/bin/fswebcam --no-banner -r 1280x960 --skip 8 /opt/iobroker/cam/alarm.jpg

                          Hier noch der Code vom Block:

                          <block xmlns="http://www.w3.org/1999/xhtml" type="procedures_defnoreturn" id="~pPk?PHjzu0{iCY*^,Mh" x="-1088" y="-312">
                          <field name="NAME">foto senden</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                          <statement name="STACK">
                          <block type="timeouts_settimeout" id="%parHE%U;Jg[8keop7B#">
                          <field name="NAME">timeout</field>
                          <field name="DELAY">1500</field>
                          <field name="UNIT">ms</field>
                          <statement name="STATEMENT">
                          <block type="exec" id=")s4eqoL)+rnTyhSAl1/f">
                          <mutation with_statement="false"></mutation>
                          <field name="WITH_STATEMENT">FALSE</field>
                          <field name="LOG">log</field>
                          <value name="COMMAND">
                          <shadow type="text" id="xY6eqnky[SMncjoLv.">
                          <field name="TEXT">../usr/bin/fswebcam --no-banner -r 1280x960 --skip 8 /opt/iobroker/cam/alarm.jpg</field>
                          </shadow>
                          </value>
                          <next>
                          <block type="timeouts_settimeout" id="%@nkC[RH(?Ec:@AGgZ:,">
                          <field name="NAME">timeout2</field>
                          <field name="DELAY">6</field>
                          <field name="UNIT">sec</field>
                          <statement name="STATEMENT">
                          <block type="telegram" id="d38k#q#az~Oi^iSLuj9.">
                          <field name="INSTANCE">.0</field>
                          <field name="LOG"></field>
                          <field name="SILENT">FALSE</field>
                          <field name="PARSEMODE">default</field>
                          <value name="MESSAGE">
                          <shadow type="text" id="at(q2i6A623??3sky7BI">
                          <field name="TEXT">/opt/iobroker/cam/alarm.jpg</field>
                          </shadow>
                          </value>
                          </block>
                          </statement>
                          </block>
                          </next>
                          </block>
                          </statement>
                          </block>
                          </statement>
                          </block>

                          1 Reply Last reply Reply Quote 0
                          • L
                            LotharF last edited by

                            supercool ... danke 👍
                            Das hat mir schon ein wenig geholfen ... nur bei mir wird immer noch kein Foto erzeugt 😠
                            wenn ich mit putty auf den Raspi gehe, kann ich den Befehl "../usr/bin/fswebcam --no-banner -r 1280x960 --skip 8 /opt/iobroker/cam/alarm.jpg" so nicht ausühren.
                            Erst wenn ich "/usr/bin/fswebcam --no-banner -r 1280x960 --skip 8 /opt/iobroker/cam/alarm.jpg" ... also ohne die beiden Punkte davor das eingebe wird mit Putty ein Foto erzeugt.
                            Hab das dann beim Blockly ohne Punkte versucht ... was auch nicht klappt 😥
                            Könnte da doch noch ein Rechteproblem bestehen? "fswebcam" hat bei mir 755 und root, der neue Ordner "cam" hat 775 und pi.
                            Oder muss ich noch was einstellen/installieren/ändern damit exec überhaupt funktioniert?

                            AlCalzone 1 Reply Last reply Reply Quote 0
                            • AlCalzone
                              AlCalzone Developer @LotharF last edited by

                              @LotharF sagte in WEB-Cam - exec Befehl:

                              /opt/iobroker/cam/alarm.jpg

                              Hat der User iobroker Schreibzugriff auf diesen Ordner?

                              1 Reply Last reply Reply Quote 0
                              • L
                                LotharF last edited by LotharF

                                Ich glaube dem fehlt der Schreibzugriff auf "video0".

                                iobroker.jpg

                                Aber wie gebe ich dem dann die Rechte? Noch bin ich nicht so bewandert mit Linux 😞

                                1 Reply Last reply Reply Quote 0
                                • L
                                  LotharF last edited by

                                  ... und hat der user "iobroker" kein Passwort? ... oder eins was ich nicht kenne
                                  ich wollte den iobroker-fixer laufen lassen der dann das Passwort vom "iobroker" wollte. Meins vom Admin nahm er aber nicht an 😵

                                  AlCalzone 1 Reply Last reply Reply Quote 0
                                  • AlCalzone
                                    AlCalzone Developer @LotharF last edited by AlCalzone

                                    @LotharF Nein, der hat kein Passwort, weil man sich als der auch nicht anmeldet. Wenn du den Fixer ausführst, solltest du das als der User tun, mit dem du normalerweise auf der Konsole arbeitest.

                                    Wer hat denn Zugriff auf die Kamera?

                                    ls -la /dev/video0
                                    

                                    Wenn das zufällig eine Gruppe "video" ist, dann muss ioBroker zu dieser noch hinzugefügt werden:

                                    sudo usermod -a -G video iobroker
                                    

                                    Das sollten wir dann auch vom Installer/Fixer machen lassen.

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      LotharF last edited by

                                      jap, ist Video 😊
                                      hab den fixer mal laufen lassen und hinterher noch mal deine beiden Infos angewendet.
                                      Wenn ich mich nun wieder als user "ibroker" anmelde, kann ich ein Foto aufnehmen 👍

                                      iobroker2.jpg

                                      Über Blockly will es aber immer noch nicht. Vermutlich muss der neuen Ordner "cam" auch noch den "iobroker" zugeordnet werden? Wie mach ich das denn?

                                      AlCalzone 1 Reply Last reply Reply Quote 0
                                      • AlCalzone
                                        AlCalzone Developer @LotharF last edited by

                                        @LotharF ioBroker hat ja schon da rein geschrieben, also existiert Schreibzugriff.
                                        Hast du dir mal die Ausgabe vom Exec aus Blockly (Haken "mit Ergebnissen") loggen lassen?

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          LotharF last edited by

                                          Hab jetzt den Raspi mal Stromlos gemacht und neu hochgefahren.
                                          Jetzt klappt es auch über das Blockly 💪

                                          Danke für deine tolle Hilfe. Ohne wäre ich sicher immer noch am verzweifeln 😁
                                          Hab wieder einiges dazugelernt.

                                          AlCalzone 1 Reply Last reply Reply Quote 0
                                          • AlCalzone
                                            AlCalzone Developer @LotharF last edited by

                                            @LotharF Lass mich raten: Du hast weder den Adapter noch den Host neu gestartet nach den Gruppen-Änderungen?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            498
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            21
                                            1475
                                            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