如何在Microsoft Bot Framework中为不同用户创建不同的会话?

时间:2017-01-12 13:59:58

标签: asp.net botframework direct-line-botframework

我是Microsoft Bot Framework的新手。我使用Microsoft Bot Framework创建了一个机器人。如何创建会话以便添加到控制器的variebles是特定于个人的。目前我面临的问题是,当多个用户与机器人聊天时,variebles中的值都会被覆盖,从而为用户提供错误的值。

1 个答案:

答案 0 :(得分:1)

你有没有提到过  https://docs.botframework.com/en-us/csharp/builder/sdkreference/stateapi.html

在我的项目中,我使用简单的代码为用户存储基于其设备的会话值。

StateClient sc = activity.GetStateClient();
        userData.SetProperty<string>("MyDetails", < some value >);
        // Save BotUserData
        await sc.BotState.SetUserDataAsync(activity.ChannelId, activity.From.Id, userData);
        // Get BotUserData 
        BotData userData = await sc.BotState.GetUserDataAsync(activity.ChannelId, activity.From.Id);

因此,您可以将值存储到个人用户。