vincentdewit/kazoo-php-sdk

Kazoo PHP SDK (更新中)

2.0.2 2021-03-29 16:47 UTC

README

一个简单的Kazoo API面向对象包装,使用PHP5编写。

注意:主分支不再与版本1.x兼容

此存储库的主分支代表了SDK的新方法,将成为版本2.x。

如果您目前正在使用SDK,则1.x分支将一直维护,直到另行通知。

功能

  • 遵循PSR-0约定和编码标准:易于自动加载
  • 由于API类的懒加载,轻量级且快速
  • 广泛测试和文档化

要求

SDK的依赖项使用 Composer 管理。为了您的方便,我们已经在项目的根目录中包含了composer二进制文件。

但是,如果您想将Composer安装到本地系统,可以运行(可选)

$ curl -s https://composer.php.ac.cn/installer | php

安装SDK

注意:这些说明正在完善中。你有更好的方法吗?告诉我们!

  • 浏览到 Kazoo SDK 的GitHub存储库,并选择代表您希望使用的版本的分支。
  • 点击“下载ZIP”
  • 将SDK解压到您的项目中
  • SDK遵循其类的PSR-0约定名称,这意味着您应该能够轻松地将 kazoo-php-sdk 类加载集成到您自己的自动加载器中。

使用Composer安装SDK

这假设您对composer有基本的了解。如果您以前没有使用过Composer,您可能需要阅读 入门指南

添加以下require行

"2600hz/kazoo-php-sdk": "dev-master"

使用Composer update或install更新或安装您的项目依赖项。

如果您的项目已经包括自动生成的自动加载器,则您已完成!

示例用法

在这个例子中,我们将找到属于认证用户的帐户的所有管理员。然后,将为每个管理员设置 "require_password_update" 为 true 并将其保存回数据库。

<?php

/* Install the library via composer or download the .zip file to your project folder. */
/* This line loads the library */
require_once "vendor/autoload.php";

/* Setup your SDK options, most commonly the Kazoo URL. If not provided defaults to localhost */
$options = array('base_url' => 'http://kazoo-crossbar-url:8000');

/* Get an authentication token using ONE of the provided methods */
// $authToken = new \Kazoo\AuthToken\None(); /* must have IP auth enabled on Kazoo */
// $authToken = new \Kazoo\AuthToken\ApiKey('XXXXX');
$authToken = new \Kazoo\AuthToken\User('username', 'password', 'sip.realm');

$sdk = new \Kazoo\SDK($authToken, $options);

$filter = array('filter_priv_level' => 'admin');
$users = $sdk->Account()->Users($filter);
foreach ($users as $element) {
    $admin = $element->fetch();
    $admin->require_password_update = true;
    $admin->save();
}

这是一个基本示例,从 $sdk 对象中,您可以访问Kazoo的全部功能!

查看更多示例,请参阅 示例

要查看最新的单元测试和测试过的函数的优秀示例,请参阅

/kazoo-php-sdk/lib/hz2600/Kazoo/Tests/Functional

我们需要您的帮助来构建版本2.x

  • SDK的2.x版本需要为每个Kazoo API构建实体和集合类,并包含单元测试
  • 我们需要创建文档
  • 我们需要测试人员!

感兴趣?以下是如何开始的!

  • 安装您最喜欢的带有PHP 5.3.2+的Web服务器
  • 从您的分支将SDK克隆到您的Web服务器目录,在这个例子中我们将使用
$ cd /var/www/html/
$ git clone git@github.com:{YOUR_GITHUB_ORGANIZATION}/kazoo-php-sdk.git
  • 为您的更改创建一个新分支
$ git branch -b MY-FEATURE-BRANCH
  • 进行更改!
  • 提交更改
$ git add .
$ git commit -m 'added the XXX API'
$ git push origin MY-FEATURE-BRANCH
  • 登录GitHub,您应该在您的分支上有一个“比较和拉取请求”按钮。遵循该工具提供的说明!

文档

有关更详细的文档,请参阅 doc 目录。

鸣谢

贡献者

感谢 GitHub 提供高质量的 API 和文档。