【问题标题】:Automating posts from "company" for the Facebook page of said "company"为所述“公司”的 Facebook 页面自动发布来自“公司”的帖子
【发布时间】:2016-07-08 13:54:28
【问题描述】:

我把 company 放在引号之间,因为我的问题与我们的橄榄球队页面有关,但在 Facebook 中它就像一个 company 页面。

我目前正在重建我的团队网站 (BBRFC Celtic),我将添加一个用户登录系统,该系统将拥有具有不同权限级别的教练和管理人员。

有时,由于天气条件、事件或其他原因,训练时间可能会更改或比赛取消或其他各种事件。发生这些情况时,我们通常会通过邮件列表或短信发送电子邮件,或者手动在 Facebook 上发帖。

我想要的是某种在服务器幕后运行的小型机器人,当教练或管理员更改某些内容时,它允许他们自动在 Facebook 上发布帖子。

在更改培训时间后,它会询问您希望将其发布到 Facebook 页面和群组吗?

我一直没有成功地找出我将如何为此编写代码。我们的网页将使用php,但也许这可以使用javascript 来完成?

我是否需要获得密钥才能像页面一样发布内容? 我们拥有的不同小组怎么样?

任何指针都会有所帮助,因为我完全被卡住了,不是在编程上而是在概念上,我不知道这是否可能。

【问题讨论】:

  • 看看 facebook API。您必须要求该人使用 facebook 登录您的页面,然后您可以使用 API 以编程方式执行这些操作。 API 有很好的文档记录,因此应该不会太难。
  • 所以服务器不能“持续”连接到团队的 facebook?例如,他们每次发布内容时都必须登录吗?
  • 不,您不必每次想在 facebook 上发布内容时都登录,一旦登录就会存储 cookie。因此,有一段时间您不必重新连接。我现在无法发布完整的答案,但是,我可以在今晚回复您的帖子。
  • 是的,我明白你的意思了:/ 我只是在寻找更多幕后的机器人,比如如果我有页面管理员提供的页面的特定访问密钥,我应该能够发布,因为我希望它不是以做这件事的人的身份发布,而是像橄榄球队本身一样发布,你明白我的意思吗?基本上是这样的,这样做的人只是同意,就是这样,因为这个人每次去那里只会使用一次,cookie可能已经消失了
  • 据我了解,他们似乎无论如何都必须登录(因为有不同级别的权限)。因此,facebook 登录可以代替常规登录,这样就不会引入额外的步骤。之后,它可以是你想要的“一键式”。

标签: javascript php facebook


【解决方案1】:

我将解释您实现网站目标所需的步骤。请注意,该文档还解释了移动应用程序和其他应用程序的情况。但是,我之前使用过 facebook API,而不是管理组/页面,因此,这篇文章只会为您指明正确的方向。我将解释如何以页面管理员的身份发布消息,不确定您是指 Facebook 页面还是群组。

首先,用户需要使用 facebook 登录。这可以使用 Javascript 和 facebook API 来完成。他们的documentation 通过代码示例等提供了非常详细的解释。请注意,我将针对 Javascript 的情况进行解释,但是,这可以在 php 中完成,...

一旦用户登录,您可以检索有关用户、他的页面等的所有类型的信息。我建议检索用户正在管理的页面,然后检查您的“公司”是否在此列表中(请注意,您需要 manage_pages 权限)。如果是这种情况,用户可以在页面名称中发布消息。

/* Retrieve pages the user is managing */
FB.api(
    "/me/accounts",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);

现在response是一个包含多个字段的对象(见官方documentation)。

现在,如果用户是您主页的管理员,您可以将消息作为主页发布。

/* Post a message as a Page, use your page id */
FB.api(
    "/{page-id}/feed",
    "POST",
    {
        "message": "The match has been delayed to ..."
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);

如果成功,帖子的 ID 将作为 JSON 响应的一部分返回(请参阅doc

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-04
    • 2016-05-16
    相关资源
    最近更新 更多