【发布时间】:2017-05-13 00:41:15
【问题描述】:
使用 MS Bot Framework 和 Facebook Messenger 作为渠道。
我有一个简短的表格,询问 Rarity(来自 int 列表)和 Variation(来自有两个选择的枚举)。
它在网络聊天和模拟器中运行良好,但在 Messenger 上,当您键入帮助时,它不显示任何按钮和可能的答案。
这是我的代码:
[Serializable]
public class RarityAndLevelForm
{
[Prompt("What is the {&} of your hero? {||}")]
public int? Rarity;
[Prompt("Chose {&} of your hero? {||}")]
public StatsVariation StatsVariation;
public static IForm<RarityAndLevelForm> BuildForm()
{
return new FormBuilder<RarityAndLevelForm>()
.Message("Answer the questions to get your hero's IVs. Type help for additional information or quit to cancel.")
.Field(new FieldReflector<RarityAndLevelForm>(nameof(Rarity))
.SetType(null)
.SetDefine((state, field) =>
{
foreach (var item in GetRarities())
{
field.AddDescription(item, item.ToString() + " Stars")
.AddTerms(item, item.ToString() + " Stars");
}
return Task.FromResult(true);
}))
.AddRemainingFields()
.Build();
}
static List<int> GetRarities()
{
var res = HeroService.GetHeroRarities();//List of integer numbers
return res;
}
}
}
以下是网络聊天中应该发生和正在发生的事情,而不是在 Messenger 中发生的事情:
这是我在 Messenger 中得到的:
我对另一个表单有几乎相同的代码,它工作得很好,但由于某种原因,它不适用于那个领域。 任何人都知道如何解决这个问题,因为我找不到任何可以帮助我解决这个问题的方法?
【问题讨论】:
-
检查你的机器人框架仪表板问题。
-
没有问题,它只是不会在 Messenger 中显示气泡按钮。
-
这可能会对你有所帮助:southworks.com/blog/2016/09/21/…
-
我不明白这如何帮助我解决表单问题,但 tnx 努力:)
标签: c# botframework facebook-messenger