Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data SlackConfig = SlackConfig {}
- mkSlackConfig :: Text -> IO SlackConfig
- apiTest :: (MonadReader env m, HasManager env, MonadIO m) => TestReq -> m (Response TestRsp)
- authTest :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response TestRsp)
- chatPostMessage :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => PostMsgReq -> m (Response PostMsgRsp)
- channelsCreate :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => CreateReq -> m (Response CreateRsp)
- channelsList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => ListReq -> m (Response ListRsp)
- channelsHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp)
- groupsHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp)
- groupsList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp)
- historyFetchAll :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => (HistoryReq -> m (Response HistoryRsp)) -> Text -> Int -> SlackTimestamp -> SlackTimestamp -> m (Response HistoryRsp)
- imHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp)
- imList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp)
- mpimList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp)
- mpimHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp)
- getUserDesc :: (UserId -> Text) -> ListRsp -> UserId -> Text
- usersList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp)
- authenticateReq :: Text -> Request -> Request
- type Response a = Either SlackClientError a
- class HasManager a where
- getManager :: a -> Manager
- class HasToken a where
Documentation
data SlackConfig Source #
Implements the HasManager
and HasToken
typeclasses.
Instances
HasToken SlackConfig Source # | |
HasManager SlackConfig Source # | |
Defined in Web.Slack getManager :: SlackConfig -> Manager Source # |
mkSlackConfig :: Text -> IO SlackConfig Source #
Prepare a SlackConfig from a slack token. You can then call the other functions providing this in a reader context.
apiTest :: (MonadReader env m, HasManager env, MonadIO m) => TestReq -> m (Response TestRsp) Source #
Check API calling code.
authTest :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response TestRsp) Source #
Check authentication and identity.
chatPostMessage :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => PostMsgReq -> m (Response PostMsgRsp) Source #
Send a message to a channel.
channelsCreate :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => CreateReq -> m (Response CreateRsp) Source #
Create a channel.
channelsList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => ListReq -> m (Response ListRsp) Source #
Retrieve channel list.
channelsHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp) Source #
Retrieve channel history.
Consider using historyFetchAll
in combination with this function
groupsHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp) Source #
This method returns a portion of messages/events from the specified
private channel. To read the entire history for a private channel,
call the method with no latest or oldest arguments, and then continue paging.
Consider using historyFetchAll
in combination with this function
groupsList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp) Source #
This method returns a list of private channels in the team that the caller is in and archived groups that the caller was in. The list of (non-deactivated) members in each private channel is also returned.
:: (MonadReader env m, HasManager env, HasToken env, MonadIO m) | |
=> (HistoryReq -> m (Response HistoryRsp)) | The request to make. Can be for instance |
-> Text | The channel name to query |
-> Int | The number of entries to fetch at once. |
-> SlackTimestamp | The oldest timestamp to fetch records from |
-> SlackTimestamp | The newest timestamp to fetch records to |
-> m (Response HistoryRsp) | A list merging all the history records that were fetched through the individual queries. |
Fetch all history items between two dates. The basic calls
channelsHistory
, groupsHistory
, imHistory
and so on
may not return exhaustive results if there were too many
records. You need to use historyRspHasMore
to find out
whether you got all the data.
This function will repeatedly call the underlying history function until all the data is fetched or until a call fails, merging the messages obtained from each call.
imHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp) Source #
Retrieve direct message channel history.
Consider using historyFetchAll
in combination with this function
imList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp) Source #
Returns a list of all direct message channels that the user has
mpimList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp) Source #
Returns a list of all multiparty direct message channels that the user has
mpimHistory :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => HistoryReq -> m (Response HistoryRsp) Source #
Retrieve multiparty direct message channel history.
Consider using historyFetchAll
in combination with this function
:: (UserId -> Text) | A function to give a default username in case the username is unknown |
-> ListRsp | List of users as known by the slack server. See |
-> UserId -> Text | A function from |
Returns a function to get a username from a UserId
.
Comes in handy to use messageToHtml
usersList :: (MonadReader env m, HasManager env, HasToken env, MonadIO m) => m (Response ListRsp) Source #
This method returns a list of all users in the team. This includes deleted/deactivated users.
type Response a = Either SlackClientError a Source #
class HasManager a where Source #
getManager :: a -> Manager Source #
Instances
HasManager SlackConfig Source # | |
Defined in Web.Slack getManager :: SlackConfig -> Manager Source # |