1

Тема: Доработанный виджет TheDark SmartTV от Hacker0777

https://i.ibb.co/BLmqmhj/00.jpg
Доработанный виджет TheDark SmartTV V.7.8.

Год/Дата Выпуска: 2019
Версия: 7.8
Разработчик: TheDark
Сайт разработчика: smart-tv-home.ru

Язык интерфейса: Русский
Таблэтка: Не требуется (Вылечено)
Системные требования: Windows XP, 7, 8, 10
Описание: Доработанный виджет TheDark SmartTV

Отличия от оригинала, доработки и инновации:

Spoiler

1. "0"..."9" + "->" - переход на 0,10...90 процентов времени фильма.
2. "10"..."9999" + "->" - воспроизведение заданного элемента.
3. "1"..."9999" + "ввод" - воспроизведение заданного элемента.
4. "1"..."9999" + ( "<<" или ">>" ) - перемотка в секундах от текущей позиции.
5. "1"..."999" + ">" - воспроизведение с заданной позиции в минутах.
6. "1"..."9" + "TTX" - переключение на заданную звуковую дорожку.
7. "->" в проводнике - запуск элемента либо вход в подкаталог, "->" без проводника - открыть проводник (задаётся в настройках).
8. "<-" в проводнике - выход из подкаталога, "<-" без проводника - открыть проводник (задаётся в настройках).
9. "UP" без проводника - воспроизведение предыдущего элемента.
10. "DN" без проводника - воспроизведение следующего элемента.
11. Качелька каналов в режиме проигрывателя - переключение звуковых дорожек.
12. Качелька каналов в режиме проводника и просмотра новостей - перелистывание страниц (задаётся в настройках).
13. Качелька каналов в настройках каналов - переключение телеканалов с визуализацией настроек.
14. "пауза"/"воспр" показывает текущую позицию в фильме.
15. Регулировка прозрачности субтитров и фона субтитров.
16. "KEY RED" - включить/выключить субтитры, "TTX" - переключение аудиоформатов.
17. Возможность выбора часов с секундами и без них, фон часов включается в настройках.
18. Добавлены рабочие российские и украинские каналы IPTV.
19. Изменён дизайн, большая библиотека иконок каналов, выбор показа крупной иконки каналов в настройках.
20. Изменён порядок селектора входов.
21. Место отображения погоды автоматически меняется вместе с изменениями размеров панели часов.
22. Прозрачность панели погоды соответствует прозрачности панели часов.
23. Исправлена ошибка отображения размера файлов больше 1 GB.
24. Добавлен ввод альтернативного MAC-адреса.
25. Обновление прогноза погоды каждые 10 минут.
26. Время отображение медиаинформации задаётся в настройках.
27. Переключение между минимальным и расширенным наборами видеорежимов.
28. Сброс смещения телепрограммы при закрытии по "ENTER" и "EXIT", по "GUIDE" сброса нет.
29. Отображение полных текущей и смещённой дат с днём недели в программе телепередач.
30. Устранён перезапуск виджета через минуту после автозапуска.
31. Автоопределение кодов по имени каналов для более 300 каналов.
32. Переключение альтернативных TorrentTV идентификаторов в netplay файлах.
33. Возможность просмотра ссылок на IPTV и TorrentTV каналы в настройках.
34. Добавлен режим изображения "X-ZOOM" в расширенном наборе видеорежимов.
35. Возможность задавать параметры режима "X-ZOOM" в netplay файлах и сохранять их в Избранном.
36. Альтернативный режим MUTE, возможность задавать уровень громкости альтернативного MUTE.
37. При отключенных часах кнопка "INFO" включает их на заданное количество секунд.
38. Визуализированы и оптимизированы настройки, удалено сохранение настроек виджета на портал.
39. Папка smart-tv-home.ru/ отображается только при введённых имени и пароле пользователя.
40. В панели ввода синяя кнопка вводит ПРОБЕЛ или ТОЧКУ в зависимости от режима малой клавиатуры.
41. Отображение иконки канала в панели ввода номера канала.
42. Редактор имён аналоговых телеканалов от 2-х символов.
43. Регулировка прозрачности меню навигации.
44. "0" используется для TV и IPTV телеканалов (задаётся в настройках).
45. Возможноcть использования пропусков в нумерации каналов (задаётся в настройках).
46. Исправлено сканирование аналоговых каналов, возможность настройки сканирования.
47. Крупная иконка канала/файла в панели ввода номера.
48. Индикация разрешения изображения в информационной панели, если оно доступно.
49. Отображение новостей сайта задаётся в настройках.
50. Отображение погоды кнопкой "INFO" или вместе с информацией если не задано постоянное отображение.
51. Динамический автопоиск иконок телеканалов и netplay файлов по их именам.
52. Соотношение длины имени канала и телепрограммы задаётся в настройках.
53. Редактор названий источников сигнала.
54. Выбор версии сервера в главном меню и настройках.
55. Исправлена сортировка и иконки для DLNA.
56. Поддержка серверов старых версий 4 и 5, которые не требуют авторизации на сайте.
57. Автопропуск временно отключенных источников сигнала при циклическом выборе.
58. Возможность выбора между серверами погоды Yandex и Gismeteo.
59. Сервера 4.15-7.7 загружают в телевизор виджеты размером до 220 Мбайт каждый.
60. Сервер 7.7 обладает VIP функциями независимо от авторизации.
61. Заставка динамически отслеживает наличие видеосигнала.
62. Мультизагрузка телепрограммы по всем TV и IPTV каналам.
63. Использование альтернативного сервера для импорта-экпорта настроек, каналов и избранного на компьютер.
64. Изменена логика листания страниц в проводнике и удаления в Избранном.
65. Кнопка "ИНФО" добавлена в управление кнопками.
66. Автообновление телепрограммы всех каналов через заданный интервал.
67. ScreenSaver Samsung с настраиваемыми параметрами.
68. Регулировка прозрачности прогрессора мультизагрузки.
69. Обновление виджета через PHP сервер.
70. Динамический прогрессор мультизагрузки для телевизоров серий C и D.
71. Настраиваемая логика движения курсора в проводнике.
72. Синхронизация Избранного со списком TV каналов.
73. Переключение Избранного клавишами "<<" и ">>".
74. В Настройках добавлен адрес альтернативного сервера для запросов телепрограммы и новостей.
75. Настраиваемый прогрессор телепередачи в панели ввода номера канала.
76. Поддержка Transmission (необходима дополнительная настройка телевизора и внешний HDD).
77. Следующая передача в списках каналов и Избранном (задаётся в настройках).
78. В напоминаниях добавлена возможность просмотра описания передачи.
79. Панель подсказки кнопок отображается при старте виджета и вызывается клавишами "STOP"/"REC" в режимах TV/MEDIA.
80. Переключение между обычной и мобильной версией сайта Yandex на случай блокировки.
81. Все доступные следующие передачи в телепрограмме, встроенной в канал EPG.
82. Разрешение экрана в панели инфо, отключаемое в настройках.
83. Встроенная в канал EPG доступна в списке телеканалов для всех телеканалов, которые использовались.
84. Пункт "Напоминания" добавлен в Главное Меню.
85. Поддержка установленного режима растяжения видео 16x9.
86. Действие кнопки RETURN задаётся в настройках.
87. Динамическое обновление программы телепередач в списках каналов и списка устройств.
88. Возможность сброса присвоенных кнопкам команд как по одной, так и всех сразу.
89. Кнопки REC, PLAY, PAUSE и STOP в режиме редактирования используются для ввода ".", ":", "-" и " ".
90. Улучшен алгоритм перезапуска потокового видео при обрыве.
91. В комментариях и списках YouTube клавиши << и >> листают блоки страниц, а CH.UP и CH.DN страницы.
92. Возможность обновления только исполняемого кода виджета через PHP сервер.
93. Возможность листания страниц в проводнике мышкой и жестами кликом по заголовку окна.
94. Возможность подтверждения действия мышкой и жестами кликом по надписям на панели.   
95. Улучшено контекстное меню и меню мыши.
96. Запоминается текущая папка, последний воспроизводимый файл и текущая позиция в нём в момент остановки. 

