Как получать уведомления по электронной почте при регистрации нового пользователя

Всем привет!

Добро пожаловать в это руководство по настройке автоматизированного рабочего процесса с помощью Integromat, которое позволит вам автоматически получать уведомление по электронной почте каждый раз, когда новый пользователь регистрируется в вашем сообществе Discourse.

Чтобы подключить Discourse к Integromat, у вас должен быть аккаунт Integromat. Если у вас его еще нет, вы можете зарегистрироваться здесь.

Этот метод использует функцию вебхуков, предоставляемую Discourse, поэтому перед началом работы у вас должен быть доступ администратора к вашему сообществу Discourse.

Как только у вас появится доступ администратора, первое, что нужно сделать, — создать новый запрос вебхука. Для этого нажмите на значок вашего профиля в правом верхнем углу и в разделе профиля выберите опцию «Сводка» (Summary).

Это приведет вас на страницу вашего профиля. Нажмите кнопку «Администратор» (Admin), чтобы перейти на административную страницу.

Нажмите на опцию «API».

Выберите вкладку «Вебхуки» (Webhooks) и нажмите кнопку «Новый вебхук» (New Webhook), чтобы создать новый запрос вебхука.

Страница конфигурации должна выглядеть следующим образом.

Чтобы заполнить эту форму, вам нужно создать новый вебхук Integromat, который будет использоваться для получения данных, отправляемых Discourse каждый раз, когда новый пользователь регистрируется в вашем сообществе.

Для этого войдите в свой аккаунт Integromat и создайте новую сценарную задачу (scenario).

Сначала вам нужно настроить модуль-триггер, то есть модуль, который будет запускать выполнение сценария. В данном случае это будет модуль вебхука, поэтому нажмите на значок вопроса и найдите приложение «Вебхуки» (Webhooks).

Нажмите на приложение «Вебхуки» и выберите модуль «Пользовательский вебхук» (Custom webhook).

Далее создайте новый вебхук, чтобы ваш сценарий мог получать данные, отправляемые ему Discourse. Для этого нажмите на приложение «Вебхуки», чтобы открыть окно его конфигурации, и нажмите кнопку «Добавить» (Add), чтобы настроить новый вебхук.

Придумайте имя для вашего вебхука. Это может быть что угодно, например, «Discourse Webhook».

Следующий шаг — нажать на опцию «Показать расширенные настройки» (Show advanced settings) и выбрать опцию «Получать заголовки запроса» (Get request headers). После этого нажмите «Сохранить» (Save), чтобы создать новый вебхук.

Теперь ваш вебхук должен быть виден. Это URL-адрес, выделенный синим цветом. Нажмите кнопку «Копировать адрес в буфер обмена» (Copy address to clipboard), чтобы скопировать ваш вебхук, и перейдите на страницу настройки вебхука в Discourse.

Вставьте URL-адрес вашего вебхука Integromat в поле «URL полезной нагрузки» (Payload URL).

Далее выберите опцию «Событие пользователя» (User Event) из списка и убедитесь, что все остальные опции сняты. Это обеспечит получение данным вебхуком только данных, связанных с конкретными событиями пользователей.

Наконец, в конце страницы установите флажки «Проверять TLS-сертификат URL полезной нагрузки» (Check TLS certificate of payload url) и «Активно» (Active), затем нажмите кнопку «Создать» (Create), чтобы установить это соединение между вашим сообществом Discourse и вашим вебхуком Integromat.

Новое соединение теперь должно быть видно на странице «Вебхуки» вашего аккаунта Discourse.

Следующий шаг — убедиться, что соединение между сообществом Discourse и вашим вебхуком Integromat установлено. Для этого нажмите на «Неактивно» (Inactive).

Затем появится небольшое меню, похожее на это. Просто нажмите «Ping», и перейдите к вашему сценарию Integromat, чтобы проверить, обнаружил ли ваш вебхук это событие.

Если это произошло, вы увидите сообщение «Успешно определено» (Successfully determined).

Следующий шаг — проверить, может ли вебхук действительно получать данные из вашего сообщества Discourse. Для этого выполните сценарий один раз, нажав кнопку «Выполнить один раз» (Run once).

Как только модуль вебхука начнет вращаться, перейдите в ваше сообщество Discourse, выйдите из системы и создайте новую учетную запись пользователя. Как только новый пользователь будет успешно создан, вебхук должен получить некоторые данные, и это будет выглядеть так.

Это поможет вам убедиться, что вебхук действительно обнаруживает реальные события (а не только пинги), а также позволит сопоставить полученные элементы данных с приложением электронной почты позже в этом руководстве. Если ваш вебхук Integromat успешно обнаружил событие, сценарий должен был быть успешно выполнен, и это будет выглядеть так.

Теперь, когда вы знаете, что модуль вебхука работает как ожидалось, и ваш сценарий Integromat запускается каждый раз при создании нового пользователя, пришло время расширить сценарий и настроить его так, чтобы он автоматически отправлял вам электронное письмо со всей информацией о пользователе.

Первый шаг — присоединить модуль «Итератор» (Iterator) к модулю-триггеру вебхука. Вы можете найти его в меню «Инструменты» (Tools) конструктора сценариев. Мы объясним использование этого модуля позже.

Нажмите на модуль «Итератор», чтобы открыть окно его конфигурации.

