Ir para conteúdo
  • Cadastre-se

dev botao

Comunicacao TCPIP - duplicando a execucao dos comandos


Moreira
Ver Solução Respondido por Moreira,
  • Este tópico foi criado há 1512 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Bom dia,

ja trabalho a bastante tempo com o ACBRmonitor com a comunicacao por arquivos .txt, mas agora estou ajustando meu sistema para trabalhar com comunicacao TCPIP.

Trabalho com PHP, e estou usando como base os exemplos que estao na pasta do ACBR, porem estou tendo um problema, sempre que mando enviar um comando ele executa duas vezes no ACBR.

Ele conecta normalmente, recebe o retorno, mas olhando no Acbr vejo que ele executou duas vezes cada comando que eu enviei.

Alguem ja teve algum problema parecido ? pode me dar uma ajuda ?

 

Obrigado

Testei com o ACBRMonitor :  1.0.0.10    e   1.3.0.258

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

parece que realmente foi enviado duas vezes o comando...

Citar

Conectado em: 26/02/20 10:13:30
Maquina: 127.0.0.1
Esperando por comandos.
26/02/2020 10:13:32 - ACBr.datahora
26/02/2020 10:13:32 - OK: 26/02/2020 10:13:32
26/02/2020 10:13:34 - ALERTA: Fim da Conexão com: 127.0.0.1 em: 26/02/20 10:13:34
26/02/2020 10:13:34 - ACBrMonitorPLUS Ver. 1.3.0.258 - x86
Conectado em: 26/02/20 10:13:34
Maquina: 127.0.0.1
Esperando por comandos.
26/02/2020 10:13:36 - ACBr.datahora
26/02/2020 10:13:36 - OK: 26/02/2020 10:13:36
26/02/2020 10:13:38 - ALERTA: Fim da Conexão com: 127.0.0.1 em: 26/02/20 10:13:38

 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Parece, mas o programa executa apenas uma chamada.

Olhando no F12 (inspecionar elemento) da para ver que é executado uma unica vez o programa em php. Ja inseri mensagens no programa e no ClientSocket para debugar, mas recebo as mensagens uma unica vez, quando o acbr executa a primeira vez.

Ja testei em 3 computadores, com PHP 5,2 e 5,3, (neste projeto tenho que trabalhar com a 5.2) mas ele sempre executa duas vezes.

Reparei que no exemplo que esta no diretorio do Acbrmonitor os comando terminam com apenas um    \n  (10). Mas desta forma nao da certo aqui, nao executa.
Em alguns comentarios e sites tenho visto usando o  chr(13).chr(10) . chr(46) . chr(13).chr(10)  , isto tem funcionado para enviar, esta correto isso ?

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Obrigado Daniel,

acho que esta ocorrendo um problema na classe ClientSocket, a funcao de leitura de resposta ( recv() ) parece estar causando uma nova execucao dos comandos.

Vou modificar a classe e fazer mais testes.

Se eu encontrar a solução eu posto aqui no forum.

Obrigado

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
  • Solution

Sinistro !!!

Fui testar com o PHP 7.4  e por acaso abri a pagina de teste no Edge, e funcionou. Voltei ao PHP 5.2 e tambem funcionou.

Testei com os navegadores Edge, Firefox e Opera, e funcionou !

Descobri que é no Chrome que esta ocorrendo o problema, mesmo o PHP sendo uma linguagem server-side, ha algo no Chrome que esta causando este problema.

Mesmo sem estar no Inspect, algo esta causando este problema.

Ja fico mais tranquilo que nao é nada no Acbr, e ja posso rodar no Firefox.

Obrigado

  • Curtir 3
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1512 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.