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

Add support for rooms #49

Closed
4 of 10 tasks
boreq opened this issue Sep 9, 2022 · 3 comments · Fixed by #85
Closed
4 of 10 tasks

Add support for rooms #49

boreq opened this issue Sep 9, 2022 · 3 comments · Fixed by #85
Assignees
Labels
enhancement New feature or request priority/high

Comments

@boreq
Copy link
Contributor

boreq commented Sep 9, 2022

Rooms need to supported before using scuttlego in Planetary as we just added basic room support to the app.

The scope of the required work needs to be further investigated and documented.

Alias management:

  • connect to a room and list aliases using an RPC command
  • connect to a room and revoke an alias using an RPC command
  • connect to a room and register an alias using an RPC command
  • return a predefined error when an alias is already taken when registering it (requires changes to the RPC layer, related to Properly handle error cases when redeeming invites #62)
  • test commands and queries, confirm how EndOrErr is set for async requests

Connection management:

  • accept tunnel.connect
  • when connecting to the room we must be able to dial people using that room
  • persist information about rooms advertised on feeds
  • stay connected to our own rooms so that people can talk to us?
  • use rooms in connection management (randomly dial known rooms and talk to the online peers should be fine for now)
@boreq boreq added the enhancement New feature or request label Sep 9, 2022
@boreq boreq added this to the Needed by Planetary milestone Sep 9, 2022
@decentral1se
Copy link

decentral1se commented Sep 9, 2022

I was asking about room functionality to cryptix at some point and got the following tips:

(hopefully fine to share!)

so to add allow connections to the room you need to

sbotcli call conn.replicate @roomID.ed25519

since a room doesnt have a feed it wont sync anything. then you can

sbotcli cal conn.connect "net:1.2.3.4:8008~shs:roomID"

just like with a normal pub.. afterwards you should start seeing join and leave messages for the room members in the go-sbot output. finally, if room members dont connect to a go-sbot, you can use conn.dialViaRoom to initiate a connection the other way around. the address follows what manyverse does.. the syntax is tunnel:@roomID.ed25519:@target.ed25519~target

Maybe helpful!

@boreq boreq self-assigned this Sep 27, 2022
@rabble
Copy link
Contributor

rabble commented Oct 10, 2022

Could be moved to review, question: how large can rooms get.

Need connection manager when we get LOTS of people online. Right now we don't have any logic around who to connect to so it tries everybody.

@boreq boreq linked a pull request Oct 15, 2022 that will close this issue
@boreq boreq closed this as completed in #85 Oct 15, 2022
@boreq boreq reopened this Oct 15, 2022
@boreq
Copy link
Contributor Author

boreq commented Oct 24, 2022

@boreq boreq closed this as completed Oct 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request priority/high
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants