feat: Move notification settings to user profile and add i18n support
- Move notification config from system settings (.env) to user profile (database) - Add user-specific notification settings API endpoints (GET/PUT /api/user/notification-settings) - Add notification_settings column to qd_users table - Update portfolio and trading-assistant to use profile notification settings - Add notification settings UI in profile page with all channels (browser, telegram, email, phone, discord, webhook) - Add i18n translations for notification settings in 10 languages - Fix timestamp parsing in TradingRecords and portfolio (handle both ISO strings and Unix timestamps) - Fix header icons alignment for mobile responsive layout - Fix equity curve timestamp bug (handle datetime objects properly) - Remove unused login.js exports and clean up user.js store - Remove husky, commitlint and other dev dependencies - Clean up env.example by removing user-specific notification params - Update signal_notifier to prioritize user-specific tokens over global env vars
This commit is contained in:
@@ -1781,7 +1781,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': 'وزن الحداثة',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': 'وزن العائد',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': 'تمكين التحقق التلقائي',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'فاصل التحقق (ثانية)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'فاصل التحقق (ثانية)',
|
||||
|
||||
// Profile - Notification Settings (إعدادات الإشعارات)
|
||||
'profile.notifications.title': 'إعدادات الإشعارات',
|
||||
'profile.notifications.hint': 'قم بتكوين طرق الإشعارات الافتراضية، سيتم استخدامها تلقائياً عند إنشاء مراقبة الأصول والتنبيهات',
|
||||
'profile.notifications.defaultChannels': 'قنوات الإشعارات الافتراضية',
|
||||
'profile.notifications.browser': 'إشعار داخل التطبيق',
|
||||
'profile.notifications.email': 'البريد الإلكتروني',
|
||||
'profile.notifications.phone': 'رسالة نصية',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'أدخل Telegram Bot Token الخاص بك',
|
||||
'profile.notifications.telegramBotTokenHint': 'أنشئ بوت عبر @BotFather للحصول على Token',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'أدخل Telegram Chat ID الخاص بك (مثال: 123456789)',
|
||||
'profile.notifications.telegramHint': 'أرسل /start إلى @userinfobot للحصول على Chat ID',
|
||||
'profile.notifications.notifyEmail': 'بريد الإشعارات',
|
||||
'profile.notifications.emailPlaceholder': 'عنوان البريد الإلكتروني لاستلام الإشعارات',
|
||||
'profile.notifications.emailHint': 'يستخدم بريد الحساب بشكل افتراضي، يمكنك تعيين بريد آخر',
|
||||
'profile.notifications.phonePlaceholder': 'أدخل رقم الهاتف (مثال: +966501234567)',
|
||||
'profile.notifications.phoneHint': 'يحتاج المسؤول إلى تكوين خدمة Twilio',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'أنشئ Webhook في إعدادات خادم Discord',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'عنوان Webhook مخصص، يرسل الإشعارات عبر POST JSON',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (اختياري)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token للتحقق من الطلب',
|
||||
'profile.notifications.webhookTokenHint': 'يُرسل كـ Authorization: Bearer Token إلى Webhook',
|
||||
'profile.notifications.testBtn': 'إرسال إشعار تجريبي',
|
||||
'profile.notifications.saveSuccess': 'تم حفظ إعدادات الإشعارات بنجاح',
|
||||
'profile.notifications.selectChannel': 'الرجاء اختيار قناة إشعار واحدة على الأقل',
|
||||
'profile.notifications.fillTelegramToken': 'الرجاء إدخال Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': 'الرجاء إدخال Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': 'الرجاء إدخال بريد الإشعارات',
|
||||
'profile.notifications.testSent': 'تم إرسال الإشعار التجريبي، يرجى التحقق من قنوات الإشعارات'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -1831,7 +1831,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': 'Aktualitätsgewicht',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': 'Renditegewicht',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': 'Automatische Verifikation aktivieren',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Verifikationsintervall (Sek.)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Verifikationsintervall (Sek.)',
|
||||
|
||||
// Profile - Notification Settings (Benachrichtigungseinstellungen)
|
||||
'profile.notifications.title': 'Benachrichtigungseinstellungen',
|
||||
'profile.notifications.hint': 'Konfigurieren Sie Ihre Standard-Benachrichtigungsmethoden, die automatisch beim Erstellen von Asset-Monitoren und Alarmen verwendet werden',
|
||||
'profile.notifications.defaultChannels': 'Standard-Benachrichtigungskanäle',
|
||||
'profile.notifications.browser': 'In-App-Benachrichtigung',
|
||||
'profile.notifications.email': 'E-Mail',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Geben Sie Ihren Telegram Bot Token ein',
|
||||
'profile.notifications.telegramBotTokenHint': 'Erstellen Sie einen Bot über @BotFather um den Token zu erhalten',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'Geben Sie Ihre Telegram Chat ID ein (z.B. 123456789)',
|
||||
'profile.notifications.telegramHint': 'Senden Sie /start an @userinfobot um Ihre Chat ID zu erhalten',
|
||||
'profile.notifications.notifyEmail': 'Benachrichtigungs-E-Mail',
|
||||
'profile.notifications.emailPlaceholder': 'E-Mail-Adresse für Benachrichtigungen',
|
||||
'profile.notifications.emailHint': 'Verwendet standardmäßig die Konto-E-Mail, Sie können eine andere festlegen',
|
||||
'profile.notifications.phonePlaceholder': 'Telefonnummer eingeben (z.B. +49151234567)',
|
||||
'profile.notifications.phoneHint': 'Administrator muss Twilio-Dienst konfigurieren',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Erstellen Sie einen Webhook in den Discord-Servereinstellungen',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'Benutzerdefinierte Webhook-URL, Benachrichtigungen per POST JSON',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (Optional)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token zur Anfrage-Authentifizierung',
|
||||
'profile.notifications.webhookTokenHint': 'Wird als Authorization: Bearer Token an Webhook gesendet',
|
||||
'profile.notifications.testBtn': 'Testbenachrichtigung senden',
|
||||
'profile.notifications.saveSuccess': 'Benachrichtigungseinstellungen gespeichert',
|
||||
'profile.notifications.selectChannel': 'Bitte wählen Sie mindestens einen Benachrichtigungskanal',
|
||||
'profile.notifications.fillTelegramToken': 'Bitte Telegram Bot Token eingeben',
|
||||
'profile.notifications.fillTelegram': 'Bitte Telegram Chat ID eingeben',
|
||||
'profile.notifications.fillEmail': 'Bitte Benachrichtigungs-E-Mail eingeben',
|
||||
'profile.notifications.testSent': 'Testbenachrichtigung gesendet, bitte Benachrichtigungskanäle überprüfen'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -2505,6 +2505,41 @@ const locale = {
|
||||
'profile.referral.noReferrals': 'No referrals yet',
|
||||
'profile.referral.shareNow': 'Share Now',
|
||||
|
||||
// Profile - Notification Settings
|
||||
'profile.notifications.title': 'Notification Settings',
|
||||
'profile.notifications.hint': 'Configure your default notification methods, which will be used automatically when creating asset monitors and alerts',
|
||||
'profile.notifications.defaultChannels': 'Default Notification Channels',
|
||||
'profile.notifications.browser': 'In-App Notification',
|
||||
'profile.notifications.email': 'Email',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Enter your Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenHint': 'Get Token by creating a bot via @BotFather',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'Enter your Telegram Chat ID (e.g. 123456789)',
|
||||
'profile.notifications.telegramHint': 'Send /start to @userinfobot to get your Chat ID',
|
||||
'profile.notifications.notifyEmail': 'Notification Email',
|
||||
'profile.notifications.emailPlaceholder': 'Email address to receive notifications',
|
||||
'profile.notifications.emailHint': 'Uses your account email by default, or set a different one',
|
||||
'profile.notifications.phonePlaceholder': 'Enter phone number (e.g. +1234567890)',
|
||||
'profile.notifications.phoneHint': 'Requires admin to configure Twilio service',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Create Webhook in Discord server settings',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'Custom Webhook URL, notifications sent via POST JSON',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (Optional)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token for request authentication',
|
||||
'profile.notifications.webhookTokenHint': 'Sent as Authorization: Bearer Token to Webhook',
|
||||
'profile.notifications.testBtn': 'Send Test Notification',
|
||||
'profile.notifications.saveSuccess': 'Notification settings saved successfully',
|
||||
'profile.notifications.selectChannel': 'Please select at least one notification channel',
|
||||
'profile.notifications.fillTelegramToken': 'Please fill in Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': 'Please fill in Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': 'Please fill in notification email',
|
||||
'profile.notifications.testSent': 'Test notification sent, please check your notification channels',
|
||||
|
||||
// User Manage - Credits & VIP
|
||||
'userManage.credits': 'Credits',
|
||||
'userManage.adjustCredits': 'Adjust Credits',
|
||||
|
||||
@@ -1782,7 +1782,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': 'Poids de récence',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': 'Poids des rendements',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': 'Activer la vérification automatique',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Intervalle de vérification (s)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Intervalle de vérification (s)',
|
||||
|
||||
// Profile - Notification Settings (Paramètres de notification)
|
||||
'profile.notifications.title': 'Paramètres de notification',
|
||||
'profile.notifications.hint': 'Configurez vos méthodes de notification par défaut, utilisées automatiquement lors de la création de surveillances et alertes',
|
||||
'profile.notifications.defaultChannels': 'Canaux de notification par défaut',
|
||||
'profile.notifications.browser': 'Notification dans l\'app',
|
||||
'profile.notifications.email': 'E-mail',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Token du Bot Telegram',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Entrez votre Token Bot Telegram',
|
||||
'profile.notifications.telegramBotTokenHint': 'Créez un bot via @BotFather pour obtenir le Token',
|
||||
'profile.notifications.telegramChatId': 'Chat ID Telegram',
|
||||
'profile.notifications.telegramPlaceholder': 'Entrez votre Chat ID Telegram (ex: 123456789)',
|
||||
'profile.notifications.telegramHint': 'Envoyez /start à @userinfobot pour obtenir votre Chat ID',
|
||||
'profile.notifications.notifyEmail': 'E-mail de notification',
|
||||
'profile.notifications.emailPlaceholder': 'Adresse e-mail pour recevoir les notifications',
|
||||
'profile.notifications.emailHint': 'Utilise l\'e-mail du compte par défaut, vous pouvez en définir un autre',
|
||||
'profile.notifications.phonePlaceholder': 'Entrez le numéro de téléphone (ex: +33612345678)',
|
||||
'profile.notifications.phoneHint': 'L\'administrateur doit configurer le service Twilio',
|
||||
'profile.notifications.discordWebhook': 'Webhook Discord',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Créez un Webhook dans les paramètres du serveur Discord',
|
||||
'profile.notifications.webhookUrl': 'URL Webhook',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'URL Webhook personnalisée, notifications envoyées via POST JSON',
|
||||
'profile.notifications.webhookToken': 'Token Webhook (Optionnel)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token pour l\'authentification',
|
||||
'profile.notifications.webhookTokenHint': 'Envoyé comme Authorization: Bearer Token au Webhook',
|
||||
'profile.notifications.testBtn': 'Envoyer une notification test',
|
||||
'profile.notifications.saveSuccess': 'Paramètres de notification enregistrés',
|
||||
'profile.notifications.selectChannel': 'Veuillez sélectionner au moins un canal de notification',
|
||||
'profile.notifications.fillTelegramToken': 'Veuillez remplir le Token Bot Telegram',
|
||||
'profile.notifications.fillTelegram': 'Veuillez remplir le Chat ID Telegram',
|
||||
'profile.notifications.fillEmail': 'Veuillez remplir l\'e-mail de notification',
|
||||
'profile.notifications.testSent': 'Notification test envoyée, vérifiez vos canaux de notification'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -1786,7 +1786,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': '新しさ重み',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': '収益重み',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': '自動検証を有効化',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': '検証間隔(秒)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': '検証間隔(秒)',
|
||||
|
||||
// Profile - Notification Settings (通知設定)
|
||||
'profile.notifications.title': '通知設定',
|
||||
'profile.notifications.hint': 'デフォルトの通知方法を設定します。資産モニターやアラート作成時に自動的に使用されます',
|
||||
'profile.notifications.defaultChannels': 'デフォルト通知チャンネル',
|
||||
'profile.notifications.browser': 'アプリ内通知',
|
||||
'profile.notifications.email': 'メール',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Telegram Bot Tokenを入力してください',
|
||||
'profile.notifications.telegramBotTokenHint': '@BotFatherでボットを作成してTokenを取得してください',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'Telegram Chat IDを入力してください(例:123456789)',
|
||||
'profile.notifications.telegramHint': '@userinfobot に /start を送信してChat IDを取得してください',
|
||||
'profile.notifications.notifyEmail': '通知メール',
|
||||
'profile.notifications.emailPlaceholder': '通知を受け取るメールアドレス',
|
||||
'profile.notifications.emailHint': 'デフォルトはアカウントメール、別のメールも設定可能',
|
||||
'profile.notifications.phonePlaceholder': '電話番号を入力してください(例:+81901234567)',
|
||||
'profile.notifications.phoneHint': '管理者がTwilioサービスを設定する必要があります',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Discordサーバー設定でWebhookを作成してください',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'カスタムWebhook URL、POST JSONで通知を送信',
|
||||
'profile.notifications.webhookToken': 'Webhook Token(任意)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'リクエスト認証用Bearer Token',
|
||||
'profile.notifications.webhookTokenHint': 'Authorization: Bearer TokenとしてWebhookに送信',
|
||||
'profile.notifications.testBtn': 'テスト通知を送信',
|
||||
'profile.notifications.saveSuccess': '通知設定を保存しました',
|
||||
'profile.notifications.selectChannel': '少なくとも1つの通知チャンネルを選択してください',
|
||||
'profile.notifications.fillTelegramToken': 'Telegram Bot Tokenを入力してください',
|
||||
'profile.notifications.fillTelegram': 'Telegram Chat IDを入力してください',
|
||||
'profile.notifications.fillEmail': '通知メールを入力してください',
|
||||
'profile.notifications.testSent': 'テスト通知を送信しました。通知チャンネルを確認してください'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -1785,7 +1785,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': '시간 가중치',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': '수익 가중치',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': '자동 검증 사용',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': '검증 주기(초)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': '검증 주기(초)',
|
||||
|
||||
// Profile - Notification Settings (알림 설정)
|
||||
'profile.notifications.title': '알림 설정',
|
||||
'profile.notifications.hint': '기본 알림 방법을 설정하세요. 자산 모니터링 및 알림 생성 시 자동으로 사용됩니다',
|
||||
'profile.notifications.defaultChannels': '기본 알림 채널',
|
||||
'profile.notifications.browser': '앱 내 알림',
|
||||
'profile.notifications.email': '이메일',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Telegram Bot Token을 입력하세요',
|
||||
'profile.notifications.telegramBotTokenHint': '@BotFather에서 봇을 만들어 Token을 받으세요',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'Telegram Chat ID를 입력하세요 (예: 123456789)',
|
||||
'profile.notifications.telegramHint': '@userinfobot에 /start를 보내 Chat ID를 받으세요',
|
||||
'profile.notifications.notifyEmail': '알림 이메일',
|
||||
'profile.notifications.emailPlaceholder': '알림을 받을 이메일 주소',
|
||||
'profile.notifications.emailHint': '기본값은 계정 이메일이며 다른 이메일도 설정 가능',
|
||||
'profile.notifications.phonePlaceholder': '전화번호를 입력하세요 (예: +821012345678)',
|
||||
'profile.notifications.phoneHint': '관리자가 Twilio 서비스를 설정해야 합니다',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Discord 서버 설정에서 Webhook을 생성하세요',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': '커스텀 Webhook URL, POST JSON으로 알림 전송',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (선택)',
|
||||
'profile.notifications.webhookTokenPlaceholder': '요청 인증용 Bearer Token',
|
||||
'profile.notifications.webhookTokenHint': 'Authorization: Bearer Token으로 Webhook에 전송',
|
||||
'profile.notifications.testBtn': '테스트 알림 보내기',
|
||||
'profile.notifications.saveSuccess': '알림 설정이 저장되었습니다',
|
||||
'profile.notifications.selectChannel': '최소 하나의 알림 채널을 선택하세요',
|
||||
'profile.notifications.fillTelegramToken': 'Telegram Bot Token을 입력하세요',
|
||||
'profile.notifications.fillTelegram': 'Telegram Chat ID를 입력하세요',
|
||||
'profile.notifications.fillEmail': '알림 이메일을 입력하세요',
|
||||
'profile.notifications.testSent': '테스트 알림이 전송되었습니다. 알림 채널을 확인하세요'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -1782,7 +1782,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': 'ค่าน้ำหนักเวลา',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': 'ค่าน้ำหนักผลตอบแทน',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': 'เปิดใช้การตรวจสอบอัตโนมัติ',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'ช่วงเวลาตรวจสอบ (วินาที)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'ช่วงเวลาตรวจสอบ (วินาที)',
|
||||
|
||||
// Profile - Notification Settings (การตั้งค่าการแจ้งเตือน)
|
||||
'profile.notifications.title': 'การตั้งค่าการแจ้งเตือน',
|
||||
'profile.notifications.hint': 'กำหนดค่าวิธีการแจ้งเตือนเริ่มต้น จะถูกใช้โดยอัตโนมัติเมื่อสร้างการติดตามสินทรัพย์และการแจ้งเตือน',
|
||||
'profile.notifications.defaultChannels': 'ช่องทางแจ้งเตือนเริ่มต้น',
|
||||
'profile.notifications.browser': 'การแจ้งเตือนในแอป',
|
||||
'profile.notifications.email': 'อีเมล',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'กรอก Telegram Bot Token ของคุณ',
|
||||
'profile.notifications.telegramBotTokenHint': 'สร้างบอทผ่าน @BotFather เพื่อรับ Token',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'กรอก Telegram Chat ID ของคุณ (เช่น 123456789)',
|
||||
'profile.notifications.telegramHint': 'ส่ง /start ไปที่ @userinfobot เพื่อรับ Chat ID',
|
||||
'profile.notifications.notifyEmail': 'อีเมลแจ้งเตือน',
|
||||
'profile.notifications.emailPlaceholder': 'ที่อยู่อีเมลสำหรับรับการแจ้งเตือน',
|
||||
'profile.notifications.emailHint': 'ใช้อีเมลบัญชีเป็นค่าเริ่มต้น สามารถตั้งค่าอีเมลอื่นได้',
|
||||
'profile.notifications.phonePlaceholder': 'กรอกหมายเลขโทรศัพท์ (เช่น +66812345678)',
|
||||
'profile.notifications.phoneHint': 'ผู้ดูแลระบบต้องกำหนดค่าบริการ Twilio',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'สร้าง Webhook ในการตั้งค่าเซิร์ฟเวอร์ Discord',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'URL Webhook แบบกำหนดเอง ส่งการแจ้งเตือนผ่าน POST JSON',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (ไม่บังคับ)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token สำหรับยืนยันตัวตนคำขอ',
|
||||
'profile.notifications.webhookTokenHint': 'ส่งเป็น Authorization: Bearer Token ไปยัง Webhook',
|
||||
'profile.notifications.testBtn': 'ส่งการแจ้งเตือนทดสอบ',
|
||||
'profile.notifications.saveSuccess': 'บันทึกการตั้งค่าการแจ้งเตือนสำเร็จ',
|
||||
'profile.notifications.selectChannel': 'กรุณาเลือกอย่างน้อยหนึ่งช่องทางแจ้งเตือน',
|
||||
'profile.notifications.fillTelegramToken': 'กรุณากรอก Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': 'กรุณากรอก Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': 'กรุณากรอกอีเมลแจ้งเตือน',
|
||||
'profile.notifications.testSent': 'ส่งการแจ้งเตือนทดสอบแล้ว กรุณาตรวจสอบช่องทางแจ้งเตือนของคุณ'
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
@@ -2915,7 +2915,42 @@ const locale = {
|
||||
'settings.field.AGENT_MEMORY_W_RECENCY': 'Trọng số thời gian',
|
||||
'settings.field.AGENT_MEMORY_W_RETURNS': 'Trọng số lợi nhuận',
|
||||
'settings.field.ENABLE_REFLECTION_WORKER': 'Bật xác minh tự động',
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Khoảng thời gian xác minh (giây)'
|
||||
'settings.field.REFLECTION_WORKER_INTERVAL_SEC': 'Khoảng thời gian xác minh (giây)',
|
||||
|
||||
// Profile - Notification Settings (Cài đặt thông báo)
|
||||
'profile.notifications.title': 'Cài đặt thông báo',
|
||||
'profile.notifications.hint': 'Cấu hình phương thức thông báo mặc định, sẽ được sử dụng tự động khi tạo giám sát tài sản và cảnh báo',
|
||||
'profile.notifications.defaultChannels': 'Kênh thông báo mặc định',
|
||||
'profile.notifications.browser': 'Thông báo trong ứng dụng',
|
||||
'profile.notifications.email': 'Email',
|
||||
'profile.notifications.phone': 'SMS',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': 'Nhập Telegram Bot Token của bạn',
|
||||
'profile.notifications.telegramBotTokenHint': 'Tạo bot qua @BotFather để lấy Token',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': 'Nhập Telegram Chat ID của bạn (ví dụ: 123456789)',
|
||||
'profile.notifications.telegramHint': 'Gửi /start cho @userinfobot để lấy Chat ID',
|
||||
'profile.notifications.notifyEmail': 'Email thông báo',
|
||||
'profile.notifications.emailPlaceholder': 'Địa chỉ email nhận thông báo',
|
||||
'profile.notifications.emailHint': 'Mặc định sử dụng email tài khoản, có thể đặt email khác',
|
||||
'profile.notifications.phonePlaceholder': 'Nhập số điện thoại (ví dụ: +84123456789)',
|
||||
'profile.notifications.phoneHint': 'Cần quản trị viên cấu hình dịch vụ Twilio',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': 'Tạo Webhook trong cài đặt máy chủ Discord',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': 'URL Webhook tùy chỉnh, gửi thông báo qua POST JSON',
|
||||
'profile.notifications.webhookToken': 'Webhook Token (Tùy chọn)',
|
||||
'profile.notifications.webhookTokenPlaceholder': 'Bearer Token để xác thực yêu cầu',
|
||||
'profile.notifications.webhookTokenHint': 'Gửi dưới dạng Authorization: Bearer Token đến Webhook',
|
||||
'profile.notifications.testBtn': 'Gửi thông báo thử nghiệm',
|
||||
'profile.notifications.saveSuccess': 'Đã lưu cài đặt thông báo thành công',
|
||||
'profile.notifications.selectChannel': 'Vui lòng chọn ít nhất một kênh thông báo',
|
||||
'profile.notifications.fillTelegramToken': 'Vui lòng điền Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': 'Vui lòng điền Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': 'Vui lòng điền email thông báo',
|
||||
'profile.notifications.testSent': 'Đã gửi thông báo thử nghiệm, vui lòng kiểm tra các kênh thông báo'
|
||||
|
||||
}
|
||||
export default {
|
||||
|
||||
@@ -2315,6 +2315,41 @@ const locale = {
|
||||
'profile.referral.noReferrals': '暂无邀请记录',
|
||||
'profile.referral.shareNow': '立即分享邀请',
|
||||
|
||||
// Profile - Notification Settings (通知设置)
|
||||
'profile.notifications.title': '通知设置',
|
||||
'profile.notifications.hint': '配置您的默认通知方式,在创建资产监控和预警时将自动使用这些设置',
|
||||
'profile.notifications.defaultChannels': '默认通知渠道',
|
||||
'profile.notifications.browser': '站内通知',
|
||||
'profile.notifications.email': '邮件',
|
||||
'profile.notifications.phone': '短信',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': '请输入您的 Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenHint': '通过 @BotFather 创建机器人获取 Token',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': '请输入您的 Telegram Chat ID(如 123456789)',
|
||||
'profile.notifications.telegramHint': '发送 /start 给 @userinfobot 可获取您的 Chat ID',
|
||||
'profile.notifications.notifyEmail': '通知邮箱',
|
||||
'profile.notifications.emailPlaceholder': '接收通知的邮箱地址',
|
||||
'profile.notifications.emailHint': '默认使用账户邮箱,可设置其他邮箱接收通知',
|
||||
'profile.notifications.phonePlaceholder': '请输入手机号(如 +8613800138000)',
|
||||
'profile.notifications.phoneHint': '需要管理员配置 Twilio 服务后才能使用短信通知',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': '在 Discord 服务器设置中创建 Webhook',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': '自定义 Webhook 地址,将以 POST JSON 方式推送通知',
|
||||
'profile.notifications.webhookToken': 'Webhook Token(可选)',
|
||||
'profile.notifications.webhookTokenPlaceholder': '用于验证请求的 Bearer Token',
|
||||
'profile.notifications.webhookTokenHint': '将作为 Authorization: Bearer Token 发送到 Webhook',
|
||||
'profile.notifications.testBtn': '发送测试通知',
|
||||
'profile.notifications.saveSuccess': '通知设置保存成功',
|
||||
'profile.notifications.selectChannel': '请至少选择一个通知渠道',
|
||||
'profile.notifications.fillTelegramToken': '请填写 Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': '请填写 Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': '请填写通知邮箱',
|
||||
'profile.notifications.testSent': '测试通知已发送,请检查您的通知渠道',
|
||||
|
||||
// User Manage - Credits & VIP
|
||||
'userManage.credits': '积分',
|
||||
'userManage.adjustCredits': '调整积分',
|
||||
|
||||
@@ -2188,6 +2188,41 @@ const locale = {
|
||||
'profile.referral.noReferrals': '暫無邀請記錄',
|
||||
'profile.referral.shareNow': '立即分享邀請',
|
||||
|
||||
// Profile - Notification Settings (通知設定)
|
||||
'profile.notifications.title': '通知設定',
|
||||
'profile.notifications.hint': '配置您的預設通知方式,在建立資產監控和預警時將自動使用這些設定',
|
||||
'profile.notifications.defaultChannels': '預設通知管道',
|
||||
'profile.notifications.browser': '站內通知',
|
||||
'profile.notifications.email': '郵件',
|
||||
'profile.notifications.phone': '簡訊',
|
||||
'profile.notifications.telegramBotToken': 'Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenPlaceholder': '請輸入您的 Telegram Bot Token',
|
||||
'profile.notifications.telegramBotTokenHint': '透過 @BotFather 建立機器人取得 Token',
|
||||
'profile.notifications.telegramChatId': 'Telegram Chat ID',
|
||||
'profile.notifications.telegramPlaceholder': '請輸入您的 Telegram Chat ID(如 123456789)',
|
||||
'profile.notifications.telegramHint': '發送 /start 給 @userinfobot 可取得您的 Chat ID',
|
||||
'profile.notifications.notifyEmail': '通知信箱',
|
||||
'profile.notifications.emailPlaceholder': '接收通知的信箱地址',
|
||||
'profile.notifications.emailHint': '預設使用帳戶信箱,可設定其他信箱接收通知',
|
||||
'profile.notifications.phonePlaceholder': '請輸入手機號(如 +886912345678)',
|
||||
'profile.notifications.phoneHint': '需要管理員配置 Twilio 服務後才能使用簡訊通知',
|
||||
'profile.notifications.discordWebhook': 'Discord Webhook',
|
||||
'profile.notifications.discordPlaceholder': 'https://discord.com/api/webhooks/...',
|
||||
'profile.notifications.discordHint': '在 Discord 伺服器設定中建立 Webhook',
|
||||
'profile.notifications.webhookUrl': 'Webhook URL',
|
||||
'profile.notifications.webhookPlaceholder': 'https://your-server.com/webhook',
|
||||
'profile.notifications.webhookHint': '自訂 Webhook 地址,將以 POST JSON 方式推送通知',
|
||||
'profile.notifications.webhookToken': 'Webhook Token(可選)',
|
||||
'profile.notifications.webhookTokenPlaceholder': '用於驗證請求的 Bearer Token',
|
||||
'profile.notifications.webhookTokenHint': '將作為 Authorization: Bearer Token 傳送到 Webhook',
|
||||
'profile.notifications.testBtn': '發送測試通知',
|
||||
'profile.notifications.saveSuccess': '通知設定儲存成功',
|
||||
'profile.notifications.selectChannel': '請至少選擇一個通知管道',
|
||||
'profile.notifications.fillTelegramToken': '請填寫 Telegram Bot Token',
|
||||
'profile.notifications.fillTelegram': '請填寫 Telegram Chat ID',
|
||||
'profile.notifications.fillEmail': '請填寫通知信箱',
|
||||
'profile.notifications.testSent': '測試通知已發送,請檢查您的通知管道',
|
||||
|
||||
// Settings - Billing
|
||||
'settings.group.billing': '計費配置',
|
||||
'settings.field.BILLING_ENABLED': '啟用計費',
|
||||
|
||||
Reference in New Issue
Block a user