如果我发送普通消息,可以将ChannalData添加到消息中:
IMessageActivity message = Activity.CreateMessageActivity();
message.ChannelData = JObject.Parse("{'messaging_type':'RESPONSE'}");
但是,如果我使用的是FormBuilder,
return new FormBuilder<SandwichOrder>()
.Message("Welcome to the sandwich order bot!")
.
...
.Build();
我不知道如何添加ChannelData。
以下信息在Facebook开发文档中找到,这也是我问这个原因的原因。
变更通知
从2018年5月7日开始,将需要messages_type属性,并且没有传递的所有消息都不会传递。
最佳答案
您可以通过在OnCompletion委托中实现它来实现。填写表格后触发。
return new FormBuilder<SandwichOrder>()
.Message("Welcome to the simple sandwich order bot!")
.OnCompletion((context, state) => context.Activity.ChannelData = JObject.Parse("{'messaging_type':'RESPONSE'}"))
.Build();