Выполнение нескольких команд одновременно

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

В Wialon существует возможность объединить несколько команд в один запрос, и ответ на него будет представлен один общим JSON'ом.

Например нам нужно отправить онлайн уведомления нескольким пользователям. Если их немного, например 5, то можно отправить по запросу на каждого пользователя. Но если же пользователей десятки или сотни, удобнее будет объединить эти запросы в один.

Запросим всех пользователей на сервере Wialon Hosting видимых демо-пользователю wialon_test:

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

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

{
    "searchSpec": {
        "itemsType": "user",
        "propName": "sys_name",
        "propValueMask": "*",
        "sortType": "sys_name",
        "propType": ""
    },
    "dataFlags": 1,
    "totalItemsCount": 2,
    "indexFrom": 0,
    "indexTo": 0,
    "items": [{
        "nm": "test_6512789",
        "cls": 1,
        "id": 648548,
        "uacl": -1
    }, {
        "nm": "Trst 3467",
        "cls": 1,
        "id": 656124,
        "uacl": -1
    }]
}

На момент написания документации данному пользователю доступно два пользователя с ID 648548 и 656124. Отправим им онлайн уведомления, одним запросом при помощи команды core/batch. Отправлять уведомления пользователям можно при помощи команды user/update_user_notification, подробнее ее параметры и формат возвращаемого значения рассмотрены в разделе Отправка онлайн уведомлений пользователям.

https://hst-api.wialon.com/wialon/ajax.html?svc=core/batch&
	params=[{
		"svc":"user/update_user_notification",
		"params":{
			"h":"Hi there!",
			"d:"{\"body\":\"<span style=\\\"font-size:16px;color:green\\\">New notification with custom text format</span>
\",\"head\":{\"c\":52428,\"fs\":\"18\"}",
			"s":"",
			"ttl":1359015606,
			"itemId":648548,
			"id":0,
			"callMode":"create"
		}
	},{
		"svc":"user/update_user_notification",
		"params":{
			"h":"Hi there!",
			"d":";-)",
			"s":"",
			"ttl":1359015606,
			"itemId":656124,
			"id":0,
			"callMode":"create"
		}
	}]&sid=<your_sid>

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

[
    [1, {
        "id": 1,
        "t": 1359013247,
        "d": {\"body\":\"<span style=\\\"font-size:16px;color:green\\\">New notification with custom text format</span>
\",\"head\":{\"c\":52428,\"fs\":\"18\"}",
        "h": "Hi there!",
        "s": ""
    }],
    [1, {
        "id": 1,
        "t": 1359013247,
        "d": ";-)",
        "h": "Hi there!",
        "s": ""
    }]
]

Проверить получение уведомлений можно из графического интерфейса зайдя в систему под любым из пользователей-получателей.

Follow us on Facebook Gurtam Wialon Twitter Gurtam Wialon info@gurtam.com   |   Copyright © 2002-2024 Gurtam