Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 6 Next »

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

Creating a connection

We can create and accept a connection from the Connected Organisations page under the environment section.

image-20240112-121513.png

On the add a connection button, you have two options:

  1. Create a connection

  2. Accept an invitation

Creating a connection

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:

image-20240112-121540.png

Here they can enter/decide:

  1. Organisation name

    1. This would also be the connection name

  2. Choose default destination team

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

  3. 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.

image-20240112-121734.png

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.

image-20240112-121841.png

Once the channels are selected and added, they appear in the list.

  • 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

image-20240112-121913.png

Share code

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.

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 encrypted invitation code and the organisation name.

image-20240112-122040.png

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.

image-20240112-122152.png

Changing the destination team

  • The user can change the destination team to decide where the channels land.

  • Unless the destination team is overridden at a per channel level, the default team would also change for the channel.

  • The user can decide to change the destination team of a channel before he accepts the connection by pressing the edit button.

  • If they press the edit button, a modal like this appears. allowing them to change the team (only for that channel).

    image-20240112-122304.png

Connection list page

  • 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.

image-20240112-122429.png

DMs with External Connection

If you are sharing a channel with a user, you can also communicate with them via DM.

Shared channels in sidebar

  • This is how the shared channels would appear, with the shared icon, and hovering over it displays the tooltip.

  • Any user in the channel that belongs to the external org would also have that icon beside is username/fullname.

image-20240112-122646.png

Browse shared channels

Shared channels would also be visible in the browse channels modal with an icon.

image-20240112-122740.png

Channel Members

Members from other orgs can also be seen in the channel member list (with an icon on the right), but you won’t be able to manage them.

image-20240112-122829.pngimage-20240112-122842.png

Removing a connection

When a connection/channel is removed, we will remove all shared users from the channel list, and also remove the link icon from the LHS, header, and anywhere it appears.

System console updates

Users page

On the users page, if we show the shared users, we should remove all options on the right, such as changing their membership or reset their password, etc.

image-20240606-140446.png

Channels list

On the channels list, we would show a list of channels that are shared with external orgs as well.

image-20240606-140554.png

And on hover, we get a tooltip on it identifying which connections are sharing those channels.

And on click, we take the user to the first organisation that this is being shared to.

I say first because a single channel could potentially be shared to multiple organisations.

image-20240606-140645.png

  • No labels