Система поддержки в мобильном шутере: тандем Discord и Zendesk

64d8fbfc67b2fc6b9b386d0334763f01.jpg

Раньше наш игровой саппорт целиком умещался в рамках одного сервера Discord: игроки были волонтерами, а штат саппорта был ограничен парой человек. Но в какой-то момент система начала сбоить, обрабатывать запросы из сторов стало неудобно, а людей не хватать.

Поэтому занялись улучшением процессов: расширили штат сотрудников, обновили график для поддержки 24/7, и внедрили саппорт-сервис Zendesk. Подробнее обо всем под катом.

Саппорт-система на базе Discord какое-то время успешно работала: опытные игроки из сообщества по сути были внештатными сотрудниками техподдержки за внутриигровые бонусы. Cо временем они стали выгорать и уходить, если раньше их было восемь, то стало — двое. А с MAO в 5 млн человек мы не могли оперативно и качественно отвечать на запросы. 

Еще у саппорт-сервера в Discord есть лимит в 500 тикетов, который можно исчерпать за 3–5 дней, если оперативно не разобрать запросы, и положить сервер. 

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

Как изменился саппорт

Сначала расширили штат поддержки — с одного до пяти фултайм-специалистов. Требования к саппортерам было два: свободный русский язык и английский на уровне Upper-Intermediate. К тому же удалось найти специалиста с вечерним графиком и возможностью работать на выходных.

С расширением команды сразу же решилась проблема обработки запросов, так как банально появились дополнительные руки. На данном этапе мы не разделяем роли специалистов, они все универсальные саппортеры, которые могут заниматься любыми запросами будь то жалобы на баги, проблемы с платежами и другими. В ближайших планах создать график и разделить зоны ответственности по категориям обращений.

Сейчас работа саппорта организована так:

  • В будние дни с утра и до полудня я занимаюсь тикетами в Zendesk (об инструменте я расскажу дальше), которые накопились за вечер или в выходные дни. В среднем обрабатываю около 150–200 тикетов в день.

  • Остальные специалисты занимаются тикетами в Discord или ответами на отзывы в Asodesk (платформа для маркетинга, там удобно отвечать на отзывы, отслеживать конкурентов и так далее). 

  • В зависимости от степени загруженности мы перераспределяем задачи. Например, некоторые могут переключиться на обработку запросов в Zendesk в течение дня. 

  • В выходные дни канал для создания тикетов в Discord закрывается, и все запросы идут Zendesk. Там их мониторит специалист, и если появляется критическая проблема, то связывается с продакт-овнером. 

  • Таким образом удается организовать работу 24/7.

Внедрение Zendesk

Изначально его подключали вообще по другой причине: Apple изменила правила стора, теперь в приложениях должна быть кнопка для удаления аккаунта. Внедрять такую функциональность займет много времени, а необходимости в ней как таковой нет. Поэтому решили оформить возможность удаления через письмо на почту, а чтобы легче мониторить нужны были теги и фильтры. 

Вспомнили про проверенный временем Zendesk. Это саппорт-платформа с возможностью удобно отвечать/отслеживать/тегировать тикеты и так далее. В нем проще работать с заготовленными ответами, категоризировать и разбирать обращения, потому что на какие-то отзывы нужно отвечать в первую очередь, какие-то отложить на потом, какие-то можно вовсе проигнорировать.

Регистрация

Процесс довольно простой:

1. Регистрируем и оплачиваем Zendesk. Для себя мы выбрали тарифный план Support Team, так как специалистов саппорта у нас всего пять.

8232efcf8e6f5b05d5a3964a4eebf05c.png

2. Сразу добавляем сотрудников и назначаем роли (People → Team members).

3. Привязываем корпоративную почту, на которую приходят запросы от игроков, к сервису Zendesk (Channels → Email). 

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

75febf34cac8e2d09fcc3b814349e5cf.png

3. Готово. Можно начинать настраивать фильтры, теги, триггеры и так далее.

