背景說明
騰訊提供了一個企業微信,主要是給企業來使用,可以進行辦公以及可以擴展企業的一些其他服務。企業微信不是隻有企業可以註冊,個人也可以註冊,只不過個人註冊後無法認證,可能會有一些企業服務無法使用,我們這裏只是使用其發送消息服務,所以基本上夠用。
我們基於微信企業號編寫一套接口,用於來給自己微信發送消息,可以應用於監控等場景,畢竟對於個人而言購買短信服務還是需要一筆支出,這種情況可以利用微信的服務免費滿足自己應用。
搭建平臺
好吧,下面就開始言歸正傳,基本上2部分就可以搭建這個微信消息發送平臺
- 創建企業微信
- 配置服務信息
創建企業微信
進入 企業微信地址 創建企業微信
- 註冊企業微信
-
登錄企業微信
-
創建應用
上圖中的AgentID和Secret是我們發送微信時需要的數據
- 邀請用戶
可以發送消息給指定的一個或多個用戶,也可以是部分,通過企業微信的部門等管理即可,所以可以邀請其他用戶加入到企業
我們實際使用發送的小的是上圖中的賬號,每個用戶可以有一次編輯的機會
微信企業號ID,我們在配置時也會使用的到
- 修改配置
只有這樣的話,是沒有辦法從我們個人微信中展示出我的企業的,需要我們通過掃碼才能從個人微信中展示出來。
部署服務
源碼
關注微信公衆號:戰渣渣
回覆關鍵字“企業微信”獲取源碼
構建原理
此代碼的目的是基於微信提供的企業號,搭建一個實時消息推送平臺。
其基本原理:
- 註冊一個微信企業號(免費非認證,微信可提供200個用戶使用)
- 使用者關注企業號,並加入企業微信
- 微信企業號中創建應用
- 基於Flask構建一個api平臺,並接入微信企業平臺,進行消息推送(也可以做其他管理,這裏不做延展,只針對實時消息推送)
- 基於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": ["要發送的用戶"]}'
掃碼關注公衆號學習更多