Содержание

Создание, редактирование и удаление элементов

Рассмотрим работу с элементами на примере создания, редактирования и удаления объекта. Принципы создания и удаления других элементов аналогичны рассмотренным ниже, а редактирование зависит от конкретного типа элемента.

:!: Внимание! Для запуска данного примера на Wialon Kit во всех запросах следует заменить https://hst-api.wialon.com на https://kit-api.wialon.com, а для входа в систему использовать логин и пароль своей учетной записи или логин и пароль демо-пользователя: kitdemo kitdemo.

Создание объекта

Создадим объект типа Wialon IPS с именем «ips_unit» при помощи запроса core/create_unit:

https://hst-api.wialon.com/wialon/ajax.html?svc=core/create_unit&
	params={
		"creatorId":50935,
		"name":"ips_unit",
		"hwTypeId":96266,
		"dataFlags":1
	}&sid=<your_sid>

Результат выполнения:

{
    "item": {
        "nm": "ips_unit",
        "cls": 2,
        "id": 652886,
        "uacl": -1
    },
    "flags": 1
}

Чтобы проверить, что объект действительно создался, выполним поиск объектов, название которых строго равно ips_unit:

https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_items&
	params={
		"spec":{
			"itemsType":"avl_unit",
			"propName":"sys_name",
			"propValueMask":"ips_unit",
			"sortType":"sys_name"
		},
		"force":1,
		"flags":1,
		"from":0,
		"to":0
	}&sid=<your_sid>

Результат выполнения:

{
    "searchSpec": {
        "itemsType": "avl_unit",
        "propName": "sys_name",
        "propValueMask": "ips_unit",
        "sortType": "sys_name",
        "propType": ""
    },
    "dataFlags": 1,
    "totalItemsCount": 1,
    "indexFrom": 0,
    "indexTo": 0,
    "items": [{
        "nm": "ips_unit",
        "cls": 2,
        "id": 652886,
        "uacl": -1
    }]
}

Поиск вернул результат, следовательно объект был создан.

Редактирование объекта

В качестве примера редактирования изменим у созданного объекта значение счетчика пробега.

Для того чтобы отследить изменение, выполним поисковый запрос и проверим начальное состояние счетчика. Для того чтобы результирующий JSON содержал значение счетчика, в запросе нужно установить флаг 0x00002000:

https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_item&
	params={
		"id":652886,
		"flags":8193
	}&sid=<your_sid>

Результат выполнения:

{
    "item": {
        "nm": "ips_unit",
        "cls": 2,
        "id": 652886,
        "cfl": 16,
        "cnm": 0,
        "cneh": 0,
        "cnkb": 0,
        "uacl": -1
    },
    "flags": 8193
}

Значение счетчика отображено в поле «cnm» и перед редактированием его значение равно 0.

Изменим значение счетчика пробега при помощи запроса unit/update_mileage_counter:

https://hst-api.wialon.com/wialon/ajax.html?svc=unit/update_mileage_counter&
	params={
		"itemId":652886,
		"newValue":456
	}&sid=<your_sid>

Результат выполнения:

{
    "cnm": 456
}

Проверим выполнение редактирования поиском объекта.

https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_item&
	params={
		"id":652886,
		"flags":8193
	}&sid=<your_sid>

Результат выполнения:

{
    "item": {
        "nm": "ips_unit",
        "cls": 2,
        "id": 652886,
        "cfl": 16,
        "cnm": 456,
        "cneh": 0,
        "cnkb": 0,
        "uacl": -1
    },
    "flags": 8193
}

Теперь значение поля «cnm» равно 456, следовательно редактирование прошло успешно.

Удаление объекта

Удалить объект можно запросом core/delete_item:

https://hst-api.wialon.com/wialon/ajax.html?svc=item/delete_item&
	params={
		"itemId":652886
	}&sid=<your_sid>

Результат выполнения:

{}

Проверить удаление можно выполнив поисковый запрос:

https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_item&
	params={
		"id":652886,
		"flags":1
	}&sid=<your_sid>

Результат выполнения:

{
    "error": 7
}