Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (5)

04.05.2017, 15:29. Показов 198890. Ответов 876

Студворк — интернет-сервис помощи студентам
Предыдущая тема: Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4)


И так мы Я и umatkot, Берёмся за реализацию всего этого ... безобразия, кто хочет присоединиться пишите в личку.

Ссылка на гидхаб проекта будет предоставлена после того как мы запилим начальную версию с более менее работающим функционалом и маном интеграции...
3
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.05.2017, 15:29
Ответы с готовыми решениями:

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (3)
Предыдущая тема: https://www.cyberforum.ru/web-services-wcf/thread1776736.html Кто нибудь знает откуда брать справочники NsiRef по...

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ
Здравствуйте! Передо мной стоит задача интеграции с системой ГИС ЖКХ (https://dom.gosuslugi.ru/) программой, написанной на языке...

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4)
Предыдущая тема: https://www.cyberforum.ru/web-services-wcf/thread1800721.html Здравствуйте. Подскажите, пожалуйста: делаю getState...

876
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
01.09.2017, 17:21
Студворк — интернет-сервис помощи студентам
они же написали по почте, что будут в это время оптимизировать БД. это уже второй раз. первый раз было в августе кажется, в начале. вам письма на почту не приходят что-ли?

Добавлено через 4 минуты
hhmm, вот реализация примера от Naguwal - многопоточная и проверенная. мы её забросили.
https://github.com/x-amer-ngmx... gmx-SISHaU
0
4 / 4 / 0
Регистрация: 21.04.2015
Сообщений: 45
08.09.2017, 04:35
Всем привет, помогите с загрузкой файла для договора управления. Есть код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
public static bool SendAttachmentFile(string url, string UploadContext)
        {
            AttachmentGUID_ = null;
            AttachmentHASH_ = null;
            
            bool result = false;
 
            //См Альбом ТФФ
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url + "/" + UploadContext + "/");
            request.Method = "PUT";
            request.ClientCertificates.Add(s_SigningCertificate);
            request.Date = DateTime.Now;
            Byte[] bytes = File.ReadAllBytes(AttachmentFILENAME);
            String file = Convert.ToBase64String(bytes);
            request.ContentLength = bytes.Length;
            request.Headers.Add("X-Upload-Dataprovider", "25e11b88-4757-47e4-92ac-ce42bc3cbae2");
            request.Headers.Add("X-Upload-Filename", AttachmentNAME);
 
            MD5 md5 = MD5.Create();
            var hash = md5.ComputeHash(bytes);
            string encodedHash = Convert.ToBase64String(hash);
 
            HashAlgorithm myhash = HashAlgorithm.Create("GOST3411");
            var gosthash = myhash.ComputeHash(bytes);
            AttachmentHASH_ = BitConverter.ToString(gosthash).Replace("-", "");
 
            request.Headers.Add("Content-MD5", encodedHash);
 
            Stream stream = request.GetRequestStream();
            stream.Write(bytes, 0, bytes.Length);
            stream.Close();
            try
            {
                using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                {
                    IEnumerable<string> headerValues = response.Headers.GetValues("X-Upload-UploadID");
                    AttachmentGUID_ = headerValues.FirstOrDefault();
                    response.Close();
                    result = true;
                }
 
            }
            catch (WebException e)
            {
                using (WebResponse response = e.Response)
                {
                    HttpWebResponse httpResponse = (HttpWebResponse)response;
                    IEnumerable<string> headerValues = response.Headers.GetValues("X-Upload-Error");
                    //string error = headerValues.FirstOrDefault();
                    response.Close();
                    MessageBox.Show(AttachmentFILENAME + " не загружен: "/* + error*/);
                }
            }
            return result;
 
        }
Url запроса при вызове: https://api.dom.gosuslugi.ru/e... Agreement/

При попытке получить ответ от сервера (request.GetResponse()): приходит ошибка

Internal Server Error.
{Connection: keep-alive
Strict-Transport-Security: max-age=31536000; includeSubdomains;
Content-Length: 6130
Content-Type: text/xml
Date: Fri, 08 Sep 2017 01:13:34 GMT
Set-Cookie: route_ext-soap=e8d91035b67969cea225bc239747435f; Path=/
Server: nginx}

Не могу понять что и к чему. Может кто подскажет что нибудь?
0
 Аватар для vst377
12 / 12 / 0
Регистрация: 02.06.2017
Сообщений: 75
12.09.2017, 10:35
Могу высказать предположение, Content-Length: 6130 - это более 5 мегабайт, файл нужно грузить частями

