ShowTypingMiddleware продолжает показывать индикатор даже после отправки сообщения - PullRequest
0 голосов
/ 24 октября 2019

Используя ShowTypingMiddleware в SDK V4 , Может ли кто-нибудь объяснить в реальном примере, как работают задержка и период . Пример: ShowTypingMiddleware (0, 2000)

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

Из того, что я понял:

  • Задержка

    Если Задержка равна 0 , тогда, когда бот собирается отправить сообщение пользователю, задержек не должно быть, и индикатор должен отображаться непосредственно перед отправкой сообщения.

  • Период

    [ Учитывая человека, печатающего пример ]Это, например, когда кто-то делает паузу во время написания сообщения, а затем начинает печатать снова? Имеется в виду, что после того, как человек начинает печатать, он будет ждать 2000 мс, прежде чем снова отправить индикатор ввода? [ Учитывая бот пример ]Как это переводится для бота? Бот не пауза Когда индикатор Period будет активен для бота?

Основная проблема, с которой я сталкиваюсь, заключается в том, что бот продолжает показывать индикатор набора текста даже после отправки сообщения. Таким образом, пользователь продолжает ждать

Это происходит на обоих Messenger и DirectLine Каналах

Это происходит из-за моего недопонимания Период & Задержка или есть что-то еще?

ОБНОВЛЕНИЕ: Проверьте ниже GIF (Смотреть все это, около 50 секунд, обратите внимание, что это не всегда происходит)enter image description here

1 Ответ

0 голосов
/ 26 октября 2019

Из того, что я понял: Задержка Если Задержка равна 0, тогда, когда бот собирается отправить сообщение пользователю, не должно быть никаких задержек, и индикатор должен отображаться сразу перед отправкой сообщения.

Правильно. Задержка перед отправкой индикатора ввода.

Период
[Рассматривая пример набора текста] Это, например, когда кто-то делает паузу во время написания сообщения, а затем начинает вводить снова? То есть после того, как человек начинает печатать, он будет ждать 2000 мс, прежде чем снова отправить индикатор ввода?

Да, но это контролируется каналом + клиентом (конечно).

[Рассматривая пример с ботом] Как это переводится для бота? Бот не делает паузу. Когда индикатор «Период» будет активен для бота?

Бот повторно отправит набор текста через 2 секунды. Это будет продолжаться до тех пор, пока не будет отправлено сообщение.

Я нахожу сводку в классе Microsoft.Bot.Builder.ShowTypingMiddleware довольно полезной.

Основная проблема, с которой я сталкиваюсь, заключается в том, что бот продолжает показывать индикатор набора текста даже после отправки сообщения. Таким образом, пользователь продолжает ждать Это происходит как на каналах Messenger, так и на каналах DirectLine. Это происходит из-за того, что я неправильно понимаю Period & Delay или есть что-то еще?

Если вы отправляете сообщение, это должно прекратиться. печатная деятельность. Если нет, то что-то не так. Если вы можете создать образец репродукции этой проблемы, мне было бы интересно узнать, могу ли я воспроизвести себя.

Более подробную информацию о схеме ввода текста можно найти здесь здесь .

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