
MyChat тепер закриває два дуже практичні завдання: сервер прямує до Linux/Docker-розгортання, а в додатку стало простіше відправляти в чат не лише окремі файли, а й цілі папки одним повідомленням.
Докер важливий для адміністраторів та компаній, які звикли тримати серверну інфраструктуру в Linux-середовищі. А "файловий апгрейд" відразу відчують звичайні користувачі: більше не потрібно розкладати папку на десятки окремих відправлень або створювати архіви, якщо потрібно передати структуру проєкту, набір документів, фотозвіт або архів робочих матеріалів.
- Робочий Docker-образ MyChat Server для Linux
- Надсилання файлів та папок у чат одним пакетом
- Drag-and-drop файлів та зображень з чату в Провідник та інші програми
- Надсилання файлів з Провідника через "Надіслати" -> "MyChat"
- Всі зміни загальним списком + історія розробки
- Як оновитися до останньої версії?
1. Робочий Docker-образ MyChat Server для Linux
Головна інфраструктурна новина — зібраний робочий Docker-образ MyChat Server для Linux.
Для MyChat це важливий етап. Сервер зазвичай встановлювався у Windows-середовищі, і це залишається нормальним робочим варіантом. Але у багатьох компаній серверна інфраструктура давно живе у Linux: віртуальні машини, контейнери, окремі VPS, власні регламенти оновлення та моніторингу.
Не завжди є можливість використовувати Windows для сервера чи віртуальної машини. Питання ліцензії на ОС також є важливим.
Тепер ви можете швидко розгорнути MyChat Server через Docker:

Docker-образ відкриває шлях до більш звичного для таких адміністраторів сценарію: підняти сервер у контейнерному середовищі, керувати оточенням стандартними Linux-інструментами та простіше вписувати MyChat в наявну інфраструктуру.
Деталі щодо розгортання, підтримуваних сценаріїв та обмежень будуть публікуватися окремо.
Інструкція зі встановлення MyChat на Linux-сервер або віртуальну машину2. Надсилання файлів та папок у чат одним пакетом
Тепер можна надсилати будь-яку кількість файлів разом із папками в чат. Усередині ми називаємо це file bundles: один акуратний пакет, де зберігається набір файлів та структура папок.

Це зручно у звичайних робочих ситуаціях, щоб не перетворювати чат на довге полотно з окремих файлів:
- надіслати папку з документами щодо проєкту;
- надіслати фотозвіт із вкладеними папками;
- переслати набір логів, скріншотів та конфігураційних файлів;
- швидко надіслати матеріали без попереднього пакування в архів.
Користувач вибирає файли та папки, MyChat збирає їх в один пакет і надсилає в потрібний приватний діалог або конференцію. Одержувачу простіше зрозуміти, що це один пов'язаний набір, а не випадковий розсип вкладень:

Програма "порозумнішала" і навчилася підтримувати докачку (в в обох напрямках: download та upload). Крім того, можна одночасно, у кількох діалогах, щось завантажувати на сервер.

Якщо в процесі заливки папок з файлами раптово обірветься зв'язок або вимкнеться комп'ютер — нічого страшного, MyChat розбереться і продовжить роботу із завантаженням файлів після підключення. Навіть якщо цих файлів та папок кілька сотень.
3. Drag-and-drop файлів та зображень із чату в Провідник та інші програми
Тепер файли та зображення з чату можна перетягувати мишкою прямо в Провідник Windows або інші програми.
Це один із тих сценаріїв, які мають працювати природно. Отримали в чаті документ, картинку, лог або файл від колеги — взяли його мишкою та поклали у потрібну папку проєкту. Наприклад, вставити зображення — у Paint.NET, лист — в Outlook, звіт — у Word або проєкт — у Davinci Resolve. Просто перетягли документ із MyChat туди, де він зараз потрібен, і все.
Раніше для такої дії зазвичай доводилося відкривати меню, зберігати файл, шукати папку завантаження, потім відкривати файл ще раз вже в потрібній програмі. Тепер шлях коротший: чат стає нормальним джерелом для інших програм та робочого столу Windows.
4. Надсилання файлів з Провідника через "Надіслати" -> "MyChat"
Зворотний напрямок теж став простішим. Якщо користувач вже перебуває у Провіднику Windows і бачить потрібні файли, він може надіслати їх у MyChat через контекстне меню
Права кнопка миші -> "Надіслати" -> "MyChat":

Це зручно, коли людина працює не з чату, а з файлової системи: у папці клієнта, у каталозі проєкту, поруч із логами, скріншотами, договорами, актами, фотографіями чи звітами.
Не потрібно спочатку відкривати MyChat, шукати потрібний діалог, натискати кнопку вкладення та повторно вибирати ті самі файли. Файли надсилаються з місця, де користувач вже працює.
5. Всі зміни загальним списком + історія розробки
Історія розробки версії з коментарями розробників
MyChat Client
[+] (win32) drag&drop файлів та зображень з чату -> у Провідник та інші програми;
[+] (win32) відправка будь-якої кількості файлів разом з папками в чат (так звані бандли);
[+] (win32) відправка файлів з Провідника в MyChat права клавіша мишки, "Відправити" -> "MyChat";
[*] (win32) визначення активності мікрофона під час дзвінків та індикація зеленим кольором іконки у віконці голосового дзвінка та дзвінка з демонстрацією екрана;
[*] (win32) автоматичне очищення старих бекапів бази даних, які робляться при кожному оновленні клієнта, щоб не засмічувався диск;
[-] (win32) помилка ID: 79A60AA8, іноді виникала при переключенні між приватними та конференц-діалогами;
[-] (win32) якщо видалити останнє повідомлення у конференції чи приваті, то тексті чату залишався нік відправника повідомлення. Виправлено;
[-] (win32) коректна обробка "Дзвінок не вдався через технічну помилку #106", якщо це сталося на віддаленій стороні;
MyChat Server
[+] (core) зібраний робочий Doker-образ сервера;
[*] (setup) сумісність вбудованого web-сервера NodeJS зі старими операційними системами нижче Windows 10/Windows Server 2016;
[-] (core) після оновлення деяких серверів не вмикалася автоматична індексація бази повнотекстового пошуку (серверна консольна команда fts enable). Виправлено;
[-] (core) помилка ID: 25C77958 ([FireDAC][Phys][SQLite]-326. Cannot perform the action, because the previous action is in progress) іноді при завершенні роботи сервера могла з'являтися помилка збереження даних, виправлено;
[-] (admin) виправлено підрахунок статистики дзвінків (вважалася кількість спроб, а не загальний час). Виправлено.
6. Як оновитися до останньої версії?
І комерційна, і безкоштовна версії оновлюються однаково. Спочатку оновлюється сервер, потім — клієнти. В цілому, в автоматичному режимі.

