Go to file
2020-02-17 14:01:06 +03:00
src Add Yandex.ru replacement dots for dashes 2020-02-17 11:13:11 +03:00
tests Add Yandex.ru replacement dots for dashes 2020-02-17 11:13:11 +03:00
.coveralls.yml Initial public release 2016-09-10 00:41:21 +02:00
.gitignore Initial public release 2016-09-10 00:41:21 +02:00
.travis.yml Downgrade PHPUnit to version 6.5.14 and return PHP versions 7.0/7.1 2020-02-17 10:29:32 +03:00
composer.json Downgrade PHPUnit to version 6.5.14 and return PHP versions 7.0/7.1 2020-02-17 10:29:32 +03:00
LICENSE Initial public release 2016-09-10 00:41:21 +02:00
phpunit.xml.dist Upgrade PHPUnit version to 8.5.2 2020-02-13 16:36:15 +03:00
README.md Add info to readme about Yandex.ru and Mail.ru ways to create aliases 2020-02-17 14:01:06 +03:00

Build Status Coverage Status Codacy Badge

Transparent Email

Transparent Email clears aliases from email address. Email John.Doe+alias@gmail.com will be transformed to johndoe@gmail.com.

Why?

To detect multi-accounts on your website.

Supported mailboxes

Usage

use bkrukowski\TransparentEmail\TransparentEmailFactory;
use bkrukowski\TransparentEmail\Emails\Email;
use bkrukowski\TransparentEmail\Emails\EmailInterface;
use bkrukowski\TransparentEmail\Emails\InvalidEmailException;

try {
    $factory = new TransparentEmailFactory();
    $cleaner = $factory->createDefault();
    $inputEmail = new Email('John.Doe+alias@gmail.com');
    /** @var EmailInterface $transformedEmail */
    $transformedEmail = $cleaner->getPrimaryEmail($inputEmail);
    echo $transformedEmail;
} catch (InvalidEmailException $exception) {
    echo 'Invalid email!';
}

Versioning

The version numbers follow the Semantic Versioning 2.0.0 scheme.

Yahoo.com

Aliases work different on Yahoo than on Gmail. On Gmail part after plus is skipped. For example message sent to janedoe+alias@gmail.com will be redirected to janedoe@gmail.com.

Yahoo uses the following pattern*:

baseName-keyword@yahoo.com

  • baseName - value defined by the user, different than email login;
  • keyword - one from a list of keywords defined by the user.

Therefore we do not know what is the real email, so in this case result will be baseName@yahoo.com, which actually does not exist.

Yandex.ru

In official documentation you can find some use-cases about aliases usage.

Mail.ru

There's no official documentation about aliases here, but you can create them with 2 ways:

  • janedoe+alias@mail.ru will be redirected to janedoe@mail.ru
  • janeDoe@MAIL.RU will be redirected to janedoe@mail.ru