MyChat 7.2 — синхронизация истории и статусы доставки сообщений

  1. Синхронизация приватных сообщений
  2. Статусы доставки и прочтения сообщений
  3. Чат для сайта: новые возможности
  4. Android-версия, что нового?
  5. Робот-викторина
  6. Управление задачами Kanban, новые фишки
  7. Ctrl+V картинок в форум
  8. Новые функции скриптового движка
  9. Все изменения общим списком + история разработки
  10. Как обновиться на последнюю версию?

1. Синхронизация приватных сообщений


Теперь вы можете заходить в MyChat на разных компьютерах и в разных приложениях (Windows/Android/macOS/Linux), а также в браузере, история приватных сообщений и открытые диалоги будут автоматически синхронизироваться.

Например, общались с сотрудниками на работе в MyChat Client под Windows, а затем вечером, в дороге, подключились с Android-смартфона. Все диалоги "подтянутся" в телефон, а те сообщения, что вы отправите с мобильного устройства, завтра утром будут видны в вашем рабочем приложении в офисе.

Если вы получили сообщения в привате, но не читали их, а потом перезапустили программу — MyChat Client продолжит мигать в трее и на панели задач, сигнализируя, что для вас есть сообщения. Даже если вы запустите программу на другом компьютере под своей учётной записью.

А ещё после старта автоматически открываются приваты с теми людьми, с которыми вы разговаривали перед выходом. Если диалог не нужен, просто закройте закладку, система запомнит это.


2. Статусы доставки и прочтения сообщений


Во всех приватных диалогах теперь показываются статусы ваших отправленных сообщений. Всего три типа:

  • "Отправлено". Сообщение отправлено на сервер, но ваш собеседник ещё не получил его. Например, компьютер или смартфон выключен или не в сети.
  • "Получено". Собеседник физически получил ваше сообщение, но ещё не читал его.
  • "Просмотрено". Сообщение получено и просмотрено.

Статусы доставки и прочтения сообщений в MyChat

Все статусы работают автоматически, как в интернет-мессенджерах.

Теперь вы точно будете знать, видел ваш собеседник отправленное сообщение или он сейчас занят другими делами. Либо смартфон офлайн, и сообщение ещё не доставлено:

Статусы прочтения в MyChat

Показывать или нет статусы доставки и прочтения сообщений — дело добровольное, если вам они не нужны, можно отключить в настройках.


3. Чат для сайта: новые возможности


Инструмент для вставки чата поддержки на сайт продолжает развиваться.

Например, вы хотите дать возможность посетителям сайта выбрать, с кем именно они хотят поговорить: с бухгалтерией, менеджерами или с техническим специалистом. Люди в списке доступных операторов сортируются по статусу онлайн/офлайн, те, кто в сети — сверху. Если только один оператор онлайн, то чат с ним откроется сразу.

Выбор оператора поддержки в MyChat

Теперь можно указать группу операторов в коде кнопки на сайт, чтобы не менять HTML-код, указывая UIN-ы людей, а просто изменять содержимое группы на сервере, добавляя и удаляя операторов в любое время.

Иногда нужно не спрашивать имя и почту пользователя, а сразу впустить его в чат. Теперь вы сами решаете, какие данные обязательны, а какие — нет.


4. Android-версия, что нового?


Теперь все номера телефонов в чате кликабельны и открываются стандартным приложением для звонков:

Кликабельные номера телефонов в MyChat для Android

Если пропала связь с сервером, приложение говорит об этом и пытается восстановить соединение, когда вы переключаетесь между мобильным интернетом и Wi-Fi:

Индикация отсутствия подключения к серверу в MyChat для Android

Переработан список пользователей в конференциях. Показываются статусы, навигация стала проще, а элементы списка сделали больше и выразительнее:

Редизайн списка пользователей в MyChat для Android

MyChat для Android научился показывать форматированный текст в сообщениях:

Форматированный текст в MyChat для Android


5. Робот-викторина


