• Модуль: messageservice
  • Путь к файлу: ~/bitrix/modules/messageservice/lib/sender/sms/mfmsru.php
  • Класс: BitrixMessageServiceSenderSmsMfmsRu
  • Вызов: MfmsRu::sendViaHpg
private function sendViaHpg(array $messageFields)
{
	$result = new SendMessage();

	$params = [
		'login' => $this->getOption('login'),
		'pass' => $this->getOption('password'),
		'subject' => $messageFields['MESSAGE_FROM'],
		'address' => str_replace('+', '', $messageFields['MESSAGE_TO']),
		'text' => $this->prepareMessageBodyForSend($messageFields['MESSAGE_BODY']),
	];

	$remoteCallResult = $this->touchHpg($this->getOption('hpg_send_url'), $params);
	$result->setServiceRequest($remoteCallResult->getHttpRequest());
	$result->setServiceResponse($remoteCallResult->getHttpResponse());
	if (!$remoteCallResult->isSuccess())
	{
		$result->addErrors($remoteCallResult->getErrors());
	}
	else
	{
		$answer = $remoteCallResult->getData();
		[$code, $index, $msgId] = $answer;

		if ($msgId)
		{
			$result->setExternalId($msgId);
			$result->setStatus(MessageServiceMessageStatus::SENT);
		}
	}

	return $result;
}