@@ -85,26 +85,44 @@ DSN::
85
85
$transport = Transport::fromDsn($dsn);
86
86
87
87
Where ``$dsn `` depends on the provider you want to use. For plain SMTP, use
88
- ``smtp://user:pass@example.com `` or ``smtp://sendmail `` to use the ``sendmail ``
89
- binary. For third-party providers, refers to the following table:
90
-
91
- ==================== ================================== ================================== ================================
92
- Provider SMTP HTTP API
93
- ==================== ================================== ================================== ================================
94
- Amazon SES smtp://ACCESS_KEY:SECRET_KEY@ses http://ACCESS_KEY:SECRET_KEY@ses api://ACCESS_KEY:SECRET_KEY@ses
95
- Google Gmail smtp://USERNAME:PASSWORD@gmail n/a n/a
96
- Mailchimp Mandrill smtp://USERNAME:PASSWORD@mandrill http://KEY@mandrill api://KEY@mandrill
97
- Mailgun smtp://USERNAME:PASSWORD@mailgun http://KEY:DOMAIN@mailgun api://KEY:DOMAIN@mailgun
98
- Postmark smtp://ID:ID@postmark n/a api://KEY@postmark
99
- Sendgrid smtp://apikey:KEY@sendgrid n/a api://KEY@sendgrid
100
- ==================== ================================== ================================== ================================
88
+ ``smtp://user:pass@example.com `` or ``sendmail+smtp://default `` to use the
89
+ ``sendmail `` binary. To disable the transport, use ``null://null ``.
90
+
91
+ For third-party providers, refers to the following table:
92
+
93
+ ==================== ========================================== =========================================== ========================================
94
+ Provider SMTP HTTP API
95
+ ==================== ========================================== =========================================== ========================================
96
+ Amazon SES ses+smtp://ACCESS_KEY:SECRET_KEY@default ses+https://ACCESS_KEY:SECRET_KEY@default ses+api://ACCESS_KEY:SECRET_KEY@default
97
+ Google Gmail gmail+smtp://USERNAME:PASSWORD@default n/a n/a
98
+ Mailchimp Mandrill mandrill+smtp://USERNAME:PASSWORD@default mandrill+https://KEY@default mandrill+api://KEY@default
99
+ Mailgun mailgun+smtp://USERNAME:PASSWORD@default mailgun+https://KEY:DOMAIN@default mailgun+api://KEY:DOMAIN@default
100
+ Postmark postmark+smtp://ID:ID@default n/a postmark+api://KEY@default
101
+ Sendgrid sendgrid+smtp://apikey:KEY@default n/a sendgrid+api://KEY@default
102
+ ==================== ========================================== =========================================== ========================================
103
+
104
+ Instead of choosing a specific protocol, you can also let Symfony pick the
105
+ "best" one by omitting it from the scheme: for instance,
106
+ ``mailgun://KEY:DOMAIN@default `` is equivalent to
107
+ ``mailgun+https://KEY:DOMAIN@default ``.
108
+
109
+ If you want to override the default host for a provider (to debug an issue with
110
+ a requestb.in like service), change ``default `` by your host:
111
+
112
+
113
+ .. code-block :: bash
114
+
115
+ mailgun+https://KEY:DOMAIN@example.com
116
+ mailgun+https://KEY:DOMAIN@example.com:99
117
+
118
+ Note that the protocol is *always * HTTPs and cannot be changed.
101
119
102
120
Failover Transport
103
121
------------------
104
122
105
123
You can create failover transport with the help of `|| ` operator::
106
124
107
- $dsn = 'api://id@postmark || smtp://key@sendgrid ';
125
+ $dsn = 'postmark+ api://ID@default || sendgrid+ smtp://KEY@default ';
108
126
109
127
So if the first transport fails, the mailer will attempt to send through the
110
128
second transport.
@@ -115,7 +133,7 @@ Round Robin
115
133
If you want to send emails by using multiple transports in a round-robin fashion,
116
134
you can use the ``&& `` operator between the transports::
117
135
118
- $dsn = 'api://id@postmark && smtp://key@sendgrid'
136
+ $dsn = 'postmark+ api://ID@default && sendgrid+ smtp://KEY@default';
119
137
120
138
Sending emails asynchronously
121
139
-----------------------------
0 commit comments