= Шаблоны оповещений = Поля "Шаблон сообщения" и "Получатель" имеют возможность включать в текст сообщения или адрес получателя информацию о событии, либо системную информацию, доступную на момент обработки оповещения. Для этого предназначены специальные макропеременные. При отправке сообщения, макропеременные заменяются на их значения. Синтаксис для макроподстановки: {{{ %(name)s }}} где name - имя переменной для подстановки. === Информация о событии === Значения переменных зависят от типа события. Если переменная не применима к определенному типу события, ее значение будет пустым. || event.name || имя события || || event.timestamp || дата и время события || || event.timestamp.iso || дата и время события в формате ISO8601 (YYYY-MM-DD HH:MM:SS) || || event.timestamp.eur || дата и время события в формате DD.MM.YYYY HH:MM:SS || || event.point.lat || географическая широта места события, градусы || || event.point.lng || географическая долгота места события, градусы || || event.point.speed || скорость объекта в момент события, км/ч || || event.point.address || адрес ориентиров вблизи события || || event.geozone.name || имя контрольной зоны, имеющей отношение к событию || || event.sender || отправитель сообщения (для событий "Входящее сообщение") || || event.object.name || имя объекта, относящегося к событию || || event.object.is_actual || актуальность последних данных телеметрии || || event.object.is_link_up || состояние связи с объектом || || event.object.is_moving || наличие движения || || event.object.last_point.lat || географическая широта последней путевой точки, градусы || || event.object.last_point.lng || географическая долгота последней путевой точки, градусы || || event.object.last_point.speed || скорость в последней путевой точке, км/ч || || event.object.last_point.address || адрес близлежащих ориентиров || || event.object.in_geozones || список контрольных зон, в которых в данный момент присутствует объект || || event.object.assigned_operators.first.name || имя контролирующего оператора, первого из списка || || event.object.assigned_operators.first.email || email контролирующего оператора, первого из списка || || event.object.assigned_operators.first.phone || телефон контролирующего оператора, первого из списка || === Информация о состоянии произвольных объектов === || objects[N].name || имя объекта || || objects[N].is_actual || актуальность последних данных об объекте || || objects[N].is_link_up || состояние связи с объектом || || objects[N].is_moving || последнее состояие объекта (движется или стоит) || || objects[N].in_geozones || список контрольных зон, в которых в данный момент присутствует объект || || objects[N].last_point.lat || географическая широта, градусы || || objects[N].last_point.lng || географическая долгота, градусы || || objects[N].last_point.speed || скорость, км/ч || || objects[N].last_point.address || адрес близлежащих ориентиров || || objects[N].assigned_operators.first.name || имя контролирующего оператора, первого из списка || || objects[N].assigned_operators.first.email || email контролирующего оператора, первого из списка || || objects[N].assigned_operators.first.phone || телефон контролирующего оператора, первого из списка || N - системный код объекта. Код объекта можно узнать в консоли оператора в свойствах выбранного объекта, либо в консоли администратора, если сделать видимым столбец с кодами объектов. == Обработка входящих сообщений == Система может не только отправлять, но принимать и обрабатывать сообщения от служб уведомлений. Это могут быть и SMS сообщения, и любые другие, для которых настроены соответствующие службы. Таким образом, появляется возможность реализовать сервис для предоставления информации по объектам, например, по SMS запросу. Для отправки ответного сообщения сервером в поле получателя может быть использована макропеременная event.sender, которая хранит реквизит (адрес или телефон) отправителя входящего сообщения. === Пример шаблона оповещения: === {{{ Привет, Время: %(event.timestamp.iso)s Двигаемся около: %(event.point.address)s Скорость: %(event.point.speed)s Объект: %(objects[1].name)s Актуальность данных: %(objects[1].is_actual)s Состояние объекта: %(objects[1].is_moving)s Скорость: %(objects[1].last_point.speed)s км/ч Широта: %(objects[1].last_point.lat)s Долгота: %(objects[1].last_point.lng)s Адрес: %(objects[1].last_point.address)s Геозоны: %(objects[1].in_geozones)s -- Sincerely Yourth, MonitorServer! }}}