sagemathinc / cocalc-docker

DEPRECATED (was -- Docker setup for running CoCalc as downloadable software on your own computer)
https://cocalc.com
Other
398 stars 103 forks source link

Mentions: No email is send #189

Open behinger opened 1 year ago

behinger commented 1 year ago

I got e-mail working throughout the system - except for mentions in the chat.

If I mention some account, or get mentioned, no email is sent out. The log-files (err/out/log) are completely silent regarding any such emails, too.

Password recovery, account creation, invitation, and email confirmations are working fine, though.

I don't really know how to even start debugging this, any hints are appreciated :)

williamstein commented 1 year ago

any hints...

I don't remember ever testing this out fully with cocalc-docker. On https://cocalc.com it works very well of course, and code for this is exactly the same, but it's run as part of a microservice on Kubernetes, instead of a monolith (same code, very different architecture).

When you run cocalc-docker it runs this code: https://github.com/sagemathinc/cocalc/blob/master/src/packages/hub/hub.ts with the command line flag --all.

Right here https://github.com/sagemathinc/cocalc/blob/master/src/packages/hub/hub.ts#L439 passing --all should result in the mentions flag being enabled. The check of the mentions flag is part of the startServer function here https://github.com/sagemathinc/cocalc/blob/master/src/packages/hub/hub.ts#L158 which gets called at https://github.com/sagemathinc/cocalc/blob/master/src/packages/hub/hub.ts#L481

First question: do you see "enabling handling of mentions..." in the log?

The actual handling of mentions happens here: https://github.com/sagemathinc/cocalc/blob/master/src/packages/server/mentions/handle.ts

You could double check that after you @mention, there is an entry in the postgresql mentions table.

Is there anything in the log saying "mentions - handle"?

If you want to know how to make changes to any of this code and use the changes, the answer is basically, become root, do umask 022, then edit code in /cocalc/src in your container. You can build everything via pnpm run build from /cocalc/src, and then restart cocalc-docker to get the new version. Obviously, there are a bunch of ways to iteratively do everything much, much faster. If you're a full stack or web developer interested in working on the cocalc codebase, let me know.

behinger commented 1 year ago

Ah this is helpful already! I have access to the server on Monday again. The rebuilding I have done before, but I'm not a full stack developer and haven't worked with npm before.

One clarification: Mentions in general work nicely, just the email notifications for mentions are not working.