Merge simtrace-analyser-server into simtrace2_pysniff.server

Add simtrace2-pysniff-server CLI — HTTP API for simtrace-analyser PWA.
Two capture modes: GSMTAP UDP listener (compatible with simtrace2-sniff)
or direct SIMtrace2 hardware capture. SQLite storage with sessions +
messages tables. REST API with CORS.

server/ sub-package: database.py, capture.py, server.py, __main__.py

README updated with server usage section.
pyproject.toml: simtrace2-pysniff-server script entry added.
This commit is contained in:
catarrh committed 2026-08-12 15:59:51 +03:00
1 parent a130b97cce
commit 17eeda27f3
7 files changed
+593 -2

No files matched your search

+24 -2
View File
@@ -34,7 +34,11 @@ pip install -e .
## Running
Two equivalent ways to start the sniffer:
Two tools are provided:
### Sniffer CLI (`simtrace2-pysniff`)
Captures SIMtrace2 traffic and writes it to stdout, GSMTAP (Wireshark), or PCAP files.
### Startup script (Linux only)
@@ -49,12 +53,30 @@ launches the Python module.
./sniff-start.sh --pcap trace.pcap --format atr-time
```
Options can also be set via environment variables:
OPTIONS can also be set via environment variables:
```sh
FORMAT=timestamp GSMTAP=127.0.0.1 ./sniff-start.sh
```
### Analysis server (`simtrace2-pysniff-server`)
Stores captured APDU traffic in SQLite and serves it over HTTP for the
[simtrace-analyser](https://github.com/anttro/simtrace-analyser) PWA.
Two capture modes:
```sh
# Listen for GSMTAP from simtrace2-pysniff (or original simtrace2-sniff):
simtrace2-pysniff-server --capture gsmtap
# Capture directly from SIMtrace2 hardware (no external tool needed):
simtrace2-pysniff-server --capture direct
```
The PWA then connects to `http://127.0.0.1:8081` for live viewing and
session management. See the [simtrace-analyser](https://github.com/anttro/simtrace-analyser)
repo for the browser interface.
### Python module (cross-platform)
```sh