Есть конфиг файл для freeswitch
<include>
<extension name="public_did_10012345">
<condition field="destination_number" expression="^(10012345)$">
</condition>
</extension>
<extension name="public_did_1002">
<condition field="destination_number" expression="^(1002)$">
<action application="transfer" data="$1 XML internet-trunks-1002"/>
</condition>
</extension>
<extension name="public_did_1003">
<condition field="destination_number" expression="^(1003)$">
<action application="transfer" data="$1 XML internet-trunks-1003"/>
</condition>
</extension>
<extension name="public_did_1004">
<condition field="destination_number" expression="^(1004)$">
<action application="transfer" data="$1 XML internet-trunks-1004"/>
</condition>
</extension>
<extension name="public_did_1005">
<condition field="destination_number" expression="^(1005)$">
<action application="transfer" data="$1 XML internet-trunks-1004"/>
</condition>
</extension>
</include>
Т.е нужно сконвертить этот XML в несложную структурку чтобы удобно работать со значениями указав индексы. Залез в модуль XML::DOM но там такого нет или я не могу его готовить. Или посоветуйте как эффективно решить данную задачу.
Может быть и парсер не нужен.
на выходе нужно получить файл со строками вида
internet-trunks-1004;1004,1005
internet-trunks-1003;1003
internet-trunks-1002;1002
;10012345