dangetsu / roistat-sdk
用于轻松处理Roistat API v1的库
dev-master
2021-08-13 01:20 UTC
Requires
- php: >=5.4.0
- guzzlehttp/guzzle: >=5.4.0
This package is auto-updated.
Last update: 2024-09-13 08:12:29 UTC
README
用于处理Roistat v1 API的库 (https://roistat.api-docs.io/v1/)
要求
PHP >= 5.4.0
guzzlehttp/guzzle >= 5.4.0
安装
在composer.json中添加新包并执行composer install(或如果已经安装,则执行update)。
更多详情可以参考这里 - https://habr.com/post/145946/
{
"require": {
"dangetsu/roistat-sdk": "dev-master"
}
}
使用方法
首先需要初始化库以进行后续操作。
require_once 'vendor/autoload.php';
$roistat = new \Analytics\Roistat($apiKeyFromProfile, $projectId);
- projectId - 如果您想调用获取项目列表的公共方法,则可以等于0。但若需要调用项目的方法,则必须重新声明对象。
为了执行任何操作,我们需要调用执行该操作的架构。构造函数接受应用程序的基本对象作为参数。
$callScheme = new \Analytics\Scheme\Calltracking\Call($roistat);
架构提供了一组基本方法,供其使用。例如,对于电话列表架构,有以下方法:
$callScheme->items();
$callScheme->create(new Entity\Calltracking\Call());
$callScheme->update(new Entity\Calltracking\Call());
- items() - 返回实体列表,可以通过getter获取其参数,也可以直接调用update、delete等。
大多数情况下,此方法接受参数以进行查询过滤和排序。
$calls = $callScheme->items((new \Analytics\Engine\Query())->addFilter('callee', '=', '79780000000')->setSort('id', 'desc')->setLimit(1));
$calls[0]->setComment('Тестовый комментарий')
->setOrderId('22')
->setLink('https://site.ru/calltracking/call/23/file/123456qwerty')
->update();
- create() 和 update() - 接受要发送的实体,并返回成功状态或带有 id 的相同实体。
$call = (new Entity\Calltracking\Call())
->setCallee('7495301234')
->setCaller('7495301234')
->setDuration(59)
->setStatus('ANSWER')
->setDate('2016-06-19T09:31:01+0000')
->setVisitId('666')
->setOrderId('777')
->setSaveToCrm(0);
$call = $callScheme->create($call);
可以通过查看 test 文件夹中的代码来详细了解库的使用。
方法和架构的关系
项目
- /user/projects - (Scheme\Project())>items()
- /user/project/create - (Scheme\Project())>create()
- /project/settings/counter/list - (Scheme\Counter())>get()
访问
- /project/site/visit/list - (Scheme\Visit())>items(Engine\Query)
客户
- /project/clients/import - (Scheme\Client())>create(Entity\Client[])
- /project/clients - (Scheme\Client())>items(Engine\Query)
订单
- /project/integration/order/list - (Scheme\Order())>items(Engine\Query)
- /project/add-orders - (Scheme\OrderAdd())>create(Entity\OrderAdd[])
- /project/orders/{orderId}/external-url - (Scheme\Order())>externalUrl(string $orderId)
- /project/set-statuses - (Scheme\Status())>create(Entity\Status[])
- /project/analytics/order-custom-fields - (Scheme\Order())>customFields()
- /project/integration/order/{orderId}/status/update - (Scheme\Order())>statusUpdate(string $orderId, string $statusId)
- /project/integration/order/{orderId}/delete - (Scheme\Order())>delete(string $orderId)
代理线索
- /project/proxy-leads - (Scheme\Proxylead())>items()
- /project/proxy-leads/{proxyLeadId} - (Scheme\Proxylead())>get(string $leadId)
呼叫跟踪
- /project/calltracking/script/create - (Scheme\Calltracking\Script())>create(Entity\Calltracking\Script)
- /project/calltracking/script/list - (Scheme\Calltracking\Script())>items(Engine\Query)
- /project/calltracking/script/delete - (Scheme\Calltracking\Script())>delete(int $scriptId)
- /project/calltracking/script/update - (Scheme\Calltracking\Script())>update(Entity\Calltracking\Script)
- /project/calltracking/data - (Scheme\Calltracking\Data())>items(DateTime $from, DateTime $to)
- /project/calltracking/call/xls/export - 不支持
- /project/calltracking/call/{callId}/file - 不支持
- /project/calltracking/call/update - (Scheme\Calltracking\Call())>update(Entity\Calltracking\Call)
- /project/calltracking/phone/buy - (Scheme\Calltracking\Phone())>buy(string $prefix, int $count)
- /project/calltracking/phone/update - (Scheme\Calltracking\Phone())->update(Entity\Calltracking\Phone)
- /project/calltracking/phone/create - (Scheme\Calltracking\Phone())->create(string[] $phones)
- /project/calltracking/phone/delete - (Scheme\Calltracking\Phone())->delete(string[] $phones)
- /project/calltracking/phone/prefix/list - (Scheme\Calltracking\Phone())->allowedPhoneCodes()
- /project/calltracking/phone/list - (Scheme\Calltracking\Phone())->items(Engine\Query)
- /project/calltracking/call/list - (Scheme\Calltracking\Call())->items(Engine\Query)
- /project/phone-call - (Scheme\Calltracking\Call())->create(Entity\Calltracking\Call)
广告渠道
- /project/analytics/source/list - (Scheme\Analytics\Source())->items(Engine\Query)
- /project/analytics/source/cost/list - (Scheme\Analytics\Source\Cost())->items()
- /project/analytics/source/cost/add - (Scheme\Analytics\Source\Cost())->create(Entity\Analytics\Source\Cost)
- /project/analytics/source/cost/update - (Scheme\Analytics\Source\Cost())->update(Entity\Analytics\Source\Cost)
- /project/analytics/source/cost/delete - (Scheme\Analytics\Source\Cost())->delete(string $costId)
统计数据
- 开发中
访问权限
- 开发中
项目指标
- 开发中
短信报告
- 开发中
分析
- 开发中
计费
- 开发中
未记录的方法
- 获取状态列表(仅适用于新集成)- 开发中
- 获取最后1000个事件的列表 - 开发中
- 通过猎豹获取回呼列表 - 开发中