amphibee/laravel-coconut

laravel 的 coconut 编解码库包装器

1.0.1 2023-07-31 21:45 UTC

This package is auto-updated.

Last update: 2024-08-30 01:51:33 UTC


README

Latest Version on Packagist Total Downloads

这是一个用于 coconut 编解码 API 的 laravel 包装包。更多详细信息,请查看官方 PHP 库 https://github.com/opencoconut/coconutphp

安装

您可以通过 composer 安装此包

composer require amphibee/laravel-coconut

用法

设置以下环境变量以使 coconut 连接到 gcs 桶

# .env
COCONUT_API_KEY=
COCONUT_GCS_BUCKET=
COCONUT_GCS_KEY=
COCONUT_GCS_SECRET=

或以下变量,如果您使用 FTP

# .env
COCONUT_STORAGE_PUBLIC_HOST=
COCONUT_FTP_STORAGE_URL=

每当 coconut 发送通知时,此包将触发一个事件,因此您需要创建一个监听器以在事件触发时执行操作。Coconut 将向名为 coconut.callback 的路由发送 webhook 事件(由包创建)

// Create a coconut instance
$coconut = app('coconut');
$coconut->notification = [
    'type' => 'http',
    'url' =>  route('coconut.callback',$this->id),
    'metadata' => true
];

//Parameters
$jobParams = [
    'input' => ['url' => $this->rawUrl()],
    'outputs' => [
        'jpg:720x' => Storage::disk('gcs')->path($this->THUMBNAIL_DIRECTORY_PATH . $this->id . '.jpg') 
    ]
];

//Create the job
$job = $coconut->job->create($jobParams);

测试

composer test

变更日志

  • v1.0 Laravel 10 兼容性
  • v1.0.1 添加了 ftp 和 coconut 存储,更新了路由事件

感谢

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件