microsoft / BotBuilder-Samples

Welcome to the Bot Framework samples repository. Here you will find task-focused samples in C#, JavaScript/TypeScript, and Python to help you get started with the Bot Framework SDK!
https://github.com/Microsoft/botframework
MIT License
4.37k stars 4.87k forks source link

The deafult welcome user logic allows for a group conversation but doesn't make sense in one #2812

Closed JonathanFingold closed 7 months ago

JonathanFingold commented 4 years ago

Sample information

  1. Sample type: [samples and templates (and even Composer)]
  2. Sample language: [all languages]
  3. Sample name: too many to list

Describe the bug

If 5 people joined a group conversation in one conversationUpdate activity, the bot will send a burst of messages to the conversation, multiple activities for each new user in the conversation.

The issue has been virtually invisible as the Emulator does model group conversations well.

To Reproduce

Steps to reproduce the behavior:

  1. Inspect the default welcome user logic:
  2. Error: Consider what this would actually look like in a group conversation if 5 people joined at once.
  3. To actually observe this behavior, you would need to:
    1. Create an Echo bot for a channel that supports group conversations, such as Teams or Slack.
    2. Publish the bot to the channel and join a group to the bot.
    3. Observe a repeated set of messages from the bot, one set for each user in the group.

Expected behavior

There is a Teams welcome users sample that sends a 1-1 greeting to each new member.

For the generic implementation in the templates and samples:

  1. Send only one set of messages, no matter how many users join at the same time.

Additional context

Since this is how the sample is written, this is also how we tell people to do it in the documentation, and the whole thing just feels wrong.

JonathanFingold commented 3 years ago

See also: