Jump to content

OpenPayz


Recommended Posts

ТС что из этого ты настраеваеш ? http://wiki.ubilling.net.ua/doku.php?id=o

его пытать надо ..... по слову вытягиваешь .... описать проблемму нормально никак ??? то сам фронтенд написал то уже не сам .....ни фига не понятно ((

Link to post
Share on other sites

Дело было так. 

Перешел в документацию. http://wiki.ubilling.net.ua/doku.php?id=openpayz

Там есть раздел Установка. Сделал так как там описано. 

Затем в разделе Пишем свой фронтенд, скопипастил готовый код. Немного подправил под свои нужды. 

Но использую методы 

//регистрируем новую транзакцию
op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);
//вызываем обработчики необработанных транзакций
op_ProcessHandlers();

 

Затем попытался выполнить несколько платежей, отправляя GET запросы. И как я описывал выше, платеж в опенпез вродибы выполняется, так как видны платежи в базе данных. И меняется баланс клиента. Но сам платеж не выполняется, так как не отправляются комманды, на NAS для включения клиента и через время баланс клиента, становится таким каким был до выполнения платежа. Если внести наличные на баланс клиента, то все нормально, и баланс меняется и клиент включается в NAS

Link to post
Share on other sites

 

 

Затем в разделе Пишем свой фронтенд, скопипастил готовый код. Немного подправил под свои нужды.  Но использую методы  //регистрируем новую транзакцию op_TransactionAdd($hash, $summ, $customerid, $paysys, $note); //вызываем обработчики необработанных транзакций op_ProcessHandlers();

 

так вы создали свой фронтенд .....

можите код сюда показать ??? вашего фронтенда 

Link to post
Share on other sites

По поводу изменения баланса при платеже это я ошибся.  :rolleyes:

 

 

 

if (in_array($customerid, $allcustomers_login)) {

//correctionUserBalance($customerid);

//регистрируем новую транзакцию
op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);
//вызываем обработчики необработанных транзакций
op_ProcessHandlers();

die(json_encode(array( 'pay' => true)));

} else {
die(json_encode(array( 'pay' => false)));
}

 

Забыл закомментить correctionUserBalance($customerid) это она обнуляет баланс клиента.

Получается что опенпейз не срабатывает.

 

 

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

Edited by tramX
Link to post
Share on other sites

По поводу изменения баланса при платеже это я ошибся.  :rolleyes:

 

 

 

if (in_array($customerid, $allcustomers_login)) {

 

//correctionUserBalance($customerid);

 

//регистрируем новую транзакцию

op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);

//вызываем обработчики необработанных транзакций

op_ProcessHandlers();

 

die(json_encode(array( 'pay' => true)));

 

} else {

die(json_encode(array( 'pay' => false)));

}

 

Забыл закомментить correctionUserBalance($customerid) это она обнуляет баланс клиента.

Получается что опенпейз не срабатывает.

 

 

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

ээээээээ

выработать правильный подход?

например научится пользоваться автоморозильником

или пересмотреть методы списания бабла

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

 

но с другой стороны, зачем читать форум

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

когда я каждый раз при этом вопросе прошу почитать бл@#ь форум, а не задавать таких вопросов 

Link to post
Share on other sites

описалибы свою проблему подробнее быстрее нашлиб решение .....)) 

возьмите на вооружение ..... а то прям как викторина угадай что у меня не так ))

Link to post
Share on other sites

 

По поводу изменения баланса при платеже это я ошибся.  :rolleyes:

 

 

 

if (in_array($customerid, $allcustomers_login)) {

 

//correctionUserBalance($customerid);

 

//регистрируем новую транзакцию

op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);

//вызываем обработчики необработанных транзакций

op_ProcessHandlers();

 

die(json_encode(array( 'pay' => true)));

 

} else {

die(json_encode(array( 'pay' => false)));

}

 

Забыл закомментить correctionUserBalance($customerid) это она обнуляет баланс клиента.

Получается что опенпейз не срабатывает.

 

 

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

ээээээээ

выработать правильный подход?

например научится пользоваться автоморозильником

или пересмотреть методы списания бабла

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

 

но с другой стороны, зачем читать форум

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

когда я каждый раз при этом вопросе прошу почитать бл@#ь форум, а не задавать таких вопросов 

 

 

 

если все кинутся читать форум .. с кем тогда  ...  а поговорить ???? .....)) иногда полезно вспомнить все ))

Link to post
Share on other sites

Единственный момент с функцией correctionUserBalance($customerid)  оплошал. Но в целом проблему описал. Что еще необходимо описать? Создаю клиента и произвожу оплаты, в логе это видно.

 

