Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Figma link: https://www.figma.com/design/C5KmGaL6A0teemBsLc3IVy/Shared-Teams-across-Server?node-id=1971-43986&t=YVuhbFCjnSHwpuJI-11

...

Only instances with an Enterprise license can create a connection with another server. Once the user clicks on Create a connection, they’re taken to the Connection Inner page:

...

.

Here they can enter/decide:

  1. Organisation name

    1. This would also be the connection name

  2. Choose Decide if channel invites should automatically be accepted.

  3. If automatically accepted, choose default destination team for those channels.

    1. This would be the default team where any channels shared would land.

  4. Channels they want to share

    1. Initially, the user can only share their own channels, and not see other channels that are shared, but later on, they will see two tabs:

      1. For channels shared by the external server

      2. Their own channels shared.

...

If the automatically select channel invites option is turned on, we will show the destination team dropdown.

...

Channel Sharing

  • The user can decide to share their channels by clicking on the Add channels button.

  • A modal opens up allowing them to choose Public channels cross team.

  • The user can select multiple channels.

...

  • The user can decide to remove them, or add new channels.

  • This would use a pretty similar UI as the channels listing page in the system console.

    • We will not have the filters here that exist in that channels listing page.

  • A server cannot reshare a channel that's shared with them (so this would only show channels belonging to your server)

    • However, a channel originating on your server can be shared to multiple secure connections

...

Once done, the user can click on Save to create a connection. They get a share popup to share the code needed to accept the connection.

...

This code will only be shared once, and the user has to copy both of these and send them to the other org inorder for a connection to be established.

...

If the user closes the modal, they can regenerate another code, which renders the old code invalid.

The list should show all of the connections you’ve created or accepted, with their state and the channels being shared in total (from us, and from the other party):

It would also include the options to:

  1. Generate a new invitation code

  2. Edit the connection

  3. Delete it

...

Creating a new connection opens up a new modal with a new invitation code and password.

...

Accepting a connection

Only instances with an Enterprise license can accept a connection with another server. On the other end, once the user receives the invitation code, they can go to the same page and click on Accept a connection in the Add connection dropdown.

Here the user can enter the organisation name, encrypted invitation code, and password shared by the other organisation name.

...

Connection Inner Page

This inner page is similar to the one above. Except, it has two tabs which shows channels shared by the external org, and the your own channels shared.

The user would see the channels the other party has shared, and since by default you do not accept channel invites. The admin would have an option to accept each individual channel and choose a destination team.

...

...

The user can click on Reject to reject the channel invite, or accept to get this modal:

...

After which, the team would show up like this.

...

The channel isn’t accepted though, it is only placed in the team, it will be accepted when the user clicks on save.

Once accepted, the user can also change the destination team of a channel.

The Your channel list flow is going to be similar to the one mentioned previously.

Adding a channel

If the user adds a channel by staying on the external channels tab, once he has selected the channels, we will take him to his own channels tab automatically and show the added channel there.

...

Changing the destination team

...

  • Here we display the connections that the user has created/accepted.

  • Status of the connection.

  • Channels shared

  • Options to See the invitation code, edit, and delete the connection.

    • The option to see the invitation code will only be there if the connection is pending.

    • Once the connection is made, the share code option will disappear, as we only allow users to share the code 1 to 1.

...

DMs with External Connection

...