реализованные проекты
Telegram-бот
для создания аватарок сотрудниками банка
Постановка задачи
Сталкивались ли вы с тем, что уходите в долгожданный отпуск, а уведомления о задачах продолжаются сыпаться? И коллега с соседнего отдела просто не знал, что вы на законном отдыхе и просит все-таки сделать отчет. В такие моменты понимаешь, что отпуск испорчен. Однако, крупные корпорации стараются создать такие условия, чтобы сотрудники поняли: их отдых также важен, как и продуктивность. Но как оповестить всех, что кто-то отсутствует и именно этому человеку нельзя писать? Сообщения и уведомления - вариант на один раз, прочел и забыл. Фотография с датами отсутствия во всех рабочих профилях - вот решение. Она не будет спамить письмами на почту, но будет всегда на виду. Команда банка рассказала NooSoft о своем видении и требованиях. Одно из них - не создавать отдельное приложение. Всё должно быть быстро, удобно и без лишних действий для пользователя. Поэтому выбор пал на создание телеграмм-бота. На текущий момент это самый актуальный мессенджер с широкими возможностями для разработки, а сотрудники банка - его активные пользователи.
Над проектом работали:
Project-manager:1Frontend-developer:1Backend-developer:1QA:1
Срок реализации проекта (дней): 50
NOOSOFTNOOSOFTNOOSOFT
Этапы реализации
01
Логика
Было решено разделить функционал на два сервиса: 1 - Бот общения с пользователем. 2 - Генератор изображений. Четкое разделение обязанностей между ботом и сервисом сборки фотографий предотвратило большое ожидание генерации изображений и "краш самого сервиса", поддерживало его активность для всех пользователей.
02
Методы обработки
На основе массива с примерами аватарок мы создали два метода по обработке изображений: предоставленных сервисом изображений и пользовательских изображений. В одном из них была описана логика, предотвращающая искажение изображений, метод определяет середину изображения и создаёт кроп.
03
Сервис генерации
В процессе разработки мы столкнулись с необходимостью увеличения скорости работы генерации аватарок и предотвращения блокировки для других пользователей во время сборки. Поэтому было решено создать несколько независимых сервисов генерации, которые работают параллельно и распределяют нагрузку между собой.
04
Сбор статистики
В конечной стадии разработки мы добавили сбор статистики для анализа производительности бота. И произвели переход работы от механизма pulling (периодический опрос сервера на наличие новых сообщений) к использованию Webhooks.
Итог
Сотрудники банка были приятно удивлены оперативностью и эффективностью нового инструмента. Такая методика моментально и ненавязчиво информирует коллег о том, что кто-то находится в отпуске и позволяет избегать ненамеренных обращений. Теперь сотрудники могут полностью погружаться в свой заслуженный отдых, зная, что их рабочий статус ясно отображен для окружающих.
Используемые технологии
Контакты
свяжитесь с нами, мы это любим!
Скачать презентацию