BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 29 мар 2024, 02:26

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 26 ] 
Автор Сообщение
СообщениеДобавлено: 07 дек 2016, 22:01 
Не в сети

Зарегистрирован: 29 июл 2008, 13:57
Сообщения: 94
Карма: 0
При разовом начислении все абонентам месячной абонплату 1го числа резко увеличивается нагрузка на колцентр. Можно ли сделать начисление, скажем, по 1000 абонентов в час, или просто начислять одному абоненту в секунду?..


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 дек 2016, 22:39 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Как минимум можно раскидать запуск по услугам и группам.
Если этого мало, скорее всего придется писать глобальный скрипт который будет запускать начисление с предварительно сформированным списком договоров которые надо обсчитать( в смысле, работа этого скрипта как раз и будет состоят в формировании данного списка ).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 00:41 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
может вам перейти на дневные абонплаты?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 02:53 
Не в сети

Зарегистрирован: 29 июл 2008, 13:57
Сообщения: 94
Карма: 0
Дневные - есть вероятность потерять много денег :-(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 03:11 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
Fate писал(а):
Дневные - есть вероятность потерять много денег :-(


почему?
я не раз описывал на форуме схему с подневными абонплатами и разблокировкой договора только при внесением средств не менее чем на 30 дней.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 10:24 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Добавлю, что эта схема и на вики есть

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 12:10 
Не в сети

Зарегистрирован: 29 июл 2008, 13:57
Сообщения: 94
Карма: 0
Спасибо, коллеги, но подневной вариант я не могу рассматривать, слишком много работы придется с абонентами проводить, а это дорого.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 12:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Fate писал(а):
слишком много работы придется с абонентами проводить, а это дорого.

Представим на секунду, что 1го числа блокируются абоненты у которых баланс близок к нулю.
Тех у кого средств не хватит на еще 1 день работы.
Т.е. абоненты в прошлом месяце 1го числа пополнили счет ровно на сумму тарифа.

Ваша идея (т.е. их не заблокирует 1го числа) позволит им проработать как минимум еще сутки. Или двое. Или трое. В зависимости от того, как вы хотите раскидать нагрузку (смысла в раскидывании нагрузки на call-центр если у вас меньше 24к активных абонентов я не вижу. Т.е. если будет блокироваться по 1000 абонентов в час - то все равно их заблокирует в одни сутки).

И вот эти вот абоненты (т.к. их статус не изменился и модуль абонплат им начислит наработку), провалятся в минус. И с ними придется проводить "много работы"

Если я конечно все правильно понял.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 13:14 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
непонятно, а как начисление раз в секунду уменьшит нагрузку на колцентр?

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 13:19 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
dimOn писал(а):
непонятно, а как начисление раз в секунду уменьшит нагрузку на колцентр?


Скорее уменьшит пиковую нагрузку. Размажет ее на некоторый период.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 15:55 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
люди сразу в ту же секунду ломятся звонить чтоле? это же ночью тем более происходит.

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 21:42 
Не в сети

Зарегистрирован: 29 июл 2008, 13:57
Сообщения: 94
Карма: 0
dimOn писал(а):
люди сразу в ту же секунду ломятся звонить чтоле? это же ночью тем более происходит.

Нет, ночью это жестоко. Мы днем начисляем.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 дек 2016, 21:54 
Не в сети

Зарегистрирован: 29 июл 2008, 13:57
Сообщения: 94
Карма: 0
Phricker писал(а):
(смысла в раскидывании нагрузки на call-центр если у вас меньше 24к активных абонентов я не вижу.

Как так? :-) Если 2-31го нагрузка Nзвонков/день, то 1го числа - N*N*2


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 дек 2016, 00:40 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Ildar писал(а):
Как минимум можно раскидать запуск по услугам и группам.
Если этого мало, скорее всего придется писать глобальный скрипт который будет запускать начисление с предварительно сформированным списком договоров которые надо обсчитать( в смысле, работа этого скрипта как раз и будет состоят в формировании данного списка ).

Спасибо, есть вопросы:
1. Нужно делать "Закрытие статуса договоров" и "Начисление абонплат". Для закрытия статуса рецепт разделения услуг и групп сработает?
2. Уточнение: насколько я понял начисление по раздельным услугам можно сделать, предварительно сформировав set-ы в конфигурации и включить в планировщике в "Параметрах запуска": service.set=<код набора услуг>?
3. Какие параметры запуска в планировщике должны быть для запуска на разных группах?
4. Сформированный список договоров кому "скармливать"? Если тем же задачам "Закрытия договоров" и "Начисления абонплат" в планировщике, то каким образом?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 19 дек 2016, 17:52 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Ildar, можете подсказать по теме?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 19 дек 2016, 18:15 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
лучше начисление на наборы услуг разделите а закрытие статуса оставьте как есть. Делаете наборы услуг а потом делаете задачи начисления с параметром в конфигурации service.set=<код набора услуг>
ссылка в документации


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 19 дек 2016, 18:42 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Не совсем понял. Что значит закрытие статуса оставить как есть? Надо чтобы и абонентов закрывалось тоже не всех сразу, а постепенно. вал звонков наступает ведь сразу после закрытия статусов.
Да и с разделением на наборы услуг как-то не очень, если такое внедрять, то это будет большая путаница для операторов.
По сути разные наборы услуг - это по факту разные абонплаты. А если разные абонплаты, то соответстенно на договоре должна быть установлена именно та абонплата, которая прописана и в тарифном плане. Если поставить не ту абонплату, то начисления производится не будут.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 дек 2016, 22:40 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Да я ввел в заблуждение вас слегка, в самой задаче начисления абонплаты нет пока возможности указать группу, ее можно указать только при ручном запуске( что не очень удобно ).
А у задачи закрытия, в обще нет возможности выбрать какие именно договора закрывать( точнее они есть, но они глобальные для всего модуля )

Проблему с группами в начислении решить довольно просто, скрипт будет не большой. А вот с закрытием сложнее.

У вас сейчас как настроены задачи закрытия и начисления( в смысле в какое время )?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 дек 2016, 23:10 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
У нас планировщик 1-го числа месяца запускает сначала закрытие в 11:00 дня. А в 11:30 начисление абонплаты.
В январе эти операции проводим 4-го числа.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2016, 00:40 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Ну тогда писать глобальный скрипт, который поставить на запуск планировщику вместо стандартной задачи закрытия договоров.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 янв 2017, 21:08 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Подскажите по данному вопросу - правильно ли я делаю?
1. Для того, чтобы выставить статусы абонентов перед расчетом абонплаты не существует готовых методов? Нужно сначала запустить Calculator?
2. Затем по его результатам сделать ручную блокировку, используя ContractStatusManager?
3. На незаблокированных договорах запустить расчет абонплаты, используя Recalculator из bitel.billing.server.npay? Или существует какой-то другой метод расчета абонплаты?

Суть задачи топика: сделать собственный скрипт расчета абонплаты, чтобы растянуть ее по времени.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 янв 2017, 21:19 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Да, в общем так.
1 и 3 это в принципе одно и то же, но в первом случае Calculator запускается в режиме предварительной тарификации( preCalcMode ) и выдает данные, а во-втором реально заносит наработку.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 янв 2017, 23:45 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Спасибо!

Насколько я понял установка int serviceSet=0 запускает обсчет на всех услугах договора? Эта переменная нужна для Recalculator.

Еще такой вопрос. Ежедневно запускающийся штатный скрипт расчета абонплаты - это по сути тот же самый Recalculator? Причем запускаемый с String cids="" и int serviceSet=0;?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 30 янв 2017, 00:04 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Recalculator это просто ручная запускалка для Calculator, задачи, которая и есть "штатный скрипт расчета абонплаты".

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 фев 2017, 19:13 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Скажите, а где можно почитать про класс Calculator? Я почему-то не смог найти этот класс в документации.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 фев 2017, 22:22 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
потому что это не часть api а внутренний класс, а что про него читать?

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 26 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.139s | 70 Queries | GZIP : On ]