承接 mikespub/synology 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mikespub/synology

最新稳定版本:v1.10.0

Composer 安装命令:

composer require mikespub/synology

包简介

Synology API interface

README 文档

README

This is an update of https://github.com/zzarbi/synology with new code standards and namespaces.

You will find some additional Tools here as well, including a Synology Web API Explorer using a basic REST API interface and generated OpenAPI files.

This is a PHP Library that consume Synology APIs

  • SYNO.Api :

    • connect
    • disconnect
    • getAvailableApi
  • SYNO.SynologyDriveServer :

    • connect
    • disconnect
    • getConnection
    • getShare
    • getLog
  • SYNO.CloudStationServer :

    • connect
    • disconnect
    • getConnection
    • getLog
  • SYNO.DownloadStation :

    • connect
    • disconnect
    • getInfo
    • getConfig
    • setConfig
    • getScheduleConfig
    • setScheduleConfig
    • getTaskList
    • getTaskInfo
    • addTask
    • deleteTask
    • pauseTask
    • resumeTask
    • getStatistics
    • getRssList
    • refreshRss
    • getRssFeedList
  • SYNO.AudioStation:

    • connect
    • disconnect
    • getInfo
    • getObjects
    • getObjectInfo
    • getObjectCover
    • searchSong
  • SYNO.FileStation:

    • connect
    • disconnect
    • getInfo
    • getShares
    • getObjectInfo
    • getList
    • search
    • download
    • createFolder
  • SYNO.VideoStation:

    • connect
    • disconnect
    • getInfo
    • getObjects
    • searchObject
    • listObjects
  • SYNO.SurveillanceStation:

    • connect
    • disconnect
    • getInfo
    • getCameraList
    • getHomeModeInfo
    • switchHomeMode

Usage for Synology Api:

$synology = new Synology\Api('192.168.10.5', 5000, 'http', 1);
//$synology->activateDebug();
$synology->connect('admin', 'xxxx');
print_r($synology->getAvailableApi());

Usage for AudioStation:

$synology = new Synology\Applications\AudioStation('192.168.10.5', 5000, 'http', 1);
$synology->connect('admin', 'xxxx');
print_r($synology->getInfo());

Usage for GenericClient:

use Synology\Applications\ClientFactory;

$synology = ClientFactory::getGeneric($service, '192.168.10.5', 5001, 'https');
$synology->connect('admin', '****');
// use generic client to call any api method
$result = $synology->call($api, $path, $method, $params, $version);

Synology Web API Explorer

OpenAPI files by service

The OpenAPI files below use a path with the api, version, method + session id parameters for each API method, that is mapped to the Synology API by a basic REST API script. Any special additional parameters needed for a particular API method are not taken into account here (except for login).

OpenAPI files combined

The OpenAPI files below combine all APIs above into a single file. There are two versions of the OpenAPI file available, one using short urls with query parameters, and the other specifying the complete path including the 4 standard parameters for each API method. Any special additional parameters needed for a particular API method are not taken into account here (except for login).

OpenAPI files for Synology Office Suite WebAPI

The OpenAPI files below are part of the Synology Office Suite WebAPI. They are documented in more detail at https://office-suite-api.synology.com/ (account required)

Synology REST API Gateway

The rest.php script acts as a basic REST API gateway for exploring the OpenAPI files. It must be copied in the base directory of your Web Station along with the combined.json, required.json and rest_mapping.php files if you want to use it.

For most of the services, only the list or getinfo methods will actually work without additional parameters...

Generated OpenAPI Files and JSON Schemas

See OpenAPI Files and JSON Schemas for supported API methods.

Generated Synology\Services Classes

Usage for service classes:

use Synology\Applications\ClientFactory;

$services = ClientFactory::getServices('192.168.10.5', 5001, 'https');
$services->connect('admin', '****');
// ...

See generated Synology\Services classes.

统计信息

  • 总下载量: 52
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 56
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-04-22