Airtag in Home Assistant integrieren

  • Beitrags-Kommentare:0 Kommentare

In diesem Beitrag geht es um die Integration von Apple Airtag in Home Assistant. Aber nicht nur original Airtags, alle Tracker, die sich in das Wo Ist? Netzwerk integrieren lassen können über diesen Weg ausgelesen und die Daten an Home Assistant versendet werden.

Dieser Beitrag bezieht auf den original Beitrag des Entwicklers der Methode

Das Video zu diesem Beitrag ist am Ende des Beitrags verlinkt.

Airtag Kurzbefehl importieren

Öffne diese Webseite auf deinem iPhone um den Kurzbefehl in die Kurzbefehle Ap zu importieren:

Airtag Kurzbefehl

Airtag Template Sensor erstellen

Achtung: Ich verwende eine sensors.yaml. Dies ist eine extra Konfiguration in Home Assistant. Die Nutzung einer sensors.yaml muss in der configuration.yaml referenziert werden.

  - platform: template
    sensors:
      airtag_geldboerse:
        friendly_name: "Geldbörse"
        value_template: >
          {% set address = states('input_text.airtag').split('Geldbörse')[1].split('*')[0] %}
          {% if "Privat" in address %} Zuhause
          {% else %} {{ address }}
          {% endif %}
        attribute_templates:
          address: "{{ states('input_text.airtag').split('Geldbörse')[1].split('*')[0] }}"
        icon_template: mdi:bag-personal

Google App Skript zur automatischen Löschung von Home Assistant E-Mails

Schritt 1: Anlegen des Projektes und ggf. Anpassung von Subject

function removeOldAirtagEmails(){

  // Define the search string to identify emails 
  var searchString = "subject:'Airtag auslesen'  older_than:1h ";

  // Get all threads matching search string
  var threads = getThreadsMatchingSearch(searchString);

  // Check whether thread search returned some results
  if (typeof threads !== 'undefined' && threads.length > 0) {
    
    // Mark as read and remove threads
    moveThreadsToTrash(threads);
  }  
}


function getThreadsMatchingSearch(searchString){

  // Get all threads matching search string
  try{
    var threads = GmailApp.search(searchString);
  Logger.log("Found " + threads.length + " threads (conversations of emails) matching search string (" + searchString + "). Note that size limited to 500.");
  }
  catch(error){
    Logger.log("Warning! Unable to complete email search: " + error.message);
  } 

  return(threads);
}


function moveThreadsToTrash(threads, batchSize=100){

  // Work through the threads in batches (100 is the limit that batch operations can work on)
  for (j = 0; j < threads.length; j += batchSize) {

    // Select the current batch of threads
    var batch = threads.slice(j, j+batchSize);
    
    // Move the threads to the trash
    try{
      GmailApp.moveThreadsToTrash(batch);
      Logger.log("Moved " + batch.length + " threads to trash.");
    }
    catch(error){
      Logger.log("Warning! Unable to move threads to trash: " + error.message);
    }    
  }
}

Schritt 2: Trigger erstellen zur Automation des Skriptes

Google App Skript zur automatischen Löschung von E-Mails in GMail

Schreibe einen Kommentar