Имя: Пароль:
1C
1С v8
Интеграция ГИС ЖКХ
0 Greiv
 
07.09.16
11:16
Занимаюсь интеграцией 1с и ГИС ЖКХ так вот там для обмена данными используются soap запросы, дело в том, этот сервис предоставляет wsdl файлы которые в конфигурацию можно подгрузить в качестве ws-ссылок. Проблемы в следующих вещах:
1. В soap запросе обязательно должен присутствовать тег <Header></Header> в котором передаются несколько обязательных параметров, так вот если подключать всё вот таким способом:
WSСсылки.WS_Common.СоздатьWSПрокси("http://dom.gosuslugi.ru/schema/integration/10.0.0.6/nsi-common-service/";, "NsiService", "NsiPort");
И далее работать через фабрики XDTO я так и не нашёл способа задать этот заголовок, так он идёт до тела запроса, есть ли способ его указать?
2.Более важный момент это каноникализация и расчет хэш-суммы для некоторых тегов. Тут вообще не понятно как это сделать. Эта область soap запроса которую нужно подписать называется она <Signature></Signature>, есть информация что эту область можно подписывать автоматически, но как? Подписывая вручную, смог получить корректно только тег <x509Certificate>base64Binary</x509Certificate>, а допустим тег <DigestValue> должен содержать что то типа M8uYaICuJUdeZjeUt6nkyMkb7VTLI4XS7POZy7hvJ/A=
расчёт <DigestValue> должен проводиться по алгоритму http://www.w3.org/2001/04/xmldsig-more#gostr3411
в общем как получить хэш сумму такого вида в 1с?
1 hak99
 
04.10.16
21:32
Приветствую. Пытаюсь заниматься тем же. Предлагаю совместные усилия
2 hak99
 
04.10.16
22:18
Есть вопросы по вашему коду WSСсылки.WS_Common.СоздатьWSПрокси("http://dom.gosuslugi.ru/schema/integration/10.0.0.6/nsi-common-service/";;, "NsiService", "NsiPort"
1) работает ли
2) на основании чего берете адрес http://dom.gosuslugi.ru/schema/integration/10.0.0.6/nsi-common-service/
3) NsiServise и NsiPort переменные с каким то значением или ...?
3 kolodinivan
 
06.10.16
14:11
(1) ++++++++++++++++++++++++++++++
тоже только начал изучать, проблема осложняется тем что не сталкивался с веб сервисами, созданиями защищенных соединений и работа с ЭЦП.

Основу работу веб сервисов в 1с сейчас, более менее, по остальным вещам белое пятно.

Искал в инете место где уже в яром диалоге обсуждаются вопросы интеграции с 1с, но полезного ничего не нашел.

Предлагаю объединиться ))) в одной теме.
4 kolodinivan
 
06.10.16
14:15
Есть конечно уже место где обсуждается интеграция ГИС ЖКХ но только не по нашей платформе http://www.cyberforum.ru/web-services-wcf/thread1615223.html

Кто с чего начинал? Что можно уже сделать не подключившись к тестовому стенду?
5 Nikita75
 
10.10.16
08:57
получилось таким способом?

WSСсылки.WS_Common.СоздатьWSПрокси("http://dom.gosuslugi.ru/schema/integration/10.0.0.6/nsi-common-service/";;, "NsiService", "NsiPort");
6 hak99
 
12.10.16
20:24
Через WS ссылки не получилось пока. Был опыт интеграции похожего сервиса, но без шифрования. Тогда получилось реализовать через HTTPСоединение и написаем на xml правильного запроса.
7 VVi3ard
 
13.10.16
13:00
На самом деле нет смысла делать интеграцию на чистом 1С гораздо разумнее сделать отдельный сервис интегратор на C#/JAVA а из 1С ему передавать данные.

Тем более что и на C# и на JAVA есть полностью рабочие примеры с шифрованием канала (не нужен крипто туннель), формированием и проверкой XADES.

Если делать на 1С то это однозначно HTTP соединение + ручное формирование XML на основе XDTO + что то внешнее для формирования подписи.

Все это в итоге превратится в слабо поддерживаемую хрень.
https://habrahabr.ru/post/311062/  - это статья о том как избавится от туннеля и еще немного полезного, на хабре есть еще.
https://gitter.im/springjazzy/GIS_JKH_Integration - чат где сидят разработчики разных интеграций и сочувствующие им.

Я одно время начинал делать это на 1С но смысла вообще нет, куча различных проблем которые решаются костылями, а потом еще все это сопровождать... При том что на C# есть по сути почти готовое решение (в плане транспорта).

Конечно если кто то сделал на чистом 1С было бы интересно посмотреть на это.
8 hak99
 
16.10.16
13:26
Получилось соединение по ssl с использованием сертификата через wsпрокси. Сервер начинает отвечать с ошибками о незаполненных атрибутах. Как только все исправляю - ошибка exp001000. Или в гисе проблема, или в описании запроса. Кто доходил да данного момента, посоветуйте куда копать
9 Nikita75
 
03.11.16
09:39
(8) Проблема скорее всего в описании запроса. Работает соединение по ssl через wsпрокси? Опиши по подробнее как сделал пожалуйста
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.