openGTS en Ubuntu 17.04

Me dispuse a crear esta guía que facilite la instalación de un servidor que realiza tracking GPS de N dispositivos android nada más por pura diversión :)

Comencemos...


Para comenzar necesitamos JAVA, LAMP, ANT y UNZIP, entonces utilizamos los siguientes comandos

sudo apt-get update

sudo apt-get install apache2 php mysql-server libmysql-java ant unzip

sudo /etc/init.d/mysql start

*En mi caso instalé PHP en sus versiones 6 y 7 y Mysql 5.7
*Puede que algunos paquetes no estén disponibles, si es así busca alternativas de versiones

JAVA

Los siguientes comandos para instalar JAVA en su versión 7, la 8 también funciona

sudo apt-get install openjdk-7-jdk 

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 

echo "export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64" >> ~/.bashrc

TOMCAT

Los siguientes comandos para instalar TOMCAT en su version 7.0.57

VER=7.0.57
cd /tmp
wget -c http://apache.mirror.uber.com.au/tomcat/tomcat-7/v${VER}/bin/apache-tomcat-${VER}.zip
unzip apache-tomcat-${VER}.zip
sudo cp -a apache-tomcat-${VER} /usr/local/

export CATALINA_HOME=/usr/local/apache-tomcat-${VER}
cd /usr/local
sudo ln -s $CATALINA_HOME tomcat
cd $CATALINA_HOME/bin
chmod a+x *.sh
$CATALINA_HOME/bin/startup.sh
echo "export CATALINA_HOME=/usr/local/apache-tomcat-${VER}" >> ~/.bashrc

JAVA CONECTOR

Compruebe la versión en la siguiente liga  http://dev.mysql.com/downloads/connector/j/#downloads

VER=5.1.44
cd /tmp
wget -c http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-${VER}.zip
unzip mysql-connector-java-${VER}.zip
cd mysql-connector-java-${VER}

sudo cp mysql-connector-java-${VER}-bin.jar $JAVA_HOME/jre/lib/ext

JAVA MAIL

Compruebe la versión en la siguiente liga https://maven.java.net/content/repositories/releases/com/sun/mail/javax.mail/

VER=1.6.0
cd /tmp
wget -c https://maven.java.net/content/repositories/releases/com/sun/mail/javax.mail/${VER}/javax.mail-${VER}.jar
sudo cp javax.mail-${VER}.jar $JAVA_HOME/jre/lib/ext/

sudo mv $JAVA_HOME/jre/lib/ext/javax.mail-${VER}.jar $JAVA_HOME/jre/lib/ext/javax.mail.jar

CURL Y OPEN GTS

sudo apt-get install curl
cd /tmp
VER=2.5.7
curl -L http://downloads.sourceforge.net/project/opengts/server-base/${VER}/OpenGTS_${VER}.zip > OpenGTS_${VER}.zip
sudo unzip /tmp/OpenGTS_${VER}.zip -d /usr/local

GROUP=users
sudo chown -R ${USER}:${GROUP} /usr/local/OpenGTS_${VER}
export GTS_HOME=/usr/local/OpenGTS_${VER}

echo "export GTS_HOME=/usr/local/OpenGTS_${VER}" >> ~/.bashrc


ENV VARIBLES

echo "export ANT_HOME=/usr/share/ant" >> ~/.bashrc
source ~/.bashrc

sudo ln -s $JAVA_HOME /usr/local/java
sudo ln -s $CATALINA_HOME /usr/local/tomcat
sudo ln -s $GTS_HOME /usr/local/gts

CONFIGURACIÓN BÁSICA
Las siguientes lineas comentarán configuracion relacionada a la base de datos dentro de config.conf

sed -i "s/#db.sql.user=gts/db.sql.user=gts/" $GTS_HOME/config.conf
sed -i "s/#db.sql.password=opengts/db.sql.password=opengts/" $GTS_HOME/config.conf


COMPILACION

cd $GTS_HOME
ant all
# Agregar tu usuario y contraseña de mysql, en mi caso root y admin
bin/initdb.sh -rootUser=root -rootPass=admin

ejecutamos el siguiente comando para comprobar que todo marche correctamente.

cd $GTS_HOME && bin/checkInstall.sh

CREAMOS UNA CUENTA

bin/admin.sh Account -account=sysadmin -pass=password -create

cd $GTS_HOME && ant track
cp build/track.war $CATALINA_HOME/webapps/

Si todo salió bien podremos dirigirnos a http://localhost:8080/track/Track y loguearnos con la clave sysadmin y contraseña password

Si no carga la página no te puedes loguear, entonces checa si tomcat está corriendo con

ps -ef | grep tomcat

Si esta corriendo entonces reinicia

$CATALINA_HOME/bin/shutdown.sh
rm -rf $CATALINA_HOME/webapps/track*
cp $GTS_HOME/build/track.war $CATALINA_HOME/webapps/
$CATALINA_HOME/bin/startup.sh

Si no estaba corriendo, habrá que solamente levantar el servicio

$CATALINA_HOME/bin/startup.sh

INSTALACIÓN DE GPRMC

cd $GTS_HOME && ant events
cp -v build/events.war $CATALINA_HOME/webapps

cd $GTS_HOME && ant gprmc

cp build/gprmc.war $CATALINA_HOME/webapps/

ejecutamos el siguiente comando para comprobar que todo marche correctamente nuevamente

cd $GTS_HOME && bin/checkInstall.sh

LISTO




INSTALACIÓN DE CLIENTE ANDROID

Descarga de http://www.geotelematic.com/CelltracGTS/Free.html el apk o de la play store https://play.google.com/store/apps/details?id=org.opengts.client.android.cgtsfre

Ya en la aplicacion nos vamos a SETTINGS, y agregamos lo siguiente dentro de SERVER URL

http://DOMAIN:PORT/gprmc/Data? 

Dentro de la webapp de OpenGTS ir a Administration > Vehicle Admin y agregar el MOBILEID (dicho dato está en la pestaña ABOUT en la app), si te da problemas edita el registro y agrega el IMEI también.

No está por demás decirte que si solo lo quieres probar el dispositivo y el servidor tienen que estar conectados a la misma red local

Dice la documentación que

Once the server has been set up, you can send a test message from the phone by selecting the status code "Waymark" and clicking "Send". If everything has been properly configured, the "Event Status" section on the phone should first show "Queue: 1 Sent: 0", followed by "Queue: 0 Sent: 1" as the event is sent to the server."

Por tanto seremos capaces de ver el tracking de nuestro android desde la pestaña Mapping > Vehicle

Happy Coding!

**Inspirado en la guía de Andre0991

Entradas populares de este blog

"php" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.

Laravel y MercadoPago SDK

Dompdf image not found or type unknown