Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Завершение работы компьютера полсе воспроизведения. Готовое решение.  (Прочитано 5975 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн alienonline

  • Автор темы
  • Активист
  • *
  • Сообщений: 755
    • Просмотр профиля
Здравствуйте уважаемые участники форума !
Не писал на форумах очень долго, поэтому что то может быть не так  :)

В общем к делу!
Долго искал информацию по поводу автоматического отключения компьютера, после завершения воспроизведения,но увы все готовые способы абсолютно не подходили. Пришлось забросить лень и разобраться.
Была тема https://forum.ubuntu.ru/index.php?topic=96120.0 ,но она по всей видимости закрыта, поэтому создаю новую.

Информация предоставленная ниже справедлива для операционной системы Ubuntu 12.10 (очевидно и для многих других) с установленным плеером VLC и файловым менеджером Nautilus.

Желаемое достигается очень просто, методом добавления скрипта Nautilus (название файла произвольное, например "Отключение после просмотра") в соответствующую папку
~/.gnome2/nautilus-scripts/ со следующим содержимым.

#!/bin/bash
#Запуск медиапрлеера VLC c параметрами : выход после окончания плейлиста и списком файлов плей листа
#выбранных в контекстном меню для файлов Nautilus
vlc --play-and-exit $NAUTILUS_SCRIPT_SELECTED_URIS
#Выключение компьютера после завершения процесса VLC с использованием dbus (не требует прав root)
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop

Таким образом в контекстном меню, в подменю "Сценарии" появится пункт "Отключение после просмотра".
Если выбрать файл(несколько файлов) с помощью этого пункта, то они будут проиграны медиаплеером VLC и после его закрытия компьютер моментально отключится без запроса подтверждения.

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

sudo apt-get install zenity
После этого редактировать (или создать) файл ~/.gnome2/nautilus-scripts/"Отключение после просмотра"
со следующим содержимым :

#!/bin/bash
#Сценарий Nautilus: Завершение работы компьютера после воспроизведения.
#
# VAR
#--------
COUNT=10
#--------
# BEGIN
#
vlc --play-and-exit $NAUTILUS_SCRIPT_SELECTED_URIS
(
while [ $COUNT? != 110 ]
 do
   echo $COUNT
   COUNT=`expr $COUNT + 5`
   sleep 1
 done
) |
zenity --auto-close --progress --title "Завершение работы после просмотра" --text "Воспроизведение окончено.Питание будет отключено..."
 if [ $? = 0 ];
  then
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
 fi
#
# END

В этом случае после окончания плей-листа(выхода из VLC) на экран будет выведено предупреджение с возможностью отмены или подтверждения. По истечении 20 секунд компьютер будет выключен автоматически.

Все операции можно выполнить с помощью скрипта -установщика, который находится во вложении.

PS. Всех с наступающим Новым 2013 годом !
« Последнее редактирование: 30 Декабря 2012, 17:59:37 от alienonline »

Оффлайн Сперанский

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4055
  • Dictum ac factum
    • Просмотр профиля
Прекрасная статья для ВИКИ!

Оффлайн alienonline

  • Автор темы
  • Активист
  • *
  • Сообщений: 755
    • Просмотр профиля
Сперанский, Вики это, несомненно хорошо. Но я по старинке решил. Если информация станет полезной для пользователей, то скорее всего в базу знаний и перекочует. :)

Оффлайн DeathMaz

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Большое спасибо, очень полезная статья.

 

Страница сгенерирована за 0.03 секунд. Запросов: 25.