Looking to hire Laravel developers? Try LaraJobs

laravel-dailyco maintained by steadfastcollective

Description
Laravel SDK for Daily.co's REST API
Last update
2022/05/30 15:40 (dev-master)
Links
Downloads
496

Comments
comments powered by Disqus

Laravel Daily.co SDK

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.