Видео ролики бесплатно онлайн

Смотреть домашнее видео

Официальный сайт netfuncards 24/7/365

Смотреть видео бесплатно

07.02.10 13:28 vorovtsev

Есть вопрос!Ubuntu c говорящими notification

Добрый день. в наличии есть Ubuntu 9.10 + festival. как сделать чтобы все всплывающие окошки поизносились голосом. желательно при помощи фестиваля.


Теги:

albibek 07.02.10 14:05 # +1
Написать следилку за соответствующим DBUS-эвентом?
bvk 07.02.10 14:12 # +0
Лог нотификаций пишется в ~/cache/notify-osd.log, поэтому можно просто сделать что-то вроде продвинутого tail -f.
booley 07.02.10 14:23 # +-1
В Ubuntu?
cf8 07.02.10 14:57 # +1
Да хоть где:
$ tail -n 2 /home/f8/.cache/notify-osd.log | do-what-want
booley 08.02.10 20:02 # +0
$ cat ~/.cache/notify-osd.log
Ругается на отсутствие файла. Debian Squeeze.
bvk 07.02.10 15:22 # +0
notify-osd в убунте и придумали
vorovtsev 07.02.10 15:08 # +0
как автоматизировать этот процесс? и как все это оформить в виде скрипта например
d_shev 07.02.10 16:33 # +0
watch не пойдет?
vorovtsev 07.02.10 17:55 # +0
не знаю. с чем то подобным я вообще в первый раз сталкиваюсь, поэтому совершенно не в курсе как и что подойдет.
d_shev 07.02.10 20:23 # +0
Сам себе отвечу - нет.
Но swatch - очень даже может.
digiwhite 07.02.10 15:46 # +0
Кстати, а этот festival русский поддерживает? Пару минут потыкал его, получилось чего-то только с английским текстом.
vorovtsev 07.02.10 17:53 # +0
поддерживает. просто надо дополнительно русский пак скачать
s2h 07.02.10 17:41 # +1
что за манера в каментах отвечать вопросом на вопрос?
простите за офтоп
d_shev 07.02.10 18:20 # +0
иногда вопрос может оказаться наводящим...
s2h 07.02.10 18:34 # +0
бесспорно, но автору и другим интересующимся легче читать нормальные ответы.
booley 07.02.10 18:43 # +0
Иногда непонятно, пробовал ли автор какие-то решения. Быть может они не помогли, а об этом в посте ни слова.

Например в посте "Мониторинг процессов" до сих пор не ясно, какой у автора Apache.
digiwhite 07.02.10 19:06 # +2
Выполнив команду dbus-monitor --monitor в терминале я увидел следующее, если сделать из другого терминала notify-send "Test header" "Test body", в терминале, где мониторится dbus будет следующий вывод:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

string "type='signal',sender='org.freedesktop.Notifications',path='/org/freedesktop/Notifications',interface='org.freedesktop.Notifications'"
method call sender=:1.242 -> dest=org.freedesktop.DBus serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=GetNameOwner
   string "org.freedesktop.Notifications"
method call sender=:1.242 -> dest=org.freedesktop.Notifications serial=5 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=GetServerInformation
method return sender=:1.14 -> dest=:1.242 reply_serial=5
   string "notify-osd"
   string "Canonical Ltd"
   string "1.0"
   string "1.1"
method call sender=:1.242 -> dest=org.freedesktop.Notifications serial=6 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
   string "notify-send"
   uint32 0
   string ""
   string "Test header"
   string "Test body"
   array [
   ]
   array [
      dict entry(
         string "urgency"
         variant             byte 1
      )
      dict entry(
         string "category"
         variant             string ""
      )
   ]
   int32 -1
 

Там идет еще кое-какой вывод, но он уже не интересен.

Таким образом, нужно распарсить это дело и собственно передать в festival, чтобы он рассказал.

Я еще чуть позже поковыряюсь, самому интересно стало.


digiwhite 07.02.10 19:18 # +0
А вот если выполнить dbus-monitor "interface='org.freedesktop.Notifications', member='Notify'", то вообще получаем по сути только те куски, которые нужны, без лишнего мусора:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

signal sender=org.freedesktop.DBus -> dest=:1.259 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.259"
method call sender=:1.56 -> dest=:1.259 serial=1255 path=/; interface=org.freedesktop.DBus.Introspectable; member=Introspect
method call sender=:1.260 -> dest=org.freedesktop.Notifications serial=6 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
   string "notify-send"
   uint32 0
   string ""
   string "Test header"
   string "Test body"
   array [
   ]
   array [
      dict entry(
         string "urgency"
         variant             byte 1
      )
      dict entry(
         string "category"
         variant             string ""
      )
   ]
   int32 -1
 


digiwhite 07.02.10 20:54 # +0
В общем у меня получилось сделать, чтобы дядъка произносил словечки, когда приходит сообщение от notify-send, правда работает не очень стабильно. Погонял вместе с включеной аськой во время активной переписки. Как-то пока не очень.
digiwhite 07.02.10 21:00 # +0
B связана эта фигня с тем, что pidgin отправляет данные на туже dbus шину и такую туеву хучу данных, что скрипт впадает в тупняк.
booley 07.02.10 21:00 # +0
Это ж будет такие вопли :)
В смысле, много сообщений, если он будет каждое зачитывать... может только заголовок?
digiwhite 07.02.10 21:01 # +0
Сообщения от pidgi`на игнорятся. Но пиджин, сцуко, столько данных шлет что скрипт просто начинает виснуть на время.
booley 07.02.10 21:07 # +0
(o_O)
Чем пробуешь парсить?
digiwhite 07.02.10 21:14 # +0
Да грепом там фильтруется да и все. Щас выложу скрипт.
digiwhite 07.02.10 19:06 # +0
Кстати неплохо было бы перекинуть пост в блог "Есть вопрос".
exelens 07.02.10 19:26 # +0
Готово
digiwhite 07.02.10 21:52 # +0
Вот что получилось. Будет по крайней мере куда вам посмотреть.

Лучшие блоги (все 102)
Топ пользователей Топ блогов
Топ пользователей Топ блогов
Элита (все 2069 из 157 городов)
Топ пользователей Топ блогов

Новенькие: mwChief, Aysenhorn, d3m, msk.pro, vessi
welinux.ru

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн