Здесь вы можете задать любые вопросы по MyChat, по работе программы, её настройке, лицензированию и т.д.
Аватара пользователя
Staarplaat
Суть
Указать конкретные параметры для отдельных Web-чатов на разных страницах сайта как это было до обновления.
Как минимум необходимо хотя бы указать разные группы. Иначе у нас "встала" web-поддержка.

До обновления
До обновления в коде чата были явно указаны параметры чата, в том числе группа была явно указана в параметре window.mc_uho_opt.group. На разных страницах сайта был свой чат. Например, на главной странице сайта чат соединялся с группой Web-поддержки "веб-менеджеры", на странице личного кабинета чат соединялся с Web-поддержки "тех-поддержка"

После обновления
После обновления код чата одинаковый при любых настройках. Таким образом не указать ни отдельные параметры чата (вид, расположение) В том числе не указать конкретные группы для отдельных Web-чатов на разных страницах сайта. На всех страницах сайта всегда одна и та же группа.
Аватара пользователя
Андрей Раков
Добрый день.

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

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

Описание параметров чата:

Код: Выделить всё
text  — текст кнопки для открытия чата (ушко);
position  — расположение "ушка" (от 1 (справа, сверху) и до 12, по часовой стрелке);
_type — тип выбора пользователей, true — для групп и false — для конкретных операторов;
uin — UIN с кем открыть чат или список UIN-ов, можно указать в виде: [1,2,3] или "1,2,3", для чата будет выбран один, случайным образом;
group — ID группы операторов;
height — высота окна чата (при открытии в отдельном окне);
width — ширина окна чата (при открытии в отдельном окне);
btnID — список id кнопок или других HTML элементов, детальное описание будет ниже;
select — нужно ли показывать выбор операторов перед началом чата: true/false (да/нет);
inFrame — показывать чат не в отдельном окне, а в середине страницы (во фрейме): true/false (да/нет);
hideMain — скрыть "ушко", если используется только пользовательские кнопки для открытия чата: true/false (по умолчанию - false, "ушко" отображается);
custom — произвольная текстовая строка, передается оператору без изменений в поле Reflink;
url — адрес сервера чата (протокол HTTPS или HTTP в адресе указывать нельзя);
fields — поля, которые должен заполнить пользователь при первом входе в чат, текстовая строка: "email,name" или "name", или "email", или "" — ничего.

Параметр "btnID" может содержать список id HTML элементов, при нажатии на которое будет открыт чат с определенным оператором, также в атрибутах этого элемента нужно указать UIN, с кем открыть чат (uin="3") или ID группы поддержки (group="1"), например:

Код: Выделить всё
<div id="mcGifer" uin="3" style="cursor:pointer;">
    <img src="img/Live_Chat.png" onmouseout="this.src='/img/Live_Chat.png';" onmouseover="this.src='/img/Live_Chat_2.png';">
</div>

Этот код отображает картинку с текстом "Открыть окно чата":
chrome_2CuDOs3HCV.png
chrome_2CuDOs3HCV.png (20.82 КБ) Просмотров: 11964


И пример скрипта:
Код: Выделить всё
<!--== MyChat Web Support ==-->
<script type="text/javascript">
    window.__setMyChatOption = function (opt) {
        try {
            window.mc_uho_opt = Object.prototype.toString.call( opt ) === '[object Object]' ? opt : JSON.parse(opt);

            window.mc_uho_opt.btnID = ["mcGifer", "mcHobit", "mcGlubber", "mcHelen"];

            var run   = document.createElement("script");
            run.type  = "text/javascript";
            run.async = true;
            run.src   = "https://mychat-server.com/chat/uho/supportUho.js";
            var s     = document.getElementsByTagName("script")[0];
            s.parentNode.insertBefore(run, s);
        } catch (e) {
            console.warn(e.message);
        }
    }
</script>
<script src="https://mychat-server.com/getSupportOptions.js" async type="text/javascript"></script>

В строке window.mc_uho_opt.btnID = ["mcGifer", "mcHobit", "mcGlubber", "mcHelen"]; указаны id всех кнопок для открытия чата.