Добавлено через 3 минуты
Цитата Сообщение от CCAlek Посмотреть сообщение
svl42,
Да,
Логин: sit
Пароль: xw{p&&Ee3b9r8?amJv*]
CCAlek, действительно, огромное спасибо!

Кто знает, где публикуется инфа о смене этого логина пароля?
0
 Аватар для vst377
12 / 12 / 0
Регистрация: 02.06.2017
Сообщений: 75
12.09.2017, 10:51
Нет, наврал вам про размер, извиняюсь. Скидываю пример своего кода. Работает с файлами меньше 5 мегабайт
Вложения
Тип файла: zip GisFileClient.zip (3.3 Кб, 50 просмотров)
0
4 / 4 / 0
Регистрация: 10.04.2017
Сообщений: 19
12.09.2017, 11:45
vst377,
Отправляют на почту. Больше нигде не публикуют

Добавлено через 1 минуту
Уважаемый пользователь!



Был изменен пароль basiс авторизации на стендах СИТ01 и СИТ02.

Новые данные для авторизации:

Логин: sit

Пароль: xw{p&&Ee3b9r8?amJv*]



С уважением,

Служба технической поддержки

ГИС ЖКХ

Вот такой текст отправляют
0
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
12.09.2017, 14:22
daniel_tlk, ответом выше Вашего вопроса есть приложение, которое выгружало ФИЛЬМЫ на ГИС ЖКХ правда частями в многопоточке.
0
4 / 4 / 0
Регистрация: 21.04.2015
Сообщений: 45
13.09.2017, 02:11
umatkot, vst377, спасибо. Проблему решил, но теперь другая: файл загружается, присваивается гуид, я его указываю в договоре управления, отправляю запрос на импорт ДУ, а в ответ приходит "файл с таким GUID не найден. FIL001001"
0
1 / 1 / 0
Регистрация: 13.10.2016
Сообщений: 64
20.09.2017, 07:34
Привет всем! Погадайте пожалста мою загадку:

отправляем счетчик, методом
importMeteringDeviceDataRequest
указываем в DeviceDataToCreate -> ResidentialPremiseDevice
AccountGUID=e8b19c33-4af1-4702-af14-0d0b24c9dc9e

потом хотим проверить, что создалось,
вызываем
exportMeteringDeviceData
находим в XML этот счетчик по его guid
смотрим секцию ResidentialPremiseDevice
и видим, что он прикреплён не к тому лицевому счету!!! (точнее вообще не понятно к какому объекту)
XML
1
<ns13:AccountGUID>d1a90730-1061-4981-97b5-7b3fcf9b8734</ns13:AccountGUID>
p.s. может кто подскажет, как найти в ГИС-е объект по guid-у, и какой его тип?
0
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
20.09.2017, 11:41
kevinlexus, а что в ЛК видно? Если создать через ЛК, а потом выгрузить через сервис, то такая-же история?
0
1 / 1 / 0
Регистрация: 13.10.2016
Сообщений: 64
21.09.2017, 05:36
Такая же. не понятный Account Guid.
Есть предположение, что это Guid Единого лицевого счета...
тогда как выгрузить единые лиц.счета?
0
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
21.09.2017, 16:12
kevinlexus, Вы немного плаваете в определениях. Единый лицевой не GUID формата, а набор символов с цифрами (указан в примерах заполнения шаблонов и в регламенте и в альбомах). Пришлите XML запрос, и экспорт по приборам учёта, вероятно, туда затесался TransportGuid, даже если там accountguid, то можно сделать по нему экспорт и узнать, что это за аккаунт и проверить, реально ли на него лёг счётчик в ЛК. Вообще-то такие вопросы лучше решать с ТП.
0
2 / 1 / 0
Регистрация: 16.09.2016
Сообщений: 54
21.09.2017, 16:51
Товарищи, возникла проблема AUT011005: Ошибка формата подписи запроса
У организации, работающей как ИС закончился срок действия сертификата. Продлили, залили на ГИС новенький, у себя тоже обновили всё. Через криптотюннель проходим, стучимся на ГИС и в любом запросе получаем эту ошибку. Даже на таком простом, как запрос сведений об организации. Тех поддержка тупо молчит, заказчики рвут и мечут - какого хрена мы не заливаем данные... Куда рыть, подскажите, любезные )
0
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
21.09.2017, 17:14
HellRiser, бывает, у них глючит это дело, по крайней мере год назад страдали - прорывайтесь через первые ряды ТП к более квалифицированным и долбите, долбите их по ТЕЛЕФОНУ. Запросы по сертификату - все одинаковые - нет простых и сложных относительно подписи, и ошибка там одна - не получается проверить подпись.

