Zum Inhalt springen
Alle Artikel

Einen KI-Assistenten für WhatsApp bauen, von Anfang bis Ende: was es über die Demo hinaus braucht

Eine Demo, die eine WhatsApp-Nachricht mit KI beantwortet, ist an einem Nachmittag gebaut. Ein Assistent, dem ein Gastgewerbe-Betrieb seine Gäste anvertraut, braucht mehr: Er darf nur beantworten, was er weiss, muss in Ihren Systemen ohne Überraschungen handeln, zugeben, wenn er etwas nicht weiss, und aus den Antworten Ihres Teams besser werden. So habe ich StillAnswer gebaut, den Assistenten, der für eine Surfschule mit Hostel läuft, und das habe ich dabei gelernt.

11 Min. Lesezeit

1. Das eigentliche Problem: dieselben Fragen, den ganzen Tag

Im Gastgewerbe sind die meisten Nachrichten dieselben zwanzig Fragen: Wann ist Check-in, gibt es Parkplätze, kann ich eine Lektion dazubuchen, was kostet das Brett. Das Team beantwortet sie zwischen Check-ins und Surflektionen, oft spät, oft in einer Sprache, die es halb spricht. Gäste auf WhatsApp erwarten eine Antwort sofort.

Das Ziel ist also kein Chatbot, der über alles reden kann. Sondern ein Assistent, der die Fragen beantwortet, die Ihr Team schon gut beantwortet hat, in der Sprache des Gastes, zu jeder Stunde, und den Rest still an eine Person weitergibt. Diese Sicht entscheidet jede Designfrage weiter unten.

2. Der Kanal: eine Business-Nummer über einen Anbieter

Der Assistent spricht mit Gästen über die WhatsApp Business Platform, die Sie über einen Anbieter wie Twilio oder Azure Communication Services erreichen. Zwei Plattformregeln prägen das ganze Design. Schreibt ein Gast, öffnet sich ein Kundenservice-Fenster von 24 Stunden, in dem Sie frei antworten dürfen. Ausserhalb dieses Fensters dürfen Sie nur vorab freigegebene Nachrichtenvorlagen schicken, zum Beispiel eine Buchungserinnerung.

Der Assistent muss also wissen, in welchem Modus er ist. Im Fenster antwortet er frei; ausserhalb schickt er eine Vorlage oder überlässt die Nachfrage Ihrem Team. Planen Sie die Vorlagen früh: Sie brauchen eine Freigabe, und die braucht Zeit, die Sie in der Startwoche nicht haben wollen.

3. Der Webhook: prüfen, bestätigen, bündeln

Jede Nachricht kommt als Webhook an. Als Erstes prüft er die Signatur des Anbieters; bei Twilio ist das der Header X-Twilio-Signature, ein HMAC über URL und Parameter mit Ihrem Auth-Token. Alles ohne gültige Signatur wird verworfen, denn sonst kann jeder, der die URL findet, mit Ihrem Agenten und Ihren Tools sprechen.

Dann schnell bestätigen und die Arbeit asynchron erledigen, und die Verarbeitung pro Nachrichten-ID idempotent machen, weil Anbieter wiederholen. Eine Lektion aus dem Betrieb: Gäste schreiben in Schüben. «Hallo» – «wir sind zu dritt» – «können wir Freitag kommen?» kommen innert Sekunden. Eine kurze Pause, die diese Nachrichten zu einer Frage bündelt, ergibt eine viel bessere Antwort als drei Antworten auf drei Bruchstücke.

ts
import twilio from "twilio";

export async function onMessage(req: Request) {
  const params = Object.fromEntries(new URLSearchParams(await req.text()));
  const valid = twilio.validateRequest(
    process.env.TWILIO_AUTH_TOKEN!,
    req.headers.get("x-twilio-signature") ?? "",
    "https://assistant.example.com/webhook", // the exact public URL
    params,
  );
  if (!valid) return new Response("forbidden", { status: 403 });

  await queue.add({ id: params.MessageSid, from: params.From, text: params.Body }); // idempotent by id
  return new Response("<Response/>", { headers: { "content-type": "text/xml" } });
}

4. Der Agent: freigegebenes Wissen, die Sprache des Gastes

Der Agent bekommt drei Dinge in seinen Kontext: die Hausregeln (Ton, was er nie sagen darf, wann er eskaliert), die freigegebene Wissensbasis und den bisherigen Verlauf. Er antwortet in der Sprache, in der der Gast schreibt, und das sind in einem Hostel vor dem Mittag schnell fünf Sprachen. Er funktioniert mit Gemini, ChatGPT oder Claude; das Modell ist eine Einstellung, nicht das Produkt.

Die wichtigste Regel ist eine Verneinung: Steht die Antwort nicht im freigegebenen Wissen, improvisiert er nicht. Eine selbstsichere falsche Antwort zu Preisen oder Verfügbarkeit kostet mehr Vertrauen als ein kurzes «ich frage beim Team nach». Das teste ich mit einem festen Satz Fragen, inklusive solcher, die der Agent ablehnen muss, jedes Mal, wenn sich Wissen oder Modell ändern.

