Metadata-Version: 2.4
Name: ndVpi
Version: 1.100.0
Summary: Фоновая оптимизация сети, сканер Wi-Fi и диагностика с интеграцией в CharmPkk.
Author-email: CharmLxt <reception.mailspypi@gmail.com>
License: MIT
Project-URL: Homepage, https://pypi.org/project/ndVpi/
Keywords: wifi,network,latency,optimization,diagnostics,monitoring,charmpkk
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Environment :: Console
Classifier: Topic :: System :: Networking
Classifier: Topic :: System :: Networking :: Monitoring
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Provides-Extra: charm
Requires-Dist: CharmPkk>=1.26.0; extra == "charm"

ndVpi



Фоновая оптимизация сети, сканер Wi-Fi и диагностика для Python.



Версия: 1.100.0. Автор: CharmLxt (PyPI: CharmLxt, email: reception.mailspypi@gmail.com).



Библиотека не имеет официального репозитория на GitHub, все обновления и баги обсуждаются напрямую с автором.



ndVpi — это легковесная библиотека, которая работает в фоне и снижает задержку сети. Она умеет сканировать Wi-Fi, показывать подробную информацию о текущем подключении, измерять пинг, джиттер, потери пакетов и скорость в реальном времени, а также проводить быструю диагностику сети с рекомендациями по устранению проблем. Всё это дополняется управлением параметрами сети (DNS, пароль Wi-Fi, адаптеры, MTU). Главная особенность — полная совместимость с CharmPkk: команды ndVpi автоматически регистрируются в терминале Collquan, а интерфейс становится красочным (баннеры, таблицы, Live-дашборд). Если CharmPkk не установлен, ndVpi работает автономно на чистом print, весь функционал сохраняется, только без красок.



Установка



Для базового функционала: pip install ndVpi

Для интеграции с CharmPkk: pip install "ndVpi\[charm]"



Быстрый старт



Сканировать Wi-Fi: from ndvpi import WiFiScanner; print(WiFiScanner().current\_network())

Информация о сети: from ndvpi import NetworkInfo; print(NetworkInfo().local\_ip())

Запустить оптимизатор: from ndvpi import NetworkOptimizer; NetworkOptimizer().start()

Мониторинг в реальном времени: from ndvpi import NetworkMonitor; NetworkMonitor().run(duration=30)

Диагностика: from ndvpi import NetworkDiagnostics; print(NetworkDiagnostics().get\_report())



Возможности



Сканирование Wi-Fi. Подробная информация о текущей сети (SSID, BSSID, сигнал, канал, безопасность) и базовый список ближайших сетей. На русской Windows вывод netsh автоматически декодируется из CP866, все поля поддерживаются как на английском, так и на русском языках. Если Windows кэшировал только одну сеть, сканер автоматически повторяет запрос с задержкой 2 секунды.



Информация о подключении. Локальный IP, шлюз по умолчанию, DNS-серверы, задержка до любого хоста. Также есть метод ping\_series() для серии пингов с расчётом min/max/avg/jitter/loss.



Оптимизация сети. Оптимизатор работает в фоновом потоке с минимальной нагрузкой на CPU. Устанавливает TCP\_NODELAY на сокеты (отключает алгоритм Нейгла, снижая задержку на 20–40 мс) и кэширует DNS-запросы с настраиваемым TTL (по умолчанию 60 секунд). Фоновый поток раз в 30 секунд очищает устаревшие записи кэша.



Управление параметрами сети. Установка и сброс DNS, смена пароля Wi-Fi, включение и выключение сетевых адаптеров, настройка MTU. Все операции поддерживают dry\_run (предварительный просмотр команд ОС), требуют подтверждения и корректно работают с русской Windows.



Мониторинг в реальном времени. Показывает пинг (min/avg/max), джиттер, потери пакетов и скорость download/upload в цикле, пока пользователь не остановит. С CharmPkk используется Live-дашборд без мерцания, без CharmPkk — перерисовка через ANSI-escape. Замер скорости выполняется в фоновом потоке, поэтому остальные метрики не блокируются, даже если сеть медленная.



Диагностика сети. Проверяет наличие адаптеров, подключение Wi-Fi, доступность шлюза, разрешение DNS, доступность интернета, потери пакетов и уровень пинга. По результатам формирует отчёт с вероятной причиной проблемы и конкретной рекомендацией (например, «смените DNS на 1.1.1.1»). С CharmPkk отчёт отрисовывается в виде красивой таблицы, без CharmPkk — читаемым текстом.



История и экспорт. Все замеры пинга и скорости за сессию сохраняются в памяти. По команде можно экспортировать их в JSON или CSV в папку \~/.ndvpi/reports/.



Интерактивное меню



После установки доступна команда ndvpi. Она открывает меню, где можно сканировать сети, смотреть информацию о подключении, запускать мониторинг и диагностику, управлять оптимизатором и параметрами сети. Если CharmPkk установлен, меню становится цветным с навигацией стрелками; если нет — обычное нумерованное меню с вводом цифрой.



Интеграция с CharmPkk



Если CharmPkk установлен, при импорте ndvpi в Collquan автоматически появляются команды:



ndscan — показать текущую Wi-Fi сеть.

ndinfo — IP, шлюз, DNS, пинг.

ndopt start / ndopt stop — управление оптимизатором.

ndstatus — статус оптимизатора.

nddns show / nddns set <ip>... / nddns reset — управление DNS.

ndpass <ssid> <pass> — смена пароля Wi-Fi (с подтверждением).

ndadapters list / ndadapters enable <name> / ndadapters disable <name> — управление адаптерами.

ndmtu <iface> \[new\_mtu] — настройка MTU.

ndadmin — проверка прав администратора.

ndlive — мониторинг в реальном времени.

nddiag — диагностика сети с отчётом и рекомендациями.

ndexport — экспорт истории сессии в JSON и CSV.



Пример в Collquan: ndscan



Права администратора



Все операции, изменяющие параметры сети (DNS, пароль Wi-Fi, состояние адаптеров, MTU), требуют прав администратора. Без них ndVpi не падает, а возвращает понятное сообщение «Требуются права администратора». Запускайте терминал от имени администратора, если хотите использовать эти функции. Диагностика и мониторинг работают без прав.



Требования



Python 3.8+.

Windows, Linux или macOS.

Опционально: CharmPkk 1.26.0+ для красочного интерфейса и интеграции с Collquan.



Связь с автором



По вопросам и предложениям: reception.mailspypi@gmail.com

