Standort von Smartphone anzeigen

Hallo ich würde gerne wissen ob es möglich ist, die Standorte der Smartphone meiner Familie, Frau und 2 Kinder im Home Assistent zusehen. Und wenn ja was muss ich tun.

Zur Zeit nutze ich Family Link, damit kann ich und meine Frau sehen wo unsere Kinder sind.

Gibt’s es nicht eine Möglichkeit das alle ( ganze Familie) sehen können wo sich jeder aufhält?

Ich würde das das gerne auf einer Karte Google Maps sehen wollen.

Gibt es dafür eine Lösung?

Danke
Stefan

1 „Gefällt mir“

Geht mit der map card

Dann einfach die anzuzeigenden Personen auswählen.

Entweder an Home Assistant vorbei über die Standortfreigabe bei Google Maps …

oder auf jeden Smartphone die Home Assistant App installieren und dann die Geräte in Home Assistent der jeweiligen Person zuordnen.

Bei mir sieht das so aus. Ich lasse mir die Adresse anzeigen. Das Icon ändert sich dann auch entsprechend der Zone in der sich die Person befindet. Hat gedauert, habe es aber dann hinbekommen.

EIne Karte bekomme ich ja, wenn ich auf die entsprechende Person klicke…

@RobertoCravallo
Wichtig in so einem Forum ist doch, dass man erklärt, wie es geht.
Zeigen wie es aussehen könnte reicht einem TE meist nicht, wenn du nicht schreibst, wie es geht.

Bei mir sieht es so aus

2 „Gefällt mir“

Ich will hier auch nicht alles zumüllen, wenn es nicht DIE Lösung ist. Denke Stefan ist alt genug sich zu melden, wenn es für ihn eine Lösung ist!!!

Den WIFI-Sensor habe ich mir gebastelt, braucht man aber so nicht hier…

Benutze die MUSHROOM Cards und mache es so:

{% set in_zone = states('device_tracker.roberts_handy')%}

{% if in_zone == 'not_home' %}
  mdi:home-export-outline
{% elif in_zone == 'home' %}
  {{ state_attr('zone.home', 'icon') }}
{% else %}
  {{ states.zone | selectattr('name', 'eq', in_zone)
  | map(attribute='attributes.icon') | join }}
{% endif %}
{% set in_zone = states('device_tracker.roberts_handy')%}

{% if in_zone == 'not_home' %}
  #FFC106
{% elif in_zone == 'home' %}
  blue
{% else %}
  blue
{% endif %}
{% set geo_street =  state_attr('sensor.roberts_handy_geocoded_location', 'thoroughfare' ) %}
{% set geo_street_nr =  state_attr('sensor.roberts_handy_geocoded_location', 'sub_thoroughfare' ) %}
{% set geo_plz =  state_attr('sensor.roberts_handy_geocoded_location', 'postal_code' ) %}
{% set geo_ort =  state_attr('sensor.roberts_handy_geocoded_location', 'locality' ) %}
{% set geo_ortsteil =  state_attr('sensor.roberts_handy_geocoded_location', 'sub_locality' ) %}

{{ geo_street | replace('null', '(Straße ?)') }} {{ geo_street_nr | replace('null', '') }}
{{ geo_plz | replace('null', '(PLZ ?)') }} {{ geo_ort  | replace('null', '(Ort ?)') }} {{ geo_ortsteil | replace('null', '') }}

Wenn jemand es brauchen kann, bitte schön. Über Rückmeldung und Optimierungen freue ich mich besonders…

Hi

ich spiele gerade ein wenig mit deinem Code. aber ich habe keine Ahnung, welcher Sensor das hier ist:
image
Handy_home kenn ich so nicht.
Kannst du mir da helfen?

Den brauchst Du nicht, habe ich mir selber gebastelt. Steht auch im Text…

Habe mich öfter mal mit ausgeschaltetem WIFI erwischt, also musste eine Erinnerung her… :partying_face:

####################################################
#                                                  #
#     Is Roberts Handy HOME?                       #
#                                                  #
####################################################  
- sensor:
  - name: roberts_handy_home
    unique_id: 10d85807-15d4-41e7-bca1-cdfbaf0332b6
    state: >-
      {% if states('binary_sensor.roberts_handy_wifi_state') == 'off' %}
        WIFI ist aus!!
      {% elif states('sensor.roberts_handy_wifi_connection') == "Dein 5 GHz" or
        states('sensor.roberts_handy_wifi_connection') == "Dein 2,4 GHz" %}
        home
      {% else %}
        not_home
      {% endif %}
1 „Gefällt mir“

Sehr nice deine Lösung. Benötigt es dafür “Map Card”? Ich bin sehr an deiner Lösung interessiert aber raffe grade nicht so wirklich wie du das gemacht hast :slight_smile:

Magst du dich detaillierter dazu einlassen oder darf ich dich per Mail dazu befragen ?

MfG

Nein, braucht es nicht.

Klar, kein Thema.

Grundsätzlich hilft es allen, wenn die Details öffentlich sind. :wink:

1 „Gefällt mir“

Hallo, und mit der Map Card geht das?

Kopiere ich das nur eines der Beispiele

und setzte dann nur meine etentät ein?

type: map
aspect_ratio: 16:9
default_zoom: 8
auto_fit: true
entities:

  • device_tracker.demo_paulus --( mein Smartphone???)
  • zone.home

Oder was

Bin Anfänger…

Ich benutze die map_card nicht.

type: horizontal-stack
cards:
  - type: custom:mushroom-template-card
    card_mod:
      style: |
        :host {
          --mush-icon-symbol-size: 0.9em;
        }
    primary: |-
      {% set handy_wifi = states( 'sensor.roberts_handy_home' ) %}
      {% if handy_wifi == 'WIFI ist aus!!' %}
      ACHTUNG: {{ handy_wifi }}
      {% endif %}
    secondary: >-
      {% set geo_street =  state_attr('sensor.roberts_handy_geocoded_location',
      'thoroughfare' ) %}

      {% set geo_street_nr = 
      state_attr('sensor.roberts_handy_geocoded_location', 'sub_thoroughfare' )
      %}

      {% set geo_plz =  state_attr('sensor.roberts_handy_geocoded_location',
      'postal_code' ) %}

      {% set geo_ort =  state_attr('sensor.roberts_handy_geocoded_location',
      'locality' ) %}

      {% set geo_ortsteil = 
      state_attr('sensor.roberts_handy_geocoded_location', 'sub_locality' ) %}


      {{ geo_street | replace('null', '(Straße ?)') }} {{ geo_street_nr |
      replace('null', '') }}

      {{ geo_plz | replace('null', '(PLZ ?)') }} {{ geo_ort  | replace('null',
      '(Ort ?)') }} {{ geo_ortsteil | replace('null', '') }}
    icon: |-
      {% set in_zone = states('device_tracker.roberts_handy')%}

      {% if in_zone == 'not_home' %}
        mdi:home-export-outline
      {% elif in_zone == 'home' %}
        {{ state_attr('zone.home', 'icon') }}
      {% else %}
        {{ states.zone | selectattr('name', 'eq', in_zone)
        | map(attribute='attributes.icon') | join }}
      {% endif %}
    multiline_secondary: true
    layout: horizontal
    icon_color: |-
      {% set in_zone = states('device_tracker.roberts_handy')%}

      {% if in_zone == 'not_home' %}
        #FFC106
      {% elif in_zone == 'home' %}
        blue
      {% else %}
        blue
      {% endif %}
    tap_action:
      action: none
  - type: custom:mushroom-template-card
    card_mod:
      style: |
        :host {
          --mush-icon-symbol-size: 0.9em;
        }
    primary: |-
      {% set handy_wifi = states( 'sensor.sylvia_handy_home' ) %}
      {% if handy_wifi == 'WIFI ist aus!!' %}
      ACHTUNG: {{ handy_wifi }}
      {% endif %}
    secondary: >-
      {% set geo_street =  state_attr('sensor.sylvia_handy_geocoded_location',
      'thoroughfare' ) %}

      {% set geo_street_nr = 
      state_attr('sensor.sylvia_handy_geocoded_location', 'sub_thoroughfare' )
      %}

      {% set geo_plz =  state_attr('sensor.sylvia_handy_geocoded_location',
      'postal_code' ) %}

      {% set geo_ort =  state_attr('sensor.sylvia_handy_geocoded_location',
      'locality' ) %}

      {% set geo_ortsteil =  state_attr('sensor.sylvia_handy_geocoded_location',
      'sub_locality' ) %}


      {{ geo_street | replace('null', '(Straße ?)') }} {{ geo_street_nr |
      replace('null', '') }}

      {{ geo_plz | replace('null', '(PLZ ?)') }} {{ geo_ort  | replace('null',
      '(Ort ?)') }} {{ geo_ortsteil | replace('null', '') }}
    icon: |-
      {% set in_zone = states('device_tracker.sylvia_handy')%}

      {% if in_zone == 'not_home' %}
        mdi:home-export-outline
      {% elif in_zone == 'home' %}
        {{ state_attr('zone.home', 'icon') }}
      {% else %}
        {{ states.zone | selectattr('name', 'eq', in_zone)
        | map(attribute='attributes.icon') | join }}
      {% endif %}
    multiline_secondary: true
    layout: horizontal
    icon_color: |-
      {% set in_zone = states('device_tracker.sylvia_handy')%}

      {% if in_zone == 'not_home' %}
        #FFC106
      {% elif in_zone == 'home' %}
        blue
      {% else %}
        blue
      {% endif %}
    tap_action:
      action: none

