Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

ТЗ НА БОТА ДЛЯ СВЯЗИ ОПЕРАТОРОВ И РАБОТНИКОВ

Концепция Оператор и работник могут общаться через бота.

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

Администраторы могут просматривать информацию об операторах, добавлять, удалять и редактировать операторов.

Оператор Первый вход При первом входе, оператор должен авторизоваться по логину и паролю. В дальнейшем это не понадобится.

Просмотр работников Оператор может просмотреть список работников в боте в виде списка кнопок с именем оператора с бесконечной (если больше нет страниц, то переходит на первую/последнюю) пагинацией по 10 штук на страницу и с возможностью поиска.

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

В списке работников также отображаются работники, которых нет в базе, но о которых есть отзывы в виде номера телефона (на кнопке также номер телефона). При включенных фильтрах фио/район фактического проживания эти работники отображаются в конце списка.

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

После ввода запроса бот отправляет меню с фильтрами поиска. Тут работник может удалить фильтр и добавить фильтр (при добавлении фильтра, новый фильтр используется вместе с уже использующимися).

Поиск по фиоПри поиске по фио, идет фильтр на наличие указанных букв/слов/словосочетаний в фио работника, с удалением лишних пробелов и заменой символов и автозаменой символов, не являющимися буквами на пробелы.

Примеры:

работники в базе: Иванов Андрей Николаевич, Филиппов Александр Владимирович, Филиппов Алексей Викторович, Андреев Иван Александрович

запрос: Ал

ответ: Филиппов Александр Владимирович, Филиппов Алексей Викторович, Андреев Иван Александрович

запрос: Виктор

ответ: Филиппов Алексей Викторович

запрос: АИ

ответ: работники не найдены

запрос: Филиппов А

ответ: Филиппов Александр Владимирович, Филиппов Алексей Викторович

запрос: Филиппов Алекса

ответ: Филиппов Александр Владимирович

запрос: Филиппов Александр

ответ: Филиппов Александр Владимирович

запрос: Филиппов, Александр

ответ: Филиппов Александр Владимирович

Поиск по номеру телефонаПри поиске по номеру телефона, бот уведомляет о формате, в котором нужно указывать запрос, при получении идет фильтр на наличие указанной части в номере работника, с предварительной автоматической нормализацией к формату, в котором номера хранятся в бд (удаление не нумерических символов из номера). Также, если запрос начинается на 8, то поиск идёт на эту запрос + запрос с замененной первой цифрой на 7.

Примеры:

работники в базе: 79113456789, 79315249080, 79115246677, 79115677690

запрос: +7911

ответ: 79113456789, 79115246677, 79115677690 (в результатах будут не номера, а имена, формат, как указано в начале)

запрос: 8911

ответ: 79113456789, 79115246677, 79115677690

запрос: 7 (911) 345

ответ:79113456789

запрос: 90

ответ: 79315249080, 79115677690

запрос: 9, 3, 0

ответ: работники не найдены

запрос: 9, 3, 1

ответ: 79315249080

Поиск по району фактического проживанияПри поиске по району фактического проживания, бот присылает кнопки со всеми районами, в которых есть работники в боте и предлагает выбрать, либо написать самому. Потом идет фильтр на наличие указанных букв/слов/словосочетаний в районе работников.

Примеры:

работники в базе: Приморский, Адмиралтейский, Центральный, Центральный

запрос: Ад

ответ: Адмиралтейский (в результатах будут не районы, а имена, формат, как указано в начале)

запрос: Адмиралтейский район

ответ: работники не найдены

запрос: Центр

ответ: Центральный, Центральный

Удаление работникапроверка полномочия “удаление работников”

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

Удалена анкета

Кем анкета была создана: логин оператора/администратора, который создал анкету, либо номер телефона работника, если анкету создал сам работник.

Кем анкета была удалена: логин оператора/администратора, который удалил анкету

Изменение информации о работникепроверка полномочия “внесение правок в информацию о работнике”

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

Внесение отзывапроверка полномочия “ввод отзыва о работнике”

В отзыве указывается тип отзыва (положительный, отрицательный) и сообщение с отзывом. Отзыв от одного оператора/администратора об одном работнике может быть только один, и его нельзя изменить.

Просмотр отзывовПри переходе к просмотру отзывов о работнике, отзывы отображаются в виде, списка отзывов, следующими один за другим, с пагинацией (на одной странице - один отзыв), отзывы отсортированы по дате добавления. Отзывы можно отфильтровать по типу (положительные/отрицательные). Отзывы можно удалять при наличии полномочия “удаление отзывов о работниках”.

Удаление отзывапроверка полномочия “удаление отзывов о работниках”

При нажатии на удаление отзыва, бот спрашивает оператора, уверен ли он и предлагает либо продолжить, либо отменить. При нажатии на продолжить, отзыв удаляется из базы данных навсегда без возможности восстановления.

Добавление работниковпроверка полномочия “ручное добавление работника”

