Wie können wir helfen?

Ausgehende Integration

Ausgehende Integration:
Whatsapp > CRM und Ihre anderen Systeme

Teilen Sie diesen Artikel mit Ihrem Entwickler oder verwenden Sie Zapier, um Ihr System mit Whatsapp zu integrieren.

Einrichtung

TimelinesAI ermöglicht es, ein externes System zu benachrichtigen, wenn eine neue Nachricht in einem beliebigen verbundenen Whatsapp-Konto in einem Arbeitsbereich empfangen oder gesendet wird. Dies schließt Whatsapp-Nachrichten ein, die über die Whatsapp Mobile App oder aus Timelines heraus gesendet wurden.

Häufig wird eine solche Integration über einen Vermittlungsdienst wie Zapier genutzt, bei dem jede Aktivierung eines Webhooks zur Auslastung des Aufgabenkontingents zählt.

Um die Nutzung des Aufgabenkontingents effizienter zu gestalten, bietet TimelinesAI die Möglichkeit, mehrere in einem bestimmten Chat gesendete oder empfangene Nachrichten über den ausgewählten Zeitraum zu aggregieren. Die Nachrichten werden über den Webhook als ein einziges "Bündel" übermittelt. Der Einfachheit halber enthält ein solches "Bündel" ein Feld mit der vorformatierten Aggregation der Nachrichten (und einen Link zu dem Punkt in den Unterhaltungen in TimelinesAI), aber Sie können Ihre eigene Formatierung unter Verwendung der mit dem Webhook bereitgestellten Daten implementieren.

Bildschirmfoto 2021 11 23 um 12 06 26
Bündel von Nachrichten, die über einen Webhook gesendet werden

So richten Sie die Integration über ausgehende Webhooks ein:

  1. Navigieren Sie zu den Webhaken Menü in Ihrem TimelinesAI-Konto
  2. Wählen Sie die Registerkarte Ausgehend.

Bildschirmfoto 2021 11 23 um 11.47.21

Die folgenden Einstellungen werden angezeigt:

  • Aggregationsgranularität - die Nachrichten werden aggregiert und über den Webhook entsprechend der Auswahl (alle 1 / 6 / 12 / 24 Stunden) versendet oder werden versendet, sobald sie in den Timelines erscheinen ("Nicht aggregieren")
  • Webhook URL - hier müssen Sie die tatsächliche URL eingeben, die benachrichtigt werden soll.
  • Webhook aktiviert - Sie können den Webhook deaktivieren, wenn Sie die Integration beenden möchten.

Sobald ein Webhook aktiviert ist und einige Nachrichten gesendet werden, wird ein Aktivitätsprotokoll angezeigt (bis zu 10 der letzten Aktionen).

Fehler und Fehlersuche

Um den ordnungsgemäßen Betrieb der Integration zu gewährleisten, wird das System die Integration automatisch deaktivieren, wenn mehr als 10 aufeinanderfolgende Fehler auf der Empfängerseite auftreten (jeder Fehler, von einer ungültigen URL bis zu einem Antwortcode ungleich 200). In diesem Fall erhält der Arbeitsbereichseigentümer eine E-Mail-Benachrichtigung.

Für den Fall, dass Sie einen Fehler beheben müssen, können Sie ein detailliertes Protokoll herunterladen (der Link wird unten auf der Seite verfügbar), in dem bis zu 100 der letzten Anfragen mit allen Details zu den gesendeten Daten und der erhaltenen Antwort angezeigt werden.

Format der Daten

Die Daten werden mittels einer HTTP POST-Anfrage im JSON-Format an die URL eines Webhooks gesendet. Die Daten werden in 2 verschiedenen Formaten bereitgestellt, je nach Einstellung der Aggregationsgranularität, wie unten beschrieben.

Aggregat alle X Stunden

