Add Handle Functions to Response cmd
This commit is contained in:
parent
583a929c9b
commit
4060b60aee
90
handle.go
90
handle.go
@ -1,7 +1,95 @@
|
||||
package main
|
||||
|
||||
import tb "gopkg.in/tucnak/telebot.v2"
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/spf13/viper"
|
||||
tb "gopkg.in/tucnak/telebot.v2"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
const (
|
||||
bStartContent string = "欢迎使用E5SubBot!\n请输入命令以启用"
|
||||
)
|
||||
|
||||
var (
|
||||
UserStatus map[int64]int
|
||||
BindMaxNum int
|
||||
)
|
||||
|
||||
const (
|
||||
USNone = iota
|
||||
USUnbind
|
||||
USWillBind
|
||||
USBind
|
||||
)
|
||||
|
||||
func init() {
|
||||
//read config
|
||||
viper.SetConfigName("config")
|
||||
viper.AddConfigPath(".")
|
||||
err := viper.ReadInConfig()
|
||||
CheckErr(err)
|
||||
|
||||
BindMaxNum = viper.GetInt("bindmax")
|
||||
|
||||
UserStatus = make(map[int64]int)
|
||||
}
|
||||
func bStart(m *tb.Message) {
|
||||
bot.Send(m.Sender, bStartContent)
|
||||
}
|
||||
func bMy(m *tb.Message) {
|
||||
data := QueryData(db, m.Chat.ID)
|
||||
var inlineKeys = [][]tb.InlineButton{}
|
||||
for _, u := range data {
|
||||
inlineBtn := tb.InlineButton{
|
||||
Unique: u.refreshToken,
|
||||
Text: u.refreshToken,
|
||||
Data: u.uptime.Format("2006-01-02 15:04:05"),
|
||||
}
|
||||
bot.Handle(&inlineBtn, bMyinlineBtn)
|
||||
inlineKeys = append(inlineKeys, []tb.InlineButton{inlineBtn})
|
||||
}
|
||||
bot.Send(m.Chat, "Hello!", &tb.ReplyMarkup{InlineKeyboard: inlineKeys})
|
||||
}
|
||||
func bMyinlineBtn(c *tb.Callback) {
|
||||
bot.Send(c.Message.Chat, c.Data)
|
||||
bot.Respond(c)
|
||||
}
|
||||
func bBind(m *tb.Message) {
|
||||
tgId := m.Chat.ID
|
||||
fmt.Println("Auth: " + strconv.FormatInt(tgId, 10))
|
||||
bot.Send(m.Chat, "授权链接: [点击直达](https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=4d7c8a8a-0baf-497e-9608-57d6abfccce7&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%2Fe5sub%2F&response_mode=query&scope=openid%20offline_access%20mail.read%20user.read)", tb.ModeMarkdown)
|
||||
_, err := bot.Send(m.Chat, "授权后回复整个http://localhost", &tb.ReplyMarkup{ForceReply: true})
|
||||
if err == nil {
|
||||
UserStatus[m.Chat.ID] = USWillBind
|
||||
}
|
||||
|
||||
}
|
||||
func bAbout(m *tb.Message) {
|
||||
bot.Send(m.Sender, bStartContent)
|
||||
}
|
||||
func bOnText(m *tb.Message) {
|
||||
switch UserStatus[m.Chat.ID] {
|
||||
case USNone:
|
||||
{
|
||||
bot.Send(m.Chat, "发送/bind开始绑定嗷")
|
||||
return
|
||||
}
|
||||
case USWillBind:
|
||||
{
|
||||
if GetBindNum(m.Chat.ID) == BindMaxNum {
|
||||
bot.Send(m.Chat, "已经达到最大可绑定数")
|
||||
return
|
||||
}
|
||||
bot.Send(m.Chat, "正在绑定中……")
|
||||
info := BindUser(m)
|
||||
if info == "" {
|
||||
bot.Send(m.Chat, "绑定成功!")
|
||||
} else {
|
||||
bot.Send(m.Chat, info)
|
||||
}
|
||||
}
|
||||
case USBind:
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user