graze/unicontroller-client

用PHP编写的Domino Unicontroller客户端

v0.1.3 2019-09-05 15:06 UTC

This package is auto-updated.

Last update: 2024-09-06 01:58:03 UTC


README

Latest Version on Packagist Software License Build Status Code Coverage Scrutinizer Code Quality Total Downloads

一个用PHP编写的Domino Unicontroller客户端。

查看类生成器README了解此客户端的编写方式。

安装

通过Composer

$ composer require graze/unicontroller-client

用法

# instantiate a client
$client = Graze\UnicontrollerClient\UnicontrollerClient::factory();

# connect to a printer
$dsn = '172.16.1.1:9100';
$client->connect($dsn);

# send the 'ReadDesign' command to the printer
$designName = 'current.Design';
$designCurrent = $client->ReadDesign($designName, 0, 0);

# client returns the 'ReadDesign' entity, as defined in the Unicontroller specification
if (!$designCurrent->getReadOk()) {
    echo sprintf('failed to read design, does %s exist?', $designName);
    exit;
}

# modify some text
$ttfItem = $designCurrent->getTtfArray()[0];
$ttfItem->setData('this is some example text');

# add an image
$imageData = file_get_contents('/path/to/image.bmp');

$pictureItem = new Graze\UnicontrollerClient\Entity\Entity\EntityPictureItem();
$pictureItem->setAnchorPoint(0);
$pictureItem->setXPos(9500);
$pictureItem->setYPos(400);
$pictureItem->setWidth(0);
$pictureItem->setHeight(0);
$pictureItem->setOrion(0);
$pictureItem->setDescription('image1');
$pictureItem->setMaintain(1);
$pictureItem->setPrinterReferenceName('image.bmp');
$pictureItem->setUsePixelSize(1);
$pictureItem->setPictureData($imageData);
$pictureItem->setStoreInternally(0);
$pictureItem->setPhantomField(0);

$designCurrent->setPictureArray([$pictureItem]);

# push the design to the printer
$entity->setName('new.Design');
$entity->setSaveDesign(1);
$designNew = $client->serialise($designCurrent);
$resp = $client->send('Design', $designNew, 1);

if (!$resp->success()) {
    echo 'something went wrong';
}

变更日志

有关最近更改的详细信息,请参阅CHANGELOG

测试

$ make test

贡献

有关详细信息,请参阅CONTRIBUTING

安全性

如果您发现任何安全相关的问题,请发送电子邮件至 security@graze.com 而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件