This a mirror of WSJT-X and will be updated every 6 hours. PR will be ignored, head to the SF link. Repo will be updated at 06:00:00 UTC 12:00:00 UTC 18:00:00 UTC 00:00:00 UTC Now fixed.
Go to file
Bill Somerville 3f75b4144a Send status information to UDP server
To  facilitate interaction  with other  applications WSJT-X  now sends
status  updates  to  a  predefined   UDP  server  or  multicast  group
address. The  status updates include the  information currently posted
to  the  decodes.txt and  wsjtx_status.txt  files.   An optional  back
communications  channel is  also implemented  allowing the  UDP server
application to control some basic actions in WSJT-X.

A reference implementaion of a typical UDP server written in C++ using
Qt is  provided to demonstrate  these facilities. This  application is
not intended  as a user  tool but  only as an  example of how  a third
party application may interact with WSJT-X.

The  UDP messages  Use QDataStream  based serialization.  Messages are
documented in  NetworkMessage.hpp along with some  helper classes that
simplify the building and decoding of messages.

Two  message  handling  classes   are  introduced,  MessageClient  and
MessageServer.  WSJT-X uses the MessageClient class to manage outgoing
and  incoming  UDP  messages   that  allow  communication  with  other
applications.   The MessageServer  class implements  the kind  of code
that a  potential cooperating  application might use.   Although these
classes  use  Qt serialization  facilities,  the  message formats  are
easily  read and  written  by  applications that  do  not  use the  Qt
framework.

