从海量群消息中获取自己需要的消息
现在微信消息太多了, 根本看不过来,没时间一个群一个群的看过去 为了节约时间,获取对自己有用的消息 可以对PC微信消息进行获取处理
下面这个sdk是通过http的方式来获取微信消息的
nodejs sdk
https://github.com/pchook/WechatHttpApiWeb/blob/master/nodejs/sdk/app.js
通过修改onmsg.js中消息处理事件
function checkMsg(o) {
if (o.msg.length <= 5) return '或者消息太短';//什么嗯嗯啊啊噢噢的都过滤掉
let whiteList = ['相亲', '吃饭', '接单', '私活', '活动']
//白名单,关键词通过
, blackList = ['垃圾词一', '垃圾词二', '垃圾词三']
//黑名单,关键词拦截
if (blackList.some(function (k) { return o.msg.includes(k) })) return '命中黑名单,直接跳过'//命中黑名单,跳过
let existPhone = /[1][3,4,5,6,7,8,9][0-9]{9}/.test(o.msg)//是否存在手机号,可以看一下
if (existPhone || whiteList.some(function (k) { return o.msg.includes(k) })) return ''//有手机号 或者 命中白名单,保存
return '不符合条件'
}
async function onmsg(datas) {
let ok = 0;//这个是记录处理有用的消息的条数
for (let o of datas) {
if (o.type != 1) continue//不是文本消息直接跳过
let res = checkMsg(o)
if (res) {
//不符合条件
log('NOT', `[${res}][${o.wxid}][${o.sender}]${o.msg}`)
} else {
ok++
//符合条件,保存
let execMsg = await save(o)
log('YES', `[${res}][${o.wxid}][${o.sender}]${o.msg}\r\nsql语句执行结果:${JSON.stringify(execMsg || '{}')}`)
}
}
return ok
}