matrix-appservice-discord icon indicating copy to clipboard operation
matrix-appservice-discord copied to clipboard

Forum channels bridging

Open erkinalp opened this issue 3 years ago • 10 comments
trafficstars

Is your feature request related to a problem? Please describe. Discord unveiled forum channels, which are channels that cannot have any top level messages posted, instead, they can only posted messages within a thread.

Describe the solution you'd like Forum channels should be bridges as spaces, and threads within it as chat rooms with knock_restricted join rule. Auto-archival by Discord should not be bridged, however, manual archival should be bridged.

Describe alternatives you've considered Threads-as-relations, but not useful in this use case

erkinalp avatar Sep 16 '22 06:09 erkinalp

Forum channels should be bridges as spaces, and threads within it as chat rooms

Why? A forum channel is pretty much just a normal text channel which has locked permissions to not have any top level permissions (it's nicely visible if you still have an older (mobile) client which doesn't support forums yet but support threads) It'd make much more sense IMO to just bridge a forum channel to a matrix-text-channel, and make every new forum-thread a new matrix-thread in that text channel.

Miepee avatar Sep 16 '22 08:09 Miepee

@Miepee: Organisation wise they are really parent channels (just like spaces are rooms of rooms), UX wise too, except that it has a few moderation aids. Forum overview: resim Forum with a "post" (child channel) open: resim

Why? A forum channel is pretty much just a normal text channel which has locked permissions

Wrong. They are type-locked to not have any top level messages. (parent channel is typed GUILD_FORUM and child channels GUILD_PUBLIC_THREAD) They can only have new thread channels created in it. Actually a stricter distinction than m.space and generic text chat rooms.

erkinalp avatar Sep 16 '22 08:09 erkinalp

Considering most people already use spaces (and subspaces) as a representation of guild/channel categories, I feel like this can get a bit confusing. For example, it's not uncommon for bigger guilds to have 10 posts a day. Most (if not all) clients which implement Space exploration, do it by showing all children, which would mean you'd have a very cluttered Space very fast. And because most threads on Discord are used "temporarily" (not have any conversation after a few weeks), it'd not only be cluttered, but also with a ton of inactive rooms too.

Miepee avatar Sep 16 '22 09:09 Miepee

I feel like the best way is to create matrix threads in a room, and have the app auto create the threads matrix<->discord.

1 forum thread on discord <-> 1 thread in a room on matrix

Each message in matrix channel creates a thread on discord, and the thread is started on the matrix side with a message of "this conversation is now a thread" and alerts the user to the thread.

This preserves history of threads, and keeps it organized.

Doomsdayrs avatar Oct 20 '22 03:10 Doomsdayrs

it makes sense to me as has been suggested above to just bridge forum channels as a regular matrix channel with threads. making a "top level post" in matrix can be bridged as just making a new forum post. the only complication I see is deciding what to treat as the thread title and what to treat as the message body from the matrix side

jackmawer avatar Nov 08 '22 12:11 jackmawer

the only complication I see is deciding what to treat as the thread title and what to treat as the message body from the matrix side

First line is title, the rest is body

Doomsdayrs avatar Nov 08 '22 15:11 Doomsdayrs

Has there been any progress on this discussion elsewhere besides here in the last several months?

Greendogo avatar Jun 01 '23 07:06 Greendogo