siltada/yesplan

此软件包最新版本(3.2.3)没有提供许可信息。

Yesplan API / PHP 库

3.2.3 2022-12-20 11:13 UTC

This package is auto-updated.

Last update: 2024-09-20 14:56:35 UTC


README

加载

load.php 将在 lib 文件夹中为所有必要的文件执行 require_once。

创建客户端对象

此步骤对于其他所有函数的正常工作至关重要。

$client = new Yesplan\Client(YESPLAN_DOMAIN, YESPLAN_API_KEY);

YESPLAN_DOMAIN 应该是您的 Yespan 域名,不包含 http:// 和末尾的 .yesplan.be。如果您的域名是 http://rockit.yesplan.berockit 应该是您的域名。

YESPLAN API 密钥应该是有效的密钥,由您的 Yesplan 安装生成。

端点

获取数据时,我们使用相同的方法对所有端点进行操作。

注意:并非所有 Yesplan API 中的可用端点都已在当前存储库中提供。

如果您想使用尚未包含的端点,您可以使用 URL 端点。

URL

Yesplan\Endpoints\Url::get($client, $full_request_url_without_api_key);

数据视图

从数据视图生成数据结果并检索数据。https://manual.yesplan.be/nl/developers/dataviews/

compute

给出一个收集数据的命令。

Yesplan\Endpoints\Dataviews::compute($client, $dataview_id, $parameters, $callback_url);

*$dataview_id:您想使用的数据视图的 ID。

$parameters:应该是一个类似这样的数组

Array
(
    [filter_keyword] => filter_value
)

$callback_url:是 Yesplan 收集数据并准备好检索时将使用的完整 URL。

此函数将返回一个包含数据视图当前状态的 JSON 响应。此状态应该是 running。当数据收集完毕时,Yesplan 将向指定的回调 URL 发送 POST 请求。该请求将包含数据视图 ID 和检索数据的完整 API URL。这看起来像这样

POST /yesplan-dataview-result-ready/123 HTTP/1.1
Host: ticketing.system.com
Accept: */*
Content-type: application/json
Content-Length: 189

{
    "id": "335990017",
    "url": "https://theater.yesplan.be/api/dataviewresult/289503489-1510822734/json/335990017",
    "creationtime": "2017-12-06T09:18:32.48699498176575+01:00"
}

status

获取数据视图请求的状态。

Yesplan\Endpoints\Dataviews::status($client, $dataview_id, $result_id);

此函数是为测试而制作的。在正常情况下,您不需要此函数。

get

从数据视图请求获取收集到的数据。

Yesplan\Endpoints\Dataviews::get($client, $dataview_id, $result_id);

此函数是您在回调文件中需要的函数。Yesplan 的 post 数据将包含结果 ID。然而,您仍然需要数据视图 ID。

在您不想在回调文件中再次指定数据视图 ID 的情况下,您可以直接使用 URL 函数。

Yesplan\Endpoints\Url::get($client, POST_DATA->url);

事件

直接从事件获取数据。

getList

此函数将给出给定 Yesplan 查询 的事件列表。

Yesplan\Endpoints\Events::getList($client, $searchquery);

get

获取事件的所有数据。

Yesplan\Endpoints\Events::get($client, $event_id);

getSchedule

从事件获取日程数据。

Yesplan\Endpoints\Events::getSchedule($client, $event_id);

getAttachments

从事件获取所有附件。

Yesplan\Endpoints\Events::getAttachments($client, $event_id);

getCustomdata

从事件获取自定义数据。

Yesplan\Endpoints\Events::getCustomdata($client, $event_id, $keywords);

其中 $keywords 可以是一个数组或逗号分隔的 Yesplan 关键词列表。

getCustomdataValuesOnly

从事件获取所有自定义数据。

Yesplan\Endpoints\Events::getCustomdataValuesOnly($client, $event_id);

getResourcebookings

从事件获取所有资源预订。

Yesplan\Endpoints\Events::getResourcebookings($client, $event_id);

putCustomdata

将自定义数据写入 Yesplan。

Yesplan\Endpoints\Events::putCustomdata($client, $event_id, $data);

其中 $data 应该格式化如下

$data[] = (object) [
    'keyword' => 'YESPLAN_KEYWORD',
    'value' => 'VALUE'
];
### Events 

直接从事件获取数据。

getList

此函数将给出给定 Yesplan 查询 的组列表。

Yesplan\Endpoints\Groups::getList($client, $searchquery);

尚未进行测试。

get

从组获取所有数据。

Yesplan\Endpoints\Groups::get($client, $group_id);

getSchedule

从组获取日程数据。

Yesplan\Endpoints\Groups::getSchedule($client, $group_id);

getAttachments

从组获取所有附件。

Yesplan\Endpoints\Groups::getAttachments($client, $group_id);

getCustomdata

从组获取自定义数据。

Yesplan\Endpoints\Groups::getCustomdata($client, $group_id, $keywords);

其中 $keywords 可以是一个数组或逗号分隔的 Yesplan 关键词列表。

getCustomdataValuesOnly

获取组中所有自定义数据。

Yesplan\Endpoints\Groups::getCustomdataValuesOnly($client, $group_id);

getResourcebookings

获取组中所有资源预订。

Yesplan\Endpoints\Groups::getResourcebookings($client, $group_id);

putCustomdata

将自定义数据写入 Yesplan。

Yesplan\Endpoints\Groups::putCustomdata($client, $group_id, $data);

其中 $data 应该格式化如下

$data[] = (object) [
    'keyword' => 'YESPLAN_KEYWORD',
    'value' => 'VALUE'
];

个人资料

getList

此功能将为给定的Yesplan 搜索查询提供一个个人资料列表。

Yesplan\Endpoints\Profiles::getList($client, $searchquery);

get

获取个人资料的所有数据。

Yesplan\Endpoints\Profiles::get($client, $profile_id);

状态

getList

此功能将为给定的Yesplan 搜索查询提供一个状态列表。

Yesplan\Endpoints\Statuses::getList($client, $searchquery);

get

获取状态的所有数据。

Yesplan\Endpoints\Statuses::get($client, $status_id);

地点

getList

此功能将为给定的Yesplan 搜索查询提供一个地点列表。

Yesplan\Endpoints\Locations::getList($client, $searchquery);

get

获取地点的所有数据。

Yesplan\Endpoints\Locations::get($client, $location_id);

getCustomdata

从事件获取自定义数据。

Yesplan\Endpoints\Locations::getCustomdata($client, $location_id, $keywords);

关键词可以是数组,也可以是逗号分隔的 Yesplan 关键词列表。

getCustomdataValuesOnly

获取地点的所有自定义数据。

Yesplan\Endpoints\Locations::getCustomdataValuesOnly($client, $location_id);

任务

getList

此功能将为给定的Yesplan 搜索查询提供一个地点列表。

Yesplan\Endpoints\Tasks::getList($client, $searchquery);

get

获取任务的所有数据。

Yesplan\Endpoints\Tasks::get($client, $location_id);

筛选

customdataByKey

创建一个具有给定自定义数据对象的新对象,其中数据按关键词排序。这样更容易获取自定义数据值。

Yesplan\Filter::customdataByKey($customdata);
输出示例

getCustomdata 输出如下

Array
(
    [0] => stdClass Object
        (
            [name] => Titel
            [keyword] => production_title
            [type] => String
            [value] => Exil
        )

    [1] => stdClass Object
        (
            [name] => Uitvoerder
            [keyword] => production_performer
            [type] => String
            [value] => Axelle Red
        )

)

通过运行此代码并通过 customdataByKey 函数,你会得到如下结果。

stdClass Object
(
    [production_title] => Exil
    [production_performer] => Axelle Red
)

resourcebookingsByType

按类型筛选资源预订。第二个参数是可选的,默认类型是 "human"。

Yesplan\Filter::resourcebookingsByType($resourcebookings, $resource_type);

联系

由 Sil Verdickt 编写。

如有需要,请随时联系我。

www.tada.be