MessageAggregator   is   a   demonstration   application   that   uses
MessageServer and  presents a GUI  that displays messages from  one or
more  WSJT-X instances  and  allows sending  back a  CQ  or QRZ  reply
invocation  by double  clicking  a decode.   This  application is  not
intended as  a user facing tool  but rather as a  demonstration of the
WSJT-X UDP messaging facility. It  also demonstrates being a multicast
UDP server by allowing multiple instances to run concurrently. This is
enabled by using an appropriate  multicast group address as the server
address.  Cooperating   applications  need  not   implement  multicast
techniques but  it is recomended  otherwise only a  single appliaction
can act as a broadcast message (from WSJT-X) recipient.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5225 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-04-15 16:40:49 +00:00
CMake Abandon getting changeset revision number from svn keyword expansion 2015-02-22 00:20:42 +00:00
Darwin wsjtx: Update Mac ReadMe for 1.5 2015-03-14 16:21:02 +00:00
Palettes Corrected name of ZL1FZ.pal palette. 2014-10-24 13:33:27 +00:00
artwork Use the generic icons in the Mac OS X generic iconset 2014-11-23 13:47:50 +00:00
contrib Remove usage of otool and install_name_tool from Mac KVASD installer 2015-01-26 12:12:35 +00:00
debian Get local user manual working on Linux systems. 2014-09-25 14:45:36 +00:00
icons Use the generic icons in the Mac OS X generic iconset 2014-11-23 13:47:50 +00:00
lib Update jt9sim with a standard *.wav header. 2015-03-21 00:34:21 +00:00
logbook Remove the Xlog interface patch: its blocking socket call could block the UI. 2014-12-16 13:57:11 +00:00
manpages Prep for v1.4.0-rc4 2015-03-04 13:21:41 +00:00
qmake_only Fix qmake file so that qmake builds still operate for those who prefer 2014-03-31 03:11:07 +00:00
samples More complete CMake install target including sample WAV files from 2013-08-16 00:24:32 +00:00
AUTHORS Top level docs 2014-11-28 23:34:23 +00:00
AudioDevice.cpp Rearranged sequencing of audio streams and devices. 2014-04-03 19:29:13 +00:00
AudioDevice.hpp Replaced Detector monitoring switch with audio stream suspend/resume. 2014-04-07 00:55:05 +00:00
BUGS Top level docs 2014-11-28 23:34:23 +00:00
Bands.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
Bands.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
CMakeCPackOptions.cmake.in Swap out NSIS crypto plugin for one that works better 2014-12-08 10:39:09 +00:00
CMakeLists.txt Send status information to UDP server 2015-04-15 16:40:49 +00:00
COPYING Top level docs 2014-11-28 23:34:23 +00:00
CandidateKeyFilter.cpp Ensure all model proxy caches are flushed before access 2015-04-06 01:57:47 +00:00
CandidateKeyFilter.hpp Ensure all model proxy caches are flushed before access 2015-04-06 01:57:47 +00:00
Configuration.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
Configuration.hpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
Configuration.ui Send status information to UDP server 2015-04-15 16:40:49 +00:00
DXLabSuiteCommanderTransceiver.cpp Accommodate new mode mnemonics from DX Labs with FlexRadio SDRs 2015-01-11 16:18:37 +00:00
DXLabSuiteCommanderTransceiver.hpp Set split mode before and after setting Tx frequency 2014-12-06 20:23:29 +00:00
Detector.cpp Replaced Detector monitoring switch with audio stream suspend/resume. 2014-04-07 00:55:05 +00:00
Detector.hpp Replaced Detector monitoring switch with audio stream suspend/resume. 2014-04-07 00:55:05 +00:00
EmulateSplitTransceiver.cpp Rig polling not detecting changes against cached values correctly 2015-01-08 23:51:56 +00:00
EmulateSplitTransceiver.hpp Set split mode before and after setting Tx frequency 2014-12-06 20:23:29 +00:00
ForeignKeyDelegate.cpp Ensure all model proxy caches are flushed before access 2015-04-06 01:57:47 +00:00
ForeignKeyDelegate.hpp Ensure all model proxy caches are flushed before access 2015-04-06 01:57:47 +00:00
FrequencyItemDelegate.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
FrequencyItemDelegate.hpp Add validation to message entry fields. 2014-09-25 11:36:01 +00:00
FrequencyLineEdit.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
FrequencyLineEdit.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
FrequencyList.cpp Fix another issue with station details not being saved 2015-04-06 13:25:51 +00:00
FrequencyList.hpp Fix another issue with station details not being saved 2015-04-06 13:25:51 +00:00
GetUserId.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
GetUserId.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
HRDTransceiver.cpp Allow for HRD to fragment command replies 2015-04-02 10:28:10 +00:00
HRDTransceiver.hpp Allow for HRD to fragment command replies 2015-04-02 10:28:10 +00:00
HamlibTransceiver.cpp Improved DTR and RTS line control 2015-04-14 10:54:14 +00:00
HamlibTransceiver.hpp Improved DTR and RTS line control 2015-04-14 10:54:14 +00:00
INSTALL Update INSTALL file with new Qt dependency 2015-02-19 13:02:19 +00:00
LiveFrequencyValidator.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
LiveFrequencyValidator.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
MessageAggregator.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
MessageClient.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
MessageClient.hpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
MessageServer.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
MessageServer.hpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
Modulator.cpp Add facility to disallow CAT commands while transmitting. 2014-09-24 17:25:19 +00:00
Modulator.hpp Add facility to disallow CAT commands while transmitting. 2014-09-24 17:25:19 +00:00
NEWS Top level docs 2014-11-28 23:34:23 +00:00
NetworkMessage.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
NetworkMessage.hpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
NetworkServerLookup.cpp Trim spaces from network server query 2014-10-04 01:13:26 +00:00
NetworkServerLookup.hpp Trim spaces from network server query 2014-10-04 01:13:26 +00:00
OmniRigTransceiver.cpp Set split mode before and after setting Tx frequency 2014-12-06 20:23:29 +00:00
OmniRigTransceiver.hpp Set split mode before and after setting Tx frequency 2014-12-06 20:23:29 +00:00
PollingTransceiver.cpp Rig polling not detecting changes against cached values correctly 2015-01-08 23:51:56 +00:00
PollingTransceiver.hpp Rig polling not detecting changes against cached values correctly 2015-01-08 23:51:56 +00:00
README Top level docs 2014-11-28 23:34:23 +00:00
Radio.cpp Improved automatic message handling 2015-03-14 19:13:18 +00:00
Radio.hpp Improved automatic message handling 2015-03-14 19:13:18 +00:00
SettingsGroup.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
StationList.cpp Fix font setting 2015-04-07 12:08:55 +00:00
StationList.hpp Fix another issue with station details not being saved 2015-04-06 13:25:51 +00:00
THANKS Top level docs 2014-11-28 23:34:23 +00:00
TraceFile.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
TraceFile.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
Transceiver.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
Transceiver.hpp Set split mode before and after setting Tx frequency 2014-12-06 20:23:29 +00:00
TransceiverBase.cpp Rig polling not detecting changes against cached values correctly 2015-01-08 23:51:56 +00:00
TransceiverBase.hpp Rig polling not detecting changes against cached values correctly 2015-01-08 23:51:56 +00:00
TransceiverFactory.cpp Improved DTR and RTS line control 2015-04-14 10:54:14 +00:00
TransceiverFactory.hpp Improved DTR and RTS line control 2015-04-14 10:54:14 +00:00
Versions.cmake Prep for v1.4.0-rc4 2015-03-04 13:21:41 +00:00
WFPalette.cpp Added device error message to file open error messages 2015-01-06 19:00:46 +00:00
WFPalette.hpp Add user defined waterfall palette. 2014-03-31 00:03:44 +00:00
about.cpp Correct the date in Copyright notice. 2015-03-06 16:14:05 +00:00
about.h Clean up program identification to pskreporter and other places 2015-02-23 15:19:41 +00:00
about.ui Uniform appearance of window titles. 2014-03-30 01:31:40 +00:00
astro.cpp Fix font setting 2015-04-07 12:08:55 +00:00
astro.h Take advantage of the new KVASD v1.12 2014-12-03 00:06:54 +00:00
astro.ui Fix font setting 2015-04-07 12:08:55 +00:00
commons.h Merge changes from branches/wsjtx_w back into branches/wsjtx. 2014-03-05 18:20:40 +00:00
cty.dat Another round of documentation updates. 2014-01-29 20:50:18 +00:00
decodedtext.cpp Fix latent error with uninitialize variable 2015-03-14 22:19:22 +00:00
decodedtext.h Better handling of compound callsigns 2015-03-04 12:22:33 +00:00
displaytext.cpp Band activity & Rx frequency widget enhancements 2015-04-10 20:25:14 +00:00
displaytext.h Band activity & Rx frequency widget enhancements 2015-04-10 20:25:14 +00:00
getfile.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
getfile.h Rearranged sequencing of audio streams and devices. 2014-04-03 19:29:13 +00:00
jt9.txt Tweaks to jt9.txt 2012-10-21 19:24:54 +00:00
killbyname.cpp Added audio channel support. 2013-08-10 15:29:55 +00:00
logqso.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
logqso.h Send status information to UDP server 2015-04-15 16:40:49 +00:00
logqso.ui Uniform appearance of window titles. 2014-03-30 01:31:40 +00:00
main.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
mainwindow.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
mainwindow.h Send status information to UDP server 2015-04-15 16:40:49 +00:00
mainwindow.ui Improved next and current Tx message widget short cuts 2015-02-27 13:34:18 +00:00
meterwidget.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
meterwidget.h Rearranged sequencing of audio streams and devices. 2014-04-03 19:29:13 +00:00
mouse_commands.txt Update text for mouse commands and keyboard shortcuts. 2014-09-09 14:46:48 +00:00
pimpl_h.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
pimpl_impl.hpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
plotter.cpp Improved, simplified sort routine; faster and better "flatten" 2015-02-11 00:50:35 +00:00
plotter.h Improved, simplified sort routine; faster and better "flatten" 2015-02-11 00:50:35 +00:00
prefixes.txt Another round of documentation updates. 2014-01-29 20:50:18 +00:00
psk_reporter.cpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
psk_reporter.h Send status information to UDP server 2015-04-15 16:40:49 +00:00
qt_helpers.cpp Fix font setting 2015-04-07 12:08:55 +00:00
qt_helpers.hpp Send status information to UDP server 2015-04-15 16:40:49 +00:00
revision_utils.cpp Clean up program identification to pskreporter and other places 2015-02-23 15:19:41 +00:00
revision_utils.hpp Abandon getting changeset revision number from svn keyword expansion 2015-02-22 00:20:42 +00:00
shortcuts.txt Improved next and current Tx message widget short cuts 2015-02-27 13:34:18 +00:00
signalmeter.cpp Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
signalmeter.h Squashed some compiler warnings. 2014-04-03 19:44:34 +00:00
sleep.h Rearranged sequencing of audio streams and devices. 2014-04-03 19:29:13 +00:00
soundin.cpp Replaced Detector monitoring switch with audio stream suspend/resume. 2014-04-07 00:55:05 +00:00
soundin.h Replaced Detector monitoring switch with audio stream suspend/resume. 2014-04-07 00:55:05 +00:00
soundout.cpp Made the soft keying CW wave shaper a CMake option (off by 2014-04-06 21:58:11 +00:00
soundout.h Made the soft keying CW wave shaper a CMake option (off by 2014-04-06 21:58:11 +00:00
ss.bat New Makefile.jtsdk allows easy building of jt9.exe from command line. 2014-03-28 18:54:11 +00:00
sss.bat Major changes to the MAP65 branch. This branch is now a copy of 2012-05-22 14:28:39 +00:00
wf_palette_design_dialog.ui Updated palette designer tool tip. 2014-04-08 16:59:00 +00:00
widegraph.cpp Improved, simplified sort routine; faster and better "flatten" 2015-02-11 00:50:35 +00:00
widegraph.h Add facility to disallow CAT commands while transmitting. 2014-09-24 17:25:19 +00:00
widegraph.ui Minor GUI tweaks. 2015-02-11 18:20:07 +00:00
wsjtx.desktop Several improvements related to packaging on Linux. 2014-04-20 02:39:48 +00:00
wsjtx.iss Merge changes from branches/wsjtx_w back into branches/wsjtx. 2014-03-05 18:20:40 +00:00
wsjtx.pro Correct cut/paste error 2014-10-21 14:04:37 +00:00
wsjtx.qrc.in Tidy up resource generation with a CMake function 2015-03-27 13:42:10 +00:00
wsjtx.rc Added support for use of "Standard" locations for writable files. 2014-03-26 13:21:00 +00:00
wsjtx_changelog.txt 1. Fix occasional program crash caused by receiving a message in the 2013-06-05 18:42:55 +00:00
wsjtx_config.h.in Take advantage of the new KVASD v1.12 2014-12-03 00:06:54 +00:00
wsjtx_opti.iss 1. New startup default frequencies for 40, 30, and 6m. 2013-07-11 19:37:01 +00:00
wsjtx_update.iss 1. Correct bug that prevented save/restore of Wide Graph geometry. 2013-08-09 17:22:08 +00:00

README

 __       __   ______      _____  ________      __    __ 
|  \  _  |  \ /      \    |     \|        \    |  \  |  \
| $$ / \ | $$|  $$$$$$\    \$$$$$ \$$$$$$$$    | $$  | $$
| $$/  $\| $$| $$___\$$      | $$   | $$ ______ \$$\/  $$
| $$  $$$\ $$ \$$    \  __   | $$   | $$|      \ >$$  $$ 
| $$ $$\$$\$$ _\$$$$$$\|  \  | $$   | $$ \$$$$$$/  $$$$\ 
| $$$$  \$$$$|  \__| $$| $$__| $$   | $$       |  $$ \$$\
| $$$    \$$$ \$$    $$ \$$    $$   | $$       | $$  | $$
 \$$      \$$  \$$$$$$   \$$$$$$     \$$        \$$   \$$
                                                         
                                                         
                                                         
Copyright (C) 2001 - 2014 by Joe Taylor, K1JT.

WSJT-X implements JT9, a new mode  designed especially for the LF, MF,
and  HF bands,  as well  as  the popular  mode JT65.  Both modes  were
designed for making reliable, confirmed QSOs under extreme weak-signal
conditions.  They  use nearly  identical message structure  and source
encoding.  JT65 was  designed for  EME (“moonbounce”)  on the  VHF/UHF
bands  and   has  also  proved   very  effective  for   worldwide  QRP
communication at  HF; in contrast, JT9  is optimized for HF  and lower
frequencies. JT9 is  about 2 dB more sensitive than  JT65A while using
less  than 10%  of the  bandwidth. World-wide  QSOs are  possible with
power levels of a few watts and  compromise antennas. A 2 kHz slice of
spectrum is  essentially full when  occupied by ten JT65  signals.  As
many as 100 JT9 signals can fit into the same space, without overlap.

WSJT-X offers a “bi-lingual” operating  mode in which you can transmit
and   receive  JT65   and   JT9  signals,   switching  between   modes
automatically as  needed.  Displayed  bandwidth can be  as large  as 5
kHz. If  your receiver  has as  upper-sideband filter  at least  4 kHz
wide, you can have all the typical  JT65 and JT9 activity on screen at
once, available for  making QSOs with a click of  the mouse. Even with
standard SSB-width IF filters, switching between JT65 and JT9 modes is
quick and convenient. Be sure to read the online WSJT-X User's Guide.

Project web site:

http://www.physics.princeton.edu/pulsar/K1JT/wsjtx.html

Project mailing  list (shared  with other  applications from  the same
team):

https://groups.yahoo.com/neo/groups/wsjtgroup