Конвертация и загрузка тарифов Телефонии в биллинг

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
Строка 20: Строка 20:
|}
|}
В справочнике карт зон создается карта Основная карта, в справочнике услуг модуля - услуги МГ и ВЗ связи.
В справочнике карт зон создается карта Основная карта, в справочнике услуг модуля - услуги МГ и ВЗ связи.
-
{|
 
-
|- valign=top
 
-
| [[Изображение:Phone_tariff_load_time_type.png|thumb|300px|Настройка типов времени]]
 
-
|}
 
-
 
-
 
Архив с программой конвертации: [[Медиа: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>
........
Личные инструменты