• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/internals/notification/usecase/notificationreply.php
  • Класс: BitrixTasksInternalsNotificationUseCaseNotificationReply
  • Вызов: NotificationReply::execute
public function execute(string $text): bool
{
	$currentLoggedInUserId = BitrixMainEngineCurrentUser::get()->getId();
	if ($currentLoggedInUserId === null)
	{
		return false;
	}

	$sender = $this->userRepository->getUserById($currentLoggedInUserId);
	if (!$sender)
	{
		return false;
	}

	$responsible = $this->userRepository->getUserById($this->task->getResponsibleId());
	if (empty($responsible))
	{
		return false;
	}

	foreach ($this->providers as $provider)
	{
		$provider->addMessage(new Message(
			$sender,
			$responsible,
			new Metadata(
				EntityCode::CODE_COMMENT,
				EntityOperation::REPLY,
				[
					'task' => $this->task,
					'text' => $text
				]
			)
		));

		$this->buffer->addProvider($provider);
	}

	return true;
}