asg-server/configs/config.example.yml
2025-09-24 13:47:55 +07:00

32 lines
1.8 KiB
YAML

gateway: # gateway config
mode: private # gateway mode (public - allow anonymous device registration, private - protected registration) [GATEWAY__MODE]
private_token: 123456789 # access token for device registration in private mode [GATEWAY__PRIVATE_TOKEN]
http: # http server config
listen: 127.0.0.1:3000 # listen address [HTTP__LISTEN]
proxies:
- "127.0.0.1" # proxy address [HTTP__PROXIES]
api:
host: # public API host [HTTP__API__HOST]
path: /api # public API path [HTTP__API__PATH]
openapi:
enabled: false # openapi enabled [HTTP__OPENAPI__ENABLED]
database: # database
dialect: mysql # database dialect (only mysql supported at the moment) [DATABASE__DIALECT]
host: localhost # database host [DATABASE__HOST]
port: 3306 # database port [DATABASE__PORT]
user: root # database user [DATABASE__USER]
password: root # database password [DATABASE__PASSWORD]
database: sms # database name [DATABASE__DATABASE]
timezone: UTC # database timezone (important for message TTL calculation) [DATABASE__TIMEZONE]
max_open_conns: 4 # database max open connections (default: 4 * CPU) [DATABASE__MAX_OPEN_CONNS]
max_idle_conns: 2 # database max idle connections (default: 2 * CPU) [DATABASE__MAX_IDLE_CONNS]
fcm: # firebase cloud messaging config
credentials_json: "{}" # firebase credentials json (for public mode only) [FCM__CREDENTIALS_JSON]
timeout_seconds: 1 # push notification send timeout [FCM__TIMEOUT_SECONDS]
debounce_seconds: 5 # push notification debounce (>= 5s) [FCM__DEBOUNCE_SECONDS]
cache: # cache config
url: memory:// # cache url (memory:// or redis://) [CACHE__URL]
tasks: # tasks config
hashing: # hashing task (hashes processed messages for privacy purposes)
interval_seconds: 15 # hashing interval in seconds [TASKS__HASHING__INTERVAL_SECONDS]