Featured image of post MoviePilot微信消息回调

MoviePilot微信消息回调

MP集成了很多消息通知,比如微信、TG、Slack、SynologyChat等,我最常用的是微信通知

整理MP设置的那篇文章经常有人问微信消息的问题,整理一下笔记,关于如何创建企业微信应用,看文章底部第二篇文章,博主写的很清楚,我就不重复创建同质化内容了。

安装wxchat

有服务器的可以自己搭建wxchat-Docker服务,推荐docker-compose方式部署

12303是容器端口,这个随便选一个端口,后面我要用nginx反向代理这个端口。如果不配置域名,就已经安装完成了。在服务器网络规则把12303端口开放,http://服务器IP:12303就是自己搭建的微信代理地址。如果你用的 80 端口直接用IP访问即可。

1
2
3
4
5
6
7
services:
 wxchat:
   container_name: wxchat
   restart: always
   ports:
     - 12303:80
   image: ddsderek/wxchat:latest

配置域名

这一步可有可无,如果是国内服务器域名需要备案。用域名也有好处,比如可以用https、换服务器配置不用动。如果需要SSL证书,我博客连接里面有推荐。

nginx设置如下

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
server {
   listen 443 ssl;
   server_name notice.11010.net;
   ssl_certificate /ssl/11010.net/fullchain.cer;
   ssl_certificate_key /ssl/11010.net/cert.key;
   ssl_session_timeout 5m;
   ssl_protocols TLSv1.2 TLSv1.3;
   ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
   ssl_prefer_server_ciphers on;
   access_log /var/log/nginx/notice.access.log;
   error_log /var/log/nginx/notice.error.log;
   client_max_body_size 200m;

   location / {
       proxy_pass http://你自己的服务器IP,用内网即可:12303;
   }
}

不抬杠,我说的配置域名可有可无,其实明白了原理,安装wxchat也是可有可无,直接用nginx处理/cgi-bin/gettoken/cgi-bin/message/send/cgi-bin/menu/create就可以了,方法太多了,找到自己合适的就是最好的

关于微信菜单栏无反应

有的小伙伴反应说代理地址配好了,可以接收MP的消息通知但是菜单栏点击无反应。登陆自己的企业微信应用,看看API接收消息配置的URL,还能正常访问吗,大概率是这个地方的问题。

如果你有一台服务器

上面配置接收消息服务器配置URL可以改为自己服务器的服务,前提是服务器和自己部署MP的组成大内网,关于如何组网,看参考文章第三篇文章。下面主要说nginx如何配置。PS:不想把NAS服务暴漏在公网的可以参考。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
server {
   listen 443 ssl;
   server_name notice.11010.net;
   ssl_certificate /ssl/11010.net/fullchain.cer;
   ssl_certificate_key /ssl/11010.net/cert.key;
   ssl_session_timeout 5m;
   ssl_protocols TLSv1.2 TLSv1.3;
   ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
   ssl_prefer_server_ciphers on;
   access_log /var/log/nginx/notice.access.log;
   error_log /var/log/nginx/notice.error.log;
   client_max_body_size 200m;

   location /api/v1/message/ {
       proxy_pass http://10.8.0.4:3000/api/v1/message/;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_redirect http:// https://[citation:5];
   }

   location / {
       proxy_pass http://xxxxxip:12303;
   }
}

问答

  • 手机无需安装企业微信,消息可以通知到微信

  • 获取我搭建的微信代理去公众号:逍遥客爱整活,回复『微信代理』获取

  • 企业微信应用需要添加IP到企业可信IP,自己ping一下域名获取服务器IP

  • 有小伙伴说你这个代理地址无法访问?现在好了…

📎 参考文章