npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

gps-network-tracking-system

v0.1.1

Published

GPS tracking system of remote multiple devices and tracks spatial search

Downloads

1

Readme

TRACKING/STORING SYSTEM OF GPS TRACKS/POSITION In realtime or deferred time with geographic data from postgresql db in geojson format

SISTEMA DI TRACCIAMENTO/ARCHIVIAZIONE TRACCE GPS In tempo reale o differito con dati geografici provenienti da postgis in formato geojson

Postgis installation: http://www.rigacci.org/wiki/doku.php/tecnica/gps_cartografia_gis/postgis

Installation: create z4k user create geodata role create geodata db

ALTER DATABASE geodata OWNER TO z4k;

ALTER DATABASE geodata SET datestyle TO "ISO, DMY";

restore db:
	pg_restore -Fc -d geodata geodata.dump

dump db:
	pg_dump -Fc -d geodata > geodata.dump

create gpsd istance to local with follow command, or with gpsfake installed in system:
	$ ./gpsfake-one

create multiple virtual istances of gpsd for each .nmea file in ./tracks directory:
	$ ./gpsfake-multiple start
	
make a ssh tunneling on port 2947(gpsd default) to the remote gpsd:
	$ ./tunnel

Requirements: php5 PDO gpsbabel gpsd gpsd-clients python-gps postgresql-8.4 http://goo.gl/RDlJl postgresql-8.4-postgis postgis http://goo.gl/n6lTh

Recommends: qgis gmapcatcher tangogps

Components: index.php Struttura della pagina con mappa e filtro tracce

config.php
	Definisce i dati di connessione al db e alcune funzioni utili

geojson.devel.js
	Genera l'interfaccia e la mappa openlayers.

geojson.styles.js
	Definisce gli stili delle tracce gps nella mappa.

getpostgis.php
	Estrae e converte in geojson i dati posizione da postgres filtrati per
	gpsid, giorno, ora.

getgpsd.php
	Restituisce i dati dell'ultima posizione da gpsd/gpsfake.
	Fa una richiesta POLL.

getgpx.php
	Restituisce codice geojson con le coordinate di un file gpx sul server specificato come
	parametro GET, crea una sessione per poter incrementare la posizione letta
	nel file gpx. Utile per Debugging.

gpsd2geojson.php
	Crea una connessione permanente con gpsd di tipo WATCH generando codice
	geojson in STDOUT.
	Funziona come serverside e come script BASH.
	Legge i dati json da gpsd e incapsula altri DATI arbitrari nel pacchetto.
	Crea una sessione (nel file sess_gpsid-X dove X e' il gpsid, di default 3)
	che permette di incrementare l'identificativo della traccia ad ogni nuova
	connessione con gpsd.
	Accetta i parametri:
		$ gpsd2geojson.php [raw|timeout] [port]
	se specificato raw, mostra dati grezzi ricevuti da gpsd e termina esecuzione.

geojson2postgis.php
	Inserisce dati geojson dentro postgres.
	Funziona come serverside e come script BASH.

gpsfake-one
	Esegue gpsfake installato sul sistema sulla porta 2947 con un solo file nmea.
	Stoppa il demone gpsd se gia in esecuzione.

gpsfake-with-port
	Versione modificata di gpsfake (richiede: python-gps) che accetta come
	parametro -P la	porta di ascolto.

gpsfake-multiple
	Demone che esegue piu istanze parallele di gpsfake su porte diverse.
	Utilizza gpsfake-with-port.
	Legge tutti i file .nmea che trova in ./ e si mette in ascolto dalla
	porta 2948 in poi, accetta parametri start/stop/status.

gpx2nmea
	Script che converte file gpx in nmea, per esse utilizzati da gpsfake.

tracks
	Directory in cui vengono letti tutti i file .nmea da gpsfake-multiple

pg-gps-clear
	Svuota la tabella gps, con i dati delle posizioni.

pg-today-clear
	Cancella i dati della tabella gps inseriti oggi.

pg-latest
	Mostra gli ultimi dati inseriti nella tabella gps.

gpsd.ports
	Elenco delle porte in cui sono in ascolto i demoni gpsd di ogni dispositivo gps.
	Questo file viene rigenerato da gpsfake-multiple, ad ogni porta corrisponde un
	file .nmea nella directory tracks

track-one
	Script che inserisce i dati provenienti da gpsd/gpsfake nel db postgres
	mettendo in comunicazione gpsd2geojson.php e geojson2postgis.php.

track-multiple
	Script che inserisce i dati provenienti da gpsd nel db postgres, mette in comunicazione 
	gpsd2geojson.php e geojson2postgis.php.
	Inserisce contemporaneamente i dati di diversi gps le cui porte sono specificate in gpsd.ports

tunnel
	Proietta la porta 2947 di gpsd/gpsfake in remoto tramite un tunnel ssh.

hg-pre-commit
	evento mercurial, crea backup del database postgres nel changeset attuale

hg-update
	evento mercurial, ripristina il database postgres dal file di backup del changeset(geodata.sql.gz)