Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. IoBroker.phantomjs

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    IoBroker.phantomjs

    This topic has been deleted. Only users with topic management privileges can see it.
    • Neuschwansteini
      Neuschwansteini @apollon77 last edited by Neuschwansteini

      @apollon77 Hi, die Beschreibung des States hatte ich auch im Code gefunden und geändert, da stand es ja hardcodiert, jetzt sieht die Stelle so aus:

       var data = fs.readFileSync(options.output);
                          adapter.getObject('pictures.' + fileName, function (err, obj) {
                              if (!obj) {
                                  adapter.setObject('pictures.' + fileName, {
                                      common: {
                                          type:   'file',
                                          role:   'file',
                                          read:   true,
                                          write:  false,
                                          desc:   'Can be accessed from web server under http://ip:port/state/' + adapter.namespace + '.pictures.' + fileName
                                      },
                                      type: 'state',
                                      native: {
                                          url: options.url
                                      }
                                  });
                              }
      
      

      Im Text in der Beschreibung stimmt es dann auch, aber im Datenpunkt als Objekt steht wieder die 8082 drin.. woher die auch kommt... ???

      0e17173a-63d8-4d14-9cbe-c106d217b97f-grafik.png

      Das RAW sieht so aus :

      {
        "from": "system.adapter.phantomjs.0",
        "user": "system.user.admin",
        "ts": 1595686012126,
        "binary": true,
        "common": {
          "name": "pictures.picture_png",
          "type": "boolean",
          "role": "file",
          "desc": "Can be accessed from web server under http://ip:port/state/phantomjs.0.pictures.picture_png",
          "read": true,
          "write": false
        },
        "native": {
          "url": "http://192.168.3.26:3000/d/R3LxSGWMz/network?orgId=1&refresh=10s&kiosk"
        },
        "acl": {
          "object": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator",
          "state": 1636
        },
        "_id": "phantomjs.0.pictures.picture_png",
        "type": "state"
      }
      
      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Das Issue gehört zum Admin Adapter ... https://github.com/ioBroker/ioBroker.admin/blob/master/src/lib/js/selectID.js#L2405

        Neuschwansteini 1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Und sonst, tut die neue Version? Kann ich die Publishen? 🙂

          Neuschwansteini 1 Reply Last reply Reply Quote 0
          • Neuschwansteini
            Neuschwansteini @apollon77 last edited by

            @apollon77 sagte in IoBroker.phantomjs:

            Und sonst, tut die neue Version? Kann ich die Publishen? 🙂

            Ok, issue leg ich beim admin Adapter an , den hier kannst du publizieren 😀

            Dankeschön 👍

            1 Reply Last reply Reply Quote 0
            • Neuschwansteini
              Neuschwansteini @apollon77 last edited by

              @apollon77 sagte in IoBroker.phantomjs:

              Das Issue gehört zum Admin Adapter ... https://github.com/ioBroker/ioBroker.admin/blob/master/src/lib/js/selectID.js#L2405

              Done

              David G. 1 Reply Last reply Reply Quote 0
              • David G.
                David G. @Neuschwansteini last edited by

                Hallo,

                Wollte den Adapter auch mal testen.
                Bekomme ihn leider nicht installiert.

                Sieht einer den Fehler?

                Kommando-Ausführung: $ ./iobroker url "https://github.com/ioBroker/ioBroker.phantomjs" --debug
                Fertig mit Fehler: host.iobroker Cannot install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee: 1
                $ ./iobroker url "https://github.com/ioBroker/ioBroker.phantomjs" --debug
                install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee
                NPM version: 6.14.6
                npm install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee --loglevel error --prefix "/opt/iobroker" (System call)
                > node-bluetooth@1.2.6 install /opt/iobroker/node_modules/node-bluetooth> node-gyp configure build
                make: Verzeichnis „/opt/iobroker/node_modules/node-bluetooth/build“ wird betreten
                  CXX(target) Release/obj.target/BluetoothSerialPort/src/linux/BluetoothSerialPort.o
                In file included from ../src/DeviceINQ.h:17,                 from ../src/linux/BluetoothSerialPort.cc:13:../node_modules/nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker*)’:../node_modules/nan/nan.h:2294:62: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]     , reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete)                                                              ^
                In file included from ../src/linux/BluetoothSerialPort.cc:12:../src/linux/BluetoothSerialPort.cc: At global scope:/home/iobroker/.cache/node-gyp/10.22.0/include/node/node.h:573:43: warning: cast between incompatible function types from ‘void (*)(v8::Handle<v8::Object>)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]       (node::addon_register_func) (regfunc),                          \                                           ^/home/iobroker/.cache/node-gyp/10.22.0/include/node/node.h:607:3: note: in expansion of macro ‘NODE_MODULE_X’   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)   ^~~~~~~~~~~~~../src/linux/BluetoothSerialPort.cc:23:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(BluetoothSerialPort, InitAll) ^~~~~~~~~~~
                In file included from /home/iobroker/.cache/node-gyp/10.22.0/include/node/node.h:63,                 from ../src/linux/BluetoothSerialPort.cc:12:/home/iobroker/.cache/node-gyp/10.22.0/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = node::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)]’:/home/iobroker/.cache/node-gyp/10.22.0/include/node/node_object_wrap.h:84:78:   required from here/home/iobroker/.cache/node-gyp/10.22.0/include/node/v8.h:9502:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<node::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]                reinterpret_cast<Callback>(callback), type);                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                /home/iobroker/.cache/node-gyp/10.22.0/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = Nan::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)]’:../node_modules/nan/nan_object_wrap.h:65:61:   required from here/home/iobroker/.cache/node-gyp/10.22.0/include/node/v8.h:9502:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<Nan::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
                  CXX(target) Release/obj.target/BluetoothSerialPort/src/linux/DeviceINQ.o
                ../src/linux/DeviceINQ.cc:35:14: fatal error: bluetooth/bluetooth.h: Datei oder Verzeichnis nicht gefunden     #include <bluetooth/bluetooth.h>              ^~~~~~~~~~~~~~~~~~~~~~~compilation terminated.
                make: *** [BluetoothSerialPort.target.mk:107: Release/obj.target/BluetoothSerialPort/src/linux/DeviceINQ.o] Fehler 1make: Verzeichnis „/opt/iobroker/node_modules/node-bluetooth/build“ wird verlassen
                gyp
                 ERR! 
                build error 
                gyp ERR! stack Error: `make` failed with exit code: 2gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:191:23)gyp ERR! stack     at ChildProcess.emit (events.js:198:13)gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
                gyp ERR! System Linux 5.4.51-v7l+gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"gyp ERR! cwd /opt/iobroker/node_modules/node-bluetoothgyp ERR! node -v v10.22.0gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok 
                > phantomjs-prebuilt@2.1.16 install /opt/iobroker/node_modules/phantomjs-prebuilt> node install.js
                PhantomJS not found on PATH
                Unexpected platform or architecture: linux/armIt seems there is no binary available for your platform/architectureTry to install PhantomJS globally
                npm ERR! code ELIFECYCLE
                npm ERR! errno 1
                npm
                 
                ERR! phantomjs-prebuilt@2.1.16 install: `node install.js`npm ERR! Exit status 1
                npm ERR! npm 
                ERR! Failed at the phantomjs-prebuilt@2.1.16 install script.npm ERR!
                 This is probably not a problem with npm. There is likely additional logging output above.
                
                npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2020-08-16T19_54_55_528Z-debug.log
                ERROR: host.iobroker Cannot install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee: 1
                ERROR: process exited with code 25
                
                
                Thomas Braun 1 Reply Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @David G. last edited by

                  @David-G Hast du libbluetooh-dev installiert?

                  apt policy libbluetooth-dev
                  
                  David G. 1 Reply Last reply Reply Quote 0
                  • David G.
                    David G. @Thomas Braun last edited by

                    @Thomas-Braun

                    War nicht installiert.
                    Habe ich nachgeholt.
                    Allerdings klappt es immer noch nicht.....

                    $ ./iobroker url "https://github.com/ioBroker/ioBroker.phantomjs"
                    install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee
                    NPM version: 6.14.6
                    npm install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee --loglevel error --prefix "/opt/iobroker" (System call)
                    Unexpected platform or architecture: linux/armIt seems there is no binary available for your platform/architectureTry to install PhantomJS globally
                    npm
                     ERR! code ELIFECYCLEnpm ERR! errno 1
                    npm
                     ERR! phantomjs-prebuilt@2.1.16 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phantomjs-prebuilt@2.1.16 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                    
                    npm ERR! A complete log of this run can be found in:npm 
                    ERR!     /home/iobroker/.npm/_logs/2020-08-17T04_05_56_483Z-debug.log
                    ERROR: host.iobroker Cannot install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee: 1
                    ERROR: process exited with code 25
                    
                    Thomas Braun 1 Reply Last reply Reply Quote 0
                    • Thomas Braun
                      Thomas Braun Most Active @David G. last edited by

                      @David-G

                      cd /opt/iobroker
                      npm cache clean --force
                      lsb_release -a && whoami && which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs
                      
                      David G. 1 Reply Last reply Reply Quote 0
                      • David G.
                        David G. @Thomas Braun last edited by

                        @Thomas-Braun

                        Danke, aber es will immer noch nicht.....
                        Alle Befehle ausgeführt.

                        Anbei die Ergebnisse.

                        $ ./iobroker url "https://github.com/ioBroker/ioBroker.phantomjs"
                        install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee
                        NPM version: 6.14.6
                        npm install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee --loglevel error --prefix "/opt/iobroker" (System call)
                        Unexpected platform or architecture: linux/armIt seems there is no binary available for your platform/architectureTry to install PhantomJS globally
                        npm
                         ERR! code ELIFECYCLEnpm ERR! errno 1
                        npm
                         ERR! phantomjs-prebuilt@2.1.16 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phantomjs-prebuilt@2.1.16 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                        
                        npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2020-08-17T05_01_22_677Z-debug.log
                        ERROR: host.iobroker Cannot install https://github.com/ioBroker/ioBroker.phantomjs/tarball/f05bc61c8e3cc86371492d2c6e89d44a2eed6aee: 1
                        ERROR: process exited with code 25
                        
                        pi@iobroker:/opt/iobroker $ lsb_release -a && whoami && which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs
                        No LSB modules are available.
                        Distributor ID:  Raspbian
                        Description:  Raspbian GNU/Linux 10 (buster)
                        Release:  10
                        Codename:  buster
                        pi
                        /usr/bin/nodejs
                        v10.22.0
                        /usr/bin/node
                        v10.22.0
                        /usr/bin/npm
                        6.14.6
                        nodejs:
                          Installiert:           10.22.0-1nodesource1
                          Installationskandidat: 10.22.0-1nodesource1
                          Versionstabelle:
                         *** 10.22.0-1nodesource1 500
                                500 https://deb.nodesource.com/node_10.x buster/main armhf Packages
                                100 /var/lib/dpkg/status
                             10.21.0~dfsg-1~deb10u1+rpi1 500
                                500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
                        
                        Thomas Braun OliverIO 2 Replies Last reply Reply Quote 0
                        • Thomas Braun
                          Thomas Braun Most Active @David G. last edited by

                          @David-G

                          It is used prebuild package of phantomjs. If for your system the prebuild does not exist, you cannot use this adapter. On some linux systems the additional library "libfontconfig" is required. It can be installed as follow:

                          Vielleicht mal noch libfontconfig nachinstallieren.

                          sudo apt install libfontconfig
                          
                          David G. 1 Reply Last reply Reply Quote 0
                          • David G.
                            David G. @Thomas Braun last edited by

                            @Thomas-Braun

                            pi@iobroker:~ $ sudo apt install libfontconfig
                            Paketlisten werden gelesen... Fertig
                            Abhängigkeitsbaum wird aufgebaut.
                            Statusinformationen werden eingelesen.... Fertig
                            Hinweis: »libfontconfig1« wird an Stelle von »libfontconfig« gewählt.
                            libfontconfig1 ist schon die neueste Version (2.13.1-2).
                            0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
                            

                            Hat nichts aktualisiert.
                            Hat nur irgendwie ein libfontconfig1 angenommen.

                            Thomas Braun 1 Reply Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @David G. last edited by

                              @David-G
                              Ja, das ist okay. Dann geht das bei dir nicht wegen des Hinweises aus git.

                              1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO @David G. last edited by OliverIO

                                @David-G
                                Wenn phamtomjs für deine Platform nicht vorkompiliert existiert musst du es selber machen.
                                Befolge dazu diese Anweisungen.
                                https://phantomjs.org/build.html
                                Evtl. Wird aus den daraus resultierenden Fehlermeldungen deutlich, wo das Problem wirklich liegt.
                                Wenn das dann erfolgreich durchläuft, dann kannst du die obige Installation erneut durchführen.

                                Miro S. 1 Reply Last reply Reply Quote 0
                                • Miro S.
                                  Miro S. @OliverIO last edited by

                                  @OliverIO said in IoBroker.phantomjs:

                                  @David-G
                                  Wenn phamtomjs für deine Platform nicht vorkompiliert existiert musst du es selber machen.
                                  Befolge dazu diese Anweisungen.
                                  https://phantomjs.org/build.html
                                  Evtl. Wird aus den daraus resultierenden Fehlermeldungen deutlich, wo das Problem wirklich liegt.
                                  Wenn das dann erfolgreich durchläuft, dann kannst du die obige Installation erneut durchführen.

                                  Ich habe die Installation nach deiner verlinkten Seite ausprobiert diese ist angeblich auch durchgelaufen aber ich finde keine Instanze im IObroker von phantom js. Habe es dann nochmal über den Adapter probiert und bekomme diese Fehlermeldung

                                  $ ./iobroker add phantomjs  --host raspberrypi
                                  NPM version: 6.14.6
                                  npm install iobroker.phantomjs@1.0.1 --loglevel error --prefix "/opt/iobroker" (System call)
                                  Unexpected platform or architecture: linux/armIt seems there is no binary available for your platform/architectureTry to install PhantomJS globally
                                  npm
                                   ERR! 
                                  code ELIFECYCLEnpm ERR! errno 1
                                  npm
                                   ERR! phantomjs-prebuilt@2.1.16 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phantomjs-prebuilt@2.1.16 install script.npm 
                                  ERR! This is probably not a problem with npm. There is likely additional logging output above.
                                  
                                  npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2020-08-19T10_26_32_229Z-debug.log
                                  ERROR: host.raspberrypi Cannot install iobroker.phantomjs@1.0.1: 1
                                  ERROR: process exited with code 25
                                  

                                  Kann mir jemand helfen ich weiß nicht wie ich es installiert bekomme ?

                                  I 1 Reply Last reply Reply Quote 0
                                  • I
                                    I-Punkt @Miro S. last edited by

                                    @Miro-S Soweit ich mich erinnere, ist die Kombi "phantomjs&Raspberrypi" nicht ganz unproblematisch. Lt. dieser Seite (https://github.com/fg2it/phantomjs-on-raspberry) gibt es wohl keine offiziellen binaries dafür. Vielleicht helfen dir ja die fertigen binaries von dort weiter. Achte darauf, welchen Pi-Version (1a, 1b, 2 ...) du hast, die haben ggf. unterschiedliche ARM-Strukturen (ARMv6, ARMv7 usw.)
                                    Ich selber bin mit der Kombination nie so recht glücklich geworden. Als es dann irgendwann mal lief, stellte sich heraus, das der Pi zu schwach war, die gewünschten Sites zu rendern.

                                    Miro S. 1 Reply Last reply Reply Quote 0
                                    • Miro S.
                                      Miro S. @I-Punkt last edited by

                                      @I-Punkt Okey, danke. Ich habe den 4B, dann ist da wohl keiner dabei. Gibt es eventuell eine alternative Graphen zu rendern und dann zu nutzen? Nutze gerade Flot und wollte dann mit Phantom den Graphen rendern.

                                      I OliverIO 2 Replies Last reply Reply Quote 0
                                      • I
                                        I-Punkt @Miro S. last edited by

                                        @Miro-S Wäre vielleicht ein Versuch wert -> https://www.npmjs.com/package/html-to-image Könnte mir vorstellen, daß sich das als package in die Javascript-Engine in iobroker einbinden und dann von dort benutzen läßt.
                                        Ansonsten mal die Suchmaschine deiner Wahl mit "html to image" füttern.

                                        David G. 1 Reply Last reply Reply Quote 0
                                        • David G.
                                          David G. @I-Punkt last edited by David G.

                                          @I-Punkt

                                          Für diese Variante hab ich mich vorgestern entschieden.

                                          Klappt sehr gut.

                                          Hab mich hier an dem Post orientiert.

                                          Screenshot Flot-Charts über Telegram verschicken

                                          1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Miro S. last edited by

                                            @Miro-S
                                            Wenn dein Build erfolgreich durchgelaufen ist, hast du doch dein binary für den 4b.
                                            Du musst es nur noch an die richtige Stelle kopieren.
                                            Da ich Phantomjs nicht verwende, kann ich dir die richtige Stelle leider nicht sagen. Evtl jemand, der das erfolgreich installiert hat.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            943
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            32
                                            148
                                            18530
                                            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