我正在使用以下最新版本的网络聊天 ``
<!DOCTYPE html>
<html>
<style>
html, body { height: 100% }
body { margin: 0 }
#webchat {
height: 100%;
width: 100%;
}
</style>
<body>
<div id="webchat" role="main"></div>
<script src="https://cdn.botframework.com/botframework-webchat/master/webchat.js"></script>
<script>
window.WebChat.renderWebChat({
directLine: window.WebChat.createDirectLine({ token: 'MY_TOKEN_FROM_AZURE' }),
userID: '1234',
username: 'Chinni',
locale: 'en-US',
botAvatarInitials: 'WC',
userAvatarInitials: 'WW'
}, document.getElementById('webchat'));
</script>
</body>
</html>
``
我从renderwebchat()发送了一个用户名,但机器人无法访问该用户名
await turnContext.SendActivityAsync(MessageFactory.Text(turnContext.Activity.From.Name), cancellationToken);
在网络聊天中,输出为null。有人可以帮我吗 谢谢!
答案 0 :(得分:0)
您可能在实现中的某个地方犯了一个错误,因为我确认它可以正常工作。如您所见,我有可用的值:
在机器人方面,这是我发送这些消息的方式:
await turnContext.SendActivityAsync(JsonConvert.SerializeObject(turnContext.Activity));
await turnContext.SendActivityAsync($"Value of 'turnContext.Activity.From.Id': '{turnContext.Activity.From.Id}', 'turnContext.Activity.From.Name': '{turnContext.Activity.From.Name}'");
在网聊演示页面上,我使用了与您相同的代码(除了我使用了自己的令牌)