Фичи Zendesk

Вся работа с тикетами происходит в интерфейсе Zendesk. Сервис все тегирует и фильтрует: разбивает обращения по группам, типам, приоритетам, подтягивает логи пользователя и многое другое. Все зависит от того, как это настроить, система гибкая.

Главная страница похожа на обычный почтовый ящикГлавная страница похожа на обычный почтовый ящик

По факту игрок пишет письмо на почту, а в Zendesk подтягиваются данные о нем: время создания запроса, название и версия приложения, ID игрока, категория запроса, тип и модель устройства и версия ОС. Данные, конечно, подтягивает не сам сервис, а клиент игры, в который добавили эту функциональность наши разработчики.

Запрос игрока и форма ответаЗапрос игрока и форма ответа

В Zendesk есть несколько крутых особенностей:

1. Автоматизация — автоматическое выполнение действий при разных условиях.

2. Теги — ключевые слова, по которым можно категоризировать письма. Также можно настраивать действия, например, если письмо содержит определенный тег, то пишется автоответ.

3. Макросы — готовые шаблоны ответов. Можно заранее настроить шаблоны ответов под различные ситуации, а потом выбирать их прямо в окне тикета. Мы пока что используем шаблоны из специальной Google-таблицы. 

4. История интеракций с пользователем. У каждого юзера в Zendesk есть профиль, где хранятся все тикеты и история взаимодействий. За 4 месяца у нас набралось почти 24 тысяч уникальных профилей.

5. Поддержка вкладок — как в браузере, но в рамках сервиса. Удобно для одновременной работы над несколькими тикетами.

6. Встроенный переводчик и поддержка нескольких языков с динамическим содержимым. Сервис динамически вставляет содержимое тикета на языке пользователя, агентам не нужно выполнять перевод. Но фича не работает в тарифном плане Support Team. 

7. Интеграции со сторонними сервисами. У Zendesk для этого есть собственный стор.

Автоматизация и триггеры

Далее идет настройка автоматизации. Их тут два типа:

Automations — это правила автоматизации, где настраивается, в течении какого периода времени должно быть выполнено то или иное действие. Например, если тикет открыт в течение длительного периода времени и юзер не получил никакого ответа, то юзер получает автореплай с просьбой подождать еще немного. Это помогает сгладить негатив.

Triggers работают немного иначе. Это те же самые Automations, но правила автоматизации действий срабатывают только при конкретных условиях. Например, если статус тикета был изменен со статуса open на solved, игрок получит автоматическое сообщение с благодарностью, что обратился в службу поддержки. Сценариев может быть очень много, здесь можно включить фантазию.

В любой момент триггеры можно включать/выключать, добавлять, редактировать и сортировать.

Сейчас Automations у нас выстроены так, все из них стандартные:

Активные:

  • Тикет закрывается после четырех дней нахождения в статусе Solved.

  • Тикет закрывается если игрок не дал ответа в течении 30 дней.

  • Тикет закрывается после подтверждения удаления его аккаунта из игры.

Неактивные:

  • Если тикет находится в статусе ожидания больше 24 часов, пользователь получает уведомление о том, что мы ждем от него ответ.

  • Если тикет находится в статусе ожидания больше 5 суток, пользователь получает уведомление о том, что мы ждем от него ответ.

Triggers настроены так, что мы можем мгновенно отправлять готовые сообщения игрокам, как только получаем от них запрос. Автоответы меняются в зависимости от того, из какой точки в игре отправлялся запрос: например, если игрок просит удалить аккаунт, ему приходит письмо с наводящими вопросами;, а если пишет про баг, то получает ссылку на Discord. Триггеры автоответов мы привязали к типу запроса игрока, который приходит автоматически со всей информацией об аккаунте.

Активные:

1d4f2b03db41e22c45ffb34f91dd2f82.png32469085345ec58f6ead4fc43682bb08.png

Неактивные:

10c8aa232d50e5973ef5ff4f5ff62796.png