Die Nachrichten werden zu einem "Bündel" zusammengefasst. Die folgenden Daten werden verfügbar sein:

  • "Whatsapp-Konto" - die Details des Whatsapp-Kontos (und des Workspace-Teammitglieds, das das Konto verbunden hat), über das die Nachricht empfangen oder gesendet wurde
    • "Telefon" - die Telefonnummer des WA-Kontos
    • "full_name" - der vollständige Name des Inhabers des WA-Kontos, wie er in Timelines registriert ist
    • "E-Mail" - die in Timelines registrierte E-Mail des WA-Kontoinhabers
  • "Chat" - die Details des Chats (direkter Chat oder Gruppe), in dem die Nachricht gesendet oder empfangen wurde
    • "full_name" - der Chatname (wie er in Timelines erscheint)
    • "responsible_name" - der Name eines Teamkollegen, der als Verantwortlicher für diesen Chat zugewiesen ist
    • "responsible_email" - die E-Mail eines Teammitglieds, das als Verantwortlicher für diesen Chat zugewiesen ist
    • "chat_url" - die URL, unter der der Chat in TimelinesUI aufgerufen werden kann
    • "chat_id" - die ID des Chats in TimelinesUI (kann verwendet werden, um die Chat-URL zu erstellen oder mit eingehenden Webhooks)
    • "is_new_chat" - true, wenn dieser Chat gerade erstellt wurde, sonst false
    • "is_group" - true, wenn dieser Chat ein direkter Chat ist, sonst false
    • "Telefon" - Telefonnummer des Chats (leer für Gruppenchats)
  • "messages" - eine Liste von Nachrichten, wobei jedes Nachrichtenobjekt die folgenden Felder enthält
    • "Richtung" - kann "empfangen" oder "gesendet" sein
    • "timestamp" - Zeitstempel einer Nachricht, in der Zeitzone UTC
    • "message_id" - nicht in Gebrauch
    • "message_uid" - interne eindeutige ID der Nachricht, die mit der öffentlichen API zum Laden von Nachrichtendetails und Statusaktualisierungen verwendet werden kann (siehe Details hier)
    • "Absender" - Angaben zum Absender (Chat-Teilnehmer) einer Nachricht
      • "full_name" - Titel eines Chats oder der Name eines Mitspielers in den Timelines (wenn aus den Timelines gesendet)
      • "phone" - Telefonnummer des Absenders (oder leer für Gruppenchat)
    • "Empfänger" - Angaben zum Absender (Chat-Teilnehmer) einer Nachricht
      • "full_name" - Titel eines Chats oder Name eines Mitspielers in Timelines
      • "phone" - Telefonnummer des Empfängers (oder leer für Gruppenchat)
    • "text" - Text der Nachricht (Klartext)
    • "attachment" - ein Objekt, das den Anhang der Nachricht beschreibt und folgende Felder enthält
      • "temporary_download_url" - eine temporäre Download-URL, gültig für 15 Minuten
      • "Dateiname" - Name der Datei
      • "Größe" - Größe der Datei, in Bytes
      • "mimetype" - Mimetyp der Datei
  • "first_message_timestamp" - Zeitstempel der frühesten Nachricht im Bündel, in UTC-Zeitzone
  • "last_message_timestamp" - Zeitstempel der letzten Nachricht im Paket, in UTC-Zeitzone
  • "Aggregation" - zusammengefasster Text der Nachricht im HTML-Format, geeignet für die Verwendung mit CRM- oder ähnlichen Systemen als Inhalt für Notizen, einschließlich des direkten Links zur ersten Nachricht in Timelines.

Beispiel

{
    "whatsapp_account" :
    {
        "full_name" : "Amnon Haha",
        "email" : "Amnon@acme.com",
        "phone" : "+972500000000"
    },
    "chat": 
    {
        "full_name": "John Doe>",
        "responsible_name": "Amnon",
        "responsible_email": "Amnon@acme.com",
        "chat_url" : "https://app.timelines.ai/chat/10010001/messages/",
        "chat_id" : "10010001",
        "is_new_chat" : true,
        "is_group": false, 
        "phone": "+97254000000"
    },
    "messages" :
    [
        {
            "direction": "sent", 
            "timestamp": "2021-02-24T16:25:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum",
            "attachment": {
                "temporary_download_url": "https://acme.com/path",
                "filename": "someimage.png",
                "size": 128909,
                "mimetype": "image/png"
            }
        },
        {
            "direction": "received", 
            "timestamp": "2021-02-24T16:30:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum"
        }
    ],
    "first_message_timestamp" : "2021-02-24T16:25:29+0000",
    "last_message_timestamp" : "2021-02-24T16:30:29+0000",
    "aggregation":
        "from John Doe on 2021-02-24 16:25: Hi! How are you?<br/>from Jane Smith on 2021-02-24 16:30: I am fine, how are you?<br/>Click <a href='https://app.timelines.ai/permalink/77a28d55-5345-5435-8c72-3a7bcad8ded9/'>here</h> to open the conversation in TimelinesAI"
}

