Dies ist der Befehl gpsfake, der im kostenlosen OnWorks-Hosting-Provider mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
gpsfake - Testkabel für GPS, Simulation eines GPS
ZUSAMMENFASSUNG
GPS-Fake [-1] [-h] [-b] [-c Intervall] [-Ich würde Debug-Ebene] [-l] [-m Monitor] [-g] [-n]
[-oder Optionen] [-p] [-P port ] [-R initcmd] [-S Geschwindigkeit] [-S] [-u] [-t] [-v]
[Logdatei...]
BESCHREIBUNG
gpsfake ist ein Testgeschirr für gpsd und seine Kunden. Es öffnet ein Pty (Pseudo-TTY), startet
eine gpsd-Instanz, die denkt, dass die Slave-Seite des pty sein GPS-Gerät ist, und wiederholt
speist den Inhalt einer oder mehrerer Testprotokolldateien über die Masterseite an das GPS. Wenn
es gibt mehrere Logfiles, Sätze daraus sind in der Reihenfolge der Dateien verschachtelt
angegeben sind.
gpsfake erfordert keine Root-Rechte und kann gleichzeitig mit einer Produktion ausgeführt werden
gpsd-Instanz, ohne Probleme zu verursachen.
Die Protokolldateien können Pakete in jedem unterstützten Format enthalten, einschließlich insbesondere NMEA,
SiRF, TSIP oder Zodiac. Führende Zeilen, die mit # beginnen, werden als Kommentare behandelt und
ignoriert, außer in den folgenden Sonderfällen:
· ein Kommentar der Form #Datum: jjjj-mm-tt (ISO8601-Datumsformat) kann verwendet werden, um die
Anfangsdatum für das Protokoll.
· ein Kommentar der Form #Serial: [0-9]* [78][NOE][12] kann verwendet werden, um die Seriennummer zu setzen
Parameter für das Protokoll - Baudrate, Wortlänge, Stoppbits.
· ein Kommentar der Form #Transport: UDP kann verwendet werden, um eine UDP-Quelle zu fälschen, anstatt die
normale pty.
Die gpsd-Instanz wird im Vordergrund ausgeführt. Der Thread, der gefälschte GPS-Daten an den Daemon sendet, ist
im Hintergrund laufen.
OPTIONAL
Mit der Option -1 wird die Protokolldatei nur einmal und nicht wiederholt interpretiert. Dies
Option soll Regressionstests erleichtern.
Das -b aktiviert eine Fortschrittsanzeige mit Drehstab bei Standardfehlern. Bei Beendigung ist es
meldet die verstrichene Zeit.
Das -c legt die Verzögerung zwischen den Sätzen in Sekunden fest. Bruchteile von Sekunden sind
legal. Der Standardwert ist null (keine Verzögerung).
Das -l lässt das Programm eine Zeilen- oder Paketnummer ausgeben, kurz bevor jeder Satz zugeführt wird
der Dämon. Wenn der Satz textuell ist (zB NMEA), wird auch der Text gedumpt. Wenn nicht,
das Paket wird hexadezimal ausgegeben (außer bei RTCM-Paketen, die nicht bei . gedumpt werden)
alle). Diese Option ist nützlich, um zu überprüfen, ob gpsfake die Paketgrenzen richtig erkennt.
Das -i dient zum schrittweisen Durchlaufen von Protokolldateien. Es gibt die Zeilen- oder Paketnummer aus (und
der Satz, wenn das Protokoll textuell ist) gefolgt von "? ". Nur wenn die Benutzertasten Enter
ist die Leitung tatsächlich an gpsd gespeist.
Das -m gibt ein Monitorprogramm an, in dem der Daemon ausgeführt werden soll. Diese Option ist
zur Verwendung mit vorgesehen Valgrind(1) gdb(1) und ähnliche Programme.
Das -g verwendet die Überwachungsfunktion, um die gpsd-Instanz innerhalb von gpsfake unter der Kontrolle von . auszuführen
gdb.
Das -o gibt Optionen an, die an den Daemon übergeben werden sollen. Die Option -n übergibt -n, um die
Daemon, der das GPS liest, ohne auf einen Client zu warten (entspricht -o "-n"). Die -D leitet
a Option -D für den Daemon: daher ist -D 4 die Abkürzung für -o "-D 4".
Die Option -p ("pipe") setzt den Watcher-Modus und gibt die NMEA- und GPSD-Benachrichtigungen aus
die vom Protokoll generiert werden, in die Standardausgabe. Dies ist nützlich für Regressionstests.
Die Option -P ("port") setzt den Überwachungsport des Daemons.
Das -r gibt einen Initialisierungsbefehl an, der im Pipe-Modus verwendet werden soll. Die Standardeinstellung ist
?WATCH={"enable":true,"json":true}.
Das -s setzt die Baudrate für den Slave tty. Der Standardwert ist 4800.
Die Option -S weist gpsfake an, realistische Verzögerungen in die Testeingabe einzufügen, anstatt
versuchen, es so schnell wie möglich durch den Daemon zu stopfen. Dadurch werden die Tests ausgeführt
viel langsamer, vermeidet aber flockige Ausfälle aufgrund von Maschinenadern und möglichen Rennbedingungen in
die pty-Schicht.
Das -t zwingt das Test-Framework, TCP anstelle von pty-Geräten zu verwenden. Abgesehen davon, dass es ein Test ist
des Umgangs mit TCP-Quellen kann dies zum Testen innerhalb von Chroot-Jails nützlich sein, wo
Der Zugriff auf pty-Geräte ist gesperrt.
Das -u zwingt das Test-Framework, UDP anstelle von pty-Geräten zu verwenden. Abgesehen davon, dass es ein Test ist
des Umgangs mit UDP-Quellen kann dies nützlich sein, um aus Chroot-Jails heraus zu testen, wo
Der Zugriff auf pty-Geräte ist gesperrt.
Das -v aktiviert ausführliche Fortschrittsberichte an stderr. Es ist hauptsächlich zum Debuggen nützlich
gpsfake selbst.
Das -x gibt Pakete aus, während gpsfake sie sammelt. Es ist hauptsächlich nützlich zum Debuggen von GPSfake
sich.
Das -h lässt gpsfake eine Nutzungsnachricht ausgeben und beenden.
Das Argument muss der Name einer Datei sein, die die Daten enthält, die am Gerät durchlaufen werden sollen.
gpsfake druckt bei jedem Zyklus eine Benachrichtigung.
Normalerweise erstellt gpsfake für jede Protokolldatei ein PTY und übergibt die Slave-Seite des Geräts
zum Dämon. Enthält der Header-Kommentar in der Logdatei die Zeichenfolge "UDP", werden Pakete
stattdessen über UDP-Port 5000 an die Adresse 192.168.0.1.255 versendet. Sie können sie überwachen
mit diesem: tcpdump -s0 -n -A -i lo UDP und port 5000.
MAGIC IHRE NACHRICHT
Bestimmte magische Kommentare in Testlast-Headern können die Bedingungen des Tests ändern. Diese
sind:
Serial:
Kann eine Einstellung für den seriellen Anschluss enthalten, z. B. 4800 7N2 - Baudrate gefolgt von 7 oder 8 für
Bytelänge, N oder O oder E für Parität und 1 oder 2 für Stoppbits. Der Test wird durchgeführt mit
diese Einstellungen auf dem Slave-Port, die der Daemon sieht.
Transport:
Die Werte 'TCP' und 'UDP' erzwingen die Verwendung von TCP- bzw. UDP-Feeds (die Standardeinstellung ist
ein pty).
Verzögerungs-Cookie:
Es müssen zwei durch Leerzeichen getrennte Felder, ein Trennzeichen und ein folgen
numerische Verzögerung in Sekunden. Anstatt durch Paketgrenzen unterbrochen zu werden, wird der Test
Die Last wird auf die Trennzeichen aufgeteilt. Die Verzögerung wird nach jedem Feed durchgeführt. Kann nützlich sein
zum Auferlegen von Schreibgrenzen in der Mitte von Paketen.
KUNDENSPEZIFISCH TESTS
gpsfake ist ein trivialer Wrapper um ein Python-Modul, auch gpsfake genannt, das verwendet werden kann
zu vollständigen Skriptsitzungen mit einer GPS-Instanz, einer beliebigen Anzahl von Client-Sitzungen und beliebigen
Anzahl von gefälschten GPSes, die die Daemon-Instanz mit Daten aus bestimmten Satzprotokollen füttern.
Die Quell- und eingebettete Dokumentation für dieses Modul wird mit der GPS-Entwicklung geliefert
Werkzeuge. Sie können es verwenden, um entweder GPS selbst oder jeden GPS-fähigen Client zu testen
Anwendung.
Logfiles für die Verwendung mit gpsfake können mit gpspipe, gpscat oder gpsmon von . abgerufen werden
die GPS-Distribution oder jede andere Anwendung, die in der Lage ist, ein kompatibles
Ausgabe.
Wenn gpsfake mit "Gpsd kann nicht ausgeführt werden: ausführbare Datei nicht gefunden" beendet wird. die Umgebung
Variable GPSD_HOME kann auf den Pfad gesetzt werden, in dem gpsd gefunden wird. (anstatt das hinzuzufügen
Ordner in die Umgebungsvariable PATH
Verwenden Sie gpsfake online mit den onworks.net-Diensten