Как я могу принудительно уведомить Growl о текущем треке iTunes?

3005
wemayfreeze

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

Я немного поковырялся, но не смог найти ответ "там".

Какие-нибудь мысли?

3

4 ответа на вопрос

3
wemayfreeze

Мой взломанный Applescript размещен ниже. Это соответствует выводу Growl iScrobbler. Спасибо The Tentacle за работу! Там информация о том, как установить Quicksilver запустить скрипт здесь .

tell application "GrowlHelperApp" -- Make a list of all the notification types -- that this script will ever send: set the allNotificationsList to {"iTunes Playing Track"} -- Make a list of the notifications -- that will be enabled by default. -- Those not enabled by default can be enabled later -- in the 'Applications' tab of the growl prefpane. set the enabledNotificationsList to {"iTunes Playing Track"} -- Register our script with growl. -- You can optionally (as here) set a default icon -- for this scripts notifications. register as application "Growl iTunes Notification" all notifications allNotificationsList default notifications enabledNotificationsList icon of application "iTunes"  set title_text to "Null" set body_text to "" set body_temp to "" set has_artwork to false  tell application "iTunes" if player state is playing then set trck to current track  if artworks of trck is not {} then get artwork 1 of trck set pic to data of result set has_artwork to true end if  set title_text to "Now Playing"  get name of trck set body_text to "Track: " & result  get rating of trck set rate to result / 20  repeat rate times set body_temp to body_temp & "★" end repeat  if rate is less than 5 then repeat (5 - rate) times set body_temp to body_temp & "☆" end repeat end if  set body_text to body_text & " (" & body_temp & ")" & return  get album of trck set body_text to body_text & "Album: " & result & return  get artist of trck set body_text to body_text & "Artist: " & result  end if end tell  if has_artwork then notify with name "iTunes Playing Track" title title_text description body_text application name "Growl iTunes Notification" pictImage the pic else notify with name "iTunes Playing Track" title title_text description body_text application name "Growl iTunes Notification" image from location "file:///Users/drewbeck/Library/Scripts/Custom/no_album.tiff" end if  

конец сказать

Не забывайте, что последнее «конец сказать». По какой-то причине он оказался вне поля кода ?! wemayfreeze 15 лет назад 0
Вы должны быть в состоянии отредактировать свое сообщение, чтобы получить этот последний статус в блоке кода? В любом случае, рад, что это помогло ... The Tentacle 15 лет назад 0
2
koenigdmj

Вам нужен плагин для iTunes. Вот.

GrowlTunes работает для получения уведомлений (как и iScrobbler, который я использую), но мне кажется, что он не позволяет мне явно указывать показывать уведомление, когда я хочу, только на «Измененных треках» или «Начал играть». " Итак, как я могу явно опрашивать iTunes (с GrowlTunes, iScrobbler или другим приложением) на предмет «Что играет»? wemayfreeze 15 лет назад 0
2
Orion751

Если вы предпочитаете формат, который предоставляет GrowlTunes, вы также можете создать скрипт, который использует его:

tell application "GrowlTunes" to show current track 
1
The Tentacle

Вы можете использовать для этого яблочный скрипт (не помню, откуда я это взял) - я компилирую его в приложение, запущенное Quicksilver, чтобы получать немедленное уведомление о том, что играет, когда я хочу, сохраняя iTunes минимизированным всегда:

рычание

 tell application "GrowlHelperApp" -- Make a list of all the notification types -- that this script will ever send: set the allNotificationsList to {"iTunes Playing Track"} -- Make a list of the notifications -- that will be enabled by default. -- Those not enabled by default can be enabled later -- in the 'Applications' tab of the growl prefpane. set the enabledNotificationsList to {"iTunes Playing Track"} -- Register our script with growl. -- You can optionally (as here) set a default icon -- for this scripts notifications. register as application "Growl iTunes Notification" all notifications allNotificationsList default notifications enabledNotificationsList icon of application "iTunes"  set title_text to "Nothing playing" set body_text to "" set has_artwork to false  tell application "iTunes" if player state is playing then set trck to current track  if artworks of trck is not {} then get artwork 1 of trck set pic to data of result set has_artwork to true end if  get name of trck set title_text to result  get time of trck set title_time to result set body_text to title_time & " =["  get rating of trck set rate to result / 20  repeat rate times set body_text to body_text & " ❤ "  end repeat  get artist of trck set body_text to body_text & "] ❧ " & result  get album of trck set body_text to body_text & " ⇒ " & result  end if end tell  if has_artwork then notify with name "iTunes Playing Track" title title_text description body_text application name "Growl iTunes Notification" pictImage the pic else notify with name "iTunes Playing Track" title title_text description body_text application name "Growl iTunes Notification" "iTunesLibraryPlaylistIcon.icns" end if  end tell 
Красивая. Я немного его взломал, чтобы вывод выглядел как вывод iScrobbler. Код размещен ниже. Много <3! wemayfreeze 15 лет назад 0

Похожие вопросы