我正在尝试使用带有文本,GIF和按钮的Bot Framework显示动画卡。它在机器人模拟器上完美运行,但不会显示在Messenger上。有什么想法吗?
代码
/**Send the question with the level information if available, the index and the Math expression along with a countdown timer as GIF attachment */
let message = new builder.Message(session)
.text(level ? level + ' \n' + strings.question : strings.question, dialogData.index + 1, question.expression)
.addAttachment(
new builder.AnimationCard(session)
.media([{
profile: "image/gif",
url: "https://media.giphy.com/media/l3q2silev6exF53pu/200w.gif"
}])
.buttons(buttons)
// .toAttachment()
)
session.send(message)
有什么想法可能会关闭? 提前感谢您的建议
更新1
这是我的控制台上的错误
{“error”:{“message”:“(#100)Param [elements] [0] [title]必须是非空的UTF-8编码字符串”,“”类型“:”OAuthException“,”代码 “:100,” fbtrace_id “:” + CLEcx63w 4N“}}
答案 0 :(得分:4)
您需要在动画卡中加入title
,Messenger要求所有卡片都包含标题。此外,动画卡在信使中的工作方式略有不同,因为它们使用.gif发送消息,然后是带有标题和按钮的卡片,而不是像在模拟器中那样将它们放在一张漂亮的卡片中。
在你的用例中,我会用第一行说出它作为标题的级别,以及作为副标题的问题。但是,此文本将显示在gif下方而不是它上方,因此它的布局与您现在的布局略有不同。
let message = new builder.Message(session)
.addAttachment(
new builder.AnimationCard(session)
.title(level ? level : 'Level 0')
.subtitle(strings.question)
.media([{
profile: "image/gif",
url: "https://media.giphy.com/media/l3q2silev6exF53pu/200w.gif"
}])
.buttons(buttons)
)
session.send(message)