定制 rsgrinko/outline-api-client 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

rsgrinko/outline-api-client

最新稳定版本:1.0.3

Composer 安装命令:

composer require rsgrinko/outline-api-client

包简介

Simple API client for Outline

README 文档

README

Simple API client for OutlineVPN.

Installation

Install the latest version with

$ composer require rsgrinko/outline-api-client

Requirements

PHP >= 7.4

How to use

Usage API Client

require 'vendor/autoload.php';

use rsgrinko\Outline\Outline;

try {
    $outlineObject = new Outline('https://127.0.0.1:1234/EUwl3A2e-Af6cNeQs');
    $clientObject  = $outlineObject->getClientObject();
    // Get an array of all server keys
    $keysList = $clientObject->getKeys();

    // Create new key
    $key = $clientObject->create();

    // Rename exist key.
    $clientObject->setName($key['id'], 'My new key');

    // Set transfer data limit for key (in bytes)
    $clientObject->setLimit($key['id'], 5 * 1024 * 1024);

    // Remove key limit
    $clientObject->deleteLimit($key['id']);

    // Delete key
    $clientObject->delete($key['id']);

    // Get an array of used traffic for all keys
    $transferData = $clientObject->metricsTransfer();
} catch (Throwable $t) {
    // Handle exception...
}

Usage OutlineVPN key wrapper

Interaction with an existing key

<?php
require 'vendor/autoload.php';

use rsgrinko\Outline\Outline;

try {

    $outlineObject = new Outline('https://127.0.0.1:1234/EUwl3A2e-Af6cNeQs');
    $keyObject     = $outlineObject->getKeyObject();
    
    // Initializing an object and getting key data
    $key = $keyObject->load(1);
    
    // Get key id
    $key->getId();
    
    // Get key name
    $key->getName();
    
    // Get key transfer traffic
    $key->getTransfer();
    
    // Get access link 
    $key->getAccessUrl();

    // Rename exist key.
    $key->rename('New key name');

    // Set transfer data limit for key (in bytes)
    $key->limit(5 * 1024 * 1024);

    // Remove key traffic limit
    $key->deleteLimit();
    
    // Delete key
    $key->delete();
    
} catch (Throwable $e) {
    // Handle exception...
}

Creating a new key on the server

<?php
require 'vendor/autoload.php';

use rsgrinko\Outline\Outline;

try {
    $outlineObject = new Outline('https://127.0.0.1:1234/EUwl3A2e-Af6cNeQs');
    $keyObject     = $outlineObject->getKeyObject();
    
    
    // Create new key
    $key = $keyObject->create('Key name', 5 * 1024 * 1024);

} catch (Throwable $e) {
    // Handle exception...
}

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-11-14