Предыдущие версии

Скачать V.7.8.00
Скачать V.7.8.01
Скачать V.7.8.02
Скачать V.7.8.03
Скачать V.7.8.04
Скачать V.7.8.05
Скачать V.7.8.06
Скачать V.7.8.07
Скачать V.7.8.08
Пароль на вложенный архив WoodMiniWebServer: "0000"

Мод версии от 21.08.2019. Обновлено 06.07.2020
Скачать V.7.8.09

Оригинальный виджет для серий E-F (portable, без загрузки из нета)
Скачать оригинал V.9.3 portable

Скриншоты:

Spoiler

https://i.ibb.co/WBtmpQ8/01.jpg
https://i.ibb.co/T2WXNy7/02.jpg
https://i.ibb.co/JBG6b5S/03.jpg
https://i.ibb.co/fpRgDvN/04.jpg
https://i.ibb.co/HGN49wJ/05.jpg
https://i.ibb.co/1d5M3y0/06.jpg
https://i.ibb.co/gR21v8Y/07.jpg
https://i.ibb.co/5R9Hyhd/08.jpg
https://i.ibb.co/KwYxMQB/09.jpg
https://i.ibb.co/hyWtpx6/10.jpg
https://i.ibb.co/BtDwjjj/11.jpg
https://i.ibb.co/5kkkKYY/12.jpg
https://i.ibb.co/F7BJ5vJ/13.jpg
https://i.ibb.co/7GNspP7/14.jpg
https://i.ibb.co/w0ybMDQ/15.jpg
https://i.ibb.co/c276KDz/16.jpg
https://i.ibb.co/nQv2JyR/17.jpg
https://i.ibb.co/T4RDLtV/18.jpg
https://i.ibb.co/3Nth4yR/19.jpg
https://i.ibb.co/HGHy3DZ/20.jpg
https://i.ibb.co/JF3sYKq/21.jpg
https://i.ibb.co/bPxfpcd/22.jpg
https://i.ibb.co/3k2ckGT/23.jpg
https://i.ibb.co/YNBj4D0/24.jpg
https://i.ibb.co/VBxCW7N/25.jpg
https://i.ibb.co/YN5MKZp/26.jpg
https://i.ibb.co/3R09Ckf/27.jpg
https://i.ibb.co/1LQhgrL/28.jpg
https://i.ibb.co/M8x3Gky/29.jpg
https://i.ibb.co/WxkDSf6/30.jpg
https://i.ibb.co/4Y71FfN/31.jpg
https://i.ibb.co/PWHt0bK/32.jpg
https://i.ibb.co/zhFJty6/33.jpg
https://i.ibb.co/vJ0FmxL/34.jpg
https://i.ibb.co/gdyfndp/35.jpg
https://i.ibb.co/qJdGYjL/36.jpg
https://i.ibb.co/mDtjh8d/37.jpg
https://i.ibb.co/8xT90rb/38.jpg
https://i.ibb.co/QDybKg4/39.jpg
https://i.ibb.co/dDMCgYg/40.jpg
https://i.ibb.co/Ss6ZMmz/41.jpg
https://i.ibb.co/8gzW39f/42.jpg
https://i.ibb.co/Qmh7Y8C/43.jpg

Инструкции по установке и использованию:

Spoiler

1. Скачиваем с сайта smart-tv-home.ru дистрибутив сервера V.9, инсталлируем его, настраиваем каталоги, останавливаем и закрываем.
Это необходимо для создания папок с правильными именами при первоначальной установке.
Если TDMC уже был установлен, то просто останавливаем и выгружаем его из памяти.
Распаковываем архив в папку сервера. Виджеты и каналы должны попасть в свои папки.
2. Запускаем сервер cервер V.4.1.5 (нажав кнопку СЕРВЕР СТАРТ)
3. Набираем IP, который он выдает, в адресной строке вашего броузера в компьютере, браузер должен выдать "Сервер готов к работе"
4. Если сервер готов, то жмем на клавиатуре Win-R, набираем команду ping (тут пишем IP адрес телевизора) и смотрим чтобы не было ошибок
5. Можно временно отключить файрвол/антивирус и проверить
6. Желательно, чтобы локальная сеть имела статические IP адреса (то есть они должны быть явно указаны в сетевых настройках компьютера,
   роутера и телевизора)
7. IP адреса рекомендуется задавать формата 192.168.1.1-192.168.1.254, иначе более 1-го виджета вы поставить не сможете (требование ТВ).
   Рекомендуется последнее число задавать больше 100, но отлично работает и с 1. Маска подсети - 255.255.255.0
   Шлюз обычно соответствует IP роутера - 192.168.1.1
8. Синхронизируем виджеты и скины.
9. После установки виджетов и скинов останваливаем сервер V.4.1.5, закрываем его, перемещаем cервер V.4.1.5 и виджеты в другую папку
(на случай пакостей разработчика), запускаем cервер V.9.
10. Заходим в настройки виджета и выбираем в самом конце пункт включения автозапуска.
11. Перезапускаем телевизор, входим в SMARTHUB и включаем автозапуск виджета в настройках SMARTHUB (синяя кнопка).
12. Синхронизируем эфирные и IPTV каналы при необходимости.
13. Скачиваем smart-tv-home.ru/files/Ace_Strea … 3.0.12.exe и устанавливаем на компьютере, регистрируемся на сайте
разработчика технологии acestream.org/ и прописываем лигин и пароль в настройках сервера TorrentStream в трее.
14. В программе TS Player в меню Инструменты -> Настройки -> (все) в поле "Цепочка вывода потока по умолчанию" прописывем строку
#std{access=http,mux=ts,dst=:8902} для вывода только в сеть или строку
#duplicate{dst=std{access=http,mux=ts,dst=:8902},dst=display} для вывода и в сеть и на экран компьютера.
15. В настройках веджета включить опцию: "Использовать вещание VLC для торрент протокола"
16. В папке архива TorrentTV лежат netplay ссылки на IPTV каналы, их можно добавлять самому и синхронизировать как IPTV каналы, запускать
TS плеер на компьютере при этом не нужно. Пункт "Торрент ТВ/видео" главного меню не включает никаких каналов, он только подключается
к сигналу от вещающего сервера на компьютере при запущенном TS плеере (запускать можно что угодно, от DVD диска, MKV файла до IPTV канала).
17. При необходимости можно использовать сервера 4.1.5, 5.5.6 или 6.4, переключив версию в настройках виджета. Старые версии обеспечивают только
доступ к сетевой папке компьютера и синхронизацию IPTV каналов, управление компьютером и запуск торрента с ними невозможен.

Инструкция по созданию FTP доступа к телевизору Samsung Smart TV.
1. Отключить автозапуск виджета в его настройках.
2. Скопировать в корень флешки содержимое папки "ROOT"
3. Вставить в USB порт телевизора флешку (кроме нее в других портах не должно быть флешек).
4. Перезапустить телевизор.
5. Запустить SmartHub. В списке виджетов должен появиться новый виджет RootingUSB.
6. Запустить его. После появления окна с текстом нажать на кнопку Enter, затем Return и запустить встроенный браузер.
7. Убедиться, что он нормально запустился. После этого можно его закрыть (кнопка Exit).
8. Зайти в телевизор по FTP. Также работает и Telnet.

Папка ROOT добавлена в архив с виджетом.

Начиная с версии 7.8 появилась возможность обновления только исполняемого кода виджета без изменения настроек и остальных виджетов.
Для этого необходим любой PHP сервер, установленный на компьютере или любом сервере в интернете. Можно использовать PHP сервер Denver,
идущий в комплекте с виджетом, он содержит файл remote-netfolder.php, со всеми необходимыми настройками для импорта-экспорта и обновления.
После установки доработанного виджета версии 7.8 необходимо запустить PHP сервер и положить в папку CONFIG файл M.JS, который необходимо
загрузить. Если необходимо загрузить исходный код версии 7.7 и ниже, нужно добавить в него следующую функцию:

MainWidgetStart = function () {
    Main.Start()
};

после этого закодировать его через Javascriptpacker.mht, входящий в комплект виджета и заменить соответсвующий блок кода в файле M.JS в
текстовом редакторе AkelPad начиная с кода

Animate={FileName

и поместить полученный файл M.JS в папку CONFIG сервера PHP
После установки виджета с загрузочным модулем он при запуске устанавливает с PHP сервера оверлей с основным модулем и в дальнейшем перезапускается уже без использования компьютера. Для следующего обновления достаточно перед запуском виджета запустить PHP сервер и положить в папку с данными новый оверлей.
Внимание !!! Незакодированный M.JS приводит к зависанию телевизора при установке !!!
Если сервер запущен и есть к нему доступ с телевизора, то при запуске виджета происходит обновление основного кода, если доступа к
серверу нет, то запускается ранее обновлённый код, хранящийся в телевизоре.
Актуальный remote-netfolder.php находжится в архиве с последней версией виджета.

Если есть ROOT доступ к телевизору то есть два варианта обновления виджета:
1. Скопировать весь виджет вместо старого в widgets\user\TheDarkSmartTV а M.js скопировать в common\TheDarkSmartTV или настроить PHP сервер и он в дальнейшем автоматом обновляться будет с PHP сервера.
2. Переименовать M.js в Main.js и скопировать в widgets\user\TheDarkSmartTV но не менятьindex.html и loader.js на новые, тогда обновлять нужно будет только таким способом.

НЕ храните доработанный виджет и сервер 4.1.5 на компьютере при запущенном сервер V.5. Он находит доработанный виджет на компьютере и передаёт информацию о нём разработчику. В нём могут быть заложены вредоносные функции, о которых неоднократно предупреждал разработчик.
Сервер V.4.1.5, входящий в данный комплект, декомпилирован, тщательно протестирован на предмет багов, не имеет ограничений по дате работоспособности, не вредит пользователям и не отсылат никакую информацию разработчику.

Оставляя незаполненными Имя и Пароль пользователя в виджете, вы полностью обезопасите себя от контроля разработчика во время работы виджета. (не относится к серверу v.5)

В доработанном виджете при использовании на нескольких устройствах для входа в сетевую папку "smart-tv-home.ru"
необходимо ввести в настройках виджета альтернативный MAC-адрес на всех устройствах, кроме основного,
равным MAC-адресу основного устройства. MAC-адрес должен вводится символами "0123456789ABCDEFabcdef", полностью совпадать
с MAC-адресом основного устройства (в том числе порегистру букв). При этом все устройства с одинаковым MAC-адресом должны
находиться в одной подсети, т.е. иметь один внешний IP-адрес, иначе разработчик вас забанит.
Включайте использование альтернативного MAC-адреса только после его ввода !
ВНИМАНИЕ !!! Функцию ввода альтернативного MAC-адреса вы используете на свой страх и риск. Малейшая ошибка во введённом MAC-адресе или несовпадение внешних IP-адресов устройств приведут к потере доступа к сетевой папке "smart-tv-home.ru" !!!

В доработанной версии добавлены большая коллекция красивых иконок для многих украинских и российских
телеканалов, большая коллекция ссылок на бесплатные украинские и российские IPTV телеканалы.
На большинство IPTV телеканалов введено несколько альтернативных адресов, переключать которые можно кнопкой "<-".

Ссылки на иконки IPTV каналов и яндекс-коды уже прописаны в netplay файлах, для эфирных каналов
иконки и яндекс-коды и код региона нужно присвоить вручную в настройках виджета, тогда в виджете будет доступна
телепрограмма.

Данные доработки не нарушают авторских прав разработчика, так как программа является полностью бесплатной, а её использование здесь - некоммерческим.
Многие обратили внимание, что виджет V.4.1.4 перестал работать 1 октября 2012. Дело в том, что разработчик встроил в него баг, ограничивающий работу по дате и забыл про это, обновление вышло только после массовых жалоб пользователей. В версии 4.1.6 эта строчка выглядит так:

if (arr != null) Main.isAudioError = (((arr.month + 1) >= 10) && ((arr.year - 2001) == 11)) || (((arr.month + 1) <= 3) && ((arr.year - 2001) == 12))

Начиная с версии виджета 5.0.4 разработчик убрал баги по дате. Соответственно отпала необходимость в проверке правильности установки даты/времени телевизора. Версиия 6.3.3 содержала ошибку, в результате которой в 2014 году часы на экране показывали 00:00, и хотя я заренее предупредил об этом разработчика, он не поверил мне и не удосужился её исправить. К тому-же исходник оригинального виджета зашифрован, и неизвестно что придёт в голову разработчику в дальнейшем в него встроить, боюсь даже предположить. Поэтому я решил выложить исправленную версию с открытым кодом для свободного доступа.

Все, кто желает, могут помочь в наполнении плейлистов кодами и иконками каналов Яндекса.
Шаблон иконки имеет имя Logo_for_SimpleTV.psd (в архиве с сервером).

Инструкция по созданию и настройке альтернативного сервера на роутерах Zyxel Keenetic с USB портом:

Spoiler

Делаем загрузочной флешку или внешний жесткий диск (ВЖД) для OPKG так :
https://forum.keenetic.net/topic/4299-entware/.
Далее заходим на роутер  по SSH с помощью программы PUTTY, которую можно скачать здесь -
https://putty.org.ru/download.html
и разворачиваем сервер:
opkg install nginx curl php7-cli php7-fastcgi php7-mod-curl php7-mod-iconv
по сети заходим на флешку или ВЖД в папку share и копируем сюда папку www из архива виджета.
Далее в папке etc/nginx правим в блокноте файл fastcgi_params и должен выглядеть так:

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
#fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME       $document_root$fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

там же файл nginx.conf правим так:

user  nobody;
worker_processes  1;
#error_log  /opt/var/log/nginx/error.log;
#error_log  /opt/var/log/nginx/error.log  notice;
#error_log  /opt/var/log/nginx/error.log  info;
#pid        /opt/var/run/nginx.pid;
events {
    worker_connections  2048;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    #access_log  /opt/var/log/nginx/access.log main;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
    server {
        listen       82;
        server_name  localhost;
        #charset koi8-r;
        #access_log  /opt/var/log/nginx/host.access.log;
        location / {
            root   /opt/share/www;
            index  index.php index.html index.htm;
        }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /opt/share/nginx/html;
        }
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   127.0.0.1;
        #}
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           /opt/share/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }
    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;
    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;
    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;
    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
}

