diff --git a/src/puppet-padchat/config.ts b/src/puppet-padchat/config.ts index aa3780bdc5b8d7f5aa1dace30dd519f6eea4439e..07a390bc9df0df5bbec94122fe0de0be716e8006 100644 --- a/src/puppet-padchat/config.ts +++ b/src/puppet-padchat/config.ts @@ -1,2 +1,25 @@ +import { + log, +} from 'brolog' + export const WECHATY_PUPPET_PADCHAT_ENDPOINT = process.env['WECHATY_PUPPET_PADCHAT_ENDPOINT'] || 'ws://54.223.36.77:9091/wx' -export const WECHATY_PUPPET_PADCHAT_TOKEN = process.env['WECHATY_PUPPET_PADCHAT_TOKEN'] || 'padchattest' + +const WECHATY_PUPPET_PADCHAT_TOKEN = process.env['WECHATY_PUPPET_PADCHAT_TOKEN'] as string +if (!WECHATY_PUPPET_PADCHAT_TOKEN) { + log.error('PuppetPadchatConfig', ` + + WECHATY_PUPPET_PADCHAT_TOKEN environment variable not found. + + PuppetPadchat need a token before it can be used, + Please set WECHATY_PUPPET_PADCHAT_TOKEN then retry again. + + + Learn more about it at: https://github.com/Chatie/wechaty/issues/1296 + + `) + process.exit(1) +} + +export { + WECHATY_PUPPET_PADCHAT_TOKEN, +} diff --git a/src/puppet-padchat/padchat-rpc.ts b/src/puppet-padchat/padchat-rpc.ts index fe1686e7ed1f49bd9d36849dac955152d2f1251f..16976325d4fbe2f1c38d4c014093ba120648319e 100644 --- a/src/puppet-padchat/padchat-rpc.ts +++ b/src/puppet-padchat/padchat-rpc.ts @@ -311,7 +311,7 @@ export class PadchatRpc extends EventEmitter { /** * Init with WebSocket Server */ - public async init(): Promise { + protected async init(): Promise { const result: InitType = await this.rpcCall('init') log.silly('PadchatRpc', 'init result: %s', JSON.stringify(result)) if (!result || result.status !== 0) { @@ -323,7 +323,7 @@ export class PadchatRpc extends EventEmitter { /** * Get WX block memory */ - public async WXInitialize(): Promise { + protected async WXInitialize(): Promise { log.verbose('PadchatRpc', 'WXInitialize()') const result = await this.rpcCall('WXInitialize') @@ -335,7 +335,7 @@ export class PadchatRpc extends EventEmitter { return result } - public async WXGetQRCode(): Promise { + protected async WXGetQRCode(): Promise { const result = await this.rpcCall('WXGetQRCode') // if (!result || !(result.qr_code)) { // result = await this.WXGetQRCodeTwice() @@ -386,6 +386,9 @@ export class PadchatRpc extends EventEmitter { /** * Generate 62 data + * + * 1. Call multiple times in the same session, will return the same data + * 2. Call multiple times between sessions with the same token, will return the same data */ public async WXGenerateWxDat(): Promise { const result: WXGenerateWxDatType = await this.rpcCall('WXGenerateWxDat') diff --git a/src/puppet-padchat/puppet-padchat.ts b/src/puppet-padchat/puppet-padchat.ts index a3258b71f0a8643d1b1d1efda36dbe5772babcbc..d3118efb74941ecbcdb102750a29ed5a8bc11411 100644 --- a/src/puppet-padchat/puppet-padchat.ts +++ b/src/puppet-padchat/puppet-padchat.ts @@ -101,7 +101,7 @@ export class PuppetPadchat extends Puppet { max: 1000, // length: function (n) { return n * 2}, dispose: function (key: string, val: any) { - log.silly('Puppet', 'constructor() lruOptions.dispose(%s, %s)', key, JSON.stringify(val)) + log.silly('PuppetPadchat', 'constructor() lruOptions.dispose(%s, %s)', key, JSON.stringify(val)) }, maxAge: 1000 * 60 * 60, } @@ -113,8 +113,8 @@ export class PuppetPadchat extends Puppet { this.bridge = new Bridge({ memory : this.options.memory, - token : WECHATY_PUPPET_PADCHAT_TOKEN, - endpoint: WECHATY_PUPPET_PADCHAT_ENDPOINT, + token : WECHATY_PUPPET_PADCHAT_TOKEN, + endpoint : WECHATY_PUPPET_PADCHAT_ENDPOINT, }) }