2016-07-19 5 views
0

Есть ли способ проверить домен электронной почты или отправить подтверждение через API? Я хочу, чтобы мой клиент подтвердил свой домен электронной почты, когда они создают кампанию электронной почты на моем веб-сайте.PHP Amazon SES Проверка электронной почты

Я использую PHP AWS SDK v2. http://docs.aws.amazon.com/aws-sdk-php/v2/guide/service-ses.html

$mailbox_email = '[email protected]'; 

$aws_client = \Aws\Common\Aws::factory(array(
    'region' => 'eu-west-1', 
    'credentials' => array(
    'key'   => AWS_ACCESS, 
    'secret' => AWS_SECRET 
) 
)); 

$ses_client = $aws_client->get('Ses'); 

$ses_result = $ses_client->verifyEmailIdentity(['EmailAddress' => $mailbox_email]); 

// Set bounces, complaint, deliveries notification 
$ses_client->setIdentityNotificationTopic(array(
'Identity' => $mailbox_email, 
'NotificationType' => 'Bounce', 
'SnsTopic' => 'arn:aws:sns:eu-west-1:9:ses_bounces' 
)); 

$ses_client->setIdentityNotificationTopic(array(
'Identity' => $mailbox_email, 
'NotificationType' => 'Complaint', 
'SnsTopic' => 'arn:aws:sns:eu-west-1:9:ses_complaints' 
)); 

$ses_client->setIdentityNotificationTopic(array(
'Identity' => $mailbox_email, 
'NotificationType' => 'Delivery', 
'SnsTopic' => 'arn:aws:sns:eu-west-1:9:ses_deliveries' 
)); 

$ses_client->SetIdentityFeedbackForwardingEnabled(array(
'Identity' => $mailbox_email, 
'ForwardingEnabled' => false 
)); 

ответ

0

В AWS СЭС для электронной почты домена проверки вы должны сделать настройки DNS либо добавить запись DKIM или TXT, который не может быть сделано с помощью API, кроме домен находится в пути 53 и у вас есть доступ к учетной записи , Это способы проверки домена электронной почты. Таким образом, проверка домена электронной почты должна выполняться вручную.

http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-domains.html

Вы можете только проверить адрес электронной почты, с помощью AWS SES API.

http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html

+0

привет, я прочитал документ http://docs.aws .amazon.com/с es/latest/DeveloperGuide/verify-email-addresses.html, но не смог найти что-либо о том, как повторно отправить проверку электронной почты еще раз, если они не получат адрес электронной почты. – tonoslfx

+0

Вы хотите повторно отправить с консоли или из API? – error2007s

+0

Я хочу отправить подтверждение по электронной почте через API – tonoslfx

0

Проверка электронной почты

 //connect Amazon SES 
    $ses = new SimpleEmailService($this->AccessKey, $this->SecretKey,'email.eu-west-1.amazonaws.com'); 

    //Get verified mail list 
    $list = $ses->listVerifiedEmailAddresses(); 
    //verify email 
    $confirm = $ses->verifyEmailAddress('[email protected]'); 

Установить тему после того, как проверить электронный

$ses = Aws\Ses\SesClient::factory([ 
      'credentials' => [ 
       'key' => $this->AccessKey, 
       'secret' => $this->SecretKey, 
      ], 
      'version' => 'latest', 
      'region' => 'eu-west-1' 
     ]); 


     $ses_client = $ses->setIdentityNotificationTopic(array(
      'Identity' => $email, 
      'NotificationType' => 'Bounce', 
      'SnsTopic' => 'arn:aws:sns' 
     )); 

     $ses_client = $ses->setIdentityNotificationTopic(array(
      'Identity' => $email, 
      'NotificationType' => 'Complaint', 
      'SnsTopic' => 'arn:aws:sns' 
     )); 
Смежные вопросы