Bisher haben wir eine KI- Plattform und eine Möglichkeit Daten zu empfangen und zu verarbeiten. Wenn wir aber eine Interaktion unserer KI mit dem Anrufer erreichen möchten, so benötigen wir auch einen Weg, Daten zurück zu Retell AI zu schicken.
In diesem Beispiel gleiche ich mein Google- Kontakte mit den Anrufdaten ab. Ist die Nummer bekannt erhält die KI den Namen des Anrufers und begrüßt diesen dann persönlich. Dieses Vorgehen ist exemplarisch für alle Daten, die ich übermitteln möchte.
So sieht unser Szenario am Ende aus:
Ein Webhook empfängt die Anrufdaten (hier die call-from Variable , also die Anrufer- Telefonnummer), diese Nummer müssen wir im "Text parser" noch verändern, das Google Contacts- Modul gleicht die Nummer mit meinem Adressbuch ab und zuletzt gibt es noch eine Webhook Antwort (webhook response). Diese schickt im Erfolgsfall den Vornamen an Retell AI zurück, wird die Nummer nicht gefunden gibt es eine Response ohne Namen (deswegen das Router Modul, welches jeweils einen nachfolgenden Filter hat).
Wir starten wieder mit einem "Custom Webhook"- Modul (wie hier beschrieben). Diese Webhook- URL tragen wir bei Retell AI nun aber im Feld "Inbound Call Webhook URL" ein.
Dieser "Inbound Call Webhook" wird ausgelöst, sobald ein Anruf eingeht und übermittelt die Telefonnummer des Anrufers. Damit wir aber später Daten an diese URL zurück schicken dürfen, müssen wir diese nun zunächst per API authentifizieren:
- Erstelle in Deinem Retell- AI Dashboard eine API, kopiere sie in die Zwischenablage.
- gehe zu https://docs.retellai.com/api-references/create-retell-llm
- hier kopiere Deinen API- Key in das Feld "Authorization"
- gebe die Webhook URL (die vom Inbound Call Webhook) unter "inbound_dynamic_variables_webhook_url" ein
- den Klick auf "Send" nicht vergessen!
Jetzt geht es weiter bei Make.com. Hinter dem Custom Webhook fügst Du nun das Modul "Text parser - replace" sowie "Google contacts - search contacts" ein.
Warum dieser Zwischenschritt?! (Auch dieser Schritt hat mich ungefähr eine Nacht gekostet, die Du gern schlafen sollst)
Die Telefonnummer wird in der internationalen Spezifikation E.164 übermittelt, lautet also zum Beispiel: +49301234567
Google kann in der Suche das "+" nicht verarbeiten, dieses muss weg. Das erledigt das Modul "Text parser - replace", aber was genau muss man da eingeben?! Damit das "+" nicht als Operator erkannt wird, müssen wir ein "\+" einfügen und dieses Zeichen soll dann durch "Nichts" ersetzt werden. Man kann aber nicht einfach "nichts" oder "null" verwenden, sondern wir benötigen die "emptystring"- Variable. Am besten erkläre ich dir Schritte an den folgenden Screenshots:
Als nächstes Verbinden wir das "Google Contacs - search contacts-" Modul. Hier musst Du Dich vorher mit Deinem Google- Account anmelden. Selbstverständlich sich hier auch alle anderen, denkbaren Module (bspw. Google Calendar) zum Abgleich möglich. Die modifizierte Nummer übergeben wir zur Suche (linkes Bild) und erhalten im positiven Fall die Antwort wie auf dem rechten Bild:
Jetzt benötigen wir zwei Routen: Eine für den Erfolgsfall und eine, falls der Kontakt nicht gefunden wird. Nach dem Router- Modul setzten wir zwei Webhook- Response- Module, die Verbindungen erhalten jeweils einen Filter. Für den positiven Fall, der Kontakt wird gefunden und der Vorname soll übergeben werden, schaut der Filter so aus:
...der zweite Filter ist fast identisch, nur ändern wir die Bedingung in "Basic operators: Does not exist".
Wir erhalten nun also im Erfolgsfall einen Webhhok Response Payload mit dem Inhalt wie im linken Bild, bei Misserfolg befüllen wir diesen wie im rechten Bild dargestellt:
Diese Werte werden dann an die URL, die wir vorher verifiziert haben, zurück an Retell AI geschickt -fertig!
...also fast, denn jetzt brauchen wir noch eine Telefonnummer, damit wir unseren Assistenten auch tatsächlich anrufen können. Die Anleitung hierzu findest Du in diesem Beitrag.