Официальная новость: MyChat 8.0 — большое обновление

 

Дата релиза: 08.07.2020

История разработки

 
[+] новое;

[*] исправлена ошибка и/или изменено к лучшему;

[-] исправлена ошибка;

 

MyChat Client


[+] (Android) добавлено редактирование всех полей в профиле пользователя;

[+] (Android) добавлена возможность изменить фото профиля;

[+] поддержка стандарта Emoji для смайликов;

[+] в приватах теперь показывается, сколько времени не было человека в сети, если он офлайн;

[+] текстовые placeholders в конференциях и в приватах в поле для ввода сообщений;

[+] (Android) добавлена обработка прав пользователя на просмотр активного процесса в профиле пользователя, запрет скриншотов экрана в диалогах и blur окна приложения при переключении между последними приложениями, права на поиск пользователей, права на осуществление медиа-звонков, права на перенаправление диалогов. Вся обработка сопровождается изменениями в интерфейсе приложения (сокрытие или отображение некоторых кнопок и элементов);

[+] (Android) добавлено расширенное логирование медиа-звонков а также настройка для включения полного протоколирования трафика для отладки;

[+] (Android) добавлен новый тип сообщений — "Штрих-код". Теперь можно при помощи приложения сканировать любой штрих-код либо QR-код и отправить его в приват или конференцию;

[+] (Android) добавлена галерея медиа-файлов для выбранного приватного диалога, в ней в удобном виде можно просмотреть все медиа из сообщений, которые находятся в локальной базе Android-приложения;

[+] (Android) теперь рядом с сообщением находится аватар отправителя, или, если он отсутствует, его инициалы;

[+] (Android) добавлена возможность перенаправить диалог другому пользователю, если для этого есть права;

[+] (Android) добавлена возможность создавать конференции;

[+] (Android) добавлена возможность создавать оповещения. Для удобства процесс создания разделен на несколько этапов. Можно выбирать пользователей из списков контактов или произвольных юзеров, зарегистрированных на сервере. Также доступен весь функционал из win32-приложения: указание актуальности оповещения, выбор его типа и добавление файлов;

[+] (Android) в инструменте просмотра принятых оповещений добавлен диалог со списком приложенных файлов;

[+] (Android) на странице логина добавлены подсказки для клиентов, которые устанавливают приложение впервые;

[+] (Android) добавлена новая вкладка — "Звонки", куда попадают все медиа-вызовы из всех диалогов в хронологическом порядке;

[+] Ctrl+PageUp, Ctrl+PageDown для переключения между последними диалогами;

[+] (Linux, Mac, Web) при скролинге текста чата в самый вверх, автоматически подчитывается история диалога или конференции;

[+] (Linux, Mac, Web) добавлен глобальный поиск пользователей;

[+] (Linux, Mac, Web) добавлен вход в форум в разделе инструментов;

[+] (Linux, Mac, Web) добавлена возможность вставлять смайлики, наборы переключаются в настройках;

[+] (Linux, Mac, Web) добавлен инструмент доступа к публичным и персональным папкам FTP;

[+] (Linux, Mac, Web) добавлена обработка ссылок на публичную и персональную FTP папку;

[+] (Linux, Mac, Web) добавлено контекстное меню в списке диалогов пользователей с кнопкой "Закрыть диалог";

[+] панель последних диалогов для быстрой навигации между активными приватными разговорами и конференциями;

[+] новая консоль с активными ссылками;

[+] навигация по чату теперь делается в левой части окна, четырьмя кнопками: "Чаты", "Звонки", "Контакты" и "Важное";

[+] новый внешний вид окна сообщений;

[+] содержимое основного окна "размывается", если пользователь вызывает модальное окно для каких-либо действий, чтобы сконцентрировать внимание человека. Отключается в настройках, автоматически отключается в RDP-сессиях;

[+] новая функция "разбудить" пользователя. Работает в привате. Если собеседник онлайн — то его окно переключается на первый план, в течение 1-2 секунд "дрожит" + звучит звонок. Функцией можно пользоваться не чаще, чем раз в минуту, можно отключить на сервере в правах групп;

[+] консольная команда "ReConnect" для переподключения к серверу;

[+] консольная команда "UpdateAdv" для мгновенного обновления HTML информационного блока в нижней части окна MyChat Client;

 

[*] новый инструмент создания конференций (Alt+С);

[*] новый инструмент входа в существующие конференции (Alt+E);

[*] кнопка для показа пароля в менеджере учётных записей;

[*] убрана настройка штампа даты и времени в чате, теперь она зависит от системной локали;

[*] убрана настройка показа системных сообщений в конференциях;

[*] увеличена скорость загрузки MyChat Client за счёт асинхронной загрузки словарей для проверки правописания;

[*] полная информация про то, сколько времени человека не было в сети, сколько он в онлайне в просмотре профиля пользователя;

[*] при возникновении сетевой winsock ошибки в консоли MyChat Client подсвечивается и сам текст ошибки, по клику на ней можно открыть специальную расширенную статью справки;

[*] (Android) полностью изменена архитектура медиа-звонков. Основное улучшение — теперь во время звонка в статус-баре всегда находится уведомление, кликнув по которому вы сможете вернуться к звонку или завершить его. Также добавлена корректная обработка поворота экрана во время звонка;

[*] (Android) изменена отправка файлов на сервер. Больше не появляется диалог отправки, который нельзя было закрывать до окончания заливки файла на сервер, теперь вместо него в статус-баре находится уведомление с прогрессом загрузки, также есть индикация расчета контрольной суммы файла перед отправкой;

[*] (Android) полностью переработано отображение сообщений в приватных диалогах и конференциях. Внешний вид общения приведен к единому стилю, который используется во всех клиентах MyChat;

[*] (Android) изменена панель выбора отправляемого вложения;

[*] (Android) переработан список принятых оповещений. Теперь все элементы одинакового размера, с возможностью развернуть текст сообщения;

[*] (Android) полностью переработана страница логина, убраны лишние элементы;

[*] (Android) изменена страница "Мастера серверов". Теперь во время добавления или редактирования элемента списка можно включить шифрование, ввести альтернативный адрес сервера, а также ввести имя домена, которое будет подставляться автоматически во время логина;

[*] (Android) изменена страница регистрации нового пользователя;

[*] (Android) во время регистрации добавлена возможность подставить данные из аккаунта Google или Facebook. Мы не храним эти данные ни в каком виде, получаем из профиля пользователя только краткую информацию;

[*] (Android) произведен редизайн домашнего экрана программы;

[*] (Android) панель навигации между вкладками теперь находится в нижней части экрана, возможность переключаться между экранами по свайпу осталась, как раньше. Также на панели теперь отображаются индикаторы новых событий;

[*] (Android) теперь для всех пользователей отображаются аватары пользователей, или, в случае их отсутствия, инициалы;

[*] (Android) добавлены индикаторы прочтения сообщений;

[*] (Android) изменен общий вид и компоновка элементов;

[*] мгновенная вставка иконок "no image" или "image deleted", если картинка удалена с сервера;

[*] автоматическое изменение поля ввода при изменении размера главного окна;

[*] увеличена скорость подключения клиента к серверу, список Actions теперь кешируется локально;

[*] автоматическое распознавание локальных и интернет-ссылок при вставке из буфера обмена в чат (Ctrl+V, Shift+Ins и ПКМ->"Вставить");

[*] сообщение автоответчика отключается для websupport-пользователей;

[*] ускорена отправка приватных сообщений;

[*] (Linux, Mac, Web) кнопки для звонка вынесены в заголовок диалога, а кнопка завершения звонка доступна даже при переключении между разными диалогами;

[*] (Linux, Mac, Web) в профиле пользователя данные теперь размещены более компактно;

[*] (Linux, Mac, Web) при вставке изображения из буфера обмена показывается привью содержимого перед отправкой;

[*] (Linux, Mac, Web) после открытия канбана, форума или админки в клиенте, через некоторое время, если повторно туда не заходить, они будут закрыты, чтобы не держать лишнее подключение;

[*] (Android) проведен полный редизайн страницы информации о пользователе. Теперь отображаются все поля, в соответствии с разделами (как в win32-клиенте). Также отображается сервисная информация о компьютере пользователя и об активном процессе, если для этого есть права;

[*] (Android) добавлен обработчик правила "Поиск пользователей", при отсутствии разрешения иконка поиска на главной странице приложения не будет отображаться;

[*] убрана настройка из раздела "Интерфейс": "Не показывать аватары";

[*] убраны настройки из раздела "Главное" : "Показывать на закладках конференций счётчик пользователей" и "Закрывать закладки разговоров двойным щелчком мышки";

[*] новое окно выбора папки для сохранения файлов в настройках;

[*] добавлен пункт меню в раздел "Инструменты" для открытия консоли. Теперь для неё нет отдельной закладки;

[*] убраны закладки для конференций и приватов, вся навигация теперь делается через раздел "Чаты";

[*] убрана панель для смены своего статуса и открытия собственного профиля из верхнего левого угла главного окна;

[*] поиск по контактам перенесён из отдельной строки в сами контакты;

[*] общий и личный список контактов объединены одним селектором;

[*] убрана главная панель инструментов;

[*] автоматический скроллинг колесом мышки содержимого окна при наведении без необходимости клика для получения фокуса;

[*] переделано и упрощено контекстное меню, которое вызывается по ПКМ на нике пользователя в чате;

[*] улучшенная система удаления сообщений в конференциях и приватах;

[*] новый мастер первого подключения;

[*] если на сервере прописан IP адрес или доменное имя сервера для внешних клиентов, то при автоматическом поиске серверов MyChat в локальной сети в самой программе и в мастере первого подключения этот адрес будет добавлен как альтернативный, чтобы MyChat мог автоматически переключаться между ними;

[*] в настройках сервера для подключения теперь можно указать порт с номером, меньше чем 1024;

[*] в лог подключения добавлена строка типа "[19:40:56] [INFO] Windows user: toshiba" для идентификации Windows-пользователя/домена, под которым запускается приложение MyChat Client;

[*] все голосовые, видео звонки и демонстрации экрана теперь записываются в историю сообщений, которая синхронизируется с сервера;

[*] в поиске пользователей (Alt+F), если у пользователя не была указана дата рождения, показывалось в результатах "01.01.1900". Исправлено;

[*] добавлены английский и украинский словари для системы проверки правописания;

[*] одинарный клик по мигающей иконке в трее открывает чат на последнем входящем сообщении;

[*] теперь возможны звонки с демонстрацией экрана, даже если в системе нет физического микрофона;

[*] после вызова окна вставки произвольной ссылки (Alt+L) поля с текстом ссылки и описанием не очищались. Исправлено;

[*] если в настройках выключено протоколирование лога соединения в файл, то после старта приложения в файл лога запишется строка "[INFO] Connection log disabled";

[*] если на сервере запрещено подключение клиентских приложений без шифрования, а в настройках MyChat Client шифрование отключено, то приложение научилось автоматически переключаться в режим шифрования трафика при коннекте;

[*] консольная команда "BackupServDB" теперь генерирует ссылку, по которой можно скачать резервную копию базы сервера прямо из MyChat Client;

 

[-] (Admin) редактирование и сохранение custom-полей учётных записей пользователей в управлении пользователями не работало. Исправлено;

[-] обновление локального времени удалённого пользователя в просмотре его профиля по F5;

[-] (Android) добавлена полноценная поддержка входящего звонка для Android 10, ранее экран звонка мог не появляться, когда телефон заблокирован;

[-] по клику по Action "Владелец лицензии" в тексте чата теперь показывается нормальное сообщение, без "кривых" тегов;

[-] исправлена работа автоответчика, сообщение отправляется, только если получатель офлайн;

[-] исправлен повторный запрос шаблона настроек клиента на сервере при логине;

[-] (MAC, Linux) не отображаются списки пользователей в оповещениях. Исправлено;

[-] если в пути для приёма файлов были переменные окружения (%HOMEPATH% и т.п.), то программа их игнорировала. Исправлено;

[-] исправлена вставка ссылок на конференции в чате;

[-] (Android) при выборе или удалении сервера в мастере, приложение закрывалось с ошибкой. Исправлено;

[-] если включить форматирование текста, ничего не писать и отправить сообщение — программа зависает. Исправлено;

[-] исправлен хинт "Вставить смайлик - Ctrl+S";

