Быстрый старт

Работа со SMEV-DATA-PROVIDER выполняется с помощью REST API посредством подписки на интересующую тему, а также с помощью вызова методов по получению запросов и отправки ответов в СМЭВ.

При использовании из Java (альтернативный вариант)

  1. Проверьте наличие подключенного maven репозитория в .m2/settings.xml.
    settings.xml type=xml
    <servers>
      <server>
          <id>cpr_maven</id>
          <username>ИМЯ УЧЕТНОЙ ЗАПИСИ В SBER CLOUD</username>
          <password>ПАРОЛЬ УЧЕТНОЙ ЗАПИСИ В SBER CLOUD</password>
      </server>
    </servers>
    
    <profiles>
      <profile>
          <id>default</id>
          <repositories>
              <repository>
                  <id>cpr_maven</id>
                  <url>https://Путь_до_зависимостей_в_нексусе</url>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
              </repository>
          </repositories>
      <profile>
    <profiles>
    
  2. Добавьте зависимости с контрактами в pom.xml.
    pom.xml type=xml
    <dependency>
        <groupId>ru.sberbank.gostech.smev</groupId>
        <artifactId>smev-data-provider-api</artifactId>
        <version>АКТУАЛЬНАЯ ВЕРСИЯ</version>
    </dependency>
    
  3. Реализуйте взаимодействия.
    3.1 Реализация сервиса для управления подписками:
    SmevDataProviderService.java type=java
     @Service
     public class SmevDataProviderService {
    
         private final RestTemplate restTemplate = new RestTemplate();
    
         private final String clientId;
    
         private final String smevBroadcastUrl;
         private final String smevAllBroadcastsUrl;
    
         public SmevDataProviderService(
                 @Value("${app.smev-data-provider.url}") String smevDataProviderUrl,
                 @Value("${app.smev-data-provider.clientId}") String clientId
         ) {
             this.clientId = clientId;
    
             this.smevBroadcastUrl = smevDataProviderUrl + "/broadcast";
             this.smevAllBroadcastsUrl = smevDataProviderUrl + "/broadcast/all";
         }
    
         public List<SmevDataProvider> getBroadcastSubscriptionsList() {
             String url = UriComponentsBuilder
                     .fromUriString(smevBroadcastUrl)
                     .queryParam("clientId", clientId)
                     .toUriString();
    
             SmevDataProvider[] smevDataProviderArray = restTemplate
                     .getForEntity(url, SmevDataProvider[].class)
                     .getBody();
    
             return Arrays.asList(smevDataProviderArray);
         }
    
         public SmevDataProvider subscribeOnBroadcast(BroadcastList broadcastList) {
             BroadcastSubscribeDto broadcastSubscribeDto = BroadcastSubscribeDto.builder()
                     .alias(clientId)
                     .broadcast(broadcastList)
                     .build();
    
             return restTemplate
                     .postForEntity(smevBroadcastUrl, broadcastSubscribeDto, SmevDataProvider.class)
                     .getBody();
         }
    
         public void unsubscribeFromBroadcast(String id) {
             String url = UriComponentsBuilder
                     .fromUriString(smevBroadcastUrl)
                     .pathSegment(id)
                     .toUriString();
    
             restTemplate.delete(url);
         }
    
         public void unsubscribeFromAllBroadcasts() {
             String url = UriComponentsBuilder
                     .fromUriString(smevAllBroadcastsUrl)
                     .queryParam("clientId", clientId)
                     .toUriString();
    
             restTemplate.delete(url);
         }
     }
    
    3.2 Реализация API для управления подписками и получения истории рассылки:
    SmevBroadcastController.java type=java
     @RestController
     @RequestMapping("/broadcast")
     public class SmevBroadcastController {
    
         private final SmevMockService smevMockService;
         private final SmevDataProvideProxyService smevDataProvideProxyService;
         private final SmevDataProviderService smevDataProviderService;
    
         @Autowired
         public SmevBroadcastController(
                 SmevMockService smevMockService,
                 SmevDataProvideProxyService smevDataProvideProxyService,
                 SmevDataProviderService smevDataProviderService
         ) {
             this.smevMockService = smevMockService;
             this.smevDataProvideProxyService = smevDataProvideProxyService;
             this.smevDataProviderService = smevDataProviderService;
         }
    
         @ApiOperation(
                 value = "Получение истории рассылки",
                 notes = "Получение истории рассылки, при пустом параметре messageId возвращается полная история рассылки," +
                         "сохраненная в памяти приложения")
         @RequestMapping(value = "/history", method = RequestMethod.GET)
         public List<SmevBroadcastResponseDto> getBroadcastDataHistoryList(
                 @ApiParam("Идентификатор сообщения")
                 @RequestParam(required = false) String messageId) {
             return smevDataProvideProxyService.getBroadcastDataList(messageId);
         }
    
         @ApiOperation(
                 value = "Имитация рассылки",
                 notes = "Имитация рассылки BIRTHDAY_INFORMATION, используя local-smev сервис")
         @RequestMapping(value = "/mock", method = RequestMethod.POST)
         public String sendBroadcastData() {
             return smevMockService.sendBroadcastData();
         }
    
         @ApiOperation(
                 value = "Получение списка всех широковещательных рассылок для клиента",
                 notes = "Запрос на получение списка широковещательных рассылок. Возвращает заполненный BroadcastList")
         @RequestMapping(value = "/subscriptions", method = RequestMethod.GET)
         public List<SmevDataProvider> getBroadcastSubscriptionsList() {
             return smevDataProviderService.getBroadcastSubscriptionsList();
         }
    
         @ApiOperation(
                 value = "Подписка на широковещательную рассылку",
                 notes = "Запрос на подписку к широковещательной рассылке")
         @RequestMapping(value = "/subscriptions", method = RequestMethod.POST)
         public SmevDataProvider subscribeOnBroadcast(
                 @ApiParam("Тип рассылки")
                 @RequestBody BroadcastList broadcastList) {
             return smevDataProviderService.subscribeOnBroadcast(broadcastList);
         }
    
         @ApiOperation(
                 value = "Отписка от широковещательной рассылки",
                 notes = "Запрос на отписку от широковещательной рассылки")
         @RequestMapping(value = "/subscriptions/{id}", method = RequestMethod.DELETE)
         public void unsubscribeFromBroadcast(@PathVariable String id) {
             smevDataProviderService.unsubscribeFromBroadcast(id);
         }
    
         @ApiOperation(
                 value = "Отписка от всех широковещательных рассылок",
                 notes = "Запрос на отписку от всех широковещательных рассылок")
         @RequestMapping(value = "/subscriptions", method = RequestMethod.DELETE)
         public void unsubscribeFromAllBroadcasts() {
             smevDataProviderService.unsubscribeFromAllBroadcasts();
         }
    
         @ApiOperation(
                 value = "Произвольный GET запрос",
                 notes = "Вызов произвольного GET запроса к smev-data-provider-proxy")
         @RequestMapping(value = "/**", method = RequestMethod.GET)
         public List<SmevBroadcastResponseDto> getResponse(
                 HttpServletRequest request,
                 @ApiParam("Дата в формате 1970-01-01, начиная с которой необходимо предоставить информацию")
                 @RequestParam String from,
                 @ApiParam("Дата в формате 1970-01-01, по которую необходимо предоставить информацию (необязательный " +
                         "параметр, при отсутствии за конечную дату берется текущая)")
                 @RequestParam String to
         ) {
             return smevDataProvideProxyService.getResponseList(
                     request.getRequestURI().replace(request.getContextPath(), ""),
                     from,
                     to,
                     SmevBroadcastResponseDto[].class
             );
         }
     }
    

Тестирование поставщика данных

Перед началом тестирования адаптера необходимо развернуть:
  • заглушку СМЭВ;
  • сервисы поставщика данных (smev-data-provider);
  • сервис потребителя данных (smev-proxy-impl, smev-worker);
  • крипто-сервис (ufs-sign-application или crypto-proxy).
Сервисы поставщика и потребителя данных должны быть настроены на развёрнутые заглушку СМЭВ и крипто-сервис.
Тестирование поставщика данных СМЭВ происходит по описанному ниже сценарию.
Исходные данные:
НазваниеЗначениеКомментарии
Сервис
Информация о направлении оператором связи сведений о базе расчета обязательных отчислений (неналоговых платежей) в резерв универсального обслуживания в установленные законодательством сроки-
Пространство имён
urn://x-artefacts-rossvyaz/report-apuu/1.0.0-
Корневой элемент
IQueryRsvzRepApuu-
Идентификатор клиента - алиас сертификата
clientIdИспользуется валидный алиас сертификата. Для примера ниже используется условный алиас
Тестовый запрос
message.xmlПеред отправкой тестового сообщения необходимо сгенерировать новый UUID и заполнить им следующие поля в файле: "MessageID", "ReferenceMessageID", "ReplyTo"
message.xml type=xml
<ns2:GetRequestResponse
  xmlns="urn://x-artefacts-smev-gov-ru/services/message-exchange/types/basic/1.2"
  xmlns:ns2="urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.2"
  xmlns:ns3="urn://x-artefacts-smev-gov-ru/services/message-exchange/types/faults/1.2">
  <ns2:RequestMessage>
    <ns2:Request Id="SIGNED_BY_SMEV">
      <ns2:SenderProvidedRequestData Id="SIGNED_BY_CONSUMER">
        <ns2:MessageID>7e14cef6-379c-11ea-9777-aaaaaa2ca904</ns2:MessageID>
        <ns2:ReferenceMessageID>7e14cef6-379c-11ea-9777-aaaaaa2ca904</ns2:ReferenceMessageID>
        <ns2:TransactionCode>7e17b4af-379c-11ea-aefa-001a4a1660a5|10000000000000000000|ByXTyP7c6gpiMt7zHtOYYnhHzB8QlNMe0J74yZYAIPA3Qnt3HwqsRl7WjzQUOtrsYXBqFvr69as8M4oX2V+CXneynwA5qvgF3nXrQW8dbmpQZzIkRpOcuKXJpIOjcSvLQxQ7EcLpQ7RnIcG+aQfG6rA7ns1v9YTVi2wGyVYtOgIYy3reaRgRHyRr05RdXsRHGNj+xCPNSJG80NCA1UJDRNrnM9Qj0/WcWQW4AqTQDiBkBdpvmT58jNmVK8hbaGBYnfv5e0SS1bR3guonpQvf04VEQccu0YvezVJsBSvQZ1oxXTmbcLzzCi5Kjt0xSwq/EEFBGyrokFoCcwnEQeBRZQ==</ns2:TransactionCode>
        <MessagePrimaryContent>
          <xz1:IQueryRsvzRepApuu xmlns:xz1="urn://x-artefacts-rossvyaz/report-apuu/1.0.0">