Nicht aggregieren

Jede Nachricht wird einzeln verschickt, sobald sie verfügbar ist. Es findet keine "Bündelung" statt. Die folgenden Daten werden verfügbar sein:

  • "Whatsapp-Konto" - die Details des Whatsapp-Kontos (und des Workspace-Teammitglieds, das das Konto verbunden hat), über das die Nachricht empfangen oder gesendet wurde
    • "Telefon" - die Telefonnummer des WA-Kontos
    • "full_name" - der vollständige Name des Inhabers des WA-Kontos, wie er in Timelines registriert ist
    • "E-Mail" - die in Timelines registrierte E-Mail des WA-Kontoinhabers
  • "Chat" - die Details des Chats (direkter Chat oder Gruppe), in dem die Nachricht gesendet oder empfangen wurde
    • "full_name" - der Chatname (wie er in Timelines erscheint)
    • "responsible_name" - der Name eines Teamkollegen, der als Verantwortlicher für diesen Chat zugewiesen ist
    • "responsible_email" - die E-Mail eines Teammitglieds, das als Verantwortlicher für diesen Chat zugewiesen ist
    • "chat_url" - die URL, unter der der Chat in TimelinesUI aufgerufen werden kann
    • "chat_id" - die ID des Chats in TimelinesUI (kann verwendet werden, um die Chat-URL zu erstellen oder mit eingehenden Webhooks)
    • "is_new_chat" - true, wenn dieser Chat gerade erstellt wurde, sonst false
    • "is_group" - true, wenn dieser Chat ein direkter Chat ist, sonst false
    • "Telefon" - Telefonnummer des Chats (leer für Gruppenchats)
  • "Nachricht" - die Details der Nachricht
    • "Richtung" - kann "empfangen" oder "gesendet" sein
    • "timestamp" - Zeitstempel einer Nachricht, in der Zeitzone UTC
    • "message_id" - interne eindeutige ID der Nachricht
    • "Absender" - Angaben zum Absender (Chat-Teilnehmer) einer Nachricht
      • "full_name" - Titel eines Chats oder der Name eines Mitspielers in den Timelines (wenn aus den Timelines gesendet)
      • "phone" - Telefonnummer des Absenders (oder leer für Gruppenchat)
    • "Empfänger" - Angaben zum Absender (Chat-Teilnehmer) einer Nachricht
      • "full_name" - Titel eines Chats oder Name eines Mitspielers in Timelines
      • "phone" - Telefonnummer des Empfängers (oder leer für Gruppenchat)
    • "text" - Text der Nachricht (Klartext)
    • "attachment" - ein Objekt, das den Anhang der Nachricht beschreibt und folgende Felder enthält
      • "temporary_download_url" - eine temporäre Download-URL, gültig für 15 Minuten
      • "Dateiname" - Name der Datei
      • "Größe" - Größe der Datei, in Bytes
      • "mimetype" - Mimetyp der Datei

Beispiel

{
    "whatsapp_account" :
    {
        "full_name" : "Amnon Haha",
        "email" : "Amnon@acme.com",
        "phone" : "+972500000000"
    },
    "chat": 
    {
        "full_name": "John Doe>",
        "responsible_name": "Amnon",
        "responsible_email": "Amnon@acme.com",
        "chat_url" : "https://app.timelines.ai/chat/10010001/messages/",
        "chat_id" : "10010001",
        "is_new_chat" : true,
        "is_group": false, 
        "phone": "+97251111111"
    },
    "message" :
       {
            "direction": "sent", 
            "timestamp": "2021-02-24T06:25:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum",
            "attachment": {
                "temporary_download_url": "https://acme.com/path",
                "filename": "someimage.png",
                "size": 128909,
                "mimetype": "image/png"
            }
        }
}
Inhaltsübersicht