【问题标题】:Delay on facebook messenger when displaying a botframework VideoCard显示 botframework VideoCard 时 Facebook Messenger 延迟
【发布时间】:2019-05-09 04:24:58
【问题描述】:

尝试在 facebook Messenger 上显示机器人框架 VideoCard。显示视频卡,但经过大约 30 秒的显着延迟。将视频大小保持在 2.9Mb

尝试最小化视频的大小, 尝试使用视频的 facebook URL

Bot 在 botbuilder 版本 3.14.0 上运行

var cards [];

cards.push(new builder.VideoCard(session)
        .title('some video title')
        .subtitle('some video subtitle')
        .media([
            {
               url:'https://somesite/video-files/video.mp4'
            }
        ])
        .buttons([
             builder.CardAction.postBack(session,"CONTINUE", continueBtnTxt)
        ])
        );

【问题讨论】:

    标签: botframework facebook-messenger


    【解决方案1】:

    每次将媒体模板发送到 Facebook Messenger 时,都必须上传视频,这会在用户的消息和机器人的响应之间造成延迟。如果您计划多次发送相同的媒体附件,您可以使用 Facebook 的 Attachment Upload API 保存视频。请注意,此方法不适用于 BotBuilder 视频卡,但您可以通过 Activity 的源事件属性发送 Messenger Media 模板。

    使用Attachment Upload API保存

    您可以通过向附件上传 API /message_attachments 端点发送发布请求来保存资产。该请求应以我们在下一步中使用的attachment_id 进行响应。

    curl -X POST -H "Content-Type: application/json" -d '{
      "message":{
        "attachment":{
          "type":"image", 
          "payload":{
            "is_reusable": true,
            "url":"http://www.messenger-rocks.com/image.jpg"
          }
        }
      }
    }' "https://graph.facebook.com/v2.6/me/message_attachments?access_token=<PAGE_ACCESS_TOKEN>"
    

    使用 BotFramework - Node SDK V3 发送 Messenger Media Template

    var message = new botbuilder.Message(session)
       .sourceEvent({
          facebook: {
             attachment: {
              type: "template",
              payload: {
                 template_type: "media",
                 elements: [
                    {
                       "media_type": "video",
                       "attachment_id": '<ATTACHMENT_ID>'
                    }
                 ]
              }
            }  
          }
       });
    
    session.send(message);
    

    希望这会有所帮助!

    【讨论】:

    • 如何添加带有回发的按钮?
    • 您可以在媒体模板中添加Postback Button
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多