Pull to refresh

Comments 69

Мне в qip jabber приходит уведомление от gmail о полученном письме.
А каким образом? У меня в kopete не приходит. Это какая-то настройка на гугле?
Не скорее в qip, только с 9022
И раньше было, только почему то не у всех работало.
В пиджине есть параметр аккаунта «New mail notification»
Но как он работает, я не знаю :)
У меня он заработал после установки плагина pidgin-guifications. Правда к нему желательно сразу ставить какой-нибуди вистообразный скин, т.к. выглядит он… эээ… стремновато :).
действительно такая фича появилась в версии 9022, нужно в Qip зайти в настройки вашого гмейловского аккаунта и там поставить/убрать галку о получении нотификаций по приходу письма.

фича мне оч понравилсь кстати)
Здорово, спасибо. Jabber начинает нравится все больше и больше.
Радует, что Джаббер становится популярнее. Я давно влюблен в Джаббер :)
die() если сообщение не ушло — это радикально.
Это не сообщение, а Fatal Error.
Но все равно die($e->getMessage()) это тоже самое, что без try.
надо понимать, что это каждый здесь вставит что-то свое
Спасибо за линк на библиотеку, всегда думал что xmpp на php будет довольно сложно реализовать
На самом деле если хорошенько покапаться в поиске можно лишний раз убедиться в том, что реально в наше время все уже написано до нас. Требуется лишь правильно состыковать готовые решения, что автор и продемострировал.

P.S. Особо сильно это ощутил, когда задался вопросом автоматического распознавания музыки.
Прочитав про новый chat.ru какраз сильно думал ингерировать себе жабер поплонтнее, до этого пользовался ICQbot
А если у вас есть аккаунт на google или google apps — можно использовать для этих целей ChatBack Badges.
этот сервис какой-то кривоваты, общаться можно только через флеш-окошко — в линуксе проблема с кодировкой, входящие сообщения кириллица, исходящие крокозябры
Есть русская разработка siteheart.ru/ суть таже что и ChatBack Badges, но функционалом луше и бесплатна.
Этот вариант подходит если комментарии появляются нечасто, но когда комментариев много — лучше иметь постоянное соединение.
В случае с сайтом лучше использовать http-bind, т.к. можно хранить сессию и не логиниться каждый раз на сервер. Вероятно, мы скоро выложим библиотечку, которую можно будет использовать для этих целей (мы её сейчас используем на chat.ru)
А в данный момент, без библиотеки такое можно сделать самому?

Как хранить в сессии коннект? Или я не правильно понял?
Суть http-bind в том, что не нужно держать постоянное соединение — достаточно хранить сессию и можно работать с сервером через http-запросы. Хранить нужно следующее:
* sid — идентификатор сессии
* rid — номер пакета (используется для проверки, что ничего не пропало по пути)
* key — для защищённых соединений специальное число, защищающее от вклинивания в сессию посторонних

Чтобы реализовать самому нужно пройти сюда: xmpp.org/extensions/xep-0124.html
И обратить внимание на секции 6, 7, 14, 15(.3). Для лучшего понимания лучше поставить себе JWChat или что-то подобное + firebug чтобы смотреть отправляемые/принимаемые пакеты. За несколько часов реально разобраться и набросать свою библиотеку, которую можно будет использовать для отправки разных уведомлений.
Спасибо за развернутый, хороший ответ.
Посмотрю обязательно!
Кстати даже при отправке сообщений на ICQ гораздо удобнее использовать Jabber, т.к. проще 1 раз обновить протокол ICQ на сервере в случае его изменения, чем менять это на каждом сайте.
Надо демоном запускать и в пайп принимать мессаги, которые скрипт2 на пхп кидает — чтобы скрипт2 не тормозил.
Несколько выходит за рамки PHP. Если оставаться в них, то вероятно лучшее решение накапливать сообщения в базе/файле, а отправлять отдельным php скриптом, запускаемым, например по крону
Почему выходит?
А с кроном оперативность теряется.
Не, ну наверное можно демона и на PHP написать и даже его запустить, особенно если рут доступ есть. Но имеет ли смысл?
Можно написать и запустить и ничего плохого в этом нет.
Только вот от рута такое делать — это в организме мозгов не хватать должно.
А заодно можно обрабатывать и входящие сообщения — например сразу отправить комментарий в спам или одобрить. Только вот на шаред хостинге такое не выйдет, где тайм лимит или того хуже — watchdog.
вообще классно доставлять комментарии всем пользователям о новостях или новых комментариях. и реализация не такая уж сложная.
я о таком даже не подумал. спасибо!
UFO just landed and posted this here
Поэтому запускаем 1 копию, которая и будет висеть.
В Perl мне понравился модуль Log::Dispatch::Jabber — возможность отправлять логи в Jabber
Это желательно делать как минимум в другом потоке
UFO just landed and posted this here
это не очень правильное решение каждый раз при отправке коннектиться на жаббер.
имхо будет правильнее написать демона который каждую секунду будет проверять базу данных и рассылать сообщения…

