Справочный центр Wialon

Объекты

В зависимости от указанных флагов формат ответа может различаться.

На этой странице описаны флаги, которые могут быть применены к объектам, и соответствующие им части результирующего JSON, которыми они управляют. Если указано несколько флагов, их соответствующие части объединяются в единый JSON.

Флаги объектов

К объектам могут быть применены следующие флаги:

Значение в HEX Значение в DEC Описание
0x00000001 1 Основные свойства (базовый флаг)
0x00000002 2 Произвольные свойства
0x00000004 4 Информация о биллинге
0x00000008 8 Общие произвольные поля
0x00000010 16 Изображение
0x00000020 32 Сообщения (только подписка)
0x00000040 64 GUID
0x00000080 128 Административные произвольные поля
0x00000100 256 Расширенные свойства
0x00000200 512 Команды, доступные в данный момент
0x00000400 1024 Последнее сообщение и местоположение
0x00000800 2048 Код водителя (устарело)
0x00001000 4096 Датчики
0x00002000 8192 Счетчики
0x00004000 16384 Маршруты (устарело)
0x00008000 32768 Техобслуживание
0x00010000 65536 Журналы объекта (устарело)
0x00020000 131072 Конфигурация объекта в отчетах: детектор поездок и расход топлива
0x00040000 262144 Все остальные настройки объекта: фильтрация валидности сообщений (устарело). Чтобы получить настройки фильтрации, используйте unit/get_messages_filter.
0x00080000 524288 Список всех возможных команд для этого объекта
0x00100000 1048576 Параметры сообщений
0x00200000 2097152 Состояние подключения объекта
0x00400000 4194304 Местоположение
0x00800000 8388608 Свойства характеристик
0x01000000 16777216 Задачи (только подписка)
0x3FFFFFFFFFFFFFFF 4611686018427387903 Установить все возможные флаги объекта. Передайте значение в виде строки или используйте -1.

Основные свойства

Флаг основных свойств — 0x00000001 (1).

Copied!
{
    "mu": <uint>,   /* Система измерения: 0 — СИ, 1 — американская, 2 — имперская, 3 — метрическая с галлонами */
    "nm": "<text>", /* Имя */
    "cls": <uint>,  /* ID суперкласса avl_unit, обычно 2 (см. ключ classes в ответе token/login) */
    "id": <uint>,   /* ID объекта */
    "uacl": <long>  /* Права доступа пользователя к этому объекту (64-битное значение) */
}

Произвольные свойства

Флаг произвольных свойств — 0x00000002 (2).

Объект prp содержит произвольные свойства, которые интерфейс Wialon и приложения сохраняют для объекта, поэтому набор ключей может различаться. Ниже перечислены наиболее распространенные ключи.

Copied!
{
    "prp": {                             /* Произвольные свойства */
        "img_rot": "<text>",             /* Поворот изображений: 1 - да, 0 - нет */
        "label_color": "<text>",         /* Цвет подписи к объекту: значение RGB в виде десятичного числа */
        "monitoring_sensor_id": "<text>",/* ID датчика, который будет отображаться в системе мониторинга */
        "motion_state_sensor_id": "<text>",/* ID датчика, используемого как источник состояния движения */
        "sensors_colors_id": "<text>",   /* ID датчика, используемого как источник цвета трека */
        "use_sensor_color": "<text>",    /* Использовать цвет датчика в системе мониторинга: 1 - да, 0 - нет */

        /* Используется один из параметров для выбора источника цвета трека */
        "sensors_colors": "<text>",      /* Таблица цветов для треков, окрашенных на основе значений датчика */
        "solid_colors": "<text>",        /* Однотонный цвет трека */
        "speed_colors": "<text>",        /* Таблица цветов для окрашивания треков на основе скорости */

        /* Хранение последних использованных цветов */
        "track_sensor": "<text>",        /* Таблица цветов для треков, окрашенных на основе значений датчика */
        "track_solid": "<text>",         /* Однотонный цвет трека */
        "track_speed": "<text>",         /* Таблица цветов для окрашивания треков на основе скорости */

        "monitoring_battery_id": "<text>"/* ID датчика, показывающего состояние батареи */
    },
    "ftp": {                             /* Настройки FTP (используются только для учетных записей) */
        "hs": "<text>",                  /* Хост (только если задан) */
        "lg": "<text>",                  /* Логин (только если задан) */
        "pt": "<text>",                  /* Путь к директории (только если задан) */
        "ch": <uint>,                    /* Валидность настроек FTP: 1 — да, 0 — нет */
        "tp": <uint>,                    /* Использовать FTP Wialon Hosting: 1 — да, 0 — нет */
        "fl": <uint>                     /* Доступность FTP Wialon Hosting: 1 — да, 0 — нет */
    },
    "ct": <uint>                         /* Время создания */
}

Цвет подписи к объекту

Произвольное свойство label_color хранит значение опции Цвет подписи к объекту. Цвет применяется к тексту подписи или к ее фону в зависимости от пользовательской настройки Использование цвета подписи к объекту.

Цвет хранится в виде десятичного числа, полученного из шестнадцатеричного кода RGB. Например, красный цвет (#FF0000) хранится как "16711680", а голубой (#42AAFF) — как "4369151". Не передавайте шестнадцатеричные строки, например "#42AAFF": сервер сохраняет значение без проверки, но цвет считывается как десятичное число.

Чтобы изменить цвет подписи, используйте метод item/update_custom_property:

Copied!
https://hst-api.wialon.com/wialon/ajax.html?svc=item/update_custom_property&params={"itemId":24568421,"name":"label_color","value":"4369151"}&sid=SESSION_IDENTIFIER
Ответ
Copied!
{
  "n": "label_color",
  "v": "4369151"
}

Информация о биллинге

Флаг информации о биллинге — 0x00000004 (4).

Copied!
{
    "crt": <uint>,    /* ID создателя */
    "bact": <uint>    /* ID учетной записи */
}

Произвольные поля

Флаг произвольных полей — 0x00000008 (8).

Copied!
{
    "flds": {                  /* Произвольные поля */    
        "<text>": {            /* ID произвольного поля */
            "id": <uint>,      /* ID */
            "n": "<text>",     /* Имя */
            "v": "<text>",     /* Значение */
            "ct": <uint>,      /* Время создания (Unix-время) */
            "mt": <uint>       /* Время последнего изменения (Unix-время) */
        },
        ...
    },
    "fldsmax": <long>          /* Максимальное количество произвольных полей, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие произвольные поля при этом все равно возвращаются */
}

Изображение объекта

Флаг изображения объекта — 0x00000010 (16).

Copied!
{
    "uri": "<text>",  /* Путь к изображению объекта на сервере. Чтобы получить изображение, добавьте его к адресу сервера Wialon */
    "ugi": <uint>     /* Количество изменений изображения */
}

Сообщения

Флаг сообщений — 0x00000020 (32).

Этот флаг не добавляет данные в ответ. Он подписывает сессию на новые сообщения объекта.

Чтобы использовать этот флаг, установите его для объекта с помощью метода core/update_data_flags. После этого каждое новое сообщение, зарегистрированное для объекта, передается как событие в avl_evts. Формат сообщения зависит от его типа и описан на странице messages.

Этот флаг рекомендуется комбинировать с флагом основных свойств 0x00000001 (1). Если использовать флаг сообщений отдельно, метод core/update_data_flags возвращает пустой объект d, из-за чего может показаться, что подписка не сработала.

GUID

Флаг GUID — 0x00000040 (64).

Copied!
{
    "gd": "<text>"   /* GUID объекта */
}

Административные поля

Флаг административных полей — 0x00000080 (128).

Copied!
{
    "aflds": {        /* Административные поля */
        "<text>": {   /* ID административного поля */
            "id": <uint>,   /* ID */
            "n": "<text>",  /* Имя */
            "v": "<text>",  /* Значение */
            "ct": <uint>,   /* Время создания (Unix-время) */
            "mt": <uint>    /* Время последнего изменения (Unix-время) */
        }
    },
    "afldsmax": <long> /* Максимальное количество административных полей, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие административные поля при этом все равно возвращаются */
}

Расширенные свойства

Флаг расширенных свойств — 0x00000100 (256).

Copied!
{
    "uid": "<text>",         /* Уникальный ID (устройства) */
    "uid2": "<text>",        /* Второй уникальный ID (устройства) */
    "hw": <long>,            /* Тип оборудования */
    "ph": "<text>",          /* Номер телефона */
    "ph2": "<text>",         /* Второй номер телефона */
    "psw": "<text>",         /* Пароль */
    "act": <uint>,           /* Состояние объекта: 1 — активен, 0 — деактивирован */
    "act_reason": <uint>,    /* Причина деактивации */
    "dactt": <uint>,         /* Время деактивации */
    "act_code": <text>,      /* Код активации. Пустая строка, если у объекта нет кода */
    "act_code_tme": <uint>,  /* Время истечения срока действия кода активации. 0, если у объекта нет кода */
    "vp": {...},             /* Состояние биллинга видео. null, если биллинг видео не настроен */
    "retr": {...},           /* Свойства ретрансляции. null, если они не заданы */
    "hch": {...}             /* Настройки диагностики */
}

Ключи этого флага требуют разных прав доступа:

Ключи Право доступа
uid, uid2, hw, ph, ph2, psw Просмотр настроек подключения
act, act_reason, dactt, act_code_tme, retr, hch Просмотр элемента и его основных свойств
vp Просмотр подробных свойств
act_code Управление кодами активации

Чтобы активировать или деактивировать объект, используйте unit/set_active.

Код активации описан на странице unit/get_billing_code, где act_code соответствует guid, а act_code_tme — tme. Содержимое объектов retr и hch описано на страницах unit/update_retranslation_property и unit/update_health_check.

В Wialon Local ключ hch доступен начиная с версии 2504.

Объект vp имеет следующий формат:

Copied!
{
    "packets": <int>,            /* Количество купленных пакетов трафика */
    "bytes_in": <long>,          /* Использованный видеотрафик, в байтах */
    "bytes_limit": <long>,       /* Лимит видеотрафика, в байтах */
    "hdd_used": <long>,          /* Использованное место в хранилище */
    "hdd_limit": <long>,         /* Лимит места в хранилище */
    "autopay": <int>,            /* Максимальное количество пакетов, автоматически покупаемых в месяц (-1 — без ограничений, 0 — автопокупка отключена) */
    "status_flags": <int>,       /* Флаги статуса биллинга видео */
    "available_traffic": <long>, /* Оставшийся видеотрафик, в байтах (-1 — без ограничений) */
    "status_ch_ts": <long>,      /* Время последнего изменения статуса (Unix-время) */
    "updated_at": <long>         /* Время последнего обновления (Unix-время) */
}

Для управления биллингом видео используйте методы unit/update_video_status, unit/add_video_packets и unit/update_video_autopay.

Доступные команды

Флаг доступных команд — 0x00000200 (512).

Copied!
{
    "cmds": [        /* Массив команд */
        {          
            "n": "<text>",  /* Имя */
            "a": <long>,    /* Уровень доступа (права доступа, которые должны быть у пользователя для выполнения этой команды) */
            "t": "<text>",  /* Типы связи, доступные для команды, через запятую: tcp, udp, gsm, vrt */
            "c": "<text>",  /* Тип команды */
            "p": "<text>",  /* Параметры. Пустая строка, если они не заданы */
            "jp": "<text>"  /* Параметры в формате JSON в виде текста. Пустая строка, если они не заданы */
        }
    ]
}

Массив cmds содержит только те команды, которые устройство может выполнить в данный момент. Коммуникационный сервер сообщает, какие типы команд устройство принимает в данный момент по каждому типу связи (tcp, udp, gsm, vrt). Команда исключается, если ее тип недоступен ни по одному типу связи. Она также исключается, если в ней задан определенный тип связи, а тип команды по этому типу связи недоступен. Поле t содержит все типы связи, по которым тип команды доступен в данный момент, даже если в команде задан определенный тип связи. Например, для команды с автоматическим типом связи (пустое значение l) поле t может иметь значение tcp,vrt. Чтобы получить все команды объекта, используйте метод unit/get_command_definition_data.

Типы команд и связи, а также параметры p и jp описаны на странице unit/update_command_definition. Доступные типы команд зависят от типа устройства. Список флагов доступа для объектов приведен в разделах Основное и Объекты и группы объектов на странице core/check_items_billing.

Последнее сообщение и местоположение

Флаг последнего сообщения и местоположения — 0x00000400 (1024).

Copied!
{
    "pos": {             /* Последнее известное местоположение. null, если у объекта нет сообщений с местоположением */
        "t": <uint>,     /* Время (UTC) */
        "f": <uint>,     /* Флаги сообщения с этим местоположением */
        "lc": <int>,     /* Контрольная сумма LBS-сообщения */
        "y": <double>,   /* Широта */
        "x": <double>,   /* Долгота */
        "z": <double>,   /* Высота */
        "s": <int>,      /* Скорость */
        "c": <int>,      /* Курс */
        "sc": <int>      /* Количество спутников */
    },
    "lmsg": {            /* Последнее известное сообщение. null, если у объекта нет сообщений */
        ...
    }
}

Возможные значения поля f перечислены в разделе Сообщения с данными.

Поля y, x и c отсутствуют, если местоположение получено из сообщения, зарегистрированного во время личной поездки, то есть если поле f содержит флаг 0x40000 (262144). Это происходит, когда у объекта есть датчик частного режима с активированной опцией Не показывать положение объекта. При этом значения полей не обнуляются, а сами поля отсутствуют в объекте pos.

Формат сообщения зависит от типа сообщения. Все типы описаны на странице messages.

Датчики

Флаг датчиков — 0x00001000 (4096).

Copied!
{
    "sens": {                     /* Датчики */
        "<text>": {               /* ID датчика */
            "id": <long>,         /* ID */
            "n": "<text>",        /* Имя */
            "t": "<text>",        /* Тип */
            "d": "<text>",        /* Описание */
            "m": "<text>",        /* Единица измерения */
            "p": "<text>",        /* Параметр */
            "f": <uint>,          /* Флаги датчика */
            "c": "<text>",        /* Конфигурация */
            "vt": <uint>,         /* Тип валидации */
            "vs": <long>,         /* ID датчика валидации */
            "tbl": [               /* Таблица расчета */
                {                 /* Параметры */
                    "x": <double>,
                    "a": <double>,
                    "b": <double>
                }
            ],
            "ct": <uint>,         /* Время создания (Unix-время) */
            "mt": <uint>          /* Время последнего изменения (Unix-время) */
        },
        ...
    },
    "sens_max": <long>            /* Максимальное количество датчиков, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие датчики при этом все равно возвращаются */
}

В Wialon Local поля ct и mt датчиков доступны начиная с версии 2304.

Флаги датчиков, типы датчиков и валидации, а также примеры конфигурации приведены на странице unit/update_sensor.

Счетчики

Флаг счетчиков — 0x00002000 (8192).

Copied!
{
    "cfl": <uint>,     /* Флаги расчета */
    "cnm": <uint>,     /* Счетчик пробега, км или мили в зависимости от системы измерения объекта */
    "cnm_km": <uint>,  /* Счетчик пробега, всегда в км */
    "cneh": <double>,  /* Счетчик моточасов, ч */
    "cnkb": <uint>     /* Счетчик GPRS-трафика, КБ */
}

Счетчик cnm переводится в мили, если у объекта выбрана американская или имперская система измерения. Счетчик cnm_km содержит то же значение, но всегда в км. Система измерения хранится в поле mu основных свойств.

Флаги расчета описаны на странице unit/update_calc_flags.

Техобслуживание

Флаг интервалов техобслуживания — 0x00008000 (32768).

Copied!
{
    "si": {                     /* интервалы техобслуживания */
        "<text>": {             /* ID интервала техобслуживания */
            "id": <uint>,       /* ID */
            "n": "<text>",      /* имя */
            "t": "<text>",      /* описание */
            "im": <uint>,       /* интервал пробега */
            "it": <uint>,       /* интервал дней */
            "ie": <uint>,       /* интервал моточасов */
            "pm": <uint>,       /* последнее ТО по интервалу пробега, км */
            "pt": <uint>,       /* последнее ТО по интервалу дней, сек (UTC) */
            "pe": <uint>,       /* последнее ТО по интервалу моточасов, ч */
            "c": <uint>,        /* количество выполненных ТО */
            "ct": <uint>,       /* время создания (Unix-время) */
            "mt": <uint>        /* время последнего изменения (Unix-время) */
        },
        ...
    },
    "simax": <long>             /* Максимальное количество интервалов техобслуживания, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие интервалы техобслуживания при этом все равно возвращаются */
}

Детектор поездок и расход топлива

Флаг детектора поездок и расхода топлива — 0x00020000 (131072).

Copied!
{
    "rtd": {                          /* Детектор поездок */
        "type": <uint>,               /* Тип определения движения */
        "gpsCorrection": <int>,       /* Разрешить GPS-коррекцию: 0 - нет, 1 - да */
        "minSat": <uint>,             /* Минимальное количество спутников */
        "minMovingSpeed": <uint>,     /* Минимальная скорость движения, км/ч */
        "minStayTime": <uint>,        /* Минимальное время стоянки, секунды */
        "maxMessagesDistance": <uint>,/* Максимальное расстояние между сообщениями, метры */
        "minTripTime": <uint>,        /* Минимальное время поездки, секунды */
        "minTripDistance": <uint>     /* Минимальное расстояние поездки, метры */
    },
    "rfc": {                          /* Расход топлива */
        "calcTypes": <uint>,          /* Тип расчета */
        "fuelLevelParams": {          /* Определение заправок и сливов */
            "flags": <uint>,              /* Флаги заправок и сливов */
            "ignoreStayTimeout": <uint>,  /* Игнорировать сообщения после начала движения, с */
            "minFillingVolume": <double>, /* Минимальный объем заправки, литры */
            "minTheftTimeout": <uint>,    /* Минимальное время стоянки для определения слива, с */
            "minTheftVolume": <double>,   /* Минимальный объем слива, литры */
            "filterQuality": <ubyte>,     /* Уровень фильтрации (0..255) */
            "fillingsJoinInterval": <uint>, /* Таймаут для объединения последовательных заправок, с */
            "theftsJoinInterval": <uint>,  /* Таймаут для объединения последовательных сливов, с */
            "extraFillingTimeout": <uint>  /* Таймаут для определения конечного объема заправки, с */
        },
        "fuelConsMath": {             /* Математический расчет */
            "idling": <double>,       /* Холостой ход, литров в час */
            "urban": <double>,        /* Городской цикл, литров на 100 км */
            "suburban": <double>      /* Загородный цикл, литров на 100 км */
        },
        "fuelConsRates": {            /* Расход по нормам */
            "consSummer": <double>,   /* Летний расход, литров на 100 км */
            "consWinter": <double>,   /* Зимний расход, литров на 100 км */
            "winterMonthFrom": <int>, /* Зима с (месяц: 0-11) */
            "winterDayFrom": <int>,   /* Зима с (день 1-31) */
            "winterMonthTo": <int>,   /* Зима по (месяц 0-11) */
            "winterDayTo": <int>      /* Зима по (день 1-31) */
        },
        "fuelConsImpulse": {          /* Импульсные датчики расхода топлива */
            "maxImpulses": <int>,     /* Максимальное количество импульсов */
            "skipZero": <int>         /* Пропускать первое нулевое значение */
        }
    }
}

Типы определения движения описаны на странице unit/get_trip_detector. Типы расчета расхода топлива, а также флаги заправок и сливов описаны на странице unit/get_fuel_settings.

Команды

Флаг команд — 0x00080000 (524288).

Copied!
{
    "cml": {                      /* Список команд */
        "<text>": {               /* ID команды */
            "id": <uint>,         /* ID */
            "n": "<text>",        /* Имя */
            "c": "<text>",        /* Тип */
            "l": "<text>",        /* Тип связи */
            "p": "<text>",        /* Параметры */
            "a": <long>,          /* Уровень доступа (права доступа, которые должны быть у пользователя для отправки этой команды) */
            "f": <uint>,          /* Флаги номера телефона: 0 - любой (сначала основной, затем дополнительный), 0x1 - основной, 0x2 - дополнительный */
            "jp": "<text>",       /* JSON-параметры (только если заданы) */
            "ct": <uint>,         /* Время создания (Unix-время) */
            "mt": <uint>          /* Время последнего изменения (Unix-время) */
        },
        ...
    },
    "cml_max": <long>             /* Максимальное количество команд, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие команды при этом все равно возвращаются */
}

Типы команд и связи описаны на странице unit/update_command_definition. Доступные типы команд зависят от типа устройства. Список флагов доступа для объектов приведен в разделах Основное и Объекты и группы объектов на странице core/check_items_billing.

Параметры сообщений

Позволяет использовать накопительную систему значений параметров сообщений. Параметры будут храниться в соответствующем разделе JSON-объекта, который будет хранить не только значения параметров из последнего сообщения, но и значения параметров из более ранних сообщений.

Флаг параметров сообщений — 0x00100000 (1048576).

Copied!
{
    "prms": {                   /* Список параметров сообщений */
        "<text>": {             /* Имя параметра */
            "v": <any>,         /* Значение параметра: число, строка или объект */
            "ct": <uint>,       /* Время последнего изменения значения */
            "at": <uint>        /* Время последнего сообщения с этим параметром */
        },
        ...
    }
}

Ключ prms отсутствует, если объект не отправлял сообщений. Если в сессии установлено ограничение на количество параметров, вместо этого ответ содержит пустой объект prms и "prms_total": 0 (см. Ограниченный список параметров).

Когда объект отправляет новое сообщение, сессия получает событие с параметрами этого сообщения в объекте prms. Если значение параметра не изменилось, событие содержит не полный объект, а только время сообщения:

Copied!
{
    "prms": {
        "<text>": <uint>  /* Имя параметра: время последнего сообщения с этим параметром */
    }
}

Ограниченный список параметров

Для объектов с большим количеством параметров, например для объектов с BLE-метками, полный список может быть очень большим. Чтобы получать только последние параметры, перед запросом данных установите ограничение с помощью метода core/set_prms_limit. Ограничение применяется ко всем объектам сессии.

При наличии ограничения ответ содержит не более указанного количества параметров — тех, которые пришли в последних сообщениях, полученных сервером. Поле prms_total содержит общее количество параметров объекта:

Copied!
{
    "prms": {               /* Последние параметры сообщений */
        "<text>": {       /* Имя параметра */
            "v": <any>,   /* Значение параметра: число, строка или объект */
            "ct": <uint>, /* Время последнего изменения значения */
            "at": <uint>  /* Время последнего сообщения с этим параметром */
        },
        ...
    },
    "prms_total": <uint>    /* Общее количество параметров сообщений объекта */
}

Ограничение меняет поведение сессии следующим образом:

  • Каждый запрос core/update_data_flags с флагом параметров сообщений в режиме 1 возвращает актуальный список последних параметров, даже если у объекта уже есть этот флаг в сессии.
  • События содержат все параметры нового сообщения, а не только те, которые были возвращены ранее, и количество этих параметров не ограничено. Каждый параметр всегда возвращается как полный объект с полями v, ct и at.
  • Сессия не получает полный список параметров, когда сервер его перестраивает. Чтобы получить актуальный список, повторите запрос core/update_data_flags.

Ограничение применяется только к объекту prms. Остальные данные объекта, например параметры последнего сообщения, возвращаются полностью.

Метод core/set_prms_limit недоступен в Wialon Local.

Подключение

Флаг состояния подключения объекта — 0x00200000 (2097152).

Copied!
{
    "netconn": <int>  /* Состояние подключения: 1, если у объекта есть активное TCP- или UDP-соединение, 0, если его нет */
}

Местоположение

Флаг местоположения объекта — 0x00400000 (4194304).

Copied!
{
    "pos": {             /* Последнее известное местоположение. null, если у объекта нет сообщений с местоположением */
        "t": <uint>,     /* Время (UTC) */
        "f": <uint>,     /* Флаги сообщения с этим местоположением */
        "lc": <int>,     /* Контрольная сумма LBS-сообщения */
        "y": <double>,   /* Широта */
        "x": <double>,   /* Долгота */
        "z": <double>,   /* Высота */
        "s": <int>,      /* Скорость */
        "c": <int>,      /* Курс */
        "sc": <int>      /* Количество спутников */
    }
}

Возможные значения поля f перечислены в разделе Сообщения с данными.

Поля y, x и c отсутствуют, если местоположение получено из сообщения, зарегистрированного во время личной поездки, то есть если поле f содержит флаг 0x40000 (262144). Это происходит, когда у объекта есть датчик частного режима с активированной опцией Не показывать положение объекта. При этом значения полей не обнуляются, а сами поля отсутствуют в объекте pos.

Свойства характеристик

Флаг свойств характеристик — 0x00800000 (8388608).

Copied!
{
    "pflds": {            /* Поля характеристик */
        "<text>": {       /* ID поля характеристик */
            "id": <uint>, /* ID */
            "n": "<text>",  /* Имя */
            "v": "<text>",  /* Значение */
            "ct": <uint>, /* Время создания (Unix-время) */
            "mt": <uint>  /* Время последнего изменения (Unix-время) */
        },
        ...
    },
    "pfldsmax": <long>    /* Максимальное количество полей характеристик, разрешенное тарифным планом учетной записи (-1 для неограниченного). Может быть равно 0, если услуги нет в тарифном плане; существующие поля характеристик при этом все равно возвращаются */
}

Задачи

Флаг задач — 0x01000000 (16777216).

В Wialon Local этот флаг доступен начиная с версии 2504.

Этот флаг не добавляет данные в ответ. Он подписывает сессию на новые сообщения объекта о задачах.

Чтобы использовать этот флаг, установите его для объекта с помощью метода core/update_data_flags. После этого каждое новое сообщение о задаче, зарегистрированное для объекта, передается как событие в avl_evts в следующем формате:

Copied!
{
    "i": <long>,             /* ID объекта */
    "t": "m",                /* Тип события: новое сообщение */
    "d": {
        "t": <int>,          /* Время сообщения */
        "f": <int>,          /* Флаги сообщения */
        "tp": "task",        /* Тип сообщения */
        "task_id": <text>,   /* ID задачи */
        "p": {}              /* Поля задачи */
    }
}

Объект p содержит поля задачи: статус, приоритет, ответственное лицо, комментарии и другие. Это те же поля, которые возвращает метод messages/get_task_messages.

Задача также передается как новое событие при каждом ее изменении, например при обновлении статуса или добавлении комментария. У такого события тот же task_id, что и у исходной задачи, а время сообщения t по-прежнему равно времени создания задачи. Время изменения указывается в параметре task_update_time. Чтобы хранить актуальное состояние задачи, заменяйте сохраненную задачу с тем же task_id на задачу из последнего события.

Для получения событий о задачах требуется право доступа Запрос сообщений и отчетов к объекту. Для остальных событий объекта достаточно права Просмотр элемента и его основных свойств. Кроме того, для учетной записи должна быть включена и активна услуга Задачи.

Этот флаг рекомендуется комбинировать с флагом основных свойств 0x00000001 (1). Если использовать флаг задач отдельно, метод core/update_data_flags возвращает пустой объект d, из-за чего может показаться, что подписка не сработала.

Если вы заметили ошибку в тексте, пожалуйста, выделите её и нажмите Ctrl+Enter.