• Модуль: pull
  • Путь к файлу: ~/bitrix/modules/pull/lib/event.php
  • Класс: BitrixPullEvent
  • Вызов: Event::addMessage
static function addMessage(array &$destination, array $channels, array $users, array $parameters)
{
	$eventCode = self::getParamsCode($parameters);
	unset($parameters['hasCallback']);

	if (isset($destination[$eventCode]))
	{
		$waitingToReceiveUserList = $destination[$eventCode]['users'] ?? [];
		$newUserList = $users ?? [];
		$destination[$eventCode]['users'] = array_unique(array_merge($waitingToReceiveUserList, $newUserList));

		$waitingToReceiveChannelList = $destination[$eventCode]['channels'] ?? [];
		$newChannelList = $channels ?? [];
		$destination[$eventCode]['channels'] = array_unique(array_merge($waitingToReceiveChannelList, $newChannelList));
	}
	else
	{
		$destination[$eventCode] = [
			'event' => $parameters,
			'users' => array_unique($users),
			'channels' => array_unique($channels),
		];
	}
}