Skip to content

Releases: microsoft/BotFramework-WebChat

[4.7.0] - 2019-12-12

13 Dec 00:26
7811093
Compare
Choose a tag to compare

Subresource integrity

<script
  crossorigin="anonymous"
  integrity="sha384-5SqzfkvITe7RecSRWOFNZv5d3HMQr3gMfOlH9OXNP8SmDkoMPjCZnzH62mqLFDbX"
  src="https://cdn.botframework.com/botframework-webchat/4.7.0/webchat.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-D+O/WIE8WCupSBNZr0o0vf13eHWXaAj/HJkS6PFUgWgaHhVcJKWiBt5xq1UE1URM"
  src="https://cdn.botframework.com/botframework-webchat/4.7.0/webchat-es5.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-4Mcbzm08S4D9Aa3ihXa3xBdAQ930D6NNnJBoxlzkt5ufVqOBIE6smhulEEauDsLN"
  src="https://cdn.botframework.com/botframework-webchat/4.7.0/webchat-minimal.js"
></script>

Changelog

Breaking changes

  • adaptiveCardHostConfig is being renamed to adaptiveCardsHostConfig
    • If you are using the deprecated adaptiveCardHostConfig, we will rename it automatically

Added

  • Resolves #2539, added React hooks for customization, by @compulim, in the following PRs:
    • PR #2540: useActivities, useReferenceGrammarID, useSendBoxShowInterims
    • PR #2541: useStyleOptions, useStyleSet
    • PR #2542: useLanguage, useLocalize, useLocalizeDate
    • PR #2543: useAdaptiveCardsHostConfig, useAdaptiveCardsPackage, useRenderMarkdownAsHTML
    • PR #2544: useAvatarForBot, useAvatarForUser
    • PR #2547: useEmitTypingIndicator, usePeformCardAction, usePostActivity, useSendEvent, useSendFiles, useSendMessage, useSendMessageBack, useSendPostBack
    • PR #2548: useDisabled
    • PR #2549: useSuggestedActions
    • PR #2550: useConnectivityStatus, useGroupTimestamp, useTimeoutForSend, useUserID, useUsername
    • PR #2551: useLastTypingAt, useSendTypingIndicator, useTypingIndicator
    • PR #2552: useFocusSendBox, useScrollToEnd, useSendBoxValue, useSubmitSendBox, useTextBoxSubmit, useTextBoxValue
    • PR #2553: useDictateInterims, useDictateState, useGrammars, useMarkActivityAsSpoken, useMicrophoneButton, useShouldSpeakIncomingActivity, useStartDictate, useStopDictate, useVoiceSelector, useWebSpeechPonyfill
    • PR #2554: useRenderActivity, useRenderAttachment
    • PR #2644: Added internal/useWebChatUIContext for cleaner code
  • Bring your own Adaptive Cards package by specifying adaptiveCardsPackage prop, by @compulim in PR #2543
  • Fixes #2597. Modify watch script to start and add tableflip script for throwing node_modules, by @corinagum in PR #2598
  • Adds Arabic Language Support, by @midineo, in PR #2593
  • Adds AdaptiveCardsComposer and AdaptiveCardsContext for composability for Adaptive Cards, by @compulim, in PR #2648
  • Adds Direct Line Speech support, by @compulim in PR #2621
  • Fixes #2692. Rename sample 17 to 17.a, by @corinagum in PR #2695

