mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-07-20 17:51:38 +00:00
core: channel commenter role
This commit is contained in:
+1
-1
@@ -114,7 +114,7 @@ defaultChatConfig =
|
||||
highlyAvailable = False,
|
||||
deliveryWorkerDelay = 0,
|
||||
deliveryBucketSize = 10000,
|
||||
channelSubscriberRole = GRObserver,
|
||||
channelSubscriberRole = GRCommenter,
|
||||
deviceNameForRemote = "",
|
||||
remoteCompression = True,
|
||||
chatHooks = defaultChatHooks
|
||||
|
||||
@@ -1533,7 +1533,7 @@ processAgentMessageConn vr user@User {userId} corrId agentConnId agentMessage =
|
||||
memberCanSend (Just m@GroupMember {memberRole}) msgScope a = case msgScope of
|
||||
Just MSMember {} -> a
|
||||
Nothing
|
||||
| memberRole > GRObserver || memberPending m -> a
|
||||
| memberRole >= GRAuthor || memberPending m -> a
|
||||
| otherwise -> messageError "member is not allowed to send messages" $> Nothing
|
||||
|
||||
processConnMERR :: ConnectionEntity -> Connection -> AgentErrorType -> CM ()
|
||||
|
||||
@@ -19,6 +19,7 @@ data GroupMemberRole
|
||||
= GRUnknown Text -- unknown role from a newer client
|
||||
| GRRelay -- chat relay: forwards messages, can't send its own messages
|
||||
| GRObserver -- connects to all group members and receives all messages, can't send messages
|
||||
| GRCommenter -- + can comment on channel posts, can't send messages to the main channel
|
||||
| GRAuthor -- reserved, unused
|
||||
| GRMember -- + can send messages to all group members
|
||||
| GRModerator -- + moderate messages and block members (excl. Admins and Owners)
|
||||
@@ -37,6 +38,7 @@ instance TextEncoding GroupMemberRole where
|
||||
GRModerator -> "moderator"
|
||||
GRMember -> "member"
|
||||
GRAuthor -> "author"
|
||||
GRCommenter -> "commenter"
|
||||
GRObserver -> "observer"
|
||||
GRRelay -> "relay"
|
||||
GRUnknown t -> t
|
||||
@@ -46,6 +48,7 @@ instance TextEncoding GroupMemberRole where
|
||||
"moderator" -> GRModerator
|
||||
"member" -> GRMember
|
||||
"author" -> GRAuthor
|
||||
"commenter" -> GRCommenter
|
||||
"observer" -> GRObserver
|
||||
"relay" -> GRRelay
|
||||
t -> GRUnknown t
|
||||
|
||||
Reference in New Issue
Block a user