Как отключить уведомления о событиях пользователя модуля intranet
1776
Для отключения всех событий сразу, можно воспользоваться функцией методом unRegisterEventHandler();
Cmodule::includemodule('im');
Cmodule::includemodule('main');
\Bitrix\Im\Integration\Intranet\User::unRegisterEventHandler();
Но можно отключить и индивидуально каждую функцию, код выше содержит все
$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->unRegisterEventHandler('main', 'OnAfterUserAuthorize', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onInviteAccepted');
-> Я с вами в команде!
$eventManager->unRegisterEventHandler('intranet', 'OnRegisterUser', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onInviteSend');
-> Появление пользователя в списке (чат как список контактов)
$eventManager->unRegisterEventHandler('intranet', 'OnCopyRegisterUrl', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onInviteLinkCopied');
-> скопировал публичную ссылку
$eventManager->unRegisterEventHandler('intranet', 'onUserInvited', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onUserInvited');
-> Пользователь А пригласил пользователя Б в общий чат
$eventManager->unRegisterEventHandler('intranet', 'onUserAdded', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onUserAdded');
-> Пользователь А зарегистрировал пользователя Б в общий чат
$eventManager->unRegisterEventHandler('intranet', 'onUserAdminRights', 'im', 'Bitrix\\Im\\Integration\\Intranet\\User', 'onUserAdminRights');
-> Пользователь А выдал/забрал права у пользователя Б в общий чат