Чаты в сервисах нужны для того, чтобы поддерживать связь с пользователем. Они окружают нас везде так плотно, что мы их уже не замечаем, хотя пользуемся ими ежедневно. Например, когда вызываем такси, то пишем уточнение в чат, где нас забирать. Или в банковских приложениях, когда задаем вопросы, на площадках для покупки и обмена товарами и прочее.
Чаты могут быть разных видов, рассмотрим парочку примеров из тех, которые мы делали для наших заказчиков.
Виды чатов
1. Чат между учителем и учеником
На проекте UCHOO (образовательная платформа) мы делали чат для учителей и учеников. Например, чтобы они смогли обсудить предыдущий урок или скинуть в чат ссылку на какой-то ресурс, о котором упоминали на занятии. Также мы реализовывали видеотрансляцию и текстовый чат во время нее, чтобы можно было общаться сразу по двум каналам. Но об этом мы расскажем в другом решении ;)
2. Чат с техподдержкой
Плюс таких часов в том, что пользователь может написать в техподдержку сразу на сервисе и спросить, например, где его заказ. Когда оператор общается с пользователем сразу на сервисе, он идентифицирует пользователя в системе и видит все его данные, то есть не заставляет его снова представляться и тратить время на это. Сразу показывает для оператора историю заказов, обращений и позволяет оперативно ответить по проблеме.
К общению с оператором в чате можно подмешивать чат-бота: например, в виде выбора ответа. Когда бот спрашивает, в чем вопрос, пользователь выбирает ответ, например, «где мой заказ». Тогда бот отправляет дату доставки товара и его местоположение. Об этом мы тоже расскажем подробнее в следующей серии.
3. Общение между пользователями на сервисе
Общаться на конкретном сервисе по поводу определенной проблемы всегда удобно. Например, мы разрабатывали сервис, в котором люди ищут себе соседей для совместного съема жилья. По сути это доска объявлений, где люди договариваются об условиях. Для людей важно, чтобы чат был внутри конкретного сервиса, чтобы не приходилось выходить за его пределы для решения проблем, потому что это удобно.
Какие фичи есть в чатах?
Мы делаем чаты, которые работают с мгновенной доставкой сообщений. Для общения в реальном времени используем WebSocket или SSE (Server-sent events).
Мы можем реализовать любые функции: от дефолтной отправки текста и прикрепления файлов, до того, чтобы чат парсил ссылки, которые скидывают, подтягивал превью у материалов (читал OG meta) или позволял записывать голосовые сообщения.