Теперь в MyChat есть робот-викторина:

Робот-викторина в MyChat Client

Настраивается в пару кликов, база вопросов качается отдельно.

Есть рейтинги, поощрения за серии правильных ответов, подсказки и простые настройки. Все вопросы — на русском языке.

Робот-викторина на MyChat Server


6. Управление задачами Kanban, новые фишки


Во-первых, в задания теперь можно прикреплять изображения и документы:

Вставка изображений в задания Канбан-доски

А во-вторых, назначать задания другим пользователям прямо из MyChat Client (Alt+T):

Назначение задач другим пользователем прямо из клиента MyChat в Канбан

Все задачи отображаются в WEB-интерфейсе Kanban-доски, а в чат приходят уведомления для исполнителей и руководителей.

Назначенное задание в Канбане


7. Ctrl+V картинок в форум


Многие наши клиенты используют встроенный форум как корпоративную базу знаний, инструкций и нормативных документов. С удобной древовидной разбивкой по разделам и темам.

Начиная с версии 7.2, вы можете вставлять в посты изображения прямо из буфера обмена, не сохраняя предварительно для этого содержимое в файл в графическом редакторе.

Например, скопировали в буфер обмена содержимое активного окна через Alt+PrintScreen — и сразу вставили в форум по Ctrl+V:

Вставка изображений из буфера обмена во встроенный форум MyChat


8. Новые функции скриптового движка


Традиционно, в каждой новой версии MyChat мы расширяем возможности встроенного скриптового движка сервера.

В MyChat 7.2 были добавлены функции для работы с файлами и резервными копиями баз данных MyChat Server, для перевода чисел в шестнадцатиричный формат и обратно.

Появился блок функций для сохранения и чтения данных из встроенной базы данных MyChat Server и функции для работы с чатом поддержки для посетителей на WEB-сайте компании.

Были добавлены функции для управления общим списком контактов и их аналоги в MyChat IntegrationAPI.


9. Все изменения общим списком + история разработки


История разработки версии с комментариями разработчиков

MyChat Client

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

[*] убрано системное сообщение "Пользователь подключен к серверу" в окне приватного разговора при подключении собеседника к серверу в связи с появлением системы синхронизации приватных сообщений;
[*] (Android) переработан список пользователей в конференции, теперь в списке отображаются статусы пользователей, навигация стала проще, элементы списка стали больше и выразительнее;
[*] убрано уведомление из приватного разговора "*** Пользователь подключен к серверу";
[*] "Ctrl+Enter" в окне создания оповещения мгновенно отправляет его, если все поля заполнены правильно;
[*] добавлена кнопка прокрутки главной панели инструментов, если ширина панели больше, чем ширина окна MyChat Client;
[*] если нет связи с сервером MyChat, то по F1 в любом месте программы открывается справка с официального сайта, https://nsoft-s.com, а не с локального сервера;
[*] консольная команда "help" открывает в браузере локальную справку по использованию консольных команд;
[*] дополнительная проверка на существование дефолтной папки при открытии стандартных диалогов открытия файлы/папки (если каталог не существует, отвалилась сетка, нет диска, удалили именно эту папку и т.п.);

