Skip to main content

CLI tool to easily get NTRIP caster information

Project description

NTRIP Browser Build Status

A Python API for browsing NTRIP (Networked Transport of RTCM via Internet Protocol).

Requirements

  • pager
  • geopy
  • pycurl
  • cchardet
  • texttable
  • Python 2.6–2.7 & 3.4–3.6

Installation

  • make sure that you have libcurl installed

  • pip install ntripbrowser

  • or clone and run make install

  • If you are looking for the last Python2 version of this package, checkout onto v2.2.3 tag. Python2 support will be discontinued in future releases.

    git checkout v2.2.3

libcurl installation hints

  • installation via apt:

       apt-get install libssl-dev libcurl4-openssl-dev python-dev
    

Usage

ntripbrowser [-h] [-p] [-t] [-c] host

positional arguments:  
  host                  NTRIP source table host address

optional arguments:  
  -h, --help            Show this help message and exit  
  -p, --port            Set url port. Standard port is 2101  
  -t, --timeout         Add timeout  
  -c, --coordinates     Add NTRIP station distance to this coordinate
  -M  --maxdist         Only report stations less than this number of km away
                        from given coordinate

CLI workflow example:

ntripbrowser cddis-caster.gsfc.nasa.gov -p 443 -t 5 -c 1.0 2.0 -M 4000

Package API

Workflow example:

browser = NtripBrowser(host, port=2101, timeout=5)
browser.get_mountpoints()
browser.host = another_host
browser.get_mountpoints()

Arguments:

  • host

NTRIP caster host. Standard port is 2101, use :port optional argument to set another one.

Optional arguments:

  • port

NTRIP caster port.

  • timeout

Use timeout to define, how long to wait for a connection to NTRIP caster.

  • coordinates

Use coordinates to pass your position coordinates in function and get distance to NTRIP station.
Form of coordiantes must be (x, y) or (x.x, y.y) of latitude, longitude.

  • maxdist

Use maxdist to only report stations less than this number of km away from given coordinate.

Result

As a result you'll get a dictionary consisting of a lists of dictionaries with such structure:

  • CAS stations: "Host", "Port", "ID", "Operator", "NMEA", "Country", "Latitude", "Longitude", "FallbackHost", "FallbackPort", "Site", "Other Details", "Distance"

  • NET stations: "ID", "Operator", "Authentication", "Fee", "Web-Net", "Web-Str", "Web-Reg", "Other Details", "Distance"

  • STR stations: "Mountpoint", "ID", "Format", "Format-Details","Carrier", "Nav-System", "Network", "Country", "Latitude", "Longitude", "NMEA", "Solution", "Generator", "Compr-Encryp", "Authentication", "Fee", "Bitrate", "Other Details", "Distance"

Exceptions

  • ntripbrowser.NtripbrowserError - base class for all ntripbrowser exceptions.
  • ntripbrowser.UnableToConnect - raised when ntripbrowser could not connect to the assigned url.
  • ntripbrowser.NoDataReceivedFromCaster - raised when ntripbrowser could not find any data on the page.
  • ntripbrowser.ExceededTimeoutError - raised when connection timeout is exceeded.

To test

make test

Known Issues

Tests with tox may fail if python*-dev is not installed. So, you need to install python2.7-dev and python3.6-dev:

sudo apt-get install python2.7-dev
sudo apt-get install python3.6-dev

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ntripbrowser-2.2.3.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

ntripbrowser-2.2.3-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file ntripbrowser-2.2.3.tar.gz.

File metadata

  • Download URL: ntripbrowser-2.2.3.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/2.7.16

File hashes

Hashes for ntripbrowser-2.2.3.tar.gz
Algorithm Hash digest
SHA256 99253a132162e6f670c3c9f347ae1f083f0aff41c3af17d3950a7c13a6f80a27
MD5 5ee5a31fb0affa90f901e30411956647
BLAKE2b-256 125a31958dcab3dd41ca6c369f8566c008f04ddf40e7680b996fede26a34933d

See more details on using hashes here.

File details

Details for the file ntripbrowser-2.2.3-py3-none-any.whl.

File metadata

  • Download URL: ntripbrowser-2.2.3-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/2.7.16

File hashes

Hashes for ntripbrowser-2.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a70b3bfb2d048b291bbe51f2a2e3c8596c073884cb98cbcba0d5b687737f5c67
MD5 e3f44683be9212964d88ea1980ab480e
BLAKE2b-256 3089c136d28611341e27caed612ea3f1f9e50ddf916b330a2f5f7f61fbe77f47

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page