интеграция путем выполнения действительно является подходом по умолчанию, потому что вы используете DialogFlow для разработки потока разговора и (большой бонус) управляете интеграцией с различными каналами (ie Telegram, Facebook). Это самый простой способ спроектировать полноценный диалог, вам нужно только беспокоиться о сообщениях, которые отправляются на ваш бэкэнд, чтобы сохранить данные или изменить диалог (добавить контексты или инициировать события).
Важное замечание : весь пользовательский трафик c (кто что говорит) проходит через облако Dialogflow
Взаимодействие с API становится хорошим вариантом, когда у вас уже есть существующий интерфейс (скажем, существующее приложение или веб-сайты), и вы хотите подключить возможности DialogFlow NLP.
Я сделал что-то подобное, чтобы создать чат-бота FAQ, который вызвал DialogFlow, чтобы определить, какое намерение будет соответствовать определенной фразе, пока BOT был развернут в MS Teams.
Архитектура действительно будет похожа на ту, что описана в документации: экосистема MS Team является частью «Конечного пользователя», тогда мое приложение Java («Ваша система») будет использовать API для вызова DialogFlow .
Важное замечание : только заданные операторы (те, которые вы отправляете) go в облако Dialogflow