标签: amazon-ses

通过amazon ses发送HTML电子邮件

我正在使用亚马逊ses发送批量电子邮件.我的代码如下

public void sendMail(String sender, LinkedList<String> recipients, String subject, String body) {
    Destination destination = new Destination(recipients);
    try {
        ACCESS_KEY = EmailSender.prop.getProperty("accessKey");
        SECRET_KEY = EmailSender.prop.getProperty("secretKey");

        Content subjectContent = new Content(subject);
        Content bodyContent = new Content(body);
        Body msgBody = new Body(bodyContent);
        Message msg = new Message(subjectContent, msgBody);

        SendEmailRequest request = new SendEmailRequest(sender, destination, msg);

        AWSCredentials credentials = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY);
        AmazonSimpleEmailServiceClient sesClient = new AmazonSimpleEmailServiceClient(credentials);
        SendEmailResult result = sesClient.sendEmail(request);

        System.out.println(result + "Email sent");  
    }catch(Exception e) {
        System.out.println("Exception from EmailSender.java. Email not …
Run Code Online (Sandbox Code Playgroud)

java amazon-web-services amazon-ses

10
推荐指数
1
解决办法
1万
查看次数

使用PHPMailer和Amazon SES

我正在使用Amazon SES.我正在尝试使用PHPMailer从我的PHP脚本发送电子邮件.

我已经验证了两个电子邮件ID,并尝试向此邮件ID发送邮件.但它会引发以下错误.

错误

SERVER -> CLIENT: 220 email-smtp.amazonaws.com ESMTP SimpleEmailService-693939519  QEPGeLndQQq5vJ53VMXU
CLIENT -> SERVER: EHLO localhost
SERVER -> CLIENT: 250-email-smtp.amazonaws.com250-8BITMIME250-SIZE 10485760250- STARTTLS250-AUTH PLAIN LOGIN250 Ok
CLIENT -> SERVER: STARTTLS
SERVER -> CLIENT: 220 Ready to start TLS
CLIENT -> SERVER: EHLO localhost
SERVER -> CLIENT: 250-email-smtp.amazonaws.com250-8BITMIME250-SIZE 10485760250-STARTTLS250-AUTH PLAIN LOGIN250 Ok
CLIENT -> SERVER: AUTH LOGIN


SMTP NOTICE: EOF caught while checking if connected
SMTP connect() failed.
Mailer Error: SMTP connect() failed. …
Run Code Online (Sandbox Code Playgroud)

php email amazon-web-services amazon-ses

10
推荐指数
2
解决办法
2万
查看次数

配置Cognito用户池以使用SES发送电子邮件

今天早上,我在用户池设置中发现了一条以前从未注意到的警报:

在此处输入图片说明

我看着设置屏幕,有一个单选按钮:

在此处输入图片说明

我已经有一个发件人地址。如何使用CloudFormation将该设置设置为“是”?

Cognito CloudFormation文档看起来是这样的:

Type: AWS::Cognito::UserPool
Properties:
  AdminCreateUserConfig: 
    AdminCreateUserConfig
  AliasAttributes: 
    - String
  AutoVerifiedAttributes: 
    - String
  DeviceConfiguration: 
    DeviceConfiguration
  EmailConfiguration: 
    EmailConfiguration
  EmailVerificationMessage: String
  EmailVerificationSubject: String
  LambdaConfig: 
    LambdaConfig
  MfaConfiguration: String
  Policies: 
    Policies
  Schema: 
    - SchemaAttribute
  SmsAuthenticationMessage: String
  SmsConfiguration: 
    SmsConfiguration
  SmsVerificationMessage: String
  UsernameAttributes: 
    - String
  UserPoolName: String
  UserPoolTags: 
    String: String
Run Code Online (Sandbox Code Playgroud)

EmailConfiguration是我在其中设置发件人地址的地方,我想也许他们在此添加了该地址,但是EmailConfiguration文档似乎也没有任何内容。

知道如何配置Cognito用户池以将SES用于电子邮件吗?

amazon-web-services amazon-ses aws-cloudformation amazon-cognito aws-userpools

10
推荐指数
1
解决办法
622
查看次数

适用于Amazon SES的Node.js模块

Amazon Simple Email Service是否有任何Node.js模块?

亚马逊简单电子邮件服务(Amazon SES)是一种高度可扩展且经济高效的批量和交易电子邮件发送服务,适用于企业和开发人员.

提前致谢!

amazon-web-services node.js amazon-ses

9
推荐指数
2
解决办法
5079
查看次数

发布Indy TIdHTTP的问题

我使用Indy的TIdHTTP 向亚马逊的SES服务发布了问题.

这是我正在使用的代码示例:

procedure TMainFrm.btnAmazonSESClick(Sender: TObject);
var
  SSLHandler: TIdSSLIOHandlerSocket;
  HttpClient: TIdHTTP;  
  Params: TStringStream;
begin
  SSLHandler := TIdSSLIOHandlerSocket.Create(Self);
  HttpClient := TIdHTTP.Create(Self);  
  Params := TStringStream.create('');
  try
    with SSLHandler do
      SSLOptions.Method := sslvSSLv3
    with HttpClient do
    begin
      IOHandler := SSLHandler;
      AllowCookies := True;
      HandleRedirects := True;
      HTTPOptions := [hoForceEncodeParams];
      Request.ContentType := 'application/x-www-form-urlencoded';
    end;

    PageMemo.Text := HttpClient.Post('https://email.us-east-1.amazonaws.com?Action=VerifyEmailAddress&AWSAccessKeyId=012Some123Key46&EmailAddress=test@test%2Ecom', Params);

  finally
    SSLHandler.Free;
    HttpClient.Free; 
    Params.Free;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

结果

  • 在Indy 10.5.7下我收到错误:HTTP/1.1 404 Not Found

  • 在Indy 9.0.14下我得到错误:套接字错误#11004

调试试验

  • 同样的演示可以从HTTPS网页成功获取HTML.

  • 如果我将上面的URL粘贴到浏览器中,它会显示预期的XML结果.

我很感激有关这个事业的任何建议.

delphi amazon-ses

9
推荐指数
1
解决办法
1万
查看次数

Amazon SES:发送电子邮件标题

我正在使用来自http://sourceforge.net/projects/php-aws-ses/的包装器

我无法发送电子邮件标题

From: Name <email@example.com>
Run Code Online (Sandbox Code Playgroud)

有没有什么办法可以使用亚马逊ses发送标题.你推荐的任何其他PHP Wrapper允许我们这样做吗?

email amazon amazon-ses

9
推荐指数
2
解决办法
4701
查看次数

Amazon SES SMTP连接超时

我一直在尝试使用Sendmail和CentOS 6.5上的SES为我的应用程序设置电子邮件通知.根据AWS 文档,我已经使用SES配置了sendmail,

maillog说,

sendmail[29711]: s2QFCjnu027924: to=<abc@edf.com>, delay=00:52:09, xdelay=00:08:00, mailer=relay, pri=210717, relay=email-smtp.us-east-1.amazonaws.com [107.20.142.169], dsn=4.0.0, stat=Deferred: Connection timed out with email-smtp.us-east-1.amazonaws.com

所有邮件都在加入 mailq

# sendmail -v -q
Running /var/spool/mqueue/s2QFueiS001965 (sequence 1 of 21)
<abc@edf.com> Connecting to email-smtp.us-east-1.amazonaws.com port 25 via relay.
^C
Run Code Online (Sandbox Code Playgroud)

另外,我无法telnet到smtp地址,

# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 23.21.252.142...
^C
Run Code Online (Sandbox Code Playgroud)

但是nmap显示端口smtp(25)是开放和监听的,

# nmap -p 25 localhost

Starting Nmap 5.51 ( http://nmap.org ) at 2014-03-26 17:09 CET
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000080s latency).
PORT   STATE SERVICE …
Run Code Online (Sandbox Code Playgroud)

smtp sendmail amazon-web-services amazon-ses

9
推荐指数
2
解决办法
1万
查看次数

SES:在lambda函数中访问电子邮件正文

我是AWS的新手,我正在尝试通过Lambda Functions处理我的电子邮件.我在node.js中构建了这个:

'use strict';

exports.handler = (event, context, callback) => {

    var http = require('http');
    var data = JSON.stringify(event);

    var options = {
        host: 'my.host',
        port: '80',
        path: '/my/path',
        method: 'POST',
        headers: {
            'Content-Type': 'application/json; charset=utf-8',
            'Content-Length': data.length
        }
    };

    var req = http.request(options, function(res) {
        var msg = '';

        res.setEncoding('utf8');
        res.on('data', function(chunk) {
            msg += chunk;
        });
        res.on('end', function() {
            console.log(JSON.parse(msg));
        });
    });

    req.write(data);
    req.end();
};
Run Code Online (Sandbox Code Playgroud)

我已经使用端点进行了测试并且它运行良好,问题是我刚才意识到消息的主体永远不会被发送.如何访问邮件正文以发送邮件并由我的api处理?

如果您需要查看发送的样品,请告诉我.

amazon-web-services node.js amazon-ses aws-lambda

9
推荐指数
1
解决办法
3133
查看次数

无法从 EC2 实例元数据服务检索凭证

我正在尝试使用 SDK 通过 AWS SES API 发送电子邮件。

我的代码基于这里的官方文档:https : //docs.aws.amazon.com/ses/latest/DeveloperGuide/examples-send-using-sdk.html

我尽可能await client.SendEmailAsync(sendRequest);并收到错误消息:

无法从 EC2 实例元数据服务检索凭证。

// initialization
var client = new AmazonSimpleEmailServiceClient(RegionEndpoint.USWest2);
var response = new SendEmailResponse();

// build email
var sendRequest = new SendEmailRequest
{
    Source = ToAddress,
    Destination = new Destination
    {
        ToAddresses =
        new List<string> { ReceiverAddress }
    },
    Message = new Message
    {
        Subject = new Content(model.Subject),
        Body = new Body
        {
            Html = new Content
            {
                Charset = "UTF-8",
                Data = model.HtmlBody …
Run Code Online (Sandbox Code Playgroud)

c# email amazon-web-services amazon-ses .net-core

9
推荐指数
1
解决办法
1万
查看次数

有没有办法在Amazon SES上指定默认配置集?

我目前正在使用Firebase身份验证,并使用Amazon SES作为SMTP服务器来发送Firebase电子邮件,例如电子邮件验证,忘记密码等.

我目前还在Amazon SES中配置了一个配置集,它将发送,点击,退回,投诉等事件数据发送到Amazon Kinesis Firehose,然后将数据写入S3存储桶.

问题是,除非在特定电子邮件的标题中指定了配置集,否则电子邮件将不遵循SES中配置集的规则.但是,由于Firebase设置中的自定义有限,因此无法实现此功能.

有没有办法指定所有电子邮件应该使用的默认配置集(这样我就不需要在电子邮件标题中指定任何内容)?或者还有另一种方法可以解决这个问题吗?

amazon-web-services amazon-ses firebase-authentication

9
推荐指数
1
解决办法
489
查看次数