| Server IP : 103.161.17.216 / Your IP : 216.73.216.1 Web Server : nginx/1.18.0 System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/app.houseland.info/application/libraries/sms/ |
Upload File : |
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Sms_clickatell extends App_sms
{
private $api_key;
private $requestURL = 'https://platform.clickatell.com/messages/http/send';
public function __construct()
{
parent::__construct();
$this->api_key = $this->get_option('clickatell', 'api_key');
$this->add_gateway('clickatell', [
'info' => "<p>Clickatell SMS integration is one way messaging, means that your customers won't be able to reply to the SMS.</p><hr class='hr-10'>",
'name' => 'Clickatell',
'options' => [
[
'name' => 'api_key',
'label' => 'API Key',
],
],
]);
}
public function send($number, $message)
{
try {
$response = $this->client->request('GET', $this->requestURL, [
'headers' => [
'X-Version' => '1',
],
'query' => [
'apiKey' => $this->api_key,
'to' => $number,
'content' => $message,
],
]);
$result = json_decode($response->getBody());
$error = false;
if ($result) {
if (isset($result->messages[0]->accepted) && $result->messages[0]->accepted == true) {
$this->logSuccess($number, $message);
return true;
} elseif (isset($result->messages) && isset($result->error)) {
$error = $result->error;
} elseif (isset($result->messages[0]->error) && $result->messages[0]->error != null) {
$error = $result->messages[0]->error;
}
}
} catch (\Exception $e) {
$response = json_decode($e->getResponse()->getBody()->getContents(), true);
$error = $response['message'];
}
if ($error !== false && $error !== null) {
$this->set_error($error);
}
return false;
}
}