Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Could not run wechaty-getting-started after use npm link #11

Closed
anaivebird opened this issue Oct 3, 2021 · 8 comments
Closed

Could not run wechaty-getting-started after use npm link #11

anaivebird opened this issue Oct 3, 2021 · 8 comments

Comments

@anaivebird
Copy link
Collaborator

After use npm link:

[anelderly@pubgyes wechaty-getting-started]$ npm link wechaty-puppet-oicq
/home/anelderly/wechaty-getting-started/node_modules/wechaty-puppet-oicq -> /usr/lib/node_modules/wechaty-puppet-oicq -> /home/anelderly/wechaty-puppet-oicq

It seems that dist/esm missed if using npm link, any suggestion to fix it?

13:23:44 VERB PuppetManager resolveName(wechaty-puppet-oicq)
CustomError: Cannot find module '/home/anelderly/wechaty-getting-started/node_modules/wechaty-puppet-oicq/dist/esm/src/mod.js' imported from /home/anelderly/wechaty-getting-started/node_modules/wechaty/dist/esm/src/puppet-manager.js
    at finalizeResolution (/home/anelderly/wechaty-getting-started/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:383:11)
    at moduleResolve (/home/anelderly/wechaty-getting-started/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:818:10)
    at Object.defaultResolve (/home/anelderly/wechaty-getting-started/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:929:11)
    at /home/anelderly/wechaty-getting-started/node_modules/ts-node/src/esm.ts:68:38
    at Generator.next (<anonymous>)
    at /home/anelderly/wechaty-getting-started/node_modules/ts-node/dist/esm.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (/home/anelderly/wechaty-getting-started/node_modules/ts-node/dist/esm.js:4:12)
    at resolve (/home/anelderly/wechaty-getting-started/node_modules/ts-node/dist/esm.js:32:16)
    at Loader.resolve (internal/modules/esm/loader.js:86:40)
    at Loader.getModuleJob (internal/modules/esm/loader.js:230:28)
    at Loader.import (internal/modules/esm/loader.js:165:28)
    at importModuleDynamically (internal/modules/esm/translators.js:114:35)
    at exports.importModuleDynamicallyCallback (internal/process/esm_loader.js:30:14)
    at Function.resolveName (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/puppet-manager.ts:118:26)
    at Function.resolve (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/puppet-manager.ts:72:33)
    at Wechaty.initPuppet (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:394:48)
    at Wechaty.start (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:722:18)
13:23:44 ERR Wechaty start() exception: Cannot find module '/home/anelderly/wechaty-getting-started/node_modules/wechaty-puppet-oicq/dist/esm/src/mod.js' imported from /home/anelderly/wechaty-getting-started/node_modules/wechaty/dist/esm/src/puppet-manager.js
13:23:44 ERR StarterBot Error: Cannot find module '/home/anelderly/wechaty-getting-started/node_modules/wechaty-puppet-oicq/dist/esm/src/mod.js' imported from /home/anelderly/wechaty-getting-started/node_modules/wechaty/dist/esm/src/puppet-manager.js
@huan
Copy link
Member

huan commented Oct 3, 2021

You need to run npm run dist to build files required by the npm module before it can be used by othets.

@anaivebird
Copy link
Collaborator Author

Thanks. After implementing contactPayload, following error thrown:
It seems ding message has been recieved by ding-dong bot, and bot says dong.

MoiqpQAAcuR5TALQYVqJYwA=
12:56:03 VERB Message static load(MoiqpQAAcuR5TALQYVqJYwA=)
12:56:03 VERB Message constructor(MoiqpQAAcuR5TALQYVqJYwA=) for class WechatifiedMessage
12:56:03 VERB Message ready()
12:56:03 VERB Puppet messagePayload(MoiqpQAAcuR5TALQYVqJYwA=)
12:56:03 VERB Contact load(847817381) init pool
12:56:03 INFO StarterBot Message#Text[🗣Contact<unknown>]        ding
12:56:03 VERB Message say(dong)
12:56:03 VERB Puppet selfId()
12:56:03 VERB Puppet selfId()
12:56:03 ERR Config ###########################
12:56:03 ERR Config unhandledRejection: Error: not logged in, no this.id yet.
    at PuppetOICQ.selfId (/home/anelderly/wechaty-puppet-oicq/node_modules/wechaty-puppet/src/puppet.ts:400:13)
    at WechatifiedMessage.listener (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:325:44)
    at PuppetOICQ.<anonymous> (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:496:36)
    at processTicksAndRejections (internal/process/task_queues.js:93:5) [object Promise]
12:56:03 ERR Config ###########################
12:56:03 ERR Config ###########################
12:56:03 ERR Config unhandledRejection: Error: not logged in, no this.id yet.
    at PuppetOICQ.selfId (/home/anelderly/wechaty-puppet-oicq/node_modules/wechaty-puppet/src/puppet.ts:400:13)
    at WechatifiedMessage.mentionSelf (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:831:40)
    at WechatifiedMessage.say (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:562:32)
    at Wechaty.onMessage (file:///home/anelderly/wechaty-getting-started/examples/ding-dong-bot.ts:47:15)
    at Wechaty.emit (events.js:315:20)
    at Wechaty.EventEmitter.emit (domain.js:467:12)
    at PuppetOICQ.<anonymous> (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:493:20)
    at processTicksAndRejections (internal/process/task_queues.js:93:5) [object Promise]
12:56:03 ERR Config ###########################
12:56:03 ERR Config process.on(unhandledRejection) promise.catch(not logged in, no this.id yet.)
Config Error: not logged in, no this.id yet.
    at PuppetOICQ.selfId (/home/anelderly/wechaty-puppet-oicq/node_modules/wechaty-puppet/src/puppet.ts:400:13)
    at WechatifiedMessage.listener (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:325:44)
    at PuppetOICQ.<anonymous> (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:496:36)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
12:56:03 ERR Config process.on(unhandledRejection) promise.catch(not logged in, no this.id yet.)
Config Error: not logged in, no this.id yet.
    at PuppetOICQ.selfId (/home/anelderly/wechaty-puppet-oicq/node_modules/wechaty-puppet/src/puppet.ts:400:13)
    at WechatifiedMessage.mentionSelf (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:831:40)
    at WechatifiedMessage.say (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:562:32)
    at Wechaty.onMessage (file:///home/anelderly/wechaty-getting-started/examples/ding-dong-bot.ts:47:15)
    at Wechaty.emit (events.js:315:20)
    at Wechaty.EventEmitter.emit (domain.js:467:12)
    at PuppetOICQ.<anonymous> (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:493:20)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

@huan
Copy link
Member

huan commented Oct 4, 2021

Great to hear that your puppet can reply dong successfully!

Please fix the rejections in your log message, it seems that you have not implemented the login logic correctly.

@anaivebird
Copy link
Collaborator Author

Sorry, on QQ side, no 'dong' message has been replied. It seems that say(dong) has been called, but event has not been correctly sent to oicq puppet side.

@anaivebird
Copy link
Collaborator Author

No matter what message bot received, following error will be shown:

13:12:58 ERR Config unhandledRejection: Error: not logged in, no this.id yet.
    at PuppetOICQ.selfId (/home/anelderly/wechaty-puppet-oicq/node_modules/wechaty-puppet/src/puppet.ts:400:13)
    at WechatifiedMessage.listener (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/user/message.ts:325:44)
    at PuppetOICQ.<anonymous> (file:///home/anelderly/wechaty-getting-started/node_modules/wechaty/src/wechaty.ts:496:36)
    at processTicksAndRejections (internal/process/task_queues.js:93:5) [object Promise]

@huan
Copy link
Member

huan commented Oct 4, 2021

Please refer to other workable puppet providers (such as wechaty-puppet-wechat) to see how to fix this problem. I hope the oicq puppet can pass the basic ding/dong bot smoke testing soon!

@anaivebird
Copy link
Collaborator Author

Totally fixed after calling this.login() correctly with this.login(this.qq.toString())

Thanks a lot for spending your time tracking my debugging process.
image

@huan
Copy link
Member

huan commented Oct 4, 2021

Congratulations, and you are welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants