Amazon SES – posílání emailů přes amazon
- ondrapech
- Člen | 49
Ahoj, mám dotaz k nette mail
Chtěl bych v projektu nějak posílat emaily přes Amazon.
Chtěl bych si vytvořit nějaký AmazonMailer a ten by měl posílat emaily,
zajímá mě jestli můžu použít normálně třídu Mail pro vytvoření
emailu a celý ten email pak nacpat do té Amazon třídy co posílá
emialy?
A taky, pokud jste to někdo řešil. Tak jestli se to dá řešit nějak
elegantně globálně v celém projektu?
Díky za rady a tipy :)
- David Matějka
- Moderator | 6445
ahoj, nevim, jestli nekdo resil pro amazon ses, ale koukni na componette, kde se muzes pro inspiraci kouknout na mailery, ktere se napojuji na ruzna api (treba mailgun atd)
- Sitole
- Člen | 39
Ahoj,
já jsem při implementaci vycházel z https://github.com/…nette-mailer.
Toto řešení jsem si trošku upravil, abych mohl maily odesílat
asynchronně.
- Marek Bartoš
- Nette Blogger | 1274
@Sitole Máš to někde publikované? Bylo by to super ;)
Editoval Mabar (2. 9. 2019 13:35)
- Felix
- Nette Core | 1245
Mabar napsal(a):
@Sitole Máš to někde publikované? Bylo by to super ;)
AWS mailer by se skvele hodil do nasi (https://contributte.org/…te/mail.html) sbirky maileru.
- ondrapech
- Člen | 49
Sitole napsal(a):
Ahoj,
já jsem při implementaci vycházel z https://github.com/…nette-mailer.
Toto řešení jsem si trošku upravil, abych mohl maily odesílat asynchronně.
Zkusil jsem vycházet z tvojí třídy. Je to pěkné řešení. Jenom při
použití mi Aws vyhazuje vyjímku:
„Aws\Exception\CredentialsException – Cannot read credentials from …“,
nesetkal jsi se s tím? Já si myslím, že bude nějaká chyba u mě
v konfiguraci nebo tak něco.
$mailer = new SesMailer(
[
'credentials' => [
'key' => "XXXXXXXXXXXXXXXX",
'secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
],
'region' => 'eu-west-1',
'version' => 'latest'
]
);
$mailer->send($mail);
- Sitole
- Člen | 39
Já jsem si osobně v DI kontejneru vytvořil službu vracející AWS sdk connection a na ní si už jen volám sesClient, sqsClient. Ta tvoje chybová hláška dle mého není celá, což by se hodilo. Podle toho v dokumentaci najdeme čím to bude.
Nějaký náčrt našeho maileru mám zde: https://gist.github.com/…bc20db8cc179
Editoval Sitole (4. 9. 2019 19:30)
- ondrapech
- Člen | 49
Sitole napsal(a):
Já jsem si osobně v DI kontejneru vytvořil službu vracející AWS sdk connection a na ní si už jen volám sesClient, sqsClient. Ta tvoje chybová hláška dle mého není celá, což by se hodilo. Podle toho v dokumentaci najdeme čím to bude.
Nějaký náčrt našeho maileru mám zde: https://gist.github.com/…bc20db8cc179
TA hláška celá je „Cannot read credentials from C:\Users\pecho/.aws/credentials“ v případě Win. AWSko hledá credentials v souboru na serveru místo toho aby vzal ty co se mu předávají v konstruktoru. Nechápu proč.? Nemusí se to nějak nastavit?
Editoval ondrapech (5. 9. 2019 9:09)
- ondrapech
- Člen | 49
Ještě mě napadá jedna věc které úplně nerozumím. Možná je to na nové vlákno ale souvisí to. Chtěl bych key a secret (…) načítat do maileru z config.local.neon. Ideálně přes DI, že bych si tem mailer definoval jako službu v config.neon ale nevím jak se pak dostat k těm parametrům v config.local.neon. Jde to?