Як правильно налаштувати спливаючі повідомлення Skype під Ubuntu ~ The X News

Нарешті, новий Скайп підтримує оформлення Qt. Потроху програма стає більш-менш юзабельною, але косяків ще багато. Наприклад, коли вам надходять повідомлення в Linux'овий Скайп, вони з'являються десь збоку-знизу, що виглядає жахливо. Особливо в порівнянні з чудовою Ubunt'івською системою повідомлень Notify-OSD. Оскільки у мене за допомогою Notify-OSD усі в принципі повідомлення з'являються в красивих прозорих віконцях праворуч-згори, нерідний Skype особливо ріже око.
Якщо пошукати в інтернеті, то можна знайти пораду прописати в налаштуваннях щось на зразок notify-send -i skype '%sname' '%smessage' , але все одновиходить криво, тому що:
- Якщо вам прийдуть кілька повідомлень поспіль, вони будуть вискакувати по черзі з перервою 10 секунд, замість того щоб прикріплюватися до попереднього від того ж співрозмовника (див. скріншот). Довго. І можна пропустити щось важливе.
- Повідомлення вискакуватимуть навіть якщо у вас відкрито вікно чату, що просто безглуздо.
Спливаючі повідомлення Skype за допомогою Notify-OSD
- Встановіть програму для керування вікнами wmctrl та необхідні бібліотеки:
/bin/ повний шлях прописувати необов'язково)
PS: Ненавиджу Skype. Але доводиться ним користуватися, тому що багато хто думає інакше :(.
PPS: Також ви можете використовувати notify-append для будь-якої іншої програми, де потрібно приклеювати повідомлення один до одного використовуючикоманду:
UPD: Старе рішення
За посиланням вище – нове рішення, написане повністю на dbus. Раніше тут все було харкорніше: скрипта, один на Python - сервер, який підключається до Notify-OSD; Другий bash, який посилає серверу месаги зі скайпу :). Його ви можете завантажити тут - Завантажити Skype Notify Append. Тепер трохи про те, як це працювало раніше:
Повідомлення будуть прикріплюватися (merge) один до одного, тільки якщо викликати їх із однієї програми. Команда notify-send не працюватиме, оскільки її нова копія запускається при кожному виклику.
Тому запускається невеликий сервер на Python і починає слухати 8091 порт.
Python сервер це повідомлення парсит, і виводить через pynotify.
Раджу подивитися вихідні коди "сервера", може бути корисно, наприклад для створення web-інтерфейсів до Python програм.