понимаю что форум не для техподдержки, но может кто сталкивался...
в общем надо через utm5_urfaclient отредактировать аккаунт, например выставить кредит:
utm5_urfaclient -a edit_account -account_id 15 -credit 15
все выставляется правильно, НО, если пользователь уже заблокирован, то при системной - добавляется административная, при уже установленной административной - закрывается текущая и добавляется новая...
utm 5.3 002 как заставить его не трогать блокировку?
через php так же пробовал выствлять is_blocked таким же как был, выставлять время начала "текущее" и конец 2033, как это указано в edit_account.xml, так же пробовал устанавливать точно время как в текущей блокировке, все равно одно и тоже - добавляет новую....
это баг utm и надо обновлятся или все же есть решение?
edit_account добавляет блокировку к уже заблокированному
в общем разобрался..., чтобы блокировка не добавлялась новая - нужно
is_blocked - указывать МЕНЬШЕ нуля, а не той цифрой что получена из rpcf_get_accountinfo(0x15109)(типтекущей блокировки)!
как то так:
utm5_urfaclient -a edit_account -account_id 15 -credit 15 -is_blocked -1
в php при этом все равно указывать block_start_date = time() и block_end_date = 2000000000...
странно что про это нигде никакого упоминания, а по логике там надо указывать цифру текущей блокировки... или я плохо читал?...
is_blocked - указывать МЕНЬШЕ нуля, а не той цифрой что получена из rpcf_get_accountinfo(0x15109)(типтекущей блокировки)!
как то так:
utm5_urfaclient -a edit_account -account_id 15 -credit 15 -is_blocked -1
в php при этом все равно указывать block_start_date = time() и block_end_date = 2000000000...
странно что про это нигде никакого упоминания, а по логике там надо указывать цифру текущей блокировки... или я плохо читал?...
Блокировки старые:
16 Системная
48 Системная с перерасчетом абонентки
256 Админская
768 Админская с перерасчетом абонентки
1792 Админская с перерасчетом абонентки и трафика
Блокировки новые:
Системная блокировка = 1
Административная блокировка = 2
Пользовательская - 3
Для параметра is_blocked функции rpcf_add_account допустимы следующие значения:
- 0 - снимается текущая блокировка;
- 0x100 - устанавливается административная блокировка;
- 0x2000 - статус блокировки не меняется.
В текущей реализации ненулевое значение параметр is_blocked обрабатывается следующим образом:
- если результат операции побитового <и> с 0x2000 не равен 0, статус блокировки не меняется;
- если результат операции побитового <и> с 0x2000 равен 0, устанавливается административная блокировка.
Ну и пример:
16 Системная
48 Системная с перерасчетом абонентки
256 Админская
768 Админская с перерасчетом абонентки
1792 Админская с перерасчетом абонентки и трафика
Блокировки новые:
Системная блокировка = 1
Административная блокировка = 2
Пользовательская - 3
Для параметра is_blocked функции rpcf_add_account допустимы следующие значения:
- 0 - снимается текущая блокировка;
- 0x100 - устанавливается административная блокировка;
- 0x2000 - статус блокировки не меняется.
В текущей реализации ненулевое значение параметр is_blocked обрабатывается следующим образом:
- если результат операции побитового <и> с 0x2000 не равен 0, статус блокировки не меняется;
- если результат операции побитового <и> с 0x2000 равен 0, устанавливается административная блокировка.
Ну и пример:
Код: Выделить всё
<?xml version="1.0"?>
<urfa>
<!-- ######################### USAGE: ##############################################
edit_account -account_id -set_credit
#################################################################################### -->
<parameter name="user_id"/>
<parameter name="account_id"/>
<parameter name="set_credit" value=""/>
<parameter name="is_blocked"/>
<parameter name="credit"/>
<!-- Poluchenie User ID -->
<call function="rpcf_get_user_by_account" output="0"/>
<!-- Poluchenie Account Information -->
<call function="rpcf_get_accountinfo" output="0"/>
<!-- Set credit -->
<if variable="set_credit" value="" condition="ne">
<set dst="credit" src="set_credit"/>
</if>
<!-- Fix block -->
<set dst="is_blocked" value="0x2000"/>
<call function="rpcf_save_account" output="0"/>
</urfa>