Von der Nachricht des Gastes zu einer freigegebenen Antwort, einer Aktion oder einer Übergabe, und zurück in die Wissensbasis. Klicken für volle Grösse.
Architektur von StillAnswer: Ein Gast schreibt auf WhatsApp; die Nachricht erreicht über Twilio den Webhook, die Signatur wird geprüft; eine kurze Pause bündelt schnelle Nachrichten; der KI-Agent antwortet aus der freigegebenen Wissensbasis und nutzt Ihre Tools zum Nachschlagen und Ändern; kann er nicht antworten, alarmiert eine Eskalation das Team mit einem Link; das Team antwortet im Postfach, und ein Klick nimmt die Antwort ins Wissen auf; die Antwort geht über Twilio an den Gast zurück.

5. Tools: Dinge nachschlagen, Dinge nur mit einem Ja ändern

Der Unterschied zwischen einem FAQ-Bot und einem Assistenten ist, dass der Assistent handeln kann: eine Buchung oder Bestellung nachschlagen, Verfügbarkeit prüfen, einen Änderungswunsch aufnehmen. Das macht er über Ihre eigenen Tools, definiert per Function Calling, jedes schmal und mit klaren Eingaben.

Lesen ist frei, Ändern nicht. Vor jeder Änderung wiederholt der Assistent in einfachen Worten, was er tun wird, und wartet auf das Ja des Gastes, und das Tool selbst verweigert das Schreiben ohne diese Bestätigung. Zahlungen und Rückerstattungen bleiben bei Ihren bestehenden Systemen und Ihrem Team. Ein Assistent, der auf eine Chatnachricht hin Geld bewegen kann, ist ein Risiko, keine Funktion.

6. Die eigenen Grenzen kennen: der Eskalationsweg

Wenn der Assistent nicht antworten kann, soll der Gast nie eine Sackgasse bemerken. Er sagt dem Gast, dass das Team nachsieht und sich meldet, und alarmiert im selben Moment Ihr Team per E-Mail und auf WhatsApp, mit einem direkten Link zum Gespräch. Wer es übernimmt, sieht den ganzen Chat, kein weitergeleitetes Bruchstück.

Geben Sie jeder Eskalation eine Uhr. Hat nach einer festgelegten Zeit niemand geantwortet, geht der Alarm erneut hinaus oder an jemand anderen. Das schlimmste Ergebnis ist nicht, dass die KI etwas nicht wusste, sondern dass dem Gast eine Antwort versprochen wurde, die nie kam.

7. Der Lernkreis: Antworten des Teams werden zu Wissen

Jede Eskalation ist eine Lücke in der Wissensbasis, darum sollte sie nicht mit einem einzelnen beantworteten Gast enden. Antwortet jemand aus dem Team, wird die Frage zu einem Vorschlag, mit der Antwort bereits ausgefüllt, und ein Klick nimmt sie ins Wissen auf. Bei der Surfschule geht neues Wissen erst live, nachdem eine Führungsperson es freigegeben hat, damit eine in Eile geschriebene Antwort nicht zur offiziellen Wahrheit wird.

Dieser Kreis macht den Assistenten jede Woche besser, ohne dass jemand eine FAQ schreibt. Das Team macht weiter, was es ohnehin tut, nämlich Gästen antworten, und der Assistent lernt aus den Antworten, die jemand abgesegnet hat.

8. Das Team-Postfach, und der echte Betrieb

Das Team braucht einen Ort, um jeden Chat zu lesen, selbst zu antworten und die KI für ein einzelnes Gespräch zu pausieren, etwa wenn ein Gast verärgert ist oder eine Buchung eine menschliche Hand braucht. Pausieren pro Chat ist wichtiger als ein Ein-/Ausschalter für den ganzen Assistenten.

Für den Betrieb gibt es zwei Wege. Mit Ihren eigenen Konten bringen Sie Anbieter- und KI-Keys mit, und ich begleite die Einrichtung. Alles inklusive stelle ich die Nummer und übernehme die ganze Einrichtung, inklusive WhatsApp-Business-Freigabe und Nachrichtenvorlagen. So oder so: Speichern Sie nur, was das Gespräch braucht, legen Sie eine Aufbewahrungsfrist fest, und sagen Sie Gästen in der ersten Nachricht, dass sie mit einem KI-Assistenten schreiben und wie sie eine Person erreichen.

Fazit

Ein guter Assistent für WhatsApp beantwortet nur, was er weiss, handelt nur mit einem Ja, übergibt mit dem ganzen Chat und lernt aus den Antworten, die Ihr Team freigibt.

Weitere Artikel

    Kontakt aufnehmen

    Erzählen Sie mir von Ihrem Projekt, ich antworte innerhalb von 1–2 Werktagen.

    Dominik Heinrich
    Unternehmen
    MADO Consulting

    Weltweit verfügbar, remote. Vor Ort auf Anfrage, je nach Land.

    Ich antworte innerhalb von 1–2 Werktagen. Freie Termine: siehe Kalender

    Öffnet hier den Buchungskalender von Calendly. Beim Laden werden Daten an Calendly übertragen (siehe Impressum).