создадим файл автозапуска в блокноте и сохраняем с кодировкой utf-8 S79fcgi в папке etc/init.d таким:

#!/bin/sh
PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PORT=9000
BIN=/opt/bin/php-fcgi
start() {
        $BIN -b $PORT &
}
stop() {
        killall php-fcgi
}
case $1 in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
                stop
                start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        ;;
esac

Не забываем, что файл должен иметь атрибут исполнения, делаем так в SSH `chmod +x /opt/etc/init.d/S79fcgi`
в папке www создадим проверочный скрипт с именем info.php в блокноте:

<?php phpinfo(); ?>

Всё, сервер готов на 82 порту. Для запуска перезагружаем роутер или в SSH вводим команды:
/opt/etc/init.d/S79fcgi start
/opt/etc/init.d/S80nginx start
Для проверки вызываем проверочный скрипт в браузере http://ваш ip роутера:82/info.php и должно выйти так:

http://picua.org/img/2018-07/04/1ce190v5lupgu8r4cry52s9t9.png

и обязательно ниже должен быть раздел curl

http://picua.org/img/2018-07/04/567l0v60rljf053k4e3qh2fci.png

Если отобразилось как надо, то делаем последнюю проверку на запуск программы:
http://ваш ip роутера:82/getremotepage.php?path=https://m.tv.yandex.ru/1095/channels/837
Если программа вышла первого канала, то можно забить в настройках виджета альтернативный сервер:
ваш ip роутера:82 например 192.168.1.1:82
Готово.

Самые последнии доработки всегда можно погуглить по тегам "Доработанный виджет TheDark SmartTV"

ВНИМАНИЕ !!! НЕ РЕКОМЕНДУЕТСЯ здесь писать под тем-же ником, что и на сайте разработчика,
он банит по IP адресу на своём сайте очень злобно всех с теми же никами, кто осмелился здесь даже вопросы задавать
ИЛИ ПИШИТЕ МНЕ В ПРИВАТ !!!

Помните: вы используете доработанный виджет TheDark SmartTV на свой страх и риск навсегда потерять доступ
к порталу smart-tv-home.ru !!!

Раскодировать исходник доработанного виджета можно здесь : jsbeautifier.org/?without-codemirror
На некоторых моделях телевизоров нужно использовать только закодированный исходник, кодировать тут: dean.edwards.name/packer/  там-же можно и декодировать, но не очень читабельно.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500

452

Re: Доработанный виджет TheDark SmartTV от Hacker0777

