Zum Hauptinhalt springen

Fin Messenger: Den Messenger in Ihr Salesforce-Portal einbetten

Diese Anleitung führt Sie durch die Schritte zur Installation des Fin Messenger auf einer Salesforce-Webseite.

Fügen Sie den Fin Messenger zu Ihrer Salesforce Experience Cloud (Portal)-Seite hinzu und steuern Sie, welche angemeldeten Benutzerdaten vollständig über die Konfiguration an Fin gesendet werden, ohne Apex-Bearbeitung.

Hinweis: Was sich geändert hat (Jun 2026): Früher bat diese Anleitung Sie, die JwtGenerator Apex-Klasse zu bearbeiten, um den Benutzeridentifikator und die zu sendenden Attribute auszuwählen. Das ist in einer Produktionsumgebung nicht möglich (Salesforce erlaubt keine Bearbeitung von Apex über Setup in der Produktion, und gepackte Klassen werden bei einem Upgrade überschrieben). Jetzt konfigurieren Sie all dies in den Fin Messenger Einstellungen (Custom Setting), mit einer optionalen Apex-Schnittstelle für fortgeschrittene Fälle (siehe Schritt 6).


Installieren Sie den Fin Messenger auf einer Salesforce-Webseite

1. Installieren Sie das Paket in Salesforce

Um den Fin Messenger auf einer Salesforce-Webseite zu installieren, haben wir ein Paket erstellt, das Sie installieren können und das einfach eine Custom Setting Definition erstellt.

Sie müssen das Paket in Ihrer Salesforce-Umgebung installieren, bevor Sie die untenstehenden Schritte ausführen.

Oder

2. Konfigurieren Sie die Fin Messenger Einstellungen in Salesforce

Das Paket fügt ein Fin Messenger Settings Custom Setting hinzu, das Ihre App ID, das JWT-Geheimnis und (neu) die Benutzer-Datenkonfiguration speichert.


A) Öffnen Sie die Einstellungen

  1. Gehen Sie zu Setup > Custom Settings.

  2. Öffnen Sie Fin Messenger Settings.

  3. Klicken Sie auf Verwalten.

  4. Klicken Sie auf Neu (oder Bearbeiten) beim Standardwert auf Organisationsebene.

B) App ID — in Fin, Settings > General; geben Sie sie im Feld App Id ein.
C) JWT Secret Key — in Fin, Settings > Fin Messenger; geben Sie ihn im Feld JWT Secret Key ein.


Diese beiden sind die einzigen erforderlichen Werte. Der Rest (Schritt 6) ist optional.

3. Konfigurieren Sie die Content Security Policy (CSP)

  1. Setup > Digital Experiences > Alle Sites > (Ihre Site) > Builder > Einstellungen > Sicherheit & Datenschutz.

  2. Setzen Sie Sicherheitsstufe auf Entspannte CSP.

  3. Fügen Sie unter Vertrauenswürdige Sites für Skripte https://widget.intercom.io und https://js.intercomcdn.com hinzu.

  4. Fügen Sie unter Setup → Vertrauenswürdige URLs die Intercom-URLs/CSP-Direktiven hinzu, mit CSP-Kontext = Alle oder Experience Builder Sites.

4. Fügen Sie das Fin Messenger Boot-Skript zu Ihrem Portal hinzu

<script>
window.addEventListener('finMessengerData', function (e) {
var data = e.detail || {};
window.intercomSettings = {
api_base: 'https://api-iam.intercom.io', // regional base — see table
app_id: data.appId,
intercom_user_jwt: data.jwt // omitted/null → boots logged-out
};
window.Intercom && window.Intercom('boot', window.intercomSettings);
});
</script>

Region

api_base

USA

https://api-iam.intercom.io

EU

https://api-iam.eu.intercom.io

Australien

https://api-iam.au.intercom.io

5. Fügen Sie die Fin Messenger Komponente zu Ihrer Seite hinzu

  1. Setup > Digital Experiences > Alle Sites > (Ihre Site) > Builder.

  2. Ziehen Sie die Fin Messenger-Komponente auf die Portal-Seite.

  3. Veröffentlichen Sie die Site.

6. Konfigurieren Sie die an Fin gesendeten Benutzerdaten

Alles ist im Fin Messenger Settings-Datensatz (Schritt 2) eingestellt — keine Codeänderungen. Lassen Sie ein Feld leer, um den Standardwert beizubehalten.

Feld

Was es steuert

Standard bei leer

Benutzer-ID-Feld

Das Benutzerfeld, dessen Wert zur Fin user_id wird.

ContactId

Attributfelder

Zusätzliche Attribute zum Senden (Format siehe unten).

keine

Firmen-ID-Feld

Das Benutzerfeld, das als company.company_id gesendet wird.

weggelassen

Provider-Klasse

Fortgeschritten: eine Apex-Klasse, die benutzerdefinierte Attribute zurückgibt.

nicht verwendet

Format der Attributfelder

Kommagetrennte intercomKey:UserField-Paare:

  • Links vom Doppelpunkt — der Intercom-Attributname (Schlüssel, den Fin erhält).

  • Rechts vom Doppelpunkt — der Salesforce User Field API-Name, von dem der Wert gelesen wird.

  • Ein einfacher Feldname verwendet den kleingeschriebenen Feldnamen als Intercom-Schlüssel.

  • Benutzerdefinierte Felder verwenden ihren API-Namen (__c). Unbekannte Felder werden ignoriert.

Beispiel: phone:Phone, job_title:Title, Department, plan:Account_Tier__c ergibt:

{ "phone": "(555) 123-4567", "job_title": "Account Executive", "department": "Sales", "plan": "Enterprise" }

Hinweis: name, email und user_id werden immer gesendet (nicht hier auflisten).

Fortgeschritten: benutzerdefinierte Attribute über Apex

Für Werte, die Sie nicht als einzelnes Benutzerfeld ausdrücken können, implementieren Sie FinAttributeProvider in Ihrer eigenen Apex-Klasse (bearbeitbar, in Ihrer Organisation) und geben Sie dann deren Namen im Feld Provider-Klasse an:

global class MyFinAttributes implements finmessenger.FinAttributeProvider {
global Map<String, Object> injectFinCustomAttributes(User currentUser) {
Map<String, Object> attrs = new Map<String, Object>();
attrs.put('locale', currentUser.LanguageLocaleKey);
attrs.put('is_internal',
currentUser.Email != null && currentUser.Email.endsWith('@acme.com'));

// currentUser only has the configured fields — query anything else yourself
Contact c = [
SELECT AccountId, Account.Name, Account.Subscription_Tier__c
FROM Contact WHERE Id = :currentUser.ContactId LIMIT 1
];
attrs.put('plan', c.Account.Subscription_Tier__c);
attrs.put('company', new Map<String, Object>{
'company_id' => c.AccountId, 'name' => c.Account.Name
});
return attrs;
}
}
  • Muss global sein (aufrufbar über den Paket-Namespace).

  • currentUser enthält nur die in Schritt 6 konfigurierten Felder — fragen Sie alles andere ab.

  • Die Map des Providers wird zuletzt zusammengeführt, sodass dessen Schlüssel Vorrang vor den Attributfeldern haben.

  • Halten Sie es leichtgewichtig — es läuft bei jedem Messenger-Start (Fehler werden abgefangen; langsame Abfragen verlangsamen den Start).


FAQs

Wie finde ich meine Fin App ID?

Gehen Sie zu Settings > General. Ihre App ID finden Sie im Abschnitt App details.

Wo finde ich den JWT Secret Key?

Kopieren Sie in Settings > Fin Messenger Ihren JWT Secret Key.

Was, wenn der Messenger nicht lädt?

Überprüfen Sie Ihre CSP-Einstellungen. Stellen Sie sicher, dass sowohl vertrauenswürdige Skript-URLs als auch vertrauenswürdige URLs korrekt konfiguriert sind und die Sicherheitsstufe auf Entspannte CSP gesetzt ist.

Kann ich einschränken, welche Benutzerdaten an Fin gesendet werden?

Ja, das ist Schritt 6. Konfigurieren Sie Benutzer-ID-Feld, Attributfelder, Firmen-ID-Feld und Provider-Klasse in den Fin Messenger Einstellungen. Nur name, email, user_id und was Sie in Attributfelder auflisten, wird gesendet. Felder leeren, um weniger zu senden.

Muss ich Apex bearbeiten?

Nein, die Standardkonfiguration in Schritt 6 erfordert keine Codeänderungen. Apex ist nur erforderlich, wenn Sie den erweiterten Provider-Klasse-Hook nutzen, der eine Klasse verwendet, die Sie in Ihrer eigenen Organisation schreiben (nicht das gepackte Apex).

Hat dies deine Frage beantwortet?