mirror of
https://github.com/krau/SaveAny-Bot.git
synced 2026-09-04 23:26:39 +08:00
refactor: remove unused conversation handling code and simplify delDir function parameters
This commit is contained in:
@@ -22,7 +22,6 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func AddToQueue(ctx *ext.Context, update *ext.Update) error {
|
func AddToQueue(ctx *ext.Context, update *ext.Update) error {
|
||||||
// TODO: 回调数据用户独立鉴权 (处理 bot 在群聊中的情况)
|
|
||||||
if !slice.Contain(config.Cfg.GetUsersID(), update.CallbackQuery.UserID) {
|
if !slice.Contain(config.Cfg.GetUsersID(), update.CallbackQuery.UserID) {
|
||||||
ctx.AnswerCallback(&tg.MessagesSetBotCallbackAnswerRequest{
|
ctx.AnswerCallback(&tg.MessagesSetBotCallbackAnswerRequest{
|
||||||
QueryID: update.CallbackQuery.QueryID,
|
QueryID: update.CallbackQuery.QueryID,
|
||||||
|
|||||||
@@ -1,75 +0,0 @@
|
|||||||
package bot
|
|
||||||
|
|
||||||
import (
|
|
||||||
"sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
type ConversationType string
|
|
||||||
|
|
||||||
type ConversationState struct {
|
|
||||||
sync.Mutex
|
|
||||||
conversationType ConversationType
|
|
||||||
InConversation bool
|
|
||||||
data map[ConversationType]map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConversationState) Reset() {
|
|
||||||
c.Lock()
|
|
||||||
defer c.Unlock()
|
|
||||||
c.InConversation = false
|
|
||||||
c.conversationType = ""
|
|
||||||
c.data = make(map[ConversationType]map[string]interface{})
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConversationState) SetConversationType(t ConversationType) {
|
|
||||||
c.Lock()
|
|
||||||
defer c.Unlock()
|
|
||||||
c.conversationType = t
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConversationState) GetData(key string) interface{} {
|
|
||||||
if c.data == nil || c.data[c.conversationType] == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
return c.data[c.conversationType][key]
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConversationState) SetData(key string, value interface{}) {
|
|
||||||
c.Lock()
|
|
||||||
defer c.Unlock()
|
|
||||||
if c.data == nil {
|
|
||||||
c.data = make(map[ConversationType]map[string]interface{})
|
|
||||||
}
|
|
||||||
if c.data[c.conversationType] == nil {
|
|
||||||
c.data[c.conversationType] = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
c.data[c.conversationType][key] = value
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: Implement conversation handling
|
|
||||||
// var userConversationState = make(map[int64]*ConversationState)
|
|
||||||
|
|
||||||
// func handleConversation(ctx *ext.Context, update *ext.Update) error {
|
|
||||||
// userID := update.EffectiveUser().GetID()
|
|
||||||
// state, ok := userConversationState[userID]
|
|
||||||
// if !ok {
|
|
||||||
// return dispatcher.ContinueGroups
|
|
||||||
// }
|
|
||||||
// if update.EffectiveMessage.Text == "/cancel" {
|
|
||||||
// state.Reset()
|
|
||||||
// ctx.Reply(update, ext.ReplyTextString("已取消"), nil)
|
|
||||||
// return dispatcher.EndGroups
|
|
||||||
// }
|
|
||||||
// if !state.InConversation {
|
|
||||||
// return dispatcher.ContinueGroups
|
|
||||||
// }
|
|
||||||
// return handleConversationState(ctx, update, state)
|
|
||||||
// }
|
|
||||||
|
|
||||||
// func handleConversationState(ctx *ext.Context, update *ext.Update, state *ConversationState) error {
|
|
||||||
// switch state.conversationType {
|
|
||||||
// default:
|
|
||||||
// common.Log.Errorf("Unknown conversation type: %s", state.conversationType)
|
|
||||||
// }
|
|
||||||
// return dispatcher.EndGroups
|
|
||||||
// }
|
|
||||||
+2
-2
@@ -77,7 +77,7 @@ func dirCmd(ctx *ext.Context, update *ext.Update) error {
|
|||||||
ctx.Reply(update, ext.ReplyTextString("路径ID无效"), nil)
|
ctx.Reply(update, ext.ReplyTextString("路径ID无效"), nil)
|
||||||
return dispatcher.EndGroups
|
return dispatcher.EndGroups
|
||||||
}
|
}
|
||||||
return delDir(ctx, update, user, dirID)
|
return delDir(ctx, update, dirID)
|
||||||
default:
|
default:
|
||||||
ctx.Reply(update, ext.ReplyTextString("未知操作"), nil)
|
ctx.Reply(update, ext.ReplyTextString("未知操作"), nil)
|
||||||
return dispatcher.EndGroups
|
return dispatcher.EndGroups
|
||||||
@@ -99,7 +99,7 @@ func addDir(ctx *ext.Context, update *ext.Update, user *dao.User, storageName, p
|
|||||||
return dispatcher.EndGroups
|
return dispatcher.EndGroups
|
||||||
}
|
}
|
||||||
|
|
||||||
func delDir(ctx *ext.Context, update *ext.Update, user *dao.User, dirID int) error {
|
func delDir(ctx *ext.Context, update *ext.Update, dirID int) error {
|
||||||
if err := dao.DeleteDirByID(uint(dirID)); err != nil {
|
if err := dao.DeleteDirByID(uint(dirID)); err != nil {
|
||||||
common.Log.Errorf("删除路径失败: %s", err)
|
common.Log.Errorf("删除路径失败: %s", err)
|
||||||
ctx.Reply(update, ext.ReplyTextString("删除路径失败"), nil)
|
ctx.Reply(update, ext.ReplyTextString("删除路径失败"), nil)
|
||||||
|
|||||||
Reference in New Issue
Block a user