NEWS
IRobot Roomba Adapter
-
@Zefau :
Roomba-Objekte sind unter roomba.0 vorhanden.

Telegram ist installiert und soweit konfiguriert (Api-Key eingetragen). Im Log finde ich keine Fehler.
Datenpunkt roomba.0..missions.current.ended wird beschrieben, siehe Bild oben.Info: Habe den Roomba 980.
Der Rest funktioniert:

Tippe mal auf Telegram, wenn es bei anderen funktioniert. So ok?

Gruß Balu
-
@Zefau: Du hast eine PN
Hab auf dem Rechner einfach mal den Ordner C:\tmp erstellt, leider ohne Erfolg. -
@Zefau: Du hast eine PN
Hab auf dem Rechner einfach mal den Ordner C:\tmp erstellt, leider ohne Erfolg.@baluderbär Jo, liegt sehr eindeutig daran. Ich habe ioBroker auf einem Linux laufen, da funktioniert es. Auf dem Windows geht es offensichtlich nicht.
Ersetze
_fs.writeFile('/tmp/image.png', ...mal mit_fs.writeFile('tmp/image.png', ...(also Pfad anpassen). Funktioniert es dann? -
@Zefau muss ich es auch hier anpassen?
ALT
sendTo('telegram', {text: '/tmp/image.png', message: message})NEU
sendTo('telegram', {text: 'tmp/image.png', message: message}) -
@Zefau muss ich es auch hier anpassen?
ALT
sendTo('telegram', {text: '/tmp/image.png', message: message})NEU
sendTo('telegram', {text: 'tmp/image.png', message: message})@baluderbär jo, genau
-
@baluderbär jo, genau
@baluderbär Funktioniert's bei dir nun? Habe das Skript auf Github schon mal angepasst.
-
Hallo Zefau,
cooler Adapter. Hab leider ein Problem mit der Karte und dem Skript.- Karte: Wenn ich die Roomba-Adapter-Website öffne erscheint folgendes:
. Wie du siehst fehlen hier einige Informationen. Beim Klicken auf "download map" erscheint folgendes:

Wenn ich in VIS die Karte (roomba.0.missions.current.mapImage) einbinde funktioniert es:

- Skript:
Habe das Skript bei mir eingebunden, jedoch wird auch hier keine Karte an Telegram verschickt.
var _fs = require('fs'); /* * MISSION END: Send map * */ var ns = 'roomba.0'; var message = "%device.name% finished at %missions.current.endedDateTime% cleaning %missions.current.sqm% sqm in %missions.current.runtime% seconds (%missions.current.error% errors)."; on({id: ns + '.missions.current.ended', change: 'any'}, function(obj) { if (!obj.val) return; // replace variables with state values var pos, variable, state, value; while (message.indexOf('%') > -1) { pos = message.indexOf('%'); variable = message.substring(pos, message.indexOf('%', pos+1)+1); state = getState(ns + '.' + variable.replace(/%/g, '')); if (state !== null && state.val !== null) value = state.val else { log('State ' + variable.replace(/%/g, '') + ' not found!', 'warn'); value = ''; } if (typeof value === "boolean") value = value === true ? 'with' : 'no'; message = message.replace(RegExp(variable, 'gi'), value); } // console log(message); // get image var img = getState('roomba.0.missions.current.mapImage').val; if (img !== null && img.indexOf('data:image/png;base64,') > -1) { _fs.writeFile('/tmp/image.png', img.replace(/^data:image\/png;base64,/, ''), 'base64', function(err) { if (err !== null) log(err.message, 'warn'); else sendTo('telegram', {text: '/tmp/image.png', message: message}); }); } });Hast du eine Idee was ich falsch machen könnte?
Grüße Balu
@baluderbär Hallo Baluderbär, kannst du mir einen Tipp geben wie du die Karte in die Vis eingebunden hast? mit welchem Widget / Okjekt ID? Ich bin das gerade am versuchen und bekomme das leider nicht hin.
Ps. in den Objekten habe ich werte und es zeigt mir auch eine HTML Kartenvorschau an.
Danke für deine / eure Tipps! - Karte: Wenn ich die Roomba-Adapter-Website öffne erscheint folgendes:
-
@baluderbär Hallo Baluderbär, kannst du mir einen Tipp geben wie du die Karte in die Vis eingebunden hast? mit welchem Widget / Okjekt ID? Ich bin das gerade am versuchen und bekomme das leider nicht hin.
Ps. in den Objekten habe ich werte und es zeigt mir auch eine HTML Kartenvorschau an.
Danke für deine / eure Tipps!Hab doch gerade eine Variante gefunden wie ich das hinbekomme, für den nächsten der das auch Sucht:
Widget Basic / String img src und dort die Objekt ID: roomba.0.missions.current.mapImage auswählen. -
Hallo,
hab immer noch das Problem das keine Karte angezeigt wird genauso der Name des Saugers.
Hier screenshot
@Gonzo0815 im Web Adapter Sockets aktivieren
-
@Gonzo0815 im Web Adapter Sockets aktivieren
-
@Gonzo0815 hmm, ok. Kannst mal versuchen den Haken bei “nur Web Sockets“ zu entfernen?
Wenn es dann noch nicht geht, bitte die Browser Fehler Console mal auf Fehler prüfen.
-
@Gonzo0815 hmm, ok. Kannst mal versuchen den Haken bei “nur Web Sockets“ zu entfernen?
Wenn es dann noch nicht geht, bitte die Browser Fehler Console mal auf Fehler prüfen.
-
Hallo, ich brauche mal bitte ein wenig Unterstützung.
Bei mir läuft ioB auf einer Windows Umgebung. Der roomba Adapter ist in der Version 1.0.2 mehr als aktuell
Jedoch bekomme ich immer die Meldung :"roomba.0 2019-07-21 09:57:16.996 warn Canvas not installed! Thus, no map drawings are possible."
Irgendwie checke ich das nicht, wohin ich canvas installieren soll/muss.
Ich habe schon mehrere Versuche unternommen und mit diesem Aufruf canvas in dieses sowie auch andere Verzeichnisse installiert.
C:\ioBroker\node_modules\iobroker.roomba>npm install canvas
Es ist dabei aber egal wohin ich canvas installliere, es kommt immer die Fehlermeldung von oben

Was mache ich falsch? -
Hallo, ich brauche mal bitte ein wenig Unterstützung.
Bei mir läuft ioB auf einer Windows Umgebung. Der roomba Adapter ist in der Version 1.0.2 mehr als aktuell
Jedoch bekomme ich immer die Meldung :"roomba.0 2019-07-21 09:57:16.996 warn Canvas not installed! Thus, no map drawings are possible."
Irgendwie checke ich das nicht, wohin ich canvas installieren soll/muss.
Ich habe schon mehrere Versuche unternommen und mit diesem Aufruf canvas in dieses sowie auch andere Verzeichnisse installiert.
C:\ioBroker\node_modules\iobroker.roomba>npm install canvas
Es ist dabei aber egal wohin ich canvas installliere, es kommt immer die Fehlermeldung von oben

Was mache ich falsch? -
@Zefau
Genau - auch diese Prozedur habe ich ebenfalls schon hinter mir.Allerdings ist es für mich sehr undurchsichtig WO diesen ganzen Zusatz Tools hin installiert werden müssen. Ich habe jetzt GTK, Libjpeg-turbo und canvas unter c;/ installiert. Beim Start des roomba Adapters wird aber trotzdem auf fehlendes Canvas hingewiesen.
Also wie gesagt, unter Windows ist die Installation von Canvas (für mich) sehr undurchsichtig, da offensichtlich noch jede Menge "ZusatzModule" an den richtigen Stellen installiert werden müssen.
Vielleicht kann ja ein Windows Nutzer, bei dem das ganze funktionert, hier mal ein paar erklärende Worte zu der Vorgehensweise posten.
-
Hallo. Ich schreibe mal die Frage hier rein und mache kein neues Thema auf. Ich kann mich mit dem roomba verbinden und dann auch EIN Kommanda absetzen (Start), danach stürzt Adapter mit Fehlermeldung ab:
roomba.0 2019-07-23 16:34:06.655 error at Timer.listOnTimeout (timers.js:290:5) roomba.0 2019-07-23 16:34:06.655 error at tryOnTimeout (timers.js:323:5) roomba.0 2019-07-23 16:34:06.655 error at ontimeout (timers.js:498:11) roomba.0 2019-07-23 16:34:06.655 error at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/iobroker.roomba/node_modules/dorita980/lib/v2/local.js:38:16) roomba.0 2019-07-23 16:34:06.655 error at MqttClient.emit (events.js:211:7) roomba.0 2019-07-23 16:34:06.655 error at emitOne (events.js:116:13) roomba.0 2019-07-23 16:34:06.655 error at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:342:6) roomba.0 2019-07-23 16:34:06.655 error at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:643:38) roomba.0 2019-07-23 16:34:06.655 error TypeError: Cannot read property 'x' of undefined roomba.0 2019-07-23 16:34:06.655 error uncaught exception: Cannot read property 'x' of undefined roomba.0 2019-07-23 16:34:06.645 info Roomba has started a new mission (#46). roomba.0 2019-07-23 16:34:05.840 info Roomba online. Connection established. roomba.0 2019-07-23 16:34:03.444 info Connecting to Roomba..SIeht hier jemand das Problem?
Danke und Grüße
Marc

