📑 Como adicionar cartões de localização

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 (device tracker android)

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á!

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

É 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.

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.

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?

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

Mas que nome tem a entidade?

Aparece como device_tracker.google_maps_10310935175037******

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

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?

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

Ficaria assim?

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

Não localiza nada ainda no know_device

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?

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

O problema poderá estar aqui…

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

@j_assuncao
Gostei muito da ideia do cartão de localização, mas desculpa, porque não percebi por onde começar.

1 - Como se criam cartões de localização no google maps?

2 - Quando falas no componente camera é este que tem de estar instalado?

3 - O código para criar uma nova camera, será para colucar no configuration.yal?

4 - E depois o segundo código ### Localização, é também no configuration.ymal.

5 - Em depois que tipo de cartão usas para criar aquele produto final, do mapa, localização e percentagem de bateria?

Tens tempo de responder, que não tenho pressa, mas estou mesmo perdido e gostava de ter algo identico.

Obrigado.

1 - Os cartões de localização não se criam no Google Maps

2 - O componente não precisa de ser instalado pois já vem no HA por defeito

3 - Depende de se usares a configuração “normal” ou por packages

4 - A mesma resposta que a anterior

5 - Usas um cartão vertical-stack com dois cartões lá dentro: um entities e outro map

1 Curtiu

Penso que percebi. :slight_smile:
Hoje vou descansar um pouco de HA, senão vou começar a fazer asneira. .

Obrigado @j_assuncao


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


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