В Triggers обязательно оставляем эти два стандартных триггера активными, иначе пользователи не будут видеть ваших ответов.

15a5ac25ecadbbe71aa93a1b438e878d.png

А вот триггеры категорий вроде Player Report (cheating, inappropriate behavior, other) настроены так, что при получении письма игрок сразу получает ответ с текстом, тикет меняет свой статус на solved, а содержимое письма заносится в отдельную табличку. Так мы фильтруем тикеты с низким приоритетом выполнения. Ниже рассказано чуть подробнее. 

Спам тоже бывает. Убирается с помощью маркировки спама в меню самого тикета.

Теги и сортировка тикетов по категориям

Мы настроили теги так, чтобы каждый запрос от игроков уходил в одну из шести категорий. Прямо в игре у нас шесть точек, откуда игроки могут отправлять свои запросы: Feedback, Action with an Account, Player Report (cheating, inappropriate behavior, other), False Ban. Находятся они в разных местах.

Одна из шести точек — False BanОдна из шести точек — False Ban

Далее в самих триггерах добавляем нужные нам теги. К примеру, если приходит письмо с категорией Banned Account, нужно сразу отправить ответ игроку и присвоить нужный тег, то в настройках триггера выставляем нужное условие и действие. 

УсловиеУсловиеДействиеДействие

Если содержимое текста содержит ключевую строку Category: Banned Account, то действием станет отправка сообщения юзеру и добавление тега false_ban к тикету.

Затем остается правильно настроить фильтрацию и сортировку по категориям. Для этого переходим во вкладку Workspaces → Views. Тут можно просматривать, добавлять и редактировать категории тикетов:

b663af2217f53e444c2ffe59641f702a.png

Для примера добавим категорию False Ban. Для этого выставим условие:

3713453479c281fb6ad9d5e7e145727b.png

Указываем название, описание и доступ к просмотру категории. Сохраняем. Теперь все тикеты с тегом false_ban автоматически появляются в категории False Ban.

Путь тикета

Разберем ситуацию, когда игрок замечает баг и хочет о нем сообщить:

  1. Игрок заходит в игру, запускает матч и замечает, что у оружия не работает особый эффект от урона. 

  2. Он идет в настройки и нажимает на кнопку Send Feedback. 

  3. Открывается клиент почты и создается драфт письма с автоматически созданной темой Feedback и текстом с данными игрока. 

  4. В письме игрок описывает проблему и по возможности прикрепляет скриншоты или видео. 

  5. После отправки письмо попадает к нам Zendesk, где срабатывает триггер — игрок сразу получает автореплай, в котором мы просим перейти в наш Discord для оперативного ответа. Но если в это время агент саппорта видит в Zendesk, что запрос срочный, то может ответить сразу и закрыть тикет. Или оставить с низким приоритетом.

Второй пример, когда игрок репортит читера:

  1. Первые 4 пункта такие же.

  2. Когда письмо падает в Zendesk, то игрок получает автоответ, где мы благодарим его за обращение и говорим, что его запрос будет рассмотрен.

  3. Затем тикет автоматически переходит в статус solved, а его содержимое записывается в специальную Google-таблицу (это настраивается через webhook в админ-центре Zendesk и с помощью бесплатного сервиса Pipedream, но с ограничением в 100 тикетов/день). Так мы экономим время на более приоритетные запросы, и уже потом проверяем таблицу и баним читеров.

Планы

Система саппорта довольно гибкая, многие вещи мы еще тестируем и пока гибридный режим работы в двух инструментах Discord и Zendesk нас устраивает. Будем смотреть дальше, а пока ближайшие планы такие:

  1. Распределить роли в команде саппорта и назначить зоны ответственности по категориям запросов.

  2. Настроить макросы для быстрых ответов.

  3. Доработать систему триггеров и автореплаев.

  4. Сделать систему аналитики и начать работать с более детальной приоритезацией отзывов.

© Habrahabr.ru