LINUX.ORG.RU

Сообщения annerleen

 

Zhabogram 2.3

Новости — Open Source
Группа Open Source

Zhabogram — транспорт (мост, шлюз) из сети Jabber (XMPP) в сеть Telegram, написанный на Ruby. Преемник tg4xmpp.

Зависимости

  • Ruby >= 2.4
  • xmpp4r == 0.5.6
  • tdlib-ruby == 2.2 с скомпилированным tdlib == 1.6

Возможности

  • Авторизация в Telegram
  • Отправка, приём, удаление и редактирование сообщений и вложений
  • Добавление и удаление контактов
  • Синхронизация списка контактов, статусов и VCard
  • Управление группами/аккаунтом Telegram
  • ..и многое другое.

Значимые изменения

  • Перешли на свежую версию библиотек — заметно улучшение стабильности работы и потребления памяти
  • Научились корректно и красиво работать с несколькими Jabber-ресурсами (это когда несколько Jabber-клиентов подключены одновременно)
  • Научились (опционально) поддерживать подключение к Telegram даже без онлайн Jabber-клиентов — в этом случае будем надеяться на то, что сервер не потеряет оффлайн сообщения

NB! Многие функции (например, управление группами) не протестированы и могут работать некорректно.

>>> Подробности

 , ,

annerleen ()

Не понимаю поведение apt (dpkg)

Форум — General

Привет, ЛОР!
Я хочу поговорить с тобой о удивительном поведении пакетного менеджера в Debian (и Debian-based дистрибутивах).

Я долго пытался поймать подобное поведение, но всё же мне удалось.

Надеюсь, кто-то из заядлых дебианщиков объяснит мне, какого хчем такое поведение обусловлено и как можно этого избежать.


Итак:

1. Я решил установить пакет photocollage, пакетный менеджер (конечно же, с опцией --no-install-recommends в конфиге) любезно установил этот пакет с удоволетворением всех зависимостей:

➤  sudo apt install photocollage                                                                                                                                 
[sudo] password for ann: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libimagequant0 python3-pil
Suggested packages:
  python-pil-doc python3-pil-dbg
Recommended packages:
  python3-olefile
The following NEW packages will be installed:
  libimagequant0 photocollage python3-pil
0 upgraded, 3 newly installed, 0 to remove and 12 not upgraded.
Need to get 591 kB of archives.
After this operation, 2,103 kB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://ftp.ee.debian.org/debian stable/main amd64 libimagequant0 amd64 2.12.2-1.1 [32.5 kB]
Get:2 http://ftp.ee.debian.org/debian stable/main amd64 python3-pil amd64 5.4.1-2 [395 kB]
Get:3 http://ftp.ee.debian.org/debian stable/main amd64 photocollage all 1.4.3-2.1 [164 kB]
Fetched 591 kB in 0s (1,927 kB/s)     
Selecting previously unselected package libimagequant0:amd64.
(Reading database ... 118144 files and directories currently installed.)
Preparing to unpack .../libimagequant0_2.12.2-1.1_amd64.deb ...
Unpacking libimagequant0:amd64 (2.12.2-1.1) ...
Selecting previously unselected package python3-pil:amd64.
Preparing to unpack .../python3-pil_5.4.1-2_amd64.deb ...
Unpacking python3-pil:amd64 (5.4.1-2) ...
Selecting previously unselected package photocollage.
Preparing to unpack .../photocollage_1.4.3-2.1_all.deb ...
Unpacking photocollage (1.4.3-2.1) ...
Setting up libimagequant0:amd64 (2.12.2-1.1) ...
Setting up python3-pil:amd64 (5.4.1-2) ...
Setting up photocollage (1.4.3-2.1) ...
Processing triggers for libc-bin (2.29-7) ...
Processing triggers for desktop-file-utils (0.23-4) ...
Processing triggers for mime-support (3.62) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...


2. Я попробовал эту программу в действии и мне не понравился результат — логично, что я захочу её удалить (подразумевая и все её зависимости, которые мне больше не нужны):

➤  sudo apt purge photocollage                                                                                                                                   
[sudo] password for ann: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  photocollage*
0 upgraded, 0 newly installed, 1 to remove and 12 not upgraded.
After this operation, 550 kB disk space will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 118289 files and directories currently installed.)
Removing photocollage (1.4.3-2.1) ...
Processing triggers for mime-support (3.62) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for desktop-file-utils (0.23-4) ...


И тут, эээ, интересный вопрос.

Какого, собственно, фига apt удаляет пакет, но не удаляет его зависимости? Это вообще законно?

Сколько ещё пакетов были установлены как зависимости, но не удалены вместе с тем пакетом, с которым были установлены? Доколе?

 

annerleen ()

Долгая отправка почты

Форум — Admin

Привет, ЛОР!
Столкнулись со следущей проблемой: письма по SMTP (скриптом) отправляются примерно 5 секунд.

Отправка с локального домена на локальный домен, при этом с удалённого хоста.

Из того, что удалось отпрофайлить навскидку — EHLO и, собстенно, SASL авторизация занимает примерно 0.1 секунду, всё остальное — думает над отправкой.

master.cf

Нагрузки на CPU в момент отправки почти нет (~10% smtpd), оперативной памяти свободно примерно 3ГБ из 4ГБ.


Из-за чего может быть такая задержка и что можно предпринять, чтобы снизить задержку хотя бы до 1 секунды?
Началось, ориентировочно, с обновления Debian Oldstable до Stable.

 

annerleen ()

...и закурил

Галерея — Скриншоты

Привет, ЛОР!

Я тут неожиданно тему оформления пересоздал, первый раз за 3 года.
Результатом, конечно же, решил поделиться (вот неожиданность!)

Здесь:

  • Dell 7390
  • Debian GNU/Linux 10 (Buster)
  • Xfce 4.12

Debian, как обычно, с нюансом — Firefox из unstable, Mesa и Vulkan из experimental, остальное из стабильной ветки — а куда торопиться?..

>>> Просмотр (1920x1080, 1202 Kb)

 ,

annerleen ()

Портировать модуль с MongooseIM для ejabberd

Форум — Job

MongooseIM — форк ejabberd (XMPP-сервер, написанный на Erlang).

Задача:

- Портировать mod_jingle_sip (модуль для прозрачной трансляции звонков из Jingle/XMPP в SIP и наоборот) в ejabberd (структура модулей у них похожая, однако есть достаточно mongooseim-специфичных вещей)

- Добавить поддержку XEP-0262 (ZRTP/Jingle), а протокол XEP-0320 (DTLS-SRTP/Jingle) сделать опциональным (т.е. на выбор ZRTP или DTLS-SRTP).

За всё это предлагаю эквивалент €700 в Bitcoin.
Также по итогам работы нам возможно (!) потребуется разработчик под подобные штуки (erlang/C) на постоянной основе (но это пока не точно!)


Спасибо за внимание.

 , , ,

annerleen ()

Jingle, freeswitch, mod_dingaling и вот это вот

Форум — General

Привет, ЛОР!
У кого-то есть удачный опыт поднимания вот этого вот всего?

Пытаюсь поднять мост между XMPP и SIP, десктопные клиенты просто не видят возможность инициации вызовов (хотя судя по XML-логу, mod_dingaling афиширует поддержку Jingle).

Если в обезьянка-mode отключить проверки в том же Gajim, можно попробовать позвонить, однако на выходе получаем «<text xmlns=«urn:ietf:params:xml:ns:xmpp-stanzas»>Content audio (created by initiator) does not exist</text>»

Полный лог
Конфиг:

<profile type="component">
   <param name="name" value="JID"/>
   <param name="server" value="XMPPSERVER"/>
   <param name="password" value=""/>
   <param name="dialplan" value="XML"/>
   <param name="context" value="from-universe"/>
   <param name="exten" value="_auto_"/>
   <param name="auto-login" value="true"/>
   <param name="auto-reply" value="Press *Call*"/>
   <param name="use-jingle" value="true"/>
   <param name="rtp-ip" value="auto-nat"/>
   <param name="ext-rtp-ip" value="auto-nat"/>
   <param name="use-rtp-timer" value="true"/>
</profile>


С параметрами rtp-ip, ext-rtp-ip, STUN-серверами и пр. игрался — без толку..

P.S. если точно знаете решение проблемы ­— можно за денежку ☺

 , , ,

annerleen ()

Gitea / Git / Hg

Форум — Development

Привет, ЛОР.
У меня сегодня пятница, поэтому хочу поговорить про (d)VCS, SCM и прочие матерные аббривеатуры.


А вопрос, собственно, следущий...

Сейчас используем Kallithea и hg, сколько раз пробовал с git подружиться ­— всё никак, не слишком упоротый какой-то он.
Но постепенно её фич начинает не хвататать, да того же банального issue tracker'а не завезли.

От DVCS (пока что!) нужно самое минимальное — коммиты да чейнжлоги. (но уже чувствую, как придётся учить людей в тимворк и волосы на одном месте дыбом встают, ага)


А, точно! Вопросы.
Комрады, кто-то использовал Gitea в продакшене хотя бы на протяжении года?
А то как-то 1000 открытых багов на гитхабе совсем немножко настораживают.

Второй вопрос, можно ли полноценно пользоваться git и SCM, подняв зеркало hg2git?
Или это всё же костыль и изврат и придётся конвертировать репозитории?


И третий, собственно, вопрос, — чем всё сконвертить, чтобы удобно, с сохранением коммитлогов и прочего?
В гугле, естественно, забанили, и он предлагает целый спектр решений от шелл-скриптов до платных Ънтерпрайздных конвертилок под различные оффтопики.

 , ,

annerleen ()

Zhabogram 2.0 — транспорт из Jabber в Telegram

Новости — Open Source
Группа Open Source

Zhabogram — транспорт (мост, шлюз) из сети Jabber (XMPP) в сеть Telegram, написанный на Ruby. Преемник tg4xmpp.

  • Зависимости

    • Ruby >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 с скомпилированным tdlib == 1.3
  • Возможности

    • Авторизация в существующем аккаунте Telegram
    • Синхронизация списка чатов с ростером
    • Синхронизация статусов контактов с ростером
    • Добавление и удаление Telegram-контактов
    • Поддержка VCard с аватарками
    • Отправка, приём, редактирование и удаление сообщений
    • Обработка цитат и пересланных сообщений
    • Отправка и приём файлов и специальных сообщений (поддержка фото, видео, аудио, документов, голосовых сообщений, стикеров, анимаций, геолокаций, системных сообщений)
    • Поддержка секретных чатов
    • Создание, управление и модерирование чатов/супергрупп/каналов
    • Сохранение сессий и автоматическое подключение при входе в сеть XMPP
    • Получение истории и поиск по сообщениям
    • Управление аккаунтом Telegram
  • Значимые изменения до версии 1.0, новости о которой не было на LOR:

    • Добавлена обработка SIGINT с корректным закрытием всех сессий
    • Добавлены (и позднее удалены) поддержка iq:jabber:register (регистрация пользователей), iq:jabber:gateway (поиск контактов)
    • Долгие бодания с профайлером в Ruby, пока не поняли, что течёт tdlib (разработчики закрыли баг с WONTFIX — это фича)
  • Изменения до версии 2.0:

    • Добавлена поддержка OTR (если Zhabogram используется с обеих сторон — не спрашивайте.)
    • Использование сериализации YAML вместо sqlite3 для сохранения сессий.
    • Убрано автоматическое определение часового пояса в связи с тем, что некоторые клиенты не следуют протоколу и отправляют кашу
    • Исправлены запросы на авторизацию (подписку) от публичных каналов, из которых было перенаправлено (forwarded) сообщение, но подписчиком которого вы не являетесь
  • Изменения в версии 2.0

    • NB! Сломана обратная совместимость конфиг-файла и файла сессий (для поддержки индивидуальных настроек в будущем).
    • Код переписан на 80% — теперь он в разы читаемее. Внутренняя логика приведена в порядок.
    • Количество запросов к Telegram уменьшено в три раза
    • Убраны jabber:iq:register, jabber:iq:gateway
    • Переписаны /команды — теперь они разные для чатов и для самого транспорта (системные функции). Для получения списка команд пришлите команду /help.

Для установки потребуется собственный Jabber-сервер. Рекомендуется получить API ID и API HASH в Telegram для более стабильной работы. Подробную инструкцию можно найти в файле README.md.

>>> Подробности

 , ,

annerleen ()

«Сертификат безопасности» в Казахстане отменяется

Новости — Безопасность
Группа Безопасность

Комитет национальной безопасности Республики Казахстан завершил тестирование национального «сертификата безопасности», как сообщила пресс-служба КНБ РК.

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

Три недели назад жителям столицы Республики Казахстан начали приходить сообщения о необходимости установки государственного «сертификата безопасности», который использовался в том числе для перехвата (MITM) и анализа зашифрованного (HTTPS) трафика.

>>> Подробности

 , ,

annerleen ()

Куда скатились мобильные ОС?

Галерея — Скриншоты

Привет, ЛОР.
Давеча спонтанно купил себе нового старого приятеля — Blackberry Classic. (кстати, последний новый в СПб и возможно в РФ).
И радуюсь, и плачу.

С одной стороны — прекрасный и удобный девайс, который актуален и спустя 5 лет после его релиза.
Умеет всё, что и современные смартфоны, минус кое-какие зонды, плюс нормальная многозадачность и шикарнейшая клавиатура, помноженная на продуманность и юзабилити как с тачскрином, так и без.
Готов полдня провести, просто копаясь в настройках и менюшках.

С другой стороны — 2019 год - BlackberryOS10 — 3:0.
Android-приложения в эмуляторе тормозят и жрут батарею, SDXC то ли не поддерживаются, то ли надо как-то красноглазить, камера передаёт привет из 2014... ну, вы поняли.

Почему ничего подобного не делают в 20!9?
Почему кроме б-анальных Android и iOS ничего нет, казалось бы, просто вкорячь эмулятор андроида, с сегодняшними-то мощностями, и проблема с приолжениями решена?
Почему умерли QWERTY-девайсы? Почему, почему, почему?...

Поностальгируй со мной, ЛОР.

>>> Просмотр (1440x1440, 766 Kb)

 , , ,

annerleen ()

Почему уродуют софт?

Форум — Talks

Привет, ЛОР.

Многобукв не будет, просто вопрос.
В сабже.

Пример: вот был XFCE 4.12.
Там была замечательная вещь под названием Orage.
Это легковесный календарик, который умел в добавление ивентов и напоминания, замечательно интегрируясь в системную панель.

Xfce переписали на Gtk3.
Orage больше нет. Замены не завезли.

Итого: после порта на Gtk3 функциональность (лично для меня) рабочего окружения заметно упала, при этом (!) потребление памяти выросло в полтора раза.


Пошто, товарищи?
Может, задонатить им или разработчика нанять, чтобы портанули календарик?

С Xfce то некуда бежать.

 ,

annerleen ()

OTR в Gajim 1.0+ (Gtk3)

Форум — Desktop

С выходом Gajim 1.0 на Gtk3 разработчики дропнули поддержку OTR-шифрования, объяснив это тем, что нинужна это небезопасно/технически невозможно/ещё куча разных оправданий.

В общем, делать было совершенно нечего...

В общем, вопрос: это кому-то кроме меня нужно? (если да, не поленюсь и допилю до production-ready, если нет — для себя «и так сойдёт»)

 

annerleen ()

Bounty Python3 Gajim

Форум — Job

Привет, ЛОР!

Есть, значит, один Jabber-клиент, Gajim.
Есть у него такой плагин/фича HTTP Upload Plugin

Если перетащить файл drag-and-drop'ом в окно чата, файл передаётся посредством этого плагина: https://i.imgur.com/39p3R7o.png.
(Хотя я не уверен, что это не одна _из_ реализаций способа передачи файлов — может, дело совсем не в плагине, но это вряд-ли играет роль)

Задача
При нажатии Ctrl+V в окне чата, в том случае, если в буфере обмена находится что-то отличное от текста (например, изображение) — действовать так же, как и при drag-n-drop'е в окно чата — инициировать передачу файла.


