fbkl / dianthus

Binotel 电话 PHP API/hook 库

v1.2.4 2020-06-02 12:04 UTC

This package is auto-updated.

Last update: 2024-09-14 23:20:37 UTC


README

Latest Stable Version pipeline status coverage report License

Binotel 电话 PHP API/hook 库 API Binotel

安装

composer require shadoll/dianthus

使用

该库正在开发中,已建立基本机制(认证、客户端、Http客户端、几个模型(将不断补充))

客户端 \Dianthus\Client

首先需要创建客户端,它将允许您进行任何操作

$client = new \Dianthus\Client([
    'key' => '94378c-de44436',
    'secret' => 'c8a117-ce3431-173432-86c10e-0aa258ec',
]);

$httpClient = $client->getHttpClient();

所有可能返回多个实体的模型方法都将将它们放入 Dianthus\Core\Collection\Collection 集合中,该集合继承自 Illuminate\Support\Collection,因此具有广泛的方法来操作

模型 Dianthus\Models\Stats

本部分用于处理通话统计信息。

  • incoming-calls-for-period 某时间段内的传入通话
/**
 * @var \Dianthus\Core\Collection\Collection<\Dianthus\Models\Stats> $collect
 */
$collect = $client->stats->incomingCallsForPeriod(1551088402, 1575888402);

  • list-of-calls-per-day 每天的传入和传出通话。
/**
 * @var \Dianthus\Core\Collection\Collection<\Dianthus\Models\Stats> $collect
 */
$collect = $client->stats->listOfCallsPerDay();

处理 Hooks

为了从 Web Hooks 中提取不同数据,存在 \Dianthus\Adapters\HookAdapter,其中包含足够多的方法来提取。只需传递 Hook 数据即可。


$adapter = $client->hookAdapter($arrayOfHooks);
// или без клиента
$adapter = new \Dianthus\Adapters\HookAdapter($arrayOfHooks);

echo $adapter->getInternalNumber();
echo $adapter->getTrackingData();
// ...