内容Gemini和Deepseek的客户管理系统

FileMaker + AI 全自动社媒发布系统实施指导书

by | Dec 30, 2025 | 工具 | 0 comments

上一篇文章使用N8N搭了图片添加slogon及WhatsApp二维码的工作流之后, 大提高工作效率. 昨天打算再搭建一个IG定时自动发贴的工作流. 奈何, N8N的google drive授权网址被审核了. 瞬间没有了安全感, 决定改为自己的服务器Filemaker方案.

仍然是AI Studio全程指导. 搞Graph API Access Token花了很多时间. 

期间, 还遇到了网站崩溃问题, 应该是Snell占用CPU资源太高了. 搭好系统后, 今天也改为了使用 CLOUDCONE VPS 来搭建我的Snell协议的VPN, 用了$5.2的月套餐. 坚持使用Snell而不买市面上的VPN, 是因为想保证IP相对纯净. 另外, 查看了网站VPS的CPU占用率, 从100%多回复到27%左右. 

FileMaker + AI 全自动社媒发布系统实施指导书

1. 系统概述

本系统旨在自动化 B2B 制造企业的社交媒体发布流程。

  • 核心中枢: FileMaker Server (数据管理与调度)

  • AI 大脑: Google Gemini 2.5 Flash (识图并撰写专业 B2B 文案)

  • 图片中转: WordPress (作为临时图床获取公网 URL)

  • 发布终端: Instagram Business / Facebook (通过 Meta Graph API)


2. 数据库设计 (FileMaker)

2.1 表结构设计

系统包含两个核心表:

A. Settings (配置表)

  • 用途: 存放所有 API 密钥和系统设置,仅保留 1 条记录

  • 关键字段:

    • Gemini_API_Key (文本): Google AI Studio 密钥。

    • WP_Domain (文本): WordPress 网址 (如 https://site.com)。

    • WP_Username (文本): WP 用户名。

    • WP_AppPassword (文本): WP 应用密码。

    • IG_Account_ID (文本): Instagram 商业账户 ID (1784… 开头)。

    • IG_Access_Token (文本): Meta 长效 Token (60天有效期)。

    • DailyPostTime (时间): 计划每天发送的时间 (如 09:00:00)。

    • LastPostDate (日期): 记录最后一次成功发送的日期。

B. Assets (素材表)

  • 用途: 存放产品图片及生成的内容。

  • 关键字段:

    • Image (容器): 原始图片。

    • Status (文本): 状态标记 (Pending / Posted / Failed)。

    • AICaption (文本): Gemini 生成的文案。

    • WP_Image_URL (文本): 上传后获得的公网链接。

    • JSON_Payload (文本): 用于调试 API 返回结果。


3. 外部 API 配置 (凭证获取)

3.1 Google Gemini (AI)

  1. 访问 Google AI Studio

  2. 创建 API Key。

  3. 填入 FileMaker Settings::Gemini_API_Key

3.2 WordPress (图床)

  1. 登录 WP 后台 -> 用户 -> 个人资料。

  2. 找到 Application Passwords,生成新密码。

  3. 填入 FileMaker Settings::WP_AppPassword

3.3 Meta/Instagram (发布)

这是最关键且复杂的步骤:

  1. 创建 App: 在 Meta Developers 创建 Business 类型应用。

  2. 获取短效 Token:

    • 使用 Graph API Explorer。

    • 权限勾选: instagram_basicinstagram_content_publishpages_show_list

    • 生成 Token。

  3. 获取 ID:

    • 查询 me/accounts?fields=instagram_business_account

    • 获取 1784… 开头的 ID,填入 FileMaker。

  4. 换取长效 Token (60天):

    • 使用 Access Token Debugger 工具。

    • 输入短效 Token -> 点击 Debug -> 点击 Extend Access Token

    • 将生成的长效 Token 填入 FileMaker Settings::IG_Access_Token


4. 核心脚本逻辑 (FileMaker Scripts)

4.1 Generate Caption (Gemini)

  • 功能: 图片转 Base64 -> 调用 Gemini 2.5 Flash API -> 提取文案。

  • API URLhttps://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent

  • Prompt: 设定为中国制造商身份,强调 B2B、工厂直供、OEM 服务。

4.2 System – Upload to WordPress

  • 功能: 将容器图片 POST 到 WP API -> 获取 source_url

  • 要点: 使用 Basic Auth 认证,Header 需包含 Content-Disposition

4.3 System – Post to Instagram

  • 功能: 使用 WP 的链接和 AI 文案 -> 调用 Meta Graph API。

  • 流程:

    1. POST /media (创建容器,传入 image_url 和 caption)。

    2. 获取 creation_id

    3. POST /media_publish (正式发布)。

4.4 Auto – Daily Execution Task (主控脚本)

  • 功能: 自动化调度的总指挥。

  • 逻辑:

    1. 时间门卫: 检查 Get(CurrentTime) < Settings::DailyPostTime?如果是,退出。

    2. 日期门卫: 检查 Settings::LastPostDate = Get(CurrentDate)?如果是,退出。

    3. 执行: 查找 Pending 图片 -> 随机选一张 -> 依次运行上述 3 个子脚本。

    4. 收尾: 更新 LastPostDate 为今天。


5. 服务器部署与自动化 (FileMaker Server)

5.1 上传文件

  • 使用 FileMaker Pro 的 Sharing -> Upload to Host 将文件上传至服务器。

5.2 设置计划 (Admin Console)

  • 登录 FMS Admin Console -> Configuration -> Script Schedules

  • 新建计划:

    • 脚本: 选择 Auto – Daily Execution Task

    • 频率: 选择 Every N Minutes (建议每 30 或 60 分钟)。

    • 时间范围: 00:00 – 23:59。

  • 原理: 利用脚本内部的“时间门卫”逻辑,实现“高频轮询,准点触发”。


6. 日常使用与维护

6.1 日常操作

  1. 拍摄产品图。

  2. 打开 FileMaker (本地客户端)。

  3. 将图片批量拖入 Assets 表。

  4. 确保状态为 Pending

  5. 无需做其他操作,服务器会在设定时间自动抓取并发布。

6.2 定期维护 (每 2 个月)

  • Token 续期: Instagram Token 有效期为 60 天。

    • 设置日历提醒 (第 55 天)。

    • 重复 3.3 节 的步骤,生成新的长效 Token 并更新到 Settings 表。

  • WordPress 清理:

    • 定期登录 WP 后台,清理 Media Library 中过期的临时图片,释放空间。


7. 故障排查指南

  • 问题: 脚本运行了但没发帖。

    • 检查: 查看 Settings::LastPostDate 是否已经是今天?如果是,清空它再测试。

  • 问题: 报错 OAuthException / Session has expired

    • 解决: Token 过期,请重新生成长效 Token。

  • 问题: 报错 Gemini 404 Not Found

    • 解决: 检查脚本中的 API URL 模型版本是否正确 (如 v1beta vs v1)。

  • 问题: Instagram 报错 Unsupported post request

    • 解决: 检查 IG_Account_ID 是否填成了 Facebook Page ID,必须是 1784 开头的 ID。

评论区 —

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *