• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Message/Reaction/ReactionService.php
  • Класс: BitrixImV2MessageReactionReactionService
  • Вызов: ReactionService::deleteReaction
public function deleteReaction(string $reaction, bool $byEvent = false): Result
{
	$result = new Result();
	$reactionItem = ReactionItem::getByMessage($this->message->getMessageId(), $reaction, $this->getContext()->getUserId());

	if ($reactionItem === null)
	{
		return $result->addError(new ReactionError(ReactionError::NOT_FOUND));
	}

	$deleteResult = $reactionItem->delete();

	if (!$deleteResult->isSuccess())
	{
		return $result->addErrors($deleteResult->getErrors());
	}

	if (!$byEvent && $this->isMessageLiveChat())
	{
		$this->processDeleteForLiveChat($reaction);
	}

	if ($this->withLegacy)
	{
		$this->deleteLegacy();
	}

	(new PushService())->delete($reactionItem);

	return $result;
}