Сделать это не сложно, но по сути
вы просите написать за Вас код такого бота.
В общем виде функционал такого бота должен обеспечивать следующее:
- список пользователей-администраторов и список пользователей-операторов;
- доступные администраторам команды для добавления/удаления пользователей в/из этих списков;
- отслеживать операторов находящихся онлайн;
- сохранение истории общения для каждого пользователя клиента, обращавшегося к боту;
- планировщик, распределяющий задания между операторами.
Алгоритм работы примерно такой:
- при поступлении обращения, запрос онлайн-оператора у планировщика;
- передача вопроса клиент выбранному планировщиком оператору;
- по запросу оператора передача истории общения клиента;
- трансляция сообщений между клиентом и выбранным оператором и их сохранение в истории. Процесс продолжается тех пор пока (тут вы решаете сами что будет являться признаком окончания беседы. как вариант, команда от оператора и/или клиента.);
- сообщить планировщику об освобождении оператора;
- cохранить в истории отметку о том был ли решен вопрос а также uuid пользователя и оператора.
Реализация данной схемы даст минимальный необходимый функционал, который в последствии может быть расширен при необходимости