Como Receber dados via Socket de um rastreador

Boa tarde,
Eu comprei um rastreador Tk 102b, para fazer meu trabalho de TCC estou com muita dificuldade para conseguir captura os dados do rastreador no meu computador.

Eu utilizei o programa OpenGTS e esta comunicando com meu computador certinho recebendo as coordenadas
direto ex: ip 102.168.1.101 9000.

So que para eu fazer o meu TCC tenho que conseguir pegar essa informações que chega na porta (ex 102.168.1.101 9000) do computador, seria basicamente o mesmo procedimento que o OpenGTS faz, so que eu vou trata os dados de outra forma, ele apenas mostra na tela eu vou pegar eles e guarda em um banco de dados.

Ja tentei aqui utilizando o java com socket só que não esta dando certo.

Esse código eu consigo comunicar com como socket local enviando dados de um para o outro,
só que o rastreador esta configurado para enviar os dados para a porta 9000 também só que não imprime nada do rastreador
apenas o que e enviado pela classe servidor.

O Rastreador utiliza GPRS ele esta enviando os dados para um IP fixo, e os Firewall esta desativado, como informei esta recebendo no sistema OpenGTS mais no código que fiz não esta.

[code]package br.com.tccrastreador;

import java.io.ObjectInputStream;
import java.net.Socket;
import java.util.Date;
import javax.swing.JOptionPane;

/**
*

  • @author www
    */
    public class ClienteTCPBasico {

    public static void main(String[] args) {

     try {
    
             Socket cliente = new Socket("192.168.1.101", 9000);
    
             ObjectInputStream entrada = new ObjectInputStream(cliente.getInputStream());
    
             //Date data_atual = (Date)entrada.readObject();
    

// JOptionPane.showMessageDialog(null,“Data recebida do servidor:” + retorno.toString());

            //Capturando o entrada e colocando na variavel retorno
            String retorno = entrada.readUTF();
            //mostrando o texto de retorno
            System.out.println("-- " + retorno.toString());

            entrada.close();

        System.out.println("Conexão encerrada");

    } catch (Exception e) {

        System.out.println("Erro: " + e.getMessage());

    }

}

}[/code]

Servidor que envia a MSG

[code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */
    package br.com.tccrastreador;

import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;

/**
*

  • @author www
    */
    public class ServidorTCPBasico {

public static void main(String[] args) {

try {

  // Instancia o ServerSocket ouvindo a porta 9000

  ServerSocket servidor = new ServerSocket(9000);

  System.out.println("Servidor ouvindo a porta 9000");

  while(true) {

    // o método accept() bloqueia a execução até que

    // o servidor receba um pedido de conexão

    Socket cliente = servidor.accept();

    System.out.println("Cliente conectado: " + cliente.getInetAddress().getHostAddress());

    ObjectOutputStream saida = new ObjectOutputStream(cliente.getOutputStream());

    saida.flush();

// saida.writeObject(new Date());
saida.writeUTF(“TEXTO TESTE PARA TRANSFERIR…”);
saida.close();

    cliente.close();

  }  

}   

catch(Exception e) {

   System.out.println("Erro: " + e.getMessage());

}

finally {
}  

}

}[/code]

Agradeço desde já.

O seu rastreador provavelmente não foi programado em Java e portanto não está usando um ObjectOutputStream.
ObjectInputStream só consegue ler dados que foram gerados através de um ObjectOutputStream.

Não sei o que está errado no seu programa, mas com certeza você não deve usar um ObjectInputStream. Leia a documentação desse rastreador com mais cuidado.

É possível é… tem que ver melhor como fazer, pois existe este software que trabalha com esse modelo de rastreador: http://sourceforge.net/projects/traccar/

Segundo o site, o programa é feito em Java. Então tem algum jeito de se comunicar com esse modelo… e o melhor, lá tem o código fonte
http://www.traccar.org/

Já pode seguir com suas pesquisas

Cara normalmente existe um protocolo que o hardware envia as coordendas, você tem que saber como é esse protocolo para você poder capturar os dados.

Conseguir receber os dados utilizando o Node.js
agora e a luta para entender como funciona ele, e gravar no banco de dados.

alguem ai trabalha com o Node.js ?

Já conseguiu concluir seu projeto de TCC?

boa tarde, vc conseguiu fazer progresso no seu projeto

No meu estou recebendo do tk102 desta forma (027043011394BR00160419A2255.5305S04305.6160W000.42000340.000000000000L00000000)

so que o certo não seria assim

imei:359710049095095,tracker,151006012336,F,172337.000,A,5105.9792,N,11404.959

Alguem sabe oque é isso?