coxy121 / ringcentral-laravel
Laravel Package for the RingCentral SDK for PHP
Installs: 14 053
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 6
Open Issues: 0
Requires
- php: >=7.1.3
- illuminate/support: ~5.8.0|^6.0|^7.0|^8.0
- ringcentral/ringcentral-php: ^2.1
Requires (Dev)
- orchestra/testbench: ^4.0|^5.0
- phpunit/phpunit: ^8.3|^9.0
- vlucas/phpdotenv: ^3.6
This package is auto-updated.
Last update: 2023-03-17 01:33:18 UTC
README
DEPRECATED in favor of coxlr/laravel-ringcentral
Introduction
This is a simple Laravel Service Provider providing access to the RingCentral SDK for PHP.
Installation
To install the PHP client library using Composer:
composer require coxy121/ringcentral-laravel
Alternatively, add these two lines to your composer require section:
{ "require": { "coxy121/ringcentral-laravel": "^1.0" } }
Laravel 5.5+
If you are using Laravel 5.5 or above, the package will automatically register the RingCentral
provider and facade.
Laravel 5.4 and below
Add RingCentral\Laravel\RingCentralServiceProvider
to the providers
array in your config/app.php
:
'providers' => [ // Other service providers... RingCentral\Laravel\RingCentralServiceProvider::class, ],
If you want to use the facade interface, you can use
the facade class when needed:
use RingCentral\Laravel\Facade\RingCentral;
Or add an alias in your config/app.php
:
'aliases' => [ ... 'RingCentral' => RingCentral\Laravel\Facade\RingCentral::class, ],
Configuration
You can use artisan vendor:publish
to copy the distribution configuration file to your app's config directory:
php artisan vendor:publish
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_USERNAME=my_username
RINGCENTRAL_OPERATOR_EXTENSION=my_operator_extension
RINGCENTRAL_OPERATOR_PASSWORD=my_operator_password
#If admin details are a different extension to the operator
RINGCENTRAL_ADMIN_EXTENSION=my_admin_extension
RINGCENTRAL_ADMIN_PASSWORD=my_admin_password
Usage
To use the RingCentral Client Library you can use the facade, or request the instance from the service container.
Sending an SMS message (requires login in extension to be company operator)
RingCentral::sendMessage([ 'to' => '13107960080', 'text' => 'Using the facade to send a message.' ]);
Or
$ringcentral = app('ringcentral'); $ringcentral->sendMessage([ 'to' => '13107960080', '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 (requires admin access)
RingCentral::getExtensions();
Or
$ringcentral = app('ringcentral'); $ringcentral->getExtensions();
Get messages sent and received for the operator
RingCentral::getOperatorMessages();
Or
$ringcentral = app('ringcentral'); $ringcentral->getOperatorMessages();
The default from date is the previous 24 hours, to specify the date to search from pass the require date as a parameter.
RingCentral::getOperatorMessages((new \DateTime())->modify('-1 hours'));
Parameters
Name | Required | Type | Default | Description |
---|---|---|---|---|
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 messages sent and received for a given extension (Needs admin access)
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 (requires admin access)
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 |
For more information on using the RingCentral client library, see the official client library repository.