Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data UserType
- sendLocalMessages :: forall r x. (Member ExternalAccess r, Member TinyLog r, Member NotificationSubsystem r) => Local x -> UTCTime -> Qualified UserId -> ClientId -> Maybe ConnId -> Maybe (Qualified ConvId) -> BotMap -> MessageMetadata -> Map (UserId, ClientId) Text -> Sem r (Set (UserId, ClientId))
- postQualifiedOtrMessage :: (Member BrigAccess r, Member ClientStore r, Member ConversationStore r, Member FederatorAccess r, Member BackendNotificationQueueAccess r, Member ExternalAccess r, Member (Input Opts) r, Member (Input UTCTime) r, Member TeamStore r, Member TinyLog r, Member NotificationSubsystem r) => UserType -> Qualified UserId -> Maybe ConnId -> Local ConvId -> QualifiedNewOtrMessage -> Sem r (PostOtrResponse MessageSendingStatus)
- postBroadcast :: (Member BrigAccess r, Member ClientStore r, Member (ErrorS 'TeamNotFound) r, Member (ErrorS 'NonBindingTeam) r, Member (ErrorS 'BroadcastLimitExceeded) r, Member ExternalAccess r, Member (Input Opts) r, Member (Input UTCTime) r, Member TeamStore r, Member TinyLog r, Member NotificationSubsystem r) => Local UserId -> Maybe ConnId -> QualifiedNewOtrMessage -> Sem r (PostOtrResponse MessageSendingStatus)
- postRemoteOtrMessage :: Member FederatorAccess r => Local UserId -> Remote ConvId -> ByteString -> Sem r (PostOtrResponse MessageSendingStatus)
- legacyClientMismatchStrategy :: Domain -> Maybe [UserId] -> Maybe IgnoreMissing -> Maybe ReportMissing -> ClientMismatchStrategy
- class Unqualify a b where
- userToProtectee :: UserType -> UserId -> LegalholdProtectee
- data MessageMetadata = MessageMetadata {}
- checkMessageClients :: (Domain, UserId, ClientId) -> Map (Domain, UserId) (Set ClientId) -> Map (Domain, UserId, ClientId) ByteString -> ClientMismatchStrategy -> (Bool, Map (Domain, UserId, ClientId) ByteString, QualifiedMismatch)
- data QualifiedMismatch = QualifiedMismatch {}
- mkQualifiedUserClients :: QualifiedRecipientSet -> QualifiedUserClients
- clientMismatchStrategyApply :: ClientMismatchStrategy -> QualifiedRecipientSet -> QualifiedRecipientSet
- collectFailedToSend :: Foldable f => f (Map Domain (Map UserId (Set ClientId))) -> Map Domain (Map UserId (Set ClientId))
Documentation
sendLocalMessages :: forall r x. (Member ExternalAccess r, Member TinyLog r, Member NotificationSubsystem r) => Local x -> UTCTime -> Qualified UserId -> ClientId -> Maybe ConnId -> Maybe (Qualified ConvId) -> BotMap -> MessageMetadata -> Map (UserId, ClientId) Text -> Sem r (Set (UserId, ClientId)) Source #
postQualifiedOtrMessage :: (Member BrigAccess r, Member ClientStore r, Member ConversationStore r, Member FederatorAccess r, Member BackendNotificationQueueAccess r, Member ExternalAccess r, Member (Input Opts) r, Member (Input UTCTime) r, Member TeamStore r, Member TinyLog r, Member NotificationSubsystem r) => UserType -> Qualified UserId -> Maybe ConnId -> Local ConvId -> QualifiedNewOtrMessage -> Sem r (PostOtrResponse MessageSendingStatus) Source #
postBroadcast :: (Member BrigAccess r, Member ClientStore r, Member (ErrorS 'TeamNotFound) r, Member (ErrorS 'NonBindingTeam) r, Member (ErrorS 'BroadcastLimitExceeded) r, Member ExternalAccess r, Member (Input Opts) r, Member (Input UTCTime) r, Member TeamStore r, Member TinyLog r, Member NotificationSubsystem r) => Local UserId -> Maybe ConnId -> QualifiedNewOtrMessage -> Sem r (PostOtrResponse MessageSendingStatus) Source #
postRemoteOtrMessage :: Member FederatorAccess r => Local UserId -> Remote ConvId -> ByteString -> Sem r (PostOtrResponse MessageSendingStatus) Source #
legacyClientMismatchStrategy :: Domain -> Maybe [UserId] -> Maybe IgnoreMissing -> Maybe ReportMissing -> ClientMismatchStrategy Source #
class Unqualify a b where Source #
Instances
Unqualify MessageSendingStatus ClientMismatch Source # | |
Defined in Galley.API.Message unqualify :: Domain -> MessageSendingStatus -> ClientMismatch Source # | |
Unqualify QualifiedUserClients UserClients Source # | |
Defined in Galley.API.Message unqualify :: Domain -> QualifiedUserClients -> UserClients Source # | |
Unqualify a a Source # | |
Defined in Galley.API.Message | |
Unqualify a b => Unqualify (PostOtrResponse a) (PostOtrResponse b) Source # | |
Defined in Galley.API.Message unqualify :: Domain -> PostOtrResponse a -> PostOtrResponse b Source # |
userToProtectee :: UserType -> UserId -> LegalholdProtectee Source #
data MessageMetadata Source #
MessageMetadata | |
|
Instances
Only exported for tests
:: (Domain, UserId, ClientId) | Sender |
-> Map (Domain, UserId) (Set ClientId) | Participants of the conversation When the set of clients for a given user is empty, that means the user is present in the conversation, but has no clients at all, and this is a valid state. |
-> Map (Domain, UserId, ClientId) ByteString | Provided recipients and ciphertexts |
-> ClientMismatchStrategy | Subset of missing clients to report |
-> (Bool, Map (Domain, UserId, ClientId) ByteString, QualifiedMismatch) |
data QualifiedMismatch Source #
Instances
Show QualifiedMismatch Source # | |
Defined in Galley.API.Message showsPrec :: Int -> QualifiedMismatch -> ShowS # show :: QualifiedMismatch -> String # showList :: [QualifiedMismatch] -> ShowS # | |
Eq QualifiedMismatch Source # | |
Defined in Galley.API.Message (==) :: QualifiedMismatch -> QualifiedMismatch -> Bool # (/=) :: QualifiedMismatch -> QualifiedMismatch -> Bool # |
mkQualifiedUserClients :: QualifiedRecipientSet -> QualifiedUserClients Source #
clientMismatchStrategyApply :: ClientMismatchStrategy -> QualifiedRecipientSet -> QualifiedRecipientSet Source #