Das ist der komplette Code für die Mushroom-Card.

Freue mich auf Rückmeldungen und Optimierung meines Code.

Ja, kannst auch mehrere entities benutzen. Also deins, Frau, Kinder. Werden dann alle auf der map angezeigt. Die companion app muss halt installiert sein.
Kannst auch den Verlauf von xy Std angeben, dann kann man auch verfolgen wo man war.

Sieht dann so aus



Habe es mal ausprobiert. Bei mir geht nur “dunkler Modus”, egal was ich einstelle. Be Euch auch?

Versteh die Frage nicht.

Kann ich einstellen wie ich will, die Karte ist immer dunkel und sehr unleserlich. Bzw: In der Vorschau wird sie hell, nach dem speichern wieder dunkel.

Mein Tipp:
Die HACS-Integration GitHub - custom-components/places: Component to integrate with OpenStreetMap Reverse Geocode (places) erstellt einen Sensor, macht aus den Koordinaten eines Trackers eine Adresse und schreibt diese in den Sensor als Attribute. Außerdem berechnet es die Entfernung zur Home-Zone und schreibt das auch in die Atrtibute.
Damit lassen sich dann Karten erstellen:
image

2 „Gefällt mir“

Muss ich mal anschauen. Wenn ich das richtig verstanden habe, macht es, bis auf die Entfernung, auch nichts anderes als was ich oben gemacht habe.

Nun ja, es gibt allerhand Attribute, mit denen man viel anstellen kann:

street_number: 47
street: Hohlfeldergasse
city: Langenzersdorf
postal_code: 2103
county: Bezirk Korneuburg
state_province: Niederösterreich
state_abbr: 3
country: Österreich
country_code: AT
formatted_place: Home
formatted_address: 47, Hohlfeldergasse, Langenzersdorf, Bezirk Korneuburg, Niederösterreich, 2103, Österreich
place_type: house
place_category: building
current_latitude: 48.3105849
current_longitude: 16.3581863
previous_latitude: 48.3100984
previous_longitude: 16.3589482
devicetracker_entityid: person.alex
devicetracker_zone: home
devicetracker_zone_name: Home
home_zone: zone.home
home_latitude: 48.31020249964673
home_longitude: 16.35715797543526
distance_from_home_km: 0.087
distance_from_home_m: 87.32900000000001
distance_from_home_mi: 0.054
distance_traveled_m: 78.233
distance_traveled_mi: 0.049
last_place_name: Pfarrhof
direction_of_travel: stationary
osm_id: 518664100
osm_type: way
map_link: https://maps.google.com/?q=48.3105849,16.3581863&ll=48.3105849,16.3581863&z=18
gps_accuracy: 42
display_options: formatted_place
last_changed: 2024-01-14 20:06:59+01:00
last_updated: 2024-01-15 11:01:24+01:00
entity_picture: /api/image/serve/1646a264b36c13f525698891366a2cf1/512x512
icon: mdi:map-search-outline
friendly_name: Alex