基于wechaty的个人机器人

本文讲述了作者在暑期2020期间使用wechaty库开发个人机器人的过程,遇到并解决的问题,包括安装依赖、好友验证、查找联系人、智能聊天接口的实现。在开发中,作者通过添加二维码包解决显示问题,通过自我介绍解决好友验证同步问题,以及通过load方法找到Contact中的用户。最后,使用axios添加智能聊天接口。项目源码已开源。
摘要由CSDN通过智能技术生成

参加了wechaty社区的暑期2020,遂使用wechaty写一个机器人。

我本以为这不是一件特别难的事情……事实上也并没有很难,在我这种语法不熟,英语垃圾,一片迷茫的前提下,还是通过wechaty的文档和前人的开发经验完成了自己的wechaty。

在开发过程中还是遇到了一些问题,在这里总结一下。

首先是安装wechaty以后也要记得安装二维码的包……否则终端没有二维码。(这个应该也可以把二维码地址输出到控制台,然后用浏览器打开扫描)

在添加好友验证的时候,通过好友验证速度太快,发送请求的账号好友列表里面还没这个新好友……但是这个好友列表里面是有请求者的。然后我做了一个自我介绍,这样请求者的好友列表就正常了(我也不知道为啥)。

在加好友验证的时候,我需要一个bot.Contact来帮我查找这个人,但是传递到friend里面的只有friendship参数。我参考了一个作者的写法是传递参数的时候传递一个bot过去,后来又修改成export bot,然后在另一个文件中require引入。(这其中我还碰到了import和require的问题,export和module.export以及export default的问题……最后也没成功解决)

接着碰到的问题就是我要通过请求后在friend类里面的id来找到Contact里面的这个请求用户,一开始我误以为是find,后来查阅官方文档发现find只能通过name或者alias,通过contactId来查找应是load。

最后最后我添加了axios插件,增加一个智能聊天接口,帮助机器人完成时时陪聊的功能……

前期准备:

npm init

npm install wechaty

npm install wechaty-puppet-padplus

npm install --save qrcode-terminal

项目结构

其中JOE.memory-car.json是自动生成的

并且我并不喜欢在config中放置太多东西,感觉阅读起来很麻烦。

index.js:


```javascript
const {
    Wechaty } = require("wechaty"); // Wechaty核心包

const {
    PuppetPadplus } = require("wechaty-puppet-padplus"); // padplus协议包

const Qrterminal = require("qrcode-terminal");//二维码包

const bot = new Wechaty({
   

  puppet: new PuppetPadplus({
   

    token: 'puppet_padplus_dd54e2b49f8b4217'

  }),

  name: 'JOE'

})

module.exports=  bot 

//const onRoomJoin = require("./onRoomJoin")

const message = require("./Message")

const friendShip 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值