Как только вы нажмете на поле «Массив» (Array), слева откроется меню с некоторыми элементами данных, полученными из модуля вебхуков. Просто перетащите элемент данных под названием «Заголовки» (Headers) в поле «Массив» модуля «Итератор». Это будет массив со множеством значений.

Следующий шаг — присоединить приложение «Электронная почта» (Email) после приложения «Итератор». Нажмите на значок плюса и найдите приложение «Электронная почта». Как только вы его найдете, нажмите на него, чтобы выбрать нужный модуль.

Выберите модуль «Отправить электронное письмо» (Send an Email) из списка, чтобы отправлять себе электронное письмо каждый раз при создании нового пользователя в вашем сообществе Discourse.

Перед настройкой модуля «Электронная почта» вам нужно создать фильтр между приложениями «Итератор» и «Электронная почта», который обеспечит получение вами писем только для пользователей, регистрирующихся в вашем сообществе. Это необходимо, потому что Discourse по умолчанию запускает запросы вебхуков для всех видов активности пользователей.

В окне конфигурации фильтра сначала нужно ввести метку. Это может быть что угодно, например, «Новый пользователь» (New User).

Затем нужно создать условие, которое будет запускать этот фильтр. В первом поле условия просто сопоставьте элемент данных «Значение» (Value) из модуля «Итератор». Для логического оператора выберите «Равно» (Equal to). Наконец, в нижнем поле введите значение user_created.

Принцип работы этого условия следующий:

Данные вебхука, которые Integromat получает от Discourse каждый раз, когда пользователь выполняет какое-либо действие, содержат массив заголовков (массив — это коллекция значений). Задача итератора — извлечь каждое из этих значений по отдельности, чтобы их можно было обработать и применить к фильтру. Где-то в этом массиве значений есть значение, указывающее тип события, которое выполнил пользователь. Поскольку нас интересует событие под названием user_created (поскольку это указывает на то, что действие пользователя заключалось в создании новой учетной записи), нам нужно настроить фильтр, чтобы убедиться, что значения заголовков данных вебхука действительно содержат это значение. Если они содержат, мы продолжаем выполнение последующих модулей сценария. Если нет, выполнение сценария заканчивается, и электронное письмо не отправляется.

После настройки фильтра вы можете нажать на модуль «Электронная почта», чтобы открыть окно его конфигурации.

Первое, что нужно сделать, — подключить учетную запись электронной почты, с которой вы хотите отправлять письма. Если вы подключаете свой Gmail, обязательно следуйте этому руководству, которое пошагово объясняет процесс.

После подключения электронной почты вы можете продолжить настройку других опций модуля «Электронная почта».

В поле «Кому» (To) вы можете нажать «Добавить получателя» (Add a recipient) и ввести адрес электронной почты, на который вы хотите получать эти обновления.

В поле «Тема» (Subject) вы можете ввести что угодно, а в поле «Тип содержимого» (Content Type) выберите опцию «Текст» (Plaintext), чтобы сформировать сообщение, которое вы хотите отправлять каждый раз при выполнении этого модуля.

Поле «Содержимое» (Content) — это место, где вы можете сформировать текст электронного письма. Здесь вы можете написать некоторый статический текст (то есть текст, который всегда остается одинаковым при каждом выполнении), но также можно сопоставить динамические элементы данных из модуля вебхуков. Вебхук содержит много данных о пользователе, которые вы можете использовать, включая его имя пользователя, имя, адрес электронной почты и т. д.

Вот и всё! Вам удалось успешно создать сценарий Integromat, который уведомляет вас каждый раз, когда новый пользователь присоединяется к вашему сообществу Discourse.

Мы надеемся, что это руководство было полезным! Если у вас есть вопросы или предложения относительно того, что вы хотели бы увидеть в следующий раз, не стесняйтесь сообщить нам об этом в комментариях, отправить тикет в службу поддержки Integromat или посетить сообщество Integromat в Facebook, где насчитывается 10 тысяч участников.

Удачной автоматизации!

ССЫЛКИ

:link: Как подключить Discourse к сотням приложений с помощью Integromat

:link: https://support.integromat.com/hc/en-us/articles/360019209860-discourse?utm_medium=partner&utm_source=discourse-meta&utm_campaign=how-to-get-an-email-notification-when-a-new-user-signs-up-app-partner-community

:link: https://www.integromat.com/en/integrations/discourse?utm_medium=partner&utm_source=discourse-meta&utm_campaign=how-to-get-an-email-notification-when-a-new-user-signs-up-app-partner-community

:link: https://www.integromat.com/en/ticket?utm_medium=partner&utm_source=discourse-meta&utm_campaign=how-to-get-an-email-notification-when-a-new-user-signs-up-app-partner-community

:link: https://www.integromat.com/en/register?utm_medium=partner&utm_source=discourse-meta&utm_campaign=how-to-get-an-email-notification-when-a-new-user-signs-up-app-partner-community

:link: https://www.integromat.com/en/integrations?utm_medium=partner&utm_source=discourse-meta&utm_campaign=how-to-get-an-email-notification-when-a-new-user-signs-up-app-partner-community

11 лайков

Спасибо за ваше введение. Я почти добрался до цели.
Но у меня проблема с фильтром.

Я настроил его точно так, как вы описали. Установил условие «Значение равно user_created».
Однако событие создания нового пользователя не проходит через этот фильтр.
Есть ли способ увидеть значение напрямую? Не только как результат фильтра.
Я хотел бы проверить, какое значение оно имеет, когда приходит моё событие, но не знаю, как это сделать.

1 лайк