Конвертация и загрузка тарифов Телефонии в биллинг
Материал из 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> ........


