sheavescapital / laravel-ringcentral
A Laravel package for the RingCentral SDK for PHP
Requires
- php: ^8.0
- laravel/framework: ^11.0|^12.0
Requires (Dev)
- laravel/facade-documenter: dev-main
- laravel/pint: ^1.18
- orchestra/testbench: ^6.0|^7.0|^8.0|^9.0|^10.0
- phpstan/extension-installer: ^1.4
- phpunit/phpunit: ^9.3.0|^10.0|^11.0
- vlucas/phpdotenv: ^5.3
README
This is a simple Laravel Service Provider providing access to the RingCentral API.
Forked from https://github.com/coxlr/laravel-ringcentral, Created by Lee Cox With code from: RingCentral Connect Platform PHP SDK
Installation
This package requires PHP 8.0 and Laravel 8 or higher.
To install the PHP client library using Composer:
composer require sheavescapital/laravel-ringcentral
The package will automatically register the RingCentral
provider and facade.
You can publish the config file with:
php artisan vendor:publish --provider="SheavesCapital\RingCentral\RingCentralServiceProvider" --tag="config"
Then update config/ringcentral.php
with your credentials. Alternatively, you can update your .env
file with the following:
RINGCENTRAL_CLIENT_ID=my_client_id RINGCENTRAL_CLIENT_SECRET=my_client_secret RINGCENTRAL_SERVER_URL=my_server_url RINGCENTRAL_JWT=my_jwt RINGCENTRAL_VERIFICATION_TOKEN=my_verification_token
This package uses the JWT autentication method. You can learn more about setting up JWT for your RingCentral account here.
Usage
To use the RingCentral Client Library you can use the facade, or request the instance from the service container.
Sending an SMS message
RingCentral::sendMessage([ 'from' => '18042221111', 'to' => '18042221111', 'text' => 'Using the facade to send a message.' ]);
Or
$ringcentral = app('ringcentral'); $ringcentral->sendMessage([ 'to' => '18042221111', 'text' => 'Using the instance to send a message.' ]);
Properties
Name | Required | Type | Default | Description |
---|---|---|---|---|
to | true | String | The number to send the message to, must include country code | |
text | true | String | The text of the message to send |
Retrieving Extensions
RingCentral::getExtensions();
Or
$ringcentral = app('ringcentral'); $ringcentral->getExtensions();
Get messages sent and received for a given extension
RingCentral::getMessagesForExtensionId(12345678);
Or
$ringcentral = app('ringcentral'); $ringcentral->getMessagesForExtensionId(12345678);
The default from date is the previous 24 hours, to specficy the date to search from pass the require date as a parameter.
RingCentral::getMessagesForExtensionId(12345678, (new \DateTime())->modify('-1 hours'));
Parameters
Name | Required | Type | Default | Description |
---|---|---|---|---|
extensionId | true | String | The RingCentral extension Id of the extension to retrieve the messages for | |
fromDate | false | Object | The date and time to start the search from must be a PHP date object | |
toDate | false | Object | The date and time to end the search must be a PHP date object | |
perPage | false | Int | 100 | The number of records to return per page |
Get a messages attachment
RingCentral::getMessageAttachmentById(12345678, 910111213, 45678910);
Or
$ringcentral = app('ringcentral'); $ringcentral->getMessageAttachmentById(12345678, 910111213, 45678910);
Parameters
Name | Required | Type | Default | Description |
---|---|---|---|---|
extensionId | true | String | The RingCentral extension Id of the extension the messages belongs to | |
messageId | true | String | The id of the message of the the attachment belongs to | |
attachmentId | true | String | The id of the attachment |
License
The MIT License (MIT). Please see License File for more information.