joeyrivera/badgeville-php

Badgeville Cairo SDK for PHP

dev-master 2014-08-27 14:22 UTC

This package is not auto-updated.

Last update: 2024-09-24 01:27:58 UTC


README

版本 0.1 - 不稳定

这是一个正在进行中的项目,许多内容还将发生变化。希望很快就能准备好测试版。目标是提供一个易于使用的库,用于与Cairo API交互。

##使用注意事项:功能可能会在测试版之前发生变化

通过composer安装

{
    "require": {
        "joeyrivera/badgeville-php": "dev-master"
    }
}

开始使用最好的方式是在examples/index.php中测试find/findall实用程序。要使用,请复制examples/config.php.dist并将其保存为examples/config.php。接下来,更新params数组,使其看起来像

$params = [
    'url' => 'https://sandbox.badgeville.com/cairo',
    'apiVersion' => 'v1',
    'apiKey' => '234lkj23l4kj23l4l2j34lk23j4lk23l4', // get this from your badgeville dashboard
    'siteId' => '23k4lj23kl4j23lkj4', // get this from your badgeville dashboard
];

现在,您可以将浏览器直接指向examples文件夹并使用该实用程序。

要开始使用该库,您需要创建一个站点实例,传递站点ID,并将客户端设置为GuzzleHttp\Client实例。

use Badgeville\Api\Cairo\Sites;
$site = new Sites($siteId);
$site->setClient(new GuzzleHttp\Client($params));

特定站点调用示例

$player = $site->players()->find('joey@rivera.com');

$player = $site->players()->find('234lkj234lkj234lkj', [
    'includes' => 'rewards,positions,activities'
]);

$players = $site->players()->findAll();

$player = $site->players()->create([
    'name' => 'Joey Tester2',
    'email' => 'joeyrivera@air-watch.com2'
]);

$player->display_name = 'testing2';
$player->save();

$activity = $site->players('234lkj234lkj234lkj')->activities()->create('logged');

###待办事项

  • 单元测试
  • 元数据映射?
  • monolog
  • 确定异常处理
  • 需要错误处理,资源应指明其可以做什么,例如:创建与查找

考虑以下更改

  • 所以所有类都是单数命名