2016-07-07 07:49:35 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39' added.
2016-07-07 07:49:35 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'password' parameter changed from '******' to '******'.
2016-07-07 07:49:35 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'ips' parameter changed from '*' to '172.16.9.224'.
2016-07-07 07:49:36 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'alwaysOnline' parameter changed from '0' to '1'.
2016-07-07 07:49:36 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'DisabledDetailStat' parameter changed from '0' to '1'.
2016-07-07 07:49:54 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'tariffName' parameter changed from '*_NO_TARIFF_*' to 'Unlim30'.
2016-07-07 07:49:55 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'disabled' parameter changed from '0' to '1'.
2016-07-07 07:49:57 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'disabled' parameter changed from '1' to '0'.
2016-07-07 07:50:25 -- Admin 'admin', 127.0.0.1: User 'akal4apa55ap88_oy39': 'cash' parameter changed from '0.000000' to '-80.000000'.
 
 
Следом выполняю оплату openpayz, влогах ничего нет. 
Link to post
Share on other sites

error_reporting(E_ALL);

include ("../../libs/api.openpayz.php");

if ( (isset($_GET['user'])) AND (isset($_GET['paymentid'])) AND (isset($_GET['cash'])) ) {

$allcustomers= op_CustomersGetAll();

$hash='FC'.$_GET['paymentid'];
$summ=$_GET['cash'];
$customerid=trim($_GET['user']);
$paysys='FC';
$note='';
header('Content-type: application/json');

$allcustomers_login = array();
foreach ($allcustomers as $key=>$value){
array_push($allcustomers_login, $allcustomers[$key]);
}

if (in_array($customerid, $allcustomers_login)) {
op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);

op_ProcessHandlers();

die(json_encode(array( 'pay' => true)));

} else {
die(json_encode(array( 'pay' => false)));
}
}
Link to post
Share on other sites
$allcustomers_login = array(); foreach ($allcustomers as $key=>$value){ array_push($allcustomers_login, $allcustomers[$key]); } if (in_array($customerid, $allcustomers_login)) { op_TransactionAdd($hash, $summ, $customerid, $paysys, $note); op_ProcessHandlers(); die(json_encode(array( 'pay' => true))); } else { die(json_encode(array( 'pay' => false))); }

 

а что вы ентим добивались ??? объясните тупику ..,)) 

Edited by seversever404
Link to post
Share on other sites

Вызывая два этих метода,

 

//регистрируем новую транзакцию
op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);
//вызываем обработчики необработанных транзакций
op_ProcessHandlers();

я надеялся что произойдет пополнение баланса клиента.

 

Еще вопрос. В api.payments.php есть метод zb_CashAdd, это же он отвечает за пополнение счета? Как его правильно подключить чтобы Установить счет клиенту?

Link to post
Share on other sites

Вызывая два этих метода,

 

//регистрируем новую транзакцию

op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);

//вызываем обработчики необработанных транзакций

op_ProcessHandlers();

я надеялся что произойдет пополнение баланса клиента.

 

Еще вопрос. В api.payments.php есть метод zb_CashAdd, это же он отвечает за пополнение счета? Как его правильно подключить чтобы Установить счет клиенту?

Никак. op_ProcessHandlers какраз и занят этим, при включенной STG_DIRECT.

 

Ваша проблема - в том, что вы пытаетесь кустарить, что-то стремное (прямая запись в базу, ога) не понимая в принципе, что происходит.

Edited by nightfly
Link to post
Share on other sites

Вызывая два этих метода,

 

//регистрируем новую транзакцию

op_TransactionAdd($hash, $summ, $customerid, $paysys, $note);

//вызываем обработчики необработанных транзакций

op_ProcessHandlers();

я надеялся что произойдет пополнение баланса клиента.

 

Еще вопрос. В api.payments.php есть метод zb_CashAdd, это же он отвечает за пополнение счета? Как его правильно подключить чтобы Установить счет клиенту?

 

сделайте как описано в манах ... ТУТ ... и не изобретайте велосипед . типа как ентот . с проверкой на совпадение в масиве этим занимается OPENPAYZ .. и будетт работать .... у нас работает  .... 

