Back to Symfony

SMTP

src/Symfony/Component/Mailer/Bridge/Sweego/README.md

8.0.101.9 KB
Original Source

Sweego Bridge

Provides Sweego integration for Symfony Mailer.

Configuration example:

env
# SMTP
MAILER_DSN=sweego+smtp://LOGIN:PASSWORD@HOST:PORT

where:

  • LOGIN is your Sweego SMTP login
  • PASSWORD is your Sweego SMTP password
  • HOST is your Sweego SMTP host
  • PORT is your Sweego SMTP port
env
# API
MAILER_DSN=sweego+api://API_KEY@default

where:

  • API_KEY is your Sweego API Key

Features

Attachments

The bridge supports both regular attachments and inline attachments (for embedding images in HTML emails):

php
use Symfony\Component\Mime\Email;

$email = new Email();
$email
    ->to('[email protected]')
    ->from('[email protected]')
    ->subject('Email with attachments')
    ->text('Here is the text version')
    ->html('<p>Here is the HTML content</p>')
    // Regular attachment
    ->attach('Hello world!', 'test.txt', 'text/plain')
    // Inline attachment (embedded image)
    ->embed(fopen('image.jpg', 'r'), 'image.jpg', 'image/jpeg')
;

Webhook

Configure the webhook routing:

yaml
framework:
    webhook:
        routing:
            sweego_mailer:
                service: mailer.webhook.request_parser.sweego
                secret: '%env(SWEEGO_WEBHOOK_SECRET)%'

And a consumer:

php
#[AsRemoteEventConsumer(name: 'sweego_mailer')]
class SweegoMailEventConsumer implements ConsumerInterface
{
    public function consume(RemoteEvent|AbstractMailerEvent $event): void
    {
        // your code
    }
}

Help Symfony by sponsoring its development!

Resources