A versão final do que será o serviço de localização geográfica encontra-se disponível hoje. Como já foi esclarecido no post anterior relacionado com este tema, o cliente portador do terminal Android desloca-se pelas ruas, e quando a distância entre a sua posição actual e a posição anterior for maior que 100 metros, a sua actualização é actualizada no servidor.
Está a ser utilizado o protocolo XMPP para o envio da mensagem do terminal para o servidor. Esta mensagem consiste num campo IMEI (número de identificação único do terminal) e de dois campos, latitude e longitude. Optou-se pela utilização do serviço Openfire como servidor, pois facilita consideravelmente a sua configuração e possui uma interface web bastante intuitiva para a sua manipulação.
Sempre que o servidor recebe uma nova mensagem de um terminal, são validados os campos desta. É efectuada uma pesquisa na base de dados para determinar se o IMEI já se encontra presente. Caso afirmativo, a posição é refrescada; caso contrário, é criada uma nova entrada com o novo IMEI e as respectivas coordenadas.
A informação da localização de um determinado utilizador pode ser adquirida utilizando o RESTful web service criado para esse efeito. Para adquirir os dados me formato JSON, basta fazer um GET para
http://localhost:8080/DriveMeGeoServerWe
Um possível futuro passo consiste em adicionar segurança a este tipo de pedidos, visto que desta forma basta o conhecimento do IMEI para a obtenção da localização.
Terminal adquire nova posição.
Servidor actualiza a posição na base de dados MySQL.
Utilizando o web service para adquirir o objecto JSON.
Utilizando o web service para adquirir a localização em formato XML.
. Scrapper
. Geo Localização - Concluí...
. Geo Localização - Cliente...
. Equipa e atribuição de ta...