.net 如何修改用户';使用directline通道时,在MS Bot Framework中显示名称
正在使用AAD身份验证开发一个bot,其中我们选择directline作为我们的通道。现在,我们已经尝试在下面的代码段中显示经过身份验证的人的用户名,而不是userid.net 如何修改用户';使用directline通道时,在MS Bot Framework中显示名称,.net,botframework,direct-line-botframework,.net,Botframework,Direct Line Botframework,正在使用AAD身份验证开发一个bot,其中我们选择directline作为我们的通道。现在,我们已经尝试在下面的代码段中显示经过身份验证的人的用户名,而不是userid <script> BotChat.App({ directLine: { secret: "***********" }, user: { id: 'userid' }, bot: { id: 'botid' }, resize: 'detect' }, document.getEle
<script>
BotChat.App({
directLine: { secret: "***********" },
user: { id: 'userid' },
bot: { id: 'botid' },
resize: 'detect'
}, document.getElementById("bot"));
</script>
BotChat.App({
directLine:{secret:**************},
用户:{id:'userid'},
bot:{id:'botid'},
调整大小:“检测”
},document.getElementById(“bot”);
更改
user: { id: 'userid' },
到
您甚至可以添加用户:{id:yourUserIDFromad,name:yourUserDisplayName}
我们已经尝试在下面的代码片段中,在userid的位置显示经过身份验证的人的用户名
我假设您是.NET开发人员,并且希望动态地将用户标识传递给BotChat,您可以尝试以下方法:
- 在ASP.NET MVC应用程序中,您可以从控制器获取用户信息并将其存储在ViewBag中,然后您可以从ViewBag中检索值,并在启动BotChat时将其作为
动态传递。以下代码片段供您参考userid
$(函数(){
var userid='@(ViewBag.userinfo)';
//警报(用户标识);
BotChat.App({
directLine:{secret:{directLine_secret}}},
用户:{id:userid},
bot:{id:'fehanbotdg'},
调整大小:“检测”
},document.getElementById(“bot”);
})
测试结果:
- 在ASP.NET webform应用程序中,您可以从代码隐藏获取用户信息并将其存储在hiddenfield中,然后您可以从hiddenfield获取用户信息并使用它启动您的聊天
用户ID
?是的,必须动态更改。最初它必须是userid,一旦用户通过身份验证,它应该显示他的名字或id。如何将useridfromad传递给id
user: { id: yourUserIdFromAad },
public ActionResult Chat()
{
ViewBag.userinfo = User.Identity.GetUserName();
return View();
}
<script>
$(function () {
var userid = '@(ViewBag.userinfo)';
//alert(userid);
BotChat.App({
directLine: { secret: "{directline_secret}" },
user: { id: userid},
bot: { id: 'fehanbotdg' },
resize: 'detect'
}, document.getElementById("bot"));
})
</script>