Регистрация пользователей — важнейший аспект большинства веб-приложений, и ее отслеживание может дать ценную информацию. Получение уведомления о регистрации нового пользователя — это не только знание цифр, но и немедленное вовлечение пользователя. Например, вы можете отправить приветственное сообщение или познакомить их со специальными бонусами или предложениями за регистрацию, как только они пройдут аутентификацию в вашей системе. Когда дело доходит до аутентификации пользователей, Authgear предоставляет обширный набор функций аутентификации. Что, если вы хотите получать немедленные уведомления в Slack при регистрации нового пользователя?
Для этого существует множество инструментов с низким кодом, таких как Zapier и N8n. Однако с Authgear вы можете интегрировать как аутентификацию, так и отправку сообщений. Эта статья проведет вас через процесс интеграции Hooks and Events Authgear со Slack, чтобы добиться именно этого.
Почему Authgear?
Поскольку Authgear — это платформа идентификации как услуги (IDaaS), которая поддерживает различные методы аутентификации, такие как вход через социальные сети, без пароля, вход с использованием биометрических данных, одноразовый пароль (OTP) ) с помощью SMS/WhatsApp и т. д. Он имеет встроенные настраиваемые страницы входа, вам не придется тратить время на разработку пользовательского интерфейса и реализацию сложных потоков аутентификации. Он разработан с учетом удобства для разработчиков и имеет хуки для реагирования на различные события, связанные с пользователем. Authgear предлагает редактор кода в браузере, в котором вы можете написать код JavaScript/Typescript, чтобы добавить дополнительную логику, которая хранится и выполняется в бессерверной инфраструктуре, поддерживаемой Authgear. Мы собираемся использовать эту возможность для отправки сообщения Slack после регистрации нового пользователя.
Предварительные условия
- Учетная запись Authgear: Если у вас ее нет, вы можете зарегистрировать бесплатную учетную запись Authgear.
- Настройте приложение в Authgear. Подойдет любое веб-приложение, мобильное или настольное приложение. Если у вас нет приложений, использующих Authgear, вы можете создать его, перейдя на страницу Начать сборку Authgear.
- Учетная запись Slack. Если у вас нет учетной записи Slack, зарегистрируйте новую бесплатную учетную запись здесь и перейдите на страницу Начало работы Slack.
- Рабочая область Slack. Вам необходим доступ к рабочей области Slack, администратором которой вы являетесь. Если вы создаете просто новое рабочее пространство, следуйте данному руководству.
Настройка Slack Webhook
Прежде чем интегрировать Authgear, вам необходимо создать вебхук в Slack.
Создайте рабочее пространство Slack
Как видите, я создал новое рабочее пространство под названием authgear-example-sign-up
:
Создал там новую учетную запись администратора:
Запустили новый канал Slack с именем notification-sign-up
, где мы получаем уведомление, когда пользователь регистрируется:
Создайте Slack-приложение
Перейдите на страницу Slack API и создайте новое приложение с нуля. Мы используем его для отправки информации о вебхуке:
На следующем шаге вы указываете имя приложения и выбираете рабочую область, к которой хотите подключить приложение. Убедитесь, что это правильное приложение, поскольку вы не сможете изменить рабочую область приложения позже. Выбрав рабочую область, нажмите Создать приложение.
Включить входящие вебхуки
В разделе «Добавление функций и функциональности» нажмите «Входящие веб-перехватчики» и активируйте их.
Прокрутите вниз и нажмите «Добавить новый вебхук в рабочую область». Выберите канал, на который должны отправляться уведомления, и нажмите «Разрешить».
После создания вы получите URL-адрес веб-перехватчика, содержащий секрет в параметре запроса. Скопируйте этот URL, поскольку он будет использоваться в коде веб-перехватчика Authgear.
Интеграция Authgear со Slack Webhook
Имея под рукой URL-адрес Slack Webhook, вы теперь можете настроить Authgear Hook для реагирования на событие user.created неблокирующего типа.
Написание функции-перехватчика
Перейдите в раздел Дополнительно->Hooks на Портале Authgear. Добавьте новое Неблокирующее событие:
Выберите перехватчик Type в качестве TypeScript. Вы напишете функцию, которая будет реагировать на событие создания пользователя и отправлять уведомление в Slack. Нажмите Редактировать сценарий под опцией Конфигурация, вы перейдете в редактор:
Мы хотим отправить POST-запрос на URL-адрес веб-перехватчика Slack при срабатывании EventUserCreated
:
import { EventUserCreated } from "https://deno.land/x/[email protected]/mod.ts"; export default async function(e: EventUserCreated): Promise<void> { const url = "YOUR_SLACK_WEBHOOK_URL"; // Replace the text below with the actual message you want to send. const message = `New account signup: ${e.payload.identities[0].claims.email} has joined!`; const payload = { text: message, }; const headers = { "Content-Type": "application/json", }; // Send a POST request to the Slack webhook URL with the message. await fetch(url, { method: "POST", headers: headers, body: JSON.stringify(payload), }); }
Эта асинхронная функция TypeScript запускается после регистрации пользователя. Замените YOUR_SLACK_WEBHOOK_URL
URL-адресом, скопированным ранее. После этого нажмите Завершить редактирование и Сохранить изменения на странице «Хуки».
Подтвердите новый хук
После того, как все настроено, мы можем протестировать вновь созданный хук в действии. Самый простой способ проверить это — вручную создать нового пользователя на странице Управление пользователями на Authgear Portal.
После создания нового пользователя вы должны увидеть, что новое сообщение доставляется с адресом электронной почты пользователя [email protected] на канал Slack:
Другой способ проверить это — когда новый пользователь проходит процесс регистрации после того, как вы интегрировали свою систему с приложением Authgear и настроили метод входа для своих пользователей. Или вы также можете использовать опцию Попробовать сейчас на странице Начало работы панели управления Authgear.
После того, как вы зарегистрируетесь по электронной почте, в Slack будет отправлено сообщение:
Краткое содержание
Хуки Authgear предоставляют настраиваемый способ реагирования на события, связанные с пользователем. Благодаря интеграции со Slack вы можете получать обновления о регистрации пользователей в режиме реального времени непосредственно по предпочитаемому вами каналу. Обязательно изучите другие события и адаптируйте интеграцию к вашим конкретным потребностям!
Связанные ресурсы
Как расширение профиля может повысить эффективность вашего продукта
Сообщество
🙋 Присоединяйтесь к сообществу Authgear в Discord
💁 Познакомьтесь с SDK с открытым исходным кодом
Об авторе
Посетите мой блог: www.iambobur.com