Аналогично этому параметру в window.mc_uho_opt можно указать любое из выше перечисленных полей, пример:
Код: Выделить всё
window.mc_uho_opt.position = 2; // кнопка чата справа в центре
window.mc_uho_opt._type  = true; // пользователи группы 1
window.mc_uho_opt.group = 1; // номер группы 1
window.mc_uho_opt.select = true; // показать выбор операторов, при первом подключении
window.mc_uho_opt.inFrame = true; // отобразить чат в середине окно, во фрейме
window.mc_uho_opt.fields = "name,email"; // требовать от посетителя ввести имя и почту
window.mc_uho_opt.url = "192.168.10.10:8080"; // актуально, когда веб-сервер чата работает на одном порту, а вы его открыли через портмапинг на другом, обратите внимание, адрес без "http(s)://"

Указанные в скрипте поля имеют приоритет над настройками в админке сервера.

Таким образом можно указывать на разных сайтах или страницах window.mc_uho_opt.group, чтобы использовать отдельный группы пользователей.

Отдельно хочу рассказать про параметр custom, его можно использовать для дополнительной идентификации пользователей. Например, когда у вас несколько сайтов и по какой-то причине не определяется Reflink для посетителей. Это поле будет добавлено в логине, в поле Reflink, которое обрабатывается серверным скриптом "OnPrivateRequest" - "WebGuestInfo".
Аватара пользователя
Staarplaat
Отлично!
То, что нужно. Спасибо. Работает.
Тему можно закрывать.
Руслан.Тян
У меня почему-то в окошке чата видна полоса загрузки и после этого белое окошко а самого чата не видно ((
Аватара пользователя
Андрей Раков
2Руслан.Тян

Да, там есть баг, вот в этой теме архив с обновлением веб-сервера (для версии 7.7):
viewtopic.php?p=36997#p36997
Руслан.Тян
Спасибо помогло.

Есть еще вопрос (хоть и не в тему :) ) Есть ли модуль web-поддержки для CMS Joomla?
Аватара пользователя
Андрей Раков
Раздел админки "Инструменты" - "Веб-поддержка на сайт".

Для версии сервера 7.х
АлисаЛебедева
это немного не то, можно как то его установить не кнопкой а сразу открытый на всю страницу?
вот именно сюда надо!
https://topbest.site/chats
Аватара пользователя
Андрей Раков
Нет, он так работать не будет.

Это чат поддержки для связи с поддержкой (один на один).
ВячеславВолобуев
То ли я чет не понимаю, или без домена и сертефикатов данное не работает?
запускаю скрипт на ваш домен все норм, меняю адрес на свой и глухо ни иконки на сайте ни чего:(
Аватара пользователя
Андрей Раков
Добрый день.

Очевидно, что у вас сайт и сервер работает на разных протоколах HTTP и HTTPS, нужно чтобы они работали на одном типе протокола.
ВячеславВолобуев
на сайте https:// там стоят сертефикаты все норм, включаю шифрование на сервере и ничего не происходит пусто и все :( https://91.239.137.29:4434 мож тут че не так?
Аватара пользователя
Андрей Раков
Вы используете встроенные сертификаты, они подходят только для теста, загрузите или сгенерируйте сертификаты для домена, на котором работает сервер чата.
ВячеславВолобуев
Я ж и писал что в локалке у меня нет домена только внешний адрес и все, как я понял без домена работать оно не будет?
ВячеславВолобуев
А то я загрузил бесплатный но в админке пишет что он не действителен:(
скрипт на сайте не запускается:(
Аватара пользователя
Андрей Раков
В разделе веб-сервисов есть инструкция по созданию бесплатного сертификата, если вы сделаете все по инструкции — у вас будет сертификат.
ВячеславВолобуев
Сертефикат есть он поднялся, а вот скрипт не хочет:( что не так не понимаю
https://vialauto.kherson.ua:4434/chat
Аватара пользователя
Андрей Раков
Пожалуйста, создайте Отдельную тему, там опишите, что вы сделали, а я попробую разобраться, что не так.

В этой теме я на данный вопрос отвечать не буду, так как она о другом.
Аватара пользователя
dr. Alex Kozik
Добрый день! После обновления сервера на последнюю версию - кнопка web-поддержки на сайте переместилась в левый нижний угол и ее положение не изменяется при изменении настроек.
Сайт https://galen.by
Аватара пользователя
Андрей Раков
Добрый день.

Замените пожалуйста содержимое папки из архива
C:\Program Files (x86)\MyChat Server\node\server\www\chat\uho
(5.56 КБ) Скачиваний: 229
Аватара пользователя
dr. Alex Kozik
Код: Выделить всё
Добрый день.

Замените пожалуйста содержимое папки из архива
C:\Program Files (x86)\MyChat Server\node\server\www\chat\uho
 uho.zip
 (5.56 КБ) Скачиваний: 1


Спасибо! Все заработало!