peoplefone/provisioning-rpc

管理Auerswald、Gigaset、Panasonic、Snom、Yealink XML-RPC服务器MAC地址,以便将它们重定向到您的配置服务器。

1.1.0 2024-01-24 14:39 UTC

This package is auto-updated.

Last update: 2024-09-24 15:59:21 UTC


README

此软件包允许您检查/添加/删除以下XML-RPC服务器MAC地址:

  • Auerswald
  • Gigaset
  • Panasonic
  • Snom
  • Yealink

需要有效的制造商RPC服务器登录信息。

安装

composer require peoplefone/provisioning-rpc

示例

向下滚动,您将找到每个制造商的示例。

require("vendor/autoload.php");
use \Peoplefone\ProvisioningRPC;
use \Peoplefone\ProvisioningRPCResult;

$rpc = ProvisioningRPC::connect('manufacturer', ['username','password']);

$result = $rpc->checkPhone("123456ABCDEF");
$result = $rpc->addPhone("123456ABCDEF", "https://provisioningserver.domain.com", true);
$result = $rpc->removePhone("123456ABCDEF");

功能和结果

有三个功能可用。

  • checkPhone
  • addPhone
  • removePhone

每个函数都返回一个类型为ProvisioningRPCResult的对象。

Peoplefone\ProvisioningRPCResult Object
(
    [mac] => string
    [result] => bool
    [code] => int
    [message] => string
)

checkPhone

checkPhone(string $mac) : ProvisioningRPCResult

MAC地址是小写格式,并移除了所有标点符号。

addPhone

addPhone(string $mac, string $url, bool $overwrite) : ProvisioningRPCResult

MAC地址是小写格式,并移除了所有标点符号。

在添加电话之前,将调用checkPhone函数。

请注意:不属于您账户的MAC地址不能被覆盖!

removePhone

removePhone(string $mac) : ProvisioningRPCResult

MAC地址是小写格式,并移除了所有标点符号。

在删除电话之前,将调用checkPhone函数。

请注意:不属于您账户的MAC地址不能被删除!

按制造商的示例

Auerswald

$login_data = ['username','password'];

$rpc = ProvisioningRPC::connect('auerswald', $login_data);

$result = $rpc->checkPhone("123456ABCDEF");
$result = $rpc->addPhone("123456ABCDEF", "https://provisioningserver.domain.com/<MACADR>/", true);
$result = $rpc->removePhone("123456ABCDEF");

Gigaset

$login_data = ['username','password'];

$rpc = ProvisioningRPC::connect('gigaset', $login_data);
$rpc->setProfileName('profile_name'); // default = peoplefone

$result = $rpc->checkPhone("123456ABCDEF-1234");
$result = $rpc->addPhone("123456ABCDEF-1234", "https://provisioningserver.domain.com/%MACD/%DVID/", true);
$result = $rpc->removePhone("123456ABCDEF-1234");

Panasonic

$login_data = ['username','password'];

$rpc = ProvisioningRPC::connect('panasonic', $login_data);

$result = $rpc->checkPhone("123456ABCDEF");
$result = $rpc->addPhone("123456ABCDEF", "https://provisioningserver.domain.com/{MAC}/", true);
$result = $rpc->removePhone("123456ABCDEF");

Snom

$login_data = ['username','password'];

$rpc = ProvisioningRPC::connect('snom', $login_data);

$result = $rpc->checkPhone("123456ABCDEF");
$result = $rpc->addPhone("123456ABCDEF", "https://provisioningserver.domain.com/{mac}/", true);
$result = $rpc->removePhone("123456ABCDEF");

Yealink

$login_data = ['username','password'];

$rpc = ProvisioningRPC::connect('yealink', $login_data);

$result = $rpc->checkPhone("123456ABCDEF");
$result = $rpc->addPhone("123456ABCDEF", "configured_server_name", true);
$result = $rpc->removePhone("123456ABCDEF");