[-] ошибка перерисовки технической информации о пользователе и активном процессе;
[-] в окне отправки оповещения неправильно работал фильтр пользователей (F3);
[-] в окне отправки оповещения автоматически заполнялся список получателей, если в поле фильтра вводились любые данные для поиска;
[-] в окне отправки оповещения (Ctrl+F9) иногда после нажатия на кнопку "Приложить файл" окно выбора файла показывалось на заднем плане. Исправлено;
[-] не получалось залить на сервер файлы нулевой длины, выдавалась ошибка заливки файла на сервер (#0234). Исправлено;
[-] (Android) после изменения структуры общего списка контактов, разделы не удалялись в мобильном клиенте до перезагрузки. Исправлено;
[-] ошибка ID 5C700000, "Cannot change Visible in OnShow or OnHide", возникала, если установить настройку запроса пароля для входа на сервер при каждом запуске программы. Исправлено;
[-] (Mac) из-за масштабирования с тачпада ломался интерфейс чата. Исправлено;
[-] (Android) исправление ошибок связанных с отображением типа сообщений "Контакт";
[-] (Android) исправления ошибок во время аудио и видео звонков;
[-] (Android) устранена проблема с невозможностью установить приложение на некоторых устройствах;
[-] (Android) во время регистрации пользователя учетная запись создавалась дважды. Исправлено;
[-] (Mac, Linux) дублирование истории конференций при выходе/входе. Исправлено;
[-] (Mac, Linux) "тихое падение" клиента при подключении к серверу или восстановлении связи. Исправлено;
[-] кнопка "Отправить файл" в привате оставалась неактивной, если получатель не дал согласие на приём файл в течение 15 минут и сеанс передачи файлов не был начат. Исправлено;
[-] пункт главного меню "Инструменты", "Мои любимые конференции" (ALt+V) не работал. Исправлено;
[-] ошибка рендеринга руководителей подразделений в списках контактов. Исправлена;
[-] если нажать на картинку в чате ПКМ и выбрать "Сохранить как", а затем изменить имя, то файл изображения сохранялся без расширения. Исправлено;
[-] (Android) теперь после изменения активного сервера в мастере, данные корректно сохраняются;
[-] (Android) раньше, во время редактирования сервера без пароля, вместо него подставлялось слово "null". Исправлено;
[-] (Android) исправление мелких ошибок интерфейса;

MyChat Server

[+] (Integration API) команды MCIAPI_CS_MoveUserToDepartment и MCIAPI_CS_CommonContactsRebuild для перемещения пользователей между подразделениями общего списка контактов и пересборки кеша общего списка контактов;
[+] (MSL) функция mCommonContactsRebuild для пересоздания кеша общего списка контактов и рассылки его всем онлайн-пользователям;
[+] (MSL) функция mMoveUserToDepartment для переноса пользователя из одной группы общего списка контактов в другую;
[+] (MSL) функция mAddUserToWebSupportGroup для добавления пользователя в указанную группу операторов web-поддержки;
[+] (MSL) функция mCreateWebSupportGroup для создания новой группы web-поддержки;
[+] (MSL) функция mDeleteUserFromWebSupport для удаления пользователя из группы web-поддержки;
[+] (MSL) функция mDeleteWebSupportGroup для удаления группы web-поддержки;
[+] (MSL) функция mGetUserWebSupportGroupID для получения группы web-поддержки указанного пользователя;
[+] (MSL) функция mGetWebSupportGroupIDByName для получения числового идентификатора группы web-поддержки по имени;
[+] (MSL) функция mGetWebSupportGroupNameByID для получения название группы операторов web-поддержки по идентификатору;
[+] (MSL) функция mGetWebSupportGroupUsers для получения списка пользователей указанной группы web-поддержки;
[+] (MSL) функция mRenameWebSupportGroup для переименования существующей группы операторов web-поддержки;
[+] (MSL) функция mWebSupportGroupIDExists для проверки существования группы web-поддержки;
[+] (MSL) функция mDBStorageGetData для чтения данных из базы по ключу;
[+] (MSL) функция mDBStorageSetData для записи данных в базу сервера;
[+] (MSL) функция mDBStorageDeleteKey для удаления ключа с данными из базы сервера;
[+] (MSL) функция mDBStorageKeyExists для проверки существования ключа с данными в базе данных сервера MyChat;
[+] (Admin) опция "Отключать скрипты из-за превышения времени выполнения" в разделе "Настройки", "Дополнительно". По умолчанию выключена;
[+] (WebSupport) можно выбрать в админке, использовать выбор операторов или нет при открытии окна для связи;
[+] (WebSupport) можно указать группу или несколько операторов для связи;
[+] (WebSupport) люди в списке доступных операторов для связи сортируются, кто онлайн, а кто офлайн, онлайн — вверху;
[+] (WebSupport) если в списке для выбора операторов только один человек онлайн — чат откроется сразу;
[+] (WebSupport) можно выбрать, что спрашивать у пользователя при первом входе: имя, email или ничего. Имя пользователя сгенерируется автоматически (user_20181207182456231);
[+] (WebSupport) в списке операторов, доступных для разговора, пишется имя и должность (если есть);
[+] (WebSupport) если выбор операторов отключен, то система выбирает случайно среди онлайн-операторов. Если онлайн нет никого, то случайно среди всех операторов;
[+] (WebSupport) при повторном открытии чата, чат откроется с тем оператором, с которым пользователь уже говорил ранее (ради истории, она отображается в чате сразу);
[+] (MSL) функция HexToInt для преобразования шестнадцатеричного числа в виде строки в десятичное;
[+] (MSL) функция IntToHex для преобразования десятичного числа в шестнадцатеричное;
[+] (MSL) функция FileSize для получения размера файла на диске;
[+] (MSL) функция IntToKbyte для получения короткой текстовой записи размера файла;
[+] (MSL) функция mMakeBackupServerDataBase для создания резервной копии баз данных сервера;
[+] (MSL) функция ExtractFilePath для получения пути файла;
[+] (MSL) функция ExtractFileName для получения имени файла;
[+] (MSL) функция ExtractFileExt для получения расширения файла;
[+] (Forum) вставка скриншотов (изображений) из буфера обмена;
[+] (Kanban) добавлена возможность прикреплять изображения и файлы к заданиям;
[+] встроенный робот-викторина;

[*] дополнительный контроль на принадлежность UIN-а пользователя к группе поддержки операторов на сайт;
[*] быстрое переподключение пользователей при отвале связи из-за перехода между подсетями (WiFi <-> Internet);
[*] в настройках внешнего IP адреса для встроенного FTP сервера можно вводить только IP, без указания порта. Сделан дополнительный контроль;
[*] в фильтре "Плохих слов", конференции исключения теперь добавляются с помощью выпадающего списка, а не с помощью ввода текстового названия;
[*] (Core) система автоматической очистки старых файлов теперь смотрит на дату и время последнего доступа к файлам, а не на дату и время создания;
[*] (MSL) теперь нельзя создать два скрипта, названия которых различаются только регистром, например, "MyScript" и "myscript". Такие названия будут считаться одинаковыми;

[-] (MSL) некорректная работа функции mConvertMsgToPlainText, если на вход передано сообщение из одного символа. Исправлено;
[-] (Admin) в профиле пользователя, список доменов в поле "Имя домена" писался в один элемент, через запятую. Исправлено;
[-] (MSL) скриптовая функция mSetUserAttribute не обновляла данные в базе сервера, только данные в памяти. Исправлено;
[-] (WEB-support) при регистрации пользователя с iPhone происходило дублирование пользователя. Исправлено;
[-] (Admin) в просмотре истории диалогов с роботом не отображались некоторые типы сообщений (IntegrationAPI, Forum и Kanban). Исправлено;
[-] (Admin) в онлайн пользователях сбрасывался фильтр, когда счетчик обновления доходил до 0. Исправлено;
[-] (WEB-chat) не работала отправка сообщений на доску объявлений. Исправлено;
[-] (WEB-chat) не работали видео-звонки. Исправлено;
[-] (WEB-chat) Kanban открывался всегда с адресом 127.0.0.1 вместо реального. Исправлено;
[-] после первого старта сервера автоматически создавалась группа-дубликат прав для администратора с UIN=1 с названием из цифр. На работоспособность сервера не влияет. Исправлено.

10. Как обновиться на последнюю версию?


И коммерческая, и бесплатная версии обновляются одинаково. Сначала обновляется сервер, затем — клиенты. В основном, в автоматическом режиме.

Инструкция по обновлению MyChat

Служба поддержки