simplex-chat-6.5.0.7
Safe HaskellNone
LanguageHaskell2010

Simplex.Chat.Mobile

Synopsis

Documentation

data DBMigrationResult Source #

Constructors

DBMOk 
DBMInvalidConfirmation 
DBMErrorNotADatabase 

Fields

DBMErrorMigration 

Fields

DBMErrorSQL 

Fields

Instances

Instances details
ToJSON DBMigrationResult Source # 
Instance details

Defined in Simplex.Chat.Mobile

Show DBMigrationResult Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

showsPrec :: Int -> DBMigrationResult -> ShowS

show :: DBMigrationResult -> String

showList :: [DBMigrationResult] -> ShowS

data APIResult r Source #

Constructors

APIResult 

Fields

APIError 

Instances

Instances details
ToJSON r => ToJSON (APIResult r) Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

toJSON :: APIResult r -> Value

toEncoding :: APIResult r -> Encoding

toJSONList :: [APIResult r] -> Value

toEncodingList :: [APIResult r] -> Encoding

omitField :: APIResult r -> Bool

data ParsedUri Source #

Constructors

ParsedUri 

Fields

Instances

Instances details
FromJSON ParsedUri Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

parseJSON :: Value -> Parser ParsedUri

parseJSONList :: Value -> Parser [ParsedUri]

omittedField :: Maybe ParsedUri

ToJSON ParsedUri Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

toJSON :: ParsedUri -> Value

toEncoding :: ParsedUri -> Encoding

toJSONList :: [ParsedUri] -> Value

toEncodingList :: [ParsedUri] -> Encoding

omitField :: ParsedUri -> Bool

data UriInfo Source #

Constructors

UriInfo 

Fields

Instances

Instances details
FromJSON UriInfo Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

parseJSON :: Value -> Parser UriInfo

parseJSONList :: Value -> Parser [UriInfo]

omittedField :: Maybe UriInfo

ToJSON UriInfo Source # 
Instance details

Defined in Simplex.Chat.Mobile

Methods

toJSON :: UriInfo -> Value

toEncoding :: UriInfo -> Encoding

toJSONList :: [UriInfo] -> Value

toEncodingList :: [UriInfo] -> Encoding

omitField :: UriInfo -> Bool

cChatMigrateInit :: CString -> CString -> CString -> Ptr (StablePtr ChatController) -> IO CJSONString Source #

check / migrate database and initialize chat controller on success For postgres first param is schema prefix, second param is database connection string.

cChatMigrateInitKey :: CString -> CString -> CInt -> CString -> CInt -> Ptr (StablePtr ChatController) -> IO CJSONString Source #

cChatCloseStore :: StablePtr ChatController -> IO CString Source #

cChatReopenStore :: StablePtr ChatController -> IO CString Source #

cChatSendCmd :: StablePtr ChatController -> CString -> IO CJSONString Source #

send command to chat

cChatSendCmdRetry :: StablePtr ChatController -> CString -> CInt -> IO CJSONString Source #

send command to chat with retry count

cChatSendRemoteCmd :: StablePtr ChatController -> CInt -> CString -> IO CJSONString Source #

send remote command to chat

cChatSendRemoteCmdRetry :: StablePtr ChatController -> CInt -> CString -> CInt -> IO CJSONString Source #

send remote command to chat with retry count

cChatRecvMsg :: StablePtr ChatController -> IO CJSONString Source #

receive message from chat (blocking)

cChatRecvMsgWait :: StablePtr ChatController -> CInt -> IO CJSONString Source #

receive message from chat (blocking up to t microseconds (1/10^6 sec), returns empty string if times out)

cChatParseMarkdown :: CString -> IO CJSONString Source #

parse markdown - returns ParsedMarkdown type JSON

cChatParseServer :: CString -> IO CJSONString Source #

parse server address - returns ParsedServerAddress JSON

cChatParseUri :: CString -> CInt -> IO CJSONString Source #

parse web URI - returns ParsedUri JSON

cChatPasswordHash :: CString -> CString -> IO CString Source #

cChatValidName :: CString -> IO CString Source #

cChatJsonLength :: CString -> IO CInt Source #

returns length of JSON encoded string

chatMigrateInit :: String -> ScrubbedBytes -> String -> IO (Either DBMigrationResult ChatController) Source #

chatMigrateInitKey :: ChatDbOpts -> Bool -> String -> Bool -> IO (Either DBMigrationResult ChatController) Source #

handleErr :: IO () -> IO String Source #

chatParseUri :: Bool -> ByteString -> JSONByteString Source #

chatPasswordHash :: ByteString -> ByteString -> ByteString Source #