提交 17238e87 编写于 作者: Huan (李卓桓)'s avatar Huan (李卓桓)

code clean

上级 52850153
......@@ -17,10 +17,10 @@
*
*/
// import * as fs from 'fs'
import * as path from 'path'
import path from 'path'
/* tslint:disable:variable-name */
import * as QrcodeTerminal from 'qrcode-terminal'
import QrcodeTerminal from 'qrcode-terminal'
// import finis from 'finis'
import { FileBox } from 'file-box'
......
......@@ -593,8 +593,24 @@ export class Bridge extends EventEmitter {
}
public async WXGetChatRoomMember(id: string): Promise<PadchatRoomMemberPayload> {
const result = this.padchatRpc.WXGetChatRoomMember(id)
return result
log.verbose('PuppetPadchatBridge', 'WXGetChatRoomMember(%s)', id)
let lastResult: undefined | PadchatRoomMemberPayload
const result = await Misc.retry(async (retry, attempt) => {
log.silly('PuppetPadchatBridge', 'WXGetChatRoomMember(%s) retry() attempt=%d', id, attempt)
try {
lastResult = await this.padchatRpc.WXGetChatRoomMember(id)
if (lastResult.member.length <= 0) {
throw new Error('no room member for room ' + id)
}
return lastResult
} catch (e) {
return retry(e)
}
})
return result || lastResult
}
public async WXDeleteChatRoomMember(roomId: string, contactId: string): Promise<StandardType> {
......
......@@ -188,7 +188,7 @@ export class PadchatRpc extends EventEmitter {
apiName : string,
...params : string[]
): Promise<any> {
log.silly('PadchatRpc', 'rpcCall(%s, %s)', apiName, params.join(', '))
log.silly('PadchatRpc', 'rpcCall(%s, %s)', apiName, JSON.stringify(params))
return await this.jsonRpc.request(apiName, params)
}
......@@ -548,18 +548,21 @@ export class PadchatRpc extends EventEmitter {
log.silly('PadchatRpc', 'WXGetChatRoomMember() result: %s', JSON.stringify(result))
// 00:40:44 SILL PadchatRpc WXGetChatRoomMember() result: {"chatroom_id":0,"count":0,"member":"null\n","message":"","status":0,"user_name":""}
if (!result.user_name || !result.member) {
log.warn('PadchatRpc', 'WXGetChatRoomMember cannot get user_name or member! user_name: %s, member: %s', id, result.member)
throw new Error('WXGetChatRoomMember cannot get user_name or member!')
}
// tslint:disable-next-line:max-line-length
// change '[{"big_head":"http://wx.qlogo.cn/mmhead/ver_1/DpS0ZssJ5s8tEpSr9JuPTRxEUrCK0USrZcR3PjOMfUKDwpnZLxWXlD4Q38bJpcXBtwXWwevsul1lJqwsQzwItQ/0","chatroom_nick_name":"","invited_by":"wxid_7708837087612","nick_name":"李佳芮","small_head":"http://wx.qlogo.cn/mmhead/ver_1/DpS0ZssJ5s8tEpSr9JuPTRxEUrCK0USrZcR3PjOMfUKDwpnZLxWXlD4Q38bJpcXBtwXWwevsul1lJqwsQzwItQ/132","user_name":"qq512436430"},{"big_head":"http://wx.qlogo.cn/mmhead/ver_1/kcBj3gSibfFd2I9vQ8PBFyQ77cpPIfqkFlpTdkFZzBicMT6P567yj9IO6xG68WsibhqdPuG82tjXsveFATSDiaXRjw/0","chatroom_nick_name":"","invited_by":"wxid_7708837087612","nick_name":"梦君君","small_head":"http://wx.qlogo.cn/mmhead/ver_1/kcBj3gSibfFd2I9vQ8PBFyQ77cpPIfqkFlpTdkFZzBicMT6P567yj9IO6xG68WsibhqdPuG82tjXsveFATSDiaXRjw/132","user_name":"mengjunjun001"},{"big_head":"http://wx.qlogo.cn/mmhead/ver_1/3CsKibSktDV05eReoAicV0P8yfmuHSowfXAMvRuU7HEy8wMcQ2eibcaO1ccS95PskZchEWqZibeiap6Gpb9zqJB1WmNc6EdD6nzQiblSx7dC1eGtA/0","chatroom_nick_name":"","invited_by":"wxid_7708837087612","nick_name":"苏轼","small_head":"http://wx.qlogo.cn/mmhead/ver_1/3CsKibSktDV05eReoAicV0P8yfmuHSowfXAMvRuU7HEy8wMcQ2eibcaO1ccS95PskZchEWqZibeiap6Gpb9zqJB1WmNc6EdD6nzQiblSx7dC1eGtA/132","user_name":"wxid_zj2cahpwzgie12"},{"big_head":"http://wx.qlogo.cn/mmhead/ver_1/piaHuicak41b6ibmcEVxoWKnnhgGDG5EbaD0hibwkrRvKeDs3gs7XQrkym3Q5MlUeSKY8vw2FRVVstialggUxf2zic2O8CvaEsicSJcghf41nibA940/0","chatroom_nick_name":"","invited_by":"wxid_zj2cahpwzgie12","nick_name":"王宁","small_head":"http://wx.qlogo.cn/mmhead/ver_1/piaHuicak41b6ibmcEVxoWKnnhgGDG5EbaD0hibwkrRvKeDs3gs7XQrkym3Q5MlUeSKY8vw2FRVVstialggUxf2zic2O8CvaEsicSJcghf41nibA940/132","user_name":"wxid_7708837087612"}]'
// to Array (PadchatRoomRawMember[])
if (!Array.isArray(JSON.parse(decodeURIComponent(result.member)))) {
log.error('PadchatRpc', 'WXGetChatRoomMember member: %s', result.member)
if (Array.isArray(JSON.parse(decodeURIComponent(result.member)))) {
result.member = JSON.parse(decodeURIComponent(result.member)) as PadchatRoomMember[]
} else {
log.warn('PadchatRpc', 'WXGetChatRoomMember(%s) member: %s', id, JSON.stringify(result.member))
throw Error('faild to parse chatroom member!')
// result.member = []
}
result.member = JSON.parse(decodeURIComponent(result.member)) as PadchatRoomMember[]
return result
}
......
......@@ -216,7 +216,7 @@ export class PuppetPadchat extends Puppet {
this.logout()
})
this.bridge.on('message', (messagePayload: PadchatMessagePayload) => {
log.silly('PuppetPadchat', 'startBridge()', 'bridge.on(message)')
log.silly('PuppetPadchat', 'startBridge() bridge.on(message)')
this.cachePadchatMessagePayload.set(
messagePayload.msg_id,
messagePayload,
......
......@@ -114,7 +114,7 @@ export class Room extends Accessory implements Sayable {
this : T,
query : RoomQueryFilter = { topic: /.*/ },
): Promise<T['prototype'][]> {
log.verbose('Room', 'findAll({ topic: %s })', query.topic)
log.verbose('Room', 'findAll()', JSON.stringify(query))
if (!query.topic) {
throw new Error('topicFilter not found')
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册