0
Answered

Read XML file over network_RU

Евгений Лешкив 6 years ago in Tips and Tricks updated by Aleksandr Romanov (CTO) 3 years ago 4
Добрый день!
На объекте есть АВ-ресивер, который хранит свой статус (входы, громкость и пр.) в XML файле на своем IP (192.168.0.5/Status.xml) и обновляет его при изменении.
Файл имеет следующую структуру:
<response>
<led0>2</led0>
<led1>2</led1>
<led2>0</led2>
<led3>0</led3>
<led4>0</led4>
<txt0>SRC:BLURAY HDMI1 NO</txt0>
<txt1>IN:</txt1>
<txt2>OUT:</txt2>
<txt3>VOLUME: -54.0dB</txt3>
</response>

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

Answer

-1
PINNED
Under review
Добрый день, Евгений!

Для получения данных в виде строки содержащей описание xml объекта, вам необходимо:

1. создать драйвер (скорее всего HTTP) с параметрами host: 192.168.0.5 port 80
http://wiki2.iridiummobile.ru/%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0_%D1%81_%D0%BE%D0%B1%D0%BE%D1%80%D1%83%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%D0%BC#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BD.D0.BE.D0.B2.D0.BE.D0.B3.D0.BE_.D1.83.D0.BF.D1....

2. послать команду GET, с указанием пути /Status.xml
http://wiki2.iridiummobile.ru/Drivers_API#Send

3. написать функцию для извлечения данных, записи их в каналы команд обратной связи и
http://wiki2.iridiummobile.ru/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B_%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_iRidium_Script#.D0.A0.D0.B0.D0.B1.D0.BE.D1.82.D0.B0_.D1.81_Xml

парсер
http://wiki2.iridiummobile.ru/IRidium_DDK#.D0.9F.D0.B0.D1.80.D1.81.D0.B5.D1.80_.28.D0.BE.D0.B1.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.87.D0.B8.D0.BA_.D0.B2.D1.85.D0.BE.D0.B4.D1.8F.D1.89.D0.B8.D1.85_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85.29

4. подписать эту функцию на событие получения тестовых данных
http://wiki2.iridiummobile.ru/Drivers_API#EVENT_RECEIVE_TEXT

Примером может послужить Yahoo погода с сайта:
https://s3.amazonaws.com/iridium2_downloads/Script_Drivers/Weather.zip

Общая информация по методам с драйверами:
http://wiki2.iridiummobile.ru/Drivers_API
http://wiki2.iridiummobile.ru/IRidium_DDK


GOOD, I'M SATISFIED
Быстро ответили и по делу.
Satisfaction mark by Евгений Лешкив 6 years ago
-1
Просмотрел много документации и примеров в интернете, но поскольку я не очень большой спец в программировании, не смог сам решить данную задачу. Прошу вас отвечать поподробнее.

Это будет драйвер для JBL Synthesys, может кому-то еще пригодится.

Заранее спасибо за ваши ответы и помощь.
-1
PINNED
Under review
Добрый день, Евгений!

Для получения данных в виде строки содержащей описание xml объекта, вам необходимо:

1. создать драйвер (скорее всего HTTP) с параметрами host: 192.168.0.5 port 80
http://wiki2.iridiummobile.ru/%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0_%D1%81_%D0%BE%D0%B1%D0%BE%D1%80%D1%83%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%D0%BC#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BD.D0.BE.D0.B2.D0.BE.D0.B3.D0.BE_.D1.83.D0.BF.D1....

2. послать команду GET, с указанием пути /Status.xml
http://wiki2.iridiummobile.ru/Drivers_API#Send

3. написать функцию для извлечения данных, записи их в каналы команд обратной связи и
http://wiki2.iridiummobile.ru/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B_%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_iRidium_Script#.D0.A0.D0.B0.D0.B1.D0.BE.D1.82.D0.B0_.D1.81_Xml

парсер
http://wiki2.iridiummobile.ru/IRidium_DDK#.D0.9F.D0.B0.D1.80.D1.81.D0.B5.D1.80_.28.D0.BE.D0.B1.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.87.D0.B8.D0.BA_.D0.B2.D1.85.D0.BE.D0.B4.D1.8F.D1.89.D0.B8.D1.85_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85.29

4. подписать эту функцию на событие получения тестовых данных
http://wiki2.iridiummobile.ru/Drivers_API#EVENT_RECEIVE_TEXT

Примером может послужить Yahoo погода с сайта:
https://s3.amazonaws.com/iridium2_downloads/Script_Drivers/Weather.zip

Общая информация по методам с драйверами:
http://wiki2.iridiummobile.ru/Drivers_API
http://wiki2.iridiummobile.ru/IRidium_DDK


Отлично. Спасибо большое. Займусь
Все получилось. Драйвер готов. Спасибо за помощь