Конвертация и загрузка тарифов Телефонии в биллинг
Материал из BiTel WiKi
Admin (Обсуждение | вклад) |
Admin (Обсуждение | вклад) |
||
Строка 20: | Строка 20: | ||
|} | |} | ||
В справочнике карт зон создается карта Основная карта, в справочнике услуг модуля - услуги МГ и ВЗ связи. | В справочнике карт зон создается карта Основная карта, в справочнике услуг модуля - услуги МГ и ВЗ связи. | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
Архив с программой конвертации: [[Медиа:phone_tariff_convert.zip]] | Архив с программой конвертации: [[Медиа:phone_tariff_convert.zip]] | ||
Строка 33: | Строка 27: | ||
* phis.xml - тарифный план для физических лиц | * phis.xml - тарифный план для физических лиц | ||
* zone_map.xml - карта зон | * zone_map.xml - карта зон | ||
+ | |||
+ | Принцип конвертации - выделение из файла с тарифами уникальных комбинаций цен и создание на их основе зон тарификаций для биллинга. Формат справочника географических кодов и карты зон сложностей не представляет, остановимся подробнее на файле с тарифом. Рассмотрим фрагмент: | ||
+ | <source lang="xml"> | ||
+ | <?xml version="1.0" encoding="windows-1251"?> | ||
+ | <nodes> | ||
+ | <use_map id="1" title="Основная карта"/> | ||
+ | <config data="0;5;0:0:60"/> | ||
+ | <zone zone="R0;0;0;0"> | ||
+ | <service_set regexp="^8" sid="14"/> | ||
+ | <time_filter id="2" title="Выходные и праздники"> | ||
+ | <costout default="true" value="0"/> | ||
+ | </time_filter> | ||
+ | <time_filter id="1" title="Рабочее время"> | ||
+ | <costout default="true" value="0"/> | ||
+ | </time_filter> | ||
+ | </zone> | ||
+ | <zone zone="R3.36;3.36;3.36;3.36"> | ||
+ | <service_set regexp="^8" sid="14"/> | ||
+ | <time_filter id="2" title="Выходные и праздники"> | ||
+ | <costout default="true" value="3.36"/> | ||
+ | </time_filter> | ||
+ | <time_filter id="1" title="Рабочее время"> | ||
+ | <costout default="true" value="3.36"/> | ||
+ | </time_filter> | ||
+ | </zone> | ||
+ | ........ | ||
+ | </source> |
Версия 10:37, 7 июля 2008
Ставится задача сконвертировать МГ и ВЗ тарифы телефонии в формат, пригодный для загрузки биллингом. В качестве исходных данных - CSV файлы следующего формата (разделитель - точка с запятой):
<Направление>;<Префикс>;<Стоимость льготная юр. лица>;<Стоимость обычная физ. лица>;<Стоимость льготная физ. лица>;<Стоимость обычная физ. лица>;<Тип связи>
Пример фрагмента файла:
Самарская (mob) - Билайн;7961392;1,5;1,5;1,5;1,5;ВЗ связь Самарская (mob) - Билайн;7961391;1,5;1,5;1,5;1,5;ВЗ связь Самарская (mob) - Билайн;7961390;1,5;1,5;1,5;1,5;ВЗ связь "ОАО ""ВымпелКоммуникации""";7961381;1,5;1,5;1,5;1,5;ВЗ связь "ОАО ""ВымпелКоммуникации""";7961380;1,5;1,5;1,5;1,5;ВЗ связь Самарская (mob) - Билайн;7960850;1,5;1,5;1,5;1,5;ВЗ связь "ОАО ""ВымпелКоммуникации""";7960834;1,5;1,5;1,5;1,5;ВЗ связь Самарская (mob) - Билайн;7960809;1,5;1,5;1,5;1,5;ВЗ связь
Льготное и обычное время описывается в справочнике типов времени биллинга.
В справочнике карт зон создается карта Основная карта, в справочнике услуг модуля - услуги МГ и ВЗ связи.
Архив с программой конвертации: Медиа:phone_tariff_convert.zip Запускается Perl скрипт process.pl, генерирует в каталог result четыре файла:
- codes.txt - Файл для загрузки в справочкник географических кодов
- jur.xml - тарифный план для юридических лиц
- phis.xml - тарифный план для физических лиц
- zone_map.xml - карта зон
Принцип конвертации - выделение из файла с тарифами уникальных комбинаций цен и создание на их основе зон тарификаций для биллинга. Формат справочника географических кодов и карты зон сложностей не представляет, остановимся подробнее на файле с тарифом. Рассмотрим фрагмент:
<?xml version="1.0" encoding="windows-1251"?> <nodes> <use_map id="1" title="Основная карта"/> <config data="0;5;0:0:60"/> <zone zone="R0;0;0;0"> <service_set regexp="^8" sid="14"/> <time_filter id="2" title="Выходные и праздники"> <costout default="true" value="0"/> </time_filter> <time_filter id="1" title="Рабочее время"> <costout default="true" value="0"/> </time_filter> </zone> <zone zone="R3.36;3.36;3.36;3.36"> <service_set regexp="^8" sid="14"/> <time_filter id="2" title="Выходные и праздники"> <costout default="true" value="3.36"/> </time_filter> <time_filter id="1" title="Рабочее время"> <costout default="true" value="3.36"/> </time_filter> </zone> ........