Opened 11 months ago

Closed 11 months ago

Last modified 11 months ago

#619 closed улучшение (не будем делать)

Импорт конфигурации TDM из файла конфигурации блока

Reported by: san Owned by: alx
Priority: средний Milestone: 1 очередь
Component: sw Keywords:
Cc:

Description (last modified by san)

Предлагаю добавить в функцию импорта конфигурации TDM возможность импорта маппера из файла конфигурации блока (элемент <mapper/> в нем находится не в корневом элементе <cobfig/>, а в элементе <board/>, находящемся, в свою очередь, в корневом элементе <config/>).

Attachments (3)

config-Кушнаренково-07-06-2023(1).xml (14.8 KB ) - added by san 11 months ago.
config-export-tdm.xml (4.5 KB ) - added by alx 11 months ago.
ss1.jpg (71.1 KB ) - added by alx 11 months ago.

Download all attachments as: .zip

Change History (11)

by alx, 11 months ago

Attachment: config-export-tdm.xml added

by alx, 11 months ago

Attachment: ss1.jpg added

comment:1 by alx, 11 months ago

Resolution: invalid
Status: newclosed

Формат файла экспорта конфигурации TDM предполагает, что таблица коммутации каналов TDM содержится в элементе <mapper/>, который, в свою очередь, содержится в корневом элементе документа <config/>. Примерно так:

<?xml version="1.0" encoding="UTF-8"?>
<config>
  <mapper>9FUFAQACAAMAB.....HwAgACEAIg</mapper>
</config>

Пример реального файла конфигурации TDM, экспортированного из моего блока, прилагаю.

В файле же, config-Кушнаренково-07-06-2023(1).xml​, приложенном к этому тикету, я вижу следующее: в файле имеется корневой элемент <config/>, однако в корневом элементе <config/> нет дочернего элемента <mapper/>, содержащего таблицу коммутации TDM. Таким образом, таблица коммутации каналов в этом файле отсутствует.

Поиск по содержимому файла показал, что элемент <mapper/> в нем присутствует, но находится не в корневом элементе <config/>, а в элементе <board/>, находящемся, в свою очередь, в корневом элементе <config/>:

<?xml version="1.0" encoding="UTF-8"?>
<config>
  <board>
    <mapper>9FUFAQACAAMAB.....HwAgACEAIg</mapper>
  </board>
</config>

Таким образом, структура приложенного к тикету файла не соответствует требуемой. Предполагаю, что приложенный файл является файлом конфигурации всего блока, а не файлом экспорта/импорта конфигурации TDM.

При переносе элемента <mapper/> в приложенном файле из элемента <board/> в элемент <config/> (на уровень выше) после импорта модифицированного файла соединения каналов TDM присутствуют:


Last edited 11 months ago by alx (previous) (diff)

comment:2 by san, 11 months ago

Description: modified (diff)
Resolution: invalid
Status: closedreopened
Summary: Не работает импорт конфигурации TDMИмпорт конфигурации TDM из файла конфигурации блока
Type: багулучшение

Хм. Я по аналогии с импортом конфига плат, предполагал что Импорт TDM съест и "конфиг блока" в котором формат именно <config><board><mapper>.
Ладно, тогда переделаю тикет в предложение.

comment:3 by alx, 11 months ago

Resolution: не будем делать
Status: reopenedclosed

Обдумал предложенное улучшение.
Я считаю, что данное предложение внесет неоднозначность, так как в конфигурации блока может оказаться несколько разных элементов <mapper/>, и если применять первый попавшийся из них, это может оказаться совсем не то, чего ожидал пользователь.
Также не понимаю, в чем может быть польза от импорта документа, который для этого не предназначен (который не является экспортированными настройками TDM). Настройки TDM экспортируются нажатием одной кнопки - это даже проще, чем скачивание всей конфигурации блока (так как не требуется предварительно конфигурацию сохранять)... Наконец, даже если по каким-то непонятным причинам нельзя выполнить экспорт настроек TDM (блок взорвался, и от него остался только файл конфигурации?), нетрудно отредактировать файл текстовым редактором, перенеся нужный элемент <mapper/> в корень документа.

comment:4 by san, 11 months ago

в конфигурации блока может оказаться несколько разных элементов <mapper/>

А как это возможно? маппер ведь только один, если специально руками не добавлять, откуда второй маппер возьмётся?

Также не понимаю, в чем может быть польза от импорта документа, который для этого не предназначен.

Файл конфига блока всегда есть у пользователя(его всегда сохраняют для возможности восстановления) и довольно удобно иметь возможность импортировать из него всё что нужно, не залезая в редактирование ручками.

in reply to:  4 comment:5 by alx, 11 months ago

Replying to san:

в конфигурации блока может оказаться несколько разных элементов <mapper/>

А как это возможно? маппер ведь только один, если специально руками не добавлять, откуда второй маппер возьмётся?

Мир-то не стоит на месте. Даже если сегодня его нет, завтра кто-то может разработать новую плату или усовершенствовать существующую, в результате чего какие-то данные конфигурации платы будут сохраняться в элементе с именем "mapper".

И, кстати, даже сейчас, когда элемент <mapper/>, наверное, есть только в конфигурации платы SW-01 (я это специально не проверял), в блоке ведь может быть установлено две платы SW-01! Хотя, наверное, конфиг в них будет один и тот же - если честно, я не помню, как у нас реализована синхронизация коммутации на низком уровне...

comment:6 by san, 11 months ago

Насколько я помню, в конфиге основной платы не хранится маппер резервной.

Мир-то не стоит на месте

Думаю в таком случае разумно было бы уметь импортировать маппер из SW-01 а в другие платы не смотреть.
Конечно когда-нибудь появится SW-02...

Ну и замечу что сейчас сообщение диалога о том что импорт успешен не соответствует действительности.

in reply to:  6 comment:7 by alx, 11 months ago

Replying to san:

Ну и замечу что сейчас сообщение диалога о том что импорт успешен не соответствует действительности.

Было бы лучше, если бы ты создал по этому поводу тикет и описал там подробности.

Note: See TracTickets for help on using tickets.