Групповые чаты

Групповые чаты позволяют очень легко сделать функционал переписок между пользователями, сделать групповые чаты на несколько посетителей и консультантов, а также реализовать интерактивные комментарии и многое другое.
Функционал групповых чатов доступен как при использовании виджета, так и при использовании SDK, но в любом случае вам придется самостоятельно реализовать интерфейс для групповой беседы, поскольку Chatix только предоставляет API для работы с групповыми чатами.

FAQ по групповым чатам

Вопрос:
Кто может общаться в групповом чате?
Ответ:
Групповой чат объединяет в себе одновременно несколько консультантов и посетителей без ограничения по количеству.
Вопрос:
Какие сообщения можно отправлять в групповой чат?
Ответ:
Как и в обычном разговоре с посетителем, вы можете отправлять текст, файлы и картинки. Консультанты могут обмениваться шепотом, который не увидят посетители.
Вопрос:
Как создаются / изменяются / удаляются групповые чаты?
Ответ:

Есть два способа создать комнату:

  1. Вручную, используя панель управления. Зайдите в панель управления, разверните список комнат в боковой панели, сделайте необходимое действие.
  2. Программно, используя наш Rest API. Подробнее о нем можете почитать на отдельной странице.
Вопрос:
Можно ли восстановить групповой чат после удаления?
Ответ:
Да, вы можете восстановить удаленный чат с помощью API. Сделать это из интерфейса невозможно.
Вопрос:
Можно ли восстановить групповой чат после удаления?
Ответ:
Да, вы можете восстановить удаленный чат с помощью API. Сделать это из интерфейса невозможно.
Вопрос:
Чем отличаются публичные чаты от приватных?
Ответ:
  1. Посетитель не может самостоятельно подключится к приватному чату.
  2. Посетитель не получает приватные чаты, в которых он не состоит, в ответе на запрос получения всех групповых чатов сайта.
  3. Подключение посетителя к приватному чату выполняется только с помощью вызова API.
Данные ограничение не действует на консультантов, они свободно перемещаются между всеми чатами.

Рекомендации по работе с групповыми чатами

1
Если на вашем сайте используется несколько групповых чатов, например, когда вы делаете комментарии к постам, то вам необходимо озаботиться сохранением идентификаторов чатов на своей стороне.
2
Для снижения объема трафика посетителя, рекомендуется исключать посетителя из старых чатов. Например, посетитель просматривал несколько страниц новостей на вашем сайте и при входе на каждую страницу новости вы подключали его к соответствующему чату. Если не отключать посетителя от чатов и он продолжит просматривать новости вашего сайта, то возможно в какой-то момент он будет подключен к очень большому количеству чатов и значительную часть его трафика будет занимать обработка новых сообщений в старых чатах, которые ему более не актуальны.

API групповых чатов

Получение доступа к объекту SDK
Для создания интерфейса групповых чатов вам нужно получить доступ к SDK чатикса. В зависимости от того как
// при использовании виджета, вы можете получить доступ к SDK обратившись к свойству core глобального объекта chatixWidget.
let chatixSDK = chatixWidget.core;

// при использовании SDK напрямую вы создаете объект SDK в конструкторе.
import ChatixCore from 'chatix-core';
let chatixSDK = new ChatixCore(websiteId);
Получение списка доступных чатов
Посетитель может получить список созданных чатов (публичных и приватных, в которых он уже состоит). У посетителя сайта нет возможности создавать чаты, это могут сделать консультанты или API.
/** метод getChatrooms отдает данные о чатах сайта в виде постраничного списка. 
  * pageId (int) Номер страницы, по-умолчанию 1
  * perPage (int) Количество чатов на одной странице, по-умолчанию 10
  *
  * Возвращает Promise, в котором указаны параметры запроса и объект данных о чатах
  */
chatixSDK.getChatrooms();