1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
AnalyticsEventLogger.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
5namespace Bitrix\Im\V2\Analytics;
6
7use Bitrix\Main\Analytics\AnalyticsEvent;
8use Bitrix\Main\Event;
9use Bitrix\Main\Localization\Loc;
10use CIMMessageParamAttach;
11use CIMMessenger;
12
14{
15 public static function sendToChat(int $chatId, array|Event $event): void
16 {
17 $attach = new CIMMessageParamAttach(null, CIMMessageParamAttach::CHAT);
18 $messageText = Loc::getMessage('IM_ANALYTICS_TAG_WAS_SENT');
19
21 'SYSTEM' => 'Y',
22 'URL_PREVIEW' => 'N',
23 'MESSAGE' => $messageText . ' ' . (($event instanceof Event) ? 'backend' : 'frontend'),
24 'FROM_USER_ID' => 0,
25 'TO_CHAT_ID' => $chatId,
26 'MESSAGE_TYPE' => IM_MESSAGE_CHAT,
27 ];
28
29 if ($event instanceof Event)
30 {
32 $analyticsEvent = $event->getParameter('analyticsEvent');
33 $event = $analyticsEvent->exportToArray();
34 }
35
36 $tool = $event['tool'] ?? '';
37 $category = $event['category'] ?? '';
38 $p5 = $event['p5'] ?? '';
39
40 if ((($tool === 'im') || str_starts_with($category, 'chat')) && ($p5 === ('chatId_' . $chatId)))
41 {
42 return;
43 }
44
45 foreach ($event as $item => $value)
46 {
47 if ((null !== $value) && ($item !== 'userAgent'))
48 {
49 $attach->AddMessage($item . ': ' . $value);
50 }
51 }
52
53 $messageFields['ATTACH'] = $attach;
54 CIMMessenger::Add($messageFields);
55 }
56}
$messageFields
Определения callback_ednaru.php:22
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
const IM_MESSAGE_CHAT
Определения include.php:23
$event
Определения prolog_after.php:141