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

Implement Network Sync For Direct Messages #13

Closed
zicklag opened this issue Jan 26, 2025 · 1 comment
Closed

Implement Network Sync For Direct Messages #13

zicklag opened this issue Jan 26, 2025 · 1 comment
Assignees

Comments

@zicklag
Copy link
Contributor

zicklag commented Jan 26, 2025

  • We need to allow you to open up a direct message channel to another BlueSky user.
  • The network sync will happen over the WebSocket routing server.
  • Encryption will be done using Tweet NaCl's Box.
  • The automerge document for each direct message will be periodically saved off to the user's PDS.
  • If the user you want to chat with is not online and connected to the routing server, the client will download the automerge document from the other user's PDS and merge it with their document to get the latest changes.
  • We can try to record the automerge version of the document on the user's PDS so that it's easy for the client to tell when there is new data that needs to be downloaded from the PDS.

Note:

  • Downloading the whole automerge document from the PDS may not be practical in the long term with long chats, but at the same time, the whole King James Version of the Bible in JSON format is only 4.6M, so it'd be hard to make a prohibitively long chat direct messages anyway for now.
@zicklag zicklag added this to Roomy Jan 26, 2025
@zicklag zicklag self-assigned this Jan 26, 2025
@zicklag zicklag converted this from a draft issue Jan 26, 2025
@zicklag zicklag moved this to Todo in Roomy Jan 26, 2025
@zicklag zicklag moved this from Todo to In Progress in Roomy Jan 31, 2025
@zicklag
Copy link
Contributor Author

zicklag commented Feb 4, 2025

Realtime sync through the router is now implemented!

@zicklag zicklag closed this as completed Feb 4, 2025
@github-project-automation github-project-automation bot moved this from In Progress to Done in Roomy Feb 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

1 participant