<xz1:Inn>2459011995</xz1:Inn>
<xz1:DateOn>2016-03-30</xz1:DateOn>
<xz1:Quarter>3</xz1:Quarter>
<xz1:ReportYear>2014</xz1:ReportYear>
<xz1:ReportPeriod>3 кв. 2014</xz1:ReportPeriod>
<xz1:OperatorName>Общество с ограниченной ответственностью "Сиблайн"</xz1:OperatorName>
<xz1:OperatorType>false</xz1:OperatorType>
</xz1:IQueryRsvzRepApuu>
        </MessagePrimaryContent>
      </ns2:SenderProvidedRequestData>
      <ns2:MessageMetadata>
        <ns2:MessageId>7e14cef6-379c-11ea-9777-aaaaaa2ca904</ns2:MessageId>
        <ns2:MessageType>REQUEST</ns2:MessageType>
        <ns2:Sender>
          <ns2:Mnemonic>testroiv08</ns2:Mnemonic>
        </ns2:Sender>
        <ns2:SendingTimestamp>2020-01-15T16:39:46.000+03:00</ns2:SendingTimestamp>
        <ns2:Recipient>
          <ns2:Mnemonic>testfoiv08</ns2:Mnemonic>
        </ns2:Recipient>
        <ns2:DeliveryTimestamp>2020-01-15T16:39:55.632+03:00</ns2:DeliveryTimestamp>
        <ns2:Status>messageIsDelivered</ns2:Status>
      </ns2:MessageMetadata>
      <ns2:ReplyTo>7e14cef6-379c-11ea-9777-aaaaaa2ca904</ns2:ReplyTo>
      <ns2:SenderInformationSystemSignature>
        <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
          xmlns:basic="urn://x-artefacts-smev-gov-ru/services/message-exchange/types/basic/1.2"
          xmlns:ns="urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.2">
          <ds:SignedInfo>
            <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
            <ds:SignatureMethod
              Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"/>
            <ds:Reference URI="#SIGNED_BY_CONSUMER">
              <ds:Transforms>
                <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                <ds:Transform Algorithm="urn://smev-gov-ru/xmldsig/transform"/>
              </ds:Transforms>
              <ds:DigestMethod
                Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
              <ds:DigestValue>LbdyY28+hnthaVWZCdyRsV9ljZSRf5lKL0uqrdAnXfs=</ds:DigestValue>
            </ds:Reference>
          </ds:SignedInfo>
          <ds:SignatureValue>
            36JG8E3qG4xOZCIiuAuQMnTWtewF8aL858TK/2kncWzYWubSGZoucFjvVpCdBZW1F3WTxo5XgkdTcvn5T+29hg==
          </ds:SignatureValue>
          <ds:KeyInfo>
            <ds:X509Data>
              <ds:X509Certificate>
                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
              </ds:X509Certificate>
            </ds:X509Data>
          </ds:KeyInfo>
        </ds:Signature>
      </ns2:SenderInformationSystemSignature>
    </ns2:Request>
    <ns2:SMEVSignature>
      <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
        <ds:SignedInfo>
          <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
          <ds:SignatureMethod
            Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"/>
          <ds:Reference URI="#SIGNED_BY_SMEV">
            <ds:Transforms>
              <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
              <ds:Transform Algorithm="urn://smev-gov-ru/xmldsig/transform"/>
            </ds:Transforms>
            <ds:DigestMethod
              Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
            <ds:DigestValue>voS4KOoGYA9dwAG7b6hrFgJUX2O3KZ3CJXnIwH04gcI=</ds:DigestValue>
          </ds:Reference>
        </ds:SignedInfo>
        <ds:SignatureValue>
          /FpMI3fvHwwwT9KDpLoQ6+nTu1KL34FQbPxrtQD9obzxwnwdDlozJAIQExmhEngELTpSLhVzpmclIbD9sddwAw==
        </ds:SignatureValue>
        <ds:KeyInfo>
          <ds:X509Data>
            <ds:X509Certificate>
              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
            </ds:X509Certificate>
          </ds:X509Data>
        </ds:KeyInfo>
      </ds:Signature>
    </ns2:SMEVSignature>
  </ns2:RequestMessage>
