escolalms/pencil-spaces

Escola 无头 LMS Pencil Spaces 集成

0.0.3 2024-02-14 13:33 UTC

This package is auto-updated.

Last update: 2024-09-14 14:46:44 UTC


README

swagger codecov phpunit downloads downloads downloads Maintainability phpstan

它做什么

此包用于与 Pencil Spaces 集成。

当前可用功能

  • API 用户创建
  • 空间创建
  • 生成登录用户的链接

安装

  • composer require escolalms/pencil-spaces
  • php artisan migrate

配置

您可以通过向您的 .env 文件添加值来配置此包

PENCIL_SPACES_API_KEY=api-key
PENCIL_SPACES_API_URL=https://api-url.com

或使用 Facade

use Illuminate\Support\Facades\Config;

Config::set('pencil_spaces.api_key', 'api_key');
Config::set('pencil_spaces.api_url', 'https://api-url.com');

/api/admin/config 端点

$this->actingAs($this->user, 'api')->json(
    'POST',
    '/api/admin/config',
    [
        'config' => [
            [
                'key' => 'pencil_spaces.api_key',
                'value' => 'api_key',
            ],
            [
                'key' => 'pencil_spaces.api_url',
                'value' => 'https://api-url.com',
            ],
        ]
    ]
);

示例

使用 EscolaLms\PencilSpaces\Facades\PencilSpace Facade 进行集成。

  • 生成 API 管理用户的直接登录链接 => PencilSpace::getDirectLoginUrl(int $userId, string $redirectUrl = null)
  • 创建空间 => PencilSpace::createSpace(CreatePencilSpaceResource $createSpaceResource)

将为没有 Pencil Space 账户的用户创建账户。表 pencil_space_accounts 将存储来自 Pencil Space 的 userIdemail

端点

端点定义在 swagger

测试

运行 ./vendor/bin/phpunit 以运行测试。测试详情 codecov

您可以在测试中使用 PencilSpace::fake()。对 API 的请求将被模拟,您将能够测试您的功能。

监听器

此包不监听任何事件。