• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/sms/provider/smsru.php
  • Класс: Bitrix\Crm\Integration\Sms\Provider\SmsRu
  • Вызов: SmsRu::getMessageStatus
public function getMessageStatus($messageId)
{
	$result = new MessageStatusResult();
	$result->setMessageId($messageId);

	if (!$this->canUse())
	{
		$result->addError(new Error(Loc::getMessage('CRM_INTEGRATION_SMS_PROVIDER_SMSRU_CAN_USE_ERROR')));
		return $result;
	}

	$params = array(
		'sms_id' => $messageId,
		'embed_id' => $this->getOption('embed_id')
	);

	$apiResult = $this->callExternalMethod('sms/status', $params);
	if (!$apiResult->isSuccess())
	{
		$result->addErrors($apiResult->getErrors());
	}
	else
	{
		$resultData = $apiResult->getData();
		$smsData = current($resultData['sms']);

		$result->setStatusCode($smsData['status_code']);
		$result->setStatusText($smsData['status_text']);

		if ((int)$resultData['status_code'] !== 100)
		{
			$result->addError(new Error($this->getErrorMessage($smsData['status_code'])));
		}
	}

	return $result;
}