diff --git a/package.json b/package.json index 15cf5aa0..d58ff903 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wechaty-puppet-service", - "version": "1.7.3", + "version": "1.7.5", "description": "Puppet Service for Wechaty", "type": "module", "exports": { diff --git a/src/client/puppet-service.ts b/src/client/puppet-service.ts index d8540546..37228999 100644 --- a/src/client/puppet-service.ts +++ b/src/client/puppet-service.ts @@ -321,7 +321,7 @@ export class PuppetService extends PUPPET.Puppet { override async logout (reason?: string): Promise { log.verbose('PuppetService', 'logout(%s)', reason ? `"${reason}"` : '') - super.logout(reason) + await super.logout(reason) try { await util.promisify( diff --git a/src/server/event-stream-manager.ts b/src/server/event-stream-manager.ts index 257acdec..abddf908 100644 --- a/src/server/event-stream-manager.ts +++ b/src/server/event-stream-manager.ts @@ -62,7 +62,7 @@ class EventStreamManager { /** * We emit the login event if current the puppet is logged in. */ - if (this.puppet.logonoff()) { + if (this.puppet.isLoggedIn) { log.verbose('EventStreamManager', 'start() puppet is logged in, emit a login event for downstream') const payload = { diff --git a/src/server/puppet-server.ts b/src/server/puppet-server.ts index 975978ff..d3efc6d5 100644 --- a/src/server/puppet-server.ts +++ b/src/server/puppet-server.ts @@ -181,10 +181,10 @@ export class PuppetServer { this.grpcServer = undefined log.verbose('PuppetServer', 'stop() shuting down gRPC server ...') - // const future = await util.promisify( - // grpcServer.tryShutdown - // .bind(grpcServer), - // )() + const future = await util.promisify( + grpcServer.tryShutdown + .bind(grpcServer), + )() try { await new Promise(resolve => setImmediate(resolve)) @@ -196,7 +196,7 @@ export class PuppetServer { * FIXME: even after called `forceShutdown()`, the `tryShutdown()` can not resolved. * commented out the `await` for now to make it work temporary. */ - // await future + await future } catch (e) { log.warn('PuppetServer', 'stop() gRPC shutdown rejection: %s', (e as Error).message)