企业微信机器人

警告
本文最后更新于 2023-04-04,文中内容可能已过时。

开通企业微信应用

  1. 登录企业微信网站:https://work.weixin.qq.com/
  2. ‘应用管理 -> (自建)创建应用’, 配置相关的应用名称
  3. 查看应用的 AgentID, Secret
  4. 设置"企业可信IP"
  5. “接收消息”(主要用于接收来自企业微信的信息,然后转发到我们自己的服务器)
  6. 记住上面的 Token, EncodingAESKey, URL 暂时先不用填(先测试,后面再补充)

启动服务

1
~/anaconda3/bin/python web.py -p=5000 -t="<应用上面的Token>" -a="<应用上面的EncodingAESKey>" -c="<企业CorpID>"

可以测试一下

1
2
3
curl http://127.0.0.1:5000

{"detail":[{"loc":["query","msg_signature"],"msg":"field required","type":"value_error.missing"},{"loc":["query","timestamp"],"msg":"field required","type":"value_error.missing"},{"loc":["query","nonce"],"msg":"field required","type":"value_error.missing"},{"loc":["query","echostr"],"msg":"field required","type":"value_error.missing"}]}

开通 nginx 外部访问

  1. 在阿里云开通相关的端口 5000

  2. 防火墙打开

    1
    2
    3
    
    systemctl restart firewalld.service
    firewall-cmd --zone=public --add-port=5000/tcp --permanent
    systemctl stop firewalld.service
  3. 修改 nginx.conf

  4. 有可能是

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    sudo vim /etc/nginx/nginx.conf
    
    server {
        listen 80;
        location /wechat {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $http_host;
            proxy_pass http://127.0.0.1:5000;
        }
    }
    
    server {
        listen 80;
        server_name  robot.wuyacapital.com;
        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $http_host;
            proxy_pass http://127.0.0.1:4000;
        }
    }

企业微信回调测试

打开网页:https://open.work.weixin.qq.com/wwopen/devtool/interface/combine, “建立连接 -> 测试回调模式”

1
2
3
4
5
6
URL: http://47.98.117.71:5000
URL: http://robot.wuyacapital.com <这个没有回文也没问题>
Token: <Token>
EncodingAESKey: <EncodingAESKey>
EchoStr: 123456
ToUserName: <corpid>

/post/2023-04-04-企业微信机器人/callback.png

补充应用 URL

即把上面测试通过的 URL 填入即可

/post/2023-04-04-企业微信机器人/api.png

相关内容

william 支付宝支付宝
william 微信微信
0%