Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mattrasband/aioaprs
Asyncio based read-only APRS streaming library
https://github.com/mattrasband/aioaprs
aprs asyncio ham-radio python3
Last synced: 7 days ago
JSON representation
Asyncio based read-only APRS streaming library
- Host: GitHub
- URL: https://github.com/mattrasband/aioaprs
- Owner: mattrasband
- License: mit
- Created: 2019-05-11T21:28:01.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-05-11T22:16:12.000Z (over 5 years ago)
- Last Synced: 2024-11-07T00:31:12.922Z (about 2 months ago)
- Topics: aprs, asyncio, ham-radio, python3
- Language: Python
- Size: 6.84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aioaprs
Asyncio Based APRS client
## Usage
### Install
```bash
$ pip install -U https://github.com/mrasband/aioaprs.git
```### Use
```python
import asyncio
import dataclasses
import logging
import re
from typing import List, Optionalfrom . import (
APRSClient,
AreaFilter,
Point,
RangeFilter,
TypeFilter,
Types,
)logging.basicConfig(level=logging.INFO)
async def main():
async with APRSClient("KD0VTE", filters=[
RangeFilter(Point(39.545917, -104.927592), 100),
# Ignore everything except the Position reports
~TypeFilter([
Types.ITEMS,
Types.MESSAGE,
Types.NWS,
Types.OBJECTS,
# Types.POSITION,
Types.QUERY,
Types.STATUS,
Types.TELEMETRY,
Types.USER_DEFINED,
Types.WEATHER,
]),
]) as client:
async for packet in client:
print(packet)if __name__ == "__main__":
try:
asyncio.run(main())
except KeyboardInterrupt:
pass
```