urfaclient на php
Вот кто меня всегда удивлял, так это люди, которые умудряются взять фриварный код, и выразить "НЕНАВИСТЬ" к автору.. Вам код дали нахаляву, мзды не требуют, так нет же, надо выразить свое "фи".. Не нравится - не пользуй, принцип известный.. Чем публично изливать свой негатив, связались бы с автором, да высказали свои соображения на предмет корректировки.
Как абсолютно правильно сказал Wishmaster, код помог многим людям, в том числе и мне.
Как абсолютно правильно сказал Wishmaster, код помог многим людям, в том числе и мне.
Шелдон Купер ?kha0s писал(а):"Сперва добейся"?Pulse писал(а):...
Еще раз подчеркну, что я прекрасно понимаю, что программа предоставляется "как есть". И я бы даже не утруждался сюда что-либо написать, если бы не ваша манера разговора. Оно ведь все-таки заработало, пусть и после изрядной доработки напильником. За что, вам, конечно, спасибо.ds писал(а):...
Во-первых, "блин", употребленное как междометие, обособляется запятыми.
Во-вторых, в моем предыдущем сообщении не было ни одного слово про МЕНЯ и почти ни одного (кроме самого вступления и конца) про ВАС. Я, преимущественно, разговаривал про НЕГО (который код). Так что где вы нашли "понты дешевые" ученые так и не выяснили.
В-третьих, вы как-то быстро перешли на обсуждения меня и моих личных качеств, о которых, как я уже сказал, я даже не упомянул. Это называется ad hominem - прием в полемике, когда легче обос*ать самого оппонента, чем его аргументы.
Считаю нужным еще раз подчеркнуть, что именно вас я никак не затронул кроме реплик в начале и конце сообщения, продиктованных исключительно вашей, на мой взгляд, нехорошей манерой отвечать на вопросы.
В четвертых, еще более покрыто мраком то, как вы определили мои достижения по моему "тону". Малозначительные? Возможно. Смотря с кем сравнивать.
В пятых, насчет \r\n/\n конверсии последовательностей перевода строк я уже написал в самом начале. От "\r и \n PHP не приветствует" мой мозг расплавился и залил плечи раскаленными потоками. Как не приветствует? Или вы любите писать весь код в одну строчку? К томуже проблема с \r\n/\n относится не к PHP (вам, как специалисту, это должно быть известно), а к DIFF-файлу. И, кстати, вы не ответили и на половину моих вопросов.
Насчет разработки - возможно. Попробую на днях полопатить исходники и выложу сюда что получится. Однако маловероятно.
И последнее. Да, вас я прекрасно понял, поняли ли вы меня - загадка, но оно и не особенно важно.
Ах да, чуть не забыл, так все же, зачем нужно было делать дифф для двух файлов в сумме по несколько сотен строк?
P.S. For great justice - не хотел никого обидеть (сильно). Спасибо за код, который, вобщем-то, сэкономил время.
P.P.S. Однако интересно, как вы быстро отвечаете, странно что такого не происходит, когда вас о чем-то спрашивают по вашему продукту. Мистика.
-
- Сообщения: 5
- Зарегистрирован: Пн май 04, 2009 09:30
Код: Выделить всё
function rpcf_get_routers_list() { //0x5002
$ret=array();
if (!$this->connection->urfa_call(0x5002)) {
print "Error calling function ". __FUNCTION__ ."\n";
return FALSE;
}
$x = $this->connection->urfa_get_data();
$count = $x->DataGetInt();
$ret['routers_size'] = $count;
for ($i=0;$i<$count;$i++) {
$router['router_id']=$x->DataGetInt();
$router['router_type']=$x->DataGetInt();
$router['router_ip']=$x->DataGetString();
$router['login']=$x->DataGetString();
$router['password']=$x->DataGetString();
$router['router_comments']=$x->DataGetString();
$router['router_bin_ip']=$x->DataGetIPAddress();
$ret['routers'][]=$router;
}
$this->connection->urfa_get_data();
return $ret;
}
Не подскажешь как разобрался? Буду благодарен.Puzan_aga писал(а):Спасибо. С этой проблемой разобрался.ds писал(а):С урфой все в порядке, в другом причина значит.Puzan_aga писал(а):Патч накатил. Сертефикат лежит вместе с urfads писал(а):Если версия 008, то похоже, что патч и/или сертификат для urfaphp не установлены. Без этого админские функции НЕ будут работать.
Если не сложно посмотри мою ufra Может конечно накасячил где.
http://zalil.ru/29847410
Зарание спасибо!
А не подскажите чем можно заменить вот эту функцию rpcf_add_once_service_to_user
Она веть признана устаревшей
[UPD] Разобрался сам, вся соль заключается в том куда положить сертификат, если urfa лежит в отдельной папке и в ней лежит сертификат, а скрипт лежит в другом месте, он работать не будет. Если сертификат положить рядом со скриптом он будет работать, по крайней мере у меня так..
Пропатчена urfaphp для 008? Иначе рабоать не будет.
Если да, то вместо
Код: Выделить всё
new URFAClient_User5("web", "pass", "127.0.0.1", 11758, false);
Код: Выделить всё
new URFAClient_User5("web", "pass", "127.0.0.1", 11758, true, false);
Код: Выделить всё
new URFAClient_User5("web", "pass", "127.0.0.1", 11758, true, true);
Пропатчил. Поместил admin.crt в /urfaphp.
Сделал полный доступ (естесственно со своим логином и пасом):
При попытке зайти в ЛК:

