Теперь хочется чтобы был биллинг.
Подскажите направление - как сделать хороший биллинг. Если можно то step by step - опыта нет.
В инете что-то много начитался, запутался совсем.
Заранее спасибо.
P.S. Извини
Я несколько по другому бы задал вопрос - какие билинги для астериска кто знает/использует, бесплатные или комерческие и в чём их минусы/плюсы. Этот вопрос волнует большинство начинающих так что просьба знающих поделиться информацией ;)
Спасибо
Кто в курсе как это регулируется ?
| Serega писал(а): |
| А еще интересней вопрос, можно ли использовать самодельный или опенсорцовый билинг в коммерческих целях, типа не лицензированный и все такое Кто в курсе как это регулируется ? |
Не регулируется.
Ставишь для инспекции комерческий билинг - после проверки сносишь и ставишь _какой_пожелаешь_ и спокойно работаешь... ;)
| Гость писал(а): |
| Не регулируется. |
А если я хочу не просто терминировать звонки по инету, а карточки выпускать ?
| anest писал(а): |
| Ну почему же? Ставишь для инспекции комерческий билинг - после проверки сносишь и ставишь _какой_пожелаешь_ и спокойно работаешь... |
Подскажи где взять билинг по нормальной цене (хорошо бы до 500) что бы был для виду
Хочу попробовать запустить карточки но изначально много вкладывать не хочется, пока не видно насколько это прибыльно
| Serega писал(а): |
| Подскажи где взять билинг по нормальной цене (хорошо бы до 500) что бы был для виду |
Я это... конечно сук нах бестолочь, ну и так далее... но про биллинг сертифицированный первый раз слышу...
....А "проверяльщикам", итс май х. майнд, лучше счета да платежки показывать - это важнее ;)
А за такие деньги я Вам биллинг пальчиком покажу... предоплата
| Гость писал(а): |
| но про биллинг сертифицированный первый раз слышу... |
А как же Mera ?
Последний раз редактировалось: anest (Пт Май 12, 2006 3:47 am)
| anest писал(а): |
| А как же Mera ? |
Не понял.
Согласно его /etc/asterisk/a2billing.conf
say_balance_after_auth=YES (говорит баланс)
say_timetocall=YES (говорит макс. время звонка по набираемому номеру)
Оба параметра можно выставить в NO и моя проблема решится, однако не хочется.
Так вот, когда в секции [general] sip.conf'a language не указан - говорит правильные данные : 999,99 $ на счете
| Код: |
| a2billing.php|1: [A2Billing] SAY BALANCE (1) a2billing.php|1: -- Playing 'digits/9' (language 'en') -- Playing 'digits/hundred' (language 'en') -- Playing 'digits/90' (language 'en') -- Playing 'digits/9' (language 'en') -- Playing 'digits/90' (language 'en') -- Playing 'digits/9' (language 'en') |
соответственно можно наговорить 30302 мин и 43 сек (по 0.033$ за мин)
| Код: |
| a2billing.php|1: TIMEOUT::> 1818163 : minutes=30302 - seconds=43 -- Playing 'digits/30' (language 'en') -- Playing 'digits/thousand' (language 'en') -- Playing 'digits/3' (language 'en') -- Playing 'digits/hundred' (language 'en') -- Playing 'digits/2' (language 'en') -- Playing 'digits/40' (language 'en') -- Playing 'digits/3' (language 'en') |
А вот когда в sip.conf выставлен language=ru , то для баланса проглатываются сотни, т.е. говорит 99,99$ (а не 999,99$)
| Код: |
| a2billing.php|1: [A2Billing] SAY BALANCE (1) a2billing.php|1: Apr 10 12:16:19 WARNING[4349]: file.c:508 ast_openstream_full: File digits/900 does not exist in any format Apr 10 12:16:19 WARNING[4349]: file.c:820 ast_streamfile: Unable to open digits/900 (format ulaw): No such file or directory -- Playing 'digits/90' (language 'ru') -- Playing 'digits/9' (language 'ru') -- Playing 'digits/90' (language 'ru') -- Playing 'digits/9' (language 'ru') |
а для длительности звонка съедает еще больше цифр - говорит 32 минуты и 43 секунды (вместо 30302 мин. и 43 сек.)
| Код: |
| a2billing.php|1: TIMEOUT::> 1818163 : minutes=30302 - seconds=43 -- Playing 'digits/30' (language 'ru') Apr 10 12:16:26 WARNING[4349]: file.c:508 ast_openstream_full: File digits/thousands does not exist in any format Apr 10 12:16:26 WARNING[4349]: file.c:820 ast_streamfile: Unable to open digits/thousands (format ulaw): No such file or directory Apr 10 12:16:26 WARNING[4349]: file.c:508 ast_openstream_full: File digits/300 does not exist in any format Apr 10 12:16:26 WARNING[4349]: file.c:820 ast_streamfile: Unable to open digits/300 (format ulaw): No such file or directory -- Playing 'digits/2' (language 'ru') -- Playing 'digits/40' (language 'ru') -- Playing 'digits/3' (language 'ru') |
Т.е. ему хочется проиграть звуковые файлы каких в принципе не может быть.
И еще, не зависимо от language перед SAY_BALANCE проходит варнинг
| Код: |
| Apr 10 12:03:43 WARNING[3528]: res_agi.c:1085 handle_exec: Could not find application (SetLanguage) |
Какие будут мысли? Думается, проблема где то в реализации функций произношения чисел по русски (Saynumber() что ли).
cvs update и т.д. сделал.
"тысяч" -- thousands.gsm
"900" -- 900.gsm
"300" -- 300.gsm
Ну и логично предположить, что файлов "100", "200", "400", "500", "600", "700", "800" тоже нет, соотв. тоже запишите.
По поводу:
| Код: |
| Apr 10 12:03:43 WARNING[3528]: res_agi.c:1085 handle_exec: Could not find application (SetLanguage) |
Если хотите играться с аресками, то необходимо минимальное знание пхп - редактировать придеться.
В принципе, наверное на форуме в asterisk2billing.org я закину свои патченные варианты аги и библиотек.
Лично я все больше ползуюсь www.paskambink.lt/mcc - хотя там тоже не сахар
| Цитата: |
| Ну и логично предположить, что файлов "100", "200", "400", "500", "600", "700", "800" тоже нет, соотв. тоже запишите |
Пригласил девушку, записали - все работает, правда чуть со смеху не померли пока записывали, если вдруг кому файлы понадобятся - черканите тут.
| Цитата: |
| Хамелеон неплох, но есть валом багов. и необходимо патчить |
Если не трудно, перечислите оных или хотя бы самых критичные
сновные ошибки.
1. если транк занят или не отвечает, биллинг снимает трубку и голосом дает сообщение - busy или unavailable. это неверно. во первых, звонок на второй раут не уйдет, если их у клиента много.
лечиться изменением в libs/rate_engine - команда STREAM на exec('playback filename|noanswer) - или комментарием;
2. такая же ерунда STREAM -> exec в некоторых случаях, когда хочешь использовать facility channel (т.е. сообщение без ответа телефона) - например баланс, какие-то сообщения. в моем варианте биллинга практически везде STREAM на exec('playback') замененно
3. куча ляпов в вебе особенно в отчетах
4. не работают многие фишки биллинга - но базовый биллинг работает на ура - 1/1, 6/6, 60/60, 30/6 и т.д.
http://asteriskforum.ru/viewtopic.php?t=356
Есть татч для произношения русских цифр и дат нормально.
_________________
OpenSUSE 10.3 / Asterisk-trunk / Celeron 1100 (512mb) / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102
_________________
OpenSUSE 10.3 / Asterisk-trunk / Celeron 1100 (512mb) / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102
Но не работает, хотя все роуты описал. Не совсем понял как делать import ratecard и вообще нужен ли он.
| Код: |
| a2billing.php: RES DTMF : a2billing.php: DESTINATION ::> a2billing.php: APPLY_RULES DESTINATION ::> a2billing.php: [CHANNEL STATUS : 6 = Line is up] a2billing.php: [CREDIT STATUS : 5.0000] a2billing.php: [CREDIT MIN_CREDIT_2CALL : 0] a2billing.php: 0 && && 3&& 2 -- Playing 'prepaid-enter-dest' (language 'en') a2billing.php: RES DTMF : 805021115599 a2billing.php: DESTINATION ::> 805021115599 a2billing.php: APPLY_RULES DESTINATION ::> 805021115599 a2billing.php: ERROR ::> RateEngine didnt succeed to match the dialed number over the ratecard (Please che ck : id the ratecard is well create ; if the removeInter_Prefix is set according to your prefix in the ratec ard ; if you hooked the ratecard to the tariffgroup) a2billing.php: UPDATE cc_card SET inuse=inuse-1 WHERE username='7544326896' -- AGI Script a2billing.php completed, returning 0 |
Может кто подскажет ?
import ratecard нужен чтобы из csv файла (текст с разделителями точка-запятая) типа этого
| Код: |
| 355;"Albania";0,088;0,088 35538;"Albania, Mobile";0,1671;0,1671 35569;"Albania, Mobile";0,1671;0,1671 |
записать в эту самую ratecard такие вещи как
префикс направления, описание направления, цену за минуту разговора
(последние три объединены понятием rate, а набор rate'ов есть ratecard, а ratecard'ы входят в tariffgroup. ratecard'у ставится в соответствие trunk. а trunk это просто название секции (в частности провайдера) в sip.conf, например)
По сути нужно, чтобы не вбивать ручками через меню Ratecard/add rate в выбранный ratecard префиксы-цены, а брать из файла.
P.S. в csv первая цена - почем покупаешь, вторая почем продаешь минуту, важны также для работы tariffgroup'а нужным образом
Версия CURRENT VERSION : (ADMIN UI V1.1 - CUST UI V1.1 - AGI V1.1 - DB V1.1)
брал с сайта http://www.asterisk2billing.org/
Всем спасибо за помощь.
| ambervoip писал(а): |
| Я учавствовал в распинании арески на ирц каналах и бета тестер биллинга. Хамелеон неплох, но есть валом багов. и необходимо патчить. |
Не подскажете, а есть патч который позволяет использовать его как билинг для обычных абонентов, которые звонят SIP телефонами сразу, без IVR. А просто авторирировался юзер 10-ти значным пином прямо в настройках телефона и звонит.
Сам билинг мне понравился, удобный.
| Код: |
| a2billing.php|5 |
И как профиль создать в a2billing.conf, там же вроде-бы только глобальные настройки.
Пример не можешь набросать?
Спасибо.
| Гость писал(а): | ||
| anest писал(а): |
| А как же Mera ? |
Не понял.
Мера не билинг а Софтсвич.
_________________
Кто владеет информацией, тот владеет миром.
_________________
С уважением, Сергей
Думаю будет очень интересно.
С чем может связана ошибка при импорте базы данных.
SQL-запрос:
-- MySQL dump 10.10
--
-- Host: localhost Database: astbill
-- ------------------------------------------------------
-- Server version 5.0.18-standard-log
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
Ответ MySQL: Документация
#1065 - Query was empty
_________________
Кто владеет информацией, тот владеет миром.
Очевидно устанавливает переменные кодировки.