«Граул» и протокол ГНТП
У меня тут «Граул» обновился на «Маке» и я краем глаза увидел, что появилась поддержка какого-то GNTP. Оказалось, что это сетевой протокол, который позволяет регистрировать свои приложения через сеть и слать в «Граул» свои уведомления.
«Граул», для тех кто не в курсе, программулина, которая позволяет различным сторонним программам формировать всплывающие уведомления в едином унифицированном виде. Кстати, существует и версия для «Виндоуз».
Включается поддержка ГНТП специальной галочкой в настройках, после чего можно отсылать свои уведомления. Там же можно задать и пароль, чтобы ни одна сволочь снаружи не смогла что-то вам прислать.
Протокол несложный и поддерживает три команды: можно зарегистрировать своё приложения и его типы сообщений, сформировать сообщение и подписаться на события. Для параноиков поддерживается ещё и шифрование (AES, DES или 3DES на выбор).
Прежде чем ваше приложение отошлёт сообщение, оно должно «зарегистрироваться» в «Грауле» — представиться и рассказать что за сообщения оно будет слать и как их оформлять. Ниже на скриншоте показан список зарегистрированных приложений, включая мой скрипт.
Я тут попробовал поработать с ГНТП из bash-скрипта, получилось удобоваримо, заодно вспомнил как работать с утилитой expect (можно было бы использовать netcat, но telnet плюс expect — интереснее и более гибко).
Увы, у expect под «Маком» какой-то баг с кодировкой UTF-8 — иногда русские буквы приходят в странном виде, не смог пока это побороть.
Внутри файла, в конце есть пример, который показывает как отослать сообщение и, в случае неудачи, попробовать сначала зарегистрировать своё приложение и потом отправить своё сообщение ещё раз:
# Пробуем отослать сообщение
cmd='GrowlSendNotify "" "" "Hello all!"'
eval $cmd || (
GrowlSendRegister && eval $cmd
)
Внутри моего скрипта есть ещё функция получения IP локальной машины, на самом деле она там лишняя — «Граул» слушает на всех адресах, но мне было интересно написать такую функцию.
Граул, ГНТП, Мак, Виндоуз
Но UTF-8, IP и, что самое главное, интерфейс OS X на английском
Определись, по-английски писать названия нормально или по-русски :)
Комментарий для .silent:
Я уже определился. У меня есть определённая стратегия. Например заметьте, что все английские названия написаны наклонно.
Интерфейс «Мака» у меня на русском. Интерфейс программы «Граул» — на английском, другого языка там нет.
Комментарий для .silent:
Мне интересно, почему это вам самым главным кажется. Предположим, что он у меня на английском был бы. И что?
Комментарий для Евгения Степанищева:
Никак не соберусь купить новый Growl. А теперь, в связи с введением уведомлений в новой OS X, и не знаю -- стоит ли? Что посоветуете, Евгений?
Комментарий для profiles.google.com/jankkhvej:
Думаю, всё-таки следует подождать. Возможно, что с появлением новой версии «Граул» помрёт. Да и не назвать «Граул» суперполезным. Я его использую в связке с «Альфредом» ( http://www.alfredapp.com/ ), у меня написано несколько плагинов (например, переводчик), которые выводят уведомления на экран как раз через «Граул».
Комментарий для Евгения Степанищева:
Спасибо!
Комментарий для Евгения Степанищева:
Транскрибированные названия ломают глаз и делают трудным поиск контента из поисковиков.
Комментарий для .silent:
Что же вам Нью-Йорк, Кока-Кола, Ниссан или Дженифер Лопез глаз не ломают, а тут он у вас, вдруг, сломался?
Вы в 21-м веке живёте: https://www.google.com/search?client=opera%26rls=ru%26q=%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%BE%D1%84%D1%82%26sourceid=opera%26ie=utf-8%26oe=utf-8%26channel=suggest
Комментарий для Евгения Степанищева:
Если посмотреть на хттпс://ввв.гугл.ком/сёрч по слову «Граул», найти в результатах что-то по теме этого приложения довольно сложно (кроме этой статьи)
https://www.google.com/search?client=opera%26rls=ru%26q=%D0%93%D1%80%D0%B0%D1%83%D0%BB%26sourceid=not-opera%26ie=utf-8%26oe=utf-8%26channel=suggest
Нью-Йорк и Дженифер Лопез глаз не ломают, а Кока-Кола и Ниссан — ломают, но не сильно, потому что уже заежжено и приелось.
Ломает глаз больше всего смесь из транскрибированных и обычных названий, потому что черт его знает, какое название на странице искать, Opera или Опера, AES или АЕС :)
Сокращения транскрибировать — вообще рак мозга, я считаю. Откуда такое, зачем?
ГНТП? Почему тогда не ТПОГ (транспортный протокол оповещения Граул) ?
Комментарий для .silent:
А оно надо? В моей статье есть ссылка. Значит через некоторое время Гугл будет находить.
Мне кажется, вы лукавите.
Постепенно обычный названий будет больше, а латинских — меньше и проблема отпадёт.
Не транскрибировать сокращения — вот рак мозга. Мешать латиницу и кириллицу — тоже рак мозга. Я готов поспорить вы не пишите вместо «ФБР» FBI или вместо «ЦРУ» CIA. А почему? Только потому что одни сокращения старше других?
А почему «Протокол Транспортный Нотификаций Граула» (ПТНГ)? Или ещё как-то так? Ровно потому что написания пока нет, а я его ввожу.
Я тоже споткнулся об ГНТП в заголовке.
Комментарий для efix.livejournal.com:
Смотрите: ФБР, ЦРУ. Ну как, не спотыкаетесь?
Комментарий для Евгения Степанищева:
Не спотыкаюсь, потом что ФБР — Федеральное бюро расследований, ЦРУ — Центральное разведывательное управление. А ГНТП — Граул нэтворк нотификэйшн протокол? УТФ-8 — У(ю)никод трансформэйшн формат?
Да ладно вам!
Комментарий для Sain:
ГНТП — Граула Нотификаций Транспортный Протокол.
УТФ-8 — Уникода Трансформаций Формат-8.
Да неважно, на самом деле. Вы когда видите «ФБР» не расшифровываете его в уме, я уверен, просто воспринимаете как слово.
Евгений, не сердись.
Если люди говорят, что им что-то неудобно, не надо убеждать их в обратном.
Да, это твой блог, ты имеешь полное право писать так как тебе хочется. Я ни в коем случае ничего не хочу предъявлять.
Воспринимай это как «отзывы пользователей».
Комментарий для efix.livejournal.com:
Так я и не сержусь.
Надо, конечно. Большинство путает неудобное и непривычное.
Ага. Звучит. :)
Да, воспринимаю как слово. Но я знаю, что у этого «слова», как у любой рождённой «естественным» путём аббревиатуры, есть смысл, оно подчиняется общим правилам русского языка и расшифровки «нескольких написаных подрях заглавных букв». А когда вижу ГНТП, я в жизни не догадаюсь, что это надо сначала транслитерировать в английские буквы и уже только тогда расшифровывать как обычную аббревиатуру.
Конечно, вы можете писать как вам угодно.
Комментарий для Sain:
А чем вам не нравится предложенная мной расшифровка-то?