События в скриптах

Чтобы подписаться на события в системном журнале, нужно использовать activate_on_events()

def f(ev):
    message("Случилось %s" % ev.type)
activate_on_events("", "", f)
activate_on_events("Motion Start", "", f)
activate_on_events("", "Камера 1", f)

Первым параметром можно задать фильтр по типу событий. Возможные типы событий можно посмотреть в редакторе правил. Вторым параметром можно задать фильтр по имени или идентификатору объекта. Оба фильтра могут быть заданы одновременно.

Внутри события можно найти тип события, время, объект от которого пришло событие, а также параметры p1, p2, p3.

def f(ev):
    message("Случилось %s" % ev.type)
    message("Идентификатор объекта %s" % ev.origin)
    message("Имя объекта %s" % ev.origin_object.name)
    message("Время %s" % time.strftime("%H:%M:%S %d.%m.%Y",
        time.localtime(ev.ts/1000000)))
activate_on_events("", "", f)

С объектом origin_object можно работать как с любым другим объектом.

Параметры p1, p2, p3 используются в зависимости от типа события. Например событие "Login Successful, %1 from %2" имеет два параметра, которые можно найти в p1 и p2.