To create, edit or delete notifications, use the command resource/update_notification:
svc=resource/update_notification¶ms={"itemId":<long>, "id":<long>, "callMode":<text>, "n":<text>, "txt":<text>, "ta":<uint>, "td":<uint>, "ma":<uint>, "mmtd":<uint>, "cdt":<uint>, "mast":<uint>, "mpst":<uint>, "cp":<uint>, "fl":<uint>, "tz":<int>, "la":<text>, "un":[<long>], "sch":{ "f1":<uint>, "f2":<uint>, "t1":<uint>, "t2":<uint>, "m":<uint>, "y":<uint>, "w":<uint> }, "trg":{ "t":<text>, "p":{ <text>:<text>, ... } }, "act":[ { "t":<text>, "p":{ <text>:<text>, ... } } ]}
Название | Описание |
---|---|
itemId | resource ID |
id | notification ID |
callMode | action: create, update, delete |
Parameters required only for create and update: | |
n | name |
txt | text of notification |
ta | activation time (UNIX format) |
td | deactivation time (UNIX format) |
ma | maximal alarms count (0 - unlimited) |
mmtd | maximal time interval between messages (seconds) |
cdt | timeout of alarm (seconds) |
mast | minimal duration of alert state (seconds) |
mpst | minimal duration of previous state (seconds) |
cp | period of control relative to current time (seconds) |
fl | notification flags (see below) |
tz | time zone |
la | user language (two-lettered code) |
un | array units IDS |
sch | time limitation |
f1 | beginning of interval 1 |
f2 | beginning of interval 2 |
t1 | ending of interval 1 |
t2 | ending of interval 2 |
m | days of month mask |
y | months mask |
w | days of week mask |
trg | control t – control type (see Control types) p – parameters parameter name: value |
act | actions t – action type (see Action types) p – parameters parameter name: value |
Notification flags:
Flag | Description |
---|---|
0x0 | notification triggers for first message |
0x1 | notification triggers for every message |
0x2 | notification is disabled |
On create and edit:
[ <long>, /* notification ID */ { "id":<long>, /* notification ID */ "n":<text>, /* name */ "txt":<text>, /* text of notification */ "ta":<uint>, /* activation time (UNIX format) */ "td":<uint>, /* deactivation time (UNIX format) */ "ma":<uint> /* maximal alarms count (0 - unlimited) */ "mmtd":<uint>, /* maximal time interval between messages (seconds) */ "cdt":<uint>, /* timeout of alarm (seconds) */ "mast":<uint>, /* minimal duration of alert state (seconds) */ "mpst":<uint>, /* minimal duration of previous state (seconds) */ "cp":<uint>, /* period of control relative to current time (seconds) */ "fl":<uint> /* notification flags (see abowe) */ "tz":<int> /* time zone */ "la":<text>, /* user language (two-lettered code) */ "ac":<uint>, /* alarms count */ "sch":{ /* time limitation */ "f1":<uint>, /* beginning of interval 1 (minutes from midnight) */ "f2":<uint>, /* beginning of interval 2 (minutes from midnight) */ "t1":<uint>, /* ending of interval 1 (minutes from midnight) */ "t2":<uint>, /* ending of interval 2 (minutes from midnight) */ "mdm":<uint>, /* days of month mask [1: 2^0, 31: 2^30] */ "ymm":<uint>, /* months mask [Jan: 2^0, Dec: 2^11] */ "wdm":<uint> /* days of week mask [Mon: 2^0, Sun: 2^6] */ }, "un":[<long>], /* array units GUIDS */ "act":[{ /* actions */ "t":<text>, /* action type (see below) */ "p":{ /* parameters - parameter name: value */ <text>:<text>, ... } }], "trg":{ /* control */ "t":<text>, /* control type (see below)я */ "p":{ /* parameters - parameter name: value */ <text>:<text>, ... } } } ]
On delete:
[ <long>, /* notification ID */ null ]
Code | Value |
---|---|
1 | invalid session |
2 | invalid service name |
3 | invalid result |
4 | invalid format or value of parameters |
6 | - notification with current ID doesn't exist - error deleting notification |
7 | - access denied - service is not activated |
{ "t":"email", /* action type */ "p":{ "email_to":<text>, /* e-mail address */ "html":<text>, /* use HTML tags: 0 - no, 1 - yes */ "img_attach":<text>, /* attach image from notification: 1 - yes, 0 - no */ "subj":<text> /* text of message */ } }
{ "t":"sms", /* action type */ "p":{ "phones":<text> /* list of phone numbers (semicolon-separated) */ } }
{ "t":"message", /* action type */ "p":{ "name":<text> /* name of notification */ } }
{ "t":"event", /* action type */ "p":{ "flags":<text> /* register as: 0 - event, 1 - violation */ } }
{ "t":"exec_cmd", /* action type */ "p":{ "link":<text>, /* link type */ "name":<text>, /* command name */ "param":<text> /* parameters */ } }
{ "t":"user_access", /* action type */ "p":{ "acc_level":<text>, /* access rights */ "users":<text> /* list of users GUIDs (comma-separated) */ } }
Access rights are described in chapter Get access level.
{ "t":"counter", /* action type */ "p":{ "engine_hours":<text>, /* engine hours counter value */ "flags":<text>, /* counter flags (see below) */ "mileage":<text>, /* mileage counter value */ "traffic":<text> /* GPRS traffic counter value */ } }
Counter flags:
{ "t":"store_counter", /* action type */ "p":{ "engine_hours":<text>, /* name of parameter for engine hours counter */ "flags":<text>, /* flags (see below) */ "mileage":<text> /* name of parameter for mileage counter */ } }
Flags:
{ "t":"status", /* action type */ "p":{ "ui_text":<text> /* status */ } }
{ "t":"group_manipulation", /* action type */ "p":{ "add_to":<text>, /* add to specified groups (comma-separated GUIDs) */ "remove_from":<text> /* exclude from specified groups (comma-separated GUIDs) */ } }
{ "t":"email_report", /* action type */ "p":{ "user":<text>, /* user GUID */ "report_object_guid":<text>, /* GUID of item for report */ "report_object_id":<text>, /* ID of subitem (0 - if report executed for item) */ "report_guid":<text>, /* resource GUID */ "report_id":<text>, /* template ID */ "time_from":<text>, /* beginning of time interval */ "time_to":<text>, /* ending of time interval */ "flags":<text>, /* interval flags */ "file_type":<text>, /* file format: html, pdf, xls, xlsx, xml, csv */ "email_to":<text>, /* e-mail address */ "pack":<text>, /* compress report files: 1 - yes, 0 - no */ "params":<text>, /* report configuration (xml) */ "lang":<text>, /* two-lettered language code */ "subj":<text> /* subject */ } }
Interval flags are described in the chapter Reports: Execute report.
{ "t":"route_control", /* action type */ "p":{ "name":<text>, /* route name */ "descr":<text>, /* description */ "flags":<text>, /* route flags */ "act_time":<text>, /* activation time */ "zone_id":<text> /* geofence ID */ } }
Route flags are described in the chapter Routes: create, edit, delete.
{ "t":"drivers_reset", /* action type */ "p":{} }
"trg":{ "t":"geozone", /* control type */ "p":{ "geozone_ids":<text>, /* list of geofences IDs (comma-separated) */ "lower_bound":<text>, /* sensor value from */ "max_speed":<text>, /* maximal speed, km/h */ "merge":<text>, /* similar sensors: 0 - calculate separately, 1 - sum up values */ "min_speed":<text>, /* minimal speed, km/h */ "reversed":<text>, /* trigger: 0 - in specified range, 1 - out of specified range */ "sensor_name_mask":<text>, /* sensor name mask */ "sensor_type":<text>, /* sensor type */ "type":<text>, /* check type: 0 - control entries to a geofence, 1 - control exits from a geofence */ "upper_bound":<text> /* sensor value to */ } }
"trg":{ "t":"speed", /* control type */ "p":{ "lower_bound":<text>, /* sensor value from */ "max_speed":<text>, /* maximal speed, km/h */ "merge":<text>, /* similar sensors: 0 - calculate separately, 1 - sum up values */ "min_speed":<text>, /* minimal speed, km/h */ "reversed":<text>, /* trigger: 0 - in specified range, 1 - out of specified range */ "sensor_name_mask":<text>, /* sensor name mask */ "sensor_type":<text>, /* sensor type */ "upper_bound":<text> /* sensor value to */ } }
"trg":{ "t":"alarm", /* control type */ "p":{} }
"trg":{ "t":"digital_input", /* control type */ "p":{ "input_index":<text>, /* digital input (1-32) */ "type":<text> /* check type: 0 - check for activation, 1 - check for deactivation */ } }
"trg":{ "t":"msg_param", /* control type */ "p":{ "kind":<text>, /* type of parameter control */ "lower_bound":<text>, /* parameter value from */ "param":<text>, /* parameter name */ "text_mask":<text>, /* text mask */ "type":<text>, /* trigger: 0 - trigger in specified range, 1 - trigger out of specified range */ "upper_bound":<text> /* parameter value to */ } }
Types of parameter control:
"trg":{ "t":"sensor_value", /* control type */ "p":{ "lower_bound":<text>, /* sensor value from */ "merge":<text>, /* similar sensors: 0 - calculate separately, 1 - sum up values */ "sensor_name_mask":<text>, /* sensor name mask */ "sensor_type":<text>, /* sensor type */ "type":<text>, /* trigger: 0 - in specified range, 1 - out of specified range */ "upper_bound":<text> /* sensor value to */ } }
"trg":{ "t":"outage", /* control type */ "p":{ "time":<text>, /* time interval, sec */ "type":<text> /* control type: 0 - coordinates loss, 1 - connection loss */ } }
"trg":{ "t":"speed", /* control type */ "p":{ "lower_bound":<text>, /* sensor value from */ "max_speed":<text>, /* maximal speed, km/h */ "merge":<text>, /* similar sensors: 0 - calculate separately, 1 - sum up values */ "min_idle_time":<text>, /* minimal idle time, min */ "min_speed":<text>, /* minimal speed, km/h */ "reversed":<text>, /* trigger: 0 - in specified range, 1 - out of specified range */ "sensor_name_mask":<text>, /* sensor name mask */ "sensor_type":<text>, /* sensor type */ "upper_bound":<text> /* sensor value to */ } }
"trg":{ "t":"sms", /* control type */ "p":{ "mask":<text> /* SMS text mask */ } }
"trg":{ "t":"interposition", /* control type */ "p":{ "lower_bound":<text>, /* sensor value from */ "max_speed":<text>, /* maximal speed, km/h */ "merge":<text>, /* similar sensors: 0 - calculate separately, 1 - sum up values */ "min_speed":<text>, /* minimal speed, km/h */ "radius":<text>, /* radius, m */ "reversed":<text>, /* trigger: 0 - in specified range, 1 - out of specified range */ "sensor_name_mask":<text>, /* sensor name mask */ "sensor_type":<text>, /* sensor type */ "type":<text>, /* check type: 0 - control approaching to units, 1 - control moving away from units */ "unit_guids":<text>, /* GUIDs of control units (comma-separated) */ "upper_bound":<text> /* sensor value to */ } }
"trg":{ "t":"route_control", /* control type */ "p":{ "mask":<text>, /* route name mask */ "types":<text> /* types of route control (comma-separated) */ } }
Types of route control:
"trg":{ "t":"driver", /* control type */ "p":{ "driver_code_mask":<text>, /* driver code mask */ "flags":<text> /* control type: 1 - driver assignment, 2 - driver reset */ } }
"trg":{ "t":"service_intervals", /* control type */ "p":{ "days":<text>, /* days interval */ "engine_hours":<text>, /* engine hours interval, h */ "flags":<text>, /* maintenance control flags */ "mask":<text>, /* wildcard based mask */ "mileage":<text>, /* mileage interval, km */ "val":<text> /* notify when: 1 - service term approaches:, -1 - service term is expired: */ } }
Maintenance control flags: