Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Story of one chat-bot

Story of one chat-bot

My talk on rannts #20 (25.08.2018)

4dad4cfcea74d87bbd3dad4f5ec20f92?s=128

Aleksey Ryabchikov

August 25, 2018
Tweet

Transcript

  1. История одного чат-бота Алексей Рябчиков Tinkoff.ru

  2. С чего все начинается? Опыт разработки успешных проектов Проблема организации

    библиотеки в компании Чат-бот идеально подходит для решения проблемы У нас есть: У заказчиков: Решение:
  3. Что мы хотим увидеть?  учет книг и поиск по

    ним  создание и сопровождение заказов  управление потоком бумажных книг  быстрый доступ к электронным  функциональная админка
  4. Где есть боты?

  5. Какую платформу использовать? Telegram Inline-клавиатура Текстовые кнопки Команды

  6. Какую платформу использовать? Viber Да, можно и такое Custom keyboard

  7. Slack

  8. Архитектура? Пользователь Мессенджер Ваш бот API внешних сервисов Бот-ответчик

  9. Бот-разумный Пользователь Мессенджер Ваш бот Нейросеть

  10. Бот-машина Пользователь Мессенджер Ваш бот State machine Главное меню Поиск

    книги Список заказов
  11. Архитектура бота Messe nger Context manager User state manager Context

    DB SQL DB Messenger Interface Push Notification Manager Message Sender Text handler Callback handler
  12. Архитектура бота Messe nger Front Backend Context DB SQL DB

    Bot • Django 1.11.4 • Django REST Framework • Celery для фоновых задач PostgreSQL Angular 4.0 Python 3.6 Slack Redis
  13. А как же кроссплатформенность? Slack Telegram Interface Context manager User

    state manager Context DB SQL DB Push Notification Manager Message Sender Telegram Other Slack Interface Other Messenger Interface Custom message object
  14. Как взаимодействовать с мессенджером? - Поднимаем Webhook - Используем Real

    Time Messaging Подписка на события: Способ получения обновлений:
  15. Построение интерфейса бота Кнопки: Выпадающие списки: Карточки с контентом: Action:

  16. Пользователи счастливы? Чтобы понять, как работает наш бот и получить

    обратную связь будем использовать следующие каналы: − Сбор фидбека по электронной почте и напрямую в личные сообщения − Логгирование − Сервисы аналитики chatbase.com Данные о активных пользователях Сессии
  17. Когда увидим бота? Запускаем нашего бота через несколько месяцев активной

    разработки. Реализовали все требования. Начинаем собирать фидбек. И понимаем, что не все пользователи счастливы: − Сообщения о медленной работе − Некоторые действия требуют много нажатий − Нельзя посмотреть список всех книг От Алексея: − Мониторить логи не круто
  18. Работа над ошибками − Упрощаем взаимодействие с ботом − Переписываем

    сервис push-нотификаций − Пишем менеджер, который оптимизирует отправку сообщений при каждом ответе пользователю − Добавляем список книг − Встраиваем систему прямого репортинга проблем через самого бота.
  19. Посмотрим на бота Главное меню Поиск

  20. Заказ книг

  21. Карточка книги А если очередь большая? О_о Заказываем еще одну!

  22. Интерфейс администратора

  23. Что же дальше? Больше ничего не будем делать? Конечно же

    будем. Общаясь с пользователями, мы постоянно получаем набор отличных идей, которые позволят сделать бота еще круче. Немного статистики − Бот работает пол года − Аудитория бота около 500 человек − В базе бота 411 книг − Через бота прошло 147 заказов − Бумажные книги 255 раз были переданы из рук в руки − Самые популярные книги: “Вся кремлевская рать. Краткая история современной России” и “Путь аналитика. Практическое руководство IT- специалиста”
  24. Спасибо за внимание! Мои контакты: @aryabchi Слайды: https://speakerdeck.com/aryabchi/story-of-one-chat-bot @ryabchi

  25. Вопросы?