steadfastcollective/laravel-dailyco

There is no license information available for the latest version (v1.2.0) of this package.

Laravel SDK for Daily.co's REST API

v1.2.0 2022-05-30 13:40 UTC

This package is auto-updated.

Last update: 2024-04-29 04:28:20 UTC


README

Total Downloads Latest Stable Version License

This package is an unofficial SDK for Daily.co's REST API.

Installation

  1. Install with Composer composer require steadfastcollective/laravel-dailyco
  2. Publish configuration file with php artisan vendor:publish
  3. Add your Daily API key to your .env
DAILY_API_KEY=
  1. You should now be able to perform API requests using the SDK! Follow the usage guide.

Usage

To make API requests with this package, you can either use the Facade, which we would recommend, or you could just manually new up the SteadfastCollective\LaravelDailyco\Daily class and call the methods from there.

All of our below examples use the Facade.

Rooms

Get rooms

use SteadfastCollective\LaravelDailyco\DailyFacade;

$rooms = DailyFacade::rooms();

Create room

use SteadfastCollective\LaravelDailyco\DailyFacade;

$room = DailyFacade::createRoom([...]);

Get room

use SteadfastCollective\LaravelDailyco\DailyFacade;

$room = DailyFacade::room('roomId', [...]);

Update room

use SteadfastCollective\LaravelDailyco\DailyFacade;

$room = DailyFacade::updateRoom('roomId', [...]);

Delete room room

use SteadfastCollective\LaravelDailyco\DailyFacade;

DailyFacade::deleteRoom('roomId', [...]);

Meeting tokens

Create meeting token

use SteadfastCollective\LaravelDailyco\DailyFacade;

$token = DailyFacade::createMeetingToken([...]);

Get meeting token

use SteadfastCollective\LaravelDailyco\DailyFacade;

$token = DailyFacade::meetingToken('meetingToken', [...]);

Recordings

Get recordings

use SteadfastCollective\LaravelDailyco\DailyFacade;

$recordings = DailyFacade::recordings([...]);

Get a recording

use SteadfastCollective\LaravelDailyco\DailyFacade;

$recording = DailyFacade::recording('recordingId', [...]);

Delete a recording

use SteadfastCollective\LaravelDailyco\DailyFacade;

$recording = DailyFacade::deleteRecording('recordingId', [...]);

Get recording access link

use SteadfastCollective\LaravelDailyco\DailyFacade;

$accessLink = DailyFacade::recordingAccessLink('recordingId', [...]);

Get recording download link

use SteadfastCollective\LaravelDailyco\DailyFacade;

$downloadLink = DailyFacade::recordingDownload('recordingId', [...]);

Create recording composite recipe

use SteadfastCollective\LaravelDailyco\DailyFacade;

$recipe = DailyFacade::createRecordingCompositesReceipe('recordingId', [...]);

Get recording composites

use SteadfastCollective\LaravelDailyco\DailyFacade;

$composites = DailyFacade::recordingComposites('recordingId', [...]);

Logs

Get logs

use SteadfastCollective\LaravelDailyco\DailyFacade;

$logs = DailyFacade::logs();

Meeting Analytics

Retrieve meeting analytics

use SteadfastCollective\LaravelDailyco\DailyFacade;

$analytics = DailyFacade::meetingAnalytics();

Presence

Active participants

use SteadfastCollective\LaravelDailyco\DailyFacade;

$participants = DailyFacade::presence();

Handling errors

This package will throw an exception whenever a non 200 response is returned from Daily's API. The full list of exceptions is provided below.

Status Code Exception
400 (Bad Request) SteadfastCollective\LaravelDailyco\Exceptions\BadRequestException
401 (Unauthorized) SteadfastCollective\LaravelDailyco\Exceptions\UnauthorizedException
404 (Not Found) SteadfastCollective\LaravelDailyco\Exceptions\NotFoundException
429 (Too Many Requests) SteadfastCollective\LaravelDailyco\Exceptions\TooManyRequestsException
5xx (Server Errors) SteadfastCollective\LaravelDailyco\Exceptions\ServerErrorException

Security

If you find any security vulnerabilities in this package, please directly email dev@steadfastcollective.com, rather than using the issue tracker.