Попал мне тут по случаю в ремонт блок питания, использовавшийся в домашней сигнализации. Признаков жизни не подавал, но в целом был спортивный интерес исследовать возможность ремонта.
Тест mod_webpresence в ejabberd
Спонтанно протестировал работу mod_webpresence. TL/DR: не работает.
Примеры кода для PyXMPP и XMPPpy
Пока писал различные транспорты / сервисы для jabber’а – часто приходилось выискивать примеры кода, чтобы понять, какие блоки для чего использовать, чтобы вырисовать нужный XML. С PyXMPP было проще – под рукой было 2 проекта с неплохим объемом кода, на котором можно было учиться – наверное, поэтому мне больше PyXMPP и полюбился. С XMPPpy было сложнее, но в итоге разобрался.
В данной заметке – куски кода из моих проектов, реализующие ту или иную функцию. Код, в основном, скопирован “как есть” – разве что с удалением часто повторяющихся одинаковых блоков. Основная задача – показать последовательность действий, которая нужна для “рисования” нужного XML’а.
“Фичи” Telegram и XMPP
Заметка по мотивам примерно полугода использования Telegram; решил сделать список фич, нетипичных (пока?) для jabber-клиентов, но которые встретил в Telegram.
В большинстве случаев в jabber’e уже есть соответствующее расширение и функция просто пока не реализована в клиентах или серверах – возможно, просто не особо востребована?
Заметка: securing jabber tls и все такое
Честно говоря, тут минимум готовых рецептов, но надо уже куда-то выгрузить найденную инфу, иначе я окончательно ее потеряю.
Ну, прежде всего – это развитие прошлой заметки на тему соответствия XMPP-сервера стандартам.
XMPP – тест сервера на соответствие стандартам
Просто заметка. Одна ссылка уже упоминалась ранее – ссылка на Compliance tester. Второй вроде не было:
- https://compliance.conversations.im/server/jabberworld.info/
- https://tls.imirhil.fr/xmpp/jabberworld.info
Первая на соответствие XMPP-стандартам, вторая универсальная для проверки TLS для различных сервисов.
В заметки: бот на slixmpp
https://habr.com/ru/post/305858/ – пример бота XMPP-Telegram на одной из актуальных на сейчас библиотек под Python3 – slixmpp. Примеры кода и всякое такое. Ссылки на код:
Кросс-ссылки на посты
А, ну и еще заметка по блогу, раз уж эта тема пошла. Я тут как-то постил заметку насчет мультиварок на ESP32 – там шла ссылка на внешний блог. И вот недавно заметил, что в том блоге под постом появилась ссылка на мой блог. Рекурсивненько вышло, но был интересен механизм. Были мысли даже написать автору – спросить, может плагин какой-то. Сегодня сам нашел ответ, когда пытался найти решение с датами публикации – в консоли блога идем в “Настройки” – “Обсуждение” и там есть галочка “Пытаться оповестить блоги, упоминаемые в статье”. Т.е., это чисто внутренний штатный механизм WordPress’а – хотя, возможно, на той стороне автор все же аппрувил эту ссылку.
Тут еще всплыла вторая тема – перестали поститься кросс-ссылки между внутренними постами блога. Причина – удаление xmlrpc.php. Точнее, его переименование – причем, не помогает даже наличие плагина rename-xml-rpc. Надо будет как-то вернуть функцию, но ограничить доступ к этому файлику, чтобы боты сильно не бушевали.
Published date в заголовках блога
Ну, во-первых, небольшое отступление: мне очередной раз пришла в голову мысль о том, что было бы неплохо проставлять категории постов. Добавил даже меню наверху с короткими названиями, так что надо завести себе привычку ставить нужные галочки. Удобно все-таки.
А во-вторых, я таки проставил категории для нескольких постов, которые были на первой странице – т.е., за последние 2-3 месяца. В итоге с ними стало то, что меня давно раздражало – в заголовке стала светиться не дата публикации, а дата последней правки.
Пришлось разобраться. Идем в консоль блога – внешний вид – редактор тем. Выбираем справа functions.php и в самом низу правим 2 строчки – там, где get_the_modified_date – меняем их на get_the_date. Сохраняем – все, теперь все даты корректные.
Можно даже повысить информативность и добавить обе даты (в интернете встречаются советы о том, как это сделать – да и разобраться самому несложно). Но если у меня таки дойдут руки поправить категории для всех трех сотен постов, которые на сейчас есть в блоге, то полезность второй даты может в большинстве случаев пропасть.
XMPP delayed delivery
Заметка по XEP-0203. Вообще изначально искал возможность отложенной отправки сообщения пользователю, но везде первым делом вылазит это 203-е расширение. Но – нет, это не то, что надо.
Что такое XEP-0203? Это исключительно метка для клиента о том, когда сообщение было реально отправлено. Т.е., при обычном общении пользователь А отправляет сообщение, сервер его пересылает и пользователь Б его получает – плюс-минус в реальном времени. Клиент Б и рисует реальные временные метки для сообщения. Если же клиент Б был оффлайн, а клиент А отправил, например, десяток сообщений (не важно, как быстро), то все они свалятся на Б (в момент выхода онлайн) в один момент и будут иметь одну временную метку – момент получения. Вот 0203 и решает этот вопрос. Если клиенту нельзя доставить сообщение прямо сейчас – сервер вешает на него метку об отложенной доставке. В дальнейшем, клиент Б, получив такое сообщение, рисует у себя в интерфейсе правильное время отправки сообщения.
А вот расширения для отложенной отправки сообщений в jabber’e на пока нет совсем.