* LightSmsTransport.php - quick fix for private constant.
This commit is contained in:
parent
3cbbc85e43
commit
5e54dfe475
@ -30,12 +30,8 @@ final class LightSmsTransport extends AbstractTransport
|
|||||||
private $login;
|
private $login;
|
||||||
private $password;
|
private $password;
|
||||||
private $phone;
|
private $phone;
|
||||||
/**
|
|
||||||
* @var MessageInterface
|
|
||||||
*/
|
|
||||||
private $message;
|
|
||||||
|
|
||||||
private $errorCodes = [
|
private const ERROR_CODES = [
|
||||||
'000' => 'Service unavailable',
|
'000' => 'Service unavailable',
|
||||||
'1' => 'Signature not specified',
|
'1' => 'Signature not specified',
|
||||||
'2' => 'Login not specified',
|
'2' => 'Login not specified',
|
||||||
@ -103,9 +99,7 @@ final class LightSmsTransport extends AbstractTransport
|
|||||||
throw new UnsupportedMessageTypeException(__CLASS__, SmsMessage::class, $message);
|
throw new UnsupportedMessageTypeException(__CLASS__, SmsMessage::class, $message);
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->message = $message;
|
$signature = $this->generateSignature($message);
|
||||||
|
|
||||||
$signature = $this->generateSignature();
|
|
||||||
|
|
||||||
$endpoint = sprintf(
|
$endpoint = sprintf(
|
||||||
'https://%s/external/get/send.php?login=%s&signature=%s&phone=%s&text=%s&sender=%s×tamp=%s',
|
'https://%s/external/get/send.php?login=%s&signature=%s&phone=%s&text=%s&sender=%s×tamp=%s',
|
||||||
@ -123,12 +117,12 @@ final class LightSmsTransport extends AbstractTransport
|
|||||||
$content = $response->toArray(false);
|
$content = $response->toArray(false);
|
||||||
|
|
||||||
if (isset($content['error'])) {
|
if (isset($content['error'])) {
|
||||||
throw new TransportException('Unable to send the SMS: '.$this->errorCodes[$content['error']], $response);
|
throw new TransportException('Unable to send the SMS: '.self::ERROR_CODES[$content['error']], $response);
|
||||||
}
|
}
|
||||||
|
|
||||||
$phone = preg_replace("/[^\d]/", '', $message->getPhone());
|
$phone = preg_replace("/[^\d]/", '', $message->getPhone());
|
||||||
if (32 == $content[$phone]['error']) {
|
if (32 == $content[$phone]['error']) {
|
||||||
throw new TransportException('Unable to send the SMS: '.$this->errorCodes[$content['error']], $response);
|
throw new TransportException('Unable to send the SMS: '.self::ERROR_CODES[$content['error']], $response);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (0 == $content[$phone]['error']) {
|
if (0 == $content[$phone]['error']) {
|
||||||
@ -139,14 +133,14 @@ final class LightSmsTransport extends AbstractTransport
|
|||||||
return $sentMessage;
|
return $sentMessage;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function generateSignature(): string
|
private function generateSignature(SmsMessage $message): string
|
||||||
{
|
{
|
||||||
$params = [
|
$params = [
|
||||||
'timestamp' => time(),
|
'timestamp' => time(),
|
||||||
'login' => $this->login,
|
'login' => $this->login,
|
||||||
'phone' => str_replace('+', '', $this->message->getPhone()),
|
'phone' => str_replace('+', '', $message->getPhone()),
|
||||||
'sender' => $this->phone,
|
'sender' => $this->phone,
|
||||||
'text' => $this->message->getSubject(),
|
'text' => $message->getSubject(),
|
||||||
];
|
];
|
||||||
|
|
||||||
ksort($params);
|
ksort($params);
|
||||||
|
Reference in New Issue
Block a user