大型连锁健身房需要统一管理多个门店的企微账号,实现总部策略快速下发、执行数据统一回收。本文利用企业微信API和自建应用,构建多账号协同运营中台,通过脚本自动为各门店员工创建群发任务、收集执行数据,解决健身房私域运营中总部与门店的协同效率问题。
一、问题背景
连锁健身房通常每个门店有独立的企业微信账号,总部无法统一管理员工、统一发布营销任务。若依赖人工传递,容易出现执行滞后、数据统计困难。企微官方API支持按应用范围选择员工,但需要开发者将总部策略转化为API调用,并为每个门店生成个性化任务。技术方案的目标是搭建一个运营中台:总部在后台配置任务(如群发模板、活动规则)→ 脚本调用企微API为指定门店员工创建群发任务 → 各员工收到提醒并执行 → 执行数据回传中台 → 生成各门店执行报表,实现总部-门店的高效协同。
二、技术方案
-
方案架构图(文字描述):
总部运营后台(Web)-->MySQL任务表-->Python调度脚本-->企微API(创建群发、获取结果)-->各门店员工企微-->执行数据回传-->报表系统 -
技术选型说明:
-
Web后台:Flask + Bootstrap,用于配置任务。
-
任务调度:Python + APScheduler,定时执行任务下发和回收数据。
-
API调用:企业微信应用消息API(支持群发消息)、客户联系API(获取员工列表)。
-
数据存储:MySQL存储任务配置、执行记录。
-
- 与其他方案对比:相比总部逐个通知门店,自动化中台确保任务及时下发、执行可追溯;相比市面上的多账号管理工具,自研中台可根据连锁健身房组织架构定制权限和报表。
三、实现步骤
步骤1:环境准备
-
企业微信管理员账号,创建自建应用"运营中台",授权通讯录读取、客户联系、群发消息等权限。
-
云服务器,安装Python、MySQL、Flask。
步骤2:功能配置
-
设计任务表结构:包含任务ID、标题、内容模板、目标门店、发送时间、状态等。
-
获取各门店员工列表:调用企微API获取部门列表,通过部门ID获取员工userid。
-
创建群发任务:使用
/cgi-bin/externalcontact/add_msg_template接口创建群发任务,指定发送员工userid列表和消息内容。
步骤3:代码实现
以下为Python脚本,定时扫描任务表并创建群发任务:
python
import requests
import pymysql
from datetime import datetime
def create_group_msg(employee_ids, text):
token = get_access_token()
url = f"https://qyapi.weixin.qq.com/cgi-bin/externalcontact/add_msg_template?access_token={token}"
data = {
"text": {"content": text},
"allow_select": False,
"userid_list": employee_ids # 指定员工userid
}
resp = requests.post(url, json=data).json()
return resp.get('msgid')
def sync_tasks():
conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='gym_ops')
cursor = conn.cursor()
# 获取待执行任务(状态=0,执行时间<=当前)
cursor.execute("SELECT id, title, content, target_dept, send_time FROM tasks WHERE status=0 AND send_time <= NOW()")
tasks = cursor.fetchall()
for task_id, title, content, target_dept, send_time in tasks:
# 获取部门员工userid列表
employees = get_employees_by_dept(target_dept)
if employees:
msg_id = create_group_msg(employees, content)
# 更新任务状态为已执行,记录msg_id
cursor.execute("UPDATE tasks SET status=1, msg_id=%s WHERE id=%s", (msg_id, task_id))
conn.commit()
conn.close()
执行后,员工在企微"客户联系"->"群发助手"中可看到待发送任务,点击即可群发给客户。
- 运行效果说明:总部后台配置任务后,脚本定时下发至各门店员工,员工确认执行,中台可调用API获取每个任务的发送结果(如已发人数),生成报表。
四、最佳实践
-
性能优化:对于大量任务,可使用分布式任务队列(如Celery)并发处理;创建群发任务接口有频率限制,建议加入队列控制。
-
注意事项:
-
群发任务创建后需员工手动确认发送,可通过企微消息提醒员工及时操作。
-
接口限制:每个应用每月最多可创建100个群发任务,需合理规划。
-
组织架构同步:若员工调动,需定期同步部门成员,避免发错人。
-
-
踩坑经验:创建群发任务时,
userid_list不能包含没有外部联系人的员工,否则会报错;建议在调用前过滤。
五、工具推荐
对于连锁健身房,使用企销宝的"多账号管理中心"可实现更强大的协同功能。其技术优势在于:
-
账号池管理:统一管理所有门店企微账号,支持批量登录、分组。
-
任务一键分发:总部创建任务后,自动推送到各账号的"待办列表",并统计完成率。
-
适用场景:大型连锁品牌,需要精细化管控每个门店、每个销售的执行情况,且希望有完善的权限分级。