Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Instabilidade Rastro SRO ou Atualizações #279

Closed
lecosas opened this issue Jun 21, 2017 · 60 comments
Closed

Instabilidade Rastro SRO ou Atualizações #279

lecosas opened this issue Jun 21, 2017 · 60 comments

Comments

@lecosas
Copy link

lecosas commented Jun 21, 2017

Bom dia,

Comecei a perceber hoje, porém o problema está acontecendo desde ontem de madrugada, uma alteração no WebServices de Rastro SRO. Pelo que percebi está acontecendo 2 coisas:

  1. Utilizando o comando BuscaEventosLista, está retornando apenas o rastreamento do primeiro objeto.
  2. Em alguns objetos, só são mostrados o último evento, por exemplo, este: OA348002318BR. No site de rastreamento dos Correios, a informação é exibida corretamente (todo o rastro).

Alguém está tendo problema similar?

@rafaelpatro
Copy link
Contributor

@lecosas acabei de ver sua mensagem, conferi meu ambiente, e realmente não tive atualização dos rastreios, desde ontem no início da tarde. Avise se encontrar uma solução.

@lecosas
Copy link
Author

lecosas commented Jun 21, 2017

Legal @rafaelpatro . Acho que deve ser instabilidade dos Correios mesmo.
Deixa eu só te perguntar, você ainda utiliza o usuário ECT e senha SRO?

@rafaelpatro
Copy link
Contributor

Sim, utilizo. Testei agora há pouco com meu usuário e senha do SIGEP, e não funcionou também.

@rafaelpatro
Copy link
Contributor

O web service tem 2 métodos: buscaEventos e buscaEventosLista
O módulo PedroTeixeira_Correios utiliza o buscaEventos, passando todos os códigos de postagem em uma lista única, como orientado no manual:
image

Segue link do manual.

Testei os métodos há alguns instantes, e realmente não estão se comportando conforme o manual. Retornam apenas o último evento do primeiro objeto.

@lecosas
Copy link
Author

lecosas commented Jun 21, 2017

