mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-04-26 09:26:07 +00:00
Extract bot command setup into trySetBotCommands
This commit is contained in:
parent
9611c9def6
commit
8f30d14716
1 changed files with 21 additions and 12 deletions
|
|
@ -249,18 +249,7 @@ func (t *Tgbot) Start(i18nFS embed.FS) error {
|
|||
return err
|
||||
}
|
||||
|
||||
// After bot initialization, set up bot commands with localized descriptions
|
||||
err = bot.SetMyCommands(context.Background(), &telego.SetMyCommandsParams{
|
||||
Commands: []telego.BotCommand{
|
||||
{Command: "start", Description: t.I18nBot("tgbot.commands.startDesc")},
|
||||
{Command: "help", Description: t.I18nBot("tgbot.commands.helpDesc")},
|
||||
{Command: "status", Description: t.I18nBot("tgbot.commands.statusDesc")},
|
||||
{Command: "id", Description: t.I18nBot("tgbot.commands.idDesc")},
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
logger.Warning("Failed to set bot commands:", err)
|
||||
}
|
||||
t.trySetBotCommands(bot)
|
||||
|
||||
// Start receiving Telegram bot messages
|
||||
tgBotMutex.Lock()
|
||||
|
|
@ -274,6 +263,26 @@ func (t *Tgbot) Start(i18nFS embed.FS) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (t *Tgbot) trySetBotCommands(bot *telego.Bot) {
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
logger.Warning("Failed to register bot commands (Telegram may be rate-limiting); bot will continue without them:", r)
|
||||
}
|
||||
}()
|
||||
|
||||
err := bot.SetMyCommands(context.Background(), &telego.SetMyCommandsParams{
|
||||
Commands: []telego.BotCommand{
|
||||
{Command: "start", Description: t.I18nBot("tgbot.commands.startDesc")},
|
||||
{Command: "help", Description: t.I18nBot("tgbot.commands.helpDesc")},
|
||||
{Command: "status", Description: t.I18nBot("tgbot.commands.statusDesc")},
|
||||
{Command: "id", Description: t.I18nBot("tgbot.commands.idDesc")},
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
logger.Warning("Failed to set bot commands:", err)
|
||||
}
|
||||
}
|
||||
|
||||
// createRobustFastHTTPClient creates a fasthttp.Client with proper connection handling
|
||||
func (t *Tgbot) createRobustFastHTTPClient(proxyUrl string) *fasthttp.Client {
|
||||
client := &fasthttp.Client{
|
||||
|
|
|
|||
Loading…
Reference in a new issue