A Laravel Package for working with Cloudflare Stream seamlessly
Run
composer require bjthecod3r/laravel-cloudflare-stream
You may publish the configuration file using this command:
php artisan vendor:publish --provider="Bjthecod3r\CloudflareStream\CloudflareStreamServiceProvider"
A configuration file named cloudflare-stream
with some defaults and required properties will be placed in your config
directory.
Open your .env file and add the following variables, remember to substitute the actual values
CLOUDFLARE_API_TOKEN=xxxxxxxxxxxx
CLOUDFLARE_ACCOUNT_ID=xxxxxxxxxxxxxxxxx
CLOUDFLARE_BASE_API_URL=https://api.cloudflare.com/client/v4/accounts
CLOUDFLARE_KEY_ID=xxxxxxxxxxxxxxx
Using the package is pretty straight forward, you can make use of the class like you would do any in Laravel. There is also support for facade.
use Bjthecod3r\CloudflareStream\CloudflareStream;
use Bjthecod3r\CloudflareStream\Facades\CloudflareStream as CloudflareStreamFacade;
class StreamService
{
public function fetchStream(string $id, CloudflareStream $cloudflareStream)
{
dd($cloudflareStream->fetchVideo($id));
}
public function fetchVideo(string $id): array
{
return CloudflareStreamFacade::fetchVideo(string $id)
}
}
This package currently covers my current usage of cloudflare stream, although, in the next couple of weeks I plan to expand its features. However, if there is a need for a particular feature, feel free to reach out to me via fabulousbj@hotmail.com, and I'll gladly attend to it.
- Add Tests
- Add the remaining useful features available on Cloudflare Stream
Please feel free to fork this package and contribute by submitting a pull request to enhance the functionalities.
The MIT License (MIT). Please see License File for more information.