Как я могу отслеживать отклоненные письма? - PullRequest
1 голос
/ 23 марта 2011

Я бы хотел отследить отклоненные электронные письма, которые были отправлены с моего сервера.Я прочитал несколько вещей и обнаружил, что отсканированные электронные письма хранятся в почтовом ящике и могут быть обнаружены путем непосредственного чтения файлов почтовых ящиков.

проверьте наличие отсканированных писем с помощью php

СейчасЯ хотел бы получить некоторое представление о том, как я могу прочитать файлы почтовых ящиков моего сервера?Нужно ли запускать файл сценария php вручную после отправки письма, чтобы записать отклоненное письмо в мою базу данных?Нужно ли анализировать содержимое электронной почты, чтобы узнать, какое письмо было отклонено?

Я нацеливаюсь на материал для моего php-сервера с популярным доступом к электронной почте.

Ответы [ 2 ]

2 голосов
/ 23 марта 2011
1 голос
/ 10 сентября 2015

Вот как я могу подключиться к серверу входящей почты на one.com

$inbox = imap_open('{imap.one.com:993/imap/ssl/novalidate-cert}INBOX', 'your@address.com', 'xxxxxxxx') or die('Cannot connect: ' . print_r(imap_errors(), true));

/* grab emails */
$emails = imap_search($inbox,'ALL');

/* if emails are returned, cycle through each... */
if($emails) {

    /* put the newest emails on top */
    rsort($emails);

    /* for every email... */
    foreach($emails as $email_number) {

        $message = imap_fetchbody($inbox,$email_number,2);

        $pieces = explode(" ", $message);

        foreach($pieces as $piece){

            $findme   = '@';
            //$findme2 = '.com';

            $pos = strpos($piece, $findme);

            if ($pos !== false) {
                    echo $piece;
            }


        }

    }

}

Адрес электронной почты, который был возвращен, находится в теле сообщения, и я передаю его в браузер.

...