Files
Hubert Chen a09d6e40df separate user and channel saved message
edit sticker download callback data prefix
2025-09-01 09:01:24 +08:00

56 lines
1.3 KiB
Go

package saved_message
import (
"context"
"errors"
"trbot/plugins/saved_message/channel"
"trbot/plugins/saved_message/common"
"trbot/plugins/saved_message/message_index"
"trbot/plugins/saved_message/personal"
"trbot/utils/plugin_utils"
"github.com/go-telegram/bot"
"github.com/meilisearch/meilisearch-go"
)
func Init() {
plugin_utils.AddInitializer(plugin_utils.Initializer{
Name: "Saved Message",
Func: func(ctx context.Context, thebot *bot.Bot) error {
err := common.ReadSavedMessageList(ctx)
if err != nil {
return err
}
if common.SavedMessageList.MeiliURL == "" {
return errors.New("the Meilisearch URL is not set")
} else {
common.MeilisearchClient = meilisearch.New(common.SavedMessageList.MeiliURL, meilisearch.WithAPIKey(common.SavedMessageList.MeiliAPI))
if common.SavedMessageList.ChannelID != 0 {
err = channel.InitChannelPart(ctx)
if err != nil {
return err
}
}
if common.SavedMessageList.AllowUserSave {
err = personal.InitUserPart(ctx)
if err != nil {
return err
}
}
message_index.Init(&common.MeilisearchClient)
}
return nil
},
})
plugin_utils.AddDataBaseHandler(plugin_utils.DatabaseHandler{
Name: "Saved Message",
Saver: common.SaveSavedMessageList,
Loader: common.ReadSavedMessageList,
})
}