Inhaltsverzeichnis
Voraussetzung
Damit das Auslesen der Geburtstage funktioniert, musst du bei folgenden Services angemeldet sein:
- Google Calendar
- Google Contacts (mit hinterlegten Geburtstagen)
- ioBroker IoT Assistants-Adapter
- ioBroker Pro (kostenfreie Variante reicht aus)
- IFTTT-Account
Einrichtung
Im „IoT Assistants“-Adapter meldest du dich zuerst mit deinen Zugangsdaten für ioBroker Pro an:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 2 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/iobroker-pro-anmeldung-iot-1024x582.png)
Danach wechselst du zu IFTTT und installierst dort das Applet „Webhooks„. Nach der Installation klickst du unter „Webhooks“ oben rechts auf „Documentation“:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 3 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/iobroker-ifttt-webhooks-api-key-1024x555.png)
Dort erhältst du deinen individuellen API-Kley, um die Webhooks nutzen zu können:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 4 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/iobroker-ifttt-webhooks-api-key-neu-2-1024x562.png)
Zurück im ioBroker gibst du diesen Key im „IoT Assistants“-Adapter im Reiter „Services und IFTTT“ ein:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 5 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/iobroker-iot-webhooks-ifttt-key-1024x256.png)
Unter dem Feld „IFTTT-Key“ erhältst du eine URL („Link für IFTTT“, die du gleich für den neuen Webhooks benötigst. Wechsle zurück zu IFTTT in die „Webhooks„. Indem du oben rechts auf dein Profilbild klickst, kannst du mit „Create“ einen neuen „Webhook“ erstellen:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 6 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-create-webhook-1024x694.png)
Danach klickst du auf „This“ und suchst nach „google calendar“:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 7 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-create-new-neu-erstellen-1-1024x189.png)
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 8 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-create-google-calendar-1024x412.png)
Klicke auf „Event from search starts“:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 9 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-create-erstellen-google-calendar-event-search-1024x462.png)
Im nächsten Schritt wählst du unter „Which calendar?“ den Eintrag „Contacts“ aus. Als „Keyword or phrase“ gibst du „hat Geburtstag“ ein. Danach speicherst du den Trigger:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 10 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-create-erstellen-google-calendar-geburtstag-1024x683.png)
Damit hast du einen Trigger erstellt, der auf „hat Geburtstag“ im „Contacts-Kalender“ reagiert. Als nächstes wählst du „That“ und suchst nach „webhooks“:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 11 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-google-calendar-birthdays-geburtstag-that-1024x173.png)
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 12 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-google-calendar-birthdays-geburtstag-that-webhooks-1024x413.png)
Klicke auf „Make a web request“:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 13 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-webhooks-web-request-1024x687.png)
Im letzten Schritt fügst du unter „URL“ die Adresse vom IoT Assistant-Adapter ein. Als „Method“ wählst du „POST“ und als „Content type“ den Eintrag „text/plain“. Zuletzt fügst du im Feld „Body“ den Wert „{{Title}} ein. Diesen Wert kannst du auch über „add ingredient“ auswählen.
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 14 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/ifttt-webhook-google-geburtstage-einstellungen-1024x734.png)
Nachdem du gespeichert hast, beschreibt IFTTT – sobald ein Geburtstag ansteht – folgenden Datenpunkt:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 15 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/iobroker-ifttt-google-calendar-geburtstag-1024x201.png)
iot.0.services.ifttt
Datenpunkt automatisch zurücksetzen
Der Datenpunkt bleibt solange bestehen, bis ein neuer Geburtstag ansteht. Solltest du damit eine Anzeige in deiner VIS steuern, ist das ein unschöner Nebeneffekt.
Über folgendes zeitgesteuertes Script kannst du daher den Datenpunkt jeden Tag um 23:55 Uhr wieder zurücksetzen:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 16 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/blockly-iobroker-geburstage-google-reset.png)
Blockly
<xml xmlns="https://developers.google.com/blockly/xml">
<block type="schedule" id="rnxSuvS)m3efje!l2L%Z" x="38" y="-287">
<field name="SCHEDULE">55 23 * * *</field>
<statement name="STATEMENT">
<block type="control" id=")wYHnV2C4/[Arm*/!!K.">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">iot.0.services.ifttt</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="/f0+_B0NWjvN!u^70i[;">
<field name="TEXT"></field>
</block>
</value>
</block>
</statement>
</block>
</xml>
Mehrere Geburtstage verarbeiten
Wenn in deinem Google-Kalender mehrere Geburtstage anstehen, wird nur der letzte Eintrag in den Datenpunkt geschrieben. Denn IFTTT überschreibt seinen eigenen Datenpunkt mit dem neusten Ereignis.
Damit du trotzdem alle anstehenden Geburtstage erhältst, legst du folgenden neuen Datenpunkt an:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 17 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/gebustatg-google-kalender-datenpunkt-iobroker-1-1024x738.png)
Dann erstellst du ein neues Blockly-Script, das den ursprünglichen IFTTT-Datenpunkt überwacht. Sobald dieser geändert wurde, ließt das Script den Namen des Geburtstagskind aus und schreibt ihn in deinen eben angelegten Datenpunkt. Sofern dort schon ein Name steht, wird der neue einfach hinten dran gehängt:
![ioBroker: Geburtstage von Google Kontakten mit IFTTT auslesen 18 Solltest du deine Kontakte mit Google synchronisieren, werden dir automatisch deren Geburtstage in deinem Google Kalender angezeigt. Wie du diese nun im ioBroker oder deiner VIS verwenden kannst, zeige ich dir in diesem Artikel.](https://www.machs-smart.de/wp-content/uploads/Bildschirmfoto-2021-02-14-um-16.15.17-1024x624.png)
Fertiges Script
Blockly
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="imY9zDm$`C!4+yL=_(5}">Text</variable>
</variables>
<block type="on" id="oDju.|X!~5x:#,42L?1A" x="38" y="-562">
<field name="OID">iot.0.services.ifttt</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="s$%UTr-@psmwh)AsZA*:">
<mutation else="1"></mutation>
<value name="IF0">
<block type="on_source" id="Yx+R,FA)qNZu?XRik*9I">
<field name="ATTR">state.val</field>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="!,7LixP=w6e#`+sTm{Hz">
<field name="VAR" id="imY9zDm$`C!4+yL=_(5}">Text</field>
<value name="VALUE">
<block type="text_getSubstring" id="R.^UxBNb7;U};8NwQVK/">
<mutation at1="false" at2="true"></mutation>
<field name="WHERE1">FIRST</field>
<field name="WHERE2">FROM_END</field>
<value name="STRING">
<block type="on_source" id="T)PsV.%ytCOcgqqTG]U?">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="AT2">
<block type="math_number" id="v6mS|3nfJbFF1/aDmD6O">
<field name="NUM">16</field>
</block>
</value>
</block>
</value>
<next>
<block type="controls_if" id="q.`h]7Tpg%*PG#)I^H9N">
<mutation else="1"></mutation>
<value name="IF0">
<block type="get_value" id="4P~cQ)9H3:iM/,|-B[c:">
<field name="ATTR">val</field>
<field name="OID">Eigene.0.Vis.Geburtstag</field>
</block>
</value>
<statement name="DO0">
<block type="control" id="M##:V{pko$_k(n4r82m[">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">Eigene.0.Vis.Geburtstag</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text_join" id="0:svAqw,2_raCVu}]k9:" inline="false">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="get_value" id="OOFlE6r[$!-klLM|ptPr">
<field name="ATTR">val</field>
<field name="OID">Eigene.0.Vis.Geburtstag</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="nB+_:O@zSR~dhtasq?u5">
<field name="TEXT">, </field>
</block>
</value>
<value name="ADD2">
<block type="variables_get" id="G_fQ0h)wW*[!5^nF+$85">
<field name="VAR" id="imY9zDm$`C!4+yL=_(5}">Text</field>
</block>
</value>
</block>
</value>
</block>
</statement>
<statement name="ELSE">
<block type="control" id="x~70EOYsijr4wG0{O*EL">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">Eigene.0.Vis.Geburtstag</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="xlN:|/$_cF*K7GVF_oI3">
<field name="VAR" id="imY9zDm$`C!4+yL=_(5}">Text</field>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="control" id="|LLM{;UU4a$.~3g+WPnb">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">Eigene.0.Vis.Geburtstag</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="W./!pA#rY^`AEt#gf%K}">
<field name="TEXT"></field>
</block>
</value>
</block>
</statement>
</block>
</statement>
<next>
<block type="schedule" id="rnxSuvS)m3efje!l2L%Z">
<field name="SCHEDULE">55 23 * * *</field>
<statement name="STATEMENT">
<block type="control" id="L(UapN@R,O?:B(*X2t/E">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">iot.0.services.ifttt</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="ERiIV:dn?YC%.Cs_d8MH">
<field name="TEXT"></field>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</xml>
16 Kommentare
Kommentieren[…] GeburtstagsanzeigeÜber IFTTT wird aus deinem Google-Kalender die Anzahl der Geburtstage deiner Kontakte ausgelesen und bei Bedarf über dem Termin-Widget angezeigt. Wie du IFTTT mit ioBroker verbindest und deinen Google-Kalender anbindest, kannst du hier nachlesen… […]
Das System hat einen Fehler.
Wenn 2 Geburtstage an einem Tag sin, dann zeigt er nur einen an.
Das ganze wurde nicht sauber durchdacht.
Hallo Peter, danke für den Hinweis! Ich habe die Anleitung um eine entsprechende Erweiterung ergänzt. Grüße!
[…] GeburtstagsanzeigeÜber IFTTT wird aus deinem Google-Kalender die Anzahl der Geburtstage deiner Kontakte ausgelesen und bei Bedarf über dem Termin-Widget angezeigt. Wie du IFTTT mit ioBroker verbindest und deinen Google-Kalender anbindest, kannst du hier nachlesen… […]
Hallo Max,
im Blockly Skript ist noch ein Fehler. In der Sequenz „Setze ‚Text‘ auf im Text ‚Text‘ nimm Teil ab erster …“ muss es heißen „Setze ‚Text‘ auf im Text ‚WERT‘ nimm Teil ab erster …“. Alles andere klappt prima.
Gruß
Michael
Das stimmt natürlich, vielen Dank!
Hallo Max, bei der Auswahl des Kalenders in IFTTT kann ich keine Contacts auswählen. Bei mir werden nur die Kalender angezeigt. Wie kann ich denn die Contacts da reinbekommen?
Hallo Martin, der Option erscheint, wenn du deine Kontakte ebenfalls mit Google synchronisierst. Viele Grüße
Ich habe alle meine Kontakte in meinem Google Konto. Der Eintrag Contacts erscheint bei mir trotzdem nicht. Muss ich in meinem Google Konto eine Berechtigung vergeben? Ich komme nicht weiter. Alles andere hat geklappt.
Hallo Max, ich habe jetzt in allen Einstellungen geschaut ob eine Verknüpfung fehlt. Der Kalender „Geburtstage“ ist verknüpft mit meinen Kontakten. Bei der Auswahl in IFTTT bekomme ich aber nur alle meine verschiedenen Kalender angezeigt. Muss ich in IFTTT noch eine Verknüpfung erstellen?
Hey,
also mal davon abgesehen, dass ich „Kontakte“ auch nicht finde in meinem Konto, habe ich testweise Einträge im normalen Kalender angelegt und unter „Geburtstage“. Des Weiteren auch im iCloud Kalender und diesen ebenfalls verknüpft.
Leider führt die Suche nichts aus… bei „Check“ passiert nichts (auch kein Fehler) und „last runtime“ bleibt ewig auf „Never“….!? Bin etwas verwirrt.
„Kontakte“ kommen erst, wenn du deine Kontakte mit deinen Smartphone-Kontakten synchronisierst oder hier manuell anlegst: https://contacts.google.com. Sobald dort ein Geburtstag hinterlegt ist, erfolgt der eigene Geburtstags-Eintrag im Kalender und die Ausgabe über ioBroker.
Hallo Max,
kann ich so nicht nachvollziehen.
Ich habe bereits seit Jahren diese Kontakte hinterlegt bei Google – aber der Eintrag fehlt mir. Ich habe über 100 Einträge in der Liste, sowohl mit als auch ohne Geburtstag… 🙂
Hallo Daniel,
ich hatte das Problem auch. Du musst im Browser den Google Kalender öffnen. Dort klickst Du oben rechts auf das Zahnrad und dann auf „Einstellungen“. Hier wählst Du dann links im Reiter „Kalender hinzufügen“ und dort „Relevante Kalender ansehen“. Und dort gibt es oben dann den Eintrag „Geburtstage“. Hier das Häkchen setzen.
Jetzt kannst Du in IFFT den Kalender Geburtstage auswählen.
Leider habe ich immer noch das Problem, dass nichts passiert. Bei mir steht auch bei last runtime „Never“…
Ich habe auch das gleiche Problem – nichts passiert. Bei mir steht auch
Connected Jan 07, 2022
Never run.
Vielleicht hilft das: https://itler.net/google-geburtstage-aus-kontakten-im-kalender-anzeigen-lassen-googlemail-gmail/