hubkit/hk-sdk-php

Hubkit API 的 PHP SDK

安装: 598

依赖: 1

建议者: 0

安全: 0

星标: 0

分支: 0

类型:hubkit-sdk

1.0.8 2020-08-24 20:07 UTC

This package is auto-updated.

Last update: 2024-09-10 23:44:48 UTC


README

HubKit 是一个用 PHP 编写的库,用于与 hubkit.io 进行通信。

功能

  • [x] 简单设置和配置
  • [x] 完备的单元测试覆盖

需求

  • PHP 版本 > 7.1

组件库

为了保持 HubKit 专注于核心功能实现,需要额外的组件库(但它们包含在 composer 依赖中,因此您无需关心这一点)。

  • "guzzlehttp/psr7"
  • "php-http/message"
  • "php-http/multipart-stream-builder"

安装

Composer

您可以使用以下命令进行安装

$ composer require hubkit/hk-sdk-php

用法

要使用特定的 API 功能,您只需实例化 HubkitSdk 类,然后调用所需的方法。

use Hubkit\Sdk\HubkitSdk;

$hubkitSdk = new HubkitSdk();
$hubkitSdk->setApiKey('YOUR-HUBKIT-API-KEY');

$result = $hubkitSdk->me();

var_dump($result);

HubkitSdk 中包含的方法

me();

createDevice(array $datas);

$datas = [
    'project' => 'UUID-HUBKIT-PROJECT',
    'name' => 'New Device from SDK',
    'macAddress' => 'FF:FF:FF:FF:FF:FF',
    'hardwareVersion' => 'v1',
    'firmwareVersion' => 'v2',
    'manualMode' => '1',
    'sensorType' => 'MY_TYPE_EXEMPLE',
    'battery' => '54',
    'factoryTest' => 'factory test',
    'latitude' => '1.5',
    'longitude' => '0.5',
    'externalIdentifier' => 'external_id',
];

updateDevice(string $uuid, array $datas);

$uuid = 'UUID-HUBKIT-DEVICE';

// Here, the api is in PATCH method, all keys are optionnals
$datas = [
    'name' => 'New Device from SDK',
    'macAddress' => 'FF:FF:FF:FF:FF:FF',
    'hardwareVersion' => 'v1',
    'firmwareVersion' => 'v2',
    'manualMode' => '1',
    'sensorType' => 'MY_TYPE_EXEMPLE',
    'battery' => '54',
    'factoryTest' => 'factory test',
    'latitude' => '1.5',
    'longitude' => '0.5',
    'externalIdentifier' => 'external_id',
];

activateDevice(string $uuid);

$uuid = 'UUID-HUBKIT-DEVICE';

device(string $uuid);

$uuid = 'UUID-HUBKIT-DEVICE';

activity(string $uuid);

$uuid = 'UUID-HUBKIT-ACTIVITY';

allActivities();

session(string $uuid);

$uuid = 'UUID-HUBKIT-SESSION';

deleteSession(string $uuid);

$uuid = 'UUID-HUBKIT-SESSION';

readySession(string $uuid);

$uuid = 'UUID-HUBKIT-SESSION';

createSession(string $uuid, array $datas);

$uuid = 'UUID-HUBKIT-SESSION';

$datas = [
    'project' => 'UUID-HUBKIT-PROJECT',
    'capturedAt' => '2018-01-01T01:00:00-05:00', // Care to format ISO 8601
    'metas' => [
        'meta1 name' => 'meta1 value',
        'meta2 name' => 'meta2 value',
        // ...
    ],
    'callbackUrl' => 'http://my.callback.com/route' // Callback launch after session decoded 
];

rawData(string $uuid);

$uuid = 'UUID-HUBKIT-RAWDATA';

createRawData(array $datas, UploadedFileInterface $file);

$datas = [
    'session' => 'UUID-HUBKIT-SESSION',
    'device' => 'UUID-HUBKIT-DEVICE',
];

$file = '...' // must implement UploadedFileInterface

algorithmProcess(string $uuid, array $datas);

$datas = [
    'algorithm' => 'slug-algorithm',
    'dataType' => 'gps',
];

致谢

HubKit 由 SURF'IN 公司拥有和维护。

许可证

HubKit 在 MIT 许可下发布。有关详细信息,请参阅 LICENSE