Из того, что я понял: Задержка Если Задержка равна 0, тогда, когда бот собирается отправить сообщение пользователю, не должно быть никаких задержек, и индикатор должен отображаться сразу перед отправкой сообщения.
Правильно. Задержка перед отправкой индикатора ввода.
Период
[Рассматривая пример набора текста] Это, например, когда кто-то делает паузу во время написания сообщения, а затем начинает вводить снова? То есть после того, как человек начинает печатать, он будет ждать 2000 мс, прежде чем снова отправить индикатор ввода?
Да, но это контролируется каналом + клиентом (конечно).
[Рассматривая пример с ботом] Как это переводится для бота? Бот не делает паузу. Когда индикатор «Период» будет активен для бота?
Бот повторно отправит набор текста через 2 секунды. Это будет продолжаться до тех пор, пока не будет отправлено сообщение.
Я нахожу сводку в классе Microsoft.Bot.Builder.ShowTypingMiddleware довольно полезной.
Основная проблема, с которой я сталкиваюсь, заключается в том, что бот продолжает показывать индикатор набора текста даже после отправки сообщения. Таким образом, пользователь продолжает ждать Это происходит как на каналах Messenger, так и на каналах DirectLine. Это происходит из-за того, что я неправильно понимаю Period & Delay или есть что-то еще?
Если вы отправляете сообщение, это должно прекратиться. печатная деятельность. Если нет, то что-то не так. Если вы можете создать образец репродукции этой проблемы, мне было бы интересно узнать, могу ли я воспроизвести себя.
Более подробную информацию о схеме ввода текста можно найти здесь здесь .