flowdock-0.3.0.1: Flowdock client library for Haskell

Safe HaskellNone
LanguageHaskell2010

Chat.Flowdock

Contents

Description

A client library for the Flowdock API. Currently only implements the push API.

Synopsis

Using the client

The Flowdock API has different authentication mechanisms for different parts of the API. Functions that depend on specific authentication data are tagged with the authentication type necessary to use them.

{-# LANGUAGE OverloadedStrings #-}

import Chat.Flowdock

-- The push API uses the 'Push' authentication type
main = withFlowdockClient (Push "YOUR_FLOW_TOKEN_HERE") $ \client -> do
  let msg = newChatPushMessage "Hello World Bot" "Hello, world!"
  pushToChat client msg

withFlowdockClient :: ClientManagerSettings auth => auth -> (FlowdockClient auth -> IO a) -> IO a Source

Authentication types

newtype Push Source

Constructors

Push 

newtype User Source

Constructors

User 

General types

REST API

class MessageType a Source

Minimal complete definition

messageJSON

message :: Flow -> a -> Message a Source

Pushing messages to the inbox

Pushing messages to the chatroom

Streaming events

Constructing messages

InboxPushMessage fields

ChatPushMessage fields

Common fields

Exception types

Lens field classes

class HasActive s a | s -> a where Source

Methods

active :: Lens' s a Source

Instances

class HasApp s a | s -> a where Source

Methods

app :: Lens' s a Source

Instances

class HasContentType s a | s -> a where Source

Methods

contentType :: Lens' s a Source

class HasEvent s a | s -> a where Source

Methods

event :: Lens' s a Source

Instances

class HasFileName s a | s -> a where Source

Methods

fileName :: Lens' s a Source

class HasFlow s a | s -> a where Source

Methods

flow :: Traversal' s a Source

class HasFormat s a | s -> a where Source

Methods

format :: Lens' s a Source

class HasFromAddress s a | s -> a where Source

Methods

fromAddress :: Lens' s a Source

class HasFromName s a | s -> a where Source

Methods

fromName :: Lens' s a Source

class HasLink s a | s -> a where Source

Methods

link :: Lens' s a Source

class HasOrganization s a | s -> a where Source

class HasProject s a | s -> a where Source

Methods

project :: Lens' s a Source

class HasReplyTo s a | s -> a where Source

Methods

replyTo :: Lens' s a Source

class HasSent s a | s -> a where Source

Methods

sent :: Lens' s a Source

Instances

class HasSource s a | s -> a where Source

Methods

source :: Lens' s a Source

class HasSubject s a | s -> a where Source

Methods

subject :: Lens' s a Source

class HasTags s a | s -> a where Source

Methods

tags :: Lens' s a Source

class HasUser s a | s -> a where Source

Methods

user :: Lens' s a Source

Instances

class HasUuid s a | s -> a where Source

Methods

uuid :: Lens' s a Source

Instances