C# 如何在Microsoft bot v4中从英雄卡捕获用户回复

C# 如何在Microsoft bot v4中从英雄卡捕获用户回复,c#,botframework,C#,Botframework,我想在单击Microsoft bot v4中英雄卡上的一个选项后捕获用户回复。 你能帮帮我吗? 谢谢 如果您使用ActionTypes.MessageBack,您将能够通过以下方式从活动.value捕获值: var card777 = new HeroCard { //Text = "Could you please click on the below button to continue?", Buttons = new

我想在单击Microsoft bot v4中英雄卡上的一个选项后捕获用户回复。 你能帮帮我吗? 谢谢


如果您使用ActionTypes.MessageBack,您将能够通过以下方式从活动.value捕获值:

   var card777 = new HeroCard
        {
            //Text = "Could you please click on the below button to continue?",
            Buttons = new List<CardAction>
             {
            new CardAction(ActionTypes.MessageBack, title: "Yes", value: "contain"),
            new CardAction(ActionTypes.MessageBack, title: "No", value: "Does not contain"),
             },
        };

        if (context.Activity.Value != null)
        {
            // payload will either be "contain" or "does not contain"
            string payload = context.Activity.Value.ToString();
        }
var card777=新卡
{
//Text=“您可以单击下面的按钮继续吗?”,
按钮=新列表
{
新的CardAction(ActionTypes.MessageBack,标题:“是”,值:“包含”),
新的CardAction(ActionTypes.MessageBack,标题:“否”,值:“不包含”),
},
};
if(context.Activity.Value!=null)
{
//有效负载将为“包含”或“不包含”
字符串负载=context.Activity.Value.ToString();
}

如果您使用ActionTypes.MessageBack您将能够通过以下方式从活动.value捕获值:

   var card777 = new HeroCard
        {
            //Text = "Could you please click on the below button to continue?",
            Buttons = new List<CardAction>
             {
            new CardAction(ActionTypes.MessageBack, title: "Yes", value: "contain"),
            new CardAction(ActionTypes.MessageBack, title: "No", value: "Does not contain"),
             },
        };

        if (context.Activity.Value != null)
        {
            // payload will either be "contain" or "does not contain"
            string payload = context.Activity.Value.ToString();
        }
var card777=新卡
{
//Text=“您可以单击下面的按钮继续吗?”,
按钮=新列表
{
新的CardAction(ActionTypes.MessageBack,标题:“是”,值:“包含”),
新的CardAction(ActionTypes.MessageBack,标题:“否”,值:“不包含”),
},
};
if(context.Activity.Value!=null)
{
//有效负载将为“包含”或“不包含”
字符串负载=context.Activity.Value.ToString();
}

这没有什么诀窍。当用户单击某个选项时,您的bot将作为消息活动接收该选项。你没什么特别需要做的。因为答案很简单,我怀疑你的问题比你实际问的问题更多。“捕获”用户回复是什么意思?你到底想做什么?到目前为止你试过什么?你遇到了什么问题?@Kyle Delaney:你好,Kyle,非常感谢你的回答,我正在修改上面的代码,以显示我真正想要的是什么。你能帮我一下吗?我用过这个:var Name=turnContext.Activity.text,但它不是working@Kyle德莱尼:或者我们需要打电话给机器人控制器才能得到回应?请解释一下你说它不工作是什么意思并提供截图。发生了什么事?你在使用哪个频道?您是否在调试模式下进行本地测试?
imBack
绝对没有理由不向bot发送消息活动。请阅读,以便您知道如何调试机器人,并在单击按钮后查看
turnContext.Activity.Text
的值。这是没有诀窍的。当用户单击某个选项时,您的bot将作为消息活动接收该选项。你没什么特别需要做的。因为答案很简单,我怀疑你的问题比你实际问的问题更多。“捕获”用户回复是什么意思?你到底想做什么?到目前为止你试过什么?你遇到了什么问题?@Kyle Delaney:你好,Kyle,非常感谢你的回答,我正在修改上面的代码,以显示我真正想要的是什么。你能帮我一下吗?我用过这个:var Name=turnContext.Activity.text,但它不是working@Kyle德莱尼:或者我们需要打电话给机器人控制器才能得到回应?请解释一下你说它不工作是什么意思并提供截图。发生了什么事?你在使用哪个频道?您是否在调试模式下进行本地测试?
imBack
绝对没有理由不向bot发送消息活动。请阅读,以便了解如何调试bot,并在单击按钮后查看
turnContext.Activity.Text
的值。
   var card777 = new HeroCard
        {
            //Text = "Could you please click on the below button to continue?",
            Buttons = new List<CardAction>
             {
            new CardAction(ActionTypes.MessageBack, title: "Yes", value: "contain"),
            new CardAction(ActionTypes.MessageBack, title: "No", value: "Does not contain"),
             },
        };

        if (context.Activity.Value != null)
        {
            // payload will either be "contain" or "does not contain"
            string payload = context.Activity.Value.ToString();
        }