如果我发送正常消息,我可以将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日开始,将需要messaging_type属性,并且不发送没有它的所有消息。
答案 0 :(得分:2)
您可以通过在 OnCompletion 委托中实现它来实现这一目标。在表单完成时触发。
const getActivities = function() {
return getAll(addresses).then(p => { // <--- here
return new Promise((resolve, reject) => {
fs.readFile('all.json', 'utf8', (err, contents) => {
let all = [];
let activities = JSON.parse(contents);
activities.forEach(activity => { all.push(activity); });
resolve(all);
});
});
});
}