• Модуль: seo
  • Путь к файлу: ~/bitrix/modules/seo/lib/leadads/services/formvkontakte.php
  • Класс: BitrixSeoLeadAdsServicesFormVkontakte
  • Вызов: FormVkontakte::addCallbackServer
protected function addCallbackServer(string $secretKey)
{

	$row = LeadAdsInternalsCallbackSubscriptionTable::getRow(
		array(
			'select' => ['ID','CALLBACK_SERVER_ID'],
			'filter' => [
				'=TYPE' => static::TYPE_CODE,
				'=GROUP_ID' => $this->accountId
			]
		)
	);

	if (!$row)
	{
		return new Error("Group is not registred.");
	}

	if (!empty($row['CALLBACK_SERVER_ID']))
	{
		return $row['CALLBACK_SERVER_ID'];
	}

	$responseSetCallbackSettings = $this->getRequest()->send([
		'methodName' => 'leadads.callback.server.settings.set',
		'parameters' => [
			'group_id' => $this->accountId,
			'lead_forms_new' => 1,
		]
	]);

	if (!$responseSetCallbackSettings->isSuccess() || 1 !== current($responseSetCallbackSettings->getData()))
	{
		return new Error('Can not set Callback server settings.');
	}

	return true;
}