Azure Bot Service에서 메시지 제목 생략을 사용하지 않도록 설정

문제



Azure Bot Service의 메시지로 제목 부분(굵게 표시)이 생략될 수 있습니다.

(이미지의 "Windows 10의 기본 사항에 대해 설명합니다 ..."의 ... 이후 생략)

관련 문서 : Azure QnA Maker 및 Bot Service에서 환영 메시지 및 자주 묻는 질문이 가능한 채팅봇 만들기

대처법



웹 채팅의 richCardWrapTitle 속성을 true로 설정하여 생략을 끌 수 있습니다.
추가 부분 이미지:
const styleOptions = {
    richCardWrapTitle: 'true'
};
window.WebChat.renderWebChat({
    directLine: window.WebChat.createDirectLine({ secret: 'YOUR_SECRET' }),
    styleOptions
}, document.getElementById('webchat'));

클라이언트 측 전체 코드 예:

<!DOCTYPE html>
<html lang="en-US">
  <head>
    <title>Web Chat: Send welcome event</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <!--
      This CDN points to the latest official release of Web Chat. If you need to test against Web Chat's latest bits, please refer to pointing to Web Chat's MyGet feed:
      https://github.com/microsoft/BotFramework-WebChat#how-to-test-with-web-chats-latest-bits
    -->
    <script src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
    <style>
      html, body { height: 100% }
      body { margin: 0 }

      #webchat {
        height: 100%;
        width: 100%;
      }
    </style>
  </head>
  <body>
    <div id="webchat"></div>
    <script>
      (async function () {
        // In this demo, we are using Direct Line token from MockBot.
        // Your client code must provide either a secret or a token to talk to your bot.
        // Tokens are more secure. To learn about the differences between secrets and tokens
        // and to understand the risks associated with using secrets, visit https://docs.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-direct-line-3-0-authentication?view=azure-bot-service-4.0

//        const res = await fetch('https://shnaga-qna-bot.azurewebsites.net/directline/token', { method: 'POST' });
//        const { token } = await res.json();
//
        // We are using a customized store to add hooks to connect event
        const store = window.WebChat.createStore({}, ({ dispatch }) => next => action => {
          if (action.type === 'DIRECT_LINE/CONNECT_FULFILLED') {
            // When we receive DIRECT_LINE/CONNECT_FULFILLED action, we will send an event activity using WEB_CHAT/SEND_EVENT
            dispatch({
              type: 'WEB_CHAT/SEND_EVENT',
              payload: {
                name: 'webchat/join',
                value: { language: window.navigator.language }
              }
            });
          }

          return next(action);
        });
        const styleOptions = {
            richCardWrapTitle: 'true'
        };

        window.WebChat.renderWebChat({
          directLine: window.WebChat.createDirectLine({ 
              token: 'YOUR_TOKEN'  }),
          store,
          styleOptions
        }, document.getElementById('webchat'));

        document.querySelector('#webchat > *').focus();
      })().catch(err => console.error(err));
    </script>
  </body>
</html>

YOUR_TOKEN 개소를 자신의 토큰으로 변경해 주세요.

결과



무사히 제목 부분이 생략되지 않고 표시됩니다.


참고문헌



Web Chat hosted samples
Azure QnA Maker 및 Bot Service에서 환영 메시지 및 자주 묻는 질문이 가능한 채팅봇 만들기
Azure Bot Service 웹 채팅 화면에서 클라이언트 측에서 이벤트 보내기

좋은 웹페이지 즐겨찾기