2016-02-08 13:47:10 +00:00
|
|
|
package tg
|
|
|
|
|
2016-02-19 11:20:13 +00:00
|
|
|
// BrokerUpdateType distinguishes update types coming from the broker
|
|
|
|
type BrokerUpdateType string
|
2016-02-08 16:52:13 +00:00
|
|
|
|
|
|
|
const (
|
2016-02-19 11:20:13 +00:00
|
|
|
// BMessage is a message update (mostly webhook updates)
|
|
|
|
BMessage BrokerUpdateType = "message"
|
|
|
|
|
|
|
|
// BFile is a file retrieval response update
|
|
|
|
BFile BrokerUpdateType = "file"
|
2016-02-08 16:52:13 +00:00
|
|
|
)
|
|
|
|
|
2016-02-19 11:20:13 +00:00
|
|
|
// BrokerUpdate is what is sent by the broker as update
|
|
|
|
type BrokerUpdate struct {
|
|
|
|
Type BrokerUpdateType
|
|
|
|
Callback *int
|
|
|
|
Message *APIMessage
|
|
|
|
Bytes []byte
|
|
|
|
}
|
|
|
|
|
|
|
|
// ClientCommandType distinguishes requests sent by clients to the broker
|
|
|
|
type ClientCommandType string
|
|
|
|
|
|
|
|
const (
|
|
|
|
// CmdSendTextMessage requests the broker to send a text message to a chat
|
|
|
|
CmdSendTextMessage ClientCommandType = "sendText"
|
|
|
|
|
|
|
|
// CmdSendPhoto requests the broker to send a photo to a chat
|
|
|
|
CmdSendPhoto ClientCommandType = "sendPhoto"
|
|
|
|
|
|
|
|
// CmdGetFile requests the broker to get a file from Telegram
|
|
|
|
CmdGetFile ClientCommandType = "getFile"
|
|
|
|
)
|
|
|
|
|
|
|
|
// ClientTextMessageData is the required data for a CmdSendTextMessage request
|
2016-02-09 10:01:05 +00:00
|
|
|
type ClientTextMessageData struct {
|
2016-02-09 10:33:38 +00:00
|
|
|
ChatID int
|
|
|
|
Text string
|
|
|
|
ReplyID *int
|
2016-02-08 16:52:13 +00:00
|
|
|
}
|
|
|
|
|
2016-02-19 11:20:13 +00:00
|
|
|
// FileRequestData is the required data for a CmdGetFile request
|
|
|
|
type FileRequestData struct {
|
|
|
|
FileID int
|
|
|
|
}
|
|
|
|
|
|
|
|
// ClientCommand is a request sent by clients to the broker
|
2016-02-08 13:47:10 +00:00
|
|
|
type ClientCommand struct {
|
2016-02-09 10:01:05 +00:00
|
|
|
Type ClientCommandType
|
|
|
|
TextMessageData *ClientTextMessageData
|
2016-02-19 11:20:13 +00:00
|
|
|
FileRequestData *FileRequestData
|
|
|
|
Callback *int
|
2016-02-08 13:47:10 +00:00
|
|
|
}
|