Add brevo smtp relay

This commit is contained in:
Johannes Zellner
2025-06-27 10:20:49 +02:00
parent 0a5fedf089
commit fe9ef2e85d

View File

@@ -14,6 +14,7 @@ const providers = [
{ provider: 'external-smtp', name: 'External SMTP server', host: '', port: 587 },
{ provider: 'external-smtp-noauth', name: 'External SMTP server (No Authentication)', host: '', port: 587 },
{ provider: 'ses-smtp', name: 'Amazon SES', host: 'email-smtp.us-east-1.amazonaws.com', port: 587, spfDoc: 'https://docs.aws.amazon.com/ses/latest/DeveloperGuide/spf.html' },
{ provider: 'brevo-smtp', name: 'Brevo', host: 'smtp-relay.brevo.com', port: 587, spfDoc: 'https://help.brevo.com/hc/en-us/articles/12163873383186-Authenticate-your-domain-with-Brevo-Brevo-code-DKIM-DMARC' },
{ provider: 'elasticemail-smtp', name: 'Elastic Email', host: 'smtp.elasticemail.com', port: 587, spfDoc: 'https://elasticemail.com/blog/marketing_tips/common-spf-errors' },
{ provider: 'google-smtp', name: 'Google', host: 'smtp.gmail.com', port: 587, spfDoc: 'https://support.google.com/a/answer/33786?hl=en' },
{ provider: 'mailgun-smtp', name: 'Mailgun', host: 'smtp.mailgun.org', port: 587, spfDoc: 'https://www.mailgun.com/blog/white-labeling-dns-records-your-customers-tips-tricks' },
@@ -53,6 +54,7 @@ function usesTokenAuth(provider) {
function usesPasswordAuth(provider) {
return provider === 'external-smtp'
|| provider === 'brevo-smtp'
|| provider === 'ses-smtp'
|| provider === 'google-smtp'
|| provider === 'mailgun-smtp'
@@ -144,7 +146,7 @@ async function onSubmit() {
@confirm="onSubmit()"
>
<div>
<SingleSelect v-model="provider" :options="providers" option-key="provider" option-label="name" @select="onProviderChange()"/>
<SingleSelect v-model="provider" :options="providers" option-key="provider" option-label="name" @select="onProviderChange()" style="display: flex;"/>
<div class="text-danger" style="margin: 10px 0;" v-if="provider === 'noop'">{{ $t(domain === adminDomain ? 'email.outbound.noopAdminDomainWarning' : 'email.outbound.noopNonAdminDomainWarning') }}</div>
@@ -185,7 +187,8 @@ async function onSubmit() {
</fieldset>
</form>
<div v-if="providerSpfDoc" class="text-danger" style="margin: 10px 0; " v-html="$t('email.outbound.mailRelay.spfDocInfo', { name: provider, spfDocsLink: providerSpfDoc })"></div>
<!-- set max-width here until Dialog supports that -->
<div v-if="providerSpfDoc" class="text-danger" style="margin: 10px 0; max-width: 600px" v-html="$t('email.outbound.mailRelay.spfDocInfo', { name: provider, spfDocsLink: providerSpfDoc })"></div>
</div>
</Dialog>