• Модуль: pull
  • Путь к файлу: ~/bitrix/modules/pull/lib/dto/message.php
  • Класс: BitrixPullDTOMessage
  • Вызов: Message::fromEvent
static function fromEvent(array $arrayFields): Message
{
	$instance = new static();
	$instance->userList = $arrayFields['users'] ?? [];
	$instance->channelList = $arrayFields['channels'] ?? [];

	$body = $arrayFields['event'];
	if (is_array($body['user_params']) && !empty($body['user_params']))
	{
		$instance->userParams = $arrayFields['event']['user_params'];
	}
	if (is_array($body['dictionary']) && !empty($body['dictionary']))
	{
		$instance->dictionary = $arrayFields['event']['dictionary'];
	}
	$instance->expiry = is_int($body['expiry']) && $body['expiry'] > 0 ? $body['expiry'] : 86400;
	unset($body['user_params']);
	unset($body['dictionary']);
	unset($body['expiry']);

	$instance->body = $body;

	return $instance;
}