O Web Service ExchangeMessage é disponibilizado para, recepção e disponibilização de dados que darão origem aos documentos e pacotes que acobertam as operações de transporte. Baseado no padrão Crosstalk, ao recepcionar uma requisição o mesmo efetua algumas validações iniciais, sendo elas:
•Schema do Crosstalk Header de envio;
•Autenticação do solicitante consumidor da aplicação;
•Identificador da mensagem.
Caso algum problema seja encontrado durante as validações, a requisição não é processada, do contrário, as informações são enviadas ao nddFrete, onde o conteúdo dos documentos é confrontado com seus respectivos schemas e mapeamentos. Quando encontrado algum erro no layout dos arquivos enviados, os mesmos são apresentados posteriormente no Portal do nddFrete, como Documentos "Não Conformes", no caso de consultas de documentos apenas a mensagem de resposta é retornada. Toda requisição enviada ao Web Service, uma mensagem de retorno também no padrão Crosstalk é devolvida informando se a mensagem foi recebida corretamente para processamento.
Métodos |
|---|
O Web Service ExchangeMessage possui três métodos distintos para envio e disponibilização de documentos, Send, CompressedSend, e os quais efetuam validações específicas nas informações enviadas, conforme seguem abaixo:
O método Send é utilizado para envio de arquivos não compactados. No cabeçalho da requisição é informado o CrosstalkHeader contendo as informações para processamento do documento. O conteúdo do arquivo é informado em um rawdata dentro de um grupo de dados de caracteres (CDATA). Ao enviar um documento não compactado, as validações iniciais são realizadas no cabeçalho da requisição. Caso o header enviado esteja correto, é retornado pelo Web Service a resposta informando que a mensagem foi processada com sucesso, o que não significa que o documento tenha sido processado corretamente, pois as demais auditorias só ocorrem posteriormente e não são retornadas ao Web Service. A mensagem de sucesso refere-se somente ao correto recebimento da requisição pela aplicação.
Posteriormente, o serviço da Localização irá processar as requisições enviadas, onde então são realizadas as demais validações. O documento recebido é confrontado com o schema relativo ao ProcessCode informado na chamada. Caso seja encontrado alguma discordância, o documento é invalidado.
Método disponibilizado para envio de arquivos compactados no formato "zip". Assim como no método anterior, no cabeçalho da chamada é enviado o CrosstalkHeader com os dados para processamento. O conteúdo binário do arquivo compactado é informado no rawdata. Para que sejam recepcionados corretamente, o lote enviado deve conter no máximo 2000 documentos. Caso ultrapasse a quantidade de arquivos uma exceção é retornada pelo Web Service. Todos os arquivos enviados no lote devem conter a mesma extensão e possuírem o mesmo schema, de acordo com o processCode informado na requisição enviada. Caso as validações realizadas no envio da requisição estejam corretas, é retornado pelo Web Service a resposta informando que a mensagem foi processada com sucesso, que define que a chamada foi entendida e enviada para processamento, porém, não garante que todo o conteúdo da mensagem tenha sido processado. Caso exista no lote enviado algum arquivo com extensão diferente das aceitas pela aplicação (".xml" e ".txt") será retornado pelo Web Service uma mensagem informando que o lote foi parcialmente processado.
O método SendWithCompressedResponse assim como o Send é utilizado para envio de arquivos não compactados. No cabeçalho da requisição é informado o CrosstalkHeader contendo as informações para processamento do documento. O conteúdo do arquivo é informado em um rawdata dentro de um grupo de dados de caracteres (CDATA). Ao enviar um documento não compactado, as validações iniciais são realizadas no cabeçalho da requisição. Caso o header enviado esteja correto, é retornado pelo Web Service a resposta informando que a mensagem foi processada com sucesso, o que não significa que o documento tenha sido processado corretamente, pois as demais auditorias só ocorrem posteriormente e não são retornadas ao Web Service. A mensagem de sucesso refere-se somente ao correto recebimento da requisição pela aplicação. Posteriormente a resposta dessa chamada caso o processamento tenha sido realizado com sucesso a resposta será em um arquivo no fomato "zip".