| 问题 | 结论 |
|---|---|
| 能不能一对一推送 | 能。这是微信官方允许的方式,不会像个人微信号那样被封。前提是用户关注了 F8LINK 服务号,并且把服务号和 F8LINK 账号绑定(系统拿到用户在服务号下的 openid)。 |
| 用什么功能 | 服务号的“模板消息”。只有已认证的服务号能用;订阅号、未认证的服务号都不行。 |
| 消息能写什么 | 只能从微信的模板库里选一个模板,按模板的字段填内容,每个字段有字数限制(例如文字字段最多 20 个字),不能自由写长文,也不能写营销内容。所以消息只写“哪套策略发了新信号”,用户点进来看完整信号。 |
| 最大的风险 | ① 服务号必须用公司主体注册并完成微信认证,认证没通过,模板消息、带参数二维码、网页授权都用不了;② 黄金交易信号属于金融类内容,模板消息是否会被判定为营销、服务号类目能否通过,需要先问清楚、最好先做法务评估。这两点不确定,后面开发都白做。 |
| 工作量(估) | 开发约 2 周(后端 7–8 天,前端 + 后台 4–5 天,可并行),加联调测试 3–4 天。服务号注册认证、模板申请的时间由微信审核决定,建议需求方现在就开始办。 |
| 事项 | 说明 | 谁确认 |
|---|---|---|
| ① 注册主体 | 服务号要用 F8LINK 的公司主体注册并完成微信认证。主体资料、认证所需材料和审核时间,以微信公众平台办理时的要求为准;主体一旦确定,后续认证年审、类目资质都用这个主体,建议一开始就选定长期使用的主体。 | 需求方 |
| ② 账号类型 | 必须注册服务号,不是订阅号。服务号和订阅号注册后不能互相转换,选错要重新注册。并且必须完成微信认证(每年需要年审,认证费用以平台为准)。 | 需求方 |
| ③ 内容合规 | 模板消息只能用于“重要的服务通知”,营销、广告类内容会被拦截(接口会返回“营销内容被禁止”的错误),严重的会被收回模板消息权限。黄金交易信号属于金融类内容:服务号选什么类目、需要什么资质、新信号通知会不会被判定为营销,建议先咨询法务,并在申请类目时向微信说明用途。我们的设计已经尽量规避:只通知付费或已授权的用户、消息里不写价格、不写收益承诺。 | 需求方(法务) |
| ④ 域名 | “网页授权”需要在服务号后台配置 F8LINK 的域名,并把微信给的校验文件放到域名根目录。需要 F8LINK 自己的正式域名(不要用临时的 pages.dev 地址);部分配置可能要求域名完成 ICP 备案,以平台提示为准。另外如果用户主要在中国大陆,网站本身在大陆的访问速度也要一起评估。 | 需求方 + 后端 |
| ⑤ 用户必须关注 | 不关注服务号就收不到。需要在产品里引导(订阅成功页、信号页、我的),并接受“一部分用户不会去关注”。 | 三方知悉 |
| 场景 | 怎么做 |
|---|---|
| 每年认证到期 | 提前 1 个月年审,过期会导致模板消息、二维码、网页授权全部失效。 |
| 后台“推送记录”失败多 | 先看是否大量“用户拒收”(用户在微信里关掉了消息,属正常);如果是“发送失败”,通知后端排查。 |
| 收到微信平台违规提醒 | 立刻在后台“微信服务号 → 推送设置”关闭新信号通知,通知产品和法务,按提醒整改后再开。 |
| 更换模板或模板被下线 | 在公众平台选新模板,把新模板 ID 和字段给后端更新配置。 |
| 更换管理员 / 重置 AppSecret | 重置 AppSecret 后必须马上交给后端更新,否则推送中断。 |
subscribe(新关注,若是扫带参数二维码,EventKey 为 qrscene_凭证)SCAN(已关注用户扫带参数二维码,EventKey 为凭证)unsubscribe(取消关注 → 解除绑定)TEMPLATESENDJOBFINISH(模板消息送达结果:success / failed:user block / failed:system failed)user_wechat_bind user_id F8LINK 用户编号(唯一) openid 服务号下的 openid(唯一) bound_at 绑定时间 notify_on 是否接收新信号通知(默认开) strategy_off 用户关掉的策略,如 "C,E" status bound / unbound wx_bind_ticket (绑定凭证,30 分钟有效,用后作废) token, user_id, expire_at, used_at
snsapi_base,静默、无需用户确认)→ 拿到 openid → 查绑定表 → 已绑定就直接登录。这一步要做,否则用户点进来还要输账号密码,体验很差。client_msg_id = 信号编号_用户编号 防重复。记录表:
wx_push_log signal_id, user_id, openid, msgid, status sending / success / user_block / failed error 错误码, created_at, finished_at发送失败(系统错误)自动重试 1 次;收到
TEMPLATESENDJOBFINISH 回调后更新状态。遇到“营销内容被禁止”“模板被限制”这类错误,立即暂停推送并告警,不要继续批量发。正式域名/#s=信号编号。模板消息不能自定义版式,只能选模板库里的模板,按字段填值。字段有类型和长度限制,例如:文字类(thing)1–20 个字、编号类(character_string)最多 32 位、时间类(time)。所以内容要短,只做“提醒”,详细内容让用户点进来看。
| # | 事项 | 负责 | 时间(估) |
|---|---|---|---|
| 1 | 确认主体、法务评估、注册服务号并提交认证 | 需求方 | 立即开始;审核时间由微信决定 |
| 2 | 开通模板消息、选模板;交付 AppID / AppSecret、模板 ID | 需求方 | 认证通过后 1–3 天 |
| 3 | token 管理、回调、绑定、网页授权、推送队列与记录 | 后端 | 7–8 个工作日 |
| 4 | 前台微信通知页与入口、微信内自动登录;后台推送设置与记录 | 前端 | 4–5 个工作日(与后端并行) |
| 5 | 联调:用测试账号走完“扫码绑定 → 审核信号 → 收到通知 → 点开自动登录 → 取消关注自动解绑” | 三方 | 3–4 个工作日 |
| 6 | 小范围试运行(内部 + 少量会员),观察拒收率和平台提醒,再全量开启 | 需求方 | 3–5 天 |
| 问题 | 回答 |
|---|---|
| 和之前“微信群推送”有什么不同? | 群推送靠程序模拟真人操作个人微信,有封号风险、只能发群。服务号推送是微信官方接口,一对一、能按权限精确推送、不会封号,代价是要认证服务号、用户要关注并绑定,且内容只能用模板。 |
| 用户没关注服务号能收到吗? | 不能。所以要在产品里多处引导绑定。 |
| 一天能发多少? | 模板消息有每日调用上限(官方文档写的是 10 万次 / 天,粉丝量大时会提高,以公众平台开发者中心显示为准)。按目前的信号量和用户规模,远远够用。 |
| 能不能顺便推“止盈 / 止损结果”“会员到期提醒”? | 技术上可以,用同一套绑定和队列。“会员到期提醒”属于典型的服务通知,比较安全;信号结果通知建议等新信号通知稳定运行、确认不被判营销后再加。 |
| 用户说收不到? | 按顺序查:是否已绑定 → 是否开启通知、是否关了该策略 → 是否有权限看这条信号 → 推送记录里是不是“用户拒收”(用户在微信里关了服务号消息)。 |
| 不用微信的用户怎么办? | 微信通知是附加渠道,不影响网站本身使用;不绑定的用户照常在网站查看信号。 |
说明:微信平台规则会调整,主体资质、认证费用、类目要求、调用上限等以办理时微信公众平台的页面和官方文档为准。本文不构成法律意见,金融内容合规请以法务意见为准。