Получить список ваучеров через wget



  • Возможен ли сабж? Или другими средствами но из shell?



  • http://***/services_captiveportal_vouchers.php?act=csv&id=xx
    xx - номер ролла

    вот кусок кода для скрипта

    /* print all vouchers of the selected roll */
    if ($_GET['act'] == "csv") {
    	$privkey = base64_decode($config['voucher']['privatekey']);
    	if (strstr($privkey,"BEGIN RSA PRIVATE KEY")) {
    		$fd = fopen("{$g['varetc_path']}/voucher.private","w");
    		if (!$fd) {
    			$input_errors[] = gettext("Cannot write private key file") . ".\n";
    		} else {
    			chmod("{$g['varetc_path']}/voucher.private", 0600);
    			fwrite($fd, $privkey);
    			fclose($fd);
    			$a_voucher = &$config['voucher']['roll'];
    			$id = $_GET['id'];
    			if (isset($id) && $a_voucher[$id]) {
    				$number = $a_voucher[$id]['number'];
    				$count = $a_voucher[$id]['count'];
    				header("Content-Type: application/octet-stream");
    				header("Content-Disposition: attachment; filename=vouchers_roll$number.csv");
    				system("/usr/local/bin/voucher -c {$g['varetc_path']}/voucher.cfg -p {$g['varetc_path']}/voucher.private $number $count");
    				unlink("{$g['varetc_path']}/voucher.private");
    				exit;
    			}
    		}
    	} else {
    		$input_errors[] = gettext("Need private RSA key to print vouchers") . "\n";
    	}
    }
    
    /usr/local/bin/voucher -c /ver/etc/voucher.cfg -p var/etc/voucher.private $number $count
    


  • Простите, я видимо неправильно выразился. Нужен сформированный .csv список c кодами ваучеров. Пытаюсь wget-у передать ссылку https://ipaddress/services_captiveportal_vouchers.php?act=csv&id=0, но на выходе получаю страницу с HTML кодом. А сам список vouchers_roll.csv через shell можно достать?



  • Так что, нет вариантов? :(



  • Видимо готового рецепта нет. Разберитесь сами или обратитесь к кому-нибудь кто заинтересуется.



  • В общем мне удалось придумать только один способ как получить коды ваучеров не заходя на pfsense. У lynx есть функция записи последовательности действий.

    lynx  https://urlpfsense -cmd_log=/home/user/lynx.log
    

    После того как действия по сохранению ваучеров будут записаны, следует запустить

    lynx  https://urlpfsense -cmd_script=/home/user/lynx.log
    

    И lynx повторит все действия, что были записаны.



  • тоже интересен данный вопрос.

    пробовал создавать с помощью /usr/local/bin/voucher -c /ver/etc/voucher.cfg -p var/etc/voucher.private $number $count
    выдает ключи, но в гуе их нет…

    в идеале  -необходимо с консоли создавать + добавлять комментарий
    надо скачивать...
    а также надо удалять... и все с консоли...



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


Log in to reply