microsoft / microsoft/BotFramework-WebChat
Using Web Chat with ACS
Open
@Kaiqb is already working on this.
Since Mar 12, 2021.
feature-request
p0
- Dominant language
- HTML
- Stars
- 1.8k
- Forks
- 1.6k
- Avg merge
- 22h 58m
- Merged PRs (30d)
- 2
Description
Feature Request
Enable Web Chat to work with ACS
Feature details
Implement the following:
- Sending/receiving text messages
- Typing indicator (needs design)
- Today's typing indicator is a dot-dot-dot animation and shown when anyone type
- Should we provide a sentence based typing indicator to cater multiuser support? E.g. "Corina and William is typing." or "Bot is typing."
- May need to talk to localization team on how to glue names, e.g. "Typing: Corina, William" is easy and recommended way to glue but UX is not great
- Handle conversation w/ 2+ users using text (needs design)
- Move from
botAvatarInitials/userAvatarInitialsto something else?
- Move from
- Enable speech to work with Web Chat and ACS (needs design)
- How to turn on/off speech? Today, we turn on based on last input. But other users may send a message few minutes later that will trigger speech synthesis all in a sudden
- Read receipts (needs design)
- Design of read receipt icon, this is the icon from Fluent UI:

- Where to put the read receipt icon? Next to the timestamp may not be great because of grouping, but we can alter grouping if needed
- WhatsApp/Telegram/Signal all have timestamp on every message. Web Chat group timestamp for messages within X minutes

- (Optional) Can we hover/click to see who read the message? Discoverability?
- Design of read receipt icon, this is the icon from Fluent UI:
- Backcompat story for end-dev who use Redux store to call Web Chat
- P0: dispatch
POST_ACTIVITY, interceptCONNECT_FULFILLED(these are available in our samples) - P0: update our samples
- Should we move to hooks, or prefer them to call chat adapter props directly?
- P2: dispatch
STOP_SPEAKING
- P0: dispatch
- Translations
- Instead of "Send failed. Retry", we are adding "Send failed." for non-retryable scenario
- How to write the string for multiple users are typing? For example, "John and Mary are typing" or "John is typing"
- Gluing names in translation may not be trivial, need to talk to translation team for opinions
- "Typing: John, Mary" is the easiest one, but not great on UX
Additional details
Design by 4/1. Code complete by 4/23.
Feature will be in a private branch for now.
[feature-request]
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.