• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/integration/im/notification.php
  • Класс: BitrixMailIntegrationImNotification
  • Вызов: Notification::add
static function add($userId, $type, $fields, $mailboxId = null)
{
	if (MainLoader::includeModule('im'))
	{
		if ($type == 'new_message')
		{
			$mailboxId = $fields['mailboxId'];

			$userIds = [];

			$mailboxOwnerId = (int)$fields['mailboxOwnerId'] ?? 0;

			if ($mailboxOwnerId)
			{
				$userIds = MailboxAccessTable::getUserIdsWithAccessToTheMailbox($mailboxId);
			}
			else
			{
				$userIds[] = $userId;
			}

			foreach ($userIds as $id)
			{
				self::notifyForNewMessagesInMail($id, $fields);
			}
		}
		else if ($type == 'imposed_tariff_restrictions_on_the_mailbox')
		{
			self::notifyForTariffRestrictions($mailboxId);
		}
	}
}