"Если вдруг открылся люк, не пугайся, это глюк!" (с) Если что-то работает не так, вы нашли ошибку или опечатку в программе — вам в этот раздел
Аватара пользователя
ALPA
Добрый день! Суть проблемы:
1. Создаем в административной части Майчата группу пользователей для поддержки веб-чата
2. Там же выставляем настройку - показать выбор оператора
3. На сайте размещаем кнопку, где в параметре uin="1,2" через запятую перечисляем uin'ы нужных операторов. В скрипте настраиваем window.mc_uho_opt.btnID...в общем все делаем как надо
4. Кнопка появляется на сайте, мы по ней нажимаем и видим, что операторы то подгрузились в чат, но вот изначально по умолчанию ни один из операторов не выбран...там вообще ничего не выбрано в поле оператора - оно пустое. В итоге, если клиент напишет в чат, то сообщение уйдет в никуда...
5. Вторая проблема - если в админке не разрешать выбор операторов. Тогда при клике на кнопку оператор выберется автоматически. Но тут мы заметили, что выбирается не тот оператор который в сети, а первый из списка uin'ов, которые мы повесили на кнопку вызова чата.

Подскажите, мы реально обнаружили проблему или тупим и не понимаем чего-то?
Аватара пользователя
ALPA
Вот код кнопки вызова чата

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


А вот скрипт

Код: Выделить всё
<!--== 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 = ["uQ", "u8", "u9", "u10", "u11", "u12", "u13", "u14", "u15", "u17", "u19", "u20", "u21", "u23", "u25", "u27", "u28", "u29", "u31", "u32", "u33", "u34", "u35"];

            var run   = document.createElement("script");
            run.type  = "text/javascript";
            run.async = true;
            run.src   = "https://chat.alpatech.ru/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://chat.alpatech.ru/getSupportOptions.js" async type="text/javascript"></script>
Аватара пользователя
Андрей Раков
Посмотрел у вас на сайте — вы сделали индивидуальные кнопки для ваших сотрудников и они работают правильно.

Скрипт, который вы привели выше тоже должен работать, только в поле "uin", указанное в div-ве, можно передавать только одно значение.
Аватара пользователя
ALPA
Но смотрите, вот на этой странице есть описание настроек для опытных юзеров viewtopic.php?p=34531#p34531

И там сказано так

uin — UIN с кем открыть чат или список UIN-ов, можно указать в виде: [1,2,3] или "1,2,3", для чата будет выбран один, случайным образом;

То есть можно указать список, а не только одно значение...
Аватара пользователя
Андрей Раков
Там идет речь про настройки скрипта, которые вы указываете через "window.mc_uho_opt", это будет глобальный список uin-ов.
Аватара пользователя
ALPA
То есть правильно понял - по кнопке можно открыть чат только с ОДНИМ оператором?
Аватара пользователя
ALPA
Понял. Но все же смотрите, если я укажу у div'а несколько uin'ов, то при нажатии на кнопку там подгрузятся нужные операторы, просто будет работать не корректно (как я писал в самом начале).

То есть функционал работает как бы частично...Мне кажется тут стоит либо его вообще пофиксить - типа если указано несколько uin'ов на кнопке, то просто брать первый по умолчанию и не подгружать уже все остальное. Ну либо доработать функционал, чтобы на кнопку можно было повесить нескольких менеджеров и все работало грамотно - ведь иногда удобно сделать например отдельно кнопки "менеджеры офиса в Москве", "сотрудники техподдержки"...когда нужны отдельные кнопки, но на группу менеджеров.
Аватара пользователя
ALPA
Андрей, доброе утро! Я в курсе про параметр window.mc_uho_opt.group
Но он не решает нашей задачи. Да можно поместить на страницу кнопку и повесить на нее группу операторов. Но если помимо этой кнопки нужно на ту же страницу еще и индивидуальную кнопку чата с конкретным оператором? ведь это нельзя совместить в скрипте, так как обе кнопки будут обращаться к одному скрипту и возникнет конфликт.

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

Вообще в идеале, было бы круто, если бы чат работал так, чтобы один скрипт мог решать сразу 3 задачи:

1. Индивидуальная кнопка чата с конкретным оператором - и таких может быть много
2. Групповая кнопка с определенными операторами - тоже можно сколько угодно таких
3. Ну и общий чат с плашкой внизу-справа, как Живосайт

То есть чтобы можно было очень гибко это делать, а то сейчас нужно выбрать один из 3-х вариантов.
Аватара пользователя
Андрей Раков
Это параметр кнопки, а не скрипта, с его помощью как раз и будет делаться групповая кнопка.

Все три пункта, которые вы перечислили, уже реализованы и будут в новой версии.
Аватара пользователя
ALPA
То есть я могу в кнопке прописать GROUP вместо UIN? Код ниже будет работать?

Код: Выделить всё
<div id="uQ" group="1" style="cursor:pointer;">
    <img src="images/pages/Live_Chat.png" onmouseout="this.src='images/pages/Live_Chat.png';" onmouseover="this.src='images/pages/Live_Chat_2.png';">
</div>
Аватара пользователя
ALPA
Добрый день!

Вопрос №1. Когда планируется выход обновлений, о котором вы написали в предыдущем сообщении?

Вопрос №2. Будет ли возможность в этом обновлении сделать вот такую гибкую логику:

1. Создать в админке майчат несколько разных групп для веб-поддержки - например, "Менеджеры в южном офисе", "Менеджеры в северном офисе", "Технический отдел"
2. На сайт повесить на одной странице - кнопку чата с конкретным менеджером (по атрибуту UIN на кнопке), кнопку чата с группой менеджеров (по атрибуту GROUP на кнопке), плашку внизу-справа к которой так же прикреплена определенная группа менеджеров (по параметру window.mc_uho_opt.group в скрипте)

Вопрос №3. Будет ли возможность в админке добавлять одного менеджера в несколько групп?

Вопрос №4. Будет ли настройка, позволяющая на уровне скрипта выключить из группы менеджеров, которые не в сети? ТО есть, если в группе есть менеджеры не в сети, то их не показывать при открытии чата.
Аватара пользователя
Андрей Раков
>Вопрос №1

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

Я посмотрю, если нет привязки к готовящемуся релизу в веб-сервере — дам вам сборку.

>Вопрос №2.

Да, именно так.

>Вопрос №3.

Сейчас нет, нужно посмотреть, возможно можно.

>Вопрос №4.

Можно добавить, а что делать, когда все операторы из данной группы офлайн?
Аватара пользователя
ALPA
>Можно добавить, а что делать, когда все операторы из данной группы офлайн?

Показывать тогда всех=)
Аватара пользователя
Андрей Раков
Добрый день.

ALPA писал(а):Вопрос №3. Будет ли возможность в админке добавлять одного менеджера в несколько групп?

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

ALPA писал(а):Вопрос №4. Будет ли настройка, позволяющая на уровне скрипта выключить из группы менеджеров, которые не в сети?

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