В меню добавления работников, оператор может самостоятельно добавлять работников в бота. При добавлении работника оператором, оператор должен указать айди пользователя в телеграме, фио, дату рождения, фото во весь рост, район фактического проживания, фото паспорта и номер телефона работника, заполнение идет также, как при первом входе работника.

айди пользователя в телеграме

Заполнение: текстовое сообщение от пользователя

Валидация: сообщение является нумерическим

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

Внесение отзыва по номеру телефонаЕсть отдельно возможность внести отзыв по номеру телефона. При переходе к внесению отзыва по номеру телефона, оператор вводит номер телефона, потом вводит отзыв.

РаботникПервый входПри первом входе (если не был зарегистрирован ранее самостоятельно или оператором/администратором), бот запрашивает у работника согласие на обработку персональных данных. При согласии, бот запрашивает следующую информацию:

1) ФИО

Заполнение: текстовое сообщение от пользователя

Валидация: сообщение является тремя словами

Нормализация: удаление лишних символов и пробелов, не являющимися буквами/пробелами

2) дата рождения

Заполнение: текстовое сообщение от пользователя

Валидация: сообщение является датой в формате DD.MM.YYYY

3) фото во весь рост

Заполнение: сообщение от пользователя

Валидация: сообщение является фотографией/документом в формате изображения

4) район фактического проживания

Заполнение: выбор кнопки из предложенных районов

Валидация: сообщение является одним из предложенных районов в кнопках

5) фото паспорта

Заполнение: сообщение от пользователя

Валидация: сообщение является фотографией/документом в формате изображения

6) номер сотового телефона

Заполнение: отправка пользователем контакта посредством нажатия на кнопку либо текста с номером

Валидация: сообщение является контактом/номером, проверка hlr-запросом доступности номера через сервис https://smsc.ru/

Нормализация: приведение к формату 7**********

После заполнения пользователем данных, данные отправляются на канал, указанный в настройках бота с кнопками "подтвердить" и "отменить".

При нажатии на кнопку "подтвердить" администратором либо оператором,, имеющим полномочие "модерация новых работников", работнику приходит сообщение о том, что он успешно зарегистрировался и его анкета сохраняется.

При нажатии на кнопку "отменить", администратор/оператор перенаправляется на бота, где заполняет причину отказа. Работнику отправляется сообщение об отказе с причиной отказа и предложение заполнить анкету заново.

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

Просмотр операторовАдминистратор может просмотреть список операторов в боте в виде списка кнопок с логином оператора с бесконечной (если больше нет страниц, то переходит на первую/последнюю) пагинацией по 10 штук на страницу.

По нажатию на кнопку оператора, администратор видит меню оператора с информацией о нем (логин, примерное время последней активности в боте), а также с возможностью изменить логин и пароль. Изменение логина/пароля - просто ввод нового логина/пароля. Тут же есть возможность удалить оператора.

Добавление оператораПри добавлении оператора, администратор вводит новые логин/пароль и указывает полномочия оператора.

Полномочия оператора: ручное добавление работника (по умолчанию включено), ввод отзыва о работнике (по умолчанию включено), удаление отзывов о работниках (по умолчанию выключено), удаление работников (по умолчанию выключено), внесение правок в информацию о работнике (по умолчанию выключено), модерация новых работников (по умолчанию включено).

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

Изменение текстаБоту пишется команда /edit_texts. В ответ бот отправляет файл с текстами, в котором админ меняет тексты и отправляет файл боту и тексты меняются. Вот так, примерно, выглядит файл. В {} - переменные, которые подставляет бот. Они - не любые, там только переменные, которые изначально были в тексте, админ их не может менять/добавлять, можно только убрать совсем из текста. Перенос строки - \n. Форматирование - html.

Изменение канала, в которые приходят анкеты новых работниковАдминистратор может поменять канал, в которых должны приходить анкеты новых работников. Он это делает либо вводом айди, либо форвардом любого сообщения с целевого канала.

Изменение канала, в который приходят логи об удалении работников

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

Добавление/удаление подсказок районовАдминистратор может добавлять и удалять районы. Бот отправляет текущий список районов. Администратор отправляет боту район текстом. Если такой район есть в текущем списке районов, то бот удаляет подсказку (если работники с этим районом есть, то бот уведомляет об этом администратора). Если района нет в боте, то бот добавляет данный район в список подсказок.

Подсказки районов - подсказки, которые видят работники/операторы/администраторы при заполнении анкеты работника в поле района.

Дополнительно дублирующиеся функцииУ администратора есть следующие функции, как у оператора: просмотр работников, добавление работников, получение ссылки на чат. У администратора есть все “полномочия”, им доступен весь функционал, что доступен операторам без ограничений.

Все пользователиПоддержкаПолучение ссылки, указанной админом.

Так же есть схема.

3 года назад
ospekt
27 летРоссия
3 года в сервисе
Был
3 года назад