Align Remnawave config with official docs and fix admin health check
This commit is contained in:
+25
-26
@@ -26,7 +26,7 @@ func NewHandler(cfg *config.Config, api *tgbotapi.BotAPI) *Handler {
|
||||
return &Handler{
|
||||
cfg: cfg,
|
||||
api: api,
|
||||
panel: remnawave.NewClient(cfg.RemnawaveURL, cfg.RemnawaveToken, cfg.RemnawaveCaddy),
|
||||
panel: remnawave.NewClient(cfg.RemnawavePanelURL, cfg.RemnawaveAPIToken, cfg.CaddyAuthAPIToken),
|
||||
admin: cfg.TelegramAdminID,
|
||||
}
|
||||
}
|
||||
@@ -172,25 +172,32 @@ func (h *Handler) sendAdminHelp(chatID int64) {
|
||||
func (h *Handler) sendPanelConfig(chatID int64) {
|
||||
subURL := h.cfg.RemnawaveSubscription
|
||||
if subURL == "" {
|
||||
subURL = "не задан"
|
||||
subURL = "не задана (опционально)"
|
||||
}
|
||||
caddy := h.cfg.CaddyAuthAPIToken
|
||||
if caddy == "" {
|
||||
caddy = "не задан"
|
||||
} else {
|
||||
caddy = maskSecret(caddy)
|
||||
}
|
||||
text := fmt.Sprintf(
|
||||
"⚙️ *%s* (Remnawave)\n\n"+
|
||||
"• URL панели: `%s`\n"+
|
||||
"• URL подписки: `%s`\n"+
|
||||
"• API token: `%s`\n"+
|
||||
"• Caddy token: %s\n\n"+
|
||||
"Токен API: панель → *Settings → API Tokens*.\n"+
|
||||
"Документация: %s",
|
||||
escapeMarkdown(h.cfg.RemnawaveName),
|
||||
escapeMarkdown(h.cfg.RemnawaveURL),
|
||||
escapeMarkdown(subURL),
|
||||
escapeMarkdown(maskSecret(h.cfg.RemnawaveToken)),
|
||||
caddyStatus(h.cfg.RemnawaveCaddy),
|
||||
docsURL,
|
||||
"⚙️ %s (Remnawave)\n\n"+
|
||||
"REMNAWAVE_PANEL_URL:\n%s\n"+
|
||||
"(API: %s/api/... + Bearer REMNAWAVE_API_TOKEN)\n\n"+
|
||||
"REMNAWAVE_SUBSCRIPTION_URL (опц.):\n%s\n\n"+
|
||||
"REMNAWAVE_API_TOKEN: %s\n"+
|
||||
"CADDY_AUTH_API_TOKEN: %s\n\n"+
|
||||
"Токен: Remnawave Settings → API Tokens\n"+
|
||||
"Док: %s",
|
||||
h.cfg.RemnawaveName,
|
||||
h.cfg.RemnawavePanelURL,
|
||||
h.cfg.RemnawavePanelURL,
|
||||
subURL,
|
||||
maskSecret(h.cfg.RemnawaveAPIToken),
|
||||
caddy,
|
||||
"https://docs.rw/docs/install/subscription-page/bundled",
|
||||
)
|
||||
msg := tgbotapi.NewMessage(chatID, text)
|
||||
msg.ParseMode = "Markdown"
|
||||
msg.ReplyMarkup = adminInlineKeyboard()
|
||||
h.send(msg)
|
||||
}
|
||||
@@ -202,19 +209,11 @@ func (h *Handler) sendPanelCheck(chatID int64) {
|
||||
defer cancel()
|
||||
|
||||
report := h.panel.FullCheck(ctx, h.cfg.RemnawaveSubscription)
|
||||
text := remnawave.FormatReport(
|
||||
report,
|
||||
escapeMarkdown(h.cfg.RemnawaveName),
|
||||
escapeMarkdown(h.cfg.RemnawaveURL),
|
||||
)
|
||||
text := remnawave.FormatReport(report, h.cfg.RemnawaveName)
|
||||
|
||||
msg := tgbotapi.NewMessage(chatID, text)
|
||||
msg.ParseMode = "Markdown"
|
||||
msg.ReplyMarkup = adminInlineKeyboard()
|
||||
if err := h.sendReturnErr(msg); err != nil {
|
||||
msg.ParseMode = ""
|
||||
h.send(msg)
|
||||
}
|
||||
h.send(msg)
|
||||
}
|
||||
|
||||
func adminInlineKeyboard() tgbotapi.InlineKeyboardMarkup {
|
||||
|
||||
Reference in New Issue
Block a user