kazylla/irmagic

irMagician API for PHP

0.1.0 2016-05-17 23:33 UTC

This package is not auto-updated.

Last update: 2024-09-23 06:52:26 UTC


README

IrMagicPHP是什么

IrMagicPHP是用于操作irMagician的PHP API。
http://www.omiya-giken.com/?page_id=889
实现了所列出的所有命令的API。

简单操作

只需执行以下程序,即可捕获和回放红外遥控器的数据。

捕获

$ir = new IrMagic();
$bytes = $ir->execCapture('capture.json');

回放

$ir = new IrMagic();
$ir->execPlay('capture.json');

获取气温

$ir = new IrMagic();
$temp = $ir->temperature();

已验证环境

开发过程中使用的验证环境如下。

  • irMagician T
  • 树莓派B+
  • 树莓派Raspbian Wheezy(2015-05-05)
  • PHP 5.6.20-0+deb8u1 (cli) (编译: 2016年4月28日 00:01:26)

为了进行串行输入输出,使用了pecl的dio,因此需要安装dio才能执行。
https://pecl.php.net/package/dio

架构

通过以下3个类的继承关系,逐步实现高级处理。

Serial.php

实现最低限度的串行通信功能,用于使用irMagician的串行输入输出。

Ir.php

实现与irMagician命令一对一对应的API。
当需要执行与irMagician命令相同级别的处理时,请使用此类。

IrMagic.php

提供更高层次的处理功能,如捕获、红外发送、状态获取等。
通常情况下,将利用此类进行开发。
如果想要将捕获数据保存为除JSON以外的格式,例如,而不是文件而是数据库,则可以继承此类并实现以下方法。

  • loadDataInternal()
  • saveDataInternal()