forum.bitel.ru http://forum.bitel.ru/ |
|
Как повторить звонки ? http://forum.bitel.ru/viewtopic.php?f=6&t=5752 |
Страница 1 из 1 |
Автор: | iros [ 01 авг 2011, 13:03 ] |
Заголовок сообщения: | Как повторить звонки ? |
Так вышло, что радиус сервер не работал какое то время. и звонки не учитывались. Но остались логи с кипера. Можно ли на основе этих логов как то повторить пропущенные звонки в радиус ? |
Автор: | iros [ 02 авг 2011, 14:02 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Для эмуляции звонков планирую использовать клиент от freeradius Допустимо ли отсылать атрибуты типа: Цитата: h323-connect-time=10:48:57.004 MSK Tue Aug 02 2011 h323-disconnect-time=10:50:02.988 MSK Tue Aug 02 2011 с датами из предыдущего месяца ? Как будут расчитываться такие звонки ? |
Автор: | iros [ 05 авг 2011, 19:17 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
С помощью radclient удается отправить в радиус необходимые пакеты. Звонки учитываются. Но текущей датой. А мне надо за прошлый месяц. Если поменяю системную дату на машине с BGRadiusVoip ? Звонки будут учитываться как надо ? На какие грабли можно наступить ? Какая логика может нарушиться ? Разработчики ответьте !!!! |
Автор: | Amir [ 09 авг 2011, 14:39 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
А логи только в радиус формате? Если нет, можно было загрузить в базу и переобсчитать. |
Автор: | Phricker [ 09 авг 2011, 14:49 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
У меня было предложение загрузить подобные логи в тестовую базу, в ней update'ом поменять даты на предыдущий месяц, и потом экспорт/импорт/пересчитать. Почему то посчитал его глупым и не стал выносить на рассмотрение ![]() |
Автор: | Amir [ 09 авг 2011, 15:06 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Смотрим сейчас возможность добавления поддержки h323-connect-time. А access пакеты тоже идут? |
Автор: | iros [ 09 авг 2011, 15:12 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Amir писал(а): А логи только в радиус формате? Если нет, можно было загрузить в базу и переобсчитать. Логи с гейткипера. Текстовый файл типа: Шлюз источник;Шлюз назначения;caller_number;called_number;код завершения;дата;длительность звонка;и т.д Скрипт для посылки таких строчек в радиус - готов и испытан. Все делает как надо. Но текущей датой естественно. А нужно, что б звонки попали в предыдущий месяц. Вот я и подумал просто - обмануть BGRadiusVoip. Сказать, что сейчас июль.... ? никаких access пакетов нет. посылаю тупо acct stop. Этого достаточно для обсчета звонка. |
Автор: | Amir [ 09 авг 2011, 15:51 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Версия 5.1? |
Автор: | iros [ 09 авг 2011, 16:21 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
4.6 # ./radius.sh status version 4.6 build 171 from 16.03.2010 15:36:59 |
Автор: | Amir [ 09 авг 2011, 16:44 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
http://bgbilling.ru/patch/2011-08/voiceip.jar Попробуйте в конфиге наса прописать Код: radius.stop.useConnectTime=1 , остановить радиус, заменить voiceip.jar и запустить заново.Только сделайте сначала бэкап старой библиотеки. Для одиночных стоп пакетов должен начать брать начало сессии из H323-connect-time. В насе должен быть прописан vendor Cisco (или чей в данном случае атрибут H323_connect_time). Попробуйте по одной сессии. |
Автор: | iros [ 09 авг 2011, 18:08 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Спасибо. Обязательно отпишусь по результатам. |
Автор: | iros [ 10 авг 2011, 00:51 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Формат даты и времени в атрибуте h323-connect-time ? вариант типа: 10:48:57.004 MSK Tue Aug 02 2011 не совсем "машинный". Он больше "человеческий". Есть возможность передавать дату/время в нормальном формате ? например unix_time или "DD/MM/YY HH:MM:SS" Попробовал для примера такой пакет: Цитата: Type=ACCOUNTING_REQUEST Attributes: User-Name=Cisco2851 NAS-IP-Address=***** NAS-Port=3271749146 Acct-Input-Octets=3032272 Acct-Output-Octets=3030800 Acct-Status-Type=2 Acct-Session-Time=351 Calling-Station-Id=**** Acct-Session-Id=11213071815000062E4L1 Called-Station-Id=84950000000 Acct-Authentic=2 h323-remote-address=172.16.2.90 h323-disconnect-cause=10 h323-connect-time=11:11:11.111 MSK Sun Jul 31 2011 h323-disconnect-time=11:22:22.222 MSK Mon Aug 01 2011 h323-conf-id=3917A10C BB4511E0 B947FA8D B7FC04E3 h323-setup-time=11:11:11.111 MSK Mon Aug 01 2011 h323-call-origin=answer h323-call-type=VoIP Звонок записался и на текущую дату. Несмотря на "Jul 31 201"... radius.stop.useConnectTime=1 в конфиг наса прописал. |
Автор: | Amir [ 10 авг 2011, 12:35 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Формат времени в 11:11:11.111 MSK Sun Jul 31 2011. Т.е. парсится нормально. У наса вендор указан на cisco? |
Автор: | iros [ 10 авг 2011, 13:50 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Цитата: # grep h323-conn /usr/share/freeradius/dictionary.cisco ATTRIBUTE h323-connect-time 28 string Использую radclient от freeradius. Он ругается когда атрибут незнакомый. А тут вроде все чисто: Цитата: Sending Accounting-Request of id 109 to **** port 1813 User-Name = "Cisco2851" NAS-IP-Address = 172.16.0.205 NAS-Port = 3271749146 Acct-Input-Octets = 3032272 Acct-Output-Octets = 3030800 Acct-Status-Type = Stop Acct-Session-Time = 351 Acct-Session-Id = "11213071815000062E4L1" Calling-Station-Id = "*****" Acct-Authentic = Local Called-Station-Id = "84950000000" h323-remote-address = "172.16.2.90" h323-disconnect-cause = "10" h323-call-origin = "answer" h323-call-type = "VoIP" h323-conf-id = "3917A10C BB4511E0 B947FA8D B7FC04E3" h323-connect-time = "11:11:11.111 MSK Sun Jul 31 2011" h323-disconnect-time = "11:22:22.222 MSK Mon Aug 01 2011" h323-setup-time = "11:11:11.111 MSK Mon Aug 01 2011" rad_recv: Accounting-Response packet from host **** port 1813, id=109, length=20 Конфиг наса: Цитата: service=1 auth.in=voip/originate auth.out=voip/answer radius.stop.useConnectTime=1 Звонок записывается текущей датой/время. ![]() |
Автор: | Amir [ 10 авг 2011, 14:02 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Нет, я про Вендор, который в Редакторе Nasов указывается. |
Автор: | iros [ 10 авг 2011, 14:05 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Да. Вендор указан Cisco. |
Автор: | Amir [ 10 авг 2011, 15:53 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Попробуйте еще раз, выложил новый билд: http://bgbilling.ru/patch/2011-08/voiceip.jar И выложите потом логи, там должен быть более подробный лог по поводу connect-time. |
Автор: | iros [ 10 авг 2011, 18:03 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Без изменений. Цитата: 08-10/15:58:03 INFO [pool-2-thread-3] radius - ACCOUNT: Type=ACCOUNTING_REQUEST Attributes: User-Name=Cisco2851 NAS-IP-Address=172.16.0.205 NAS-Port=3271749146 Acct-Input-Octets=3032272 Acct-Output-Octets=3030800 Acct-Status-Type=2 Acct-Session-Time=351 Calling-Station-Id=***** Acct-Session-Id=11213071815000062E4L1 Called-Station-Id=84950000000 Acct-Authentic=2 h323-remote-address=172.16.2.90 h323-disconnect-cause=10 h323-connect-time=11:11:11.111 MSK Sun Jul 31 2011 h323-disconnect-time=11:22:22.222 MSK Mon Aug 01 2011 h323-conf-id=3917A10C BB4511E0 B947FA8D B7FC04E3 h323-setup-time=11:11:11.111 MSK Mon Aug 01 2011 h323-call-origin=answer h323-call-type=VoIP 08-10/15:58:03 INFO [pool-2-thread-3] VoiceIpProcessor - radius.stop.useConnectTime=1 08-10/15:58:03 INFO [pool-2-thread-3] VoiceIpProcessor - H323-connect-time=null 08-10/15:58:03 INFO [pool-2-thread-3] VoiceIpProcessor - connectTime= 08-10/15:58:05 INFO [pool-2-thread-3] radius - RESPONSE: Type=ACCOUNTING_RESPONSE Process time stop: 1852 Attributes: Подумал, что дело возможно в сравнении строк "H323-connect-time" и "h323-connect-time". Изменил в dictionary.xml "h" на "H" - не помогло: Цитата: 08-10/15:56:46 INFO [pool-2-thread-21] radius - ACCOUNT:
Type=ACCOUNTING_REQUEST Attributes: User-Name=Cisco2851 NAS-IP-Address=172.16.0.205 NAS-Port=3271749146 Acct-Input-Octets=3032272 Acct-Output-Octets=3030800 Acct-Status-Type=2 Acct-Session-Time=351 Calling-Station-Id=33300 Acct-Session-Id=11213071815000062E4L1 Called-Station-Id=84950000000 Acct-Authentic=2 h323-remote-address=172.16.2.90 h323-disconnect-cause=10 H323-connect-time=11:11:11.111 MSK Sun Jul 31 2011 h323-disconnect-time=11:22:22.222 MSK Mon Aug 01 2011 h323-conf-id=3917A10C BB4511E0 B947FA8D B7FC04E3 h323-setup-time=11:11:11.111 MSK Mon Aug 01 2011 h323-call-origin=answer h323-call-type=VoIP 08-10/15:56:46 INFO [pool-2-thread-21] VoiceIpProcessor - radius.stop.useConnectTime=1 08-10/15:56:46 INFO [pool-2-thread-21] VoiceIpProcessor - H323-connect-time=null 08-10/15:56:46 INFO [pool-2-thread-21] VoiceIpProcessor - connectTime= 08-10/15:56:47 INFO [pool-2-thread-21] radius - RESPONSE: Type=ACCOUNTING_RESPONSE Process time stop: 443 Attributes: |
Автор: | Amir [ 11 авг 2011, 22:03 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Попробуйте снова с этой же ссылки - теперь должно быть нормально. |
Автор: | iros [ 12 авг 2011, 11:58 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Ага, теперь работает ! Только вот непонятно почему в радиус пакете connect-time=11:11:11.111, а в отладке и в базу попало connectTime=12:11:11.111 ? Звонки в будущее ? ![]() Цитата: 08-12/09:51:40 INFO [pool-2-thread-11] radius - ACCOUNT:
Type=ACCOUNTING_REQUEST Attributes: User-Name=Cisco2851 NAS-IP-Address=172.16.0.205 NAS-Port=3271749146 Acct-Input-Octets=3032272 Acct-Output-Octets=3030800 Acct-Status-Type=2 Acct-Session-Time=351 Calling-Station-Id=***** Acct-Session-Id=11213071815000062E4L1 Called-Station-Id=84950000000 Acct-Authentic=2 h323-remote-address=172.16.2.90 h323-disconnect-cause=10 h323-connect-time=11:11:11.111 MSK Sun Jul 31 2011 h323-disconnect-time=11:22:22.222 MSK Mon Aug 01 2011 h323-conf-id=3917A10C BB4511E0 B947FA8D B7FC04E3 h323-setup-time=11:11:11.111 MSK Mon Aug 01 2011 h323-call-origin=answer h323-call-type=VoIP 08-12/09:51:40 INFO [pool-2-thread-11] VoiceIpProcessor - connectTime=31.07.2011 12:11:11.111 08-12/09:51:40 INFO [pool-2-thread-11] radius - RESPONSE: Type=ACCOUNTING_RESPONSE Process time stop: 97 Attributes: |
Автор: | Amir [ 12 авг 2011, 15:06 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Нет, просто в отладке в вашем часовом поясе показывает. |
Автор: | iros [ 12 авг 2011, 16:47 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Хмммм. Там написано MSK. И я в Москве. На сервере неверно время ? |
Автор: | Amir [ 12 авг 2011, 17:15 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Может быть из-за летнего времени где не так? Летнее вроде обозначалось раньше MSD или MSK+1, а теперь даже и не уверен как должно быть ![]() |
Автор: | iros [ 15 авг 2011, 14:50 ] |
Заголовок сообщения: | Re: Как повторить звонки ? |
Ага. на сервере MSD . Спасибо за помощь. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |