henrique-borba / php-sieve-manager
PHP library to create and manage Sieve filters through the ManageSieve protocol
Installs: 7 457
Dependents: 1
Suggesters: 0
Security: 0
Stars: 4
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: >=5.4
This package is auto-updated.
Last update: 2023-01-13 15:11:43 UTC
README
A native PHP library for managing the ManageSieve protocol and generate basic sieve scripts.
How to use
Connect to ManageSieve
require_once "vendor/autoload.php"; $client = new \PhpSieveManager\ManageSieve\Client("localhost", 4190); $client->connect("test@localhost", "mypass", false, "", "PLAIN"); $client->listScripts();
Generate Sieve script
$filter = \PhpSieveManager\Filters\FilterFactory::create('MaxFileSize'); $criteria = \PhpSieveManager\Filters\FilterCriteria::if('body')->contains('"test"'); // Messages bigger than 2MB will be rejected with an error message $size_condition = new \PhpSieveManager\Filters\Condition( "Messages bigger than 2MB will be rejected with an error message", $criteria ); $size_condition->addCriteria($criteria); $size_condition->addAction( new \PhpSieveManager\Filters\Actions\DiscardFilterAction() ); // Add the condition to the Filter $filter->setCondition($size_condition); $filter->toScript();