|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (68)
просмотр истории страницы... |
| h1. Описание возможностей |
| В *Carbon Billing 5* по оператору связи возможно тарифицировать несколько видов взаиморасчетов: |
| * Начисления по агентской схеме входящего и исходящего трафика * Расчет завершения вызова и расчет инициирования вызова * Транзитный трафик |
| * Услуги входящей связи * Услуги исходящей связи * Услуги транзита трафика * Факт совершения вызова по всем типам трафика(инициирования и завершения вызова), количество звонков |
| |
| {info} Для расчёта инициирования и завершения вызова по времени звонков, а не по количеству совершенных вызовов воспользуйтесь [конструктором отчётов|Конструктор отчетов]. {info} |
| h1. Настройка услуг операторов |
| Оператор связи для обсчета звонка выбирается по транкам. В звонке должны быть заполнены поля: |
| Если транк у звонка задан, но оператор не найден - звонок считается ошибочным. Если транк в звонке не задан, это вызовет некритичную ошибку операторских взаиморасчетов. |
| * *SRC_CHAN* \- транк источника * *DST_CHAN* \- транк назначения |
| |
| {note} При пустых полях SRC_CHAN и DST_CHAN звонок не будет посчитан у оператора связи. {note} |
| Чтобы начать обсчет звонков на оператора связи, нужно: |
| # Создать операторов в папке "Операторы связи" \\ \\ !telephony_partner_isp_list.png|border=1!\\ \\ |
| # Включить [опцию|Глобальные настройки биллинга и оператора#Телефония] "*Взаиморасчеты телефонии: сторона А по DST*" # Создать [операторов-партнёров|Агентские схемы и ведение филиалов#Создание оператора связи] в папке "Операторы связи" !telephony_partner_isp_list.png|border=1! |
| # Создать [услуги|Услуги. IP Телефония] необходимых [типов|Тип трафика] |
| # [Загрузить в них услуги цены|Использование экспорта и импорта csv и xlsx файлов с тарифами VOIP. Загрузка цен] на направления |
| # Подключить операторам |
| # Подключить услуги вашему оператору и операторам-партнёрам |
| |
| {info}Если требуется разделить в акте направления звонков по нескольким услугам (например, междугородний или международный трафик) , это можно сделать по статье "[CarbonBilling:Местная связь, Внутризоновая связь, Междугородняя и международная (дальняя) связь|CarbonBilling:Местная связь, Внутризоновая связь, Междугородняя и международная (дальняя) связь]"{info} |
| h2. Начисления по агентской схеме, расчет завершения вызова и расчет инициирования вызова |
| +Исходящие вызовы абонентов+ прошедшие с Вашей [номерной ёмкости|Пулы телефонных номеров] на транк другого оператора учитываются как +исходящие по агентской схеме+, а так же для расчета +инициирования вызова+ |
| +Входящие вызовы абонентов+ прошедшие на Вашу [номерную ёмкость|Пулы телефонных номеров] с транка другого оператора учитываются как +входящие по агентской схеме+, а так же для расчета +завершения вызова+ |
| {note}Услугу с типом "*Входящий*" необходимо создать и заполнить в ней встречающиеся в _CDR_ направления даже если вы не тарифицируете завершение вызова{note} |
| {note} Услугу с типом "*Входящий*" необходимо создать и заполнить в ней направления, даже если вы не тарифицируете завершение вызова. {note} |
| |
| # Создайте услуги IP телефонии по инструкции "[CarbonBilling:Услуги. IP Телефония]", необходимо создать +две услуги+: с [типом трафика|CarbonBilling:Тип трафика] "Исходящий"и "Входящий" (статья "[CarbonBilling:Тип трафика]") "Входящий". |
| #* *Исходящий*: необходима для расчетов по агентской схеме и расчета инициирования вызова #* *Входящий*: необходима для расчета завершения вызова |
| # [Загрузите в них цены на направления|Использование экспорта и импорта csv и xlsx файлов с тарифами VOIP. Загрузка цен] |
| # Подключить эти услуги оператору, указав маску транка или несколько масок через запятую. |
| Имя транка может содержать любой текст, но если в нем задано 2 целых числа через дефис, то при поиске транк будет проверяться на вхождение в этот промежуток. Транк может содержать и произвольные символы, не только числа. \\ \\ !telephony_partner_ist_edit_trunk.png|border=1,width=1000!\\ \\ Пример: {code}100-200,301,#01{code} В диапазон будут попадать транки с 100 по 200 (включительно), 301 и #01 {info} Вы так же можете указать маску транка, используя регулярное выражение из двух знаков (точка и звездочка). Например: {code} RTK-.* {code} Для данной маски транка подойдут все значения, начинающиеся с *RTK-* {info} \\ \\ {info} Если в качестве транка написать слово *default* , то это будет оператор по умолчанию для всех остальных транков не отнесенных к кому-либо из операторов. {info} {note} В звонке обязательно должны быть заполнены поля SRC_CHAN и DST_CHAN. При пустых полях звонок не будет посчитан у оператора связи. {note} |
| !telephony_partner_ist_edit_trunk.png|border=1,width=1000! # Набор услуг телефонии будет выглядеть так: |
| #* Ваши услуги телефонии |
| \\ \\ !telephony_partner_ist_services.png|border=1,width=1000!\\ \\ |
| !telephony_partner_ist_services.png|border=1,width=1000! |
| #* Услуги телефонии партнера |
| \\ \\ !telephony_partner_neighbor_services.png|border=1,width=1000! |
| !telephony_partner_neighbor_services.png|border=1,width=1000! |
| |
| Трафик будет посчитан у оператора-партнёра. В вашем операторе связи расход будет пустым. Настройка услуг телефонии в вашем операторе связи необходима для корректной работы выбора оператора связи для расчёта. |
| h2. Транзитный трафик |
| Транзитным считается трафик прошедший через Вашу сеть, но не относящийся к Вашей номерной ёмкости. |
| Транзитным считается трафик прошедший через Вашу сеть, но не относящийся к Вашей [номерной ёмкости|Пулы телефонных номеров]. Прохождение через Вашу сеть определяется по транкам, которые должны быть настроены в услугах телефонии у операторов-партнёров (от кого и кому идет транзитный звонок). Вызовы пришедшие на транки Ваших партнёров, отразятся у них в расходе. |
| Вызовы пришедшие на транки Ваших партнёров, отразятся у них в расходе. |
| |
| h3. Настройте оборудование |
| # Настройте оборудование. В настройках NAS [включите опцию|Настройка VOIP NAS#Дополнительно] "*Через АТС проходят транзитные звонки*" # Настройте услуги. Для тарификации транзитного трафика абонентов необходимо [создать услугу телефонии|Услуги. IP Телефония] с типом "[Транзит|Тип трафика]". !1.png|border=1,width=400! # Загрузите в услугу [цены на направления|Использование экспорта и импорта csv и xlsx файлов с тарифами VOIP. Загрузка цен]. # Подключите услуги операторам-партнёрам. Заполните поле *"Маска trunk"*, значение соответствует маске оператора из CDR. Пример cdr: {code} 71110000001;72220000002;2018-02-12 10:00:00;2018-02-12 10:04:08;248;248;subscribers;Operator1 {code} !2.png|border=0,width=600! |
| |
| По статье [Настройка VOIP NAS] в настройках NAS [включите опцию|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=52789501#НастройкаVOIPNAS-Дополнительно] "*Через АТС проходят транзитные звонки*" |
| h2. Описание опций и параметров |
| |
| h3. Настройте услуги |
| * [Опция|Глобальные настройки биллинга и оператора#Телефония] "*Взаиморасчеты телефонии: сторона А по DST*" - при расчете звонка у оператора стороны *А* цена на направление будет найдена по полю DST, то есть по номеру назначения звонка. Опция добавлена в биллинг для совместимости со старыми интеграциями агентской схемы. Изначально поиск направления на стороне оператора *А* происходил по номеру источника звонка - SRC. Если вы настраиваете агентскую схему впервые, включите опцию. * *Маска trunk* \- В поле указываются маски для поиска транка. Можно указать несколько масок транка через запятую. Варианты масок транка: ** *default* \- под маску попадут все значения не совпавшие с остальными масками. Это будет оператор по умолчанию для всех остальных транков не отнесенных к кому-либо из операторов. {code} default {code} ** *Строка* \- может содержать любые символы {code} TestTrunk# {code} ** *Строка с регулярным выражением* \- допускает использовать конструкцию "*.\**" - любое количество любых символов {code} TestTrunk.* {code} ** *Диапазон чисел* \- диапазон целых чисел, строка должна включать только цифры и символ "*\-*" {code} 100-110 {code} Если в маске транка есть буквы, то не получится использовать диапазон. Нужно будет перечислить символы через запятую: {code} TestTrunk1,TestTrunk2,TestTrunk3 {code} |
| |
| # Для тарификации транзитного трафика абонентов необходимо [создать услугу телефонии с типом "Транзит"|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=49087067]. !1.png|border=1,width=400! # Загрузить в операторскую услугу [цены на направления|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=52789510]. |
| h2. Алгоритм расчёта звонка |
| |
| h3. Подключите их операторам |
| Звонок рассчитывается по следующему алгоритму: # Поиск оператора связи. Ядро биллинга формирует набор из всех маскок транка оператора связи, независимо от [типа трафика|Тип трафика] в услугах. Маска транка может соответствовать только одному оператору. {note} Хотя маска транка указывается в услуге телефонии, при поиске оператора связи будут учтены маски транка из всех услуг оператора, независимо от направления звонка. Например, вы указали маску транка TestTrunk во входящей услуги трафика, а в исходящей оставили маску транка пустой. Теперь звонки всех направлений с маской транка TestTrunk будут учтены по этому оператору. {note} Звонок одновременно проходит обработку у двух оператор связи. Звонок приходит от источника - "Оператора стороны *A*" к назначению "Оператору стороны *B*". Поиск оператора происходит с помощью сопоставления маски транка с полями SRC_CHAN и DST_CHAN соответственно. При этом начисления входящий и исходящих звонков проходят по опреатору-партнёру, а у транзитных звонков у обоих операторах. # Поиск услуги телефонии внутри оператора связи Услуга телефонии так же будет найдена по маске транка, только внутри оператора связи. На этом этапе будет учтено направление звонка. # Далее звонок будет рассчитан по [алгоритму из статьи|CarbonBilling:Формат выгрузки#У абонента несколько услуг телефонии, по какой посчитается звонок?] по услугам с одинаковой маской транка и направлением. |
| |
| # Подключите услугу оператору связи. Заполните поле *"Маска trunk"*, значение соответствует маске оператора из CDR. Пример cdr: {code}71110000001;72220000002;2018-02-12 10:00:00;2018-02-12 10:04:08;248;248;subscribers;Operator1{code} !2.png|border=0,width=600! # Затем нажмите кнопку "Сохранить" # Также сделайте для второго оператора указав второй транк. |
| h2. Отладка |
| |
| {info} Важно: биллинг работает только с диапазонами чисел. Если маска указана в формате символ+число, транк будет отображаться некорректно. {info} |
| h3. Как понять, что звонок был посчитан по агентской схеме? |
| |
| h2. Отладка интеграции |
| Необходимо проверить поля в таблице VOIP_LOG по конкретному звонку. |
| |
| h3. Как понять, что звонок был посчитан по агентской схеме или как транзитный? |
| При агенстской схеме звонок одновременно считается у двух операторов связи. В таблице VOIP_LOG задействованы поля: * SRC_OPERATOR\_ - сторона источника - Оператор стороны A * OPERATOR\_ - сторона назначения - Оператор стороны B |
| h4. Исходящие вызовы и инициирование вызова |
| # В таблице VOIP_LOG должны быть заполнены поля тарификации оператора: #* OPERATOR_ID: ID оператора-партнёра, в расходе которого будет посчитан вызов #* OPERATOR_USLUGA_ID: ID услуги, по которой считается расход оператора за исходящие вызовы по агентской схеме и инициирование вызова |
| В таблице VOIP_LOG будут заполнены поля тарификации: # Оператор стороны *A* #* SRC_OPERATOR_ID: ID вашего оператора # Оператор стороны *B* #* OPERATOR_ID: ID оператора-партнёра #* OPERATOR_USLUGA_ID: ID услуги исходящей связи оператора-партёра |
| #* OPERATOR_STEP_PRICE: стоимость шага тарификации услуги оператора-партнёра |
| #* V_TYPE_ID: 2 # В логе проводок ARCH_ACCOUNT_STACK должны быть записи с LOG_ID=VOIP_LOG.ID: #* Одна по стоимости вызова #* Одна за инициирование вызова # Проводка будет одна, если Вы считаете только завершение вызова или только стоимость по времени |
| #* OPERATOR_V: длительность звонка учтённая у оператора-партёра #* VOIP_OPERATOR_COUNTER_ID: ID счётчика телефонного трафика оператора-партёра # V_TYPE_ID: 2 - ID типа направления - Исходящий |
| |
| В логе проводок ARCH_ACCOUNT_STACK должна быть запись с ARCH_ACCOUNT_STACK.LOG_ID=VOIP_LOG.ID # По оператору-партнёру |
| h4. Входящие звонки и завершение вызова |
| # В таблице VOIP_LOG должны быть заполнены поля тарификации оператора: #* OPERATOR_ID: ID оператора-партнёра, в расходе которого будет посчитан вызов #* OPERATOR_USLUGA_ID: ID услуги, по которой считается расход оператора за входящие вызовы по агентской схеме и завершение вызова #* OPERATOR_STEP_PRICE: стоимость шага тарификации услуги оператора-партнёра #* V_TYPE_ID: 1 # В логе проводок ARCH_ACCOUNT_STACK должны быть записи с LOG_ID=VOIP_LOG.ID: #* Одна по стоимости вызова #* Одна за завершение вызова # Проводка будет одна, если Вы считаете только завершение вызова или только стоимость по времени |
| |
| В таблице VOIP_LOG будут заполнены поля тарификации: # Оператор стороны *A* #* SRC_OPERATOR_ID: ID оператора-партнёра #* SRC_OPERATOR_USLUGA_ID: ID услуги исходящей связи оператора-партнёра #* SRC_OPERATOR_STEP_PRICE: стоимость шага тарификации услуги в операторе-партнёре #* SRC_OPERATOR_V: длительность звонка учтённая у оператора-партёра #* SRC_VOIP_OPERATOR_COUNTER_ID: ID счётчика телефонного трафика оператора-партёра # Оператор стороны *B* #* OPERATOR_ID: ID вашего оператора # V_TYPE_ID: 2 - ID типа направления - Входящий В логе проводок ARCH_ACCOUNT_STACK должна быть запись с ARCH_ACCOUNT_STACK.LOG_ID=VOIP_LOG.ID # По оператору-партнёру |
| h4. Транзит |
| |
| # В таблице VOIP_LOG должны быть заполнены поля тарификации оператора: |
| #* V_TYPE_ID: 3 |
| # Оператор стороны *A* #* SRC_OPERATOR_ID: ID оператора, из сети которого пришел вызов #* SRC_OPERATOR_USLUGA_ID: ID услуги оператора, из сети которого пришел вызов #* SRC_OPERATOR_STEP_PRICE: стоимость шага тарификации услуги оператора, из сети которого пришел вызов #* SRC_OPERATOR_V: длительность звонка учтённая у оператора, из сети которого пришел вызов #* SRC_VOIP_OPERATOR_COUNTER_ID: ID счётчика телефонного трафика оператора, из сети которого пришел вызов # Оператор стороны *B* |
| #* OPERATOR_ID: ID оператора, в сеть которого ушел вызов |
| #* OPERATOR_USLUGA_ID: ID услуги, по которой считается расход этого оператора за транзит #* OPERATOR_STEP_PRICE: стоимость шага тарификации в этой услуге #* SRC_OPERATOR_ID: ID оператора, из сети которого ушел вызов #* SRC_OPERATOR_USLUGA_ID: ID услуги, по которой считается расход этого оператора за транзит #* SRC_OPERATOR_STEP_PRICE: стоимость шага тарификации в этой услуге # В логе проводок ARCH_ACCOUNT_STACK должны быть две записи с LOG_ID=VOIP_LOG.ID: #* Одна по услуге оператора и сети которого ушел вызов #* Одна по услуге оператора в чью сеть ушел вызов # Проводка будет одна, у кого-то из операторов не настроена услуга транзита или не указана стоимость направление, либо оно бесплатно (стоимость 0) |
| #* OPERATOR_USLUGA_ID: ID услуги оператора, в сеть которого ушел вызов #* OPERATOR_STEP_PRICE: стоимость шага тарификации услуги оператора, в сеть которого ушел вызов #* OPERATOR_V: длительность звонка учтённая у оператора, в сеть которого ушел вызов #* VOIP_OPERATOR_COUNTER_ID: ID счётчика телефонного трафика оператора, в сеть которого ушел вызов # V_TYPE_ID: 3 - ID типа направления - Транзит |
| |
| В логе проводок ARCH_ACCOUNT_STACK должны быть две записи с ARCH_ACCOUNT_STACK.LOG_ID=VOIP_LOG.ID # По оператору из сети которого пришел вызов # По оператору в чью сеть ушел вызов |
| |
| h3. Формат данных |
| h4. Особенности проводок |
| |
| h4. Продолжительность вызова | | Звонок учётнный у абонента | Звонок учтённый у оператора связи | | Поле | BILL_SEC | OPERATOR_V | | Тип данных | Целочисленный | Дробный | |
| Если вы тарифицируете и минуты и факт завершения звонка, то по одному звонку будет две проводки для каждого оператора связи. Типы проводок: * Стоимость вызова * Инициирование вызова |
