olegopro/imap-php-proxy

dev-main 2022-10-21 22:27 UTC

This package is auto-updated.

Last update: 2024-04-22 01:50:47 UTC


README

Этот модуль позволяет подключаться к протоколу imap через прокси.

Достоинства:

  • Модуль очень гибкий, вы можете заменить любой элемент на свой собственный (ResponseContainer, Parser, Commander, реализовать свои собственные типы прокси). реализовать свои собственные типы прокси).
  • Реализованы Socks5 и Https прокси.
  • Реализована авторизацию через прокси-сервер (socks5 & https).

Для использования в вашем проекте, добавьте следующий код в composer.json:

    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/olegopro/imap-php-proxy.git"
           
        }
    ],
    "require": {
        "olegopro/imap-php-proxy": "dev-master"
    }

Использование

// Этот объект содержит все успешные и ошибочные действия
$responseContainer = \ImapConnector\Containers\ResponseContainer::getInstance();

$connector = new \ImapConnector\Connector($responseContainer);

// Этот объект предназначен для разбора ответа imap 
$parser = new \ImapConnector\Parsers\Parser();

// Экземпляр прокси Socks 5
$socks5Proxy = new \ImapConnector\Proxies\Socks5Proxy($responseContainer, "ip", 'port');

// Подключение к прокси (если вы пропустите эту строку, скрипт будет подключаться к imap напрямую, без прокси)
$connector->connectToProxy($socks5Proxy);

// Здесь мы получаем поток, который идет через прокси (Вы можете использовать этот поток в своем собственном порядк)
$stream = $connector->connectToImap("imap_host", 'imap_port', 'proxy_name', 'proxy_pass');

// Здесь мы проверяем, успешно ли мы подключились к imap
if(is_resource($stream)) {

    // Здесь мы создаем обработчик комманд и передаем поток
    $commander = new \ImapConnector\Commander($stream, $parser, $responseContainer);

    // Вход через imap
    if($commander->login("login", "password")){
        echo "Success!";
    }

}