接收消息的逻辑
其实可以直接跳过本节。但是,有一些逻辑,我需要给大家做一些铺垫。直接上图:
即:注入的DLL,拦截了发过来的文本消息,先自行处理后,再转交给PC微信客户端。具体如何拦截,各位有兴趣,可在公众号里面输入:hook,届时我根据人数情况,做一个视频。当然,B站也有相关视频。可加我微信索要!
如何接收文本消息
消息都是实时的,所以采用websocket处理最合适。
注入的dll是一个websocket+http服务端,共用同一端口。
请看代码:
代码示例(javascript)
const WebSocket = require('ws');
const ws = new WebSocket('ws://127.0.0.1:5555');
const RECV_TXT_MSG = 1;
ws.on('open', function open()
{
});
ws.on('close', function close() {
console.log('disconnected');
});
ws.on('message', function incoming(data)
{
const j = JSON.parse(data);
const type = j.type;
switch(type)
{
case RECV_TXT_MSG:
console.log(j);
break;
default:
break;
}
});
运行效果
一直循环,只要有群文本消息或者私聊文本消息,都会用json的格式打印到屏幕上。示例如下:
{
content: '你看看',
id: '202005201220',
receiver: 'self',
sender: 'wxid_xxxxxxxxxxxx',//此处是wxid
srvid: 1,
time: '2020-05-11 21:12:37',
type: 1
}
思路扩展
发送消息、接收消息已经全部介绍完毕,大家可以自行扩展,如自动报时,自动回复,把其他接口的数据通过这个接口发送到好友或群,等等。
代码地址
答疑解惑
如有相关问题,可加微信好友进行答疑(暗号:bot),二维码如下:
更多文章
请关注公众号,及时查看更多推送文章: