Parte2 - Valetudo

Olá a todos,

No seguimento desse tutorial:

Vamos agora ver como ter o mapa no HA, ativar o telegram, ter vários mapa (fases experimental, não testei)
A hora deste tutorial, vamos usar a versão 0.9.1 do fork do valetudo.
Para o container que vamos instalar, não pode ser no HassOS.

Mapa

O que vamos usar encontra-se aqui:

Usando o winscp que vimos na parte1, vamos entrar na shell do aspirador e ir a essa pasta:
/mnt/data/valetudo

image

Depois disso, vamos abrir o ficheiro config.json e editar as seguintes linhas para ficar como esta aqui.

    "broker_url": "mqtt://user:password@ip.do.servidor.mqtt",
     ....
    "provideMapData": true,

Gravar e fechar.

Agora, temos que instalar um container, que vai disponibilizar o mapa para o HA.

Antes de criar o container, temos que fazer o seguinte na maquina que vai correr o container:

  • Criar essa pasta: /root/valetudo-mapper/ (ou onde quiserem)
  • Dentro dessa pasta, criar o ficheiro config.json com o seguinte conteúdo:
{
  "mqtt": {
    "identifier": "rockrobo",
    "topicPrefix": "valetudo",
    "autoconfPrefix": "homeassistant",
    "broker_url": "mqtt://user:password@ip.do.mqtt:1883",
    "caPath": "",
    "mapSettings": {
      "drawPath": true,
      "drawCharger": true,
      "drawRobot": true,
      "drawForbiddenZones": true,
      "drawVirtualWalls": true,
      "border": 2,
      "scale": 4,
      "gradientBackground": true,
      "crop_x1": 90,
      "crop_y1": 90,
      "crop_x2": 310,
      "crop_y2": 290
    },
    "mapDataTopic": "valetudo/rockrobo/map_data",
    "minMillisecondsBetweenMapUpdates": 3000,
    "publishMapImage": true,
    "publishMapData": true
  },
  "webserver": {
    "enabled": true,
    "port": 3000
  }
}

Agora é correr esse comando no sistema operativo que está por baixo do HA desde que não seja HassOS e fora do HA, ou noutra maquina.

docker create --name=valetudomapper -e PUID=0 -e PGID=0 -p 3000:3000 -e TZ=Europe/Lisbon -v /root/valetudo-mapper/config.json:/app/config.json --restart unless-stopped roflcoopter/valetudo-mapper

Se agora formos ao browser e inserimos o seguinte url: http://ip.da.maquina.quecorreessecontinaer:3000/api/map/image vamos ter o nosso mapa

image

Depois no HA, é adicionar esse codigo:

camera:
  - platform: generic
    name: Roborock
    still_image_url: http://ip.da.maquina.quecorreessecontinaer:3000/api/map/image

E adicionam isso no vosso lovelace.

Telegram

Vamos ao valetudo -> settings ->telegram

É só seguir as instruções que estão na pagina do valetudo, mas no entanto vou acrescentar umas explicações:

  • HTTP API TOKEN: vai vós ser dado pelo telegram
  • Bot Password: Tem que definir na interface do valetudo e será para inserir quando interagirem com o vosso bot, só na 1ª interação.

Depois vão poder ter acesso a isso:
image

Vários Mapas

Nessa versão podemos criar mapas e carregar os mapas que pretendemos:

Podem ser carregados pela web interface ou mesmo pelo telegram.
Isso dos mapas, tem potencial, por exemplo vários pisos (no momento do tutorial, estava em fase experimental).

Backup

Para quem quiser realizar backups das configurações do valetudo, podem o fazer usando o winscp e se ligar ao aspirador pelo winscp. Depois disso metam o seguinte url:

/mnt/data/valetudo

image

Clicam em ok, e vão ver o seguinte:

image

Podem fazer o download dessa pasta que tem as configurações que realizaram no valetudo.

Espero que gostaram.

3 Likes

Boas,

depois de colocar a linha de comandos no ubuntu, ele faz o pull e não tem qualquer erro, mas ao aceder ao endereço que supostamente deveria dar-me o mapa, não me dá nada, dá erro na ligação. Existe algum sitio que consiga ver logs?

@xicoamaral vis te se o container está a funcionar? Podes ver isso pelo portainer ou pela linha de comando com esse comando:

docker ps

nao, nao me aparece nada… tentei fazer start ao container valetudomapper mas da me erro. será por estar a correr numa LXC?

Já criei numa outra VM que tinha aqui, e agora o container já esta a correr, mas tenho o mesmo problema, nao consigo ver o mapa. Atraves do ip do roborock, consigo( nao sei se ajuda em alguma coisa)

Que versão do valetudo tens instalado? (fork ou original e versão da mesma)

tenho o fork 0.9.0
o container valetudomapper está constantemente a reiniciar, será esse o problema?

Sim é o problema. vê os logs do container com esse comando:

docker logs -f xxxxxxxxxx

onde xxxxxxx = o nome do container.
Para ver o nome faz o comando:
docker ps

Exemplo:na coluna “NAMES” aparece “valetudomapper”, logo o comando será

docker logs -f valetudomapper

o erro é este:

Loading configuration file: /app/config.json
Invalid configuration file!
Writing new file using defaults
internal/fs/utils.js:220
throw err;
^

Error: EISDIR: illegal operation on a directory, open ‘/app/config.json’
at Object.openSync (fs.js:440:3)
at Object.writeFileSync (fs.js:1265:35)
at Configuration.persist (/app/lib/Configuration.js:84:8)
at new Configuration (/app/lib/Configuration.js:49:18)
at Object. (/app/app.js:6:14)
at Module._compile (internal/modules/cjs/loader.js:956:30)
at Object.Module._extensions…js (internal/modules/cjs/loader.js:973:10)
at Module.load (internal/modules/cjs/loader.js:812:32)
at Function.Module._load (internal/modules/cjs/loader.js:724:14)
at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10) {
errno: -21,
syscall: ‘open’,
code: ‘EISDIR’,
path: ‘/app/config.json’
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! valetudo-mapper@0.3.0 start: node app.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the valetudo-mapper@0.3.0 start 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! /root/.npm/_logs/2020-03-17T16_08_12_627Z-debug.log

Alguem com problemas em receber notificações no telegram ?

Consigo “comandar” via telegram mas nunca recebo qualquer notificação…

Já alterei a timezone via browser e via putty “dpkg-reconfigure tzdata” e vejo que o hwclock e o date tem a data correcta mas nada de notificações , alguem passou pelo mesmo ?

Versão 0.9.8.2 , tinha uma bem mais antiga e já sofria do mesmo…


Copyright © 2017-2020. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade