[aprssig] Sending objects to RF via APRS-IS
John Gorkos
jgorkos at gmail.com
Sat Jan 8 08:35:22 EST 2011
On Friday, January 07, 2011 17:43:11 Lynn W. Deffenbaugh (Mr) wrote:
> John Gorkos wrote:
> > My question is, how do I properly structure an Object and send it via
> > APRS-IS such that a Tx-enabled I-Gate will broadcast that object on the
> > air? What are the logical steps an IGate will go through to figure out
> > if an object it hears on APRS-IS should generate an RF-transmit?
>
> You don't. There is no way to "causes the local I-Gate to send"
> anything at all. Even a "properly configured" bi-direction IGate will
> only transmit what the IGate operator has configured it to transmit. In
> most cases, the IGates will only transmit messages for stations that
> they have "recently" heard "local" to the IGate. And the only thing
> that fits that category would be an "Item-In-Message"
> (http://www.aprs.org/aprs12/item-in-msg.txt) that (AFAIK) only
> APRSISCE/32 interprets and displays.
>
That's what I was afraid of. I will implement WB4APR's suggestion for ITEM-
IN-MESSAGE and let that work through the system.
> > Incidentally, the AVRS server is periodically on-line as I work through
> > it. If you feel like pinging it, send a "?" to destination "AVRS".
> > Right now, it only returns EchoLink nodes, but IRLP should be added in a
> > day or so (kudos to both Jonathon and David for being so accomodating
> > with my requests).
>
> Do you have a way to query EchoLink and/or IRLP node status within a
> geographical range? I'd like to add that capability directly in my
> APRSISCE/32 client. Right now, in the current development version as of
> about 2 days ago, it pulls the entire node_location.xml from
> echolink.org and runs it through a filter before putting the repeater
> objects onto the screen.
>
> Lynn (D) - KJ4ERJ - Author of APRSISCE for Windows Mobile and Win32
Right now, the AVRS server periodically (5 minutes for EchoLink, 10 minutes
for IRLP) polls the two services, pulls the XML files which you just
referenced, and puts them into a spatially indexed Postgres table. From
there, it's just a query like this:
select ST_distance_sphere(a.position, e.position)/1609 as distance,
e.callsign, e.node, astext(e.position), e.nodetype, e.tone, e.frequency from
all_positions a, node_positions e where a.callsign=? order by distance asc
limit 3;
all_positions is just a constantly UPDATED point object for everything heard
on APRS-IS.
So, the bottom line is that the network operators (EchoLink and IRLP) don't
provide a "closest to" interface, but it would be trivial for me to add it.
Contact me off list and we'll put together a quick XML query/response. Right
now, I'm hosting off a dedicated machine at the house (Comcast 25MB/s / 6MB/s
connection), but eventually I'll put this in a Tier IV datacenter.
I've had great success in working with Jonathon and David WRT pulling data
from their respective systems, and I want to publicly thank them. David
Cameron (VE7LTD) has been particularly kind in creating a custom XML page for
me to mirror Jonathon's node_location.xml. I'm not sure I'm at liberty to
give out the URL, but you can probably contact him at dcameron at irlp.net for
access.
Shawn - Everything is in Java. Specifically, enterprise-style-bean Java
where all fields are private and accessed via getters/setters. I've rewritten
large portions of the FAP parsers in Java (I have Message, Object/Item, and
compressed, uncompressed, and MIC-E packets all being decoded into a clean set
of objects). All of the code is in SVN, and all is GPL. Contact me off-list
for SVN information (again, it's stored on my home server). I'll make a
general announcement once I've added the appropriate GPL headers and given
proper attribution for the JavaFAP code that I've stolen from SourceForge and
made work correctly. Clearly, since it's in Java and written in library-
style, the potential to reuse the code on an Android platform exists.
John Gorkos
AB0OO
More information about the aprssig
mailing list