</ns2:GetRequestResponse>
Сценарий:
НазваниеcURLТело запроса
Регистрация поставщика услуг в data-provider
-X POST "http://{адрес поставщика}/registration" -H "accept: */*" -H "Content-Type: application/json" -dСм. ниже
Чтение из data-provider запроса по зарегистрированному поставщику
-X GET "http://{адрес поставщика}/request?clientId=clientId&namespace=urn%3A%2F%2Fx-artefacts-rossvyaz%2Freport-apuu%2F1.0.0&rootElement=IQueryRsvzRepApuu" -H "accept: */*"-
Тело запроса:
Развернуть type=xml
{
 "clientId": "clientId",
 "namespace": "urn://x-artefacts-rossvyaz/report-apuu/1.0.0",
 "rootElement": "IQueryRsvzRepApuu",
 "routing": "FIXED",
 "schemaVersion": "V1_2"
}

Демопримеры

В демопримерах реализованы стандартные сценарии, демонстрирующие работу отдельных сервисов Платформы ГосТех. Отправка тестовых запросов в демопримерах позволит вам ознакомиться с функциями того или иного сервиса. Доступные демопримеры и описания реализованной в них функциональности представлены ниже.
СМЭВ
Отправка тестовых запросов в СМЭВ с присвоением успешно отправленным запросам уникальных идентификаторов
Предыдущий раздел
Предоставление данных
Следующий раздел
Управление поставщиками данных
Была ли страница полезной?