Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Verzeichnisrechte für VIS

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    774

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Verzeichnisrechte für VIS

Scheduled Pinned Locked Moved Visualisierung
vishow-tocamera
3 Posts 2 Posters 505 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    LoxDUS
    wrote on last edited by
    #1

    Hallo,

    jedesmal wenn der Klingeltaster betätigt wird, wird ein Snapshot von einer Aussenkamera auf einen, am ioBroker Server angeschlossene SD-Karte geschrieben.
    Bisher habe ich den Snapshot immer direkt in das VIS-Verzeichnis abgelegt und konnte dann auch problemlos auf die Bilder von VIS aus zugreifen:

    im HTML-Widget:

     <img src="{javascript.0.Sonderfunktionen.KlingelBild1}" height="100" width="175"> 
    

    in "javascript.0.Sonderfunktionen.KlingelBild1" steht das Verzeichnis sowie der Name:

     ...      
     // Bilder durchrotieren. An position 0 steht immer das letzte Bild
     KlingelBilder[2] = KlingelBilder[1];
     KlingelBilder[1] = KlingelBilder[0];
     KlingelBilder[0] = '/vis/KameraBilder/' + Name;    // Bildname mit Verzeichnis merken
     setState('javascript.0.Sonderfunktionen.KlingelBild1', KlingelBilder[0]);
     setState('javascript.0.Sonderfunktionen.KlingelBild2', KlingelBilder[1]);
     setState('javascript.0.Sonderfunktionen.KlingelBild3', KlingelBilder[2]);
    ...
    

    Das hat auch immer gut funktioniert bis ich jetzt die Bilder auf der SD-Karte speichere. Also nicht mehr im VIS-Verzeichnis.

    var img_path = '/home/USB/bellpics/';
    ...
        // Bildnamen erzeugen
        var Name = 'Eing_'+time.getFullYear()+time.getMonth()+time.getDate()+'_'+time.getHours()+time.getMinutes()+time.getSeconds()+'.jpg';
        request.get({url: cam_img, encoding: 'binary'}, function (err, response, body) {
            fs.writeFile(img_path + Name, body, 'binary', function(err) {
    ...
    

    das Verzeichnis /home/USB/bellpics wird auf die SD-Karte gemountet und hat folgende Rechte:

    2019-12-11 22_00_45-artur@IOBROKER2_ _home_USB.png

    Wie kann ich denn jetzt direkt auf das neue Bilderverzeichnis von VIS aus zugreifen? Ich habe schon versucht einen Symbolischen Link im VIS-Verzeichnis anzulegen der auf dieses Bilderverzeichnis zeigt. Das scheint aber nicht zu funktionieren weil ?Die Rechte nicht passen?

    2019-12-11 21_59_09-artur@IOBROKER2_ _home_USB.png
    Wie muss der Link im HTML-Code aussehen um direkt auf das SD-Kartenverzeichnis von VIS aus zuzugreifen?

    Kann mir das jemand helfen?

    Vielen Dank,

    Artur

    PeoplesP 1 Reply Last reply
    0
    • L LoxDUS

      Hallo,

      jedesmal wenn der Klingeltaster betätigt wird, wird ein Snapshot von einer Aussenkamera auf einen, am ioBroker Server angeschlossene SD-Karte geschrieben.
      Bisher habe ich den Snapshot immer direkt in das VIS-Verzeichnis abgelegt und konnte dann auch problemlos auf die Bilder von VIS aus zugreifen:

      im HTML-Widget:

       <img src="{javascript.0.Sonderfunktionen.KlingelBild1}" height="100" width="175"> 
      

      in "javascript.0.Sonderfunktionen.KlingelBild1" steht das Verzeichnis sowie der Name:

       ...      
       // Bilder durchrotieren. An position 0 steht immer das letzte Bild
       KlingelBilder[2] = KlingelBilder[1];
       KlingelBilder[1] = KlingelBilder[0];
       KlingelBilder[0] = '/vis/KameraBilder/' + Name;    // Bildname mit Verzeichnis merken
       setState('javascript.0.Sonderfunktionen.KlingelBild1', KlingelBilder[0]);
       setState('javascript.0.Sonderfunktionen.KlingelBild2', KlingelBilder[1]);
       setState('javascript.0.Sonderfunktionen.KlingelBild3', KlingelBilder[2]);
      ...
      

      Das hat auch immer gut funktioniert bis ich jetzt die Bilder auf der SD-Karte speichere. Also nicht mehr im VIS-Verzeichnis.

      var img_path = '/home/USB/bellpics/';
      ...
          // Bildnamen erzeugen
          var Name = 'Eing_'+time.getFullYear()+time.getMonth()+time.getDate()+'_'+time.getHours()+time.getMinutes()+time.getSeconds()+'.jpg';
          request.get({url: cam_img, encoding: 'binary'}, function (err, response, body) {
              fs.writeFile(img_path + Name, body, 'binary', function(err) {
      ...
      

      das Verzeichnis /home/USB/bellpics wird auf die SD-Karte gemountet und hat folgende Rechte:

      2019-12-11 22_00_45-artur@IOBROKER2_ _home_USB.png

      Wie kann ich denn jetzt direkt auf das neue Bilderverzeichnis von VIS aus zugreifen? Ich habe schon versucht einen Symbolischen Link im VIS-Verzeichnis anzulegen der auf dieses Bilderverzeichnis zeigt. Das scheint aber nicht zu funktionieren weil ?Die Rechte nicht passen?

      2019-12-11 21_59_09-artur@IOBROKER2_ _home_USB.png
      Wie muss der Link im HTML-Code aussehen um direkt auf das SD-Kartenverzeichnis von VIS aus zuzugreifen?

      Kann mir das jemand helfen?

      Vielen Dank,

      Artur

      PeoplesP Offline
      PeoplesP Offline
      Peoples
      wrote on last edited by Peoples
      #2

      @LoxDUS

      Mit der Einführung von js-controller 2.0 haben sich die Verzeichnisrechte geändert, wahrscheinlich liegts daran.

      Hier der link zum Beitrag:
      https://forum.iobroker.net/topic/26759/js-controller-2-jetzt-für-alle-im-stable/2

      Und hier ein alter Beitrag von mir wo ich ein Script eingestellt habe mit dem es wieder funktioniert:
      https://forum.iobroker.net/topic/25541/gelöst-wie-writefile-in-js-script-nutzen/53

      Ich beantworte keine Fragen zu Themen via PN

      1 Reply Last reply
      0
      • L Offline
        L Offline
        LoxDUS
        wrote on last edited by
        #3

        Ich habe noch ein wenig rumexperimentiert und folgendes heraus gefunden:
        Das speichern mit "writeFile" funktioniert wunderbar, auch wenn man in ein Verzeichnis schreibt das eigentlich nur ein Symbolischer Link ist. Diese Dateien werden aber nicht von VIS gesehen obwohl exakt die gleichen Berechtigungen und Owner an den Dateien hängen wie bei Dateien die von VIS gesehen werden (nämlich genau die Dateien, die man über den Dateiexplorer von VIS hochgeladen hat. Nehme ich die für VIS "nicht" sichtbaren Dateien und lade sie per Dateiexplorer von VIS in exakt das gleiche Verzeichnis hoch, werden sie auch von VIS gesehen. Ich vermute also das diese Dateien irgendwie noch "registriert" werden müssen damit VIS sie sieht....

        @Peoples
        Vielen Dank für den Hinweis. Ich habe mir Dein Script mal angesehen. Prinzipiell habe ich das gleiche gemacht. Bis auf diesen kleinen Unterschied:

        ...
         var data = fs.readFileSync('/tmp/image.jpg');
            writeFile('vis.'+visInstance, imageFolder + fname, data, function (error) {
        ...
        

        Hier wird dann wahrscheinlich (mit "fs.readFileSync" - ich weis es aber nicht -) die Bilddatei der DB bekannt gemacht? Das habe ich vorher, also mit der "alten" js.controller Version (<2.0) nicht gemacht und es hatte funktioniert.
        Wie auch immer, ich habe Deinen Code genommen und meinen Bedürfnissen ein wenig angepasst und nun funktioniert es auch bei mir mit den Symbolischen Links auf die gemountete SD-Karte.

        Vielen Dank für deine Hilfe.

        Artur

        1 Reply Last reply
        1

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        Support us

        ioBroker
        Community Adapters
        Donate

        629

        Online

        32.8k

        Users

        82.7k

        Topics

        1.3m

        Posts
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
        ioBroker Community 2014-2025
        logo
        • Login

        • Don't have an account? Register

        • Login or register to search.
        • First post
          Last post
        0
        • Home
        • Recent
        • Tags
        • Unread 0
        • Categories
        • Unreplied
        • Popular
        • GitHub
        • Docu
        • Hilfe