methods

package
v0.0.0-...-a157c36 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2018 License: MIT Imports: 12 Imported by: 8

Documentation

Index

Constants

View Source
const (
	// 解析HTML
	ParseModeHTML = "HTML"
	// 解析Markdown
	ParseModeMarkdown = "Markdown"
)

Variables

This section is empty.

Functions

func DelWebhook

func DelWebhook(apiaccess, token string) error

Types

type Bot

type Bot struct {
	ID        int64  `json:"id"`         // 机器人唯一ID
	FirstName string `json:"first_name"` // name
	LastName  string `json:"last_name"`  // name
	UserName  string `json:"username"`   // 机器人用户名
}

机器人信息

type BotExt

type BotExt struct {
	Bot
	Token     string // 机器人Token
	APIAccess string // 机器人API网站
}

机器人扩展信息

func GetMe

func GetMe(apiaccess, token string) (*BotExt, error)

获取机器人信息

func (*BotExt) AnswerCallbackQuery

func (bot *BotExt) AnswerCallbackQuery(query *types.CallbackQuery, text string, alert bool, url string, cacheTime int32) error

应答查询回调

func (*BotExt) AnswerInlineQuery

func (bot *BotExt) AnswerInlineQuery(query *types.InlineQuery, offset *int32, cacheTime int32,
	results []InlineQueryResult) error

应答内联查询

func (*BotExt) Call

func (bot *BotExt) Call(methodName string, request interface{}) ([]byte, error)

调用方法

func (*BotExt) EditMessageReplyMarkup