Fixed

  • Fixes #2565. Fixed Adaptive Card host config should generate from style options with default options merged, by @compulim in PR #2566
  • Resolves #2337. Remove Cognitive Services Preview warning, by @corinagum in PR #2578
  • Fixes #2559. De-bump remark and strip-markdown, by @corinagum in PR #2576
  • Fixes #2512. Adds check to ensure Adaptive Card's content is an Object, by @tdurnford in PR #2590
  • Fixes #1780, #2277, and #2285. Make Suggested Actions accessible, Fix Markdown card in carousel being read multiple times, and label widgets of Connectivity Status and Suggested Actions containers, by @corinagum in PR #2613
  • Fixes #2608. Focus will return to sendbox after clicking New Messages or a Suggested Actions button, by @corinagum in PR #2628
  • Resolves #2597. Modify watch script to start and add tableflip script for throwing node_modules, by @corinagum in PR #2598
  • Resolves #1835. Adds suggestedActionLayout to defaultStyleOptions, by @spyip, in PR #2596
  • Resolves #2331. Updated timer to use React Hooks, by @spyip in PR #2546
  • Resolves #2620. Adds Chinese localization files, by @spyip in PR #2631
  • Fixes #2639. Fix passed in prop time from string to boolean, by @corinagum in PR #2640
  • component: Updated timer to use functional component, by @spyip in PR #2546
  • Fixes #2651. Add ends-with string module to es5 bundle, by @corinagum in PR #2654
  • Fixes #2658. Fix rendering of markdown images in IE11, by @corinagum in PR #2659
  • Fixes #2662 and #2666. Fix various issues related to Direct Line Speech, by @compulim in PR #2671
    • Added triple-buffering to reduce pops/cracks.
    • Enable Safari by upsampling to 48000 Hz.
    • Support detailed output format on Web Chat side.
  • Fixes #2700. Enable <SayComposer> and Adaptive Cards in recompose story, in PR #2649
    • Moved <SayComposer> from <BasicTranscript> to <Composer>
    • Moved WebSpeechPonyfill patching code from <BasicTranscript> to <Composer>
  • Fixes #2699. Disable speech recognition and synthesis when using Direct Line Speech under IE11, by @compulim, in PR #2649
  • Fixes #2709. Reduce wasted render of activities by memoizing partial result of <BasicTranscript>, by @compulim in PR #2710
  • Fixes [#2710](https://github.com...
Read more

[4.6.0] - 2019-10-30

31 Oct 17:03
Compare
Choose a tag to compare

Subresource integrity

<script
  crossorigin="anonymous"
  integrity="sha384-OMSDFQjj54XS4zo/4e+KTgG40iHCIfEk+WbICRZ98I5yJBZp6Uk60BeFjei8qpec"
  src="https://cdn.botframework.com/botframework-webchat/4.6.0/webchat.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-ma13AI3QeruijNQ/ustpc3WpM3I2Ik6B+vzlq7KDiMujPuH7Fn9uKgW5W4zl8wpx"
  src="https://cdn.botframework.com/botframework-webchat/4.6.0/webchat-es5.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-CoClfeijBBmD7Fzyk/iwKYuWJ7ATbriSm9AfXEswaeiu3o6wHWGLZzYHUlHefSyR"
  src="https://cdn.botframework.com/botframework-webchat/4.6.0/webchat-minimal.js"
></script>

Breaking changes

  • We will no longer include react and react-dom in our NPM package, instead, we will requires peer dependencies of react@^16.8.6 and react-dom@^16.8.6

Changed

Fixed

Read more

[4.5.3] - 2019-10-06

10 Oct 17:11
Compare
Choose a tag to compare

Changed

  • bundle: Bumped DirectLineJS to support metadata when uploading attachments, in PR #2433

Fixed

Added

Subresource Integrity

<script
  crossorigin="anonymous"
  integrity="sha384-Zl/fIBeWHqCEEzuKP6ic/Pup+cVBr0RQ4VlqAGhZE+fKXdF/Dxur4cb0XbJ9lZZt"
  src="https://cdn.botframework.com/botframework-webchat/4.5.3/webchat.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-RT+4lukCsewrPC9U1e2woCuvDeT/eUmXARVYZx6MzAI+Fr/XGLSGU9VbSzRuHvg5"
  src="https://cdn.botframework.com/botframework-webchat/4.5.3/webchat-es5.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-HeFlJFzx1rK1kb7bpjjo+AjJp5lvbImFwxAGZFGVABggvyxVSLZlJBS+PuJ/FtDF"
  src="https://cdn.botframework.com/botframework-webchat/4.5.3/webchat-minimal.js"
></script>

[4.5.2] - 2019-08-07

07 Aug 21:51
Compare
Choose a tag to compare

Fixed

Subresource Integrity

<script
  crossorigin="anonymous"
  integrity="sha384-a9Z0Q7O1dKMisOzba3dqq3ZEchWJcJGv+i5J94+yzQ3tqWSUc3WpFj21in7WxwUj"
  src="https://cdn.botframework.com/botframework-webchat/4.5.2/webchat.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-RuI30YtVKhqBwl6O6R0Fvc2Wyi9AymHK1VHrf9WAYCjJoFLX79s+nrOMMQRdxtbM"
  src="https://cdn.botframework.com/botframework-webchat/4.5.2/webchat-es5.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-QBQ3PJWOvrgtiXPJrgpP4UvFmZKQzzfB4EM23sa6yEu0NmLBgZGpmSAqrJB+lWd/"
  src="https://cdn.botframework.com/botframework-webchat/4.5.2/webchat-minimal.js"
></script>

[4.5.1] - 2019-08-01

01 Aug 19:56
53aa712
Compare
Choose a tag to compare

Fixed

Subresource Integrity

<script
  crossorigin="anonymous"
  integrity="sha384-6AK1603gasJA3qmJvpy+moWoZpnDqXIsNVqFVDxSysJMsQIRXzOZywAA4hotxv0I"
  src="https://cdn.botframework.com/botframework-webchat/4.5.1/webchat.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-JOzj0JSwWru2fPTe/o3PBeiTRzCyiieUknHSfuhqZdPt7VpYQVePXJ592CYnqZ35"
  src="https://cdn.botframework.com/botframework-webchat/4.5.1/webchat-es5.js"
></script>

<script 
  crossorigin="anonymous"
  integrity="sha384-Tc8XyArB5lvZbPI1tXjmSnyQgeufwfAvCP871pJbLxnSCONWeTiqVeSnTKixCKY8"
  src="https://cdn.botframework.com/botframework-webchat/4.5.1/webchat-minimal.js"
></script>

[4.5.0] - 2019-07-10

11 Jul 01:06
Compare
Choose a tag to compare

Speech changes in Web Chat 4.5

This is a breaking change on behavior expectations regarding speech in Web Chat.

In issue #2022, it was brought to the Web Chat team's attention that the speech behavior of v3 and v4 of Web Chat do not match. In the 4.5 release, the expected behavior of a speech bot has been modified in order to bring parity to v3 behavior regarding input hint. This means the following:

  • Expecting input will now be respected by Web Chat and open the microphone during a speech conversation. This is assuming that the user has given permission for the browser to use the mic.
  • Accepting input will no longer open the mic after the bot has responded to a speech activity from the user. Instead, the user will have to press the microphone button again in order to further interact with the bot.
  • Ignoring input will continue to not open the mic after a speech activity has been sent from the bot.

Added

Changed

Fixed

Read more

[4.4.2] - 2019-05-29

29 May 23:34
23686fd
Compare
Choose a tag to compare

Changed

[4.4.1] 2019-05-03

03 May 21:21
Compare
Choose a tag to compare

Added

Fixed

Changed

[4.3.0] 2019-03-04

05 Mar 03:22
Compare
Choose a tag to compare

Added

  • Fix #1383. Added options to hide upload button, by @compulim in PR #1491
  • Added support of avatar image, thru styleOptions.botAvatarImage and styleOptions.userAvatarImage, in PR #1486
  • Added ability to style sendbox background and text color, thru styleOptions.sendBoxBackground and styleOptions.sendBoxTextColor, in PR #1575
  • core: Added sendEvent, in PR #1286
  • core: Added CONNECT_FULFILLING action to workaround redux-saga design decision, in PR #1286
  • component: Added missing Spanish (es-ES) locale by @schgressive in PR #1615
  • Added missing Spanish (es-ES) locale by @schgressive in PR #1615
  • Fix #1602. Fix suggested actions regression of buttons, by @corinagum in PR #1616
  • component: Allow font family and adaptive cards text color to be set via styleOptions, by @a-b-r-o-w-n, in PR #1670
  • component: Add fallback logic to browser which do not support window.Intl, by @compulim, in PR #1696
  • *: Added username back to activity, fixed #1321, by @compulim, in PR #1682
  • component: Allow root component height and width customization via styleOptions.rootHeight and styleOptions.rootWidth, by @tonyanziano, in PR #1702
  • component: Added cardActionMiddleware to customize the behavior of card action, by @compulim, in PR #1704

Changed

Fixed

  • Fix #1360. Added roles to components of Web Chat, by @corinagum in PR #1462
  • Fix #1409. Added microphone status as screen reader only text, by @corinagum in PR #1490
  • Fix #1605, #1316, #1341, #1411. Fix color contrast ratios & downloadIcon narrator accessibility by @corinagum in PR #1494
  • Fix #1264, #1308, #1318, #1334,#1425. Update icons with accessibilty, Sent message accessibility, and fix sample README.md, @corinagum in PR #1506 and #1542
  • Fix #1512. Fix #1512: fix sanitization of anchors (allow title attributes), by @corinagum in PR #1530
  • Fix #1499.
    • Fix screen reader handling of name, activity, and timestamp,
    • connectCarouselFilmStrip: Fixed botAvatarInitials and userAvatarInitials functionality from recent name change,
    • BasicTranscript: Fixed user activity should not be recreated after receive ACK from Direct Line,
    • by @corinagum in PR #1528
  • component: Fix #1560, #1625 and #1635. Fixed carousel layout not showing date and alignment issues, by @compulim in PR #1561 and #1641
  • playground: Fix #1562. Fixed timestamp grouping "Don't group" and added "Don't show timestamp", by @compulim in PR #1563
  • component: Fix #1576. Rich card without tap should be rendered properly, by @compulim in PR #1577
  • core: Some sagas missed handling successive actions, in PR #1286
  • core: incomingActivitySaga may throw null-ref exception if the first activity is from user, in PR #1286
  • component: Fix #1328. Should not start microphone if input hint is set to ignoringInput, in PR #1286
  • component: Fix outgoing typing indicators are not sent and acknowledged properly, in PR #1286
  • Fix #1402. Add messageBack support, by @corinagum in PR #1581
  • Fix #1539. Fix outgoing typing indicators are not sent and acknowledged properly, in PR #1541
  • component: Fix #1547. Fixed unhandled activity type should be forwarded to custom middleware, by @compulim in PR #1569
  • playground: Fix #1610. Fixed bot and user avatar initials not working, by @compulim in PR #1611
  • bundle: Fix #1613. Pass conversationId t...
Read more

[4.2.0] - 2018-12-11

18 Dec 19:25
Compare
Choose a tag to compare

Added

  • Build: Development build now include instrumentation code, updated build scripts
    • npm run build will build for development with instrumentation code
    • npm run prepublishOnly will build for production
    • npm run watch will also run Webpack in watch loop
  • Build: Automated testing using visual regression testing technique in #1323
  • Added French localization, by @tao1 in PR #1327
  • Fix #1344, by updating README.md and adding validation logic for userID props, in #1447
    • If userID props present and also embedded in Direct Line token, will use the one from Direct Line token
    • If userID props present, they must be string and not prefixed with dl_, to avoid confusion between userID props and Direct Line embedded user ID (which is forgery-proof)
    • If userID props does not pass the validation test or not specified, Web Chat will use default-user instead
  • Added support for Cognitive Services Speech to Text and Text to Speech in PR #1442

Changed

  • Core: Saga will run after custom middleware, in #1331
    • Custom middleware run before saga to allow user to modify default behavior
  • Build: Bump dependencies, in #1303
    • @babel
      • @babel/cli@7.1.2
      • @babel/core@7.1.2
      • @babel/plugin-proposal-class-properties@7.1.0
      • @babel/plugin-proposal-object-rest-spread@7.0.0
      • @babel/plugin-transform-runtime@7.1.0
      • @babel/preset-env@7.1.0
      • @babel/preset-react@7.0.0
      • @babel/preset-typescript@7.1.0
      • @babel/runtime@7.1.2
    • concurrently@4.0.1
    • jest
      • babel-jest@23.6.0
      • jest@23.6.0
      • ts-jest@23.10.4
    • typescript@3.1.6
    • webpack
      • webpack@4.24.0
      • webpack-command@0.4.2
  • Fix Russian localization by @odysseus1973 in PR #1377

Fixed

  • Fix #1397. Patched activities without from field, in PR #1405
  • Fix #1237. Added new sample called migration, by @corinagum in PR #1398
  • Fix #1332. Updated sample names and add table to README, by @corinagum in PR #1435
  • Fix #1125. Added error handling for Adaptive Card JSON render, by @corinagum in PR #1395
  • Build: Webpack watch mode now emits non-minified code for shorter dev RTT, in #1331

Samples