使用Facebook Live API创建实时视频对象时的隐私设置

时间:2016-05-18 19:35:49

标签: javascript node.js facebook facebook-graph-api live-streaming

我正在尝试通过NodeJS使用Facebook Live API创建实时视频对象时设置隐私设置。 API文档中的Go Live对话框仅详细介绍了客户端版本,而不是服务器端实现。一切都按照我期望的方式工作,视频发布到我的时间线,但每个帖子的隐私设置默认为“只有我”#。

以下是我发布到/ user_id / live_videos端点的对象示例:

var options = {
  json: true, 
  headers: { Authorization: 'Bearer ' + this.accessToken }, 
  data: {
    description: description,
    title: title,
    privacy: {
            "value": "EVERYONE"
    }
  }
}

我是否遗漏了隐私对象中的内容或使用不当?任何的意见都将会有帮助。另外,需要注意的是,我注意到由于我的Facebook应用程序仍处于开发模式,因此只有我在应用程序设置中添加为测试人员的用户才能查看我的实时流。这也会影响我的帖子默认的隐私设置吗?提前谢谢!

2 个答案:

答案 0 :(得分:1)

这可能是因为在授权应用时,您将 app 隐私设置为安全级别。应用无法创建隐私较少的帖子。 来自FO文档(https://developers.facebook.com/docs/graph-api/common-scenarios#privacy-param):

  

此字段不能用于设置比登录时授予的隐私设置更开放的隐私设置。

因此,您可以撤消访问权限,然后再通过它进行授权,选择" Everyone"在现场"谁可以看到这个应用程序制作的帖子" (或类似的)

答案 1 :(得分:-2)

您需要完成对manage_pagespublish_video之类的权限的应用审查,然后才能将此请求正文参数用于时间表实时广播的公共隐私。

let options = {
        method: 'POST',
        url: https://graph.facebook.com/v3.0/' + {userId} + '/live_videos',
        qs: { access_token: data.access_token },
        headers: {
            'content-type': 'application/json'
        },
        body: JSON.stringify({
            "description": data.description,
            "privacy": {
                "value": "EVERYONE"
            },
            "title": data.title,
            "published": true
        })
    };