func (bot *BotExt) EditMessageReplyMarkup(message *types.Message, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

标记消息回复标记

func (*BotExt) EditMessageReplyMarkupDisableWebPagePreview

func (bot *BotExt) EditMessageReplyMarkupDisableWebPagePreview(message *types.Message, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

标记消息回复标记并禁用网页预览

func (*BotExt) EditReplyMarkup

func (bot *BotExt) EditReplyMarkup(chatID int64, messageID int32, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

编辑消息回复标记

func (*BotExt) EditReplyMarkupByInlineMessageID

func (bot *BotExt) EditReplyMarkupByInlineMessageID(inlineMessageID, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

编辑消息回复标记

func (*BotExt) EditReplyMarkupDisableWebPagePreview

func (bot *BotExt) EditReplyMarkupDisableWebPagePreview(chatID int64, messageID int32, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

标记消息回复标记并禁用网页预览

func (*BotExt) GetFile

func (bot *BotExt) GetFile(fileID string) ([]byte, error)

获取文件

func (*BotExt) GetUpdates

func (bot *BotExt) GetUpdates(timeout, offset uint32) ([]*types.Update, error)

获取更新

func (*BotExt) ReplyMessage

func (bot *BotExt) ReplyMessage(message *types.Message, text string, mdMode bool,
	markup interface{}) (*types.Message, error)

回复消息

func (*BotExt) ReplyMessageDisableWebPagePreview

func (bot *BotExt) ReplyMessageDisableWebPagePreview(message *types.Message, text string, mdMode bool,
	markup *InlineKeyboardMarkup) (*types.Message, error)

回复消息并禁用网页预览

func (*BotExt) ReplyPhoto

func (bot *BotExt) ReplyPhoto(message *types.Message, caption string, fileID string,
	markup *InlineKeyboardMarkup) (*types.Message, error)

回复照片

func (*BotExt) SendDocument

func (bot *BotExt) SendDocument(chatID int64, caption string, fileID string,
	markup *InlineKeyboardMarkup) (*types.Message, error)

发送文档

func (*BotExt) SendDocumentFile

func (bot *BotExt) SendDocumentFile(chatID int64, caption string, file []byte,
	filename string, markup *InlineKeyboardMarkup) (*types.Message, error)

发送文档文件

func (*BotExt) SendMessage

func (bot *BotExt) SendMessage(chatID int64, text string, mdMode bool,
	markup interface{}) (*types.Message, error)

发送消息

func (*BotExt) SendMessageDisableWebPagePreview

func (bot *BotExt) SendMessageDisableWebPagePreview(chatID int64, text string, mdMode bool,
	markup interface{}) (*types.Message, error)

发送消息并禁用网页预览

func (*BotExt) SendPhoto

func (bot *BotExt) SendPhoto(chatID int64, caption string, fileID string,
	markup *InlineKeyboardMarkup) (*types.Message, error)

发送照片

func (*BotExt) SendPhotoFile

func (bot *BotExt) SendPhotoFile(chatID int64, caption string, file []byte,
	markup *InlineKeyboardMarkup) (*types.Message, error)

发送照片文件

func (*BotExt) SendSticker

func (bot *BotExt) SendSticker(chatID int64, fileID string,
	markup *InlineKeyboardMarkup) (*types.Message, error)

发送贴纸

func (*BotExt) SendStickerFile

func (bot *BotExt) SendStickerFile(chatID int64, file []byte,
	markup *InlineKeyboardMarkup) (*types.Message, error)

发送贴纸文件

func (*BotExt) SetWebhook

func (bot *BotExt) SetWebhook(url string, certificate []byte, maxConnections int32,
	allowedUpdates []string) error

设置webhook

func (*BotExt) Upload

func (bot *BotExt) Upload(methodName string, formdata []Field) ([]byte, error)

上传文件

type ErrorResonpe

type ErrorResonpe struct {
	OK          bool   `json:"ok"`          // 是否成功
	ErrorCode   int32  `json:"error_code"`  // 错误代码
	Description string `json:"description"` // 描述信息
}

错误响应

type Field

type Field struct {
	Name     string // 字段名
	Text     string // 文本
	File     []byte // 文件
	FileName string // 文件名
}

字段信息

func (*Field) IsFile

func (f *Field) IsFile() bool

是否文件

type GetMeResonpe

type GetMeResonpe struct {
	OK     bool `json:"ok"`     // 是否成功
	Result *Bot `json:"result"` // 机器人信息
}

获取信息响应

type InlineKeyboardButton

type InlineKeyboardButton struct {
	Text                         string `json:"text"`                                       // 按钮文本标签
	URL                          string `json:"url,omitempty"`                              // 打开地址
	CallbackData                 string `json:"callback_data,omitempty"`                    // 回调数据
	SwitchInlineQuery            string `json:"switch_inline_query,omitempty"`              // 切换内联查询
	SwitchInlineQueryCurrentChat string `json:"switch_inline_query_current_chat,omitempty"` // 切换内联查询到当前聊天
}

内联键盘按钮

type InlineKeyboardMarkup

type InlineKeyboardMarkup struct {
	InlineKeyboard [][]*InlineKeyboardButton `json:"inline_keyboard"` // 按钮列表
}

内联键盘

func MakeInlineKeyboardMarkup

func MakeInlineKeyboardMarkup(menus []InlineKeyboardButton, columns ...int) *InlineKeyboardMarkup

生成回调键盘

func MakeInlineKeyboardMarkupAuto

func MakeInlineKeyboardMarkupAuto(menus []InlineKeyboardButton, columns uint) *InlineKeyboardMarkup

生成回调内联键盘(自动排版)

func (*InlineKeyboardMarkup) Merge

合并内联键盘

func (*InlineKeyboardMarkup) ToJSON

func (markup *InlineKeyboardMarkup) ToJSON() ([]byte, error)

转换为

type InlineQueryResult

type InlineQueryResult interface {
	SetType()
}

内联查询结果接口

type InlineQueryResultArticle

type InlineQueryResultArticle struct {
	Type                string                `json:"type"`                   // 结果类型
	ID                  string                `json:"id"`                     // 结果ID
	Title               string                `json:"title"`                  // 标题
	InputMessageContent InputMessageContent   `json:"input_message_content"`  // 消息内容
	ReplyMarkup         *InlineKeyboardMarkup `json:"reply_markup,omitempty"` // Reply Markup
	Description         string                `json:"description,omitempty"`  // 描述
	URL                 string                `json:"url,omitempty"`          // 地址
	HideURL             bool                  `json:"hide_url,omitempty"`     // 隐藏地址
	ThumbURL            string                `json:"thumb_url,omitempty"`    // 缩略图地址
	ThumbWidth          int32                 `json:"thumb_width,omitempty"`  // 缩略图宽度
	ThumbHeight         int32                 `json:"thumb_height,omitempty"` // 缩略图高度
}

文章结果

func (*InlineQueryResultArticle) SetType

func (result *InlineQueryResultArticle) SetType()

设置类型

type InputMessageContent

type InputMessageContent interface{}

输入消息内容接口

type InputTextMessageContent

type InputTextMessageContent struct {
	MessageText           string `json:"message_text"`             // 消息文本
	ParseMode             string `json:"parse_mode"`               // 解析模式
	DisableWebPagePreview bool   `json:"disable_web_page_preview"` // 禁用页面预览
}

输入文本消息内容

type KeyboardButton

type KeyboardButton struct {
	Text            string `json:"text"`                       // 按钮文本标签
	RequestContact  bool   `json:"request_contact,omitempty"`  // 发送联系人信息
	RequestLocation bool   `json:"request_location,omitempty"` // 发送位置信息
}

键盘按钮

type ReplyKeyboardMarkup

type ReplyKeyboardMarkup struct {
	Keyboard        [][]*KeyboardButton `json:"keyboard"`                    // 按钮列表
	ResizeKeyboard  bool                `json:"resize_keyboard,omitempty"`   // 自动设置大小
	OneTimeKeyboard bool                `json:"one_time_keyboard,omitempty"` // 使用键盘时隐藏自定义键盘
	Selective       bool                `json:"selective,omitempty"`         // 特定用户可见
}

回复键盘

func MakeReplyKeyboardMarkup

func MakeReplyKeyboardMarkup(menus []KeyboardButton, columns ...int) *ReplyKeyboardMarkup

生成回复键盘

func MakeReplyKeyboardMarkupAuto

func MakeReplyKeyboardMarkupAuto(menus []KeyboardButton, columns uint) *ReplyKeyboardMarkup

生成回复键盘(自动排版)

func (*ReplyKeyboardMarkup) ToJSON

func (markup *ReplyKeyboardMarkup) ToJSON() ([]byte, error)

转换为

type ReplyKeyboardRemove

type ReplyKeyboardRemove struct {
	RemoveKeyboard bool `json:"remove_keyboard"`     // 删除键盘
	Selective      bool `json:"selective,omitempty"` // 指定人可见
}

删除回复键盘

func (*ReplyKeyboardRemove) ToJSON

func (markup *ReplyKeyboardRemove) ToJSON() ([]byte, error)

转换为

type SendMessageResonpe

type SendMessageResonpe struct {
	OK     bool           `json:"ok"`     // 是否成功
	Result *types.Message `json:"result"` // 消息内容
}

发送消息响应

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL