se / pilight
用于从 PHP 调用 Pilight(目前为 pilight-send)的库。
v0.1-beta
2013-12-11 08:03 UTC
Requires
- php: >=5.3.3
- symfony/process: ~2.4
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-09-10 00:15:50 UTC
README
#pilight
从 PHP 调用 pilight(目前通过 pilight-send)的库。
开发分支是 master 分支。
目录
安装
建议的安装方式是通过 Composer。
{ "require": { "se/pilight": "dev-master" } }
基本使用
需要引入 composer 自动加载文件并导入命名空间。
require_once __DIR__.'/vendor/autoload.php'; use \SE\Component\Pilight;
发送
$sender = new Pilight\Sender(); // or set a custom ip and port $sender = new Pilight\Sender($host = '129.168.2.1', $port = 6535); $protocol = 'elro'; $arguments = array( 's' => 31, 'u' => 1, ); $device = new Pilight\Device($protocol, $arguments); // or add the arguments later via setArguments $device->setArguments($arguments); // turn it on $device->addArgument('t'); // send it! $sender->send($device);
如果您需要 root 权限来调用 pilight-send,请在 $sender 上调用 setSudo(true)。
$sender->setSudo(true); $sender->send($device);
您可以将 pilight-send 可执行文件添加到 sudoers 配置中,以便可以通过 sudo 无需输入密码来调用它。这是以防您的 pilight-send 需要通过 sudo 权限调用,如果在设置时未这样做,则在运行时可能会得到一些意外的输出。
$ sudo nano /etc/sudoers.d/pilight
内容
www-data ALL= NOPASSWD: /usr/local/sbin/pilight-send pi ALL= NOPASSWD: /usr/local/sbin/pilight-send <REPLACE YOU USER> ALL= NOPASSWD: /usr/local/sbin/pilight-send