Salesforce

Einrichtung

Gemäß der Salesforce-Dokumentation: „Create and manage a connected app“ (siehe help.salesforce.com).

  1. Melde dich in deinem Salesforce-Setup als Administrator an.

  2. Gehe zu Setup → Connected Apps → New.

  3. Vergib einen sinnvollen Namen für die Connected App (z. B. „melibo“).

  4. Unter API (Enable OAuth Settings) aktiviere:

    • „Enable OAuth Settings“

    • Aktiviere „Enable Client Credentials Flow“

    • Wähle passende OAuth-Scopes (z. B. „Access and manage your data (api)“, „Perform requests on your behalf at any time (refresh_token, offline_access)“)

  5. Speichere die Connected App. Warte ggf. bis Einstellungen wirksam sind (Salesforce-Propagation).

  6. Navigiere zu der erstellten Connected App: unter Manage Consumer Details findest du:

    • Consumer Key

    • Consumer Secret

  7. Verwende diese Daten in deiner melibo-Integration: trage Base URL, Consumer Key und Consumer Secret ein.

Authentifizierung

Für die Authentifizierung wird ein OAuth 2.0 Client Credentials Flow benutzt.

Hierzu wird eine Connected App in Salesforce angelegt, hierbei muss darauf geachtet werden das die richtigen Scopes ausgewählt sind und das Enable Client Credentials Flow aktiviert ist.

Ansonsten schlagen die API Requests fehl oder die Abfragen bekommen einen Fehler.

Bilder

Üblicher Fehler ist wenn als response 401 und der error Code “INVALID_SESSION” zurück kommt.

( [message] => This session is not valid for use with the REST API [errorCode] => INVALID_SESSION_ID )

Da fehlen die richtigen Scopes für die Connected APP

Email Draft erstellen

https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_emailmessage.htm

Channel Konfigurieren

Nach dem Erstellen von einem Salesforce Channel gibt es ein paar Dinge zu beachten:

  • Damit deine Cases in Melibo landen muss eine Query definiert werden, denn die Abfrage der Cases findet nur stündlich statt und es wird die Query verwendet um die Cases zu holen, welche man auch braucht.

  • Wenn man den Client_Key und die Client_ID von Salesforce aufrufen möchte, kann man in den Manage App Tab gehen und unter der Connected App → View → Client Secret Zeile auf “Manage Client Secret” klicken.

  • Die Base-Url ist die URL von deinem Salesforce, aber nicht die API-URL von deinem Salesforce. Auch wichtig ist, dass die URL nicht mit einem Slash ( / ) endet sondern nur mit .com, damit die abfragen richtig ablaufen.

  • Automation Chat: Wenn ein Ticket reinkommt und kein Automation Chat definiert ist, dann wird standardmäßig die Trigger Erkennung von Melibo verwendet um das Ticket in einen Chat zu leiten. Da Email´s oft lang und mehrere Intents haben, ist der wahrscheinlichste Fall, dass die Tickets im “Nicht erkannte Nachrichten” Chat-Flow landen. Mit dem Automation Chat kann man das ändern und steuern in welchen Chat die Tickets “fließen” sollen. Alle abgefragten Tickets werden dann in diesen Chat gesendet und verarbeitet.

Cases abfragen (Query definieren)

In Dingo wird jede Stunde eine SOQL Query (Befehl) ausgeführt um sich die Cases zu holen. Hierzu muss eine Query definiert werden, welche zu dem Use-Case passt. Dennoch ist es wichtig zu wissen, dass die Tickets dann stündlich abgearbeitet werden.

Beispiel

Ticket Felder

Anders als bei den meisten Helpdesks fangen die Attribute (Felder) bei Salesforce mit einem Großbuchstaben an: id => Id, subject => Subject, etc.

https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_case.htm

Salesforce Knoten

Der Salesforce Knoten ist für die Automatisierung von den Salesforce Tickets gedacht. Er umfasst bisher fünf Funktionen, die man verwenden kann, um bei einem Case Tags, Kommentare, Entwürfe oder direkt die Antwort hinzuzufügen oder den Status zu aktualisieren. Wenn sich stündlich die Cases geholt werden und dann wird jeder Case einzeln in den entsprechenden Flow geschickt. Dort kann dann mit den Ticket Feldern die Informationen zu den Tickets geholt werden und der Salesforce Knoten angesprochen werden. Der Salesforce Knoten weiß schon um welches Ticket es sich handelt, daher werden Änderungen direkt an dem Ticket vorgenommen, welches in den Flow geschickt worden ist.

Email Tags

Tags können beispielweise verwendet werden um Tickets zu Kategorisieren und dann an die richtige Agents-Gruppe gesendet zu werden. Tags lassen sich im einem “,” trennen und somit mehrere auf einmal anlegen.

Status aktualisieren

Hierbei ist zu beachten, dass der Status zu den vordefinierten Status in Salesforce passt. Der String muss Identisch sein.

Kommentar hinzufügen

Zu jedem Case lässt sich mit dieser Aktion ein Kommentar hinzufügen. Dieser ist dann in Salesforce unter dem Case einsehbar

Antwort hinzufügen

Hiermit lässt sich über Salesforce direkt eine Antwort per Email an eine Person schicken lassen. Hierfür ist es wichtig die Required Fields auszufüllen: Betreff, Antwort, Von (Email von der die Antwort stammen soll) & An (Email an die die Antwort gesendet werden soll). Mit der Variable @var{ticket.SuppliedEmail} kann man die Email automatisch an den User zurück schicken.

Entwurf hinzufügen

So wie in Antwort hinzufügen haben wir hier dieselben required Fields, welche ausgefüllt werden, aber statt dass eine Antwort direkt raus geht, wird die Email als Entwurf gespeichert und kann vor dem Absenden nochmals überprüft werden. Den Entwurf findet man in Salesforce unter dem Case → Email.

Zuletzt aktualisiert

War das hilfreich?