3namespace Bitrix\Im\V2\Controller\Chat\Message;
5use Bitrix\Im\V2\Controller\BaseController;
6use Bitrix\Im\V2\Message;
7use Bitrix\Im\V2\Message\Reaction\ReactionService;
8use Bitrix\Im\V2\Rest\RestAdapter;
17 $reaction = mb_strtoupper($reaction);
19 $reactResult =
$service->addReaction($reaction);
21 if (!$reactResult->isSuccess())
23 $this->addErrors($reactResult->getErrors());
36 $reaction = mb_strtoupper($reaction);
38 $reactResult =
$service->deleteReaction($reaction);
40 if (!$reactResult->isSuccess())
42 $this->addErrors($reactResult->getErrors());
55 $reaction =
$filter[
'reaction'] ??
null;
56 if ($reaction !==
null)
58 $reaction = mb_strtoupper($reaction);
60 if (!$validateResult->isSuccess())
62 $this->addErrors($validateResult->getErrors());
69 'LAST_ID' =>
$filter[
'lastId'] ??
null,
70 'MESSAGE_ID' =>
$message->getMessageId(),
71 'REACTION' => $reaction,
74 'ID' =>
$order[
'id'] ??
'DESC'
76 $reactionLimit = $this->
getLimit($limit);
80 return (
new RestAdapter($reactions))->toRestFormat();
addAction(Message $message, string $reaction)
deleteAction(Message $message, string $reaction)
tailAction(Message $message, array $filter=[], array $order=[], int $limit=50)
static find(array $filter, array $order, ?int $limit=null, ?Context $context=null)
static validateReaction(string $reaction)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)