NEWS
IoBroker.phantomjs
-
Das Bild wird unter http://ip:8082/state/phantomjs.0.pictures.image_png erreichbar. `
Gerade noch einmal getestet. Unter dem Link wird keine Grafik angezeigt, sondern ein "Buffer":
`{"type":"Buffer","data":[137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,2,128,0,0,1,224,8,6,0,0,0,53,209,220,228,0,0,0,9,112,72,89,115,0,0,11,19,0,0,11,19,1,0,154,156,24,0,0,32,0,73,68,65,84,120,156,236,221,119,124,20,101,254,192,241,207,204,182,244,70,40,33,16,64,66,111,210,81,144,46,136,5,17,68,17,245,212,19,69,15,11,234,89,206,222,21,245,84,68,79,176,33,162,128,136,2,138,20,145,94,142,222,123,111,9,129,144,222,118,179,187,51,191,63,242,203,30,33,109,54,217,20,204,247,253,122,249,122,153,157,103,158,121,118,153,242,157,167,42,237,218,181,211,17,37,154,23,19,84,213,69,168,80,195,78,101,86,117,17,132,16,66,8,81,137,212,170,46,128,16,66,8,33, ...[/code]` Kommt auch beim Klick auf dem Link im Datenpunkt: **~~[b]~~phantomjs.0.pictures.image_png[/b]**
-
Hallo,
Ich versuche ein Flot diagramm über telegram zu senden, aber das funktioniert irgendwie nicht.
Ich versuche mit folgendem Code das an telegtram zu senden (Ich bin leider nicht so fit in Javascript.):
function sendPicture (_url) { console.log("send picture: " + _url); console.log("send picture: " + _url); sendTo('telegram.0', 'please wait, generating picture...'); sendTo('phantomjs.0', 'send', { url: _url, //'http://google.com', output: 'image.png', width: 300, height: 200, renderTime: 10000, online: true }, function (result) { console.log('phantomjs result: ' + result.error + ' ' + result.output); setTimeout(function(){ sendTo('telegram.0', 'http://192.168.178.220:8082/state/phantomjs.0.pictures.image_png'); //http://ip:8082/state/phantomjs.0.pictures.image_png //iobroker.phantomjs/image.png }, 12000); }); }
aufrufen wird diese Funktion mit dem Pfad zum Flot Diagram. Damit passiert auch irgendwas, ich habe nur nirgends ein Bild gefunden. Im Log taucht auch ein Fehler auf "Error: spawn EACCES":
javascript.0 2016-11-01 23:01:49.001 info script.js.common.Telegram.MainCmd: sendTo(adapter=telegram.0, cmd=http://192.168.178.220:8082/state/phantomjs.0.pictures.image_png, msg=undefined) javascript.0 2016-11-01 23:01:37.000 info script.js.common.Telegram.MainCmd: setTimeout(ms=12000) javascript.0 2016-11-01 23:01:37.000 info script.js.common.Telegram.MainCmd: phantomjs result: [object Object] /media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/image.png phantomjs.0 2016-11-01 23:01:36.995 error Error: spawn EACCES phantomjs.0 2016-11-01 23:01:36.995 info and save to "/media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/image.png" javascript.0 2016-11-01 23:01:36.980 info script.js.common.Telegram.MainCmd: setForeignState(id=javascript.0.textProcessor, state={"val":" ","ack":true}) javascript.0 2016-11-01 23:01:36.980 warn Wrong type of javascript.0.textProcessor: "string". Please fix, while deprecated and will not work in next versions. javascript.0 2016-11-01 23:01:36.980 info script.js.common.Telegram.MainCmd: endetrue javascript.0 2016-11-01 23:01:36.979 info script.js.common.Telegram.MainCmd: sendTo(adapter=phantomjs.0, cmd=send, msg={"url":"http://192.168.178.220:8082/flot/index.html?l%5B0%5D%5Bid%5D=hm-rpc.0.LEQ0531644.2.POWER&l%5B0%5D%5Baggregate%5D=m javascript.0 2016-11-01 23:01:36.979 info script.js.common.Telegram.MainCmd: sendTo(adapter=telegram.0, cmd=please wait, generating picture..., msg=undefined) javascript.0 2016-11-01 23:01:36.979 info script.js.common.Telegram.MainCmd: send picture: http://192.168.178.220:8082/flot/index.html?l%5B0%5D%5Bid%5D=hm-rpc.0.LEQ0531644.2.POWER&l%5B0%5D%5Baggregate%5D=minmax&l%5B0%5D%5Bcolor%5D=rgba(187%2
Vielleicht ein Berechtigungsproblem?
Vielleicht hat jemand eine Idee wie ich hier weiter komme?
Danke und Gruß
Robert
-
Hallo,
kann keiner helfen?
Ich ahb ein einfacheres Testscript erstellt:
function testSomething () { //http://google.com sendTo('phantomjs.0', 'send', { url: 'http://google.com', output: 'image.png', width: 300, height: 200, renderTime: 10000, online: true }, function (result) { console.log(result.error + ' ' + result.output); }); }
Hier kommt selber Fehler:
javascript.0 2016-11-03 21:34:21.125 info script.js.common.Telegram.MainCmd: [object Object] /media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/image.png phantomjs.0 2016-11-03 21:34:21.122 error Error: spawn EACCES phantomjs.0 2016-11-03 21:34:21.122 info and save to "/media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/image.png" phantomjs.0 2016-11-03 21:34:21.115 info Create 300px*200px in 10000ms - "http://google.com"
Ich hab auch versucht das Objekt phantomjs.0.filename direkt auf eine dateinem gesetzt und auch phantomjs.0.url, selbes Ergebniss:
phantomjs.0 2016-11-03 21:38:35.558 error Error: spawn EACCES phantomjs.0 2016-11-03 21:38:35.558 info and save to "/opt/iobroker/iobroker-data/files/vis.0/img/image.png" phantomjs.0 2016-11-03 21:38:35.554 info Create 800px*600px in 2000ms - "http://google.com"
Ich habe phantomjs adapter auch mal komplett gelöscht und neu installiert.
Gruß
Robert
-
Kannst du mal die Rechte anpassen?
cd ioBrokerVerzeichnis
sudo chmod 777 * -R
-
Leider keine Änderung.
Ich habe es mit /opt/iobroker und /media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/
durchgeführt. (/opt/iobroker ist ein symbolischer Link zu dem Media Verzeichnis, da das eine Festplatte ist, /opt/ liegt auf einem USB Stick).
Ich habe es auch direkt in der Admin Oberfläche über das Objekt ausprobiert - selber Fehler.
Mit welchem Nutzer läuft denn IO Broker oder Phantomjs? Wenn ich mich mit ssh verbinde, dann immer als root. So habe ich auch iobroker installiert.
Der Rest geht bei mir ja auch.
Was kann ich noch machen?
-
Vielleicht noch als Info, ich nutze ein Debian Wheezy basiertes System (Openmediavault).
Nachdem ich etwas mit node herumgespielt habe (deinstalliert und wieder neu installiert kommt folgender fehler:
host.GD-Server 2016-11-18 20:51:39.362 info Restart adapter system.adapter.phantomjs.0 because enabled host.GD-Server 2016-11-18 20:51:39.362 error instance system.adapter.phantomjs.0 terminated with code 0 (OK) phantomjs.0 2016-11-18 20:51:39.359 info terminating host. 2016-11-18 20:51:39.357 debug redis publish io.system.adapter.phantomjs.0.alive {"val":false,"ack":true,"ts":1479498699357,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498699357} host. 2016-11-18 20:51:38.858 debug redis pmessage io.phantomjs.0.* io.phantomjs.0.working {"val":true,"ack":true,"ts":1479498698857,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498698857} host. 2016-11-18 20:51:38.857 debug redis publish io.phantomjs.0.working {"val":true,"ack":true,"ts":1479498698857,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498698857} phantomjs.0 2016-11-18 20:51:38.856 warn Exception: Error: spawn EACCES phantomjs.0 2016-11-18 20:51:38.855 error at Timer.listOnTimeout (timers.js:92:15) phantomjs.0 2016-11-18 20:51:38.855 error at null._onTimeout (/media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/main.js:26:17) phantomjs.0 2016-11-18 20:51:38.855 error at render (/media/1c31537f-0f75-428d-9228-7b54b469086c/iobroker/node_modules/iobroker.phantomjs/main.js:105:8) phantomjs.0 2016-11-18 20:51:38.855 error at Object.exports.execFile (child_process.js:151:15) phantomjs.0 2016-11-18 20:51:38.855 error at exports.spawn (child_process.js:362:9) phantomjs.0 2016-11-18 20:51:38.855 error at ChildProcess.spawn (internal/child_process.js:309:11) phantomjs.0 2016-11-18 20:51:38.855 error at exports._errnoException (util.js:911:11) phantomjs.0 2016-11-18 20:51:38.855 error Error: spawn EACCES phantomjs.0 2016-11-18 20:51:38.854 error uncaught exception: spawn EACCES phantomjs.0 2016-11-18 20:51:38.832 info Create 800px*600px in 2000ms - "http://www.google.com" host. 2016-11-18 20:51:38.830 debug redis pmessage io.phantomjs.0.* io.phantomjs.0.url {"val":"http://www.google.com","ack":false,"ts":1479498698829,"q":0,"from":"system.adapter.admin.0","lc":1478551685071} host. 2016-11-18 20:51:26.855 debug redis publish io.system.adapter.phantomjs.0.uptime {"val":4908,"ack":true,"ts":1479498686855,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498686855} host. 2016-11-18 20:51:26.855 debug redis publish io.system.adapter.phantomjs.0.memHeapUsed {"val":10.87,"ack":true,"ts":1479498686855,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498686855} host. 2016-11-18 20:51:26.855 debug redis publish io.system.adapter.phantomjs.0.memHeapTotal {"val":14.93,"ack":true,"ts":1479498686854,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498686854} host. 2016-11-18 20:51:26.854 debug redis publish io.system.adapter.phantomjs.0.memRss {"val":31.2,"ack":true,"ts":1479498686854,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498686854} host. 2016-11-18 20:51:26.854 debug redis publish io.system.adapter.phantomjs.0.connected {"val":true,"ack":true,"ts":1479498686854,"q":0,"from":"system.adapter.phantomjs.0","lc":1479493779051} host. 2016-11-18 20:51:26.854 debug redis publish io.system.adapter.phantomjs.0.alive {"val":true,"ack":true,"ts":1479498686854,"q":0,"from":"system.adapter.phantomjs.0","lc":1479493779050} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.uptime {"val":4893,"ack":true,"ts":1479498671848,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498671848} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.memHeapUsed {"val":10.71,"ack":true,"ts":1479498671848,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498671848} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.memHeapTotal {"val":13.95,"ack":true,"ts":1479498671848,"q":0,"from":"system.adapter.phantomjs.0","lc":1479494034197} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.memRss {"val":30.82,"ack":true,"ts":1479498671848,"q":0,"from":"system.adapter.phantomjs.0","lc":1479498671848} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.connected {"val":true,"ack":true,"ts":1479498671848,"q":0,"from":"system.adapter.phantomjs.0","lc":1479493779051} host. 2016-11-18 20:51:11.848 debug redis publish io.system.adapter.phantomjs.0.alive {"val":true,"ack":true,"ts":1479498671847,"q":0,"from":"system.adapter.phantomjs.0","lc":1479493779050}
folgende Versionen hab ich jetzt:
root@GD-Server:~# node -v v4.6.2 root@GD-Server:~# nodejs -v v4.6.2 root@GD-Server:~# npm -v 2.15.11
-
Bin gerade dabei das Monul auf einem OrangePi zu testen.
Nachdem ich eine vorkompilierte phantomjs version gefunden hatte konnte ich PNGs erstellen.
Das mit dem "online" flag funktioniert aber nicht und ich denke unter phantomjs.0.pictures sollte eine Art History stehen, die ist aber leer.
Ludger
Edit!!! Funktioniert doch
Nur wird der MimeType bei der URL nicht gesetzt, bei mir kommt im Firefox nur der "binäre" Text
-
Hallo,
ich habe Probleme phantomjs zu installieren:
pi@raspberrypi:/opt/iobroker $ sudo npm install https://github.com/ioBroker/ioBroker.phantomjs/tarball/master --production > usb@1.2.0 install /opt/iobroker/node_modules/usb > node-pre-gyp install --fallback-to-build node-pre-gyp ERR! Tried to download: https://github.com/tessel/node-usb/releases/download/1.2.0/usb_bindings-v1.2.0-node-v51-linux-arm.tar.gz node-pre-gyp ERR! Pre-built binaries not found for usb@1.2.0 and node@7.10.0 (node-v51 ABI) (falling back to source compile with node-gyp) gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/7.10.0" gyp WARN EACCES attempting to reinstall using temporary dev dir "/opt/iobroker/node_modules/usb/.node-gyp" make: Entering directory '/opt/iobroker/node_modules/usb/build' make: *** No rule to make target '../.node-gyp/7.10.0/include/node/common.gypi', needed by 'Makefile'. Schluss. make: Leaving directory '/opt/iobroker/node_modules/usb/build' gyp ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/opt/iobroker/node_modules/npm/node_modules/node-gyp/lib/build.js:285:23) gyp ERR! stack at emitTwo (events.js:106:13) gyp ERR! stack at ChildProcess.emit (events.js:194:7) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12) gyp ERR! System Linux 4.9.24-v7+ gyp ERR! command "/usr/bin/nodejs" "/opt/iobroker/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/opt/iobroker/node_modules/usb/src/binding/usb_bindings.node" "--module_name=usb_bindings" "--module_path=/opt/iobroker/node_modules/usb/src/binding" gyp ERR! cwd /opt/iobroker/node_modules/usb gyp ERR! node -v v7.10.0 gyp ERR! node-gyp -v v3.6.0 gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/nodejs /opt/iobroker/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/opt/iobroker/node_modules/usb/src/binding/usb_bindings.node --module_name=usb_bindings --module_path=/opt/iobroker/node_modules/usb/src/binding' (1) node-pre-gyp ERR! stack at ChildProcess. <anonymous>(/opt/iobroker/node_modules/usb/node_modules/node-pre-gyp/lib/util/compile.js:83:29) node-pre-gyp ERR! stack at emitTwo (events.js:106:13) node-pre-gyp ERR! stack at ChildProcess.emit (events.js:194:7) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:899:16) node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5) node-pre-gyp ERR! System Linux 4.9.24-v7+ node-pre-gyp ERR! command "/usr/bin/nodejs" "/opt/iobroker/node_modules/usb/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd /opt/iobroker/node_modules/usb node-pre-gyp ERR! node -v v7.10.0 node-pre-gyp ERR! node-pre-gyp -v v0.6.30 node-pre-gyp ERR! not ok Failed to execute '/usr/bin/nodejs /opt/iobroker/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/opt/iobroker/node_modules/usb/src/binding/usb_bindings.node --module_name=usb_bindings --module_path=/opt/iobroker/node_modules/usb/src/binding' (1) > phantomjs-prebuilt@2.1.14 install /opt/iobroker/node_modules/phantomjs-prebuilt > node install.js PhantomJS not found on PATH Unexpected platform or architecture: linux/arm It seems there is no binary available for your platform/architecture Try to install PhantomJS globally npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modules/iobroker.radar/node_modules/noble/node_modules/xpc-connection): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modules/noble/node_modules/xpc-connection): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.2.0 (node_modules/usb): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.2.0 install: `node-pre-gyp install --fallback-to-build` npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1 npm ERR! Linux 4.9.24-v7+ npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "https://github.com/ioBroker/ioBroker.phantomjs/tarball/master" "--production" npm ERR! node v7.10.0 npm ERR! npm v4.2.0 npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! phantomjs-prebuilt@2.1.14 install: `node install.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the phantomjs-prebuilt@2.1.14 install script 'node install.js'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the phantomjs-prebuilt package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node install.js npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs phantomjs-prebuilt npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls phantomjs-prebuilt npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /root/.npm/_logs/2017-06-19T11_38_33_715Z-debug.log</anonymous>
Wer kann mir helfen?
Danke und viele Grüße
Marcel Jaud
-
Hallo!
Wäre es möglich, die top und left Werte in der rastersize.js im Adapter selbst zu ändern? Also als weitere Datenpunkte.
page.clipRect = { top: 265, left: 230, width: pageWidth, height: pageHeight };
Damit man von einer Webseite nur einen gewissen Bereich als Screenshot speichert.
Eventuell auch noch die Auflösung:
page.viewportSize = {width: 1920, height: 1080};
Ich hab das momentan nur in der rastersize.js angepasst aber beim nächsten Adapter Update wird das sicher wieder überschrieben.
Danke!!!
-
Ich hab das momentan nur in der rastersize.js angepasst aber beim nächsten Adapter Update wird das sicher wieder überschrieben.
Danke!!! `
Ich vermute, wenn Du Deinen Wunsch in Github einträgst, geht er micht verloren:
-
Hallo,
ich habe seit einiger Zeit (vermute nach Update) Probleme mit dem Erzeugen von Bildern.
Die Größe ist nicht mehr wie angegeben, sie ist immer 800x600.
Kann da jemand helfen?
Gruß Jens
-
noch ein Ausschnitt aus dem Log dazu
-
noch ein Ausschnitt aus dem Log dazu
filename="phantom.JPG" index="0">~~ ` Am Besten du öffnest ein Issue zum Adapter auf Github.
-
Oh Gott, hoffentlich bekomme ich das hin, hab' ich noch nie gemacht.
-
Oh Gott, hoffentlich bekomme ich das hin, hab' ich noch nie gemacht. `
Bestimmt
https://github.com/ioBroker/ioBroker.phantomjs/issues
Github Anmeldung erstellen. Und dann beim Adapter auf Issues einen neuen Eintrag schreiben.
Bisschen Info dazu (Version Adapter, node.js. npm, …) können nicht schaden.
[EDIT] das mit den Versionen muss ich mir auch angewöhnen :mrgreen:
-
Vielen Dank für das Update es funktioniert,
Oli
-
Sieht mit 1.0.1 bei mir auch gut aus.
Danke und Gruß
Jens
-
Hallo
Läuft der Adapter mit dem neuen Admin ?
Ich möchte mir Bilder von meinen Flots per Telegram schicken
Gruß
Gesendet von iPhone mit Tapatalk Pro
-
Hallo
Läuft der Adapter mit dem neuen Admin ?
Ich möchte mir Bilder von meinen Flots per Telegram schicken
Gruß
Gesendet von iPhone mit Tapatalk Pro `
Habe ihn unter 3.5.1. laufen.
Gruß
Holger
-
Super Danke , teste ich heute Abend
Gesendet von iPhone mit Tapatalk Pro