По форуму выше брал urfu других пользователей - то же самое... Не подскажете в чем дело?
Сделал полный доступ (естесственно со своим логином и пасом):
Код: Выделить всё
new URFAClient_User5("web", "pass", "127.0.0.1", 11758, true, true);


По форуму выше брал urfu других пользователей - то же самое... Не подскажете в чем дело?
Надо пересобрать пхп с поддержкой openssl. Вроде начиная с 008, подключения urfa без использования ssl запрещены совсем.nicol@s писал(а):Пропатчил. Поместил admin.crt в /urfaphp.
Сделал полный доступ (естесственно со своим логином и пасом):При попытке зайти в ЛК:Код: Выделить всё
new URFAClient_User5("web", "pass", "127.0.0.1", 11758, true, true);
![]()
По форуму выше брал urfu других пользователей - то же самое... Не подскажете в чем дело?
Народ, помогите разобраться и понять.
вот я завожу пользователя, затем аккаунт, присваиваю ему тариф
$urfa_admin->rpcf_link_user_tariff($user_id,$account_id,$tariff_current,$urfa_next_tariff,$dyn_discount_period_id,$tariff_link_id);
, а затем вешаю на него сервисы (услуги)
$added_srv = $urfa_admin->rpcf_add_service_to_user($service);
после этого если зайти в админку утм-овскую (которая на джаве на писана) то там получается: пользователю отдельно тариф присвоен и отдельно 2 услуги. как будто они не прилинкованы к тарифу, хотя всё работает. Но в будущем, если я решу сменить тарифный план у пользователя и поставить со следующего расчетного периода новый тариф, то тариф сменится, а услуги останутся висеть старыми, потому что тариф сам по себе и услуги сами по себе. Возможно ли как то сделать, чтобы услуги прилинковывались к тарифному плану который висит на пользователе??? чтоб потом можно было легко перевести пользователя на другой тариф. Если плохо объяснил, могу скрины прицепить чтоб подробно всё было и понятно
вот я завожу пользователя, затем аккаунт, присваиваю ему тариф
$urfa_admin->rpcf_link_user_tariff($user_id,$account_id,$tariff_current,$urfa_next_tariff,$dyn_discount_period_id,$tariff_link_id);
, а затем вешаю на него сервисы (услуги)
$added_srv = $urfa_admin->rpcf_add_service_to_user($service);
после этого если зайти в админку утм-овскую (которая на джаве на писана) то там получается: пользователю отдельно тариф присвоен и отдельно 2 услуги. как будто они не прилинкованы к тарифу, хотя всё работает. Но в будущем, если я решу сменить тарифный план у пользователя и поставить со следующего расчетного периода новый тариф, то тариф сменится, а услуги останутся висеть старыми, потому что тариф сам по себе и услуги сами по себе. Возможно ли как то сделать, чтобы услуги прилинковывались к тарифному плану который висит на пользователе??? чтоб потом можно было легко перевести пользователя на другой тариф. Если плохо объяснил, могу скрины прицепить чтоб подробно всё было и понятно
вобщемChrst писал(а): в качестве $service['service_id'] и $service['tariff_link_id'] что передаете?
$service['service_id'] равно id услуги в тарифе
а вот
$service['tariff_link_id'] равно нулю
Код: Выделить всё
$tariff_link_id = 0;
$tarif_info = $urfa_admin->rpcf_get_tariff($tariff_current);
// присваиваем тариф
$urfa_admin->rpcf_link_user_tariff($user_id,$account_id,$tariff_current,$urfa_next_tariff,$dyn_discount_period_id,$tariff_link_id);
// определяем кол-во услуг в тарифе
$srv_count_in_tarif = count($tarif_info['services']);
for($srv_i = 0; $srv_i < $srv_count_in_tarif; $srv_i++) {
$srv_in_tarif = $tarif_info["services"][$srv_i];
echo "<br>srv_i=$srv_i";
echo "<br>srv_in_tarif=";
print_r($srv_in_tarif);
echo "<br>";
$service = array();
$service['user_id'] = $user_id;
$service['account_id'] = $account_id;
$service['discount_period_id']= $dyn_discount_period_id;
$service['return_type'] = 'integer_return';
$service['service_id'] = $srv_in_tarif['service_id'];
$service['service_type'] = $srv_in_tarif['service_type'];
$service['tariff_link_id'] = 0;
$service['slink_id'] = 0;
$service['is_blocked'] = 0;
$service['start_date'] = time();
$service['expire_date'] = mktime(0,0,0,1,1,2020); // 2000000000;
$service['unabon'] = 0;
$service['unprepay'] = 0;