A python3 module for the Open Glider Network.
Go to file
dependabot[bot] 15d474a2c7
Bump pytest from 8.3.5 to 8.4.1
Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.5 to 8.4.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 8.4.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-19 04:07:10 +00:00
.github split ci workflow into deploy and test 2025-05-20 19:05:31 +02:00
ogn handle decimals from rust parser 2025-05-22 09:54:02 +02:00
ogn-aprs-protocol@067bdeb956 ignore capturs, inreach and delay messages for test cases 2025-05-20 19:05:31 +02:00
tests skip test case for createTimestamp 2025-05-23 10:51:01 +02:00
.gitignore Initial commit; Import from ogn-python 2016-02-28 12:11:16 +01:00
.gitmodules check messages from ogn-aprs-protocol 2025-05-06 13:38:20 +02:00
CHANGELOG.md Release v2.0.0 2025-05-23 10:52:17 +02:00
LICENSE Initial commit; Import from ogn-python 2016-02-28 12:11:16 +01:00
README.md remove OgnParseError 2025-05-21 15:04:40 +02:00
parser_v2_migration.md updated migration documentation 2025-05-21 09:26:51 +02:00
poetry.lock Bump pytest from 8.3.5 to 8.4.1 2025-06-19 04:07:10 +00:00
pyproject.toml Bump pytest from 8.3.5 to 8.4.1 2025-06-19 04:07:10 +00:00

README.md

python-ogn-client

build PyPi Version

A python3 module for the Open Glider Network. It can be used to connect to the OGN-APRS-Servers and to parse APRS-/OGN-Messages.

Installation

python-ogn-client is available at PyPI. So for installation simply use pip:

pip install ogn-client

Example Usage

Parse APRS/OGN packet.

from ogn.parser import parse
from datetime import datetime

beacon = parse("FLRDDDEAD>APRS,qAS,EDER:/114500h5029.86N/00956.98E'342/049/A=005524 id0ADDDEAD -454fpm -1.1rot 8.8dB 0e +51.2kHz gps4x5",
				reference_timestamp=datetime(2015, 7, 31, 12, 34, 56))

Connect to OGN and display all incoming beacons.

from ogn.client import AprsClient
from ogn.parser import parse, AprsParseError

def process_beacon(raw_message):
    try:
        beacon = parse(raw_message)
        print('Received {aprs_type}: {raw_message}'.format(**beacon))
    except AprsParseError as e:
        print('Error, {}'.format(e.message))

client = AprsClient(aprs_user='N0CALL')
client.connect()

try:
    client.run(callback=process_beacon, autoreconnect=True)
except KeyboardInterrupt:
    print('\nStop ogn gateway')
    client.disconnect()

Connect to telnet console and display all decoded beacons.

from ogn.client import TelnetClient
from ogn.parser.telnet_parser import parse

def process_beacon(raw_message):
    beacon = parse(raw_message)
    if beacon:
        print(beacon)

client = TelnetClient()
client.connect()

try:
    client.run(callback=process_beacon)
except KeyboardInterrupt:
    print('\nStop ogn gateway')
    client.disconnect()

License

Licensed under the AGPLv3.