Edited by seversever404
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By nightfly
      Ubilling 1.5.9 rev 9525 The Perfect Lock
       
      Зміни в структурі БД. alter.ini: нова опція GENERATORS_ENABLED, що вмикає модуль моніторингу генераторів. alter.ini: нова опція TB_GENERATORS_NOTIFY, що вмикає нотифікацію про запущені генератори в області сповіщень. alter.ini: нова опція PON_ONU_UNI_STATUS_COMPACT, що вмикає компактне відображення стану мідних портів на ONU. alter.ini: нова опція PONBOXES_MINIMAP, що дозволяє вмикати та вимикати міні-мапу, при редагування ПОН коробки. Новий модуль Єдинорожий телепорт: дозволяє просто та зручно переносити ваш робочий білінг на новий сервер. Модуль “Реєстрація користувачів”: виправлено проблеми сумісності з PHP 8.5. Модуль “Останні події”: викинуто дубову статку на мороз. Askozia PBX: інтеграція була давно непідтримуваною, викинуто на мороз, разом зі всіма опціями. Модуль Mapon: тепер використовує OmaeURL для взаємодії з API. Модуль “Мапа ONU”: в черговий раз покращення навігації між мапою та іншими модулями системи. Новий модуль Генератори: дозволяє моніторити стан генераторів, базово облікувати мотогодини, пальне та планувати ТО. Модуль ПОНізатор: тепер причини останньої дереєстрації ONU можуть визначатись також по серійнику ONU а не тільки за MAC. Модуль “ПОН Коробки”: покращено продуктивність відмальовки зв'язків коробок на мапах. Глобально: проведено чергову спробу зробити логування подій, що відбуваються навколо користувачів, якимось трішки більш притомним. RemoteAPI: новий виклик generators, що запускає скрипти обробки станів генераторів з автоматичним запуском. RemoteAPI: новий виклик gencontrol, для примусового запуску/зупинки генераторів за допомогою зовнішнього ПЗ. Бібліотека UbillingCache: виправлено проблеми сумісності з PHP 8.5. Бібліотека OmaeURL: виправлено проблеми сумісності з PHP 8.5. Бібліотека UbillingTelegram: вся робота з CURL перенесена до одного методу, покращено сумісність з PHP 8.5. Кабінет користувача: виправлено проблеми сумісності з PHP 8.5. UBinstaller: тепер при встановленні попередньо розгортає та конфігурує SphinxSearch. UBinstaller: Зібрано бінарні пакунки для FreeBSD 14.3 amd64 + PHP 8.5. UBinstaller: Зібрано бінарні пакунки для FreeBSD 15.0 amd64 + PHP 8.5.  
      Повний чейнджлог
      Оновлена демка
       
       

    • By maxkorn
      Доброго дня!
      На Mikrotik NAS, створив нову підмережу для клієнтів, все наче порядок, тільки помітив, що не створюються шейпери в Queues для клієнтів цієї підмережі.
      В логах Stargazer наступне:
      2025-12-29 09:05:57 - [Ubilling] - OnConnect started for user `xxasdb5rzm`:
      2025-12-29 09:05:57 - [Executer] - Success: Firewall entry was updated/created
      2025-12-29 09:05:57 - [Executer] - Error: Queue entry can't be updated, missing
      2025-12-29 09:05:57 - [Executer] - Success: Queue_tree entry was updated/created
      2025-12-29 09:05:57 - [Executer] - Success: DHCP entry was updated/created
      2025-12-29 09:05:57 - [Executer] - Success: ARP entry was updated/created
      2025-12-29 09:05:57 - [Ubilling] - QC: 6, elapsed time: 0.064 sec.
       
      При чому, на тому ж мікротіку є ще кілька підмереж, в яких все проходить нормально:
       
      2025-12-29 08:30:17 - [Ubilling] - OnConnect started for user `22zxp7u58x`:
      2025-12-29 08:30:17 - [Executer] - Success: Firewall entry was updated/created
      2025-12-29 08:30:17 - [Executer] - Success: Queue entry was updated/created
      2025-12-29 08:30:17 - [Executer] - Success: Queue_tree entry was updated/created
      2025-12-29 08:30:17 - [Executer] - Success: DHCP entry was updated/created
      2025-12-29 08:30:17 - [Executer] - Success: ARP entry was updated/created
      2025-12-29 08:30:17 - [Ubilling] - QC: 6, elapsed time: 0.602 sec.
       
      Налаштування аналогічні, в чому може бути причина?
    • By ProstoName
      Змінювали мережеву карту. Здається все поправив. Працює. Але є невелика проблема - після внесення коштів (коли абонент був відключений), інет в нього не з'являється. Тільки після заміни тарифу на інший (і потім вернувши тариф) в абонента з'являється інет. 
    • By ppv
      Собака-посилака перестала відправляти повідомлення. Підкажіть де шукати.
      Можливо таке після пропадання світла, сервер ребутнувся, але я не впевнений. Візуально все працює, крон працює, а повідомлення висять в черзі, смс така ж картина.

    • By camchatix
      Привіт!
       
      Є багато запитів, щоб інтернет не виключався у північ, а скажімо в день (сигналізації, камери під охороною і тд)
      При щоденній абонплаті - як знімати гроші не у 12:00 у північ, а наприклад у 11 годин дня ?
×
×
  • Create New...