Добрый день! Есть такой вопрос. Мне нужно знать (программно из php) установил ли пользователь приложение (работает ли), полученное по подписке. Существует ли такая возможность в API, если да, то какая? Я хотел получить программно (в php) информацию по станции. Для этого использовал такой запрос "http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=<колюч,полученный при оформлении подписки>". У меня не получилось, в чем ошибка?
#1
Отправлено 29 Июль 2016 - 10:38
#2
Отправлено 29 Июль 2016 - 11:41
AV-Desk 6.2 в другой ветке)
#3
Отправлено 29 Июль 2016 - 11:44
А по существу вопроса - насколько я понимаю, должно быть http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=ID_station
Подробности http://drweb.marganets.net:9080/esuite/include/languages/ru/help/xml_api/4_2_4.htm
#4
Отправлено 29 Июль 2016 - 11:52
AV-Desk 6.2 в другой ветке)
спасибо.
#5
Отправлено 29 Июль 2016 - 11:54
А по существу вопроса - насколько я понимаю, должно быть http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=ID_station
Подробности http://drweb.marganets.net:9080/esuite/include/languages/ru/help/xml_api/4_2_4.htm
Спасибо! С вопросом корректности запроса и получения ответа я разобрался. Но не понятно можно ли в принципе получить информацию установлено ли приложение у пользователя на текущий момент с помощью API.
#6
Отправлено 29 Июль 2016 - 12:50
API общается с сервером.
С агентом, опосредованно, через сервер, опять-таки.
Таким образом, если сервер знает про эту станцию, иными словами, если агент зарегистрирован на сервере, то вы, при помощи АПИ, получите такую информацию, если станция ни разу не подключалась или какие-то иные проблемы, то, нет.
Сообщение было изменено Kirill Polubelov: 29 Июль 2016 - 12:51
#7
Отправлено 29 Июль 2016 - 15:47
Я так понимаю, проблема в том, что запрашивающему известны какие-то данные о станции, но неизвестен присвоенный ей uuid. И сопоставить эти данные с uuid по-моему через xml api нельзя.
#8
Отправлено 01 Август 2016 - 09:42
Добрый день! Есть такой вопрос. Мне нужно знать (программно из php) установил ли пользователь приложение (работает ли), полученное по подписке. Существует ли такая возможность в API, если да, то какая? Я хотел получить программно (в php) информацию по станции. Для этого использовал такой запрос "http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=<колюч,полученный при оформлении подписки>". У меня не получилось, в чем ошибка?
А Вам принципиально пользоваться старым api 3.0?
#9
Отправлено 04 Август 2016 - 05:05
Но не понятно можно ли в принципе получить информацию установлено ли приложение у пользователя на текущий момент с помощью API.
Можно. По ID станции/подписки можно получить данные о станции и ее состоянии: http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=ID_station
В ответном XML у элемента '<station>' есть атрибут 'state'. State - текущие состояние агента:
•0 – станция не подключена (not logged in) к Серверу (не в сети).
•1 – станция подключена (logged in) к Серверу (в сети).
•2 – соединение со станцией разорвано.
•3 – Сервер перезагружается/завершает свою работу.
•4 – Агент своевременно не ответил на команду ping.
•5 – время ожидания выполнения команды истекло.
•6 – антивирусный пакет был удален.
•7 – на станцию успешно установлено антивирусное ПО с помощью установки по сети, но станция еще не подключалась к Серверу.
Также в ответе есть элемент '<os />' который содержит код и человекo-понятное название ОС на которой установлен агент. Если os code = 0, то агент не установлен. Можно ориентировать и на вложенные элементы '<lastseenat />' и '<lastseenfrom />', '<installed-components />' ели они не содержат значения, то агент не установлен.
Также вы можете воспользоваться нашим расширением для php: php-avdesk, которое реализует взаимодействие с сервером. Пример получения информации о станции:
<?php $avdesk = dwavd_init('192.168.1.3','9080', 'admin', '1234567890'); $st = dwavd_st_get_info($avdesk, 'ID_подписки'); $os = dwavd_st($st, 'os'); if($os == 0){ echo 'Not installed' } ?>
Сообщение было изменено Anton Dobkin: 04 Август 2016 - 05:12
#10
Отправлено 04 Август 2016 - 05:07
Добрый день! Есть такой вопрос. Мне нужно знать (программно из php) установил ли пользователь приложение (работает ли), полученное по подписке. Существует ли такая возможность в API, если да, то какая? Я хотел получить программно (в php) информацию по станции. Для этого использовал такой запрос "http://drweb.marganets.net:9080/api/3.0/stations/info.ds?id=<колюч,полученный при оформлении подписки>". У меня не получилось, в чем ошибка?
А Вам принципиально пользоваться старым api 3.0?
Для AV-Desk 6.2 - это актуальная версия
Also tagged with one or more of these keywords: API
Русские форумы →
Dr.Web Enterprise Suite →
Не могу найти функцию в APIАвтор: Shamaner , 25 окт 2020 api, program |
|
|
||
|
Русские форумы →
Общие вопросы →
PHP APIАвтор: busteg , 18 авг 2016 php, api |
|
|
Читают тему: 0
0 пользователей, 0 гостей, 0 скрытых