1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
spacelistsender.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Socialnetwork\Internals\EventService\Push;
4
5
use Bitrix\Main\Loader;
6
use Bitrix\Main\ModuleManager;
7
use Bitrix\Socialnetwork\Integration\Pull\PushService;
8
use Bitrix\Socialnetwork\Internals\EventService\Event;
9
use Bitrix\Socialnetwork\Internals\EventService\EventDictionary;
10
use Bitrix\Socialnetwork\Internals\EventService\Recepients\Recepient;
11
12
final
class
SpaceListSender
13
{
14
public
const
SUPPORTED_EVENTS
= [
15
EventDictionary::EVENT_SPACE_USER_ROLE_CHANGE
,
16
];
17
18
public
function
send
(
Event
$event
,
Recepient
$recipient): void
19
{
20
if
(!
ModuleManager::isModuleInstalled
(
'pull'
) || !
Loader::includeModule
(
'pull'
))
21
{
22
return
;
23
}
24
25
if
(in_array(
$event
->getType(), self::SUPPORTED_EVENTS) && $recipient->
isOnline
())
26
{
27
$recipients = [$recipient->
getId
()];
28
29
$userId
=
$event
->getUserId();
30
$spaceId =
$event
->getGroupId();
31
32
PushService::addEvent($recipients, [
33
'module_id'
=> PushService::MODULE_NAME,
34
'command'
=>
PushEventDictionary::getPushEventType
(
$event
->getType()),
35
'params'
=> [
36
'USER_ID'
=>
$userId
,
37
'GROUP_ID'
=> $spaceId,
38
],
39
]);
40
}
41
}
42
}
$userId
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
Определения
check_mail.php:18
Bitrix\Main\Loader\includeModule
static includeModule($moduleName)
Определения
loader.php:67
Bitrix\Main\ModuleManager\isModuleInstalled
static isModuleInstalled($moduleName)
Определения
modulemanager.php:125
Bitrix\Socialnetwork\Internals\EventService\EventDictionary\EVENT_SPACE_USER_ROLE_CHANGE
const EVENT_SPACE_USER_ROLE_CHANGE
Определения
eventdictionary.php:60
Bitrix\Socialnetwork\Internals\EventService\Push\PushEventDictionary\getPushEventType
static getPushEventType(string $eventType)
Определения
pusheventdictionary.php:33
Bitrix\Socialnetwork\Internals\EventService\Push\SpaceListSender
Определения
spacelistsender.php:13
Bitrix\Socialnetwork\Internals\EventService\Push\SpaceListSender\SUPPORTED_EVENTS
const SUPPORTED_EVENTS
Определения
spacelistsender.php:14
Bitrix\Socialnetwork\Internals\EventService\Push\SpaceListSender\send
send(Event $event, Recepient $recipient)
Определения
spacelistsender.php:18
Bitrix\Socialnetwork\Internals\EventService\Recepients\Recepient
Определения
recepient.php:9
Bitrix\Socialnetwork\Internals\EventService\Recepients\Recepient\getId
getId()
Определения
recepient.php:19
Bitrix\Socialnetwork\Internals\EventService\Recepients\Recepient\isOnline
isOnline()
Определения
recepient.php:24
Bitrix\Socialnetwork\Internals\EventService\Event
Определения
factory.php:3
$event
$event
Определения
prolog_after.php:141
bitrix
modules
socialnetwork
lib
internals
eventservice
push
spacelistsender.php
Создано системой
1.14.0