d3yii2 / d3printeripp
IPP Printer Management Component for Yii2
Installs: 64
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:yii2-extension
pkg:composer/d3yii2/d3printeripp
Requires
- php: >=7.4
- ext-curl: *
- cornernote/yii2-returnurl: *
- d3yii2/d3system: *
- obray/ipp: *
- unyii2/yii2-panel: *
- yiisoft/yii2: ~2.0.14
This package is auto-updated.
Last update: 2026-02-18 10:57:37 UTC
README
A PHP 7.4+ package for managing IPP printers in Yii2 applications using the nateobray/IPP library.
Installation
to composer add
"repositories": [ { "type": "git", "url": "https://github.com/DBRisinajumi/IPP.git"}, ]
composer require yourcompany/yii2-ipp-printer-manager
Configuration
In config console add comand:
'controllerMap' => [ 'printeripp' => 'd3yii2\d3printeripp\commands\PrinterCommand', 'printeripp-spool' => 'd3yii2\d3printeripp\commands\SpoolerCommand', ],
Add the components
'modules' => [ 'd3printeripp' => [ 'class' => 'd3yii2\d3printeripp\Module', /** roles for view dashboard panel */ 'panelViewRoleNames' => ['D3PrinterViewPanel'], ], ], 'components' => [ /** use for printer files spooling */ 'printerSpooler' => [ 'class' => 'd3yii2\d3printer\components\Spooler', 'baseDirectory' => 'd3printer' ], /** define alert config for printers. class d3yii2\d3printeripp\components\components */ 'ippAlertConfig' => [ 'class' => 'ea\app\components\IppPrinter3002dnAlertConfig' ], /** define mailer for printers. */ 'ippPrinterMailer' => [ 'class' => 'd3yii2\d3printeripp\components\Mailer', 'from' => 'zzzz@zzzz.lv', 'to' => ['zz@sss.lv'], ], /** define printer status cache */ 'printerStatusCache' => [ 'class' => 'd3yii2\d3printeripp\components\cache\PrinterCache', ], /** define printer component */ 'ippTest' => [ 'class' => '\d3yii2\d3printeripp\components\BasePrinter', 'printerName' => 'ippTest', 'name' => 'ippTest', 'host' => '192.168.88.168', 'port' => 631, 'username' => 'admin', 'password' => '', 'pincode' => '111111', 'timeout' => 30, 'encryption' => false, 'spoolerComponentName' => 'printerSpooler', 'alertConfigComponentName' => 'ippAlertConfig', 'mailerComponentName' => 'ippPrinterMailer', 'cacheComponentName' => 'printerStatusCache', // 'pageOrientation' => 3, // d3yii2\d3printeripp\types\PrinterAttributeValues::ORIENTATION_PORTRAIT 'pageOrientation' => 4, // d3yii2\d3printeripp\types\PrinterAttributeValues::LANDSCAPE // 'pageSize' => 'iso_a4_210x297mm', // d3yii2\d3printeripp\types\PrinterAttributeValues::MEDIA_SIZE_A4 'pageSize' => 'iso_a5_148x210mm', // d3yii2\d3printeripp\types\PrinterAttributeValues::MEDIA_SIZE_A5 ], ],
Usage command
show printer ippTest status
php yii printeripp/status ippTest
show printer ippTest status
php yii printeripp/status ippTest 0 1
check alert and send one time alert email Mostly add to crontab
php yii printeripp/status ippTest 0 1
spooler printing - create as deamon
php yii printeripp-spool/index spoolerPrinting
Dashboard panel
$config['components']['dashboard']['panels']['notifications'][] = [ 'route' => '/d3printeripp/printer-panel/dashboard', 'params' => [ 'printerComponentName' => 'ippTest' ], 'tag' => 'div', 'options' => ['class' => 'col-sm-6 col-md-4 col-lg-3'] ];
Basic Printing
Yii::$app->ippTest->printToSpoolDirectory($filePath),
Printer Monitoring
create deamon or add to crontab
php yii printeripp/status ippTest 0 1