@@ -449,38 +449,47 @@ type Config struct {
449449 }
450450
451451 Notification struct {
452- Port int `env:"STARHUB_SERVER_NOTIFIER_PORT" default:"8095"`
453- Host string `env:"STARHUB_SERVER_NOTIFIER_HOST" default:"http://localhost"`
454- MailerHost string `env:"STARHUB_SERVER_MAILER_HOST" default:"smtp.qiye.aliyun.com"`
455- MailerPort int `env:"STARHUB_SERVER_MAILER_PORT" default:"465"`
456- MailerUsername string `env:"STARHUB_SERVER_MAILER_USERNAME" default:""`
457- MailerPassword string `env:"STARHUB_SERVER_MAILER_PASSWORD" default:""`
458- DirectMailEnabled bool `env:"STARHUB_SERVER_DIRECT_MAIL_ENABLED" default:"false"`
459- DirectMailAccessKeyID string `env:"STARHUB_SERVER_DIRECT_MAIL_ACCESS_KEY_ID" default:""`
460- DirectMailAccessKeySecret string `env:"STARHUB_SERVER_DIRECT_MAIL_ACCESS_KEY_SECRET" default:""`
461- DirectMailEndpoint string `env:"STARHUB_SERVER_DIRECT_MAIL_ENDPOINT" default:"dm.aliyuncs.com"`
462- DirectMailRegionId string `env:"STARHUB_SERVER_DIRECT_MAIL_REGION_ID" default:"cn-hangzhou"`
463- MailerRechargeAdmin string `env:"STARHUB_SERVER_MAILER_RECHARGE_ADMIN" default:"contact@opencsg.com"`
464- MailerWeeklyRechargesMail string `env:"STARHUB_SERVER_MAILER_WEEKLY_RECHARGES_MAIL" default:"reconcile@opencsg.com"`
465- EmailInvoiceCreatedReceiver string `env:"STARHUB_SERVER_EMAIL_INVOICE_CREATED_RECEIVER" default:"contact@opencsg.com"`
466- RepoSyncTimezone string `env:"STARHUB_SERVER_REPO_SYNC_TIMEZONE" default:"Asia/Shanghai"`
467- RepoSyncChatID string `env:"STARHUB_SERVER_REPO_SYNC_CHAT_ID" default:""`
468- NotificationRetryCount int `env:"STARHUB_SERVER_NOTIFIER_NOTIFICATION_RETRY_COUNT" default:"3"`
469- BroadcastUserPageSize int `env:"STARHUB_SERVER_NOTIFIER_BROADCAST_USER_PAGE_SIZE" default:"100"`
470- BroadcastEmailPageSize int `env:"STARHUB_SERVER_NOTIFIER_BROADCAST_EMAIL_PAGE_SIZE" default:"100"`
471- MsgDispatcherCount int `env:"STARHUB_SERVER_NOTIFIER_MSG_DISPATCHER_COUNT" default:"20"`
472- HighPriorityMsgBufferSize int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_BUFFER_SIZE" default:"100"`
473- NormalPriorityMsgBufferSize int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_BUFFER_SIZE" default:"50"`
474- HighPriorityMsgAckWait int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_ACK_WAIT" default:"60"`
475- NormalPriorityMsgAckWait int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_ACK_WAIT" default:"60"`
476- HighPriorityMsgMaxDeliver int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_MAX_DELIVER" default:"6"`
477- NormalPriorityMsgMaxDeliver int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_MAX_DELIVER" default:"6"`
478- DeduplicateWindow int `env:"STARHUB_SERVER_NOTIFIER_DEDUPLICATE_WINDOW" default:"5"` // 5 seconds
452+ Port int `env:"STARHUB_SERVER_NOTIFIER_PORT" default:"8095"`
453+ Host string `env:"STARHUB_SERVER_NOTIFIER_HOST" default:"http://localhost"`
454+ MailerHost string `env:"STARHUB_SERVER_MAILER_HOST" default:"smtp.qiye.aliyun.com"`
455+ MailerPort int `env:"STARHUB_SERVER_MAILER_PORT" default:"465"`
456+ MailerUsername string `env:"STARHUB_SERVER_MAILER_USERNAME" default:""`
457+ MailerPassword string `env:"STARHUB_SERVER_MAILER_PASSWORD" default:""`
458+ DirectMailEnabled bool `env:"STARHUB_SERVER_DIRECT_MAIL_ENABLED" default:"false"`
459+ DirectMailAccessKeyID string `env:"STARHUB_SERVER_DIRECT_MAIL_ACCESS_KEY_ID" default:""`
460+ DirectMailAccessKeySecret string `env:"STARHUB_SERVER_DIRECT_MAIL_ACCESS_KEY_SECRET" default:""`
461+ DirectMailEndpoint string `env:"STARHUB_SERVER_DIRECT_MAIL_ENDPOINT" default:"dm.aliyuncs.com"`
462+ DirectMailRegionId string `env:"STARHUB_SERVER_DIRECT_MAIL_REGION_ID" default:"cn-hangzhou"`
463+ MailerRechargeAdmin string `env:"STARHUB_SERVER_MAILER_RECHARGE_ADMIN" default:"contact@opencsg.com"`
464+ MailerWeeklyRechargesMail string `env:"STARHUB_SERVER_MAILER_WEEKLY_RECHARGES_MAIL" default:"reconcile@opencsg.com"`
465+ EmailInvoiceCreatedReceiver string `env:"STARHUB_SERVER_EMAIL_INVOICE_CREATED_RECEIVER" default:"contact@opencsg.com"`
466+ RepoSyncTimezone string `env:"STARHUB_SERVER_REPO_SYNC_TIMEZONE" default:"Asia/Shanghai"`
467+ RepoSyncChatID string `env:"STARHUB_SERVER_REPO_SYNC_CHAT_ID" default:""`
468+ NotificationRetryCount int `env:"STARHUB_SERVER_NOTIFIER_NOTIFICATION_RETRY_COUNT" default:"3"`
469+ BroadcastUserPageSize int `env:"STARHUB_SERVER_NOTIFIER_BROADCAST_USER_PAGE_SIZE" default:"100"`
470+ BroadcastEmailPageSize int `env:"STARHUB_SERVER_NOTIFIER_BROADCAST_EMAIL_PAGE_SIZE" default:"100"`
471+ MsgDispatcherCount int `env:"STARHUB_SERVER_NOTIFIER_MSG_DISPATCHER_COUNT" default:"20"`
472+ HighPriorityMsgBufferSize int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_BUFFER_SIZE" default:"100"`
473+ NormalPriorityMsgBufferSize int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_BUFFER_SIZE" default:"50"`
474+ HighPriorityMsgAckWait int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_ACK_WAIT" default:"60"`
475+ NormalPriorityMsgAckWait int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_ACK_WAIT" default:"60"`
476+ HighPriorityMsgMaxDeliver int `env:"STARHUB_SERVER_NOTIFIER_HIGH_PRIORITY_MSG_MAX_DELIVER" default:"6"`
477+ NormalPriorityMsgMaxDeliver int `env:"STARHUB_SERVER_NOTIFIER_NORMAL_PRIORITY_MSG_MAX_DELIVER" default:"6"`
478+ DeduplicateWindow int `env:"STARHUB_SERVER_NOTIFIER_DEDUPLICATE_WINDOW" default:"5"` // 5 seconds
479+
480+ // SMS Provider Configuration
481+ SMSProvider string `env:"STARHUB_SERVER_NOTIFIER_SMS_PROVIDER" default:"aliyun"` // aliyun, tencent, huawei
482+
479483 SMSSign string `env:"STARHUB_SERVER_NOTIFIER_SMS_SIGN" default:""`
480- SMSAccessKeyID string `env:"STARHUB_SERVER_NOTIFIER_SMS_ACCESS_KEY_ID" default:""`
481- SMSAccessKeySecret string `env:"STARHUB_SERVER_NOTIFIER_SMS_ACCESS_KEY_SECRET" default:""`
482484 SMSTemplateCodeForVerifyCodeCN string `env:"STARHUB_SERVER_NOTIFIER_SMS_TEMPLATE_CODE_FOR_VERIFY_CODE_CN" default:""`
483485 SMSTemplateCodeForVerifyCodeOversea string `env:"STARHUB_SERVER_NOTIFIER_SMS_TEMPLATE_CODE_FOR_VERIFY_CODE_OVERSEA" default:""`
486+
487+ // Alibaba Cloud SMS Configuration (Backward Compatibility)
488+ SMSAccessKeyID string `env:"STARHUB_SERVER_NOTIFIER_SMS_ACCESS_KEY_ID"`
489+ SMSAccessKeySecret string `env:"STARHUB_SERVER_NOTIFIER_SMS_ACCESS_KEY_SECRET"`
490+ SMSRegion string `env:"STARHUB_SERVER_NOTIFIER_SMS_REGION" default:"ap-guangzhou"`
491+ SMSEndpoint string `env:"STARHUB_SERVER_NOTIFIER_SMS_ENDPOINT"`
492+ SMSAppID string `env:"STARHUB_SERVER_NOTIFIER_SMS_APP_ID"` // Tencent SdkAppId / Huawei ProjectId
484493 }
485494
486495 Prometheus struct {
@@ -648,6 +657,7 @@ func loadConfig() (*Config, error) {
648657 if len (cfg .UniqueServiceName ) < 1 {
649658 cfg .UniqueServiceName = genServiceName ()
650659 }
660+
651661 return cfg , err
652662}
653663
0 commit comments