Перейти к содержимому


Фотография

Маленький Вопросик По Разработке


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 Mihail821

Mihail821

    Пользователь

  • Пользователи
  • PipPip
  • 11 сообщений
  • Gender:Male

Отправлено 21 January 2014 - 20:42

Дорогие форумчане, не сочтите за труд и ткните мордой в простенький пример для реализации следующей хотелки. Есть текстовый файл (кодировка UTF-8) доступный по HTTP нужно иметь возможность открывать его в плагине и пролистывать клавишами P+ P- с пульта дюны. Как вывести на экран его часть я понял, а как реализовать функцию прокрутки (чтобы получить доступ к тому, что не влезает на первую страницу)? Наверняка есть какое-то простое решение для начинающих? Спасибо за внимание и... понимание))



#2 TrippyCat

TrippyCat

    Пользователь

  • Пользователи
  • PipPipPipPipPipPipPip
  • 27062 сообщений
  • Gender:Male

Отправлено 21 January 2014 - 22:43

C этим проблема, пока решения не нашел. 

Но в каком то плагине это было реализовано, не могу найти в каком. 


Dune Store Extension (Дюнастор расширенный)
Faq По Плеерам Dune - в процессе заполнения.

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном дюне (обычно внутренний диск) папку "dune_plugin_logs". После чего начните пользоваться плагином, и в папке dune_plugin_logs появится файл лога. (папку создавать с нижними подчеркиваниями). К файлу лога добавляйте расширение txt иначе на форум не загрузить или упакуйте файл лога в zip архив.

Хотел бы настойчиво попросить всех изменить свои подписи до такого вида (указание модели и прошивки, это сэкономит время вам и авторам плагинов) Faq По Плеерам Dune - п.12 - Как сделать подпись на форуме :
Dune Pro 4K(tv292a) - всегда последняя
Dune Neo 4K T2 Plus Version - всегда последняя
Dune Solo 4K (всегда последняя) Сист.флешка присутствует

Обновите парсеры это означает кнопка попап пункт "обновить" на иконке плагина или перегрузите плеер или в настройках плагина Bazinga.

#3 Mihail821

Mihail821

    Пользователь

  • Пользователи
  • PipPip
  • 11 сообщений
  • Gender:Male

Отправлено 22 January 2014 - 15:35

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



#4 TrippyCat

TrippyCat

    Пользователь

  • Пользователи
  • PipPipPipPipPipPipPip
  • 27062 сообщений
  • Gender:Male

Отправлено 29 January 2014 - 01:27

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

Ну если найдете решение будет не плохо. 


Dune Store Extension (Дюнастор расширенный)
Faq По Плеерам Dune - в процессе заполнения.

Чтобы получить log-файл плагинов, нужно создать на первом носителе, доступном дюне (обычно внутренний диск) папку "dune_plugin_logs". После чего начните пользоваться плагином, и в папке dune_plugin_logs появится файл лога. (папку создавать с нижними подчеркиваниями). К файлу лога добавляйте расширение txt иначе на форум не загрузить или упакуйте файл лога в zip архив.

Хотел бы настойчиво попросить всех изменить свои подписи до такого вида (указание модели и прошивки, это сэкономит время вам и авторам плагинов) Faq По Плеерам Dune - п.12 - Как сделать подпись на форуме :
Dune Pro 4K(tv292a) - всегда последняя
Dune Neo 4K T2 Plus Version - всегда последняя
Dune Solo 4K (всегда последняя) Сист.флешка присутствует

Обновите парсеры это означает кнопка попап пункт "обновить" на иконке плагина или перегрузите плеер или в настройках плагина Bazinga.

#5 romkalv

romkalv

    Новичок

  • Недавно зарегистрированные
  • Pip
  • 1 сообщений

Отправлено 19 June 2022 - 21:52

Добрый день,

 

 

Разрабатываю депо плагин, зародилась идея поставить пароль на включение плагина.

Через манифест перехватываю дефолтный авторезум.

<auto_resume>
	<enable>yes</enable>
	<action>
		<type>plugin_handle_user_input</type>
		<params>
			<handler_id>entry</handler_id>
			<entry_id>tv</entry_id>
		</params>
	</action>
</auto_resume>

В обработчике событий подхватываю и сохраняю состояние авторезум

if (isset($user_input->resume_mode) && isset($user_input->resume_media_url)) {
	hd_print("Resume state detected");
	$media_url = MediaURL::decode($user_input->resume_media_url);
	$media_url->group_id = $user_input->resume_tv_group;
	$media_url->channel_id = $user_input->resume_tv_channel;
	$media_url->archive_tm = ((time() - $user_input->resume_tv_archive_tm) < 259200) ? $user_input->resume_tv_archive_tm : -1;
	$media_url->is_favorite = $user_input->resume_tv_is_favorite;
	$this->autoResume = $media_url;
}
if (isset($user_input->entry_id)) {
	if ($user_input->entry_id === 'setup') {
		return ActionFactory::open_folder();
	}
	elseif ($user_input->entry_id === 'tv') {
		$customer_id 		= isset($plugin_cookies->customer_id) ? $plugin_cookies->customer_id : '';
		$startup_pass 		= isset($plugin_cookies->startup_pass) ? $plugin_cookies->startup_pass : '';
		//$customer_password = isset($plugin_cookies->customer_password) ? $plugin_cookies->customer_password : '';

		if (empty($customer_id)) {
			return ActionFactory::show_dialog('Authorization data',	DemoSetupScreen::do_get_edit_subscription_defs($plugin_cookies), true);
		} 
		elseif (!empty($startup_pass)) {
			return ActionFactory::show_dialog('Startup Password', DemoSetupScreen::enter_startup_password_defs($plugin_cookies), true);
		}
		elseif (isset($this->autoResume)) {
			$media_url = $this->autoResume;
			$this->autoResume = NULL;
			return ActionFactory::tv_play($media_url);
		}
		else {
			return ActionFactory::open_folder();
		} 	
	}
}

далее если надо спрашиваю пароль (или не спрашиваю когда отключён) и выполняю tv_play;

return ActionFactory::tv_play($media_url);

всё работает как часы, возвращает как к каналам, так и к архиву, НО если после возращения нажать "return", выкинет из плагина в интерфейс дюны. Подозреваю, так как запуская плагин, ни разу не был вызван open_folder.

 

пробовал сделать так, подсмотрев у других:

elseif (isset($this->autoResume)) { // auto resume without startup password (default route)
	$add_params['initial_media_url'] = $this->autoResume->get_raw_string();
	$add_params['resume_object'] = $this->autoResume;
	return ActionFactory::open_folder(null, null, UserInputHandlerRegistry::create_action($this, 'tv_play', $add_params));
}

/* Later */

else if ($user_input->control_id === 'tv_play' && $user_input->handler_id === 'entry') {
	$this->autoResume = NULL;
	return ActionFactory::tv_play($user_input->resume_object);
}

стоит сказать, что я перепробовал много разных вариантов.

 

при таком подходе resume кнопка выкинет к папкам, но сам резум открыв канал Х не будет учитывать архив и если далее OK и стрелками выбрать канал Y (не заходя в категории, тоесть без кнопки ретурн), и снова выключить + включить приставку он вернётся опять к X. Вообщем костыли.

Я до сих пор не понял почему так, возможно open_folder что-то перезаписывает, возможно я что-то упускаю. Уже давно экспериментирую с кодом.  

 

Вопрос, как бы вы это реализовывали? - что я упускаю.

Есть ли способ перехватить нажатие кнопки ретурн на пульте после резума, и насильно направить его в нужный экран/папку? Я не нашёл где идёт обработка экрана воспроизведения, в прошивке я полагаю. - подумал это тоже вариант.

Не подскажете, если ли способ мониторить / вызывать экраны внеочередно? 

 

 

Прошу прощения за офтоп - не могу создать отдельную тему.



#6 Brigadir

Brigadir

    Маэстро комментариев

  • Пользователи
  • PipPipPipPipPipPipPip
  • 5273 сообщений
  • Gender:Male
  • Location:Russia

Отправлено 21 June 2022 - 12:34

1) опенфолдеру нужно передать медиаурл конкретного скрина, который вы хотите открыть. А у вас сейчас там null, что не есть правильно.
2) Кнопку ретурн можно перехватывать, но в режиме воспроизведения на нее навешан функционал, который вы не сможете восполнить вручную. Поэтому этот путь тупиковый.
Dune HD Pro One 8K Plus (240201_2116_r22)
Dune HD Real Vision 4K (230929_0206_r21)
Dune HD 303D (190919_0242_r11) Сист. флешка присутствует, тестовая
-----------------------------------
Keenetic Giga (KN-1010)

Все мои (и не только) плагины Dune HD
Гранд обзор Dune HD Pro One 8K Plus
Краткий обзор Dune HD Pro 4K II
Краткий обзор Dune HD Neo 4K с картинками

(ЮMoney для благодарностей)

#7 ilya.neplyuhin

ilya.neplyuhin

    Новичок

  • Недавно зарегистрированные
  • Pip
  • 1 сообщений

Отправлено 11 August 2022 - 15:24

Добрый день, очень интересно