а скрипты будут в эту базу складывать свои сообщения…

данный метод только под высокие нагрузки — когда 1 камент в сутки, то можно и коннектиться
Я правильно понял — написать спам-бота для джабера гораздо легче, чем для icq?
UFO just landed and posted this here
Спасибо, думаю мне это пригодится, например для отлова ошибок с помощью error_log()
Хе-хе :)

Я как раз тоже после шумихи с аськой переехал на Jabber, тоже заинтересовался возможностью трансляции событий с сайта к себе в im и тоже наткнулся на XMPPHP )))

В итоге настроил себе нотификацию об ошибках на сайте (set_error_handler), ошибках работы с БД и о входе в админку.
Может я чего-то не правильно сделал?

$conn = new XMPPHP_XMPP('ljtalk.livejournal.com', 5222, 'login', 'password', 'xmpphp', 'ljtalk.livejournal.com', $printlog=false, $loglevel=XMPPHP_Log::LEVEL_INFO);

не коннектится
может в firewall кислород перекрыл?
из фаерволов только дефолтный iptables, так что врядли
Я похоже то же безрукий.
Пытаюсь законектицца — не работает. Понял что у меня нет SSL — отключаю как сказано в хелпе:

To not use SSL/TLS encryption if available, set

$conn->use_encryption = False;

before calling connect()

Делаю так а оно мне: Fatal error: Cannot access protected property XMPPHP_XMPP::$use_encryption in

:(
тоже, никаких результатов, джаббер молчит — скрипт висит
Вот решение
$conn->useEncryption(false);
А вот было бы классно если например из конференций получать логи. Есть конечно боты но всё же:)
Не работает :( Коннекшн таймаут.
Что при включении лога что в конце обработки самим пхп говорится :( SSL отключил… в чем проблема не знаю :( Хотсинг от мастерхоста. Обгуглился весь, не нашел в чем проблема.
я на всех своих хостах проверял — работает (данные отправлял через jаbber.org и jabber.ru с портами 5222)
Тысяча извинений. Заработало. Просто аккаунт отправителя создал на другом сервере (jabber.ru).
@ya.ru почему то не работало. Кстати никто не знает почему?
вот бы плагин такой в сайдбар вордпресса…
Какой такой? Отправка сообщения владельцу или что?
А ни у кого случайно не удалось отправить сообщения на @gmail.com? У меня ни в какую не идут. На @livejournal.com идут а на @gmail.com нет
А получать сообщения как-нибудь можно?
на сервере где находится ваш скрипт должен быть установлен jabber-сервер (но как там и что мне еще предстоит узнать, когда узнаю обещаю написать по этому поводу статью)
Спасибо) Мы вот сейчас тоже попробуем…
интересно будет узнать что получится! :)
Плагин сделал для вордпресса… Ничего так. Вопрос в следующем: когда и кому надо отсылать какую информацию таким образом?
Отличная библиотека, но под GNU GPL! Не хочется открывать исходники.
давно использую эту либу, сейчас вот задался вопросиком…

а реально ли через эту либу слать сообщения на транспорты?

Я хочу организовать массовую рассылку по IM, но специфика данной проблемы в том, что все не хотят переходить на джаббер. Нужно слать сообщения в данном случае и в аську и в Skype и в MSN… собссна транспорты у меня под рукой нужные есть, а как заставить либу туда отправлять сообщения?

(ввод ID в скрипт не даёт результатов — сообщения не уходят, так как фактически на момент отправки аккаунт, используемый в скрипте, не залогинен на транспортах)
Sign up to leave a comment.

Articles