• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/classes/general/im_call.php
  • Класс: CIMCall
  • Вызов: CIMCall::MessageToPrivate
static function MessageToPrivate($fromUserId, $toUserId, $messageId, $getUserData = false, $addGenderToMessageId = true)
{
	$fromUserId = intval($fromUserId);
	$toUserId = intval($toUserId);
	if ($fromUserId <= 0 || $toUserId <= 0)
		return false;

	$message = '';
	if ($fromUserId > 0 && $getUserData)
	{
		$userSelectId = $fromUserId;
		if ($getUserData !== true)
			$userSelectId = intval($getUserData);

		$arSelect = Array("ID", "LAST_NAME", "NAME", "LOGIN", "SECOND_NAME", "PERSONAL_GENDER");
		$dbUsers = CUser::GetList('', '', array('ID_EQUAL_EXACT' => $userSelectId), array('FIELDS' => $arSelect));
		if ($arUser = $dbUsers->Fetch())
			$message = GetMessage($messageId.($addGenderToMessageId? ($arUser["PERSONAL_GENDER"] == 'F'? 'F': 'M'): ''), Array('#USER_NAME#' => BitrixImUser::formatFullNameFromDatabase($arUser)));
	}
	else
	{
		$message = GetMessage($messageId);
	}

	CIMMessage::Add(Array(
		"FROM_USER_ID" => $fromUserId,
		"TO_USER_ID" =>  $toUserId,
		"MESSAGE" => $message,
		"SYSTEM" => 'Y',
		"PUSH" => 'Y',
	));

	return true;
}