Giter Club home page Giter Club logo

frequensgi's Introduction

frequensgi

APRS-IS ASGI protocol server. Allows receiving messages from, and sending messages to, the APRS network.

ASGI Protocol Specification

Connection Scope

Incoming frames are scoped by their callsign.

The scope and application instance will be made when a frame with that callsign is received after process start, and will be lost either when the callsign has been inactive for some time and it is garbage-collected or when the current process ends.

If you want to manage long-lasting, per-callsign state, it's recommended you use a database or some kind of session store.

The scope contains:

  • type: aprs
  • callsign: APRS callsign, including SSID suffix if nonzero (e.g. K3AEA-1).

Frame (Incoming)

An incoming frame. Might be targeted at the callsign of the APRS server, or if the server is configured for full-feed or location-based, to any callsign.

Frequensgi will try to decode the frame as much as it can and give you high-level values, but the raw frame will always be included in case there is custom packing logic involved.

Keys:

  • type: asgi.frame
  • frame: Byte string of the entire received frame.
  • ``from

Frame (Outgoing)

An outgoing frame. Will be sent from the server's configured callsign out into the APRS-IS system.

Keys:

  • type: asgi.send_frame
  • frame: Byte string of the frame to send. If provided, no other keys are used.
  • ``from

frequensgi's People

Contributors

andrewgodwin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

jj1bdx

frequensgi's Issues

Is this actually working?

Hello,

Given that this project is mentioned in the routing section of the official Channels v2 documentation, and that it is actually linked from the asgiref docs as the single example on how StatelessServer should be used, one would expect it to be a complete, working example of how to write a simple "client" protocol handler for Channels 2.

Is it?

It seems to connect to the APRS network, but does it actually do anything on the ASGI side?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.