mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-04-26 01:15:57 +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
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// After bot initialization, set up bot commands with localized descriptions
|
t.trySetBotCommands(bot)
|
||||||
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)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Start receiving Telegram bot messages
|
// Start receiving Telegram bot messages
|
||||||
tgBotMutex.Lock()
|
tgBotMutex.Lock()
|
||||||
|
|
@ -274,6 +263,26 @@ func (t *Tgbot) Start(i18nFS embed.FS) error {
|
||||||
return nil
|
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
|
// createRobustFastHTTPClient creates a fasthttp.Client with proper connection handling
|
||||||
func (t *Tgbot) createRobustFastHTTPClient(proxyUrl string) *fasthttp.Client {
|
func (t *Tgbot) createRobustFastHTTPClient(proxyUrl string) *fasthttp.Client {
|
||||||
client := &fasthttp.Client{
|
client := &fasthttp.Client{
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue