上一篇文章介绍了wechaty puppet xp的基础 微信机器人简易入门
这次用一个实用案例来继续熟悉一下。
最简单的实现
入群欢迎语, 是一个常用的社群运营功能。但是只有企微群能实现,个微群官方没有支持。
于是机器人派上用场了。
const { WechatyBuilder } = require("wechaty");
const bot = WechatyBuilder.build();
bot.on("room-join", async (room, inviteeList, inviter) => {
await room.say('欢迎入群');
});
bot.start()
通过定义bot的room-join事件,回调函数有room,被邀请人,邀请人三个参数。 在回调函数里面调用 room.say 即可发送欢迎语。
问题和优化
- 频率风控问题, 如果是新建的群,开始会频繁拉人,也容易被风控。这时候欢迎语会很烦人,参考企微的处理方式,拉满指定人数或间隔时间才发。
- 为了更好体验, 可以@新人。
await room.say('欢迎入群', inviteeList);
传入inviteeList(被邀请人数组)即可@对应的新人
- 按群发送欢迎语,通过api读取数据库预设的欢迎语, 每个群可以设置不同欢迎语。
总结
欢迎语是机器人使用场景最广,实现最简单的一个例子,但是如果要把细节做好。其实还有很多优化空间。机器人的代码一般是在客户本地运行,真实业务还会涉及如何和服务器联动,验权。
pug.minapp.xin 这是一个开源的微信机器人,实现了更加丰富的业务场景(群统计,积分,表单等),也可以作为机器人sass实例参考。