BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 18 июн 2025, 01:20

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 23 ] 
Автор Сообщение
 Заголовок сообщения: Ошибка в api
СообщениеДобавлено: 19 май 2016, 13:27 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Обнаружено несоответствие с документацией в api.
Вложение:
Безымянный.png
Безымянный.png [ 26.16 КБ | Просмотров: 8788 ]


На картинке видно, что summa2 (т.е. приход) перепутали с расходом summa4 (расходом)
Вот скрин этого договора из биллинга
Вложение:
Безымянный1.png
Безымянный1.png [ 32.12 КБ | Просмотров: 8787 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 19 май 2016, 14:19 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
вы путаете теплое с мягким. приводите результат взаимодействия клиента с сервером (вызов WebAction и результирующий XML), а говорите про API. В API никаких table, row и xml нету. кстати, про какое API речь (какой класс и метод) ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 19 май 2016, 14:37 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
там просто пронумерованы столбцы

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 19 май 2016, 14:58 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Программисты блин...
Я ошибку в биллинге нашел, хотел вам помочь.
У вас в документации одно написано, в биллинге другое


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 19 май 2016, 15:00 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
Inspire писал(а):
Программисты блин...
Я ошибку в биллинге нашел, хотел вам помочь.
У вас в документации одно написано, в биллинге другое


просьба уточнить в какой документации?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 19 май 2016, 18:37 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Это исключительно внутренняя сущность по которой не может быть никакой документации.
Просто пронумерованы столбцы в получающейся таблице, summaN , никакого отношения к названию столбцов summa1-summa4 в БД итд итп это НЕ имеет

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 11:27 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Подскажите, как через http сменить статус договора?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 11:59 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Это после
Inspire писал(а):
Программисты блин...

то, помогите пожалуйста? :D
Мы обидчивые :lol:

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 13:24 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
про программистов это была не ирония, а шутка
что, вы на шутку обижаетесь?
так как это сделать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 14:02 
Не в сети

Зарегистрирован: 05 окт 2007, 13:36
Сообщения: 1073
Карма: 46
Через дебаг запусти клиента биллинга, смени статус на договоре каком нибудь и потом в логе смотри как вызов выглядит

_________________
интеграция биллинга с 1с http://bgbilling-1c.ru/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 15:03 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Я это уже делал. там wsdl используется
Код:
https://172.16.0.6:8443/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService?wsdl -> {http://service.common.statu
s.contract.kernel.bgbilling.bitel.ru/}ContractStatusMonitorService:changeContractStatus


Я не знаю, как через нее сменить статус


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 15:09 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
ну, стало быть, через вызов веб-сервиса соответствующего

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 15:32 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
через какой? есть описание?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 15:34 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
ContractStatusMonitorService стало быть :)
всё же видно в том же дебаге, что снимали с клиента


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 17:05 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ок, а где про него прочитать и как работать с ним в wsdl?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 20 май 2016, 18:06 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
Inspire писал(а):
Я это уже делал. там wsdl используется
Код:
https://172.16.0.6:8443/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService?wsdl -> {http://service.common.statu
s.contract.kernel.bgbilling.bitel.ru/}ContractStatusMonitorService:changeContractStatus


Я не знаю, как через нее сменить статус


если вы делали то, что советовал Akhmat, и были достаточно внимательными, то этой информации должно хватить, чтобы через SOAP-клиент вызвать метод changeContractStatus сервиса ContractStatusMonitorService с параметрами, подсмотренными в логах дебага.

Можно также написать свой веб-экшин, в котором данный сервис уже используется в качестве API и к этому экшину уже можно будет делать обычный запрос из браузера. прочитать про сервис можно здесь https://bgbilling.ru/v7.0/javadoc/ru/bitel/bgbilling/kernel/contract/status/common/service/ContractStatusMonitorService.html. Пример использования сервисов в своих скриптах здесь http://wiki.bitel.ru/index.php/%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B7%D0%B0%D0%BA%D1%80%D1%8B%D1%82%D0%B8%D1%8F_%D1%81%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B9, для ядра MID=0.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 23 май 2016, 13:08 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Спасибо, буду читать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 23 май 2016, 13:37 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
блин, мне бы один пример с этим сервисом


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 23 май 2016, 16:07 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Код:
my $soap = SOAP::Lite->new();
$soap->service('http://172.16.0.5:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService?wsdl') or die ( 'Can not get SOAP object' );
$soap->proxy('http://172.16.0.5:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService');
my @data = (19,0,"23.05.2016","test");
#my $result = $soap->call('changeContractStatus', '$data');
my $result = $soap->changeContractStatus('@data');
my @ans = $result->result;
print Dumper(@ans);


Делаю такой запрос из скрипта
Но статус не меняется


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 23 май 2016, 21:31 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
А чё типа в дампах запросов от клиента и от этого скрипта всё совпадает 1:1? Тут, как минимум, не хватает авторизации и еще непонятно в какие параметры @data что пихается, типа оно само как-нибудь разберется? Это уже на форум перл-программинга надо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 24 май 2016, 12:26 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Если б я знал, как авторизоваться и какие параметры куда вставлять, я бы сюда и не писал
Кусок кода - это просто для примера с ожиданием того, что тут помогут.
Понятно, что он нигде не используется. Потому что он не работает.
Что делать - вообще не понятно. Помощь нужна с нуля


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 24 май 2016, 12:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Вдруг поможет

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка в api
СообщениеДобавлено: 24 май 2016, 12:35 
Не в сети

Зарегистрирован: 07 май 2008, 13:34
Сообщения: 594
Откуда: Москва
Карма: 27
@data это просто массив из 4 значений. В скрипте с SOAP работают через загрузку wsdl и, соответственно, вызов методов. В perl один тип данных по сути - скаляр, отсюда и возможность передавать аргументы функции не явно, а массивом.
А вот зачем при вызове $soap->changeContractStatus вместо списка значений передается одна константа '@data' (строка) мне не ведомо.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 23 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.055s | 64 Queries | GZIP : On ]