academe/particle

一个用于操作 Particle API 的 PSR-7 PHP 包

0.9.1 2016-01-18 12:46 UTC

This package is auto-updated.

Last update: 2024-09-23 03:25:44 UTC


README

PHP 包,用于与 Particle Cloud 及其云连接设备(Photon、P0、P1、Electron)交互

待办事项

正在进行中,但主要任务是

  • 创建测试。
  • 移除旧的 Spark 代码。
  • 替换示例。
  • 也许可以移除调试日志,因为我们已经有足够的注入点来设置调试。
  • 全面覆盖 API。应用和组织身份验证是剩余的主要领域。

快速安装

使用 composer

composer.phar require academe/particle

添加示例依赖项

composer.phar require guzzlehttp/guzzle

示例类

所有示例都已放入 Academe\Particle\Example 类中。请查看此类以了解 API 的工作方式。

总的来说,此包生成 PSR-7 消息,这些消息通过任何合适的 HTTP 客户端发送。

目前没有对结果进行解释 - 您需要从 PSR-7 响应中获取所需的结果,该响应的格式在 Particle API 文档 中有说明。

可以像这样运行示例

use Academe\Particle\Example;

$accessToken = 'your-account-access-token';
$deviceId = 'your-device-id';
$email = 'your-cloud-email-username';
$password = 'your-cloud-password';

// Instantiate the example class.
$example = new Example($access_token, $device, $email, $password);

// Flash the device with the Tinker application.
$response = $example->flashTinker();
//$response = $example->setDeviceName();
//$response = $example->setDeviceName('christmas_turkey');
//$response = $example->listDevices();
//$response = $example->getDevice();
//$response = $example->getDevice('20033307343c03805403a138');
//$response = $example->newAccessToken();
//$response = $example->listTokens();
//$response = $example->deleteAccessToken('176a67f0d31647beac429252af8663a5040a945c');
//$response = $example->callFunction();
//$response = $example->listOranizations();
//$response = $example->removeMember('my_organization', 'someone@example.com');

echo "Status=" . $response->getStatusCode() . "\n";
echo "Reason=" . $response->getReasonPhrase() . "\n";
echo "Detail=" . $response->getBody() . "\n";

别忘了安装 Guzzle(v6)来运行这些示例

composer require guzzlehttp/guzzle

此类中的大多数其他示例都需要作为第一步安装 Tinker 应用程序。

实现的功能

待办事项:此列表并不完整。已实现一些附加功能,API 还有尚未实现的新功能。

设备管理

  • 列出设备
  • 获取设备信息
  • 重命名/设置设备名称
  • 在设备上调用 Particle 函数
  • 从设备获取 Particle 变量的值
  • 远程(空中)固件上传
  • 设备信号(使其闪烁彩虹色)

访问令牌管理

  • 生成新的访问令牌
  • 列出您的访问令牌
  • 删除访问令牌

Webhook 管理

  • 列出 Webhook
  • 添加 Webhook
  • 删除 Webhook

账户/云管理

  • 使用本地 particle 云
  • 申领核心或 Photon
  • 移除核心或 Photon

尚未实现的功能

  • 创建 OAuth 客户端(/v1/clients)
  • 高级 OAuth 主题