Архив рубрики: Программирование

Волшебный мир OpenCode

Примерно 3 недели назад меня познакомили с OpenCode. В итоге все эти 3 недели я практически нон-стоп переделывал все те jabber-проекты, что вел раньше, а также взялся за некоторые новые.

Основная проблема везде — проекты в основном старые, зачастую еще со времен активного использования джаббера массами. Основная масса написана на Python2 под какие-то старые библиотеки, которые либо python2-only, либо сильно поменялись и прямую замену py2->py3 сделать не выйдет. Разве что JabRSS мог похвастаться хоть какой-то работой с Python3. Незадолго до знакомства с OpenCode я даже подготовил docker-образ на базе Debian 11, где еще можно было поставить Python2 и сделать окружение для запуска старого софта.

Теперь все поменялось.

Читать далее Волшебный мир OpenCode

Нашел баг в ESP Home

Когда шил Sonoff Basic для использования с насосом циркуляции в Home Assistant, при доработке прошивки (хотел видеть уровень сигнала, так как Sonoff в подвале) наткнулся на баг: при использовании примера с https://esphome.io/components/sensor/wifi_signal.html и добавлении блока с platform: copy получал неработоспособный wifi: устройство раз в несколько минут появлялось в сети на несколько секунд с жуткими лагами. Когда словил момент и добрался до веб-интерфейса, то там был captive portal (хоть увидел, как выглядит). Если ограничиться только первым блоком (т.е., выводом уровня только в dB), то все работает. Пока не репортил. На других модулях это работает без проблем.

Добавил подсветку для кухни и первую автоматизацию в HA

Фотоотчет-заметка.

Читать далее Добавил подсветку для кухни и первую автоматизацию в HA

EOL для прошивок измерителей сети

На волне увлечения ESP Home и Home Assistant решил мигрировать используемые измерители для главного щитка и на инверторах солнечных панелей с самописных прошивок на ESP Home.

Читать далее EOL для прошивок измерителей сети

Модуль управления бойлером

Продолжение темы создания модулей для домашней автоматизации и «умного дома» на базе недорогих микроконтроллеров.

Читать далее Модуль управления бойлером

Примеры кода для PyXMPP и XMPPpy

Пока писал различные транспорты / сервисы для jabber’а — часто приходилось выискивать примеры кода, чтобы понять, какие блоки для чего использовать, чтобы вырисовать нужный XML. С PyXMPP было проще — под рукой было 2 проекта с неплохим объемом кода, на котором можно было учиться — наверное, поэтому мне больше PyXMPP и полюбился. С XMPPpy было сложнее, но в итоге разобрался.

В данной заметке — куски кода из моих проектов, реализующие ту или иную функцию. Код, в основном, скопирован «как есть» — разве что с удалением часто повторяющихся одинаковых блоков. Основная задача — показать последовательность действий, которая нужна для «рисования» нужного XML’а.

Читать далее Примеры кода для PyXMPP и XMPPpy

Google Translate Transport (service) for XMPP

Еще один проектик для jabber’а.

В конференции саппорта сервера jabbercity.ru с Lex’ом как-то зашла речь за перевод через гугл. Собственно, мне самому давно была интересна эта тема — боты переводчики, бывшие в таблице на JabberWorld, давно перестали работать, а новых не появлялось. Но я считал, что там надо будет активно изучать API гугла, создавать пары ключей и заниматься тому подобными вещами. Тут же Lex кинул пару функций, там все оказалось гораздо проще. Потом на stackoverflow нашел еще более интересный вариант (фактически — упрощенный и использующий меньше библиотек) — и завертелось.

Читать далее Google Translate Transport (service) for XMPP

В копилку ссылок: бридж BT-Wifi для мультиварок Redmond

Искал мультиварки-самоделки на ESP32 или чем-то таком, нашел бридж для подключения мультиварок/чайников/прочих девайсов с Bluetooth к умному дому:

Нагрузка на базу у RSS-транспорта

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

Читать далее Нагрузка на базу у RSS-транспорта

Архив сообщений в RSS-транспорте и веселый юникод-2

Да, я снова вляпался в utf8mb4.

Читать далее Архив сообщений в RSS-транспорте и веселый юникод-2