Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimizing the documentation for the customization of the webchat. #3526

Closed
MatthiasGwiozda opened this issue Oct 7, 2020 · 5 comments · Fixed by #3541
Closed

Optimizing the documentation for the customization of the webchat. #3526

MatthiasGwiozda opened this issue Oct 7, 2020 · 5 comments · Fixed by #3541
Assignees
Labels
area-docs Documentation required Bot Services Required for internal Azure reporting. Do not delete. Do not change color. customer-replied-to Required for internal reporting. Do not delete. customer-reported Required for internal Azure reporting. Do not delete.

Comments

@MatthiasGwiozda
Copy link

Feature Request

Is your feature request related to a problem? Please describe.
The feature request is based on this question.

Describe the suggestion or request in detail
I find that there is some informations missing in this documentation at point 3:

Using business layers and some UI components: opting into our UI but replacing just a handful of components as needed.

To replace some of the components it is necessary to fork the repository. It would be nice if someone could add the following information to this sentence:

(Using business layers and some UI [...]) (Its necessary to fork the repository and pull our updates into your custom - WebChat).

@MatthiasGwiozda MatthiasGwiozda added Bot Services Required for internal Azure reporting. Do not delete. Do not change color. customer-reported Required for internal Azure reporting. Do not delete. labels Oct 7, 2020
@lzc850612 lzc850612 added customer-replied-to Required for internal reporting. Do not delete. and removed customer-reported Required for internal Azure reporting. Do not delete. labels Oct 7, 2020
@lzc850612
Copy link

@MatthiasGwiozda can you explain more on the user scenarios that you're trying to achieve? What specifically do you have to do today to achieve this? That'll help us understand more on what's missing on the docs. Thanks.

@lzc850612 lzc850612 added the customer-reported Required for internal Azure reporting. Do not delete. label Oct 7, 2020
@compulim
Copy link
Contributor

compulim commented Oct 7, 2020

I think we cover a pretty wide range of stuff that you can customize without forking the repository.

You can customize it pretty wildly like one of our sample, https://microsoft.github.io/BotFramework-WebChat/06.recomposing-ui/c.smart-display/.

Customizing the timestamp message

There are two ways you can customize the timestamp message:

  1. Override the localization strings
  2. Customize using activityStatusMiddleware

Inline suggested actions

For the "inline suggested actions", it's possible through customizing activityMiddleware and then hiding the suggested action

Please vote on issue #3083.

Customizing the send box

You can look at this sample to recompose the UI.

  • Use composition mode if:
    • Replacing the send box
    • Hiding the send box
  • Fork the source code for send box if:

We don't recommend forking the whole repository as you only need to customize a single component. Ideally, you should be able to copy the whole /SendBox/**/* and start customizing it.

ScrollToEnd button

Would love to understand what type of customization you would do over here. We recently reworked the button and found it is quite challenging to make it accessible.

One thing you could consider is using composition mode, disable the scroll to end button, and rebuilt your own.

@corinagum corinagum mentioned this issue Oct 7, 2020
37 tasks
@corinagum corinagum added the question Further information is requested. Stack Overflow candidate label Oct 7, 2020
@corinagum
Copy link
Contributor

Added this thread to our FAQ

@MatthiasGwiozda
Copy link
Author

MatthiasGwiozda commented Oct 8, 2020

@MatthiasGwiozda can you explain more on the user scenarios that you're trying to achieve? What specifically do you have to do today to achieve this? That'll help us understand more on what's missing on the docs. Thanks.

Here are some examples of what we tried to achieve: #3490 (comment)

I think we cover a pretty wide range of stuff that you can customize without forking the repository.

while this might be true, it is not possible to "replace just a handful of components as needed" with every possible scenario. @compulim im not doubting that you implemented many customization - possibilities. But the sentence suggests that it is possible to replace every component as needed:

Using business layers and some UI components: opting into our UI but replacing just a handful of components as needed.

In some scenarios this is not true so an alternative optimization of the documentation's sentence could be:

(Using business layers and some UI [...]) (In some cases it's necessary to fork the repository and pull our updates into your custom - WebChat).

There could be a link to this question to give an example.

@corinagum
Copy link
Contributor

Reopening this issue since there's continued discussion.. it's an extremely low cost to update one sentence in our documentation if that clarity will help a little. I'll assign this to myself, but I might not get to it right away. Since it's in our FAQ, hopefully other people will also come across it if they need the info.

@corinagum corinagum added the area-docs Documentation required label Oct 8, 2020
@corinagum corinagum assigned corinagum and unassigned compulim Oct 8, 2020
@corinagum corinagum removed the question Further information is requested. Stack Overflow candidate label Oct 8, 2020
@felixvanleeuwen felixvanleeuwen mentioned this issue Oct 12, 2020
8 tasks
@compulim compulim mentioned this issue Oct 29, 2020
48 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-docs Documentation required Bot Services Required for internal Azure reporting. Do not delete. Do not change color. customer-replied-to Required for internal reporting. Do not delete. customer-reported Required for internal Azure reporting. Do not delete.
Projects
None yet
4 participants