Discourse Salesforce

:discourse2: Краткое описание Discourse Salesforce обеспечивает синхронизацию между пользователями Discourse и потенциальными клиентами/контактами в Salesforce, а также позволяет использовать вход через Salesforce Social Login.
:hammer_and_wrench: Ссылка на репозиторий https://github.com/discourse/discourse-salesforce
:open_book: Руководство по установке Как установить плагины в Discourse

Синхронизация между потенциальными клиентами/контактами Salesforce и пользователями Discourse

Вы можете создать потенциального клиента (Lead) или контакт в Salesforce из любого пользователя Discourse через меню публикации. Для удобного различения таких пользователей рядом с именем автора в постах будет отображаться иконка. В соответствующих объектах Salesforce будут присутствовать ссылки на профили этих пользователей Discourse.

Созданные потенциальные клиенты и контакты автоматически добавляются в группы пользователей Discourse.

Когда потенциальные клиенты или контакты создают новые темы, они добавляются в качестве элемента ленты в Chatter.

Синхронизация между кейсами Salesforce и темами Discourse

Вы можете создать кейс в Salesforce для любой темы Discourse через меню администратора темы. Автор темы автоматически будет создан как контакт в Salesforce.

Вход через Salesforce (OAuth)

Этот плагин также позволяет выполнять вход через Salesforce, что упрощает регистрацию пользователей Salesforce в Discourse.

Конфигурация

Шаги 1–3 описывают настройку в консоли Salesforce с использованием нового (2025) менеджера внешних клиентских приложений. Шаги 4 и 5 описывают настройку плагина Discourse Salesforce.

Шаг 1: Переход к менеджеру внешних клиентских приложений

Нажмите Setup (Настройки) в шестеренке в правом верхнем углу. Найдите «External Client App Manager» (Менеджер внешних клиентских приложений).

📸


Шаг 2: Создание нового внешнего клиентского приложения

Заполните раздел «Basic Information» (Базовая информация), затем включите настройки OAuth.

URL-адрес обратного вызова должен быть:

  • https://<ваш-сайт-discourse>
  • https://<ваш-сайт-discourse>/auth/salesforce/callback

Добавьте следующие доступные области OAuth:

  • Доступ к сервису идентификации (id, profile, email, address, phone)
  • Управление данными пользователей через API (api)
  • Выполнение запросов в любое время (refresh_token, offline_access)

В разделе Flow Enablement:

  • Включите поток клиентских учетных данных (Client Credentials Flow)
  • Включите поток JWT Bearer (это необходимо для создания потенциальных клиентов и контактов)
    • Сгенерируйте сертификат
    • Загрузите файл server.crt (в этом руководстве предполагается, что вы сгенерировали файлы server.crt и server.key)
    • Сохраните файл server.key для вашего сайта

Сохраните изменения.

📸



Шаг 3: Получение секретов потребителя нового внешнего клиентского приложения

На созданном внешнем клиентском приложении перейдите на вкладку Settings (Настройки) и прокрутите вниз, чтобы развернуть раздел OAuth Settings.

Нажмите «Consumer Key and Secret» (Ключ и секрет потребителя), снова введите учетные данные для входа, а затем переходите к следующему шагу.

📸

Шаг 4: Заполнение деталей в настройках плагина Discourse Salesforce

Перейдите по адресу https://<ваш-сайт-discourse>/admin/plugins/discourse-salesforce/settings

Необходимо обновить шесть + одну настройку:

  • Установите галочку «salesforce enabled» (включить Salesforce)
  • Установите галочку «salesforce login enabled» (включить вход через Salesforce)
  • Заполните поле «salesforce client id», используя Consumer Key из предыдущего шага
  • Заполните поле «salesforce client secret», используя Consumer Secret из предыдущего шага
  • Заполните поле «salesforce rsa private key» файлом server.key, который вы сгенерировали выше
  • Заполните поле «salesforce username» адресом электронной почты администратора в вашей организации Salesforce. Это должен быть системный администратор в Salesforce.
  • Если у вас есть домен Salesforce: URL-адрес сервера авторизации Salesforce

Шаг 5: Авторизация вашего приложения Discourse для Salesforce

Перейдите по адресу https://<ваш-сайт-discourse>/salesforce/admin/authorize

Вам будет предложено авторизовать приложение.

📸

:discourse2: Хостинг предоставляется нами? Этот плагин доступен в наших тарифных планах Enterprise.

14 лайков

Привет,

Кажется, я столкнулся с проблемой при выполнении этого процесса. Поскольку часть настройки была не совсем понятной, я следовал комбинации этого руководства и этого от SalesForce.

Я создал приложение на стороне Salesforce с OAuth и загрузил самоподписанный серверный сертификат (server.crt) в приложение. В качестве URL-адреса обратного вызова (шаг 6 в руководстве Salesforce) я указал https://login.salesforce.com, так как предложенный URL-адрес локального хоста в настройках Discord не имел особого смысла. У нас есть ключ и секрет потребителя, а также RSA-ключ и адрес электронной почты администратора Salesforce, все они введены в настройках плагина Discourse для Salesforce, но мы не видим таких событий, как создание лидов, на стороне Discourse. Есть ли у кого-нибудь пошаговое руководство, которое мы могли бы изучить, или какие-либо советы по тестированию и решению этой проблемы?

Спасибо!
Тим

Я добавил ещё несколько подробных шагов в раздел конфигурации в исходном сообщении.

2 лайка