добавил запоминание и выделение текущего канала в избранном

TheDark_7.707_SATmod_v3.7_patch.zip
rgho.st/69FZ4MdvH

453

Re: Доработанный виджет TheDark SmartTV от Hacker0777

На ТВ 2013 года 09 версия не ставится через синхронизацию, выдаёт ошибку. Попробовал через обновление main.js, но при запуске виджет стартует, потом чёрный экран висит постоянно. На ТВ 2012 года через обновление основного кода поставился нормально.

Добавлено: 2016-05-24 19:54:42

Подскажите у кого ТВ 2012 года, новости с яндекса загружаются? У меня с месяц назад новости перестали отображатся, может это Яндекс намудрил у себя как с программой?

UE40ES6557

454

Re: Доработанный виджет TheDark SmartTV от Hacker0777

В 2013 все равно черный экран на старте.

В 2012 когда в новости захожу там 4 строки:
-Новости сайта smart-tv
-погода
-Киноафиша
-Фишки

далее только папки:
5. Главные
6. Политика
и т.д.

Самих новостей яндекса нет, как было раньше, если пробовать зайти в любую папку (политика, спорт и т.д.) ничего не загружается и курсор становится в начало списка.

Программу яндекса мой тв 2012 ведь тоже с сайта яндекса не грузит, использую скрипт getremotepage на альтернативном сервере. Может можно таким же образом сделать чтобы новости виджет получал c сайта яндекса через скрипт на альтернативном сервере?

UE40ES6557

455

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Удалите пока версию 09 и пользуйтесь 08.  Образовалась дыра в системе безопасности, нужно срочно её устранить.

З.Ы. Теперь можно качать.

Мод версии от 07.05.2016. Обновлено 24.05.2016
Скачать V.7.7.09.Test

Если вы не VIP пользователь - не вводите логин и пароль сайта разработчика, они должны быть пустыми. Иначе он при желании может загрузить вам вредоносный скрипт. VIP пользователи могут пользоваться на свой страх и риск.

Новости загружаются непосредственно с Яндекса минуя любые сервера.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

456

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Hacker0777 пишет:

Новости загружаются непосредственно с Яндекса минуя любые сервера.

У меня на тв 2012 ES года новости не загружаются, как и программа. Причина по которой они не грузятся, та же, что и причина по которой не грузится тв программа - проблемы с сертификатом безопасности при соединении по https к яндексу. Браузер тв не может открыть страницы https://tv.yandex.ru/ и https://news.yandex.ru/.
Но в виджете для тв программы есть же опция - использовать сервер для запросов, и - использовать альтернативный сервер для запросов, при использовании которых у меня через PHP сервер, на котором работает скрипт getremotrpage.php, загружается тв программа яндекса прекрасно.
Вот я и прошу добавить в виджет опцию проксирования новостей яндекса через сервер PHP.
Надеюсь сейчас понятно объяснил.

UE40ES6557

457

Re: Доработанный виджет TheDark SmartTV от Hacker0777

странно, у меня на 2011 с новостями никаких проблем с яндексом нет. хорошо, добавлю.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

458 (2016-05-30 12:03:58 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

TheDark_7.707_SATmod_v3.8
https://www.dropbox.com/s/f9hjoxep4b31p … 8.zip?dl=0
полностью весь виджет

Доработаны:
- функции синхронизации избранных телеканалов
- сортировки файлов и избранного
- автовыделение текущего канала в избранном
- изменён скин, более нейтральные цвет текста, курсор селектора и некоторых элементов дизайна.
в папке skins оставлены styles.css с более близкими к оригиналу цветами, можете переименовать по желанию.

модификация SATmod ориентирована в первую очередь на пользователей спутникового TV.
Сильно улучшена навигация по избранному и переделано управление пультом с ориентацией на управление 5поз. джоем.
Избранное выглядит примерно вот так:
s011.radikal.ru/i315/1605/82/17258b5ca8bb.jpg
s015.radikal.ru/i330/1605/87/77959cccfaec.jpg

459

Re: Доработанный виджет TheDark SmartTV от Hacker0777

у тебя потерялся index из папки с иконками телеканалов, наверно при копирования из линукса телевизора.
ты оставляешь незакрытые строки знаком ";" (перед фигурной скобкой можно), после кодирования в таких строках будет выдавать ошибку синтаксиса. (например строка 11807)
SyntaxError: Expected an identifier but found 'xxxxxx' instead
или
SyntaxError: Unexpected token 'xxxxx'

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: boris2121, al7512

460 (2016-05-26 00:35:34 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

ты оставляешь незакрытые строки знаком ";" (перед фигурной скобкой можно), после кодирования в таких строках будет выдавать ошибку синтаксиса. (например строка 11807)

я всегда закрываю строки ; ))
в плане читабельности кода я перфекционист

так что это не я, это было ))

и скорее всего было это в пакованном файле виджета 7.705-7.707, именно на их основе мой мод

строку

    c.style.margin = (a ? 0 : 2) + "px"

я точно не трогал ...
тоже самое к примеру в последней Main77.js TheDarkSmartTVC7709

