SesDashboard Documentation - Analytics UI for Amazon Simple Email Service.
Installation
There are several ways to install app.
AWS Marketplace
Docker installation
Regular installation
AWS Marketplace
There is an AWS Marketplace prebuild app: https://aws.amazon.com/marketplace/pp/Nikeev-SesDashboard/B08DQ5CY6T
Docker installation
Git clone
https://github.com/Nikeev/sesdashboard.git
Copy
.env
file to.env.local
Fill database parameters in
.env.local
with your MySQL credentialsRun
$ docker-compose up -d
$ docker exec -it sesdashboard-php-fpm composer install
$ docker exec -it sesdashboard-php-fpm ./bin/console doctrine:migrations:migrate -n
To create Admin user run
$ docker exec -it sesdashboard-php-fpm ./bin/console app:create-user --admin
Regular installation
Download an app (download zip or git clone) to your web directory so your webserver should use /public/index.php
Copy
.env
file to.env.local
Fill database parameters in
.env.local
with your MySQL credentials
$ composer install
$ ./bin/console doctrine:migrations:migrate -n
To create Admin user run
$ ./bin/console app:create-user --admin
(Optionally) If your server webroot is not /public directory you could create symlink to it. For example, if your server configured for /public_html directory, run
$ ln -s ~/sesdashboard/public ~/sesdashboard/public_html
Configuration
1.a. New AWS SES Console v2 (preferable)
If none created yet, create a new Configuration Set. Log in into Amazon Simple Email Service console.
Go to Configuration sets menu item under Configuration section and click Create set.

Fill Configuration set name and create set.

At Event configuration page click Event destinations and Add destination.

Chose Event types you wish to track and click Next. (Note: Not all events supported yet.)

Under Destination options choose Amazon SNS, fill destination Name. Next create new SNS topic or use existing.

Review and Add destination.
Under Verified identities choose identity you wish to track. Go to Configuration step tab and click Edit.

Check Assign a default configuration set, select Default configuration set you recently created and save changes.

Go to 2. AWS SNS Configuration step paragraph below.
1.b. AWS SES Console v1
Go to Amazon Simple Email Service (SES) console. There are 2 ways to configure events publishing. First is to create new Configuration Set. It allows you to track opens and clicks but requires you to pass specific email header X-SES-CONFIGURATION-SET. More about headers configuration: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/event-publishing-send-email.html Second option doesn’t require any changes in your existing app, but cannot track clicks and opens.
First option: Select Configuration Sets menu. Click Create Configuration Set or edit your existing set. Add new SNS Destination, select events to track and create SNS topic.
Second option: Under Identity Management select Domain or Email address and open Notifications tab. Click Edit Configuration and create or select SNS Topic for events you wish to track. Enable Include original headers.
2. AWS SNS Configuration step
Next, navigate to Amazon Simple Notification Service (SNS).
Click Topics section and select topic you created before.

Click Create subscription

Add new subscription with HTTP (or HTTPS protocol if configured) and paste WebHook url from
/project/1/edit
SesDashboard project page. Check Enable raw message delivery.


Upgrades
To install new version follow these steps:
Make backup
Git pull or download new version
If your app uses Docker run:
$ docker exec -it sesdashboard-php-fpm composer install
$ docker exec -it sesdashboard-php-fpm ./bin/console doctrine:migrations:migrate -n
$ docker exec -it sesdashboard-php-fpm ./bin/console cache:clear
$ docker exec -it sesdashboard-php-fpm ./bin/console cache:warmup
For regular setup run:
$ composer install
$ ./bin/console doctrine:migrations:migrate -n
$ ./bin/console cache:clear
$ ./bin/console cache:warmup
Commands
Clear old emails data
$ ./bin/console app:emails:cleanup --days=7
Create admin user
$ ./bin/console app:create-user --admin
About
SesDashboard is an Analytics UI for Amazon Simple Email Service.
With activity tracking tool you could check which email was successfully delivered or there we any problems. Also you will be able to view detailed events log like mail opens and clicks info. Useful for transactional mails.
SesDashboard works as stand-alone app. No existing code needs to be changed.
GitHub Project page: https://github.com/Nikeev/sesdashboard



