urfaclient на php

Вопросы по сопутствующим продуктам производства партнеров
Ответить
Аватара пользователя
ds
Сообщения: 380
Зарегистрирован: Пн сен 18, 2006 14:06

Сообщение ds »

polmax писал(а):версия UTM 5.1.008 u4
Я так понял что сертификат для соединения не нужен? Так как удалял файл сертификата и всё равно соединение происходит, так ли это?
Если есть лицензия на урфаклиента, то да, не нужен.

ssb
Сообщения: 25
Зарегистрирован: Ср апр 13, 2011 11:12
Откуда: Киев
Контактная информация:

Сообщение ssb »

При вызове rpcf_add_service_to_user получаю ошибку:
Fatal error: Call to undefined method URFAClient_Packet::DataSetLong() in /var/www/localhost/htdocs/URFAClient_Admin.php on line 100
И действительно, функции DataSetLong нигде нет, вики перешерстил, отсутствует( Подскажите плз, как она должна выглядеть

Аватара пользователя
ds
Сообщения: 380
Зарегистрирован: Пн сен 18, 2006 14:06

Сообщение ds »

ssb писал(а):При вызове rpcf_add_service_to_user получаю ошибку:
Fatal error: Call to undefined method URFAClient_Packet::DataSetLong() in /var/www/localhost/htdocs/URFAClient_Admin.php on line 100
И действительно, функции DataSetLong нигде нет, вики перешерстил, отсутствует( Подскажите плз, как она должна выглядеть
viewtopic.php?t=6402&postdays=0&postorder=asc&start=240

Код: Выделить всё

    function DataSetLong($param)
    {

              $hi = base_convert(bcdiv($param,4294967296),10,16);
              $lo = base_convert(bcmod($param,4294967296),10,16);
              $this->data[] = pack('H*', $hi.$lo);
              $this->len += 12;
    } 

tsobolev
Сообщения: 3
Зарегистрирован: Пт апр 29, 2011 17:15

Сообщение tsobolev »

Я только начал разбираться с urfaphp и хочу сменить мак адрес в ipgroup. На сколько я понял для этого нужно удалить ip-группу и создать её заново.
Функция rpcf_add_to_ipgroup возвращает "Error calling function rpcf_add_to_ipgroup"

Подскажите, в чём может быть проблема?

Используется сборка 008 update4.

ssb
Сообщения: 25
Зарегистрирован: Ср апр 13, 2011 11:12
Откуда: Киев
Контактная информация:

Сообщение ssb »

tsobolev писал(а):Error calling function rpcf_add_to_ipgroup
Сталкивался с тем же, пользовал rpcf_add_service_to_user

tsobolev
Сообщения: 3
Зарегистрирован: Пт апр 29, 2011 17:15

Сообщение tsobolev »

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

Puzan
Сообщения: 58
Зарегистрирован: Ср окт 31, 2007 09:58

Сообщение Puzan »

Добрый день.

Подскажите как доделать скрипт. Вот общий вид скрипта.

Код: Выделить всё

<?php
##	@ini_set&#40;"display_errors", "1"&#41;;
##	error_reporting&#40;E_ALL&#41;;
 
	require_once&#40;"/www/turbo_speed/urfa/URFAClient.php"&#41;;
 
	$UTM_Login='';
	$UTM_Password='';
 
	$db_host='';
	$db_base='';
	$db_user='';
	$db_password=';

		 
	$db_connect=mysql_connect&#40;$db_host,$db_user,$db_password&#41; or die &#40;"Connect failed"&#41;;
	mysql_select_db&#40;$db_base,$db_connect&#41;;
 
	try &#123;
		$urfa_admin = new URFAClient_Admin&#40;" true, true&#41;;
		&#125; catch &#40;Exception $exception&#41; &#123; 
		echo "Error in line ", $exception->getLine&#40;&#41;;
		echo $exception->getMessage&#40;&#41;; 
	&#125; 
 
#	function reset_credit&#40;$account_id,$urfa_admin&#41; &#123;
#		$accountinfo = $urfa_admin->rpcf_get_accountinfo&#40;$account_id&#41;;  //0x2030
#		$accountinfo&#91;'credit'&#93;= 0 ;
#		$urfa_admin->rpcf_save_account&#40;$account_id,$accountinfo, 0, 0, 0&#41;;  //0x2032 
#	&#125;

	function reset_speed&#40;&#41; &#123;
		system&#40;"/usr/local/bin/speed.sh /queue simple remove &#91;find name=&#93;"&#41;;
	&#125;

	$query="Select id, account From utmtray_speed Where &#40;stopdate_human <= Now&#40;&#41;&#41; and &#40;is_deleted<>1&#41;";
	$result=@mysql_query&#40;$query&#41;;
	$counter=0;
 
	while &#40;$row=mysql_fetch_array&#40;$result&#41;&#41; &#123;
		print date&#40;"d.m.Y H&#58;i",time&#40;&#41;&#41;." SpeedCanceledForAccount=".$row&#91;"account"&#93;."\r\n";
		$query="UPDATE  utmtray_speed SET  is_deleted=1  Where  id=".$row&#91;"id"&#93;;
		@mysql_query&#40;$query&#41;;
		reset_speed&#40;$row&#91;"account"&#93;&#41;;
	&#125;
?>
Интересует как в данной части добавить имя из таблицы MYSQL из поля account

Код: Выделить всё

	function reset_speed&#40;&#41; &#123;
		system&#40;"/usr/local/bin/speed.sh /queue simple remove &#91;find name=имя из таблицы MYSQL из поля account&#93;"&#41;;
	&#125;
Зарание спасибо!
Последний раз редактировалось Puzan Пн май 16, 2011 18:30, всего редактировалось 1 раз.

ssb
Сообщения: 25
Зарегистрирован: Ср апр 13, 2011 11:12
Откуда: Киев
Контактная информация:

Сообщение ssb »

Так вы же в функцию значение передаёте, осталось только его там получить и использовать
<?php
## @ini_set("display_errors", "1");
## error_reporting(E_ALL);

require_once("/www/turbo_speed/urfa/URFAClient.php");

$UTM_Login='';
$UTM_Password='';

$db_host='';
$db_base='';
$db_user='';
$db_password=';


$db_connect=mysql_connect($db_host,$db_user,$db_password) or die ("Connect failed");
mysql_select_db($db_base,$db_connect);

try {
$urfa_admin = new URFAClient_Admin("init", "init", "localhost", 11758, true, true);
} catch (Exception $exception) {
echo "Error in line ", $exception->getLine();
echo $exception->getMessage();
}

# function reset_credit($account_id,$urfa_admin) {
# $accountinfo = $urfa_admin->rpcf_get_accountinfo($account_id); //0x2030
# $accountinfo['credit']= 0 ;
# $urfa_admin->rpcf_save_account($account_id,$accountinfo, 0, 0, 0); //0x2032
# }

function reset_speed($account) {
system("/usr/local/bin/speed.sh /queue simple remove [find name=$account]");
}

$query="Select id, account From utmtray_speed Where (stopdate_human <= Now()) and (is_deleted<>1)";
$result=@mysql_query($query);
$counter=0;

while ($row=mysql_fetch_array($result)) {
print date("d.m.Y H:i",time())." SpeedCanceledForAccount=".$row["account"]."\r\n";
$query="UPDATE utmtray_speed SET is_deleted=1 Where id=".$row["id"];
@mysql_query($query);
reset_speed($row["account"]);
}
?>
Последний раз редактировалось ssb Вт май 17, 2011 11:24, всего редактировалось 1 раз.

Puzan
Сообщения: 58
Зарегистрирован: Ср окт 31, 2007 09:58

Сообщение Puzan »

ssb писал(а):Так вы же в функцию значение передаёте, осталось только его там получить и использовать
<?php
## @ini_set("display_errors", "1");
## error_reporting(E_ALL);

require_once("/www/turbo_speed/urfa/URFAClient.php");

$UTM_Login='';
$UTM_Password='';

$db_host='';
$db_base='';
$db_user='';
$db_password=';


$db_connect=mysql_connect($db_host,$db_user,$db_password) or die ("Connect failed");
mysql_select_db($db_base,$db_connect);

try {
$urfa_admin = new URFAClient_Admin("init", "eqlbgfcrelf", "80.67.245.241", 11758, true, true);
} catch (Exception $exception) {
echo "Error in line ", $exception->getLine();
echo $exception->getMessage();
}

# function reset_credit($account_id,$urfa_admin) {
# $accountinfo = $urfa_admin->rpcf_get_accountinfo($account_id); //0x2030
# $accountinfo['credit']= 0 ;
# $urfa_admin->rpcf_save_account($account_id,$accountinfo, 0, 0, 0); //0x2032
# }

function reset_speed($account) {
system("/usr/local/bin/speed.sh /queue simple remove [find name=$account]");
}

$query="Select id, account From utmtray_speed Where (stopdate_human <= Now()) and (is_deleted<>1)";
$result=@mysql_query($query);
$counter=0;

while ($row=mysql_fetch_array($result)) {
print date("d.m.Y H:i",time())." SpeedCanceledForAccount=".$row["account"]."\r\n";
$query="UPDATE utmtray_speed SET is_deleted=1 Where id=".$row["id"];
@mysql_query($query);
reset_speed($row["account"]);
}
?>
спасибо я уже разобрался просто тупанул

Удали плиз из своего сообщения $urfa_admin = new URFAClient_Admin("init", "

Puzan
Сообщения: 58
Зарегистрирован: Ср окт 31, 2007 09:58

Сообщение Puzan »

Подскажите как получить IP адресс из сервесной связки через urfa ?

Спасибо!

Вот часть кода куда надо его вставить.

Код: Выделить всё

function set_speed&#40;$user_id, $account_id, $urfa_admin&#41; &#123;
			case 1 &#58;
			$length_speed = 10;
			$speed = 100;

			system&#40;"/usr/local/bin/mikrotik_rfw.sh /queue simple add name=$account_id target-addresses=IP адресс limit-at=100M/100M max-limit=100M/100M priority=1"&#41;;

			break;

Monstreek
Сообщения: 1
Зарегистрирован: Пн фев 09, 2009 17:27

Сообщение Monstreek »

Здравствуйте, скачал urfaphp, подправил функции, вроде то что нужно было заработало на тестовых скриптах (требовалось создать пользователя + связки и прочие), ковырялся под windows xp + PHP 5.2.14 (cli) (built: Jul 21 2010 18:43:55), получение отчета по платежам пользователя.

Начал переносить скрипты на сервер, там debian + PHP 5.3.3-7 with Suhosin-Patch (cli) (built: Jan 5 2011 10:36:05) , перестали работать пользовательские функции, отдают Error calling function rpcf_user5_payments_report например, тот же самый код что и под виндувсом, в чем проблема понять не могу, обратил внимание что пользовательские функции отрицательные, может в php 5.3.3 как то по другому это обрабатывается?

разрядность операционок разная, виндувс 32 битный, линукс х64, пхп видимо тоже, может как то это влияет

UPD: провел эксперимент на другом сервере с debian x86 + PHP 5.3.3-7 with Suhosin-Patch (cli) (built: Jan 5 2011 12:52) (уже 32 битный), функции пользовательские работают...

ssb
Сообщения: 25
Зарегистрирован: Ср апр 13, 2011 11:12
Откуда: Киев
Контактная информация:

Сообщение ssb »

Столкнулся со странной проблемой: добавлял скриптами пользователям значения дополнительных параметров (rpcf_edit_user_new), всё сработало хорошо, но после этого при редактировании пользователя админкой она (админка то бишь) выдавала ошибку при нажатии "ОК", хотя изменения вносились.
Исправил странным методом: для каждого пользователя выполнил:

Код: Выделить всё

$user=$urfa_admin->rpcf_get_userinfo&#40;$uid&#41;;
$urfa_admin->rpcf_edit_user_new&#40;$user,$user&#91;'parameters'&#93;&#41;;
Кто обьяснит такое странное поведение?

weaker
Сообщения: 1
Зарегистрирован: Чт май 26, 2011 14:31

Вопросы по работе с сервисами.

Сообщение weaker »

Вопрос решен.
Последний раз редактировалось weaker Пн май 30, 2011 08:49, всего редактировалось 1 раз.

noisy
Сообщения: 14
Зарегистрирован: Ср сен 09, 2009 13:11

Сообщение noisy »

"выдет "login error", хотя пароль и логин верны"
эх сам-дурак :(
оказывается был запрещен коннект с данного IP
Последний раз редактировалось noisy Пт июл 08, 2011 00:02, всего редактировалось 1 раз.

ronin
Сообщения: 74
Зарегистрирован: Чт фев 03, 2011 00:57

Сообщение ronin »

Кто сможет в двух словах обьяснить как использовать урфу

Ответить