É isso ai @rafaelpatro. Em ambos os métodos, o retorno é o mesmo :(

@rafaelpatro
Copy link
Contributor

Parece que o web service do SIGEP Web tem um método chamado consultaSRO. Só pelo nome suspeito que retorne as informações que precisamos.
image

@rafaelpatro
Copy link
Contributor

Testei e realmente o método consultaSRO funciona, retornando as informações para um ou mais objetos.

É uma solução! O problema é que ele não trata erros individualmente. Exemplo: Se um dos objetos expirou e não existe mais na base dos Correios, retorna erro 500, sem considerar os objetos válidos. Então um único erro de digitação em qualquer dos rastreios deve quebrar toda a consulta.

Outra solução é implementar a consulta individual (uma requisição por objeto). Mas isso pode onerar demais o Cron, atrasando diversos outros processos do Magento.

@loja5combr
Copy link

Entrei um contato com o suporte dos correios e me informaram que agora tenho de solicitar ao gestor comercial de meu contrato para solicitar o login e senha para que creio eu ter acesso a lista completa dos eventos do rastreio.

@rafaelpatro
Copy link
Contributor

Recebi também a mesma mensagem.
Legal, mais um usuário e senha pra cadastrar :(
Podiam usar os mesmos dados do SIGEP Web, seria mais simples.

@lecosas
Copy link
Author

lecosas commented Jun 22, 2017

Putz, como sempre os Correios dando trabalho. Estava pensando em trocar, até ver essa sua postagem do erro 500. Ai fica inviável. Vou aguardar mais uns dias para ver se volta. Ontem eu mandei um e-mail no SAC, falando do que acontecia e sobre o usuário. Eles responderam isso:

Boa tarde! Entre em contato com o gestor comercial do seu contrato para obter usuário e senha próprios, ok? O usuário e senha padrão do manual devem ser usados apenas para teste.

Eu acredito que não tem nada a ver com o usuário, deve ser aqueles instabilidades básicas do Correios.

@lecosas
Copy link
Author

lecosas commented Jun 22, 2017

É, creio que seja este o problema mesmo, o usuário.

Bom dia! O problema só está afetando quem não solicitou usuário/senha individual e estava usando o que constava no manual, que só serve para testes mais básicos.

Isso quer dizer que agora o usuário teste não serve mais para nada, pois não te da as informações completas.

@redati
Copy link

redati commented Jun 22, 2017

Esse erro que começou aparecer aqui pode estar relacionado a isto ne ?

Mensagem:
TRIGGER: shutdown function
Last error:
Array
(
[type] => 1
[message] => Call to a member function getDescription() on null
[file] => /usr/share/nginx/bk/.modman/correios/app/code/community/PedroTeixeira/Correios/Model/Sro.php
[line] => 272
)

@lecosas
Copy link
Author

lecosas commented Jun 22, 2017

Pessoal, acabei de receber meu usuário para acessar o WebService e realmente funcionou. Era isso mesmo. Quando coloquei o usuário, voltou a funcionar.
Se tiverem alguma dúvida, me avisem.

@rafaelpatro
Copy link
Contributor

Teu contato comercial é bom. O meu ainda vai levar alguns dias pra entender o que é web service.

@lecosas
Copy link
Author

lecosas commented Jun 22, 2017

É nada viu cara, mas sei lá, acho que algo divino aconteceu que a coisa foi rápida.
@rafaelpatro a sua empresa tem contrato com os Correios? Caso não tenha, peça para algum cliente seu solicitar com o gerente da conta dele. Eu fiz isso.

@mvsucupira
Copy link

@lecosas este novo usuário e senha a ser solicitado será colocado onde? Deve ser substituído no código ou está parametrizado no módulo do Pedro?

@rafaelpatro
Copy link
Contributor

rafaelpatro commented Jun 23, 2017 via email

This was referenced Jun 24, 2017
@DaviSiqueira
Copy link

@lecosas vc precisou preencher um formulário e enviar uma cópia do contrato da empresa?
Minha gerente está pedindo isso pra solicitar a senha! =/

@lecosas
Copy link
Author

lecosas commented Jul 3, 2017

oi @DaviSiqueira segue o que eles me solicitaram:

Para obter o usuário e senha, é necessário fornecer alguns dados.
Número do Contrato (se houver):
CNPJ:
Nome da Empresa:
IP da máquina/servidor que irá consumir o serviço:

@DaviSiqueira
Copy link

DaviSiqueira commented Jul 3, 2017

Obrigado @lecosas!

A gerente me enviou o formulário para preenchimento e nele informava que a solicitação era para o Sigepweb.

O engraçado é que expliquei 3 vezes que não era para o sigepweb e sim para o webservice...

Expliquei agora pela quarta vez, vamos ver se ela entende! rs

@rafaelpatro
Copy link
Contributor

Tem que dizer que é para o SRO (Sistema de Rastreamento de Objetos)

@DaviSiqueira
Copy link

Blz @rafaelpatro vou avisar ela!

Vlw

@ghost
Copy link

ghost commented Jul 4, 2017

Como vocês chegaram ao gerente? Presencial ou via email? Mandei email hoje cedo solicitando informações e não recebi nenhum retorno ainda (Curitiba).

@edumandiba
Copy link

Pessoal em qual arquivo do módulo eu coloca a senha e o usuário???
Outra coisa, o setor para qual o gerente comercial de vcs deve enviar o email segue abaixo....informando o numero do contrato, cnpj e a razão social.....
Segue o setor: SPM - SONE/GESUV

@DaviSiqueira
Copy link

@edumandiba
app/code/community/PedroTeixeira/Correios/etc/config.xml
<sro_username>ECT</sro_username>
<sro_password>SRO</sro_password>

@Dangeraissate
Copy link

Obrigado demais.. voces são f!@#$%¨&*

Abraços

@henriquemnr
Copy link

PEssoal estou com a senha em mãos, mas ela contém o caracter < que está quebrando o módulo quando coloco no xml.

Ex senha: dsada<@8989

Podem me ajudar?

Abs

@DaviSiqueira
Copy link

@diegotrevisan então vc não tem nem contrato?!
Vá em uma agencia e solicite, vão te pedir alguns documentos

@ghost
Copy link

ghost commented Jul 13, 2017

@DaviSiqueira Qualquer agência ou na gerência comercial? Obrigado!

@DaviSiqueira
Copy link

@diegotrevisan acredito que possa ser em qualquer agência.

@fernando-em
Copy link

Recebi a minha senha depois de umas duas semanas, só que estou com uma dúvida e um problema.
Sei que é pra colocar o usuário e senha em <sro_username>ECT</sro_username> e <sro_password>SRO</sro_password>, mas em qual lugar especificamente?

<AQUI?>ECT</AQUI?>

E o meu problema é que a minha senha começa com <, e eu não estou conseguindo usar o CDATA, qual seria o código pra usar o CDATA e o lugar certinho onde ele iria?

@thiagoromera
Copy link

Galera peço a ajuda de vcs. O meu rastreio parou d funcionar tem alguns meses. Depois que lançaram as últimas atualizações eu instalei em algumas lojas e estava corrigido.
Em uma loja especifica eu fui atualizar q versão essa semana. No ambiente de homologação atualizei e voltou a funcionar. Quando atualizei na produção não. Mesmo servidor.
Vi as dicas de vcs sobre user e senha. Mas testando o soap ele funciona com o user ECT e senha SRO. Mas não da produção.
Tentei depurar gravando arquivos de log, mas ele não grava nada nos logs. Então eu não consigo depurar sequer. Ver como está a solicitação ao WS.
Alguém tem alguma ideia, de como resolver ou pelo menos conseguir gravar o log e depurar??
Só pra constar o log do magento está gravado. Mas mando gravar no correios.log e não sai nada. E no system e exception nada sobre o módulo.
Agradeço.

@rafaelpatro
Copy link
Contributor

Dá uma lida nessa issue mais acima. O usuário ECT não funciona mais em produção. Só serve pra testes. Precisa pedir um usuário SRO próprio ao seu gerente comercial.

@thiagoromera
Copy link

Obrigado Rafael, mas desculpa insistir e a ignorância, mas como ele sabe que estou em ambiente de produção ou desenvolvimento se a única coisa que muda é o www e o dev no inicio do domínio?

Além disso, tenho pelo menos outras 10 lojas com isso funcionando, usuário ECT.

@rafaelpatro
Copy link
Contributor

O usuário ECT foi criado apenas para testes. E por um bom tempo foi possível usá-lo indiscriminadamente.
Mas desde 20 de junho este usuário só retorna o primeiro evento do primeiro registro. Ou seja, o único propósito do usuário ECT agora é homologar, pois ele devolve uma resposta incompleta.

@thiagoromera
Copy link

Pessoal, eu consegui o user e senha dos Correios. Testei e está retornando todas ocorrências. Mas como eu disse antes, no meu site, em www não funciona. Ele ainda retorna como erro. E no dev não. E eu não consegui depurar. Lancei uns mage:log no código e não deu resultado.

@Roknauta
Copy link

Roknauta commented Sep 6, 2017

O problema então já é antigo, percebi hoje.

@Roknauta
Copy link

Roknauta commented Sep 8, 2017

@rafaelpatro Como eu consumo o outro evento ?

@rafaelpatro
Copy link
Contributor

N entendi. Qual evento?

@Roknauta
Copy link

Roknauta commented Sep 8, 2017

@rafaelpatro o consultaSRO.

@rafaelpatro
Copy link
Contributor

Entendi. Precisa de usuário e senha próprios da sua empresa. Precisa pedir ao gerente comercial. Só assim para retornar todos os eventos.

@Roknauta
Copy link

Roknauta commented Sep 8, 2017

@rafaelpatro entendi, eu como pessoa física não vou conseguir :( .

@rafaelpatro
Copy link
Contributor

Ainda pode ler direto do site dos Correios, mas vai precisar mudar a implementação.

@thiagoromera
Copy link

Pessoal alguem pode me ajudar a ver qual o arquivo que faz a leitura do xml, para eu debugar. Tentei gravar no log do módulo mas não funcionou. E em vários arquivos.

@rodrigoalegre
Copy link

Pessoal, me desculpem perguntar isso aqui, sei que não é o lugar ideal, mas estou com dificuldade para ter um atendimento bom dos Correios. Para ter esse contrato com eles e conseguir o usuário e senha, é necessário ser PJ ou eu consigo como PF? É necessário pagar algum valor? Muito obrigado!

@zenojunior
Copy link

@rodrigoalegre sim! para utilizar o serviço sua empresa precisa ter um contrato com o Correios e ela precisa ter uma cota mínima de R$100 de encomendas, caso não ultrapasse os R$100, no final do mês terá que pagar o que faltou.

@eneiasramos
Copy link
Contributor

eneiasramos commented Jan 8, 2019

[POST] https://www2.correios.com.br/sistemas/rastreamento/newprint.cfm
[FIELD] objetos [VALUE] BR012345678BR

Troque BR012345678BR pelo código de rastreio e voilà!

Um implementação no começo do método _getTracking() :

try
{
$client = new Zend_Http_Client ('https://www2.correios.com.br/sistemas/rastreamento/newprint.cfm');
$client->setParameterPost ('objetos', $code);

$response = $client->request ('POST');

$track = utf8_encode ($response->getBody ()); // windows-1252 really?

$track = str_replace ('self.print();', "", $track); // disable_print

}
catch (Exception $e)
{
$error = Mage::getModel ('shipping/tracking_result_error')
->setCarrier ($this->_code)
->setCarrierTitle ($this->getConfigData ('title'))
->setTracking ($code)
->setErrorMessage ($this->getConfigData ('urlerror'))
;

        $this->_result->append ($error);

        return false;

}

$tracking = Mage::getModel ('shipping/tracking_result_status')
->setCarrier ($this->_code)
->setCarrierTitle ($this->getConfigData ('title'))
->setTracking ($code)
->addData (array ('status' => $track))
;

$this->_result->append ($tracking);

return true;

E para o styles.css:

#somediv {
display: table;
}

@edipojuan
Copy link

Foi removido o método consultaSRO do SIGEP (https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente)

alguém sabe alguma alternativa?

alguém solicitou usuário e senha do SRO, foi rápido?

@rafaelpatro
Copy link
Contributor

Bom dia @edipojuan
Este ainda funciona:
http://webservice.correios.com.br/service/rastro/Rastro.wsdl

Precisa solicitar as credenciais de acesso ao seu gerente comercial. Quando pedi levou 2 dias.
Se seu gerente não der retorno, tenta sro@correios.com.br.

@edipojuan
Copy link

Bom dia,

Eu solicitei o usuário e senha pelo e-mail sro@correios.com.br ontem,

estou aguardando resposta, valeu @rafaelpatro

@fabiosantosrj
Copy link

http://webservice.correios.com.br/service/rastro/Rastro.wsdl testei essa, mas só tem a BuscaEventos e só me retorna o 1o evento do rastreio.

@rafaelpatro
Copy link
Contributor

Bom dia @fabiosantosrj

Veja se o parâmetro resultado está configurado como T (todos). Se estiver U (último), vai retornar somente o último evento.

Veja, com seu gerente, se suas credenciais de acesso ao SRO são válidas. Se forem inválidas, vai retornar somente o primeiro evento.

p.s. O Correios disponibiliza credenciais de acesso exclusivas para cada sistema. SIGEP é uma senha; SRO é outra senha; idCorreios é outra; E para cada API/Webservice é necessário solicitar novas credenciais.

@fabiosantosrj
Copy link

@rafaelpatro estou usando o T sim, já o usuário estou usando o ECT/SRO.
Vou tentar com um usuário válido.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests