把 Facebook 主页连接到 Social Quack
一个免费的 Meta 应用,一次登录 —— 您管理的每一个 Facebook 主页都能按时发帖。
Facebook 比其他平台多点几下鼠标,不是因为它难,而是因为 Meta 的开发者网站菜单太多。下面这些都只做一次:创建一个属于您自己的小应用,把两个值粘贴进 Social Quack,登录,发布应用,就完事了。不需要 App Review,也不需要企业验证 —— Meta 的 Standard Access 本来就覆盖了由应用管理员(也就是您本人)管理的主页。
开始之前有两件事值得知道。您创建的 App ID 和密钥加密保存在您自己的 Mac 上;连接主页时,它们从这里直接发给 Facebook,Social Quack 没有任何服务器会看到它们。另外,既然这个开发者应用是您自己的,它的发布额度也只属于您 —— 您不会和其他 Social Quack 用户共用一个池子,别人的行为也就连累不到您被限流或封禁。
1. 需要准备什么
- 一个由您担任管理员的 Facebook 主页(Page)。Social Quack 只发到主页 —— 应用无法发到个人主页。
- 拥有该角色的那个 Facebook 账号,登录时要用。
- Social Quack 打开着,点侧边栏的 Channels(渠道)→ Facebook Page 卡片 → Set up app keys(设置应用密钥)。那个面板里有您要填的两个输入框,上方还有第 4 步要用的回调地址,旁边带复制按钮。在 Meta 网站上折腾的这段时间里,让它一直开着。
一次登录就会连上您担任管理员的所有主页 —— 每个主页都会成为一个独立的渠道,不想要的之后删掉即可。
2. 创建您的 Meta 应用
- 前往 https://developers.facebook.com,用您的 Facebook 账号登录。
- My Apps → Create app(我的应用 → 创建应用)。
- 当它问您希望这个应用做什么时,选用途 "Manage everything on your Page"(管理您主页上的一切)。(已经有一个想沿用的 Meta 应用?打开它,从 Dashboard → Add use case 添加这个用途。)
- Meta 会让您关联或创建一个 business portfolio(商务组合)。选您自己的,没有就新建一个。
3. 添加权限
在用途卡片上点 Customize(自定义),然后在 Permissions and features(权限与功能)下,给下面这四项逐个点 Add:
| 权限 | 作用 |
|---|---|
pages_manage_posts |
把帖子发布到您的主页。 |
pages_read_engagement |
必须和上面那项一起授予,Facebook 才会把可发帖的主页交给 Social Quack。 |
pages_manage_engagement |
把多段帖子的后续段落,作为评论发在第一条下面。 |
pages_read_user_content |
Facebook 要求它和 pages_manage_engagement 成对出现。漏掉它,登录就会以 "Invalid Scopes" 失败。 |
pages_show_list 这个用途里本来就有,不用另外添加。business_management 也一样 —— 正是它让归属于 business portfolio 的主页能出现在列表里,这也是建议直接选 "Manage everything on your Page" 这个用途、而不是自己一项项拼权限的另一个理由。
四项里少了任何一项,第 6 步的登录界面都会报 "Invalid Scopes"。另外,如果您是在连接主页之后才补加权限,已有的连接并不会自动获得它 —— 回到 Social Quack 的 Channels,在 Add a channel(添加渠道)下的 Facebook Page 卡片上点 Connect(连接),重新登录一次以授予新权限。别先在已连接的渠道上点 Remove(移除):那会把渠道连同队列里所有还没发出去的帖子一起删掉,而且对 Facebook 那边毫无影响。重新连接会更新您已有的主页,队列也原样保留。
4. 告诉 Meta 把您送回哪里
在左侧菜单里打开 Facebook Login for Business → Settings。
- 把回调地址粘贴到 Valid OAuth Redirect URIs(有效 OAuth 重定向 URI)里。这个地址就显示在 Social Quack 的 Set up app keys 界面上,旁边有复制按钮 —— 本页面没办法替您写出来,因为 Social Quack 要根据您自己的环境算出正确的地址。请从应用里复制,整段粘贴过去。
- 点页面底部的 Save changes(保存更改)。
- 这时候再把同一个地址粘进 Redirect URI Validator(重定向 URI 校验器)框,点 Check URI。它必须显示这个 URI 有效。没保存就先校验,必然失败 —— 这是这个页面上最常见的一个坑。
这个地址之所以在
socialquack.com上,而不在您自己的电脑上,是因为 Meta 只接受以https://开头的地址。它只是把登录结果原样转交给运行在您 Mac 上的应用。
5. 复制 App ID 和 App Secret
还是在左侧菜单里,滚到最下面,打开 App settings → Basic(应用设置 → 基本)。
- 把 App ID 复制到 Social Quack 的
Meta App ID框里。 - 点 App Secret 旁边的 Show(显示),复制到
Meta App Secret里。
既然已经在这个页面上:如果 Privacy Policy URL(隐私政策网址)这一栏是空的,填上 https://socialquack.com/privacy 并点 Save changes。应用没有隐私政策网址,Meta 会干脆不让登录界面出现。
6. 连接您的主页
在 Set up app keys 面板里点 Save(保存)—— 这是 Social Quack 自己的保存按钮,不是第 5 步里 Meta 的 Save changes。Social Quack 会存下这两个密钥,并立刻在您平时用的浏览器里打开 Facebook 的登录页;如果没有自动打开,就在 Facebook Page 卡片上点 Connect。
在那里用担任该主页管理员的那个 Facebook 账号登录。在 Facebook 的授权界面上,所有勾都别取消 —— 在那里取消掉某个主页或某项权限,正是下一屏一片空白的常见原因。
当浏览器提示可以关闭这个标签页时,切回 Social Quack。您管理的每个主页现在都会作为独立渠道出现在 Channels 下。不想发的那几个直接删掉 —— 它们刚建好,队列里没有东西可丢。
7. 发布应用 —— 这一步别跳过
左侧菜单 → Dashboard(概览)→ 滚到最下面那个 "Check requirements then publish"(检查要求后发布)框 → Publish(发布)。
不做这一步,应用发出去的一切,Facebook 只给您一个人看。帖子在您自己屏幕上一切正常,别人却完全看不见 —— 不知道这回事的话,能白白折腾一个钟头。发布应用之后,这些帖子就公开了,包括之前已经发出去的那些。
如果第 5 步明明填了隐私政策网址,它还在抱怨 Privacy Policy URL:打开 App settings → Basic,再点一次 Save changes,然后回到 Dashboard 重新点一次 Publish。
8. 能发些什么
| 文字 | 最多 63,206 个字符。 |
| 链接 | 在 Compose(撰写)里勾选 Facebook 渠道,就会出现一个 Link to attach(要附带的链接)框。Facebook 会为它渲染一张预览卡片。图片和视频帖子会忽略它。 |
| 照片 | 一条帖子最多 10 张。 |
| 视频 | 一条帖子一个。 |
| 多段帖子 | 后续段落会按顺序作为评论发在第一条下面。 |
同一条帖子不能把视频和照片混在一起 —— Facebook 没有这种格式。分成两条来排。
照片和视频都从您的 Mac 直接上传到 Facebook,所以这个平台不需要配置任何媒体托管。
主页的连接不会到点过期。只有当您改了 Facebook 密码、失去主页管理员身份,或者把这个应用从 Facebook 账号里移除时,它才会断 —— 那就到 Channels 里重新连一次。
出问题时怎么办
| 您看到的情况 | 这说明什么 | 该怎么做 |
|---|---|---|
| Facebook 登录界面上出现 "Invalid Scopes" | 用途里少了四项权限中的某一项 | 四项全部加上(第 3 步),再在 Facebook Page 卡片上点一次 Connect |
| "Facebook returned no pages you can post to" | 您不是任何主页的管理员或编辑,或者授权界面上有勾被取消了,又或者 —— 在应用还没发布的情况下 —— 您的 Facebook 账号在这个应用上没有任何角色 | 确认您的主页角色,重新连接并且不要取消任何勾选;把应用发布出去(第 7 步) |
| Redirect URI Validator 说这个 URI 无效 | 您在 Save changes 之前就点了 Check URI | 先保存,再校验(第 4 步) |
| Facebook 干脆不显示登录界面 | 应用没有填 Privacy Policy URL | 在 App settings → Basic 里填上 https://socialquack.com/privacy,然后 Save changes |
| 帖子发出去了,但朋友和客户看不到 | 应用还没发布 —— Facebook 只把它发的帖子给您自己看 | Dashboard → "Check requirements then publish" → Publish(第 7 步)。之前发的帖子也会跟着变成公开 |
| 发帖时出现 "Facebook refused: missing permission" | 这个主页是在您添加那项权限之前连接的,旧连接不会自动获得它 | 在 Customize → Permissions and features 下把它加上(第一条下面的评论需要 pages_manage_engagement),然后到 Channels 里在 Facebook Page 卡片上再点一次 Connect。别用 Remove 删渠道 —— 那会删掉它队列里的帖子;覆盖式地重新连接才是拿到权限的办法 |
| "Facebook token is no longer valid — reconnect the page in Channels" | 您改了 Facebook 密码、失去了主页角色,或者应用被从账号里移除了 | Channels → 在 Facebook Page 卡片上再点一次 Connect;原有渠道和队列里的内容都照常保留 |
| 一条帖子先失败,几分钟后又自己发出去了 | Facebook 做了一次临时限流 | 什么都不用做 —— Social Quack 认得这种情况,会自动重试 |
| 有几张图片没有出现 | 这条帖子把视频和照片混在了一起 | 视频和照片分开发 |