MyChat 8.4 — свой мессенджер с шифрованием
Официальная новость: MyChat 8.4 — свой мессенджер с шифрованием
Дата релиза: 02.02.2021
[+] новое;
[*] исправлена ошибка и/или изменено к лучшему;
[-] исправлена ошибка;
MyChat Client
[+] (Android) добавлена обработка правил на отображение личного и общего списка контактов. Также, если оба этих правила выключены, на главном экране не будет показываться вкладка "Контакты";
[*] (Android) переработана система отображения отсутствия подключения к серверу (при переключении между сетями или если сервер недоступен). Теперь вместо высплывающего окошка внизу статус подключения будет отображаться в тулбаре;
[*] если включить фильтр в диалогах или в контактах, а затем кликнуть по результату — фильтр автоматически снимается;
[*] улучшен рендеринг личного списка контактов, теперь хорошо видно группы и выделенных пользователей, даже если окно не в фокусе;
[*] обновлена библиотека проверки правописания Hunspell;
[*] автозамена запятых на точки при вводе адреса сервера в менеджере учётных записей и в мастере первого подключения;
[*] при подключении Android-пользователей по QR-коду, если нет альтернативного адреса сервера, автоматически подставляется внешний host сервера MyChat, который указывается в настройках MyChat Server (админка, "Настройки", "Сетевые настройки", "IP адрес или Host сервера для внешних клиентов");
[*] уменьшена нагрузка на сервер при запросах аватаров пользователей;
[-] (Android) входящий звонок в некоторых случаях мог не проходить в локальной сети. Исправлено;
[-] (Mac) (Linux) (Web) не отображалось всплывающее уведомление о непрочитанных сообщениях в конференциях. Исправлено;
[-] (Android) неправильно отображались удаленные сообщения. Исправлено;
[-] (Linux)(Mac)(Web) нельзя было удалить Email в своем профиле. Исправлено;
[-] (Linux)(Mac)(Web) ошибка при изгнании пользователя приводила к отключению. Исправлено;
[-] неправильно отображались индикаторы непрочитанных сообщений возле чатов и конференций, если их больше 100. Исправлено;
[-] (Android) ошибка во время запуска приложения во "Втором пространстве" на устройствах Xiaomi. Исправлено;
[-] ошибка ID: F4DCFCCF, иногда возникала при просмотре информации о пользователя в его профиле (F4);
[-] "Скопировать ссылку" на LAN-линке работало неправильно, копировался текст описания, а не сама ссылка;
[-] если начать набирать текст, потом зайти в настройки (Alt+O), а потом закрыть окно настроек, то текст черновика исчезал;
[-] (Android) при сканировании QR-кодов, не подставлялся логин в поле для его ввода. Исправлено;
[-] (Android) если во время звонка с сервера приходил неполный набор IP-адресов, звонок не происходил. Исправлено;
MyChat Server
[+] добавлено динамическое кеширование файлов WEB-сервера;
[+] новое правило в группах прав "Android", "Отображать вкладку "Звонки" на главном экране";
[+] (MSL) класс TStringList, 7 свойств и 13 методов для быстрой обработки текстовых списков и файлов;
[+] (MSL) функция Frac для получения дробной части вещественного числа;
[+] (MSL) функция GetTickCount для получения аптайма системы в миллисекундах и профилирования производительности скриптов;
[+] (MSL) функция Sqr для возведения чисел во вторую степень;
[+] (MSL) функция Sqrt для вычисления квадратных корней;
[+] (MSL) событие OnConfKick для обработки изгнания пользователя из текстовой конференции;
[+] (MSL) функция DateTimeToISOStr для перевода даты и времени в ISO-формат;
[+] (MSL) функция ISOStrToDateTime для перевода строки ISO-формата в double-значение даты и времени;
[+] (MSL) функция mAddNewBBSMessage для добавления сообщений на доску объявлений;
[+] (MSL) функция mGetBirthdayUsers для получения списка пользователей, у которых день рождения совпадает с указанным днём;
[+] (MSL) функция StringCharsCount для подсчёта количества вхождений указанного символа в строку;
[+] (MSL) функция mGetCIDSByUINAndClientType для получения списка подключений указанного пользователя по типам приложений;
[+] (MSL) функция GetArrayLength для получения количества элементов одномерного динамического массива;
[+] (MSL) функция SetArrayLength для установки размера одномерного динамического массива;
[+] (MSL) функция mGetConfUsersList для получения списка пользователей текстовой конференции;
[*] убрана настройка для запрета выхода из автосоздаваемой конференции в админке. Теперь эта опция включена по умолчанию для всех автосоздаваемых конференций на сервере;
[*] если пользователь создал конференцию — он в ней модератор, автоматически. Но это не должно показываться в списках модераторов конференций, которые назначаются вручную на сервере в админке;
[*] (MSL) убран параметр bSaveToHistory из функции mSendPrivateMessage;
[*] (MSL) удалена функция mGetUserCID, как устаревшая;
[*] добавлена система кеширования для аватаров разных размеров. Это значительно ускоряет сервер при перезапусках на большом количестве пользователей онлайн и/или на медленном "железе";
[-] при выборе конференций для модераторов могли показываться пустые позиции в выпадающем списке, с указанием UID;
[-] удаление автосоздаваемых конференций работало некорректно, пользователи, у которых такая конференция была добавлена вручную, продолжали в неё входить после переподключения;
[-] (Kanban) при создании нового проекта оставалась висеть надпись "обработка запроса" и ничего не происходило. Исправлено;
[-] (MSL) исправлена работа функций mIncUIN и mDecUIN;
[-] ошибка ID: 752420EB "Out of memory" при генерации preview от очень больших изображений (больше 5К);
[-] не работала регистрация пользователей с клиентской стороны;
[-] проблема с зависанием сервера в некоторых случаях после рестарта и большого количества онлайн-пользователей из-за некорректной рассылки статусов вновь подключившихся пользователей. Исправлено.