• Модуль: socialservices
  • Путь к файлу: ~/bitrix/modules/socialservices/lib/integration/zoom/conference.php
  • Класс: BitrixSocialServicesIntegrationZoomConference
  • Вызов: Conference::setJoin
static function setJoin(int $conferenceId): Result
{
	$result = new Result();

	$params = [
		'JOINED' => true,
	];

	$getListResult = ZoomMeetingTable::getList([
		'filter' => [
			'=CONFERENCE_EXTERNAL_ID' => $conferenceId,
			'!=JOINED' => 'Y',
		],
		'select' => ['ENTITY_ID','ENTITY_TYPE_ID','ID']
	]);

	if ($meeting = $getListResult->fetch())
	{
		$updateResult = ZoomMeetingTable::update($meeting['ID'], $params);
		if (!$updateResult->isSuccess())
		{
			$result->addError(new Error('Error while update join status.'));
		}
		if ($updateResult->isSuccess() && $updateResult->getAffectedRowsCount() === 0)
		{
			$result->addError(new Error('Error: status has already been updated.'));
		}

		$result->setData($meeting);
	}
	else
	{
		$result->addError(new Error('No conference to update'));
	}


	return $result;
}