· Smart Home  · 9 min read

Draft: Smartes AirBnB mit Home Assistant

Ein AirBnB über Home Assistant zu verwalten bringt so viele Vorteile mit sich, ist aber gleichzeitig herausfordernd; angefangen bei der fehlenden AirBnB-API bis hin zu mangelnden Schnittstellen zur programmatischen Erzeugung von Türcodes. Aber herausfordernd ist weit weg von unmöglich!

Ein AirBnB über Home Assistant zu verwalten bringt so viele Vorteile mit sich, ist aber gleichzeitig herausfordernd; angefangen bei der fehlenden AirBnB-API bis hin zu mangelnden Schnittstellen zur programmatischen Erzeugung von Türcodes. Aber herausfordernd ist weit weg von unmöglich!

Aufbau

Damit dieser Beitrag auch nur halbwegs unserer stets schrumpfenden Aufmerksamkeitsspanne standhalten kann, hab ich ihn in mehrere Teile zerstückelt.

  • Teil 1: AirBnB anzapfen. Solange AirBnB die primäre Buchungsplattform ist, müssen die Daten irgendwie in Home Assistant gelangen. Wie das geht, sehen wir in diesem Teil.
  • Teil 2: Automatischer Check-In.
  • Teil 2: Datenverwertung. Die Buchungsdaten helfen uns, Doppelbuchungen zu vermeiden, sie erleichtern die Vorbereitung der Ferienwohnung und vieles mehr.

Teil 1: AirBnB anzapfen

Wir wohnen im kaffigsten Kaff der Region, fernab jeder Zivilisation. Unser jährlicher CO2-Ausstoß stammt noch zu 99% aus Kühen und unsere größte Industrie im Umkreis heißt Becker Reifenservice GmbH.

Perfekte Rahmenbedingungen für eine Ferienwohnung, um dem regen Tourismus endlich etwas mehr Raum zu bieten. Folglich haben wir die AirBnB-Annonce live geschaltet und uns auf langes, langes Warten eingestellt. Weniger als 24h später hatten wir die erste Buchung. Kaff 1, Stadt 0.

Bis dato hatten wir natürlich noch überhaupt nichts automatisiert, diese eine Buchung lässt sich ja easy manuell handhaben, unter anderem, weil sie nach einer Stunde schon wieder storniert war. Doch schnell hat sich gezeigt, dass wir in Zukunft round about 3 Gäste pro Woche bei uns begrüßen dürfen. Weit über der Schwelle an Arbeit, die ich bereit bin, manuell zu erledigen.

Als Fundament dafür brauchen wir die Buchungsdaten natürlich irgendwo, wo wir etwas damit anfangen können, bestenfalls in Home Assistant. Nichts einfacher als das, fragen wir einfach die public API von AirBnB mit ein paar REST-Calls ab. Die Dokumentation findet ihr hier: AirBnB-API

Die AirBnB-API: Eine klare null/10

Natürlich stellt AirBnB keine API zur Verfügung. Grund dafür ist der staatliche Bildungsauftrag der Initiative für Hobby-Scripting e.V. Bleibt uns also nichts anderes übrig, als die Daten anders zu extrahieren.

Glücklicherweise bekommen wir dafür mehr als genug Mails von AirBnB mit allen Informationen, die wir uns wünschen können. Diese Mails sind semi-strukturiert und somit semi-einfach zu parsen.

Anyway, diese Mails sind semi-strukturiert und somit semi-einfach zu parsen. Der Ablauf ist wie folgt:

  1. AirBnB schickt eine Mail an buchung@mein-airbnb.de. Das lässt sich über AirBnB konfigurieren.
  2. Mails, die auf buchung@mein-airbnb.de eingehen, werden automatisch an mein-airbnb@gmail.com gespiegelt, damit wir mit Google Scripts drauf zugreifen können. Diese Konfiguration ist provider-spezifisch und leider nicht immer intuitiv. Daher ist es schwer, hier eine Anleitung zur Verfügung zu stellen. Aber wer so weit gelesen hat, ist sicherlich clever genug, das herauszufinden. ;)
  3. Über Google Scripts werden alle Mails auf mein-airbnb@gmail.com nach Keywords gescannt. Buchungsbestätigungen, Buchungsänderungen und Stornierungen werden automatisch verarbeitet, alles andere wird als gelesen markiert/gelöscht. Mehr dazu gleich.
  4. Buchungen werden in einen Google-Kalender eingetragen.
  5. Der Google-Kalender wird in Home Assistant integriert und auf der Website der Ferienwohnung fernab von AirBnB anonymisiert dargestellt um Doppelbuchungen zu vermeiden.
  6. Wir merken, wie nervig das Handling von Kalendereinträgen in Home Assistant ist, doch an diesem Punkt, sind wir schon viel zu committed um einen anderen Weg auch nur in Betracht zu ziehen. Sturheit ist eine Tugend, egal wie oft mir das Gegenteil bewiesen wird.
  7. Wir lesen alle relevanten Daten aus dem Kalender aus und können sie nach eigenem Gusto in Automationen verwenden.

To be Continued

Back to Blog

Related Posts

View All Posts »