手记

如何利用企业微信给自己搭建一个免费微信发送平台

背景说明

腾讯提供了一个企业微信,主要是给企业来使用,可以进行办公以及可以扩展企业的一些其他服务。企业微信不是只有企业可以注册,个人也可以注册,只不过个人注册后无法认证,可能会有一些企业服务无法使用,我们这里只是使用其发送消息服务,所以基本上够用。

我们基于微信企业号编写一套接口,用于来给自己微信发送消息,可以应用于监控等场景,毕竟对于个人而言购买短信服务还是需要一笔支出,这种情况可以利用微信的服务免费满足自己应用。

搭建平台

好吧,下面就开始言归正传,基本上2部分就可以搭建这个微信消息发送平台

  • 创建企业微信
  • 配置服务信息

创建企业微信

进入 企业微信地址 创建企业微信

  • 注册企业微信

  • 登录企业微信

  • 创建应用




上图中的AgentID和Secret是我们发送微信时需要的数据

  • 邀请用户

可以发送消息给指定的一个或多个用户,也可以是部分,通过企业微信的部门等管理即可,所以可以邀请其他用户加入到企业




我们实际使用发送的小的是上图中的账号,每个用户可以有一次编辑的机会

微信企业号ID,我们在配置时也会使用的到

  • 修改配置

只有这样的话,是没有办法从我们个人微信中展示出我的企业的,需要我们通过扫码才能从个人微信中展示出来。

部署服务

源码

关注微信公众号:战渣渣
回复关键字“企业微信”获取源码

构建原理

此代码的目的是基于微信提供的企业号,搭建一个实时消息推送平台。
其基本原理:

  1. 注册一个微信企业号(免费非认证,微信可提供200个用户使用)
  2. 使用者关注企业号,并加入企业微信
  3. 微信企业号中创建应用
  4. 基于Flask构建一个api平台,并接入微信企业平台,进行消息推送(也可以做其他管理,这里不做延展,只针对实时消息推送)
  5. 基于Flask提供的API完成实时消息的推送

部署

virtualenv部署

1. virtualenv -p python3.6 venv
2. . venv/bin/activate
3. pip install -r requirements.txt
4. gunicorn -c etc/gunicorn.py manage:app

docker部署

这里没有提供docker镜像,可直接使用Dockerfile从本地生成镜像即可

  • 生成镜像
# 在当前目录执行以下命令
docker build -t wxqy_service:latest .
  • 启动服务

生成镜像之后启动镜像即可

# ACCESS_TOKEN 简单的鉴权,支持多个,逗号分隔,调用接口时在headers中增加一个Key= AccessToken
docker run -p 10050:5000 -i -t -d \
    --env WX_CORPID=微信企业号ID \
    --env DEFAULT_WX_AGENT_ID=发送消息应用ID \
    --env WX_SECRET=发送消息应用secret \
    --env ACCESS_TOKEN="mSnbqTHqfIG6fIq6,zFIxAxU4wtYKpMzd" \
    --name wxqy_service wxqy_service

使用

curl -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'AccessToken: mSnbqTHqfIG6fIq6' \
    --url http://localhost:10050/wechat/send \
    -d '{"msg_type": "text","send_data": {"text": {"content": "测试消息"}},"to_users": ["要发送的用户"]}'
0人推荐
随时随地看视频
慕课网APP