mirror of
https://github.com/tgdrive/teldrive.git
synced 2024-11-10 17:14:03 +08:00
77 lines
1.4 KiB
Go
77 lines
1.4 KiB
Go
package config
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
type Config struct {
|
|
Server ServerConfig
|
|
Log LoggingConfig
|
|
JWT JWTConfig
|
|
DB DBConfig
|
|
TG TGConfig
|
|
}
|
|
|
|
type ServerConfig struct {
|
|
Port int
|
|
GracefulShutdown time.Duration
|
|
EnablePprof bool
|
|
}
|
|
|
|
type TGConfig struct {
|
|
AppId int
|
|
AppHash string
|
|
RateLimit bool
|
|
RateBurst int
|
|
Rate int
|
|
DeviceModel string
|
|
SystemVersion string
|
|
AppVersion string
|
|
LangCode string
|
|
SystemLangCode string
|
|
LangPack string
|
|
SessionFile string
|
|
BgBotsLimit int
|
|
DisableStreamBots bool
|
|
BgBotsTimeout time.Duration
|
|
BgBotsCheckInterval time.Duration
|
|
Proxy string
|
|
ReconnectTimeout time.Duration
|
|
PoolSize int64
|
|
EnableLogging bool
|
|
Uploads struct {
|
|
EncryptionKey string
|
|
Threads int
|
|
MaxRetries int
|
|
Retention time.Duration
|
|
}
|
|
Stream struct {
|
|
MultiThreads int
|
|
Buffers int
|
|
ChunkTimeout time.Duration
|
|
}
|
|
}
|
|
|
|
type LoggingConfig struct {
|
|
Level int
|
|
Development bool
|
|
File string
|
|
}
|
|
|
|
type JWTConfig struct {
|
|
Secret string
|
|
SessionTime time.Duration
|
|
AllowedUsers []string
|
|
}
|
|
|
|
type DBConfig struct {
|
|
DataSource string
|
|
PrepareStmt bool
|
|
LogLevel int
|
|
Pool struct {
|
|
Enable bool
|
|
MaxOpenConnections int
|
|
MaxIdleConnections int
|
|
MaxLifetime time.Duration
|
|
}
|
|
}
|