В платформе TESSA 3.5.0 расширены функции web-клиента в части удобного редактирования файлов, экономии трафика и средств форматирования сообщений в обсуждениях.
В предыдущем посте были рассмотрены архитектурные изменения системы и приложение
Tessa Applications. В этом посте затронуты возможности web-клиента, а в следующем посте будут описаны другие функциональные аспекты платформы.
Deski – ассистент web-клиента
“Открыть для редактирования” – это одна из тех новых функций TESSA 3.5.0, которая сразу бросится в глаза при работе с web-клиентом.
При нажатии на пункт меню выполняется поиск:
и отображается вопрос:
При нажатии на кнопку “Да” пользователь видит окно скачивания Deski.
Deski – это приложение-ассистент, расширяющий возможности web-клиента TESSA, обеспечивая лучшую интеграцию с операционной системой и установленными приложениями.
“Открыть для редактирования” скачивает и открывает файл в приложении, которое ассоциировано с расширением файла.
Например, для .docx будет открыт Word или LibreOffice Writer.
Пользователь редактирует файл, сохраняет и закрывает приложение, после чего сохраняет карточку в web-клиенте – файл сразу загружается на сервер, и нет нужды отдельно скачивать его в папку “Загрузки”, а затем заменять изменённый файл через контекстное меню.
Эту и другие новые функции Deski подробно рассмотрим ниже, а сейчас поговорим о том, как его установить.
Установка Deski
В окне “О программе” отображается статус “Deski недоступен” и версия приложения, опубликованная на сервере.
По кнопке “Скачать” выводится тот же диалог, что и по кнопке “Да” на вопрос “Скачать Deski?”.
В диалоге сразу выбрана рекомендуемая версия для текущей ОС (в этом примере – 64-битная Windows). При нажатии “Скачать” скачивается файл с инсталлятором – на ОС Windows это TessaDeski.msi.
Инсталлятор не требует прав администратора, устанавливается только для текущего пользователя, не затрагивая другие учётные записи на том же компьютере. По умолчанию выбрана папка неперемещаемого профиля пользователя AppData\Local\tessa\deski
При установке по умолчанию выбраны создание ярлыков в меню “Пуск” и на рабочем столе, а также ярлык запуска вместе с Windows, который создаётся в папке автозапуска для текущего пользователя %AppData%\Microsoft\Windows\Start Menu\Programs\Startup
Мы рекомендуем использовать автозапуск, т.к. запущенный в фоне Deski не потребляет ресурсов системы, но он должен работать при открытии web-клиента, чтобы использовать функции открытия и редактирования файлов. В следующий версиях TESSA мы планируем расширить набор доступных функций.
Помимо выбора ярлыков и папки, инсталлятор не имеет настроек. Он может быть установлен пользователем без прав администратора по алгоритму “Далее-Далее-Готово”, или же администратором через доменные политики.
Deski надо установить один раз, независимо от того, ко скольким серверам TESSA подключается пользователь. Например, если пользователь имеет доступ и к qa-серверу, и к prod-серверу TESSA 3.5.0 (или старше), то Deski будет установлен один раз, и web-приложения с обоих серверов смогут параллельно работать и редактировать файлы с помощью Deski.
После установки в указанную папку будет распакован запускающий файл deski.exe, а также создана подпапка с временными файлами и настройками.
В свойствах подпапки отображается размер 2 Гб – это максимальный размер открытого файла .vlog, он не соответствует действительно занимаемому месту, т.е. это место на самом деле свободно и может быть занято другими приложениями.
Сразу после установки или позже по запуску через ярлык открывается страница в браузере. Пользователю она неинтересна, и он может её закрыть.
На странице отображается номер порта, по которому подключено приложение (в адресной строке), версия приложения, и дополнительные настройки (отсутствуют для Windows). Кнопка “Список открытых файлов в JSON-формате” может понадобится для разрешения проблем, она отображает диагностическую информацию по текущим редактируемым файлам.
Deski автоматически выбирает незанятый порт из предопределённого списка портов в разных диапазонах. Один из них точно будет свободен. Web-клиент TESSA сканирует эти порты для определения того, на каком из них запущен Deski. Это происходит в фоне прозрачно для пользователя. В окне консоли браузера можно наблюдать процесс поиска Deski.
Пока Deski работает, в системном трее будет его значок.
В контекстном меню на значке можно открыть ту же страницу браузера, или закрыть приложение. Снова запустить его можно будет по ярлыку.
В окне “О программе” после подключения к приложению-ассистенту будет отображено, что “Deski доступен”. Если надпись не изменилась, то нажмите кнопку обновления страницы в браузере.
Deski – кроссплатформенное приложение, его полноценная работа поддерживается не только на Windows. На ОС Linux в диалоге по кнопке “Скачать” браузер скачивает архив deski.zip.
Распакуйте этот архив в домашнюю папку (без создания подпапки). Зайдите в папку ~/deski и запустите приложение deski двойным кликом.
Если на вашем дистрибутиве Linux приложение Deski не запускается, то обратитесь в раздел Troubleshooting руководства по установке.
В области уведомлений (рядом с часами) появится значок с контекстным меню.
При запуске открывается страница приложения, где помимо известной информации (см. выше) есть кнопка “Настройки”.
Как и вся платформа TESSA, Deski локализован на русский и английский языки. На скриншоте пример англоязычного интерфейса.
По кнопке “Настройки” открывается диалог, где можно поставить флажок “запускать автоматически при входе” и нажать “Сохранить”.
С этого момента можно считать, что установка Deski на Linux завершена, и можно полноценно пользоваться новыми функциями web-клиента. Подпапка с кэшом и настройками создаётся в папке с запускаемым приложением “deski” (может быть невидимой).
Для macOS также скачивается архив .zip, в котором доступно приложение .app. Установите его двойным кликом, откроется окно Deski в браузере, где аналогичным образом включите автозапуск.
Deski не поддерживается в Safari, используйте Chrome или Firefox для macOS.
Для мобильной версии web-клиента, открытой из Android или iOS, Deski не поддерживается, и будут недоступны функции открытия и редактирования файлов в контекстном меню на файле.
Если по какой-либо причине вы не хотите использовать Deski на этом сервере TESSA, то в файле app.json в папке веб-сервиса его можно отключить, указав в блоке “Deski” настройку
“Enabled”: false
В этом случае функции работы с файлами посредством Deski исчезнут из контекстных меню, а web-клиент не будет выполнять поиск Deski по локальным портам.
Другие особенности настройки Deski приведены в руководстве по установке там же есть ссылки на руководства пользователя и администратора по работе с Deski.
Новые функции web-клиента
В контекстном меню на файлах появились пункты:
- Открыть для редактирования – если файл доступен для редактирования, то его можно открыть в приложении, установленном у пользователя, например, Word, Excel, LibreOffice и др. Изменённый файл отмечается ярко-жёлтым.
Файл будет загружен на сервер вместе с сохранением карточки, если в нём фактически есть изменения. Это определяется по дате изменения файла в папке Deski.
- Открыть для чтения – если файл недоступен для редактирования, то его можно открыть во внешнем приложении для чтения. Для файла установлен атрибут “только для чтения”, поэтому пользователь не сможет его изменить и сохранить.
- Отменить изменения в файле – для изменённого (ярко-жёлтого) файла есть возможность откатить все несохранённые изменения, включая его содержимое, имя файла и категорию. Функция работает также при отсутствии Deski.
- Открыть для чтения/редактирования в папке – открывает временную папку, в которую загружен файл. Если есть права на редактирование, то пользователь в контекстном меню может выбрать “Открыть с помощью”, изменить файл, сохранить его и сохранить карточку.
Кэш файлов Deski
В системе TESSA любое изменение файла создаёт версию файла. В пределах одной версии контент файла не меняется. Если файл указанной версии уже открывался, то вместо скачивания он открывается из кэша. Это существенно сокращает потребление трафика при работе с файлами.
При открытии файлов посредством Deski их содержимое кэшируется на компьютере пользователя, в подпапке .deski_data
, для очистки кэша папку достаточно удалить.
Содержимое всех файлов надёжно зашифровано на диске. Для каждого пользователя на сервере генерируются ключи для шифрования. Выполняется автоматическая ротация ключей для каждого пользователя, её интервал задаётся в файле app.json веб-сервиса в настройке “CipherKeyRotationInterval”, по умолчанию это 10 дней:
Ключ генерируется со сроком жизни в два интервала ротации (по умолчанию это 20 дней).
Т.е. после того, как был выписан новый ключ, файлы, зашифрованные предыдущим ключом, какое-то время будут доступны в кэше. Изменённые ключи запрашиваются web-клиентом при открытии и далее периодически, пока пользователь работает с приложением.
В том же конфигурационном файле app.json есть настройка “CipherKey” – это ключ, который используется для шифрования ключей для каждого сотрудника (это не тот же ключ, ротация которого выполняется). После его изменения ключи для всех пользователей будут изменены на новые.
Генерация ключа “CipherKey” выполняется автоматически скриптами Setup/Upgrade. Рекомендуется автоматизировать его пересоздание, это описано в руководстве по установке.
Публикация Deski
Приложение Deski доступно для различных вариантов архитектуры:
- 32-битная Windows
- 64-битная Windows
- 64-битная Linux
- 64-битная macOS
Вариант приложения под каждую архитектуру (и для Windows – в зависимости от языка инсталлятора) существует в виде отдельной карточки “Приложение Web”.
Посмотреть список опубликованных приложений можно в реестре “Прочее – Приложения Web” в рабочем месте “Администратор”.
Параметр фильтрации “Показать доступные” упорядочивает и скрывает приложения, в зависимости от настроек в текущей сессии (см. действие “Вход в систему” в истории действий для сессии).
Именно в такой форме они отображаются в выпадающем списке в диалоге скачивания Deski
(см. выше).
Карточки приложений Web публикуются автоматически в скриптах Setup/Upgrade. Публикация выполняется командой tadmin PackageWebApp по содержимому папки в сборке DeskiSetup, она описана в руководстве администратора.
Форматирование сообщений в форумах
В web-клиенте добавлены функции форматирования сообщений в обсуждениях.
Доступны создание маркированных и нумерованных списков, жирный/курсив/подчёркнутый/зачёркнутый текст, выбор цвета шрифта и фона, прикрепление файлов и ссылок.
Другие средства форматирования будут добавлены в следующих сборках.
Естественно, что оформление сообщений, введённых в web-клиенте, отображается и в приложении TessaClient, и наоборот.
Продолжение следует…
В системе TESSA есть и другие новые функции, которые будут описаны в следующем посте. Некоторые из них доступны и в web-клиенте, и в desktop-клиенте.
Полный список изменений приведён в ReleaseNotes.