From 640c6a4426356f45617c5c400b214febc3454a67 Mon Sep 17 00:00:00 2001 From: myrinx Date: Fri, 10 Jan 2014 11:52:34 +0100 Subject: [PATCH] Create liquid_payout.php Add support for a cronjob to send liquid assets. Maintains a set reserve and sends only when a wallet address is set; and the threshold is set in the config. --- cronjobs/liquid_payout.php | 57 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 cronjobs/liquid_payout.php diff --git a/cronjobs/liquid_payout.php b/cronjobs/liquid_payout.php new file mode 100644 index 00000000..f357c766 --- /dev/null +++ b/cronjobs/liquid_payout.php @@ -0,0 +1,57 @@ +#!/usr/bin/php +can_connect() === true){ +$dBalance = $bitcoin->getbalance(); +// Check Wallet Balance +$log->logDebug("The Wallet Balance is " .$dBalance. "\n"); +$dGetInfo = $bitcoin->getinfo(); + +// Check for POS Mint +if (is_array($dGetInfo) && array_key_exists('newmint', $dGetInfo)) { +$dNewmint = $dGetInfo['newmint']; + +$log->logDebug("Current Mint is: " .$dNewmint); +} else { + $dNewmint = -1; +} +} else { + $dBalance = 0; + $dNewmint = -1; + $log->logError('Unable to connect to wallet RPC service'); +} + +// Fetch locked balance from transactions +$dLockedBalance = $transaction->getLockedBalance(); +$log->logDebug("The Locked Wallet Balance for Users is: " .$dLockedBalance. "\n"); + +// Fetch Final Wallet Balance after Transfer +$dFloat = $dLockedBalance + $config['coldwallet']['reserve']; +$dThreshold = $config['coldwallet']['threshold']; +$sendAddress = $config['coldwallet']['address']; + +$log->logDebug("The Locked Wallet Balance & Float amounts to: " .$dFloat. "\n"); + +// Send Liquid Balance +$send = $dBalance - $dFloat ; +$log->logInfo("Final Sending Amount is : " .$send. "\n"); + +if($send > $dThreshold){ + if($sendAddress !== ''){ + $bitcoin->sendtoaddress($sendAddress, $send); + } + else { + $log->logInfo("No wallet address set\n"); + } +} +else{ + $log->logInfo("Final Sending Amount Not Exceed threshold : " .$send. "\n"); +} +?> +