Непонятная логика urfa-скрипта link_tariff_with_services.xml

Технические вопросы по UTM 5.0
Ответить
sbbs
Сообщения: 30
Зарегистрирован: Ср мар 02, 2005 09:17

Непонятная логика urfa-скрипта link_tariff_with_services.xml

Сообщение sbbs »

День добрый.
Юзаю UTM5-2.1.008.i386_u3 и столкнулся со странной работой urfa-скрипта link_tariff_with_services.xml.

Выполняю:
/netup/utm5/bin/utm5_urfaclient -a link_tariff_with_services -user_id 36 -account_id 37 -tariff_current 2 -tariff_next 19 -discount_period_id 94 ...
В подключаемый тариф входит периодическая услуга с периодической стоимостью.
Создаются тарифная связка и соответствующие тарифу сервисные связки, но баланс лицевого счета
не меняется.
В debug.log не появляется строчка типа
SQL query: UPDATE accounts SET balance='12.21143890602021' WHERE id = '36'

Следом делаю то же самое, только для другого пользователя:
/netup/utm5/bin/utm5_urfaclient -a link_tariff_with_services -user_id 37 -account_id 37 -tariff_current 2 -tariff_next 19 -discount_period_id 94 ...
В debug.log наблюдаем строку SQL query: UPDATE accounts SET balance='12.21143890602021' WHERE id = '36'
соответственно изменяется баланс лицевого счета 36.
Баланс лицевого счета 37 остается без изменений.

Растолкуйте пожалуйста, как оно так работает?

littlesavage
Сообщения: 120
Зарегистрирован: Вс ноя 22, 2009 02:41
Откуда: Чебоксары

Сообщение littlesavage »

Если выключить абонента, и сразу его включить, абонка спишется? Причем не обязательно именно этого абонента. Можно любого другого.


В 5.2.1-007 есть такая бага, что между функциями rpcf_link_user_tariff и затем rpcf_add_service_to_user нужно поставить паузу секунд в 30.
После выполнения rpcf_link_user_tariff, судя по логам, ядро запускает процесс BusPeriodic. Если выполнить rpcf_add_service_to_user во время выполнения этого процесса, то абон. плата сразу не снимется. А снимется только при следющем BusPeriodic.
В link_tariff_with_services.xml как раз сначала вызывается rpcf_link_user_tariff, и сразу rpcf_add_service_to_user.

sbbs
Сообщения: 30
Зарегистрирован: Ср мар 02, 2005 09:17

Сообщение sbbs »

Да, так и есть. Спасибо за помощь.
А как в urfa скрипте поставить паузу?

Ответить