Предлагаю $250 в BTC эквиваленте (либо по курсу на карту любого российского банка) за реализацию данной возможности.


Думаю те, кто знаком с PyGTK, с лёгкостью справятся.
Если где-то есть неучтённый подводный камень — покажите, да, условия могут поменяться.

 ,

annerleen ()

Количество подключенных USB-устройств

Форум — General

Доброго времени суток!
Дано: Linux-машина с двумя USB3.0 портами, в каждом — USB3.0 хаб на 7 портов, к каждому подключено по четыре USB2 устройства.

В dmesg:

[ 861.015836] usb 3-6: Not enough host controller resources for new device state.
[ 870.028315] usb 3-8: Not enough host controller resources for new device state.
[ 870.028334] usb 3-8: can't set config #1, error -12

Вопросы:

- Где и какой лимит на количество подключенных устройств?
- Что такое «usb 3»? Номер шины? Bus 003 в lsusb — это оно?
- Внешние PCI-USB3 контроллеры попадают под этот лимит или они спасут ситуацию?
Если на них тоже есть этот лимит — то какой?

Спасибо.

 ,

annerleen ()

Учился делать Telegram-бота

Форум — Development

Привет, ЛОР!
Есть один...

В общем, пытался в Python и Telegram API, не уверен в правильности кода и/или некоторых решений, хочу, чтобы Python-гуру оценили код и подсказали что и где неплохо бы исправить.

Бот ещё не допилен, но желающие могут его себе, т.к. все известные мне с похожим функционалом — closed-source, а значит скорее всего сливают логи из ваших чатов доброму создателю.

Из возможностей — разного рода рулеточки, статистика (WIP), запись логов и что-то ещё.
Можно легко добавлять свои собственные команды, если хоть немного знакомы с удавом.
А, ну и я осилил интерфейс конфигурирования бота с собстенными конфигами для каждой конфы — этого вообще нет нигде (ибо ограничения Telegram API) и реализовывать пришлось через одно место.

Зачем тред? Всё вышеописанное, да и просто так, чтобы, так скзть, добро не пропадало даром.
Спасибо за внимание.

NB! Если зашли в тред напомнить, что Телеграм не нужен — все и так это знают, не нужно на это тратить байты!

 ,

annerleen ()

Возможно ли в один запрос...

Форум — Development

Есть таблица с направлениями и телефонными кодами вида:

billing=> select * from directions where id = 1075;
  id  |            direction            | code | min_len | max_len | int_code 
------+---------------------------------+------+---------+---------+----------
 1075 | United Kingdom Special Services | 4450 |      12 |      12 |     4450
 1075 | United Kingdom Special Services | 448  |      12 |      12 |      448
 1075 | United Kingdom Special Services | 4455 |      12 |      12 |     4455
 1075 | United Kingdom Special Services | 449  |      12 |      12 |      449
 1075 | United Kingdom Special Services | 4456 |      12 |      12 |     4456
 1076 | United Kingdom Freephone | 44800 |      10 |      14 |    44800
 1076 | United Kingdom Freephone | 44808 |      10 |      14 |    44808


Задача: получить список вида «id - direction - code (все с этим id)»
Как бы distinct on direction, но он, естественно, оставляет только первый code.

Вопрос: возможно ли одним запросом?

 

annerleen ()

Zhabogram 0.8 — Транспорт из Telegram в Jabber

Новости — Open Source
Группа Open Source

Zhabogram — транспорт (мост, шлюз) из сети Jabber (XMPP) в сеть Telegram, написанный на Ruby. Преемник tg4xmpp.

  • Зависимости:

    • Ruby >= 1.9
    • ruby-sqlite3 >= 1.3
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 и скомпилированная tdlib == 1.3
  • Возможности:

    • Авторизация в Telegram, в т.ч. с двухфакторной авторизацией (паролем)
    • Синхронизация списка чатов с ростером
    • Синхронизация статусов контактов с ростером
    • Добавление и удаление Telegram-контактов
    • Поддержка VCard с аватарками
    • Отправка, приём, редактирование и удаление сообщений
    • Обработка цитат и пересланных сообщений
    • Отправка и приём файлов и специальных сообщений (поддержка фото, видео, аудио, документов, голосовых сообщений, стикеров, анимаций, геолокаций, системных сообщений)
    • Поддержка секретных чатов
    • Создание, управление и модерирование чатов/супергрупп/каналов
    • Сохранение сессий и автоматическое подключение при входе в сеть XMPP
    • Получение истории и поиск по сообщениям
    • Управление аккаунтом Telegram

