. */ namespace App\Libraries; use Ovh\Api; class OvhSMS { private $_api; private $_smsService; public function __construct() { $this->_api = new Api( config('ovh.app_key'), config('ovh.app_secret'), config('ovh.app_endpoint'), config('ovh.app_consumer_key') ); $smsServices = $this->_api->get('/sms/'); if (!empty($smsServices)) $this->_smsService = $smsServices[0]; } public function send(string $to, string $message) { $content = (object) [ 'charset' => 'UTF-8', 'class' => 'phoneDisplay', 'coding' => '7bit', 'message' => $message, 'noStopClause' => true, 'priority' => 'high', 'receivers' => [ $to ], 'sender' => config('ovh.app_sender'), 'senderForResponse' => false, 'validityPeriod' => 2880 ]; $this->_api->post('/sms/'. $this->_smsService . '/jobs', $content); // One credit removed $this->_api->get('/sms/'. $this->_smsService . '/jobs'); } }