Чат одного посетителя на нескольких устройствах
Ниже описаны правила работы чатов, когда один и тот же посетитель использует несколько устройств и/или авторизуется во время диалога.
Термины
-
Сессия посетителя — непрерывная работа посетителя в виджете.
-
Авторизованная зона — посетитель идентифицирован (единая для сайта и мобильного приложения).
-
Неавторизованная зона — посетитель анонимен.
-
Размещение — набор настроек виджета, который может быть подключён к одной или нескольким страницам сайта/приложения.
-
Размещение чата — размещение, в котором был начат чат. Используется для маршрутизации, автоназначения операторов и применения фильтров.
-
Текущее размещение (отображаемое) — размещение страницы/экрана, который посетитель просматривает в данный момент на конкретном устройстве. Определяет внешний вид виджета на этом устройстве, но не влияет на маршрутизацию уже начатого чата.
N.B.
Авторизованная зона общая для веб-версии и мобильного приложения. Подключение со второго устройства в пределах одной авторизованной зоны не создаёт новый чат и не создаёт новую сессию.
Правила работы
-
Единая сессия. Если посетитель открывает виджет на втором устройстве в пределах той же сессии, он подключается к уже существующей сессии. Новый чат не создаётся.
-
Размещение чата и текущее размещение.
-
Размещение чата фиксируется по тому размещению, из которого чат был начат.
-
При последующих открытиях виджета с других страниц/размещений в рамках той же сессии логические настройки (маршрутизация, очередь, фильтры) продолжают использоваться из размещения чата.
-
Текущее размещение на каждом устройстве определяет только внешний вид виджета. Поэтому одна и та же переписка может отображаться по-разному в разных вкладках или на разных устройствах.
-
-
Переход из анонимной зоны к авторизации. Если посетитель вёл чат анонимно и затем авторизовался:
-
анонимная сессия становится новой авторизованной;
-
старая авторизованная сессия (если была) закрывается; чат в ней закрывается.
-
-
Смена устройства. Подключение из авторизованной зоны с другого устройства не дублирует чат и не создаёт вторую сессию: авторизованный посетитель присоединяется к уже существующей сессии, начатой на первом устройстве. IP-адрес и другие технические атрибуты сессии соответствуют устройству, на котором чат был начат.
-
Исключения.
-
Очистка Cookies/LocalStorage в неавторизованной зоне создаёт новую анонимную сессию.
-
Разные домены/аккаунты Webim — это разные сессии, чаты не объединяются.
-
Типовые сценарии
-
Разные размещения в одной сессии (две вкладки/разные версии сайта). Посетитель начинает чат из размещения А (например, основная версия сайта), затем открывает страницу с размещением Б (например, промо-страница) в той же авторизованной зоне. Чат остаётся один и логически принадлежит размещению А: маршрутизация и очередь берутся из размещения А, а внешний вид виджета на странице с размещением Б определяется настройками размещения Б.
-
Сайт → мобильное приложение (та же авторизованная зона). Посетитель начинает чат на сайте, затем открывает мобильное приложение, в котором настроено другое размещение. Чат остаётся один; размещение чата — то, где чат был начат (сайт). Размещение в приложении определяет только внешний вид виджета на телефоне.
-
Анонимная сессия → авторизованная сессия: текущая анонимная сессия становится авторизованной; если существовала старая авторизованная сессия, она закрывается вместе с её чатом.