simplex-chat-6.5.0.7
Safe HaskellNone
LanguageHaskell2010

Simplex.Chat.Protocol

Documentation

data MsgEncoding Source #

Constructors

Binary 
Json 

Instances

Instances details
TestEquality SMsgEncoding Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

testEquality :: forall (a :: MsgEncoding) (b :: MsgEncoding). SMsgEncoding a -> SMsgEncoding b -> Maybe (a :~: b)

data SMsgEncoding (e :: MsgEncoding) where Source #

Instances

Instances details
TestEquality SMsgEncoding Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

testEquality :: forall (a :: MsgEncoding) (b :: MsgEncoding). SMsgEncoding a -> SMsgEncoding b -> Maybe (a :~: b)

Show (SMsgEncoding e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> SMsgEncoding e -> ShowS

show :: SMsgEncoding e -> String

showList :: [SMsgEncoding e] -> ShowS

class MsgEncodingI (e :: MsgEncoding) where Source #

Instances

Instances details
MsgEncodingI 'Binary Source # 
Instance details

Defined in Simplex.Chat.Protocol

MsgEncodingI 'Json Source # 
Instance details

Defined in Simplex.Chat.Protocol

checkEncoding :: forall t (e :: MsgEncoding) (e' :: MsgEncoding). (MsgEncodingI e, MsgEncodingI e') => t e' -> Either String (t e) Source #

data AppMessageJson Source #

Constructors

AppMessageJson 

Fields

Instances

Instances details
FromJSON AppMessageJson Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser AppMessageJson

parseJSONList :: Value -> Parser [AppMessageJson]

omittedField :: Maybe AppMessageJson

ToJSON AppMessageJson Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: AppMessageJson -> Value

toEncoding :: AppMessageJson -> Encoding

toJSONList :: [AppMessageJson] -> Value

toEncodingList :: [AppMessageJson] -> Encoding

omitField :: AppMessageJson -> Bool

data AppMessageBinary Source #

Constructors

AppMessageBinary 

Fields

Instances

Instances details
StrEncoding AppMessageBinary Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

strEncode :: AppMessageBinary -> ByteString

strDecode :: ByteString -> Either String AppMessageBinary

strP :: Parser AppMessageBinary

data MsgScope Source #

Constructors

MSMember 

Fields

Instances

Instances details
FromJSON MsgScope Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgScope

parseJSONList :: Value -> Parser [MsgScope]

omittedField :: Maybe MsgScope

ToJSON MsgScope Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgScope -> Value

toEncoding :: MsgScope -> Encoding

toJSONList :: [MsgScope] -> Value

toEncodingList :: [MsgScope] -> Encoding

omitField :: MsgScope -> Bool

Show MsgScope Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgScope -> ShowS

show :: MsgScope -> String

showList :: [MsgScope] -> ShowS

Eq MsgScope Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgScope -> MsgScope -> Bool

(/=) :: MsgScope -> MsgScope -> Bool

data MsgRef Source #

Constructors

MsgRef 

Fields

Instances

Instances details
FromJSON MsgRef Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgRef

parseJSONList :: Value -> Parser [MsgRef]

omittedField :: Maybe MsgRef

ToJSON MsgRef Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgRef -> Value

toEncoding :: MsgRef -> Encoding

toJSONList :: [MsgRef] -> Value

toEncodingList :: [MsgRef] -> Encoding

omitField :: MsgRef -> Bool

Show MsgRef Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgRef -> ShowS

show :: MsgRef -> String

showList :: [MsgRef] -> ShowS

Eq MsgRef Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgRef -> MsgRef -> Bool

(/=) :: MsgRef -> MsgRef -> Bool

data LinkPreview Source #

Constructors

LinkPreview 

Fields

Instances

Instances details
FromJSON LinkPreview Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser LinkPreview

parseJSONList :: Value -> Parser [LinkPreview]

omittedField :: Maybe LinkPreview

ToJSON LinkPreview Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: LinkPreview -> Value

toEncoding :: LinkPreview -> Encoding

toJSONList :: [LinkPreview] -> Value

toEncodingList :: [LinkPreview] -> Encoding

omitField :: LinkPreview -> Bool

Show LinkPreview Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> LinkPreview -> ShowS

show :: LinkPreview -> String

showList :: [LinkPreview] -> ShowS

Eq LinkPreview Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: LinkPreview -> LinkPreview -> Bool

(/=) :: LinkPreview -> LinkPreview -> Bool

data LinkContent Source #

Constructors

LCPage 
LCImage 
LCVideo 

Fields

LCUnknown 

Fields

Instances

Instances details
FromJSON LinkContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser LinkContent

parseJSONList :: Value -> Parser [LinkContent]

omittedField :: Maybe LinkContent

ToJSON LinkContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: LinkContent -> Value

toEncoding :: LinkContent -> Encoding

toJSONList :: [LinkContent] -> Value

toEncodingList :: [LinkContent] -> Encoding

omitField :: LinkContent -> Bool

Show LinkContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> LinkContent -> ShowS

show :: LinkContent -> String

showList :: [LinkContent] -> ShowS

Eq LinkContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: LinkContent -> LinkContent -> Bool

(/=) :: LinkContent -> LinkContent -> Bool

data ReportReason Source #

Instances

Instances details
FromJSON ReportReason Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser ReportReason

parseJSONList :: Value -> Parser [ReportReason]

omittedField :: Maybe ReportReason

ToJSON ReportReason Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: ReportReason -> Value

toEncoding :: ReportReason -> Encoding

toJSONList :: [ReportReason] -> Value

toEncodingList :: [ReportReason] -> Encoding

omitField :: ReportReason -> Bool

Show ReportReason Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> ReportReason -> ShowS

show :: ReportReason -> String

showList :: [ReportReason] -> ShowS

Eq ReportReason Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: ReportReason -> ReportReason -> Bool

(/=) :: ReportReason -> ReportReason -> Bool

StrEncoding ReportReason Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

strEncode :: ReportReason -> ByteString

strDecode :: ByteString -> Either String ReportReason

strP :: Parser ReportReason

data ChatMessage (e :: MsgEncoding) Source #

Instances

Instances details
FromJSON (ChatMessage 'Json) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser (ChatMessage 'Json)

parseJSONList :: Value -> Parser [ChatMessage 'Json]

omittedField :: Maybe (ChatMessage 'Json)

ToJSON (ChatMessage 'Json) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: ChatMessage 'Json -> Value

toEncoding :: ChatMessage 'Json -> Encoding

toJSONList :: [ChatMessage 'Json] -> Value

toEncodingList :: [ChatMessage 'Json] -> Encoding

omitField :: ChatMessage 'Json -> Bool

Show (ChatMessage e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> ChatMessage e -> ShowS

show :: ChatMessage e -> String

showList :: [ChatMessage e] -> ShowS

Eq (ChatMessage e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: ChatMessage e -> ChatMessage e -> Bool

(/=) :: ChatMessage e -> ChatMessage e -> Bool

FromField (ChatMessage 'Json) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

fromField :: FieldParser (ChatMessage 'Json) #

data ChatMsgEvent (e :: MsgEncoding) where Source #

Constructors

XMsgNew :: MsgContainer -> ChatMsgEvent 'Json 
XMsgFileDescr 

Fields

XMsgUpdate 

Fields

XMsgDel 

Fields

XMsgDeleted :: ChatMsgEvent 'Json 
XMsgReact 

Fields

XFile :: FileInvitation -> ChatMsgEvent 'Json 
XFileAcpt :: String -> ChatMsgEvent 'Json 
XFileAcptInv :: SharedMsgId -> Maybe ConnReqInvitation -> String -> ChatMsgEvent 'Json 
XFileCancel :: SharedMsgId -> ChatMsgEvent 'Json 
XInfo :: Profile -> ChatMsgEvent 'Json 
XContact 

Fields

XDirectDel :: ChatMsgEvent 'Json 
XGrpInv :: GroupInvitation -> ChatMsgEvent 'Json 
XGrpAcpt :: MemberId -> ChatMsgEvent 'Json 
XGrpLinkInv :: GroupLinkInvitation -> ChatMsgEvent 'Json 
XGrpLinkReject :: GroupLinkRejection -> ChatMsgEvent 'Json 
XGrpLinkMem :: Profile -> ChatMsgEvent 'Json 
XGrpLinkAcpt :: GroupAcceptance -> GroupMemberRole -> MemberId -> ChatMsgEvent 'Json 
XGrpMemNew :: MemberInfo -> Maybe MsgScope -> ChatMsgEvent 'Json 
XGrpMemIntro :: MemberInfo -> Maybe MemberRestrictions -> ChatMsgEvent 'Json 
XGrpMemInv :: MemberId -> IntroInvitation -> ChatMsgEvent 'Json 
XGrpMemFwd :: MemberInfo -> IntroInvitation -> ChatMsgEvent 'Json 
XGrpMemInfo :: MemberId -> Profile -> ChatMsgEvent 'Json 
XGrpMemRole :: MemberId -> GroupMemberRole -> ChatMsgEvent 'Json 
XGrpMemRestrict :: MemberId -> MemberRestrictions -> ChatMsgEvent 'Json 
XGrpMemCon :: MemberId -> ChatMsgEvent 'Json 
XGrpMemConAll :: MemberId -> ChatMsgEvent 'Json 
XGrpMemDel :: MemberId -> Bool -> ChatMsgEvent 'Json 
XGrpLeave :: ChatMsgEvent 'Json 
XGrpDel :: ChatMsgEvent 'Json 
XGrpInfo :: GroupProfile -> ChatMsgEvent 'Json 
XGrpPrefs :: GroupPreferences -> ChatMsgEvent 'Json 
XGrpDirectInv :: ConnReqInvitation -> Maybe MsgContent -> Maybe MsgScope -> ChatMsgEvent 'Json 
XGrpMsgForward :: MemberId -> Maybe ContactName -> ChatMessage 'Json -> UTCTime -> ChatMsgEvent 'Json 
XInfoProbe :: Probe -> ChatMsgEvent 'Json 
XInfoProbeCheck :: ProbeHash -> ChatMsgEvent 'Json 
XInfoProbeOk :: Probe -> ChatMsgEvent 'Json 
XCallInv :: CallId -> CallInvitation -> ChatMsgEvent 'Json 
XCallOffer :: CallId -> CallOffer -> ChatMsgEvent 'Json 
XCallAnswer :: CallId -> CallAnswer -> ChatMsgEvent 'Json 
XCallExtra :: CallId -> CallExtraInfo -> ChatMsgEvent 'Json 
XCallEnd :: CallId -> ChatMsgEvent 'Json 
XOk :: ChatMsgEvent 'Json 
XUnknown 

Fields

BFileChunk :: SharedMsgId -> FileChunk -> ChatMsgEvent 'Binary 

Instances

Instances details
Show (ChatMsgEvent e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> ChatMsgEvent e -> ShowS

show :: ChatMsgEvent e -> String

showList :: [ChatMsgEvent e] -> ShowS

Eq (ChatMsgEvent e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: ChatMsgEvent e -> ChatMsgEvent e -> Bool

(/=) :: ChatMsgEvent e -> ChatMsgEvent e -> Bool

data AChatMsgEvent Source #

Constructors

MsgEncodingI e => ACME (SMsgEncoding e) (ChatMsgEvent e) 

Instances

Instances details
Show AChatMsgEvent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> AChatMsgEvent -> ShowS

show :: AChatMsgEvent -> String

showList :: [AChatMsgEvent] -> ShowS

data MsgReaction Source #

Constructors

MREmoji 

Fields

MRUnknown 

Fields

Instances

Instances details
FromJSON MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgReaction

parseJSONList :: Value -> Parser [MsgReaction]

omittedField :: Maybe MsgReaction

ToJSON MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgReaction -> Value

toEncoding :: MsgReaction -> Encoding

toJSONList :: [MsgReaction] -> Value

toEncodingList :: [MsgReaction] -> Encoding

omitField :: MsgReaction -> Bool

Show MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgReaction -> ShowS

show :: MsgReaction -> String

showList :: [MsgReaction] -> ShowS

Eq MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgReaction -> MsgReaction -> Bool

(/=) :: MsgReaction -> MsgReaction -> Bool

FromField MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

fromField :: FieldParser MsgReaction #

ToField MsgReaction Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toField :: MsgReaction -> SQLData #

emojiTag :: IsString a => a Source #

newtype MREmojiChar Source #

Constructors

MREmojiChar Char 

Instances

Instances details
FromJSON MREmojiChar Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MREmojiChar

parseJSONList :: Value -> Parser [MREmojiChar]

omittedField :: Maybe MREmojiChar

ToJSON MREmojiChar Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MREmojiChar -> Value

toEncoding :: MREmojiChar -> Encoding

toJSONList :: [MREmojiChar] -> Value

toEncodingList :: [MREmojiChar] -> Encoding

omitField :: MREmojiChar -> Bool

Show MREmojiChar Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MREmojiChar -> ShowS

show :: MREmojiChar -> String

showList :: [MREmojiChar] -> ShowS

Eq MREmojiChar Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MREmojiChar -> MREmojiChar -> Bool

(/=) :: MREmojiChar -> MREmojiChar -> Bool

mrEmojiChar :: Char -> Either String MREmojiChar Source #

data FileChunk Source #

Constructors

FileChunk 

Fields

FileChunkCancel 

Instances

Instances details
Show FileChunk Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> FileChunk -> ShowS

show :: FileChunk -> String

showList :: [FileChunk] -> ShowS

Eq FileChunk Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: FileChunk -> FileChunk -> Bool

(/=) :: FileChunk -> FileChunk -> Bool

Encoding FileChunk Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

smpEncode :: FileChunk -> ByteString

smpDecode :: ByteString -> Either String FileChunk

smpP :: Parser FileChunk

newtype InlineFileChunk Source #

Constructors

IFC 

Fields

Instances

Instances details
Encoding InlineFileChunk Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

smpEncode :: InlineFileChunk -> ByteString

smpDecode :: ByteString -> Either String InlineFileChunk

smpP :: Parser InlineFileChunk

data QuotedMsg Source #

Constructors

QuotedMsg 

Instances

Instances details
FromJSON QuotedMsg Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser QuotedMsg

parseJSONList :: Value -> Parser [QuotedMsg]

omittedField :: Maybe QuotedMsg

ToJSON QuotedMsg Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: QuotedMsg -> Value

toEncoding :: QuotedMsg -> Encoding

toJSONList :: [QuotedMsg] -> Value

toEncodingList :: [QuotedMsg] -> Encoding

omitField :: QuotedMsg -> Bool

Show QuotedMsg Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> QuotedMsg -> ShowS

show :: QuotedMsg -> String

showList :: [QuotedMsg] -> ShowS

Eq QuotedMsg Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: QuotedMsg -> QuotedMsg -> Bool

(/=) :: QuotedMsg -> QuotedMsg -> Bool

data MsgContentTag Source #

Instances

Instances details
FromJSON MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgContentTag

parseJSONList :: Value -> Parser [MsgContentTag]

omittedField :: Maybe MsgContentTag

ToJSON MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgContentTag -> Value

toEncoding :: MsgContentTag -> Encoding

toJSONList :: [MsgContentTag] -> Value

toEncodingList :: [MsgContentTag] -> Encoding

omitField :: MsgContentTag -> Bool

Show MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgContentTag -> ShowS

show :: MsgContentTag -> String

showList :: [MsgContentTag] -> ShowS

Eq MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

StrEncoding MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

strEncode :: MsgContentTag -> ByteString

strDecode :: ByteString -> Either String MsgContentTag

strP :: Parser MsgContentTag

ToField MsgContentTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toField :: MsgContentTag -> SQLData #

data MsgContainer Source #

Instances

Instances details
Show MsgContainer Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgContainer -> ShowS

show :: MsgContainer -> String

showList :: [MsgContainer] -> ShowS

Eq MsgContainer Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgContainer -> MsgContainer -> Bool

(/=) :: MsgContainer -> MsgContainer -> Bool

data MsgContent Source #

Constructors

MCText 

Fields

MCLink 

Fields

MCImage 

Fields

MCVideo 

Fields

MCVoice 

Fields

MCFile 

Fields

MCReport 

Fields

MCChat 

Fields

MCUnknown 

Fields

Instances

Instances details
FromJSON MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgContent

parseJSONList :: Value -> Parser [MsgContent]

omittedField :: Maybe MsgContent

ToJSON MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgContent -> Value

toEncoding :: MsgContent -> Encoding

toJSONList :: [MsgContent] -> Value

toEncodingList :: [MsgContent] -> Encoding

omitField :: MsgContent -> Bool

Show MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgContent -> ShowS

show :: MsgContent -> String

showList :: [MsgContent] -> ShowS

Eq MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgContent -> MsgContent -> Bool

(/=) :: MsgContent -> MsgContent -> Bool

FromField MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

fromField :: FieldParser MsgContent #

ToField MsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toField :: MsgContent -> SQLData #

data MsgChatLink Source #

Instances

durationText :: Int -> Text Source #

data ExtMsgContent Source #

Constructors

ExtMsgContent 

Fields

Instances

Instances details
Show ExtMsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> ExtMsgContent -> ShowS

show :: ExtMsgContent -> String

showList :: [ExtMsgContent] -> ShowS

Eq ExtMsgContent Source # 
Instance details

Defined in Simplex.Chat.Protocol

data MsgMention Source #

Constructors

MsgMention 

Fields

Instances

Instances details
FromJSON MsgMention Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser MsgMention

parseJSONList :: Value -> Parser [MsgMention]

omittedField :: Maybe MsgMention

ToJSON MsgMention Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toJSON :: MsgMention -> Value

toEncoding :: MsgMention -> Encoding

toJSONList :: [MsgMention] -> Value

toEncodingList :: [MsgMention] -> Encoding

omitField :: MsgMention -> Bool

Show MsgMention Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> MsgMention -> ShowS

show :: MsgMention -> String

showList :: [MsgMention] -> ShowS

Eq MsgMention Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: MsgMention -> MsgMention -> Bool

(/=) :: MsgMention -> MsgMention -> Bool

data EncodedChatMessage Source #

Constructors

ECMEncoded ByteString 
ECMLarge 

parseChatMessages :: ByteString -> [Either String AChatMessage] Source #

compressedBatchMsgBody_ :: MsgBody -> ByteString Source #

markCompressedBatch :: ByteString -> ByteString Source #

justTrue :: Bool -> Maybe Bool Source #

nonEmptyMap :: Map k v -> Maybe (Map k v) Source #

data ACMEventTag Source #

Constructors

MsgEncodingI e => ACMEventTag (SMsgEncoding e) (CMEventTag e) 

Instances

Instances details
StrEncoding ACMEventTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

strEncode :: ACMEventTag -> ByteString

strDecode :: ByteString -> Either String ACMEventTag

strP :: Parser ACMEventTag

TextEncoding ACMEventTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

textEncode :: ACMEventTag -> Text

textDecode :: Text -> Maybe ACMEventTag

FromField ACMEventTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

fromField :: FieldParser ACMEventTag #

ToField ACMEventTag Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toField :: ACMEventTag -> SQLData #

data CMEventTag (e :: MsgEncoding) where Source #

Constructors

XMsgNew_ :: CMEventTag 'Json 
XMsgFileDescr_ :: CMEventTag 'Json 
XMsgUpdate_ :: CMEventTag 'Json 
XMsgDel_ :: CMEventTag 'Json 
XMsgDeleted_ :: CMEventTag 'Json 
XMsgReact_ :: CMEventTag 'Json 
XFile_ :: CMEventTag 'Json 
XFileAcpt_ :: CMEventTag 'Json 
XFileAcptInv_ :: CMEventTag 'Json 
XFileCancel_ :: CMEventTag 'Json 
XInfo_ :: CMEventTag 'Json 
XContact_ :: CMEventTag 'Json 
XDirectDel_ :: CMEventTag 'Json 
XGrpInv_ :: CMEventTag 'Json 
XGrpAcpt_ :: CMEventTag 'Json 
XGrpLinkInv_ :: CMEventTag 'Json 
XGrpLinkReject_ :: CMEventTag 'Json 
XGrpLinkMem_ :: CMEventTag 'Json 
XGrpLinkAcpt_ :: CMEventTag 'Json 
XGrpMemNew_ :: CMEventTag 'Json 
XGrpMemIntro_ :: CMEventTag 'Json 
XGrpMemInv_ :: CMEventTag 'Json 
XGrpMemFwd_ :: CMEventTag 'Json 
XGrpMemInfo_ :: CMEventTag 'Json 
XGrpMemRole_ :: CMEventTag 'Json 
XGrpMemRestrict_ :: CMEventTag 'Json 
XGrpMemCon_ :: CMEventTag 'Json 
XGrpMemConAll_ :: CMEventTag 'Json 
XGrpMemDel_ :: CMEventTag 'Json 
XGrpLeave_ :: CMEventTag 'Json 
XGrpDel_ :: CMEventTag 'Json 
XGrpInfo_ :: CMEventTag 'Json 
XGrpPrefs_ :: CMEventTag 'Json 
XGrpDirectInv_ :: CMEventTag 'Json 
XGrpMsgForward_ :: CMEventTag 'Json 
XInfoProbe_ :: CMEventTag 'Json 
XInfoProbeCheck_ :: CMEventTag 'Json 
XInfoProbeOk_ :: CMEventTag 'Json 
XCallInv_ :: CMEventTag 'Json 
XCallOffer_ :: CMEventTag 'Json 
XCallAnswer_ :: CMEventTag 'Json 
XCallExtra_ :: CMEventTag 'Json 
XCallEnd_ :: CMEventTag 'Json 
XOk_ :: CMEventTag 'Json 
XUnknown_ :: Text -> CMEventTag 'Json 
BFileChunk_ :: CMEventTag 'Binary 

Instances

Instances details
Show (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> CMEventTag e -> ShowS

show :: CMEventTag e -> String

showList :: [CMEventTag e] -> ShowS

Eq (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

(==) :: CMEventTag e -> CMEventTag e -> Bool

(/=) :: CMEventTag e -> CMEventTag e -> Bool

MsgEncodingI e => StrEncoding (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

strEncode :: CMEventTag e -> ByteString

strDecode :: ByteString -> Either String (CMEventTag e)

strP :: Parser (CMEventTag e)

MsgEncodingI e => TextEncoding (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

textEncode :: CMEventTag e -> Text

textDecode :: Text -> Maybe (CMEventTag e)

(MsgEncodingI e, Typeable e) => FromField (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

fromField :: FieldParser (CMEventTag e) #

MsgEncodingI e => ToField (CMEventTag e) Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

toField :: CMEventTag e -> SQLData #

hasNotification :: forall (e :: MsgEncoding). CMEventTag e -> Bool Source #

hasDeliveryReceipt :: forall (e :: MsgEncoding). CMEventTag e -> Bool Source #

(.=?) :: ToJSON v => Key -> Maybe v -> [(Key, Value)] -> [(Key, Value)] Source #

chatMsgToBody :: forall (e :: MsgEncoding). MsgEncodingI e => ChatMessage e -> ByteString Source #

data ContactShortLinkData Source #

Constructors

ContactShortLinkData 

Fields

Instances

Instances details
FromJSON ContactShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

ToJSON ContactShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

Show ContactShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> ContactShortLinkData -> ShowS

show :: ContactShortLinkData -> String

showList :: [ContactShortLinkData] -> ShowS

data GroupShortLinkData Source #

Instances

Instances details
FromJSON GroupShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

parseJSON :: Value -> Parser GroupShortLinkData

parseJSONList :: Value -> Parser [GroupShortLinkData]

omittedField :: Maybe GroupShortLinkData

ToJSON GroupShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

Show GroupShortLinkData Source # 
Instance details

Defined in Simplex.Chat.Protocol

Methods

showsPrec :: Int -> GroupShortLinkData -> ShowS

show :: GroupShortLinkData -> String

showList :: [GroupShortLinkData] -> ShowS