@events.notificationотменить нельзя4 методаКогда на экране появляется уведомление клиента: своё, чужого модуля или отправленное скриптом.
Клиент сообщает о происходящем плашками: строкой в Dynamic Island, табличкой под прицелом, маленьким окошком с иконкой предмета. Это событие ловит их все.
Отсюда удобно вести свой журнал происходящего, дублировать важное в другое место или собирать статистику: сколько раз клиент ругался за сессию.
Своё уведомление, отправленное через notify, тоже сюда прилетит. Если в обработчике снова позвать notify, получится бесконечный круг.
| Метод | Возвращает | Зачем |
|---|---|---|
getStyle() | str | Где показано: island, crosshair, mini, irc |
getType() | str | Окраска: success, error, info |
getTitle() | str | Заголовок, если он есть у этого вида |
getText() | str | Текст уведомления |
journal = []
@events.notification
def on_notification(event):
journal.append("%s: %s" % (event.getType(), event.getText()))
if len(journal) > 20:
del journal[0]
# красное уведомление стоит заметить, даже если смотришь в другую сторону
if event.getType() == "error":
client.overlay("ошибка: " + event.getText())Общий список всех событий и правила подписки лежат на странице События.