Feature rich VoIP rates parser, cleaner and target analyzer
Выдержка из старой документации:
Для начала анализа необходимо:
-
На главной странице менеджера тарифов http://rates.domain.net/rateman/ зайти в добавление оператора и добавить там как минимум двух операторов
-
На этой же странице зайти в добавление тарифа и таргета и загрузить их из файлов
-
формат файлов на данный момент может быть только "код;наименование;цена", хотя поддержка других форматов есть, но ещё не включена
-
для конвертации файлов тарифов воспользуйтесь [Конвертер тарифов]
-
при загрузке тарифов, которые уже прописаны для оператора и которые отличаются по цене или наименованию, происходит закрытие действия данного тарифа вчерашним числом и прописывание нового тарифа с сегодняшнего числа
-
Далее необходимо зайти в саму форму анализа и указать:
-
Оператора, таргеты которого будут анализироваться
-
Операторов, тарифы которых будут анализироваться для поиска подходящих под таргеты тарифов;
-
для выбора нескольких операторов необходимо использовать стандартный приём: зажать клавишу Ctrl и выбирать кликом в списке нужных операторов
-
так же можно использовать зажатую клавишу Shift для выбора диапазона из списка
-
если не выбрать ни одного оператора, то будут использовать тарифы всех внесённых операторов
-
-
Исправить, если необходимо, дату действия тарифов; это может пригодится для поиска по старым тарифам оператора, которые уже закрыты какой-либо датой после загрузки новых (см. выше)
-
Определить коды или подкоды, по которым необходимо производить сравнение:
-
если не указывать код и не выбирать страну из списка, то будет произведен поиск по всем странам и подкодам таргетов выбранного оператора
-
можно ввести первые цифры направления или использовать специальную маску для поиска кодов (см. примеры ниже):
-
символ процента '%' - ноль и более любых цифр
-
символ 'подчеркивания' '_' - одна любая цифра
-
-
можно выбрать страну из списка для поиска тарифов под все таргеты, касающиеся направлений этой страны (при одновременном выборе страны и указывании первых цифр кода (см.выше), приоритет имеет вручную введённая маска кода)
-
при включении опции 'точное совпадение кода' будут выводится только точно совпадающие коды (см. примеры ниже)
-
-
Процент от цены тарифа используется как последний фильтр при поиске: цена тарифа увеличивается на этот процент и уже с ней сравнивается цена таргета (она должна быть больше или равна полученной цене); это, грубо говоря, наша прибыль, заложенная в цену тарифа
-
можно использовать нулевой процент для поиска тарифов 'в ноль'
-
можно использовать отрицательное значение процента для поиска цены тарифа, которая на данный процент выше цены таргета (для поиска потенциально подходящих тарифов, которые можно понизить при наличии трафика и т.п.)
-
-
Поиск подходящих тарифов без использования фильтров по стране или коду может занять длительное время, т.к. производится большое количество сравнений
Недоработки, известные на данный момент:
- Все ошибки пока выводятся в недостаточно понятной форме
Примеры поиска, используя различные варианты фильтра по коду (без учёта цены):
-
Код таргета: 7
-
Коды тарифа: 7, 79
-
Если не введён код направления и не выбрана страна, то будут найдены тарифы: 7 (опция 'точное совпадение кода' не используется)
-
Код таргета: 79
-
Коды тарифа: 7, 79
-
Если не введён код направления и не выбрана страна, то будут найдены тарифы: 7, 79
-
При использовании опции 'точное совпадение кода' будет выведен только код 79
Краткая инструкция по использованию конвертера тарифов
По адресу http://rates.domain.net/rateman/converter/ находится небольшая вспомогательная программа для конвертации и проверки тарифов в файлах.
Ей необходимо пользоваться в случаях:
-
Загрузки тарифов в биллинг
-
Загрузки тарифов в программу для анализа тарифов и таргетов
На данный момент она умеет делать следующее:
-
Remove spaces, tabs and other whitespaces
-
Remove english X and russian H from ranges
-
Remove empty values and redundant commas
-
Replace commas in price or volume fields with dot
-
Remove $ in prices..
-
If price can't be coverted to decimal change it to zero..
-
Transliterate russian area names
-
Expand ranges like N-M (including ranges with leading zeros)
-
For any kind of code arrays generate one code per raw
-
Check for non-empty fields, code and price to be ciphers
-
Remove any non-alphabet symbols from area name
-
Check for duplicates
-
Replace PSTN and proper with Fixed, cellular with Mobile
-
Make area name lowercased with each word's first letter capitalized
-
Reduce ranges like 79000-79999 to 79
-
Compact codes like 790,791..799 to 79 in output file
При загрузке файла необходимо выбрать порядок следования столбцов в файле, например:
-
код;наименование;цена (по умолчанию используется именно он)
-
наименование;код;цена
-
код;цена
Известные на данный момент недоработки:
-
В проверяемом файле не должно быть пустых строк
-
В проверяемом файле не должно быть лишних колонок (при конвертации производится автоматическое определение наличия колонки с подкодами [например:380;67;Ukraine вместо простого 38067;Ukraine], поэтому загружать необходимо файл с тремя или четырьмя колонками
-
На данный момент не производится выдача ошибок на экран, просто пишется, что произошла ошибка
Примечания:
- Файл для загрузки может быть только в формате CSV (comma separated values), для чего в MS Office необходимо сохраняеть его как типа CSV/DOS, в OpenOffice просто в формате CSV (при этом выбрав опцию 'Настройки фильтра') и уже при сохранении, в фильтре, выбирать разделителем точку с запятой и убирать кавычки как разделить текста