feat: add feature enable/disable flags for notification platforms

- Add MATTERMOST_ENABLED, TELEGRAM_ENABLED, SYNOLOGY_ENABLED, NOTION_ENABLED, GA4_ENABLED flags
- Skip disabled platforms in message_sender.py
- Comment out unused config variables in .env.sample
- Add .vscode settings for virtual environment debugging
This commit is contained in:
2025-12-31 10:20:17 +09:00
parent 4ff5dba4b1
commit dd9564a326
4 changed files with 79 additions and 23 deletions

View File

@ -126,6 +126,7 @@ class Config:
# GA4 설정
self.ga4 = {
'enabled': self._get_bool('GA4_ENABLED', False),
'api_token': self._get_env('GA4_API_TOKEN', ''),
'property_id': self._get_int('GA4_PROPERTY_ID', 0),
'service_account_file': self._get_env('GA4_SERVICE_ACCOUNT_FILE', './conf/service-account-credentials.json'),
@ -183,6 +184,7 @@ class Config:
# Mattermost 설정
self.mattermost = {
'enabled': self._get_bool('MATTERMOST_ENABLED', False),
'url': self._get_env('MATTERMOST_URL', ''),
'token': self._get_env('MATTERMOST_TOKEN', ''),
'channel_id': self._get_env('MATTERMOST_CHANNEL_ID', ''),
@ -191,18 +193,21 @@ class Config:
# Telegram 설정
self.telegram = {
'enabled': self._get_bool('TELEGRAM_ENABLED', False),
'bot_token': self._get_env('TELEGRAM_BOT_TOKEN', ''),
'chat_id': self._get_env('TELEGRAM_CHAT_ID', ''),
}
# Synology Chat 설정
self.synology = {
'enabled': self._get_bool('SYNOLOGY_ENABLED', False),
'chat_url': self._get_env('SYNOLOGY_CHAT_URL', ''),
'chat_token': self._get_env('SYNOLOGY_CHAT_TOKEN', ''),
}
# Notion 설정
self.notion = {
'enabled': self._get_bool('NOTION_ENABLED', False),
'api_secret': self._get_env('NOTION_API_SECRET', ''),
}