----------------------------------
файл я перезалил, теперь с индексами

461

Re: Доработанный виджет TheDark SmartTV от Hacker0777

не трогал, но ты после неё свою строку добавил а предыдущую не закрыл:
Mouse.onMouseMenuButtonOver(Mouse.MousePosH, Mouse.MousePosV);
кстати, что это даёт, а то мне на телеке мышкой не проверить ?

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

462 (2016-05-26 16:27:29 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Mouse.onMouseMenuButtonOver(Mouse.MousePosH, Mouse.MousePosV);

это показывает пояснение относительно выделенной кнопки (вверху менюшки меняется строка информации)
можно увидеть на эмуляторе - двигая мышом

эта строчка срабатывала при наведении курсора мыши на пункт меню, но не срабатывала при наведении курсора пультом

463 (2016-05-26 18:43:20 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

пока опять не забыл
менюха не откликалась на нажатия enter пульта из за бага

Input.KeyAction(Mouse.ButtonArray[Mouse.MousePosV][Mouse.MousePosH].f);

.f - здесь явно лишнее и непонятно откуда взявшееся, без него всё работает как надо

464

Re: Доработанный виджет TheDark SmartTV от Hacker0777

да, видать я пропустил то, что мне не на чем проверить. кстати там в оригинале уже вместо
        if (!Mouse.ButtonArray[Mouse.MousePosV][Mouse.MousePosH].isNotClose) Mouse.MouseMenuHide();
        Input.KeyAction(Mouse.ButtonArray[Mouse.MousePosV][Mouse.MousePosH]);
стоит
        Mouse.onMouseMenuButtonClick(Mouse.MousePosH, Mouse.MousePosV);
потом поправлю.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

465 (2016-05-30 17:34:36 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Мне вот интересно
автор хотя бы видел какой АдЪ у него в виджете ежесекундно происходит, даже когда пользователь абсолютно ничего не нажимает на пульте, а виджет абсолютно "ничего не делает" ?

Clock.ClockShow = function() { Main.js:3897
Tools.GetEpochTime = function(time) { Main.js:14198
Tools.GetDayDateObject = function(time, flag, flag2) { Main.js:14181
Tools.GetLocalTime = function() { Main.js:14246
Channel.Plugins = function(a, b, c, d, e, f, g) { Main.js:3348
Channel.PluginsRet = function(a, b, c, d, f, g, h, i) { Main.js:3354
Tools.isFunction = function(func) { Main.js:13985
Channel.Plugins = function(a, b, c, d, e, f, g) { Main.js:3348
Channel.PluginsRet = function(a, b, c, d, f, g, h, i) { Main.js:3354
Tools.isFunction = function(func) { Main.js:13985
Tools.GetLocalTimeX = function(time, flag) { Main.js:14267
Tools.GetDateSel = function(time, b) { Main.js:14282
Tools.GetFullDate = function(time1, flag) { Main.js:14270
Tools.GetDateSel = function(time, b) { Main.js:14282
Tools.GetLocalTime = function() { Main.js:14246
Channel.Plugins = function(a, b, c, d, e, f, g) { Main.js:3348
Channel.PluginsRet = function(a, b, c, d, f, g, h, i) { Main.js:3354
Tools.isFunction = function(func) { Main.js:13985
Channel.Plugins = function(a, b, c, d, e, f, g) { Main.js:3348
Channel.PluginsRet = function(a, b, c, d, f, g, h, i) { Main.js:3354
Tools.isFunction = function(func) { Main.js:13985
Tools.GetLocalTimeX = function(time, flag) { Main.js:14267
Tools.GetDateSel = function(time, b) { Main.js:14282
Tools.GetFullDate = function(time1, flag) { Main.js:14270
Tools.GetPlayedElement = function() { Main.js:17155
Main.isPlayMode = function(a) { Main.js:11090
Yandex.GetTimeArr = function() { Main.js:17160
Clock.ClockCheckMode = function() { Main.js:3858
Tools.GetTimeString = function(Hour, Minute, Second, delimiter, isClockWithoutSeconds) { Main.js:14301
3 Tools.ZeroString = function(a) { Main.js:14627
Tools.putHTML = function(objName, html) { Main.js:14428
Tools.GetID = function(id) { Main.js:14221
Tools.PutInner = function(a, b) { Main.js:14438

функцию

Clock.SetTypeInit = function() {
    Clock.SetType();
    Tools.setInterval(Clock.ClockShow, 1000)
};

надо поправить на

Clock.SetTypeInit = function() {
    Clock.SetType();
    Tools.setInterval(Clock.ClockShow, 30000)
};

а отображение секунд в часах просто отключить (выводить их это абсолютная глупость)

так это избавит телевизор от хрензнаетскольколиона абсолютно никому не нужных действий и операций ...

это же всё таки не секундомер, никому нахрен секунды не нужны (в том числе и телеканалам и поставщикам EPG)...

А автору рекомендую вникнуть о чём статья, и теорема Котельникова ...
https://ru.wikipedia.org/wiki/Дискретизация
https://upload.wikimedia.org/math/7/4/8/748d72beaae2023b3003c3576860911e.png

466

Re: Доработанный виджет TheDark SmartTV от Hacker0777

В оригинале секунды отключены версии с пятой наверное хотя выводятся всё равно каждую секунду, я сделал опцию на их показ в настройках. Но если выводить раз в пол-минуты, то и точность часов будет такая-же, т.е. если вывод попадает на 29-ю секунду минуты, то на экране минуты будут с опозданием на 29 секунд переключаться. Хотя оптимизировать попытаться можно.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

467 (2016-05-30 19:38:30 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Hacker0777 пишет:

если вывод попадает на 29-ю секунду минуты, то на экране минуты будут с опозданием на 29 секунд переключаться.

какой ужас, это же катастрофа века :D

вот смотришь ты на часы в телевизоре и видишь что время изменилось на одну секунду и тут же вдруг осознаёш что тебе пренепременно надо например именно в 57 секунду что то сделать ...

99.9999% пользователей абсолютно наплевать на секунды, а тем кому не наплевать расскажу страшную тайну: в виджете в принципе нет данных которые требовали бы точности менее минуты.

468

Re: Доработанный виджет TheDark SmartTV от Hacker0777

прошу прощения за нубский вопрос, но  можно ли в виджете сделать полный сброс всех настроек? Пробовал удалять, но при последующей установке настройки восстанавливаются. Просто на еще 6 версии перестал работать EPG. Тогда помучавшись с настройками ничего не добился. Вычитал только, что яндекс вроде блокировать стал запрос тв программы. Короче снес виджет и год не пользовался. Сейчас вроде в этой теме пишут, что EPG наладили, но у меня что-то он никак работать не хочет. Подумал может конфиги старые конфликтуют?

469

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Для моделей выпущенных ранее 2014 года (С-F) необходимо использовать опцию Настройки - Программа передач - "Использовать сервер для запросов" (в момент загрузки EPG компьютер должен быть включен, сервер TDMC или свой PHP сервер запущен). Тоже касается и описаний передач и передач на +1/-1 день. На телевизорах начиная с серии E настройки хранятся в локальном хранилище и могут сохраняться даже при переустановке виджета.

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

470

Re: Доработанный виджет TheDark SmartTV от Hacker0777

ну у меня как раз e серия и есть. А альтернативный сервер в настройках  как вообще задействовать? Папку www из прилагаемого в архиве денвера залить на любой хостинг с поддержкой php и в настройках виджета указать его адрес? Или все несколько сложнее?

471

Re: Доработанный виджет TheDark SmartTV от Hacker0777

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

Samsung UE55D7000/UE55H8000/UE55F9080/UE65F9090/SEK-2500/SEK-3500
Спасибо сказали: al7511

472

Re: Доработанный виджет TheDark SmartTV от Hacker0777

Ну раз уж на то пошло мне вообще хотелось виджет от компа отвязать. И тут варианты либо на роутере веб сервер поднимать, либо в интернете хостинг искать

473 (2016-05-31 14:11:30 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

altJSV пишет:

Ну раз уж на то пошло мне вообще хотелось виджет от компа отвязать. И тут варианты либо на роутере веб сервер поднимать, либо в интернете хостинг искать

ставьте samygo и сервер будет у вас прямо на телевизоре
там apache на 1080 порту в связке с php и perl

во всяком случае у меня именно так всё и работает... (использую пока только для сохранения настроек и фаворитов)

ну и ещё в довесок получите smb, transmission и oscam (если телик поддерживается) которыми я активно пользуюсь уже не первый год

474

Re: Доработанный виджет TheDark SmartTV от Hacker0777

smb, transmission, dlna и прочее у меня на роутере круглосуточно работают. Для моих целей самое то. И роутер в отличие от телевизора включен постоянно. Вопрос все же в том как связать виджет с уже работающим сервером lighttpd в роутере.

475

Re: Доработанный виджет TheDark SmartTV от Hacker0777

altJSV пишет:

Вопрос все же в том как связать виджет с уже работающим сервером lighttpd в роутере.

добавлять на роутер php и конфигурировать lighttpd чтобы php скрипты запускал
больше виджету ничего не надобно

необходимые php файлы готовые выкладываются с модом ...

476 (2016-06-01 10:04:52 отредактировано boris2121)

Re: Доработанный виджет TheDark SmartTV от Hacker0777

TheDark_7.707_SATmod_v3.8.1_patch
https://www.dropbox.com/s/37mhl1s6bzwvs … h.rar?dl=0
исправлены некоторые мелкие, но крайне не приятные глюки

----------------------------------------------------------



способ выводить произошедшие ошибки в подробном виде прямо на телевизоре

catch (e) {
    Tools.debug("ОШИБКА ОТОБРАЖЕНИЯ СПИСКА ПРОВОДНИКА: " + e.name + " - " + e.message+' line: '+e.stack)
}

e.stack - выводит последовательность функций приведших к ошибке, а также номера строк

Спасибо сказали: Hacker0777, firedrake2