Skip to content

Releases: yaLexus/TeleMesh

1.5.009

17 Apr 06:23
08bbed6

Choose a tag to compare

TeleMesh v1.5.009

Telegram ↔ Meshtastic Bridge

Что нового в этой версии

🌐 Новые возможности подключения к Telegram

  • Добавлена поддержка TELEGRAM_PROXY — теперь можно подключаться через любой MTProxy

чёрный список, сохранение состояния, улучшенное логирование

24 Mar 19:16
844a679

Choose a tag to compare

TeleMesh v1.5.007 – чёрный список, сохранение состояния, улучшенное логирование

🆕 Новое в версии 1.5.007 (по сравнению с 1.5.003)

⛔ Чёрный список

  • Управление через команды с префиксом #:
    • #add / #добавить – добавить пользователя в чёрный список (только при ответе на его сообщение)
    • #list / #список – показать список заблокированных
    • #del / #удалить [номер] – удалить из чёрного списка (по номеру или текущего при ответе)
  • Сообщения от заблокированных пользователей не пересылаются в Mesh.

💾 Сохранение состояния пересылки

  • Команды !stop / !start теперь сохраняют состояние в файл forward_state_<ID_ноды>.json.
  • При перезапуске скрипта состояние восстанавливается – пересылка включается/выключается автоматически.

🛡️ Исправление конфиденциальности

  • При отключённой пересылке сообщения из Telegram больше не отправляют ответ «⚠️ Пересылка остановлена.» – они просто игнорируются.
  • Это предотвращает утечку информации о том, что бот активен.

🧹 Очистка очереди ACK при остановке

  • Команда !стоп теперь очищает все ожидающие подтверждения сообщения – никаких повторных отправок после остановки.

📊 Улучшенный вывод активных опций в лог

  • В логе при запуске отображаются не только имена переменных, но и их человеко-читаемые описания (например, FORWARD_ENABLED (Пересылка)).
  • Дублирование информации устранено.

🔧 Технические улучшения

  • Добавлена блокировка pending_acks_lock для потокобезопасной работы с очередью ACK.
  • Унифицированы функции работы со списками (контакты и чёрный список) – код стал чище и легче поддерживать.
  • Динамические файлы: для каждого DEST_NODE_ID создаются отдельные файлы контактов, чёрного списка и состояния пересылки.

🚀 Как обновиться

Просто замените файл telemesh.py на новую версию.
Скрипт автоматически создаст недостающие файлы (контакты, чёрный список, состояние).
Старые файлы контактов (contacts_<ID>.json) останутся совместимы.

Подробное описание всех команд и возможностей – в README.

TeleMesh v1.5.003 – Записная книжка, отправка по номерам и @username, поддержка реакций

24 Mar 08:09
c6c9cf6

Choose a tag to compare

TeleMesh v1.5.003 – Записная книжка, отправка по номерам и @username, поддержка реакций

✨ Новые возможности

  1. Записная книжка (Contact Book)

    • Добавление контактов из Telegram по команде !add (или !добавить) в ответ на сообщение
    • Просмотр списка контактов с номерами через !list (!список)
    • Удаление контактов по номеру или текущего пользователя через !del (!удалить)
    • Контакты сохраняются в файл contacts_<ID_ноды>.json, что позволяет использовать разные книжки для разных целевых нод
  2. Отправка сообщений контактам по номеру

    • Формат !5 Привет – отправляет сообщение контакту под номером 5 из записной книжки
    • Поддерживается как с пробелом после !, так и без пробела
  3. Отправка сообщений по @username

    • Формат @username сообщение – сообщение доставляется пользователю Telegram по его юзернейму
    • Автоматический поиск через Telegram API, если пользователь не найден в записной книжке
  4. Поддержка реакций для отправленных сообщений

    • Реакции, поставленные в Telegram на сообщения, отправленные через !n или @username, теперь корректно пересылаются в Mesh на исходный пакет команды
  5. Параметр командной строки --no-welcome

    • Отключает отправку приветственного сообщения в Mesh при запуске (полезно для перезапусков без спама)
  6. Унифицированное распознавание команд

    • Единый модуль для распознавания команд !start, !stop, !add, !list, !del с поддержкой смешанных латиницы и кириллицы (например, !cтapт)

🐛 Исправления

  • Исправлена проблема с транслитерацией команд – теперь !cтapт корректно распознаётся как !старт
  • Улучшена обработка медиа‑сообщений без текста

📦 Изменения в конфигурации

  • Добавлена опциональная настройка CONTACT_BOOK_FILE (по умолчанию формируется автоматически)
  • Файл контактов сохраняется в ACC_BD_PATH (по умолчанию .)

🔧 Технические детали

  • Кэш сообщений расширен для поддержки связывания mesh_packet_id с tg_msg_id при отправке через новые команды
  • Асинхронные функции send_to_contact_by_slot и send_to_contact_by_username обеспечивают корректную маршрутизацию
  • Записная книжка защищена блокировкой для безопасного доступа из разных потоков

🚀 Как обновиться

Просто замените файл telemesh.py на новую версию. Старые файлы контактов (если использовали ранее) несовместимы, но скрипт создаст новый файл для вашего DEST_NODE_ID.

Для отключения приветственного сообщения при запуске используйте:

python telemesh.py my_acc.py --no-welcome

v1.4.042

23 Mar 19:00
5cca269

Choose a tag to compare

Comment out ACC_BD_PATH configuration line to use default value