ūüďĎ Como adicionar cart√Ķes de localiza√ß√£o


(Jorge Assunção) #1

Para quem usa sistemas de localiza√ß√£o por GPS, com aplica√ß√Ķes como o Owntracks ou o Zanzito, sabe que pode ir ao menu da esquerda e seleccionar a op√ß√£o Mapas e poder√° ver um mapa com todos os utilizadores seguidos pelo device_tracker.

Se nunca utilizas-te, v√™ o tutorial do @RodolfoVieira ‚≠ź Como configurar o Zanzito

Mas e se quiseres a localização de apenas um utilizador? E se não quiseres ou puderes abrir o Mapa no menu da esquerda?

A solu√ß√£o s√£o os cart√Ķes de localiza√ß√£o criados com o Google Maps e o componente camera:!

Começa por criar uma nova camera:

camera:
#### GPS Tracker
  - platform: generic
    name: Utilizador
    still_image_url: https://maps.googleapis.com/maps/api/staticmap?center={{ states.device_tracker.utilizador.attributes.latitude }},{{ states.device_tracker.utilizador.attributes.longitude }}&zoom=16&size=500x500&maptype=roadmap&markers=color:green%7Clabel:JA%7C{{ states.device_tracker.utilizador.attributes.latitude }},{{ states.device_tracker.utilizador.attributes.longitude }}
    limit_refetch_to_url_change: true

Do código acima devem alterar o seguinte:

  • name: Utilizador - Nome que quiserem utilizar
  • states.device_tracker.utilizador.attributes.latitude - Nome da entidade que querem utilizar
  • states.device_tracker.utilizador.attributes.longitude - Nome da entidade que querem utilizar

Opcionalmente podem também alterar:

  • &zoom=16 - N√≠vel de zoom do mapa
  • &size=500x500 - Tamanho do mapa
  • &maptype=roadmap - Tipo de mapa
  • markers=color:green - Cor do marcador
  • label:JA - Nome que aparece no marcador

Depois basta inserir o mapa num grupo:

#### LOCALIZAÇÃO
tab_localizacao:
  name: Localização
  view: yes
  icon: mdi:account-multiple
  entities:
    - camera.utilizador

E j√° est√°!


(Bruno Lopes) #2

Ou seja… não é possível usar a localização dos utilizadores via Google Maps no mapa do home assistant correto?


(Jorge Assunção) #3

√Č poss√≠vel utilizar, sim. √Č esse o comportamento por defeito do sistema e actualiza em tempo real. Mas a utiliza√ß√£o de um cart√£o de localiza√ß√£o serve outros prop√≥sitos.

Imagina que estás num telemóvel e não tens acesso ao teu HA e precisas de saber onde está alguém da família, o filho por exemplo. Configuras o Telegram e uma automação que responde a um comando tipo /loc_filho e envias o comando. De seguida recebes a imagem da localização e ficas a saber onde está a pessoa. Este é apenas um exemplo, se calhar até descabido, do que se consegue fazer com o cartão de localização.

Se utilizares o Zanzito, a aplicação tem um mapa próprio onde mostra todos os utilizadores e podes até tirar fotos remotamente e acederes às configuração da aplicação remota.


(Bruno Lopes) #4

Agora percebi… como recebo por Pushbullet ainda não usei o Telegram (admito que ando curioso por testa-lo).

Seria suposto então a localização do Google Maps estar a aparecer no mapa do HA? No meu caso isso não está a acontecer. Por Owntracks surge mas devido ao gasto de bateria e imensas falhas deixei de usar.


(Jorge Assunção) #5

O Zanzito é pago mas acredita que vale a pena. Vai ver o que a aplicação faz:

https://play.google.com/store/apps/details?id=it.barbaro.zanzito

Tens opção de comprar uma licença que dá para toda a família.

Sim! Se fores ao States do Developer Tools do HA (símbolo <> no fundo do menu da esquerda) e pesquisares por device_traker o que aparece?


(Bruno Lopes) #6

Para o device_tracker do google maps tenho a informação de latitude e longitude


(Jorge Assunção) #7

Mas que nome tem a entidade?


(Bruno Lopes) #8

Aparece como device_tracker.google_maps_10310935175037******


(Jorge Assunção) #9

E o que estás a usar para te dar a localização? Uma aplicação?


(Thiago Brenner) #10

A minha plataforma googole_maps funcionou muito bem, porém parou de funcionar quando mudei de email. Não aparece mais os devices compartilhado no email. Sabes o que pode ser?


(Jorge Assunção) #11

Com o endereço novo tens de activar uma nova API de localização…


(Thiago Brenner) #12

Ficaria assim?

  • platform: google_maps
    username: !secret email
    password: !secret senha
    api_key: !secret apikeygooglemap

N√£o localiza nada ainda no know_device


(Jorge Assunção) #13

O username foi alterado para o endereço de email novo?

A password est√° correcta?

A API foi gerada com um login do endereço novo?

Tens erros no log?


(Thiago Brenner) #14

Sim, tudo certo. Porém não funciona mais com o email novo nem com o antigo. tem esse erro no log:

Wed Apr 18 2018 17:24:51 GMT-0300 (Hora oficial do Brasil)

Error setting up platform google_maps
Traceback (most recent call last):
File ‚Äú/usr/lib/python3.6/site-packages/homeassistant/components/device_tracker/init.py‚ÄĚ, line 184, in async_setup_platform
disc_info)
File ‚Äú/usr/lib/python3.6/concurrent/futures/thread.py‚ÄĚ, line 56, in run
result = self.fn(*self.args, **self.kwargs)
File ‚Äú/usr/lib/python3.6/site-packages/homeassistant/components/device_tracker/google_maps.py‚ÄĚ, line 36, in setup_scanner
scanner = GoogleMapsScanner(hass, config, see)
File ‚Äú/usr/lib/python3.6/site-packages/homeassistant/components/device_tracker/google_maps.py‚ÄĚ, line 54, in init
hass.config.path(CREDENTIALS_FILE))
File ‚Äú/usr/lib/python3.6/site-packages/locationsharinglib/locationsharinglib.py‚ÄĚ, line 184, in init
if cookies_file and self._validate_cookie(cookies_file):
File ‚Äú/usr/lib/python3.6/site-packages/locationsharinglib/locationsharinglib.py‚ÄĚ, line 209, in _validate_cookie
raise InvalidCookies(message)
locationsharinglib.locationsharinglibexceptions.InvalidCookies: The cookies provided do not provide a valid session.Please authenticate normally and save a valid session again


(Jorge Assunção) #15

O problema poderá estar aqui…


(Thiago Brenner) #16

Bom, vou voltar para owntracker. Vi bastante gente com esse problema, parece n√£o ser uma API oficial ainda, ent√£o vou esperar para ver. J√° coloquei o backup anterior e fiz igual a primeira ver quando funcionou e nada. Obrigado pelo feed