hs.notify
Этот модуль позволяет создавать всплывающие уведомления на экране в центре уведомлений пользователя, расположенном справа от экрана пользователя.
Уведомления могут быть отправлены немедленно или запланированы на более позднее время, даже если это запланированное время происходит, когда Hammerspoon в данный момент не работает. В настоящее время, если вы предпримете действие по уведомлению, когда Hammerspoon не работает, функция обратного вызова не выполняется для первого щелкнутого уведомления — ожидается, что эта проблема будет исправлена в будущей версии.
При настройке функции обратного вызова у вас есть возможность указать её при создании уведомления (hs.notify.new) или предварительно зарегистрировать её с помощью hs.notify.register и затем сослаться на неё по имени тега, указанному с hs.notify.register. Если вы используете этот метод регистрации для определения своих функций обратного вызова и убедитесь, что регистрируете все ожидаемые функции обратного вызова в файле init.lua или файлах, которые он включает, то функции обратного вызова останутся доступными для существующих уведомлений в центре уведомлений пользователя, даже если конфигурация Hammerspoon перезагружается или Hammerspoon перезапускается. Если тег обратного вызова отсутствует, когда пользователь взаимодействует с уведомлением, консоль Hammerspoon будет поднята как действие по умолчанию.
Для быстрых и простых информационных уведомлений без лишних функций предоставляется сокращенная запись, основанная на первоначальном вдохновении для этого модуля от Hydra и Mjolnir, hs.notify.show.
Этот модуль частично основан на коде предыдущей версии Mjolnir от Steven Degutis.
Обзор API
- Константы — полезные значения, которые нельзя изменить
- Переменные — настраиваемые значения
- Функции — API-вызовы, предлагаемые непосредственно расширением
- deliveredNotifications
- register
- scheduledNotifications
- unregister
- unregisterall
- withdrawAll
- withdrawAllScheduled
- Конструкторы — API-вызовы, которые возвращают объект, обычно объект, предлагающий API-методы
- Методы — API-вызовы, которые можно выполнить только на объекте, возвращенном конструктором
- actionButtonTitle
- activationType
- actualDeliveryDate
- additionalActions
- additionalActivationAction
- alwaysPresent
- alwaysShowAdditionalActions
- autoWithdraw
- contentImage
- delivered
- getFunctionTag
- hasActionButton
- hasReplyButton
- informativeText
- otherButtonTitle
- presented
- response
- responsePlaceholder
- schedule
- send
- setIdImage
- soundName
- subTitle
- title
- withdraw
- withdrawAfter
Документация API
Константы
activationTypes
| Подпись | hs.notify.activationTypes[] |
|---|---|
| Тип | Константа |
| Описание |
Удобный массив возможных типов активации уведомления и их обратных для справки. |
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1315 |
defaultNotificationSound
| Подпись | hs.notify.defaultNotificationSound |
|---|---|
| Тип | Константа |
| Описание |
Строковое представление стандартного звука уведомления. Используйте |
| Источник | extensions/notify/libnotify.m строка 1503 |
Переменные
registry
| Подпись | hs.notify.registry[] |
|---|---|
| Тип | Переменная |
| Описание |
Таблица, содержащая зарегистрированные функции обратного вызова и их теги. |
| Примечания |
|
| Источник | extensions/notify/notify.lua строка 253 |
warnAboutMissingFunctionTag
| Подпись | hs.notify.warnAboutMissingFunctionTag |
|---|---|
| Тип | Переменная |
| Описание |
Значение, указывающее, должно ли отсутствие тега функции уведомления вызывать предупреждение. По умолчанию равно |
| Источник | extensions/notify/notify.lua строка 50 |
Функции
deliveredNotifications
| Подпись | hs.notify.deliveredNotifications() -> table |
|---|---|
| Тип | Функция |
| Описание |
Возвращает таблицу, содержащую доставленные уведомления. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
myNotification = hs.notify.new():send()
clearCheck = hs.timer.doEvery(10, function()
if not hs.fnutils.contains(hs.notify.deliveredNotifications(), myNotification) then
if myNotification:activationType() == hs.notify.activationTypes.none then
print("You dismissed me!")
else
print("A regular action occurred, so callback (if any) was invoked")
end
clearCheck:stop() -- either way, no need to keep polling
clearCheck = nil
end
end)
|
| Источник | extensions/notify/libnotify.m строка 212 |
register
| Подпись | hs.notify.register(tag, fn) -> id |
|---|---|
| Тип | Функция |
| Описание |
Регистрирует функцию обратного вызова с заданным тегом для уведомления. Функция обратного вызова будет вызвана, когда пользователь нажмёт или взаимодействует с уведомлением. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/notify.lua строка 178 |
scheduledNotifications
| Подпись | hs.notify.scheduledNotifications() -> table |
|---|---|
| Тип | Функция |
| Описание |
Возвращает таблицу, содержащую запланированные, но еще не доставленные уведомления. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 259 |
unregister
| Подпись | hs.notify.unregister(id|tag) |
|---|---|
| Тип | Функция |
| Описание |
Отменяет регистрацию функции обратного вызова, так что она больше не доступна в качестве обратного вызова при взаимодействии с уведомлениями, соответствующими указанной записи. |
| Параметры |
|
| Возвращает |
|
| Исходный код | extensions/notify/notify.lua строка 212 |
unregisterall
| Подпись | hs.notify.unregisterall() |
|---|---|
| Тип | Функция |
| Описание |
Отменяет регистрацию всех функций, зарегистрированных в качестве обратных вызовов. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/notify.lua строка 239 |
withdrawAll
| Подпись | hs.notify.withdrawAll() |
|---|---|
| Тип | Функция |
| Описание |
Удаляет все доставленные уведомления из Hammerspoon |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/libnotify.m строка 177 |
withdrawAllScheduled
| Подпись | hs.notify.withdrawAllScheduled() |
|---|---|
| Тип | Функция |
| Описание |
Удаляет все запланированные уведомления из Hammerspoon |
| Параметры |
|
| Возвращает |
|
| Исходный код | extensions/notify/libnotify.m строка 196 |
Конструкторы
new
| Подпись | hs.notify.new([fn,][attributes]) -> notification |
|---|---|
| Тип | Конструктор |
| Описание |
Создает новый объект уведомления |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/notify.lua строка 60 |
show
| Подпись | hs.notify.show(title, subTitle, information[, tag]) -> notification |
|---|---|
| Тип | Конструктор |
| Описание |
Упрощённый конструктор для создания и отображения простых уведомлений |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/notify.lua строка 140 |
Методы
actionButtonTitle
| Подпись | hs.notify:actionButtonTitle([buttonTitle]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получение или установка метки кнопки действия уведомления |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/libnotify.m строка 555 |
activationType
| Подпись | hs.notify:activationType() -> number |
|---|---|
| Тип | Метод |
| Описание |
Возвращает, как пользователь активировал уведомление. |
| Параметры |
|
| Возвращает |
|
| Исходный код | extensions/notify/libnotify.m строка 1255 |
actualDeliveryDate
| Подпись | hs.notify:actualDeliveryDate() -> number |
|---|---|
| Тип | Метод |
| Описание |
Возвращает дату и время доставки уведомления |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Исходный код | extensions/notify/libnotify.m строка 1273 |
дополнительныеДействия
| Подпись | hs.notify:additionalActions([actionsTable]) -> notificationObject | table |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить дополнительные действия, которые будут отображаться для уведомления типа предупреждения, когда пользователь нажимает и удерживает кнопку действия предупреждения. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1104 |
дополнительноеДействиеАктивации
| Подпись | hs.notify:additionalActivationAction() -> string | nil |
|---|---|
| Тип | Метод |
| Описание |
Возвращает дополнительное действие, выбранное пользователем из уведомления типа предупреждения, для которого доступны дополнительные действия. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1165 |
всегдаОтображать
| Подпись | hs.notify:alwaysPresent([alwaysPresent]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, должно ли уведомление отображаться даже если это переопределяет процесс принятия решений Центра уведомлений. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 673 |
всегдаОтображатьДополнительныеДействия
| Подпись | hs.notify:alwaysShowAdditionalActions([state]) -> notificationObject | boolean |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, должно ли уведомление предупреждения всегда отображать альтернальное меню действий. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 950 |
автоматическоеЗакрытие
| Подпись | hs.notify:autoWithdraw([shouldWithdraw]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, должно ли уведомление автоматически закрываться после активации. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 767 |
изображениеСодержимого
| Подпись | hs.notify:contentImage([image]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить изображение содержимого уведомления. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/notify.lua строка 273 |
доставлено
| Подпись | hs.notify:delivered() -> bool |
|---|---|
| Тип | Метод |
| Описание |
Возвращает, было ли уведомление доставлено в Центр уведомлений. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/notify/libnotify.m строка 1213 |
получитьТегФункции
| Подпись | hs.notify:getFunctionTag() -> functiontag |
|---|---|
| Тип | Метод |
| Описание |
Возвращает имя тега функции, который будет вызван уведомлением при активации. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 737 |
иметьКнопкуДействия
| Подпись | hs.notify:hasActionButton([hasButton]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить наличие кнопки действия в уведомлении. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 637 |
hasReplyButton
| Подпись | hs.notify:hasReplyButton([state]) -> notificationObject | boolean |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, отображается ли в уведомлении кнопка «Ответить» для дополнительного ввода пользователя. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 912 |
informativeText
| Подпись | hs.notify:informativeText([informativeText]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить информативный текст уведомления |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/notify/libnotify.m строка 518 |
otherButtonTitle
| Подпись | hs.notify:otherButtonTitle([buttonTitle]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить метку другой кнопки уведомления |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 596 |
presented
| Подпись | hs.notify:presented() -> bool |
|---|---|
| Тип | Метод |
| Описание |
Возвращает, решил ли Центр уведомлений пользователя отобразить уведомление |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1192 |
response
| Подпись | hs.notify:response() -> string | nil |
|---|---|
| Тип | Метод |
| Описание |
Получить ввод пользователя из уведомления типа «всплывающее окно» с кнопкой «Ответить». |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1076 |
responsePlaceholder
| Подпись | hs.notify:responsePlaceholder([string]) -> notificationObject | string |
|---|---|
| Тип | Метод |
| Описание |
Установить строку-заполнитель для уведомлений типа «всплывающее окно» с кнопкой «Ответить». |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 1035 |
schedule
| Подпись | hs.notify:schedule(date) -> notificationObject |
|---|---|
| Тип | Метод |
| Описание |
Планирует доставку уведомления в будущем. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 346 |
send
| Подпись | hs.notify:send() -> notificationObject |
|---|---|
| Тип | Метод |
| Описание |
Немедленно отправляет уведомление в Центр уведомлений пользователя. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 312 |
setIdImage
| Подпись | hs.notify:setIdImage(image[, withBorder]) -> notificationObject |
|---|---|
| Тип | Метод |
| Описание |
Установить идентификационную картинку уведомления (заменить значок Hammerspoon пользовательской картинкой) |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/notify.lua строка 309 |
soundName
| Подпись | hs.notify:soundName([soundName]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить звук для уведомления |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 811 |
Подзаголовок
| Подпись | hs.notify:subTitle([subtitleText]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить подзаголовок уведомления |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/notify/libnotify.m строка 481 |
Заголовок
| Подпись | hs.notify:title([titleText]) -> notificationObject | current-setting |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить заголовок уведомления |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/notify/libnotify.m строка 444 |
Вывод
| Подпись | hs.notify:withdraw() -> notificationObject |
|---|---|
| Тип | Метод |
| Описание |
Выводит доставленное уведомление из Центра уведомлений. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/notify/libnotify.m строка 406 |
Вывод через
| Подпись | hs.notify:withdrawAfter([seconds]) -> notificationObject | number |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить количество секунд, по истечении которых уведомление автоматически удаляется. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/notify/libnotify.m строка 992 |
© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.notify.html