wharfs/unms-api-client

用于与Ubiquiti的UNMS控制器配合使用的API客户端类

v1.1 2022-06-11 10:10 UTC

This package is auto-updated.

Last update: 2024-09-09 03:04:29 UTC


README

wharfs - 分支以添加getAllSites(),并调整为在Laravel中使用,并更接近父类UniFi-API-client。

--

将仓库添加到composer.json

"repositories": [{
    "type": "vcs",
    "url": "git@github.com:wharfs/unms-api-client"
}],

--

UNMS API客户端类 PHP类,提供对Ubiquiti的UNMS API的访问,支持UNMS控制器软件的2.1版本。它是用于我们monsansfil.ca项目的独立版本,这是一个私有项目。

支持的方法和函数 当前类支持以下函数和方法,通过UNMS API获取/发布/PUT/删除数据

login()

logout()

create_site()

editSiteName()

getSites()

setSite()

authorizeDevice()

getAircubeWirelessConfig()

getAircubeNetworkConfig()

getAircubeSystemConfig()

setCubeLedOn()

setCubeName()

setCubeResetEnabled()

setCubePoeEnabled()

setAircubeSystemConfig()

setAircubeNetworkConfig()

setAircubeWirelessConfig()

getDevices()

getRouterInterfaces()

getAirCubeData()

getAirCubeDevices()

geteRouterDHCPLeases()

getAircubeWirelessInfo()

restartDevice($deviceId)

deleteDevice($deviceId)

内部函数,获取器/设置器

set_debug() get_debug() set_auto_logout(true/false) get_token() get_last_results_raw() get_last_error_message() 请参阅源代码以获取有关函数/方法和其参数的更多详细信息。

要求 web服务器已安装PHP和cURL模块(在apache2上测试,PHP版本为7.2.2和cURL 7.45.0),此服务器与运行UNMS控制器的服务器和端口(通常为TCP端口443)之间有网络连接。安装 您可以使用Git或简单地下载发布版来安装API客户端类。

Git 在您的项目目录的shell中执行以下git命令

git clone https://github.com/spacie2136/unms.git 当git完成克隆后,在您的代码中包含包含类的文件,如下所示

require_once('path/to/src/Unms.php'); 下载发布版 如果您不想使用composer或git,可以简单地下载包,解压缩zip文件,然后在您的代码中包含包含类的文件,如下所示

require_once('path/to/src/Unms.php'); 示例用法 使用类的简单示例

/**

  • 初始化Unms API连接类,登录到控制器并请求站点的设备
  • (此示例假设您已经将正确的值分配给了使用的变量) */ $unms_connection = new Unms($user, $password, $url, true); $login = $unms_connection->login(); $results = $unms_connection->getDevices($site_id); // 返回包含站点设备的PHP数组 IMPORTANT NOTES: 构造函数中传递的最后一个参数(true),启用了对控制器SSL证书的验证,该验证默认情况下是禁用的。强烈建议在您已安装有效SSL证书的生成环境中启用此功能,该SSL证书与在baseurl参数中使用的服务器FQDN相关联。

在上面的示例中,$site_id 是在Unms控制器中管理站点时可见的URL中的ID

https://:443/sites/bb44fac2-3fb6-440d-bd37-f70202bcaf0f/devices

在这种情况下,bb44fac2-3fb6-440d-bd37-f70202bcaf0f 是$site_id所需的值。

需要帮助或有建议? 仍然需要添加功能并提高此类可用性,因此所有建议/评论都欢迎。请使用github问题列表来分享您的想法/问题。

贡献如果您想贡献代码(改进),请打开一个issue,并将您的代码包含在其中,或者创建一个pull request。

致谢此类基于以下开发者的工作:

Malle-pietje: https://github.com/Art-of-WiFi/UniFi-API-client MonSansFil: https://github.com/MonSansFil/unms 重要免责声明许多此API客户端类中的功能并未由UBNT官方支持,因此可能在Unms控制器API的将来版本中不受支持。