numero2/contao-notification_center-aws-sns

Integration of AWS SNS as a notification gateway for Contao 4 with Notification Center

1.1.0 2024-06-03 11:27 UTC

This package is auto-updated.

Last update: 2024-12-03 12:39:12 UTC


README

About

The package adds AWS SNS to the Notification Center as a gateway.

System requirements

Installation

  • Install via Contao Manager or Composer (composer require numero2/contao-notification_center-aws-sns)
  • Run a database update via the Contao-Installtool or using the contao:migrate command.
  • Create a SMS (Amazon Web Services SNS) gateway in the Notification Center

How to generate API keys in AWS

  1. Log in to the AWS Management Console
  2. Select a Supported Region from the top right of the console
  3. Switch to the IAM Service
  4. Select Policiesand choose Create policy
  5. Switch to the JSON tab and see the example below for a policy which can be used
  6. Save the policy and switch to Users and click Create user
  7. In Permissions options select Attach policies directly and choose the Policy created before
  8. Click Next and then Create user
  9. Back in the overview of users select the newly created user and switch to the tab Security credentials
  10. In the section Access keys click the button Create access key
  11. Choose the option Other and click Next, you can skip the description tag and choose Create access key
  12. Make sure to save the generated Access key and the Secret access key for later configuration in Contao
  13. Click on Done to finish the process
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

🚨 Important information about phone number format

AWS requires the recipient phone number to be in E.164 format (e.g +49123456789). For this purpose this extension provides a custom Input validation option called Phone number (E.164) for the form generator.

For a better user experience we suggest to use a small JavaScript called International Telephone Input which makes sure the inserted number matches the format.