Добавлено через 4 минуты
HellRiser, хотя, обычно, если не тем сертификатом подписываешь, то приходит сообщение о том, что не найдена ИС. Может быть дело в самой подписи, символы там не экранируются, раньше разбирали эти варианты...
0
2 / 1 / 0
Регистрация: 16.09.2016
Сообщений: 54
21.09.2017, 18:51
umatkot а на сколько раньше разбирали? хотя б в какой части из пяти искать разбор этих вариантов?
0
 Аватар для hhmm
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
21.09.2017, 21:27
Цитата Сообщение от HellRiser Посмотреть сообщение
umatkot а на сколько раньше разбирали? хотя б в какой части из пяти искать разбор этих вариантов?
Сюда посмотрите для начала.
1
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
22.09.2017, 02:57
HellRiser, я бы непременно попробовал куклу ланита для теста сертификата Интеграция с ГИС ЖКХ и подпись SOAP без Крипто .NET и stunnel
0
4 / 4 / 0
Регистрация: 10.04.2017
Сообщений: 19
22.09.2017, 03:11
kevinlexus,
Для экспорта AccountGUID необходимо использовать exportAccountData
0
2 / 1 / 0
Регистрация: 16.09.2016
Сообщений: 54
22.09.2017, 09:29
hhmm, umatkot, спасибо, втыкаю
бегло пробежался по ссылкам, там даты изменений как минимум полгода. А у нас сломалось всё буквально 2 недели взад из-за кончины сертификата. Может что-то изменилось за год в формировании его? Делал так:
1. через P12FromGostCSP получил *.pfx
2. openssl pkcs12 -in D:\sert.pfx -out D:\sert.key -nodes
3. выгрузил сертификат без закрытого ключа в кодировке DER (*.cer) - его залили на сайт
4. получил openssl x509 -inform DER -outform PEM -in D:\sert.cer -out D:\sert.pem

Добавлено через 37 минут
попробовали выгрузить через шаблоны екселя - тоже отлуп по доступу. ТП будем пинать

Добавлено через 25 минут
опять я ) отлуп по шаблонам ехеля по причине помойки уже на самой ГИС: там дома кем-то привязаны к другой РСО.
0
 Аватар для vst377
12 / 12 / 0
Регистрация: 02.06.2017
Сообщений: 75
22.09.2017, 10:14
Может кому пригодится из РСОшников.
В двух последних версиях интеграции есть ошибка в описании сервиса, связанная с ответом на импорт договоров РСО. Согласно документации, в ответ на импорт договора РСО, ГИС возвращает расширенный ответ с указанием корневого гуида и версионного гуида договора. Так вот, ошибка в описании сервиса эту возможность перечёркивает.

Что нужно сделать. В файле
ГИС ЖКХ_Интеграция_v.11.4.0.3\hcs_wsdl_xsd_v .11.4.0.3\house-management\hcs-house-management-service.wsdl
раздел
XML
1
2
3
<wsdl:message name="importSupplyResourceContractResult">
    <wsdl:part name="importSupplyResourceContractResult" element="base:ImportResult"/>
</wsdl:message>
необходимо привести к такому виду
XML
1
2
3
<wsdl:message name="importSupplyResourceContractResult">
    <wsdl:part name="importSupplyResourceContractResult" element="hm:ImportResult"/>
</wsdl:message>
2
12 / 10 / 1
Регистрация: 03.07.2015
Сообщений: 42
25.09.2017, 05:45
Коллеги! Я прошу прощения, но может кто подскажет, каким образом квитировать оплату принятую через банк (или почту) с начислением выставленным нами (РСО).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.09.2017, 05:45

.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (2)
Начало темы здесь: https://www.cyberforum.ru/web-services-wcf/thread1615223.html umatkot, Да, к этому и пришел....а на дворе 1 июля ...

Интеграция с ГИС ЖКХ и подпись SOAP без Крипто .NET и stunnel
Решил создать отдельную тему, так как в теме Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4) - C# WCF уже можно заблудиться....

Soap, Java, Гис ЖКХ
Добрый день! Имеет ли кто опыт работы с soap в Java? Поставлена задача наладить работу с ГИС ЖКХ, До этого не работал с SOAP, почитал все...

1С и ГИС ЖКХ. Интеграция
Доброго дня, коллеги! Я думаю многие слышали о такой ГИС, как ЖКХ. Друзья, сталкивался ли кто нибудь с задачей интеграции с этой...

Интеграция с ГИС ЖКХ (ГЖ). 400 Bad request
Вводная: 1. C#. Классы proxy для работы с API генерятся утилитой SvcUtil.exe из wsdl-ек. 2. При срабатывании форматно-логического...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
160
Закрытая тема Создать тему
Опции темы

Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru