binsee/padchat-sdk

机器人运行一段时间后,收不到服务器的推送消息

Closed this issue · 5 comments

程序基本是demo.js,改动不大

  1. 超过40人的群,使用addRoomMember接口不返回异常,导致无法判断是否使用inviteRoomMember

代码如下:
await db.get(user.openId)
.then(wxid => {
groupIds.forEach(groupId => {
logger.debug("invite someone")
wx.sendMsg(wxid, user.joinFriendMsg)
wx.addRoomMember(groupId, wxid)
.then(res => {
logger.debug(res)
})
.catch(async err => {
logger.debug(err)
await wx.inviteRoomMember(groupId, wxid)
.then(res => {
logger.debug(res)
}).catch(err => {
logger.debug(err)
})
})
})
})

  1. 机器人运行一段时间后,来自服务端什么信息都收不到了,包括请求加好友信息,从手机端能看到该人申请加好友了,但是机器人就收不到该信息推送。

请附上日志,是否有报错之类。
以及登陆账号的wxid(前8位即可),以便查询服务器日志

没有什么报错日志,有leveldb找不到对应key的日志,
会运行到demo.js里的
process.on('unhandledRejection', e => {
logger.error('Main', 'unhandledRejection:', e)
})
这一行。

wxid前八位是wxid_cmsn099c

[2019-06-17T23:07:52.595] [ERROR] app - Main unhandledRejection: NotFoundError: Key not found in database [oyUbw0md0UU6pBis7r9PXm8Au2zk]
at /Users/wangchao53/PycharmProjects/wechatrobot/node_modules/levelup/lib/levelup.js:160:15
at /Users/wangchao53/PycharmProjects/wechatrobot/node_modules/encoding-down/index.js:51:21 (/Users/wangchao53/PycharmProjects/wechatrobot/index.js:724:12)
{ 'content-type': 'application/json',
'content-length': '86',
server: 'Werkzeug/0.14.1 Python/3.6.5',
date: 'Mon, 17 Jun 2019 15:07:52 GMT' }

经过查询未发现问题。
如果demo运行到unhandledRejection,则意味着你的代码里出现了未捕捉的异常,请检查代码逻辑。

你遇到的问题是查询数据库出现了异常,而你未对异常进行处理导致程序崩掉了,并非sdk的问题。