2017 © Pedro Peláez
 

library mr-email

AWS SES raw email bulk sending.

image

sahil-gulati/mr-email

AWS SES raw email bulk sending.

  • Monday, November 20, 2017
  • by Sahil-Gulati
  • Repository
  • 1 Watchers
  • 7 Stars
  • 10 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 3 Forks
  • 0 Open issues
  • 2 Versions
  • 11 % Grown

The README.md

MREmail

AWS SES(Simple Email Service) raw emails bulk sending. This library enables a user to gather multiple email requests and execute those requests in one go. Each email request can be altered with customized options available for generating raw email content., (*1)

Installation

composer require sahil-gulati/mr-email, (*2)

OR, (*3)

{
    "require":{
        "sahil-gulati/mr-email": "2.0.0"
    }
}

composer install, (*4)

Note:
AWS V3 signature is supported in version 1.0.0.
AWS V4 signature is supported in version 2.0.0., (*5)

Creating SES Email

$sesEmail = new SESEmail("callback_function","AWSKEYXXXX","AWSSECRET-XXXXXX","us-east-1");

Creating SES EmailRequest

$sesRequestObj=new SESEmailRequest();
$sesRequestObj
    ->addReceiver($receiverEmail) 
    ->addSenderEmail($senderEmail)
    ->addSenderName($senderName)
    ->setContentType("application/json")  //Added in version 2.0.0
    ->setEmailSubject("testing email1!")
    ->setEmailBody("This is a email body")
    ->makeContent();

Adding SES EmailRequest

/**
 * Adding request in SESEmail
 */
$sesEmail->makeRequest($sesRequestObj);

Execution

/**
 * Executing gathered request
 */
$sesEmail->execute();
function callback_function($response,$requestNo,$parameters,$groupNo)
{
    print_r(func_get_args());
}

Running test


require_once 'vendor/autoload.php'; /** * Using namespace of MREmail */ use MREmail\SESEmail as SESEmail; use MREmail\SESEmailRequest as SESEmailRequest; $receiverEmail="sahil.gulati1991@outlook.com"; $senderEmail="someemail@gmail.com"; $senderName="Sahil Gulati"; /** * Note: While sending test email $senderEmail must be equal to $receiverEmail. */ $sesEmail = new SESEmail("callback_function","AWSKEYXXXX","AWSSECRET-XXXXXX","us-east-1"); $sesEmail->sendTestEmail($senderEmail);

Complete example with all together

 0 (Object) $classObject array => 1 (String) function_name(public) 
 * (Array) array => 0 (String) class_name array => 1 (String) function_name(public static) 
 */
$sesEmail = new SESEmail("callback_function","AWSKEYXXXX","AWSSECRET-XXXXXX","us-east-1");
/**
 * Initiating object of SESEmail request 1
 */
$sesRequestObj=new SESEmailRequest();
/**
 * Adding request in SESEmail
 */
$sesEmail->makeRequest(
            $sesRequestObj
            ->addReceiver($receiverEmail)
            ->addSenderEmail($senderEmail)
            ->addSenderName($senderName)
            ->setContentType("application/json")
            ->setEmailSubject("testing email1!")
            ->setEmailBody("This is a email body")
            ->makeContent()
        );
/**
 * Initiating object of SESEmail request 2
 */
$sesRequestObj=new SESEmailRequest();
/**
 * Adding request in SESEmail
 */
$sesEmail->makeRequest(
            $sesRequestObj
            ->addReceiver($receiverEmail)
            ->addSenderEmail($senderEmail)
            ->addSenderName($senderName)
            ->setEmailSubject("testing email2!")
            ->setEmailBody("This is a email body")
            ->makeContent()
        );
/**
 * Initiating object of SESEmail request 3
 */
$sesRequestObj=new SESEmailRequest();
/**
 * Adding request in SESEmail
 */
$sesEmail->makeRequest(
            $sesRequestObj
            ->addReceiver($receiverEmail)
            ->addSenderEmail($senderEmail)
            ->addSenderName($senderName)
            ->setEmailSubject("testing email3!")
            ->setEmailBody("This is a email body")
            ->makeContent()
        );
/**
 * Executing gathered request
 */
$sesEmail->execute();
function callback_function($response,$requestNo,$parameters,$groupNo)
{
    print_r(func_get_args());
}

?>

The Versions

20/11 2017

dev-master

9999999-dev

AWS SES raw email bulk sending.

  Sources   Download

The Requires

 

by Sahil Gulati

20/11 2017

1.0.0

1.0.0.0

AWS SES raw email bulk sending.

  Sources   Download

The Requires

 

by Sahil Gulati