General > Русский (ru)

Поддержка Jabber

<< < (3/5) > >>

toxi:

--- Quote from: faf on August 06, 2013, 07:19:23 AM ---
--- Quote from: toxi on August 06, 2013, 07:11:42 AM ---Есть возможность потестировать версию 1.6.5 или Mibew 2.0 ?

--- End quote ---

Mibew 1.6.5 был выпущен две недели назад.

Mibew 2.0 сейчас в стадии активной разработки, для использования в production не пригоден, доступен в git-репозитории проекта Mibew.

--- End quote ---
Извините, не заметил новой версии на сайте. Спасибо. :)
Я надеюсь, что продукт не станет "онлайн" сервисом консультирования в новых версиях, как это сделано на большинстве подобных сервисах, а останется OpenSource проектом, который можно установить на свои сервера и не зависеть от внешних факторов  :)

faf:

--- Quote from: toxi on August 06, 2013, 07:27:07 AM ---Извините, не заметил новой версии на сайте. Спасибо. :)

--- End quote ---

Ничего страшного.  :)


--- Quote from: toxi on August 06, 2013, 07:27:07 AM ---Я надеюсь, что продукт не станет "онлайн" сервисом консультирования в новых версиях, как это сделано на большинстве подобных сервисах, а останется OpenSource проектом, который можно установить на свои сервера и не зависеть от внешних факторов  :)

--- End quote ---

По крайней мере, пока мы занимаемся проектом, не станет. Подробнее об этом писалось здесь.

Другой момент, что лицензия Apache License позволяет создавать, в т.ч., и закрытые плагины.  ;)

Впрочем, всё это уже оффтопик.

toxi:
В настройках поставил отметку o том, чтобы уведомлять на Jabber о новом посетителе, yо сообщения идут на почту, а на Jabber ничего не приходит. Почта, Jabber и Miweb находятся на одном сервере. Если отправить сообщение с форума или сайта, то сообщение приходит и на почту и в Jabber. Может нужно что-то где-то донастроить? Использую Jabber Client - QIP.

faf:

--- Quote from: toxi on August 14, 2013, 06:17:42 AM ---В настройках поставил отметку o том, чтобы уведомлять на Jabber о новом посетителе, yо сообщения идут на почту, а на Jabber ничего не приходит. Почта, Jabber и Miweb находятся на одном сервере. Если отправить сообщение с форума или сайта, то сообщение приходит и на почту и в Jabber. Может нужно что-то где-то донастроить? Использую Jabber Client - QIP.

--- End quote ---

А я ж написал, что "сделаны определённые шаги", а не "оно полноценно работает".  :D

На самом деле, сейчас эта опция просто говорит Mibew, что нужно сохранять сообщения в виде, пригодном для дальнейшей отправки по XMPP. А для самой отправки нужен дополнительный транспорт.

По идее, он доступен в каком-то виде в git-репозитории (директория src/mibewjava, но я с ним ещё не разбирался. Да и смысла особого делать это не вижу, т.к. в новом Mibew предполагается полноценный внешний API.

toxi:
Добавил немного своего кода. Подключил xmpp библиотеку для работы с xmpp протоколом.

В файл: webim/libs/chat.php
Добавил:

--- Code: ---function post_message_($threadid, $kind, $message, $link, $from = null, $utime = null, $opid = null)
{
...

/* Отправка всех сообщений пользователя в jabber */
$text = date("H:i:s");
if(!empty($from)){$text .= " - [ID Mess: ".$threadid."] - ".$from.":\n";}else{$text .= " - [ID Mess: ".$threadid."] - System Message:\n";}
$text .= $message;
require("../jabber/XMPPHP/XMPP.php");
require("../jabber/sendmessage.php");
               /* Отправка всех сообщений пользователя в jabber */
               /* Отправка всех сообщений пользователя на e-mail */
       //mail('toxi@xxx.xxx.xxx','{Log Chat} - Live Support Chat',$message);
       /* Отправка всех сообщений пользователя на e-mail */

perform_query($query, $link);
return mysql_insert_id($link);
}

--- End code ---
Плюсы:
При отправки любого сообщения пользователем, все сообщения заносятся в БД webim и дублируются на jabber аккаунт,  в том числе и сервисные, такие как:

--- Code: ---admin (12:33:50 22/08/2013)
12:37:41 - [ID Mess: 31] - System Message:
Посетитель пришел со страницы https://xxx.xxx.xxx/about

admin (12:33:53 22/08/2013)
12:37:45 - [ID Mess: 31] - System Message:
Пожалуйста, подождите немного, к Вам присоединится оператор..

admin (12:34:35 22/08/2013)
12:38:27 - [ID Mess: 31] - System Message:
Посетитель пользователь покинул диалог

--- End code ---

Минусы:
1. При первом входе пользователя в чат, выпадает ошибка 500. Если перезагрузить страницу, то чат откроется нормально. Причину пока не нашел, но она явно связана с тем, что я дописал код, который подключает библиотеку xmpp.
2. Нет возможности ответить пользователю из jabber аккаунта, так как сообщение уходит "в пустоту". Для этого нужно реализовать "прослойку" между чатом и jabber сервером.
Вижу пока два варианта:
1. Написать плагин для бота (я использую Talisman для конференций и информационных сообщений), который будет работать, как ретранслятор. Если пользователь напишет сообщение, бот перенаправит сообщение всем операторам, которые в онлайне и которые прописаны у бота в настройках плагина/настройках. А при ответе, оператор должен будет указать ник, которому отправить ответ и текст сообщения. При этом есть небольшой минус в том, что все сообщения будут писаться в одно окно сообщений от всех пользователей и будет очень трудно понять, какое сообщение от какого пользователя пришло.
Либо сделать как-то так, чтобы у оператора бот создавал фантомные контакты, например 30 штук, и каждому пользователю, который будет писать сообщение, привязывать один из свободных фантомных контактов и уже от привязанного фантомного контакта отправлять последующие сообщения, что будет удобно для оператора. Так как переписка с каждым пользователем будет идти отдельно.
2. Написать "прослойку" между jabber сервером и чатом на php и таймер на js, который будет дергать "прослойку", например, каждые 2 секунды и если появились новые сообщения на jabber аккаунте, то доставлять их.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version