Instruction of dev-whatson right start: Difference between revisions
(→Запуск) |
|||
Line 16: | Line 16: | ||
static_objects – набор глобальных объектов, через которых происходит работа всего проекта. | static_objects – набор глобальных объектов, через которых происходит работа всего проекта. | ||
'''Принцип работы модуля.''' | |||
При старте чатбота командой uwsgi uwsgi.ini создаётся заданное количество процессов, обрабатывающих запросы к боту. | |||
При появлении сообщения от пользователя, оно передаётся в API функцию get_message (файл bloomexbot/botapi/views.py), по параметру chat_id и dep_id происходит определение того, новый ли это диалог или продолжение существующего. Если это продолжение, то сохраняется существующий контекст. Далее происходит передача контекста и сообщения на обработку в соответствующий модуль Ватсон Ассистента объектом класса WatsonProcessor в соответствии с проектом, из которого получено сообщение (bloomex.ca или bloomex.com.au). | |||
Из полученного от Ватсон Ассистента результата обработки формируется ответ в формате, описанном в контаркте (файл Контракт.odt). | |||
Просмотр диалогов с пользователем можно осуществить зайдя на страницу | |||
http://<host>:<port>/conversation_filter_view/ | |||
Например: | |||
<nowiki>http://chatbot.necs.ca:3001/conversation_filter_view/</nowiki> |
Revision as of 05:26, 20 May 2024
Документация по использованию контейнера коннекта с IBM Watson
Место сервиса в структуре
На приложенной картинке указано, как подключается сервис
Структура проекта
WatsonConnector – класс, отвечающий за подключение и передачу данных между Ватсон ассистентом и ботом;
WatsonProcessor – класс, отвечающий за взаимодействие с Ватсон ассистентом, выполнение команд, передаваемых из ассистента, формирование вспомогательных переменных и сохранение их в контексте, передаваемом в ассистент;
bloomexbot – Django сервер, реализующий API для обработки сообщений пользователя;
BloomexApiConnector – класс передачи API запросов на сервера Bloomex;
static_objects – набор глобальных объектов, через которых происходит работа всего проекта.
Принцип работы модуля.
При старте чатбота командой uwsgi uwsgi.ini создаётся заданное количество процессов, обрабатывающих запросы к боту.
При появлении сообщения от пользователя, оно передаётся в API функцию get_message (файл bloomexbot/botapi/views.py), по параметру chat_id и dep_id происходит определение того, новый ли это диалог или продолжение существующего. Если это продолжение, то сохраняется существующий контекст. Далее происходит передача контекста и сообщения на обработку в соответствующий модуль Ватсон Ассистента объектом класса WatsonProcessor в соответствии с проектом, из которого получено сообщение (bloomex.ca или bloomex.com.au).
Из полученного от Ватсон Ассистента результата обработки формируется ответ в формате, описанном в контаркте (файл Контракт.odt).
Просмотр диалогов с пользователем можно осуществить зайдя на страницу
http://<host>:<port>/conversation_filter_view/
Например:
http://chatbot.necs.ca:3001/conversation_filter_view/