With the introduction of javAPRSSrvr 3.15b01 (August 2009), two new port types
were added for APRS-IS connected trackers, weather stations, and other send-only
APRS clients to connect to. These ports, HTTP and UDP, provide a mechanism
for the client to send a single packet of information to the server for relay to
the rest of APRS-IS (or equivalent network). The format of this data is
shown below. The server sysops have settled on port 8080 for both HTTP and
UDP support per the IANA alternate HTTP port reservation. Before assuming
the server you use supports these ports, visit their status page (usually
examine their port table. I have opened port 8080 (HTTP and UDP) at
srvr.aprs-is.net for testing and uploads to APRS-IS.
The HTTP port accepts a single POST request from the client. The post
request must be properly formatted and have a minimum these properties:
- Accept-Type: text/plain
- Content-Type: application/octet-stream
- Content-Length: length of data
The data consists of 2 lines: the user login line (see Connecting to APRS-IS) followed by an APRS "packet" in TNC2 format.
The "packet" must be from the logged-in station. For instance:
user TEST-1 pass -1 vers TestSoftware 1.0
TEST-1>APRS,TCPIP*:>This is a test packet
This packet will be given a U indicator in the q construct (qAU). In the
above case, the packet will not be accepted on APRS-IS because the login is not
verified (invalid passcode).
The UDP packet consists solely of the user login line followed by the APRS
"packet" in TNC2 format. The APRS packet in both case may be terminated
with a carriage return, a line feed, or both, or no terminator. There is
no confirmation of receipt on the UDP packet. javAPRSSrvr does respond
properly with an HTTP status packet on the HTTP port.