发送自适应卡后无法发送任何其他activity
Can't send any other activity after sending adaptive card
我的自适应卡发送,并继续对话的下一步(打印一些东西以确保)但由于某些原因它不会显示任何其他activity,无论是提示,另一张自适应卡片,或只是文字。我试过让它们在同一个异步步骤中并一个接一个地发送,但这也不起作用。我没有收到任何错误消息,除了任何 'sendActivity' 方法之外,该步骤中的所有其他内容都会执行是否有某种我不知道的约定?
我已将问题缩小到 Cortana 频道,因为它在网络聊天和模拟器中都能完美运行
class BookingDialog extends CancelAndHelpDialog {
constructor(id) {
super(id || 'bookingDialog');
this.addDialog(new TextPrompt(TEXT_PROMPT))
.addDialog(new ConfirmPrompt(CONFIRM_PROMPT))
.addDialog(new DateResolverDialog(DATE_RESOLVER_DIALOG))
.addDialog(new WaterfallDialog(WATERFALL_DIALOG, [
this.destinationStep.bind(this),
this.originStep.bind(this),
this.travelDateStep.bind(this),
this.confirmStep.bind(this),
this.finalStep.bind(this)
]));
this.initialDialogId = WATERFALL_DIALOG;
}
/**
* If a destination city has not been provided, prompt for one.
*/
async destinationStep(stepContext) {
console.log("DESTINATION");
var Card = CardFactory.adaptiveCard(WelcomeCard);
const bookingDetails = stepContext.options;
await stepContext.context.sendActivity({ attachments: [Card],attachmentLayout: AttachmentLayoutTypes.Carousel});
return await stepContext.next(bookingDetails);
}
/**
* If an origin city has not been provided, prompt for one.
*/
async originStep(stepContext) {
return await stepContext.context.sendActivity("Would you like to email them?");
}
如果您使用的是 Cortana,请不要忘记添加 inputHint。另外,您在什么设备上测试 Cortana?在我看来频道已关闭,那么 Cortana 的下一回合会发生什么?如果你不送适配卡,它还会起作用吗?如果卡出现语法错误,相信Cortana会退出。 Post 卡片 json。检查所有必填字段是否存在,并且所有类型都是预期的。
我的自适应卡发送,并继续对话的下一步(打印一些东西以确保)但由于某些原因它不会显示任何其他activity,无论是提示,另一张自适应卡片,或只是文字。我试过让它们在同一个异步步骤中并一个接一个地发送,但这也不起作用。我没有收到任何错误消息,除了任何 'sendActivity' 方法之外,该步骤中的所有其他内容都会执行是否有某种我不知道的约定?
我已将问题缩小到 Cortana 频道,因为它在网络聊天和模拟器中都能完美运行
class BookingDialog extends CancelAndHelpDialog {
constructor(id) {
super(id || 'bookingDialog');
this.addDialog(new TextPrompt(TEXT_PROMPT))
.addDialog(new ConfirmPrompt(CONFIRM_PROMPT))
.addDialog(new DateResolverDialog(DATE_RESOLVER_DIALOG))
.addDialog(new WaterfallDialog(WATERFALL_DIALOG, [
this.destinationStep.bind(this),
this.originStep.bind(this),
this.travelDateStep.bind(this),
this.confirmStep.bind(this),
this.finalStep.bind(this)
]));
this.initialDialogId = WATERFALL_DIALOG;
}
/**
* If a destination city has not been provided, prompt for one.
*/
async destinationStep(stepContext) {
console.log("DESTINATION");
var Card = CardFactory.adaptiveCard(WelcomeCard);
const bookingDetails = stepContext.options;
await stepContext.context.sendActivity({ attachments: [Card],attachmentLayout: AttachmentLayoutTypes.Carousel});
return await stepContext.next(bookingDetails);
}
/**
* If an origin city has not been provided, prompt for one.
*/
async originStep(stepContext) {
return await stepContext.context.sendActivity("Would you like to email them?");
}
如果您使用的是 Cortana,请不要忘记添加 inputHint。另外,您在什么设备上测试 Cortana?在我看来频道已关闭,那么 Cortana 的下一回合会发生什么?如果你不送适配卡,它还会起作用吗?如果卡出现语法错误,相信Cortana会退出。 Post 卡片 json。检查所有必填字段是否存在,并且所有类型都是预期的。