telegram-bot-simple-0.3.5: Easy to use library for building Telegram bots.
Safe HaskellNone
LanguageHaskell2010

Telegram.Bot.API.Methods

Synopsis

Available methods

getMe

type GetMe = "getMe" :> Get '[JSON] (Response User) Source #

getMe :: ClientM (Response User) Source #

A simple method for testing your bot's auth token. Requires no parameters. Returns basic information about the bot in form of a User object.

deleteMessage

type DeleteMessage = "deleteMessage" :> (RequiredQueryParam "chat_id" ChatId :> (RequiredQueryParam "message_id" MessageId :> Get '[JSON] (Response Bool))) Source #

Notice that deleting by POST method was bugged, so we use GET

deleteMessage :: ChatId -> MessageId -> ClientM (Response Bool) Source #

Use this method to delete message in chat. On success, the sent Bool is returned.

sendMessage

sendMessage :: SendMessageRequest -> ClientM (Response Message) Source #

Use this method to send text messages. On success, the sent Message is returned.

forwardMessage

forwardMessage :: ForwardMessageRequest -> ClientM (Response Message) Source #

Use this method to forward messages of any kind. On success, the sent Message is returned.

data SomeChatId Source #

Unique identifier for the target chat or username of the target channel (in the format @channelusername).

Constructors

SomeChatId ChatId

Unique chat ID.

SomeChatUsername Text

Username of the target channel.

Instances

Instances details
Generic SomeChatId Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep SomeChatId :: Type -> Type #

ToJSON SomeChatId Source # 
Instance details

Defined in Telegram.Bot.API.Methods

FromJSON SomeChatId Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SomeChatId Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SomeChatId = D1 ('MetaData "SomeChatId" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) (C1 ('MetaCons "SomeChatId" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ChatId)) :+: C1 ('MetaCons "SomeChatUsername" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

data SomeReplyMarkup Source #

Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.

Instances

Instances details
Generic SomeReplyMarkup Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep SomeReplyMarkup :: Type -> Type #

ToJSON SomeReplyMarkup Source # 
Instance details

Defined in Telegram.Bot.API.Methods

FromJSON SomeReplyMarkup Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SomeReplyMarkup Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SomeReplyMarkup = D1 ('MetaData "SomeReplyMarkup" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) ((C1 ('MetaCons "SomeInlineKeyboardMarkup" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 InlineKeyboardMarkup)) :+: C1 ('MetaCons "SomeReplyKeyboardMarkup" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ReplyKeyboardMarkup))) :+: (C1 ('MetaCons "SomeReplyKeyboardRemove" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ReplyKeyboardRemove)) :+: C1 ('MetaCons "SomeForceReply" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ForceReply))))

data ParseMode Source #

Constructors

Markdown 
HTML 
MarkdownV2 

Instances

Instances details
Generic ParseMode Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep ParseMode :: Type -> Type #

ToJSON ParseMode Source # 
Instance details

Defined in Telegram.Bot.API.Methods

FromJSON ParseMode Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep ParseMode Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep ParseMode = D1 ('MetaData "ParseMode" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) (C1 ('MetaCons "Markdown" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "HTML" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MarkdownV2" 'PrefixI 'False) (U1 :: Type -> Type)))

data SendMessageRequest Source #

Request parameters for sendMessage.

Constructors

SendMessageRequest 

Fields

Instances

Instances details
Generic SendMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep SendMessageRequest :: Type -> Type #

ToJSON SendMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

FromJSON SendMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SendMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SendMessageRequest = D1 ('MetaData "SendMessageRequest" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) (C1 ('MetaCons "SendMessageRequest" 'PrefixI 'True) ((S1 ('MetaSel ('Just "sendMessageChatId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SomeChatId) :*: (S1 ('MetaSel ('Just "sendMessageText") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "sendMessageParseMode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ParseMode)))) :*: ((S1 ('MetaSel ('Just "sendMessageDisableWebPagePreview") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "sendMessageDisableNotification") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "sendMessageReplyToMessageId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe MessageId)) :*: S1 ('MetaSel ('Just "sendMessageReplyMarkup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SomeReplyMarkup))))))

data ForwardMessageRequest Source #

Request parameters for forwardMessage.

Constructors

ForwardMessageRequest 

Fields

Instances

Instances details
Generic ForwardMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep ForwardMessageRequest :: Type -> Type #

ToJSON ForwardMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

FromJSON ForwardMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep ForwardMessageRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep ForwardMessageRequest = D1 ('MetaData "ForwardMessageRequest" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) (C1 ('MetaCons "ForwardMessageRequest" 'PrefixI 'True) ((S1 ('MetaSel ('Just "forwardMessageChatId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SomeChatId) :*: S1 ('MetaSel ('Just "forwardMessageFromChatId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SomeChatId)) :*: (S1 ('MetaSel ('Just "forwardMessageDisableNotification") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "forwardMessageMessageId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MessageId))))

sendMessage

sendDocument :: SendDocumentRequest -> ClientM (Response Message) Source #

Use this method to send text messages. On success, the sent Message is returned.

https://core.telegram.org/bots/api#senddocument

data SendDocumentRequest Source #

Request parameters for sendDocument

Constructors

SendDocumentRequest 

Fields

Instances

Instances details
Generic SendDocumentRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

Associated Types

type Rep SendDocumentRequest :: Type -> Type #

ToJSON SendDocumentRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

ToMultipart Tmp SendDocumentRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SendDocumentRequest Source # 
Instance details

Defined in Telegram.Bot.API.Methods

type Rep SendDocumentRequest = D1 ('MetaData "SendDocumentRequest" "Telegram.Bot.API.Methods" "telegram-bot-simple-0.3.5-85jeK8iNljYq03ReTrVrT" 'False) (C1 ('MetaCons "SendDocumentRequest" 'PrefixI 'True) (((S1 ('MetaSel ('Just "sendDocumentChatId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SomeChatId) :*: S1 ('MetaSel ('Just "sendDocumentDocument") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DocumentFile)) :*: (S1 ('MetaSel ('Just "sendDocumentThumb") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)) :*: S1 ('MetaSel ('Just "sendDocumentCaption") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))) :*: ((S1 ('MetaSel ('Just "sendDocumentParseMode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ParseMode)) :*: S1 ('MetaSel ('Just "sendDocumentDisableNotification") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "sendDocumentReplyToMessageId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe MessageId)) :*: S1 ('MetaSel ('Just "sendDocumentReplyMarkup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SomeReplyMarkup))))))

toSendDocument :: SomeChatId -> DocumentFile -> SendDocumentRequest Source #

Generate send document structure.