4. E-Mail Message
4.3. The APRSlink service
APRSlink is a service which creates a bridge between the APRS newtork and the WinLink global service, allowing access to the electronic mail via radio protocols, in places where Internet connections are not available. More details you can found on https://winlink.org.
In order to use the APRSlink service, first you have to create an E-mail account on the WinLink platform, account which will have the following format: indicativ@winlink.org. Follow the steps described in the My Account section on http://winlink.org.
It should be noted that, since WinLink is designed to provide E-Mail services over radio channels used by radio amateurs, the confidentiality of messages exchanged through this service cannot be guaranteed. Therefore, avoid sending messages with sensitive content for your personal life or others.
The account name will be your callsign and for password use at least 10 characters, including digits and special characters.
After your account is enabled and checked, using a WEB interface, go back to the APRS equipment and send to WLNK-1 the text LOGIN. The WLNK-1 will answer with a message like below:
LOGIN[123]:
where 123 is any random combination of 3 digits. User must answer with a string of 6 characters length, of which 3 must represent those from access password placed on the positions corresponding to the random digits, in any order.
For example, if the access password for WinLink account is 73DEHAMRADIO! and the random combination received from WLNK-1 is [275], the three necessary characters to complete the handshake will be 3MH. The answer to WLNK-1 will be:
XHYMZ3
As you can see, the characters resulted from the password are not necessary to be provided in the same order like in the password or in order of the random digits.
Because the APRS exchanged messages are not encrypted and are very easy to find them on various websites which monitor the APRS activity, it is absolutely necessary to use at least 10 characters for your access password to the WinLink account, so that to have always hidden characters. In the below example, the characters DIO! will be never transmitted to the radio or APRS-IS, because random digit combination will cover only password's positions from 1 to 9.
Even in these conditions, if you will use often the APRSlink service, it is recommended to change the password at 3 or 6 months.
You have three attempts to send a correct answer to the challange. A wrong password will be signaled by a form message:
Invalid login challenge response -- 2 attempts remaining
After three wrong passwords, APRSlink will block your access for few hours.
IMPORTANT ! In a congested APRS radio network or in case of poor reception of signals from the digipeater, the different messages, including those which confirm success authentication or those which inform about failed authentication, can be delayed. For this reason, do not rush to repeat the transmission of the response to the LOGIN request if you do not receive WLNK-1 responses quickly. Give a break of 1 to 3 minutes and if you don't receive any message, resume the transmission of the answer to the LOGIN request.
When the authentication was done successfully, you will receive the following answer:
Hello YO3YOU-9. Login valid for ~2 hours
From this point, you can use a series of commands that allow you to list, read, delete, redirect or reply to E-Mail messages received in the WinLink mailbox, including creating and sending new e-mail addresses.
The list of commands available after connecting to APRSlink is obtained by sending a question mark ? to WLNK-1. The answer will be:
SP, SMS, L, R#, K#, Y#, F#, P, G, A, I, PR, B (? + cmd for more)
and, as is suggested even in this answer, the question mark followed by one command (without "+" sign), will provide a summary description of the respective command. For example, the text ? L, sent to WLNK-1,will return:
List pending messages: L
The L command will return a list of the last 5 unread message, stored in the WinLink mailbox. A possible answer is the following:
1) APRSLink: Packet Retries 2043 bytes
2) Position Report Acknowledgement 504 bytes
3) UR QTH ? 852 bytes
Reading a message is possible by sending the command R#, where # is the message number. For the above example, sending the text R2 to WLNK-1 will display the answer:
Position Report Acknowledgement Fm:SERVICE Msg:The following positi
on report for YO3XYZ has been entered. Date/Time: 2019/08/11 20:40
Latitude: 44-24.02N Longitude: 026-05.06E Comment: APRSlink via
Internet
You can replay to a received message by using the command Y#. If you send the text Y3 to WLNK-1, you will get a message which confirms the recipient E-mail address and how to mark the end of the message.
Reply to: SMTP:yo3dxy@yahoo.com Send /EX when done.
From this moment, any text sent to WLNK-1 will be part of the body message. Theoretically, there is no a limit of the text lines which can be added, but in a real APRS network, a congested traffic or poor radio connection to the digipeater can affect the integrity of the message. For this reason, do not transmit a new text line until you don't have a confirmation that the previous line was processed. Otherwise, either the lines in the message will be missing or they will appear in the final message in another order.
Also, it must also be taken into account that each APRS message that composes the body of the E-mail, must not exceed the length of 67 characters.
In the above example, YO3XYZ will answer to YO3DXY with the message QTH KN25rj Caraiman Peak sent to WLNK-1. If there are other information which should be transmitted, YO3XYZ can do this in the next APRS messages sent to WLNK-1.
Finally, will be sent the /EX command in order to mark the end of the mail message and sending to the recipient. The Sender will receive the following confirmation:
Message sent to: SMTP:yo3dxy@yahoo.com
At the recipient, the message will look like this:
From: yo3xyz@winlink.org
To: yo3dxy@yahoo.com
Subject: RE: UR QTH?
QTH KN25rj Caraiman Peak
+++ Below automatically added by APRSLink +++ Last reported position: 4524.39N 02528.54E Grid: KN25RJ. See map at: http://www.findu.com/cgi-bin/find.cgi?call=YO3XYZ-9
It is the moment for an important remark: like in case of EMAIL-2 service, Winlink implements its own authorization mechanism for E-mail messages sent to the @winlink.org domain, in order to avoid the propagation of the unwanted messages,like SPAM. So, the YO3DXY's message to YO3XYZ will be rejected by Winlink if the yo3dxy@yahoo.com was not prior authorized or the YO3DXY's message is not a reply from an E-mail message already sent by YO3XYZ.
So, if yo3dxy@yahoo.com sent a message for the first time to yo3xyz@winlink.org, will receive an error message with the following content :
winlink.org rejected your message to the following email addresses:
YO3XYZ@winlink.org (YO3XYZ@winlink.org) Your message couldn't be delivered. When Office tried to send the message, the external email server returned the error below. This is probably due to a problem or policy setting on the recipient's email system.
winlink.org gave this error: Remote server returned an error -> 554 - Sender not authorized for any recipient; See www.winlink.org/help
YO3XYZ can permanently authorize the address yo3dxy@yahoo.com by adding it in a white list which can be managed by accessing https://winlink.org/user and the option [My Withelist]. In the “Whitelist Manager”, is added the recipient address, check the option [Allow] and finally push the [Save] button.
Afterwards, an E-mail address from the withe list can be edited, deleted or unchecked if only a temporary suspension of the authorization is desired.
It is important to know that all these operations of authorization and white list updating are possible only having Internet access to the admin page Winlink account. What will happened if the user of the @winlink.org address is on the field, without Internet access and without foresight the authorization of certain addresses? Winlink provides a temporary authorization of the non-Winlink addresses by adding a prefix in the subject of the message sent to the @winlink.org address.
In the above scenario, we suppose, again, that YO3DXY wants to send for the first time an E-mail to
yo3xyz@winlink.org, but YO3XYZ did not authorize his E-mail address. In that case, YO3DXY must send an E-mail message with a subject containing one of the following prefixes:
//WL2K Z/ - for high urgency messages. WinLink will mark them as Flash
//WL2K O/ - for urgent messages. WinLink will mark them as Immediate
//WL2K P/ - for priority messages. WinLink will mark them as Priority
//WL2K R/ - for routine messages. WinLink will mark them as Routine
The presence of the //WL2K prefix in the subject of a message sent to a @winlink.org, makes Winlink E-mail server to ignore the white list and to allow the message transfer to the Winlink user's mailbox.
But, could be possible that YO3DXY may not know about the existance of these prefixes, without possibility to find very soon how to use them. In that case, it is enough for YO3XYZ (yo3xyz@winlink.org) to send a simple message to YO3DXY (yo3dxy@yahoo.com), with a generic subject (“Portable activity KN25rj”). The messages sent afterwards by YO3DXY will be accepted by default by the Winlink server, while there are replies to the message with the generic subject estabilished by YO3XYZ.
It must be said that, the E-mail messages exchange between addresses from @winlink.org domain, is authorized by default.
The command for sending a new E-mail message to certain address is:
SP recipient_address subject
To continue the above example, in order to send a new E-mail to yo3dxy@yahoo.com, YO3XYZ will transmit to WLNK-1 the APRS message
SP yo3dxy@yahoo.com Portable activity in KN25rj
YO3XYZ will receive the following confirmation message:
New message to: yo3dxy@yahoo.com. Send /EX when complete.
After this, he will continue with the E-mail body message. For example:
Use only Reply to the messages with the mentioned subject
At the end, YO3XYZ will send the last APRS message to WLNK-1, with text /EX and the confirmation will be:
Message sent to: yo3dxy@yahoo.com
In APRSlink is also available the forward feature, by using the command F# recipient_address, sent to WLNK-1. This command allows only the E-mail forwarding to the mentioned address, but not adding of an additional message.
A message listed with the L command can be deleted from the mailbox by using the K# command. If we wish to delete the first message from the list, the text K1 must be sent to WLNK-1 and the answer will be:
Message 1 deleted
All the commands which permit the sending of an E-mail message (Y#, F#, SP), use as first argument the recipient E-mail address, but APRSlink allows usage of aliasses. Creation or changing of an alias can be done by sending to WLNK-1 of the following command:
A alias=mail_address
If YO3XYZ will use the command A yo3dxy=yo3dxy@yahoo.com to create an alias, will receive the confirmation
Alias updated: yo3dxy=yo3dxy@yahoo.com
For changing the mail address assigned to an alias, will be used the same command, but mentioning the new E-mail address:
A yo3dxy=yo3dxy@gmail.com
To delete an alias, the command sent to WLNK-1 will be
A yo3dxy=
and the confirmation is
Alias deleted: yo3dxy
An aliasses list can be obtained by sending the command AL to WLNK-1.
APRSlink allows sending of short message to E-mail addresses, by using SMS command sent to WLNK-1:
SMS recipient_address message
or
SMS alias message
The E-mail sent with this command will include the message in the subject, following that the E-mail body to include only geographical coordinates and sender's locator, similar like in other APRSlink commands for sending E-mail messages (Y#, F#, SP).
Another useful command is PR message (the abbreviation for Position Report), whose purpose is to send to the APRS-IS network a beacon with the geographical position accompanied by a status message and a symbol which informs that you are active as WinLink user. The beacon is takeover also by the WinLink network and shown on the its own map, at https://winlink.org/userPositions.
The last APRSlink command is B (from Bye). By sending this command to WLNK-1 will force the logout from the APRS/WinLink infrastructure and will return the message:
Log off successful
5. Global Mountain Activity (GMA) Service
Global Mountain Activity (GMA) is a hamradio group which provides news, tools and useful services for portable hams in outdoor activites: SOTA, WWFF, IOTA, COTA and Lighthouses. It can be accessed on the following link: https://www.cqgma.org/
One of the provided tool by GMA is an APRS service, hosted on a Linux server, called Camilla and registered in the APRS network with DL0QW-12 callsign. The purpose of this service is to allow announcement of the portable activities, by sending to the DL0QW-12 node of a text with the following structure:
callsign activity_code frequency working_mode comments
So, if YO3XYZ wants to announce that he is operating in SOTA program, on Omu Summit, Carpathians Mountains, YO/MC-006, will send to DL0QW-12 the following text:
YO3XYZ/P YO/MC-006 7030 CW QRV Vf. Omu
This announcement will be published on the GMA site, at https://www.cqgma.org/smartgma/smartinfo.php?i=0. This announcement can be also published on the DX-Cluster community, by using DX command, as follows:
DX callsign frequency spotter comments
More exactly, if you intend to announce another portable activity of YO3XYZ, in Cozia National Park (YOFF-0006), you will send the APRS text:
DX YO3XYZ/P 7040 YO3YOU YOFF-0006 Cozia
It is important to note that posting announcements to DX-Cluster is available only for users with registered accounts on https://www.cqgma.org/.
Also, keep in mind that the mximum APRS text size should not exceed 67 characters.
Another useful feature provided by GMA is the distance calculation between two locations, whose coordinates are defined by Maidenhead locator. If YO3XYZ, located on Omu Summit (KN25rk) needs to know the distance to YO3DXY, located in Paltinis area (KN15xp), will send to DL0QW-12 the text:
QRB KN25rk KN15xp
The answer will contain the distance between both locations but also the heading from one location to the other and viceversa, as follows:
kn25rk>kn15xp qrb=120km qtf=282° reverse qtf=102°
For HF portable activities, if you don't have an Internet connection available, could be very helpful the WCY command. It takes over the information regarding the propagation conditions provided by http://www.dk0wcy.de/ and displays them like this:
WCY 01-Nov, 2302z : SFI=70, A=13, K=3, expK=2, R=35, SA=qui, GMF=qui, Aurora=no
As a remark, those information are automatically transmitted by DK0WCY, every 10 minutes, 10.144 MHz (10.143 MHz + f0=1000Hz), in CW, RTTY and PSK31. The detailed schedule can be found here: http://www.dk0wcy.de/schedule_en.html.
The GMA service lacks a single feature: the ACK returning after a message is sent to DL0QW-12. For this reason, a command sent to this node, being not acknowledged, will be continuously re-transmitted for a number of times (depending on the transceiver or APRS software), even the message was received by the server. Thus, if you experience a good access in the APRS radio network or you already received the answer to your command, manually stop message sending, in order to avoid the unnecessary loading of the APRS network.
6. The WxBot Service
If I just describe the GMA service, intented for those hams who love portable activities, maybe is helpful a service which provides information about weather conditions. This is WXBOT and was created to provides WX information and forecast mainly for United States territory. Summary information are provided also for any part of the world if near the requested location is an ICAO (International Civil Aviation Organization) coded airport or an amateur weather station registered in CWOP (Citizen Weather Observer Program).
For any amateur radio in the United States (despite the origin country), it is enough to send his own callsign, city name or locator to WXBOT, optionally followed by some keywords which mention the forecast time or the source of the WX data.
But, for other countries, the information are not so accurate, being available only the weather conditions provided by the nearest WX station from the location mentioned in the command sent to WXBOT. This can be your or other callsign, a city or a locator, followed by the keyword METAR:
YO3YOU-7 METAR
The callsign must be one previously used to send a beacon, so that WXBOT service can determine the closest WX station. For example, if you are in Bucharest, it is very likely that the nearest weather station to be the Baneasa airport and the answer will be:
LRBS 051730Z 24007KT CAVOK 18/08 Q1010 NOSIG
where:
- LRBS is the airport ICAO code;
- 051730Z: first two digits represent the day number from the current month, followed by the UTC time (1730 Zulu);
- 24007KT: first three digits represent the wind direction (in degrees), followed by the wind speed (in knots, KT);
- CAVOK is the abbreviation from Cloud And Visibility OK. Depending on the local weather conditions, the abbreviation can be replaced with other codes, like SCT (scattered) or OVC (overcast);
- 18/08: current temperature / dew point;
- Q1010: atmospheric pressure, in hPa;
- NOSIG: abbreviation from NO SIGNificant, meaning there are not predicted important local WX changes.
A detalied list of METAR codes can be find here https://www.skybrary.aero/index.php/Meteorological_Terminal_Air_Report_(METAR, while a list of METAR locations is available here https://www.aviationweather.gov/static/adds/metars/stations.txt
For more "freindly" results, your callsign could be followed by the keyword CWOP. Will be returned weather information from the closest WX station included in the CWOP network:
YO3YOU-7 CWOP
The answer can looks like this:
YO3IEZ-WX 63,wind:239@6 g22,1002.8mbar,rh:58%,rain:1h:0.00in.,24h:0.01in.
where:
- YO3IEZ-WX is the WX station callsign. Many WX nodes can have a different callsign, composed of DW prefix, followed by 4 digits;
- 63 is the current temperature, in Fahrenheit;
- wind: 239@6 reprresent the wind direction and speed (in knots);
- g22 is the wind gust speed;
- 1002.8mbar is the atmospheric pressure;
- rh:58% represent the relative humidity;
- the last part represent the rainfall in the last hour and in the last 24 hours.
Comparing the common values between the two weather stations, METAR and CWOP, it is noticed that there are not big differences. The most important difference, in case of the atmospheric pressure can be attributed on the altitude difference on which the pressure sensors are placed.
There are two situations where the METAR option is not accurate enough for the simple reason that the place for which are requested the WX conditions is too far from a civil airport. For example, if YO3XYZ is on Timpa Peak, in the city of Brasov and wants to know what are the weather conditions there, will send to WXBOT the text:
YO3XYZ-9 METAR
While the nearest civil airport is in Sibiu (LRSB), the answer will be:
LRSB 211630Z 28019KT 9999 FEW050 10/M02 Q1011 NOSIG
Hoping there is a local CWOP station, YO3XYZ should send instead to WXBOT the text:
YO3XYZ-9 CWOP
This time, the answer will be completely different:
YO6IKB-10 48,wind:315@24 g44,1008.3mbar,rh:56%,rain:1h:0.00in.,24h:0.02in.
Instead of callsign, can be used the Maidenhead coordinates. This option is useful when we don't know an APRS callsign in the desired zone. So, if we know that KN14vh locator covers a part of city of Craiova, we can send to WXBOT the text:
KN14vh METAR
the answer being LRCV 062030Z 29007KT CAVOK 07/01 Q1013
or
KN14vh CWOP
with the possible answer DW3354 49,wind:calm,1013.7mbar,rh:63%,rain:1h:0.00in.,24h:0.20in.
Some WX stations, owned by civil airports, can issue (but is not a rule) predictions regarding some weather parameters. For example, if you are in Bucuresti and send to WXBOT the text:
METAR tonight
or
METAR tomorrow
and you can get the following answer:
LRBS 162100Z 25005KT CAVOK 08/03 Q1011 BECMG 27010KT
You can see that the answer is similar with the one received for an usual request, but, at the end, NOSIG is replaced with BECMG 27010KT, representing a change (BECOMING) of the wind direction and speed, from 250 degrees and 5 knots to 270 degrees and 10 knots.
7. The WXYO Service
WXYO is a weather service similar with WXBOT, provided and managed by YO8SDE, but more efficient, because can query more WX stations in an area, being able to provide more accurate information about weather conditions, in many places of the world.
As was described earlier, the WXBOT service is based, outside the US territory, on METAR and CWOP WX stations, visible on the APRS map. If you are outside far away from an area containing such stations, the information will be not so accurate, coming from too distant WX nodes. If you look on an APRS map, on the south Romanian border, in Giurgiu area, for example (KN32xv), very often you will see only mobile nodes, but no fixed nodes and much less a CWOP or META node (because there are no civil airports nearby). So, the KN23xv sent to METAR, will return the answer
Sorry, unable to get a forecast for location 43.895833/25.958333
If you send to WXBOT the text METAR or CWOP, you can receive one of the following answers:
LRBS 092000Z 05015KT 3000 -RA BR OVC002 00/M00 Q1016 RERA R07/29//95 NOSIG
or
LRBS 092000Z 05015KT 3000 -RA BR OVC002 00/M00 Q1016 RERA R07/29//95 NOSIG
which means that, for KN23xv area, the closest WX stations were those located 60 Km away.
But, if you use the WXYO service to send the KN23xv text, you will obtain information right from a weather station in the area:
Giurgiu in h light rain T:3.83C, W90@6.73, H91,P1016hPa, rain, 0.6mm, clouds 95%
If you are in the area, but you don't know the QTH locator, send to WXYO your callsign, followed by the SSID, prior used to send your geographical position and you will receive a similar answer. Or, replace the callsign with the city name and the county abbreviation, separated by comma For example, for Codlea city, in Brasov county, the command is:
codlea,bv
The WXYO service can provide also forecasts, if the message text contains tomorrow or when (followed by the forecast interval, in hours, multiple of 3). In the first case, the answer will be:
Bucharest in tomorrow moderate rain T:3.09C, W93@7.08, H95, P1014hPa, rain 3.03mm, clouds 95%
In the second case, if is send the text when 6, will be received the answer:
Bucharest in 6h light rain T:6.75C, W98@4.18, H93, P1011hPa, rain 0.48mm, clouds 98%
If you plan a portable activity at Bilea Lake and you need to know how the weather will b in the next day, send to WXYO mesajul KN25ho tomorrow. Raspunsul poate fi:
Cartisoara in tomorrow snow T:0.72C, W150@2.73, H85, P1010hPa, rain 0mm, clouds 87%
A recommendation: use this information keeping in mind that some weather stations do not issue forecasts or the issued forecasts have a low accuracy. An useful check is to find, first, the current conditions for a location, followed by the forecast for the next day or for the next hours. Notice if there differences between answers. If the temperature (displayed with two decimals or air pressure are not changed, it is very likely that the WX station which provide the data is not able to issue forecasts.
More about WXYO commands you can find if you send a message with helptext.
What makes this service more useful is the capability to report weather conditions almost in any place of the world, by mentioning a call sign or a QTH locator. Let's take as example a very isolated place, in North Canada: just send to WXYO the text EO30od and the answer will look like follows:
Lac Seul in h few clouds T:-26.86C, W234@5.37, H71,P1019hPA,rain 0mm,clouds 22%
Credits
<will be filled soon>