Einleitung Webhooks

Mit Webhooks (zusammengesetzt aus „Web“ und „Hook“, zu Deutsch etwa Web-Haken) wird ein nicht-standardisiertes Verfahren zur Kommunikation von Servern bezeichnet, das im Rahmen des verteilten Rechnens oder der nachrichtenorientierten Middleware genutzt wird.

Webhooks ermöglichen es, einer Server-Software mitzuteilen, dass ein bestimmtes Ereignis eingetreten ist und eine Reaktion auf das Ereignis auszulösen. Wenn eine Anwendung über ein eingetretenes Ereignis mittels WebHook informiert, müssen an dem Ereignis interessierte andere Anwendungen kein Polling betreiben, um von dem Ereignis Kenntnis zu erlangen. Das reduziert das Nachrichtenaufkommen zwischen den Anwendungen.

Webhooks finden als einfaches Callback-Verfahren Verwendung zur Daten-Synchronisation, externen Berechnung und zur Daten-Validierung. Technisch wird dazu eine HTTP-POST-Message an eine dafür vorbereitete URL gesendet, welche die angeforderten Daten zurückliefert.

(Quelle: https://de.wikipedia.org/wiki/Webhooks)

Anwendungsfall

Mit Ihrem TELiAS-Sekretariat sind Sie immer erreichbar und bekommen qualifizierte Informationen zu Ihren Anrufern und deren Anliegen.

Wenn Sie intern diese Anrufe z. B. in einem Ticketsystem verarbeiten möchten, können Sie sich die manuelle Übertragung in Ihr System zukünftig ersparen, sondern die Notizen per Push an einen Webhook senden lassen.

So können Sie die Anrufe automatisch in Ihre Systeme importieren und z. B. ein neues Ticket erstellen.

Aktivierung im Servicepoint

Unter „Telefon-Sekretariat“ – „Benachrichtigung“ im Bereich „Benachrichtigung per Webhook“ den Schalter auf „aktiviert“ stellen und unter „URL“ die zu benachrichtigende Zieladresse angeben.

Unter „Secret Token“ kann ein Geheimnis angegeben werden, um sicher zu stellen, dass die Benachrichtigungen echt sind.

Format der Benachrichtigung

Die Benachrichtigung erfolgt im JSON-Format mit zusätzlichen Header-Informationen.

Header:

Feld

Wert

content-type

application/json

x-telias-token

Eingestelltes Geheimnis (z.B.“ MySecretToken“)

user-agent

TELiAS-Notification-Service

Content:

{
  "type": "message.created",
  "data": {
    "address": "Straße Nr\r\nPLZ Ort",
    "agent": "TELiAS-Mitarbeiter:in",
    "caller_number": null,
    "caller_sends_mail": true,
    "calls_again": true,
    "company_name": "Firma",
    "connected": true,
    "customer_number": "Kd.-Nr.",
    "fax": "Fax",
    "file_reference": "Aktenzeichen",
    "firstname": "Vorname",
    "hung_up": false,
    "id": 4195034,
    "lastname": "Nachname",
    "mail": "E-Mail",
    "mail_requested": true,
    "message": "Testnachricht",
    "mobile": "Mobil",
    "no_action_required": true,
    "order_number": "Best.-Nr.",
    "phone": "Telefon",
    "priority": "high",
    "private": false,
    "recall": true,
    "salutation": "Herr",
    "subject": "Test des Webhooks",
    "timestamp": "2023-02-03 10:36:07",
    "type": "call",
    "web": "Web"
  }
}

Felder:

JSON-Pfad

Format

Bezeichnung

Metadaten

 

 

data/id

Integer

Eindeutige ID der Nachricht

data/timestamp

YYYY-MM-DD hh:mm:ss

Datum und Uhrzeit der Notiz

data/type

call | fax

Typ der Notiz

data/agent

Text

Name der Sekretärin/des Sekretärs bei TELiAS

data/priority

high | standard | low

Dringlichkeit

 

 

 

Anruferdaten

 

 

data/salutation

Herr | Frau

Anrede

data/firstname

Text

Vorname

data/lastname

Text

Nachname

data/company_name

Text

Firma

data/address

Text, mehrzeilig

Anschrift

data/phone

Text

Telefonnummer

data/mobile

Text

Mobilrufnummer

data/fax

Text

Faxnummer

data/mail

Text

E-Mail-Adresse

data/web

Text

Webseite

data/caller_number

Text

Zu TELiAS übermittelte Rufnummer des Anrufes

data/customer_number

Text

Kundennummer

data/file_reference

Text

Aktenzeichen

data/order_number

Text

Bestellnummer

 

 

 

Notiz

 

 

data/subject

Text

Betreff der Notiz

data/message

Text, mehrzeilig

Notizentext

data/recall

true | false

Rückruf erwünscht

data/connected

true | false

Wurde Weiterverbunden

data/calls_again

true | false

Ruft wieder an

data/caller_sends_mail

true | false

Sendet E-Mail

data/mail_requested

true | false

Bitte E-Mail senden

data/no_action_required

true | false

Keine weitere Aktion

data/hung_up

true | false

Anrufer hat aufgelegt

data/private

true | false

Privatanruf