← All posts tagged bot

beard
Jabber bot А вот ещё сервис нашёл. Записки оставлять через бота. Несоответствия функционала присутствуют. Для публичных записей нельзя установить заголовок, хотя в списке команд на сайте эта возможность обозначена. Через @help этого нет.

xmppaste.appspot.comjabber.ru — Недавно столкнулся с необходимостью сохранить некоторые записи присланные через жаббер, поэтому возникла идея сделать сервис аля pastebin.
beard
Ruby programming bot xmpp4r rumpy В продолжение #1478904 — на практике получено подтверждение умозрительных предположений. message_callback обрабатывается одним тредом. Подписки-отписки запускаются каждый раз новым тредом. При этом, вставшие в очередь мессаджи, блокируют обработку подписок.
beard
Ruby bot blather Подкинули информацию об ещё одной xmpp библиотеке — blather. Почему-то раньше не попала в поле зрения. В отличии от xmpp4r вполне активно пилится. Документацию вроде нашёл. Примеры из неё работают, только самые примитивные. Всё как обычно. Документировать никому не интересно. Ничего не понимаю.
beard
Ruby programming bot xmpp4r rumpy Победил activerecord. Соединения разблокируются и возвращаются в пул. С первым оказалось просто. Со вторым возникли новые вопросы. Выводы.. Недостаточное понимание логики message_callback. Создаётся впечатление, что они обрабатываются последовательно, в цикле, одним тредом. Подписки-отписки обрабатываются каждая новым тредом. Надо глубже ковырять xmpp4r.
Теперь ждать, когда вернутся авторы rumpy.
beard
Ruby programming bot xmpp4r rumpy Странное поведение activerecord. В процессе работы создаётся пять соединений с базой. Первое при запуске бота и синхронизации ростера и базы, далее главный поток останавливается и через него больше ничего не передаётся. Через второе обрабатываются сообщения (message_callback). Оставшиеся три формируют роунд-робин пул, который обрабатывает подписки-отписки. Как-то это непонятно и неправильно. Как разблокировать и вернуть в пул первые два? Чтобы использовались все равномерно.
beard
software hardware bot disaster Сервер опять завис в непонятном состоянии — чёрный экран, пищит бипером. Повторился #832529 . Жарко не было. На этот раз, в логах появилась информация, страничная ошибка:
Aug 30 10:00:07 host savecore: reboot after panic: page fault
Aug 30 10:00:08 host savecore: writing core to vmcore.0
Ретроспективно... Висюки начались после того, как порулил частотой — #803611
Где бы взять нормальную, начального уровня, серверную мамку под Оптерон??
beard
Ruby bot Нашёл простого ростерного бота — socket7.net — требует Jabber::Simple 0.8.7+ — xmpp4r-simple.rubyforge.org — которая является обёрткой вокруг xmpp4r — home.gna.org
Только вот на гуглокоде лежит версия xmpp4r-simple-0.8.4 и указание идти за исходниками на гитхаб... а там — That page doesn't exist!
И куда дальше??
beard
software hardware bot хрень disaster Случилась какая-то неведомая муйня. Зависло и пищало бипером. На консоли картинки нет, на клавиатуру не реагирует. Железный ресет. Поднялось. Файловая система, на /usr оказалась автоустранимая ошибка в одном файле. Не показало в каком. Найти бы его. По логам удалось установить примерное время — 7:30-7:40. Никакой полезной информации нет. Причина непонятна. С чего может пищать бипер? Перегрев? В биосе было 51. На рабочей системе — 33. Самая жара днём. К утру остывает. Странно и непонятно.
beard
bot закладки приделать к своему боту чтобы он капсу присылал (protocol/caps) просто добавить в презентс нехватающих атрибутов (иконка клиента привязать только к капсам можно) — xmpp.org
beard
software Ruby bot xmpp4r В существующем виде, длительная операция обработки сообщения блокирует message_callback, новые сообщения принимаются (??) и обрабатываются. Ответы возвращаются пачкой, сразу после освобождения.
Нужно разделить процессы приёма, обработки и возврата ответов по разным потокам. Обработчики можно (нужно) запускать параллельно.
message_callback принимает и складывает во входную очередь, выбираем из входной очереди и запускаем обработчик, ответ класть в выходную очередь или сразу возвращать??
Наблюдаются пробелы в понимании областей видимости объектов.
beard
software Ruby bot xmpp4r Полнейший тупняк. Совершенно ничего полезное не нагугливается. Как из обработчика входящих сообщений посмотреть в ростер, чтобы узнать подписан ли юзверь??
beard
software Ruby Jabber bot xmpp4r Запилил нового бота... ну почти.. даже чуть-чуть работает. Умеет висеть в ростере. :) И даже знает несколько слов. После того, как нашёл документацию от библиотеки, дело пошло слегка легче. Всё равно нифига не понятно.