add rate limiter to telegram
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -10,15 +10,17 @@ import (
|
||||
|
||||
// Config содержит всю конфигурацию приложения, получаемую из переменных окружения.
|
||||
type Config struct {
|
||||
TelegramBotToken string `env:"TELEGRAM_BOT_TOKEN,required"`
|
||||
TelegramAdminIDsRaw string `env:"TELEGRAM_ADMIN_IDS,required"`
|
||||
TelegramCacheChatID int64 `env:"TELEGRAM_CACHE_CHAT_ID,required"`
|
||||
YandexMusicToken string `env:"YANDEX_MUSIC_TOKEN"`
|
||||
DatabasePath string `env:"DATABASE_PATH" envDefault:"/data/bot.db"`
|
||||
LogLevel string `env:"LOG_LEVEL" envDefault:"info"`
|
||||
ProcessorWorkers int `env:"PROCESSOR_WORKERS" envDefault:"4"`
|
||||
YandexAPIRateLimit int `env:"YANDEX_API_RATE_LIMIT" envDefault:"5"`
|
||||
TelegramAdminIDs []int64 `env:"-"` // Это поле будет заполнено после парсинга
|
||||
TelegramBotToken string `env:"TELEGRAM_BOT_TOKEN,required"`
|
||||
TelegramAdminIDsRaw string `env:"TELEGRAM_ADMIN_IDS,required"`
|
||||
TelegramCacheChatID int64 `env:"TELEGRAM_CACHE_CHAT_ID,required"`
|
||||
YandexMusicToken string `env:"YANDEX_MUSIC_TOKEN"`
|
||||
DatabasePath string `env:"DATABASE_PATH" envDefault:"/data/bot.db"`
|
||||
LogLevel string `env:"LOG_LEVEL" envDefault:"info"`
|
||||
ProcessorWorkers int `env:"PROCESSOR_WORKERS" envDefault:"4"`
|
||||
YandexAPIRateLimit int `env:"YANDEX_API_RATE_LIMIT" envDefault:"5"`
|
||||
TelegramAPIRateLimit int `env:"TELEGRAM_API_RATE_LIMIT" envDefault:"25"` // Общий лимит в секунду
|
||||
TelegramCacheRateLimitPerMinute int `env:"TELEGRAM_CACHE_RATE_LIMIT_PER_MINUTE" envDefault:"20"` // Лимит для кэш-канала в минуту
|
||||
TelegramAdminIDs []int64 `env:"-"`
|
||||
}
|
||||
|
||||
// New загружает конфигурацию из переменных окружения и парсит необходимые поля.
|
||||
|
||||
Reference in New Issue
Block a user