diff --git a/modules.json b/modules.json
index 0b12db1..c2b2fb0 100644
--- a/modules.json
+++ b/modules.json
@@ -52266,13 +52266,7 @@
"_doc_text_ru": "Текст, который будет написан рядом с файлом",
"_doc_username_ru": "Ваш username с last.fm",
"nick_error_ru": "❌ Укажите ваш никнейм с last.fm",
- "uploading_ru": "🕔 Загрузка баннера...",
- "name_jp": "LastFm",
- "no_track_jp": "❌ 現在再生中のトラックはありません",
- "_doc_text_jp": "ファイルの横に表示されるテキスト",
- "_doc_username_jp": "Last.fmのユーザー名",
- "nick_error_jp": "❌ Last.fmのニックネームを入力してください",
- "uploading_jp": "🕔 バナーをアップロード中..."
+ "uploading_ru": "🕔 Загрузка баннера..."
},
"has_on_load": false,
"has_on_unload": false,
@@ -62648,6 +62642,148 @@
"has_on_unload": false,
"class_cmd_names": {}
},
+ "fiksofficial/python-modules/stream.py": {
+ "name": "StreamMod",
+ "description": "📡 RTMP media streaming",
+ "cls_doc": {
+ "ru": "📡 RTMP стриминг медиафайлов"
+ },
+ "meta": {
+ "pic": null,
+ "banner": null,
+ "developer": null
+ },
+ "commands": [
+ {
+ "stream": "[reply to media] — start stream or add to queue | (RU) [ответ на медиа] – запустить трансляцию"
+ },
+ {
+ "streamctl": "– open stream control panel | (RU) – панель управления трансляцией"
+ },
+ {
+ "streamstop": "– stop stream and clear queue | (RU) – остановить трансляцию и очистить очередь"
+ }
+ ],
+ "new_commands": [
+ {
+ "name": "stream",
+ "original_name": "stream",
+ "description": {
+ "default": "[reply to media] — start stream or add to queue",
+ "ru": "[ответ на медиа] – запустить трансляцию"
+ },
+ "cmd_names": {},
+ "aliases": [],
+ "usage": null,
+ "inline": false,
+ "is_inline_handler": false,
+ "decorators": []
+ },
+ {
+ "name": "streamctl",
+ "original_name": "streamctl",
+ "description": {
+ "default": "– open stream control panel",
+ "ru": "– панель управления трансляцией"
+ },
+ "cmd_names": {},
+ "aliases": [],
+ "usage": null,
+ "inline": false,
+ "is_inline_handler": false,
+ "decorators": []
+ },
+ {
+ "name": "streamstop",
+ "original_name": "streamstop",
+ "description": {
+ "default": "– stop stream and clear queue",
+ "ru": "– остановить трансляцию и очистить очередь"
+ },
+ "cmd_names": {},
+ "aliases": [],
+ "usage": null,
+ "inline": false,
+ "is_inline_handler": false,
+ "decorators": []
+ }
+ ],
+ "inline_handlers": [],
+ "strings": {
+ "name": "Stream",
+ "status_active": "▶️ Stream is live\n\n{icon} {file}\n⏱ Time: {elapsed}\n🔢 PID: {pid}\n📡 {rtmp}\n🎥 {vbr} | {fps}fps | {preset}\n🔊 {abr}\n📋 Queue: {queue}",
+ "status_idle": "⏸ Stream is not active",
+ "status_queue": "\n📋 Queue: {n}",
+ "stopped": "⏹ Stream stopped.",
+ "no_rtmp": "❌ RTMP not configured!\nTap a button to set it up.",
+ "downloading": "⏳ Downloading…",
+ "dl_failed": "❌ Failed to download file.",
+ "queued": "📋 Added to queue ({n})\n{icon} {file}",
+ "not_running": "Not running",
+ "queue_empty": "Queue is empty",
+ "queue_header": "📋 Queue:\n",
+ "settings_title": "⚙️ Stream settings",
+ "btn_stop": "⏹ Stop",
+ "btn_queue": "📋 Queue",
+ "btn_refresh": "🔄 Refresh",
+ "btn_settings": "⚙️ Settings",
+ "btn_status": "📊 Status",
+ "btn_back": "🔙 Back",
+ "btn_preset": "🎞 Preset: {v}",
+ "btn_tune": "🎭 Tune: {v}",
+ "btn_vbr": "🎥 Video: {v}",
+ "btn_abr": "🔊 Audio: {v}",
+ "btn_fps": "📐 FPS: {v}",
+ "btn_res": "🖥 Res: {v}",
+ "btn_threads": "🧵 Threads: {v}",
+ "btn_rtmps": "📡 RTMP URL",
+ "btn_key": "🔑 Stream key",
+ "btn_set_rtmps": "📡 Set RTMP URL",
+ "btn_set_key": "🔑 Set stream key",
+ "ph_vbr": "Video bitrate, e.g. 2000k",
+ "ph_abr": "Audio bitrate, e.g. 128k",
+ "ph_threads": "Thread count (0 = auto)",
+ "ph_rtmps": "rtmp://a.rtmp.youtube.com/live2",
+ "ph_key": "Stream key...",
+ "status_active_ru": "▶️ Трансляция идёт\n\n{icon} {file}\n⏱ Время: {elapsed}\n🔢 PID: {pid}\n📡 {rtmp}\n🎥 {vbr} | {fps}fps | {preset}\n🔊 {abr}\n📋 В очереди: {queue}",
+ "status_idle_ru": "⏸ Трансляция не активна",
+ "status_queue_ru": "\n📋 В очереди: {n}",
+ "stopped_ru": "⏹ Трансляция остановлена.",
+ "no_rtmp_ru": "❌ RTMP не настроен!\nНажми кнопку чтобы задать прямо сейчас.",
+ "downloading_ru": "⏳ Скачиваю…",
+ "dl_failed_ru": "❌ Не удалось скачать файл.",
+ "queued_ru": "📋 Добавлено в очередь ({n} шт.)\n{icon} {file}",
+ "not_running_ru": "Не запущено",
+ "queue_empty_ru": "Очередь пуста",
+ "queue_header_ru": "📋 Очередь:\n",
+ "settings_title_ru": "⚙️ Настройки трансляции",
+ "btn_stop_ru": "⏹ Стоп",
+ "btn_queue_ru": "📋 Очередь",
+ "btn_refresh_ru": "🔄 Обновить",
+ "btn_settings_ru": "⚙️ Настройки",
+ "btn_status_ru": "📊 Статус",
+ "btn_back_ru": "🔙 Назад",
+ "btn_preset_ru": "🎞 Пресет: {v}",
+ "btn_tune_ru": "🎭 Tune: {v}",
+ "btn_vbr_ru": "🎥 Видео: {v}",
+ "btn_abr_ru": "🔊 Аудио: {v}",
+ "btn_fps_ru": "📐 FPS: {v}",
+ "btn_res_ru": "🖥 Разр: {v}",
+ "btn_threads_ru": "🧵 Треды: {v}",
+ "btn_rtmps_ru": "📡 RTMP URL",
+ "btn_key_ru": "🔑 Ключ",
+ "btn_set_rtmps_ru": "📡 Задать RTMP URL",
+ "btn_set_key_ru": "🔑 Задать ключ",
+ "ph_vbr_ru": "Битрейт видео, напр. 2000k",
+ "ph_abr_ru": "Битрейт аудио, напр. 128k",
+ "ph_threads_ru": "Потоков (0 = авто)",
+ "ph_rtmps_ru": "rtmp://a.rtmp.youtube.com/live2",
+ "ph_key_ru": "Ключ трансляции..."
+ },
+ "has_on_load": false,
+ "has_on_unload": false,
+ "class_cmd_names": {}
+ },
"fiksofficial/python-modules/lyrics.py": {
"name": "LyricsMod",
"description": "Модуль для поиска текста песни через Genius API напрямую",
@@ -82294,7 +82430,7 @@
}
},
"meta": {
- "total_modules": 1021,
- "generated_at": "2026-03-11T01:22:17.528364"
+ "total_modules": 1022,
+ "generated_at": "2026-03-23T01:31:16.986395"
}
}
\ No newline at end of file