Не удалось позвонить через Webhook. Ошибка: DEADLINE_EXCEEDED | Истекло время запроса - PullRequest
0 голосов
/ 11 января 2020

Я использую ASP. Net для внутреннего webhook. Некоторые запросы выполнены успешно, и лишь немногие получают эту ошибку:

Сбой вызова Webhook. Ошибка: DEADLINE_EXCEEDED

Но когда я добавил немного большую операцию, выполнение которой занимает не менее 2 секунд, и отвечает примерно через 3 секунды, я постоянно получаю эту ошибку.

Я думаю, что проблема заключается только в тайм-ауте запроса. Я не могу ускорить мой ответ, так как он проходит между 2-3 сторонними серверами. Так что каким-то образом мне нужно увеличить время ожидания ответа в диалоге для моего бота.

Ответы [ 2 ]

1 голос
/ 13 января 2020

Это невозможно, я боюсь, вы можете обойти реализацию асинхронного фонового потока

{ ссылка }

0 голосов
/ 14 января 2020

Это то, что я получил от поддержки Dialogflow.

Привет,

Спасибо за обращение в службу поддержки Dialogflow. Ограничение времени ожидания Webhook для действий при интеграции с Google составляет 10 секунд. Для всех других интеграций, включая самостоятельно разработанные реализации, отправляющие запросы нашему API, тайм-аут webhook составляет 5 секунд. Эти значения не настраиваются. Ограничение времени ожидания включает в себя время для запросов Dialogflow к конечной точке веб-крюка, время обработки веб-крюка и время ответа веб-крюка обратно в Dialogflow.

Разговорные интерфейсы предназначены для непрерывного обмена сообщениями между конечным пользователем и приложение / боты. Если вашей веб-службе требуется больше времени для выполнения операций в фоновом режиме, и это не может быть оптимизировано, рассмотрите возможность перестройки потока диалогов таким образом, чтобы конечные пользователи не ожидали ответа приложения / бота более 5 секунд (10 для действий на Google).

Дайте мне знать, если у вас есть какие-либо вопросы.

С уважением, Служба поддержки Mark Dialogflow

Так что единственный вариант - это держать пользователя в разговоре, пока вы получаете ответ от webhook

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...