• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/classes/general/tasknotifications.php
  • Класс: CTaskNotifications
  • Вызов: CTaskNotifications::excludeUsersWithMute
static function excludeUsersWithMute(array $users, int $taskId): array
{
	$resultUsers = [];

	$emailUsers = array_column(
		BitrixMainUserTable::getList([
			'select' => ['ID'],
			'filter' => [
				'ID' => $users,
				'=EXTERNAL_AUTH_ID' => 'email',
			],
		])->fetchAll(),
		'ID'
	);
	$emailUsers = array_map('intval', $emailUsers);

	foreach ($users as $userId)
	{
		if (
			in_array((int)$userId, $emailUsers, true)
			|| !UserOption::isOptionSet($taskId, $userId, UserOptionOption::MUTED)
		)
		{
			$resultUsers[] = $userId;
		}
	}

	return $resultUsers;
}