Для установки потребуется собственный Jabber-сервер. Рекомендуется получить API ID и API HASH в Telegram для более стабильной работы. Подробную инструкцию можно найти в файле README.md.

Фичреквесты и баг-репорты принимаются на noreply@sportloto.eu.

>>> Mercurial-репозиторий

 , ,

annerleen ()

Telegram в Jabber (Zhabogram v0.8)

Форум — Talks

Привет, ЛОР!
Позволю себе наглость создать ещё одну тему про транспорт XMPP в Telegram.

Новость на LOR
Скриншот
Mercurial-репозиторий (HTTP)

Отличия от первой версии

- Синхронизация статусов
- Поддержка VCard и юзерпиков
- Добавление и удаление Telegram-контактов
- Отправка, приём и редактирование сообщений
- Обработка цитат и forward messages
- Отправка и приём файлов
- Секретные чаты
- Создание и управление группами и каналами
- Поиск по сообщениям и получение истории с сервера
- Управление аккаунтом Telegram
- Сохранение сессий, автоматический реконнект, получение часового пояса от Jabber-клиента
- Выпилены Threads, полностью перешли на асинхронную модель событий, должно повысить стабильность
- Пытаемся выжить после неожиданного закрытия потока (такое бывает, да)

Зачем это всё?

- Общение в Telegram используя любой Jabber-клиент
- Возможность использовать свой XMPP-сервер, что положительно скажется на приватности и сохранности данных и сообщений

P.S. не нужно напоминать о том, что в Telegram регистрация по номеру телефона.
SIM-карты можно купить и без документов, а в крайнем случае — воспользоваться онлайн-сервисом по приёму SMS.

ann@westfall ~> sudo apt purge telegram-desktop
[sudo] password for ann: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libminizip1 libxxhash0
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  telegram-desktop*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 44.4 MB disk space will be freed.
Do you want to continue? [Y/n] 

 , ,

annerleen ()

Zhabogram 0.1 — Транспорт из Telegram в Jabber

Новости — Open Source
Группа Open Source

Zhabogram — транспорт (мост, шлюз) из сети Jabber (XMPP) в сеть Telegram, написанный на Ruby, преемник tg4xmpp.
Данный релиз посвящается команде Telegram, которая решила, что третьи лица имеют право затрагивать историю переписки, находящуюся на моих устройствах.

( читать дальше... )

>>> Mercurial-репозиторий

 , ,

annerleen ()

telegram <.>jabber

Форум — Talks

Привет, ЛОРчик! Это очередной нытик тред.

Недавно Паша Дуров & Ко. принесли в Telegram* очередную киллер-фичу — теперь собеседник может удалять любые сообщения из вашего с ним диалога.
Даже твои. Даже те, что ты отправлял год назад. И они тихо и незаметно исчезнут со всех девайсов.

У меня настолько бомбануло, что я решил с концами перекатиться на Jabber-транспорт, и пусть себе хоть обудаляются на здоровье.
Пилили мы как-то tg4xmpp, однако код там страшнее чикатило, ещё и на древних либах, поэтому было реешно перепиливать заново.

За пару бессонных ночей выкатился Жабограм, он уже умеет авторизацию, синхронизацию ростера, переписку, приём файлов и сохранение состояний.
Написан на Ruby+tdlib+xmpp4r.

Если у кого есть Jabber-сервер — милости прошу в бета-тестеры.
Остальные могут писать пожелания и предложения.

Спасибо.

______________________________________________________________

* — запрещено на территории РФ.

 ,

annerleen ()

RSS подписка на новые темы