0

所以我有一个第一次运行对话框,要求用户上传照片。我通过以下方式做到这一点:

builder.Prompts.attachment(session, "Thanks. Now upload a picture").

然后在瀑布的下一部分,将上传的媒体保存为session.userData

function(session, results) {
    //some other code
    builder.Prompts.attachment(session, "Thanks. Now upload a picture.");
},
function(session, results) {
    session.userData.profilePhoto = results.response;
    session.endDialog("All done.")
}

所以,假设我知道想要展示那张照片。我该怎么做?

我试过HeroCard用 a 发送一个CardImage

var message = new builder.Message(session);

var att = new builder.HeroCard(session)
        .images([
            builder.CardImage.create(session, session.userData.profilePhoto)
        ])
        .buttons([
            builder.CardAction.openUrl(session, "http://google.com", "buttonText")
        ]);

message.addAttachment(att);
session.send(message)

但这不起作用(我也尝试session.userData.profilePhoto.contentUrl为 CardImage 做,但也没有用)。

我究竟应该如何显示图像?

4

1 回答 1

1

UserData 不用于存储大型对象,仅用于存储状态。数据包限制为 64k。您需要使用自己的图像存储机制。

于 2016-08-15T16:25:08.490 回答