ringcloud/ringcloud-phapi

此包已废弃,不再维护。未建议替代包。
关于此包的最新版本(v1.0.3)没有可用的许可信息。

API ringcloud.ru

v1.0.3 2015-06-10 16:46 UTC

This package is not auto-updated.

Last update: 2018-12-04 04:33:48 UTC


README

用于操作API ringcloud.ru的库。
需要PHP版本5.3或更高。

开始
账户
用户
呼叫

安装

该库可作为Composer包使用。在您的composer.json文件中的require部分指定它。

{  
    "require": {  
        "ringcloud/ringcloud-phapi": "*",
    }
}

如有问题或需要更多信息,请参阅Composer文档

授权

> 在使用API之前,需要在个人账户中生成密钥和密码。

要访问服务,创建一个类RingCloud\Phapi\Client的实例,并传递授权密钥和密码

<?php

use RngCloud\Phapi\Client;

$key = "YOUR_API_KEY";
$password = "YOUR_API_PASSWORD";

$client = new Client($key, $password);

账户余额状态

要获取账户余额状态信息,请使用对象RingCloud\Phapi\Account\Account的相应方法。

<?php

echo $client->account()->getBalance(); // (float) 578.00

用户

通过类RingCloud\Phapi\Users\UserCollection的实例处理用户,该实例可以通过调用方法Client::users()获得。

类UserCollection实现了Iterator接口,因此您可以在循环中使用它。

<?php

foreach ($client->users() as $user) {
    get_class($user); // RingCloud\Phapi\Users\User
    // действия над пользователем
}

获取用户数据

要获取特定用户的信息,请使用集合方法RingCloud\Phapi\Users\UserCollection::get()

<?php

$user = $client->users()->get('167965');
echo $user->getUsername() . "\n";
echo $user->getNumber();

创建用户

使用方法RingCloud\Phapi\Users\UserCollection::create()可以创建新用户。该方法接受一个对象RingCloud\Phapi\Users\User作为参数。

<?php

$user = new User();
$user->setEmail('sam@example.com');
$user->setPassword('mySecret');
$user->setNumber(481);

$client->users()->create($user);

更新用户

要更新用户数据,请设置必要的参数并调用RingCloud\Phapi\Users\User::update()方法。

<?php

$user = $client->users()->get('1671138');

$user->setEmail('sam@example.com');
$user->setNumber(495);
$user->setPassword('newPassword');
$user->update();

通话记录

使用方法RingCloud\Phapi\Users\User::getRecords()获取用户通话记录的集合,该方法返回一个实现了Iterator接口的集合,因此您可以在循环中使用它。

<?php

$user = $client->users()->get('167972');

foreach ($user->getRecords() as $record) {
    echo $record->getFileName(); // 02fadec3-4385-57ae-b78f-47af1327b5aa.mp3
    echo $record->getDate()->format('Y-m-d H:i:s'); // 2015-04-10 16:23:22
}

要处理单个记录,请使用集合方法RingCloud\Phapi\Records\RecordCollection::get()

<?php

$user = $client->users()->get('167972');
$record = $user->getRecords()->get('02fadec3-4385-57ae-b78f-47af1327b5aa.mp3');
echo $record->getFileName();

Object Record 允许您保存文件。使用相应的方法进行此操作。

<?php

$user = $client->users()->get('167972');
$record = $user->getRecords()->get('02fadec3-4385-57ae-b78f-47af1327b5aa.mp3');
$record->download('/local/save/path/record.mp3');

呼叫

通过类RingCloud\Phapi\Calls\CallCollection的实例处理呼叫,该实例可以通过调用方法Client::calls()获得。

类CallCollection实现了Iterator接口,因此您可以在循环中使用它。

<?php

foreach ($client->calls() as $call) {
    // some action  
}

呼叫原始

CallCollection对象允许您创建呼叫。为此,需要指定拨打的电话号码和将与之建立连接的用户姓名。

<?php

use RingCloud\Phapi\Client;

$key = 'YOUR_API_KEY'
$password = 'YOUR_API_PASSWORD';

$client = new Client($key, $password);
$client->calls()->originate('79067776688', '167965');

RingCloud\Phapi\Client

Client::__construct($apiKey, $password)

参数
  • $apiKey - 在个人账户中生成的密钥
  • $password - 在个人账户中生成的密码

Client::calls()

返回值

RingCloud\Phapi\Users\User

User::getEmail()

返回值
  • string - 用户邮箱

User::getNumber()

返回值
  • int - 用户内部号码

User::getPassword()

返回值
  • string - 用户密码

User::getRecords()

返回值

User::getVoiceMailBox()

返回值
  • string - 语音邮件发送状态。参见 User::VOICE_MAIL_BOX_ONUser::VOICE_MAIL_BOX_OFF

User::setEmail($email)

参数
  • string - 用户邮箱

User::setNumber($number)

参数
  • $number - 用户内部号码

User::setPassword($password)

参数
  • $password - 用户的新密码

User::setVoiceMailBox($state)

参数
  • $state - 语音邮件发送状态。参见 User::VOICE_MAIL_BOX_ONUser::VOICE_MAIL_BOX_OFF

User::update()

RingCloud\Phapi\Users\UserCollection

UserCollection::get($username)

参数
  • $username - 用户(SIP 登录名)

UserCollection::create($user)

参数
返回值

RingCloud\Phapi\Calls\CallCollection

  • [originate]($targetNumber, $username)

CallCollection::originate($targetNumber, $username)

参数
  • $targetNumber - 拨打的电话号码
  • $username - 将与其连接的内部用户

RingCloud\Phapi\Records\Record

Record::download($savePath)

参数
  • $savePath - 保存文件的路径
返回值
  • bool

Record::getFileName()

返回值
  • string - 录音文件名

Record::getDate()

返回值
  • \DateTime - 录音文件的创建日期

Record::getUser()

返回值
  • RingCloud\Phapi\Users\User - 与该记录关联的用户

RingCloud\Phapi\Records\RecordCollection

RecordCollection::get($fileName)

参数
  • $fileName - 录音文件名