I'm working with Microsoft's Virtual Assistant Bot Framework solution in typescript and using the Bot Framework emulator to test it locally. Setting breakpoints in the Virtual Assistant solution causes the onboarding card to be rendered multiple times once the initial execution completes.
I'm attempting to understand what's happening here, and how an apparent delay in code execution could cause so many requests?
Here's what I see in the Bot Framework emulator while stepping through the code.
Can anyone elaborate on how the framework corresponds with the Emulator after receiving a request? Additionally, any recommendations for a community better tailored to general BotFramework discussion would be helpful.
Disregard my last comment. I was able to replicate this. Here's what's happening for the specific issue of receiving multiple welcome cards:
While your breakpoint is set, the bot is unable to respond. After some time (I believe 15 seconds), Emulator will attempt to re-initiate the conversation by sending the two conversationUpdate
s again. This is channel- and client-specific. You will not see this behavior if you test with a WebChat sample. Both Emulator and WebChat use the WebChat channel, but its Emulator that implements the retry and causes the multiple conversationUpdate
s to fire during a delay.
This is basically how bot communication works:
Regarding other communities:
The Microsoft Bot Framework team prefers that how to questions be submitted on Stack Overflow. The official Bot Framework Github repos are the preferred platform for submitting bug fixes and feature requests.
Gitter is probably the next best, although response rate varies.
There's also some Community Repos for unofficial extensions