nioc/synology-srm-php-api
Composer 安装命令:
composer require nioc/synology-srm-php-api
包简介
API wrapper for Synology Router Manager (SRM)
README 文档
README
API wrapper for Synology Router Manager (SRM).
Key features
- get WAN status,
- get network utilization,
- get devices with status, IP, etc... ,
- get wifi devices with link quality, signal strength, max rate, band used, etc... ,
- get devices traffic usage (live, day, week, month),
- get mesh nodes with status, connected devices, etc... ,
- get wake-on-lan devices,
- get access control groups with devices, online status, etc... ,
- add wake-on-lan on a device,
- wake-on-lan a device.
Installation
To install with composer:
composer require nioc/synology-srm-php-api
Or download latest release zip archive,
Usage
Create client
Create a simple client
$client = new SrmClient(null, $username, $password, $hostname, $port, $https, false);
Create a client with session keeped
If you can store session id, you can pass it value to constructor. if value is null, client will execute a login request.
$client = new SrmClient(null, $username, $password, $hostname, $port, $https, true, $sid);
To retrieve session id value in order to store it:
$sid = $client->getSid();
Create a client with logger
Constructor first parameter is LoggerInterface, allowing you to use any PSR-3 compliant logger library (like Monolog or Analog).
Following a basic console logger with Analog:
use Analog\Logger; use Analog\Handler\EchoConsole; $logger = new Logger; Analog::$format = "%s - %s - %s - %s\n"; $logger->handler( Analog\Handler\Threshold::init( Analog\Handler\LevelName::init( EchoConsole::init() ), Analog::INFO ) ); $client = new SrmClient($logger, $username, $password, $hostname, $port, $https, true, $sid);
Get devices, mesh, traffic, ...
Simply call the requested client method, exemple with traffic:
$devicesTraffic = $client->getTraffic('live');
You can see a full exemple here.
Versioning
This library is maintained under the semantic versioning guidelines.
See the releases on this repository for changelog.
Contributing
If you have a suggestion, please submit a feature request. Pull requests are welcomed.
Credits
- Nioc - Initial work
See also the list of contributors to this project.
License
This project is licensed under the GNU Affero General Public License v3.0 - see the LICENSE file for details
nioc/synology-srm-php-api 适用场景与选型建议
nioc/synology-srm-php-api 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 200 次下载、GitHub Stars 达 6, 最近一次更新时间为 2020 年 05 月 02 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「api」 「router」 「synology」 「srm」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 nioc/synology-srm-php-api 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 nioc/synology-srm-php-api 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 nioc/synology-srm-php-api 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A library to communicate with the Synology Chat API
A PSR-7 compatible library for making CRUD API endpoints
Synology API interface
Handle Synology API
Router
PMVC App Action Router
统计信息
- 总下载量: 200
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 6
- 点击次数: 14
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: AGPL-3.0-or-later
- 更新时间: 2020-05-02