[-] если в бесплатной версии на сервере в шаблоне настроек включали шифрование трафика, то клиент переставал соединяться с сервером. Исправлено;

[-] (Android) при выходе из приложения или изменении учетной записи не сохранялась настройка "Использовать шифрование". Исправлено;

[-] исправлена ошибка при повторных логинах доменных пользователей без использования прозрачной авторизации;

[-] некорректная обработка ошибки #209, если исчерпаны все свободные подключения к серверу. Исправлено;

[-] если указать в настройках, раздел "Дополнительно" константу COMPUTER_NET_NAME, то, если у пользователя нет прав для просмотра чужих IP адресов, имя компьютера показываться не будет. Исправлено;

[-] консольная команда "Exit" не работала, если не было подключения к серверу;

[-] при изменении даты рождения в профиле пользователя (Alt+U) она очищалась. Исправлено;

 

MyChat Server


[+] (MSL) функция mClosePrivateDialog для программного закрытия приватного диалога у заданного пользователя;

[+] (Admin) новое правило в группах прав "Конференции", "Удаление любых сообщений в конференциях в своей локальной базе данных". По умолчанию включено;

[+] (Admin) новое правило в группах прав "Приваты", "Удаление любых сообщений в приватах в своей локальной базе данных". По умолчанию включено;

[+] (MSL) функция LoadLineFromFile для получения любой строки из текстового файла в указанной кодировке;

[+] (MSL) функции mSetAdvOptions и mGetAdvOptions для управления показом рекламных баннеров и брендинга внешнего вида MyChat Client;

[+] (MSL) функция mClearScriptLog для очистки логов в консоли разработчика;

[+] (MSL) функция JSONKeyExists для проверки наличия ключа в объекте;

[+] (MSL) функция NoDate для получения значения "дата и время не указано";

[+] (MSL) функция StrMyChatToDateTime для преобразования строки с датой и временем в double значение;

[+] (MSL) функция DateTimeToMyChatStr для перевода double значения даты и времени в строку MyChat-формата;

[+] (MSL) функция JSONArraySetLength для создания массива;

[+] (MSL) функция JSONArrayGetDouble для получения дробного числа из массива по индексу;

[+] (MSL) функция JSONArraySetDouble для сохранения дробного значения элемента массива по индексу;

[+] (MSL) функция JSONValid для проверки корректности JSON объектов;

[+] (MSL) функция JSONSetFloat для записи дробных значений в JSON объектах;

[+] (MSL) функция JSONGetFloat для чтения вещественных значений из JSON объектов;

[+] (MSL) функция AnsiLowerCase для преобразования UNICODE строки в нижний регистр;

[+] (MSL) функция AnsiUpperCase для преобразования UNICODE строки в верхний регистр;

[+] ключ /LicenseKey для ввода ключа лицензии сразу при запуске сервера из командной строки;

[+] (MSL) функция mPersonalContactsIsUserExists для проверки, есть ли указанный пользователь в личном списке контактов другого человека;

[+] (MSL) функция mPersonalContactsIsGroupExists для проверки, есть ли группа с таким названием в личном списке контактов пользователя;

[+] (MSL) функция mPersonalContactsAddGroup для создания новой группы в личном списке контактов пользователя;

[+] (MSL) функция mPersonalContactsAddUser для добавления пользователя в личный список контактов другого человека;

[+] (MSL) функция mPersonalContactsClear для очистки личного списка контактов любого пользователя;

[+] (MSL) функция mPersonalContactsDeleteUser для удаления пользователя из личного списка контактов другого человека;

[+] (MSL) функция mPersonalContactsIsEmpty для проверки, пустой ли личный список контактов;

[+] (MSL) функция mPersonalContactsRefresh для обновления личного списка контактов в онлайн-приложениях MyChat Client;

[+] (MSL) функция PosEx для поиска подстроки в строке со смещением;

[+] (MSL) функция SaveTextToFile для сохранения текста в файл в указанной кодировке;

 

[*] (Admin) "MyChat Server", "Онлайн пользователи", IP адрес Android-клиентов показывался как 127.0.0.1. Исправлено на реальный;

[*] (Core) скорость запуска сервера увеличена на 50% за счёт оптимизаций работ с базами данных;

[*] (Admin) изменена проверка домена, чтобы можно было указать домен на кириллице (например: "мойсуперсайт.рф"), используется в сетевых настройках;

[*] (Core) автоматическое удаление недолитых файлов на сервере при повторной попытке заливки (контроль по размеру);

[*] (MSL) обновлён скрипт CheckEmptyUsersFields, который идёт в комплекте с сервером. Скорость работы увеличена в 2,5 раза;

[*] (MSL) убрана функция mSendChannelMessage (deprecated), заменена на mSendConfMessage;

[*] (Kanban) добавлена возможность редактировать проект: редактирование названия и описания проекта, менять крайний срок, удалять пустые этапы, добавлять новые, переименовывать существующие этапы и менять их позиции в проекте;

[*] (FTP) улучшен механизм работы токенами при работе с FTP сервером из-под браузеров и Проводника;

[*] (Core) улучшен механизм перезапуска встроенных серверов NodeJS и TURN;

[*] (Core) улучшена автоматическая настройка встроенного STUN/TURN сервера, если есть внешний "белый" IP адрес/домен;

[*] (Core) после обновления профиля пользователя не полностью обновлялась информация для быстрого поиска в клиентских приложениях. Поправлено;

[*] (Admin) Добавлен фильтр LDAP запросов;

[*] (Admin) добавлены дефолтовые значения для полей, при создании шаблонов настроек клиентов;

[*] (Support) добавлена отправка скриншотов из буфера обмена в Firefox;

[*] (Kanban) в заголовок задания добавлена ссылка на это задание;

[*] (Kanban) при открытии задания в адресной строке пишется его полная ссылка;

[*] на все исполняемые файлы теперь накладывается две цифровых подписи для совместимости со старыми и новыми операционными системами (Windows XP, Vista, Server 2003 и старше);

[*] (MSL) переделана функция GetTextFileLinesCount, корректная работа с текстом в разных кодировках;

[*] (MSL) переделана функция AddLineToFile, запись текста в разных кодировках + возврат итогового размера файла в байтах;

[*] (MSL) переделана функция Protocol, штамп времени теперь начинается с "yyyy.mm.dd", запись текста в разных кодировках + возврат итогового размера файла в байтах;

 

[-] галка "Автозапуск вместе с Windows" всегда на старте GUI сервера была включена. Исправлено;

[-] (Admin) исправлено создание резервной копии из админки, бекап делался, но его не получалось скачать в браузере;

[-] (Admin) неправильно работала сортировка в списке активных конференций, при сортировке количества пользователей и сообщений. Исправлено;

[-] (MSL) функция EncodeURL некорректно работала с UNICODE-символами. Исправлено;

[-] (Forum) если открыть сообщение для редактирования, закрыть его, а затем создать новое сообщение — перезаписывалось предыдущее сообщение. Исправлено;

[-] исправлено несколько ошибок системы обновления истории сообщений с очень старых версий (5.0 и ниже);

[-] (MSL) функция mRemovePrivates, которая отвечает за полное удаление всей истории приватных сообщений на сервере и на клиентах, не удаляла историю на тех клиентах, что были офлайн в момент выполнения. Исправлено;

[-] (Admin) при добавлении нового пользователя, если ввести имя и нажать кнопку "сгенерировать пароль", не активировалась кнопка "сохранить". Исправлено;

[-] (Admin) неправильно подсчитывалось количество отправленных сообщений в разделе "Конференции", "Активные конференции". Исправлено;

[-] (Admin) при сохранении настроек в разделе админки "Пользователи", "Active Directory", "Синхронизация" WEB-интерфейс зависал. Исправлено;

[-] (MSL) функция mGetUserAttribute не отдавала названия ролей пользователей, если они были без административных прав на управление сервером (параметр "role");

[-] (Admin) в общем списке контактов, при перемещении групп пользователей между собой, возникала ошибка, приводящая к зависанию сервера или перемешиванию контактов;

[-] при запросе информации о имени компьютера офлайн-пользователя возвращалась версия клиентского приложения, а не NETBIOS-имя хоста. Исправлено;

[-] (Admin) при включении пользователя в профиле - ник пишется "undefined". Исправлено.