#cluster #ham #ham-radio #dxcluster

dxclparser

A regex-based parser for the telnet interface provided by a DX cluster

2 stable releases

1.0.1 Sep 9, 2022
1.0.0 Jun 9, 2022

#9 in #ham

39 downloads per month

MPL-2.0 license

31KB
807 lines

libdxclparser

A regex-based parser for the telnet interface provided by a DX cluster.

See example/ folder for exemplary usage.

Supported DX-Clusters

  • DXSpider
  • AR-Cluster
  • CC Cluster
  • Reverse Beacon Network

Supported types of Spots

  • DX
  • RBN
  • WCY
  • WWV
  • WX
  • ToAll
  • ToLocal

Note: A RBN spot is a spot of the type DX with a special format of the comment section. Therefore this library provides a separate method for extracting the RBN information out of the comment section of an already parsed DX spot.

Build, Test and Run

To build this library, simply execute cargo build [--release].

The basic test cases can be executed through cargo test.

The example basic.rs parses a spot given as a commandline argument. See therefore also the shell script basic_run.sh which uses netcat to connect to a cluster server and outputs the parsed spot in its json format. The example type.rs also takes a spot as a commandline argument but demonstrates how to handle each type of spot separately. The example file.rs reads a file given as a commandline argument line by line and outputs the parsed spots in its json format.

Parser

A given spot will be parsed by the corresponding regular expression. Since the different cluster software implementations format the spot slightly different, some fields may be missing and are marked as optional.

Dependencies

~2.8–4.5MB
~85K SLoC