forum.bitel.ru http://forum.bitel.ru/ |
|
Ошибка в api http://forum.bitel.ru/viewtopic.php?f=22&t=11609 |
Страница 1 из 1 |
Автор: | Inspire [ 19 май 2016, 13:27 ] |
Заголовок сообщения: | Ошибка в api |
Обнаружено несоответствие с документацией в api. Вложение: На картинке видно, что summa2 (т.е. приход) перепутали с расходом summa4 (расходом) Вот скрин этого договора из биллинга Вложение:
|
Автор: | barguzin2 [ 19 май 2016, 14:19 ] |
Заголовок сообщения: | Re: Ошибка в api |
вы путаете теплое с мягким. приводите результат взаимодействия клиента с сервером (вызов WebAction и результирующий XML), а говорите про API. В API никаких table, row и xml нету. кстати, про какое API речь (какой класс и метод) ? |
Автор: | dimOn [ 19 май 2016, 14:37 ] |
Заголовок сообщения: | Re: Ошибка в api |
там просто пронумерованы столбцы |
Автор: | Inspire [ 19 май 2016, 14:58 ] |
Заголовок сообщения: | Re: Ошибка в api |
Программисты блин... Я ошибку в биллинге нашел, хотел вам помочь. У вас в документации одно написано, в биллинге другое |
Автор: | skn [ 19 май 2016, 15:00 ] |
Заголовок сообщения: | Re: Ошибка в api |
Inspire писал(а): Программисты блин... Я ошибку в биллинге нашел, хотел вам помочь. У вас в документации одно написано, в биллинге другое просьба уточнить в какой документации? |
Автор: | dimOn [ 19 май 2016, 18:37 ] |
Заголовок сообщения: | Re: Ошибка в api |
Это исключительно внутренняя сущность по которой не может быть никакой документации. Просто пронумерованы столбцы в получающейся таблице, summaN , никакого отношения к названию столбцов summa1-summa4 в БД итд итп это НЕ имеет |
Автор: | Inspire [ 20 май 2016, 11:27 ] |
Заголовок сообщения: | Re: Ошибка в api |
Подскажите, как через http сменить статус договора? |
Автор: | Phricker [ 20 май 2016, 11:59 ] |
Заголовок сообщения: | Re: Ошибка в api |
Это после Inspire писал(а): Программисты блин... то, помогите пожалуйста? ![]() Мы обидчивые ![]() |
Автор: | Inspire [ 20 май 2016, 13:24 ] |
Заголовок сообщения: | Re: Ошибка в api |
про программистов это была не ирония, а шутка что, вы на шутку обижаетесь? так как это сделать? |
Автор: | Akhmat [ 20 май 2016, 14:02 ] |
Заголовок сообщения: | Re: Ошибка в api |
Через дебаг запусти клиента биллинга, смени статус на договоре каком нибудь и потом в логе смотри как вызов выглядит |
Автор: | Inspire [ 20 май 2016, 15:03 ] |
Заголовок сообщения: | Re: Ошибка в api |
Я это уже делал. там 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 Я не знаю, как через нее сменить статус |
Автор: | dimOn [ 20 май 2016, 15:09 ] |
Заголовок сообщения: | Re: Ошибка в api |
ну, стало быть, через вызов веб-сервиса соответствующего |
Автор: | Inspire [ 20 май 2016, 15:32 ] |
Заголовок сообщения: | Re: Ошибка в api |
через какой? есть описание? |
Автор: | barguzin2 [ 20 май 2016, 15:34 ] |
Заголовок сообщения: | Re: Ошибка в api |
ContractStatusMonitorService стало быть ![]() всё же видно в том же дебаге, что снимали с клиента |
Автор: | Inspire [ 20 май 2016, 17:05 ] |
Заголовок сообщения: | Re: Ошибка в api |
Ок, а где про него прочитать и как работать с ним в wsdl? |
Автор: | barguzin2 [ 20 май 2016, 18:06 ] |
Заголовок сообщения: | Re: Ошибка в api |
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. |
Автор: | Inspire [ 23 май 2016, 13:08 ] |
Заголовок сообщения: | Re: Ошибка в api |
Спасибо, буду читать |
Автор: | Inspire [ 23 май 2016, 13:37 ] |
Заголовок сообщения: | Re: Ошибка в api |
блин, мне бы один пример с этим сервисом |
Автор: | Inspire [ 23 май 2016, 16:07 ] |
Заголовок сообщения: | Re: Ошибка в api |
Код: 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); Делаю такой запрос из скрипта Но статус не меняется |
Автор: | barguzin2 [ 23 май 2016, 21:31 ] |
Заголовок сообщения: | Re: Ошибка в api |
А чё типа в дампах запросов от клиента и от этого скрипта всё совпадает 1:1? Тут, как минимум, не хватает авторизации и еще непонятно в какие параметры @data что пихается, типа оно само как-нибудь разберется? Это уже на форум перл-программинга надо. |
Автор: | Inspire [ 24 май 2016, 12:26 ] |
Заголовок сообщения: | Re: Ошибка в api |
Если б я знал, как авторизоваться и какие параметры куда вставлять, я бы сюда и не писал Кусок кода - это просто для примера с ожиданием того, что тут помогут. Понятно, что он нигде не используется. Потому что он не работает. Что делать - вообще не понятно. Помощь нужна с нуля |
Автор: | Phricker [ 24 май 2016, 12:31 ] |
Заголовок сообщения: | Re: Ошибка в api |
Вдруг поможет |
Автор: | Jimson [ 24 май 2016, 12:35 ] |
Заголовок сообщения: | Re: Ошибка в api |
@data это просто массив из 4 значений. В скрипте с SOAP работают через загрузку wsdl и, соответственно, вызов методов. В perl один тип данных по сути - скаляр, отсюда и возможность передавать аргументы функции не явно, а массивом. А вот зачем при вызове $soap->changeContractStatus вместо списка значений передается одна константа '@data' (строка) мне не ведомо. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |