웹 사이트에 포함하려는 Azure (Web App Bot)에서 실행중인 봇이 있습니다. 봇은 Bot Builder V4 SDK Tamplate CoreBot v4.9.2를 기반으로합니다. 처음 iframe
에는를 사용 하여 몸매를 삽입했습니다. 이것은 효과가 있었지만 필요한 기능을 제공하지 않았으므로 이제 DirectLine을 사용하도록 변경했습니다.
웹 페이지의 내 코드는 다음과 같습니다.
<script crossorigin="anonymous"
src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
<div id="webchat" role="main"></div>
<script>
(async function () {
const res = await fetch('https://[my bot name here].azurewebsites.net/.bot/v3/directline/tokens/generate',
{
method: 'POST',
headers: new Headers({
'Authorization': "Bearer [my token here]"
})
});
const { token } = await res.json();
window.WebChat.renderWebChat(
{
directLine: await window.WebChat.createDirectLineAppServiceExtension({
domain: 'https://[my bot name here].azurewebsites.net/.bot/v3/directline',
token
})
},
document.getElementById('webchat')
);
document.querySelector('#webchat > *').focus();
})().catch(err => console.error(err));
</script>
약간의 어려움을 겪은 후 .NET에서 토큰을 가져 왔습니다 https://[my bot name here].azurewebsites.net/.bot/v3/directline
. 그리고 내 웹 페이지에서 채팅 창을 볼 수 있지만 connecting
잠시 동안 다음 Taking longer than usual to connect
과 같이으로 변경됩니다 .
Chrome 콘솔에라는 오류가 Failed to connect Error: Connection response code 500
있습니다. Chrome의 네트워크 탭을 확인하면 생성 된 토큰이 상태 200으로 완료되었으며 다음과 같이 웹 소켓 연결이 열려 있음을 알 수 있습니다.
----------편집하다---------
https://[my bot name here].azurewebsites.net/.bot
웹 브라우저 를 사용할 때 결과 json이
{"v":"1.0.0.0.55fa54091a[some key?]","k":true,"ib":false,"ob":false,"initialized":true}
ib와 ob는 참이어야하지만 거짓입니다. 아마도 이것이 문제의 일부일 수 있습니다.
---------- 편집 2 --------- OK 그래서 이제 나는 미치기 시작했습니다. Ashish는 나를 도왔고 어느 시점에서 ib와 ob가 사실이었습니다. 그들은 어제 대부분 사실이었습니다. 어제 어느 시점에서 그들은 잠시 동안 (2 시간 이하) 거짓으로 변했습니다. 누군가가 릴리스 파이프 라인을 트리거했지만 최근 릴리스가 없는지 확인했습니다. 그 후 ib와 ob는 마술처럼 다시 진실로 바뀌었고 직통 전화에 다시 연결되었습니다.
이제 오늘 아침 ib와 ob는 다시 거짓이었습니다. 그리고 다시 최근 릴리스가 없습니다. 이 문제의 원인을 모르겠습니다.
아무도 여기서 무슨 일이 일어나고 있는지 또는 이것을 고치는 방법을 알고 있습니까? ib와 ob가 거짓이되는 원인을 어떻게 찾을 수 있습니까?
도움을 주시면 감사하겠습니다! 미리 감사드립니다. 더 많은 정보가 필요하시면 요청하시면 게시하겠습니다.
* .bot 엔드 포인트에 표시된 ib 및 ob 값이 false이면 봇과 Direct Line 앱 서비스 확장이 서로 연결할 수 없음을 의미합니다.
아래 사항을 확인하십시오.
문제 해결 가이드를 확인하십시오 . 오늘 업데이트 된 것 같습니다. (아직도 오래된 날짜가 어떻게 반영되었는지, 이유는 확실하지 않음)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다