- 
                Notifications
    You must be signed in to change notification settings 
- Fork 0
Notifications
QLog can notify a third-party application(s) via UDP messages. Exchanged information include QSO operation (insert/update/delete), DX Cluster Spots, WSJTX Spots etc.
The notification message is sent via UDP packets in JSON format. A basic message structure is shown below
{
   "appid":"QLog",
   "msgtype":"QSO",
   "time":1647197319251,
   "data":{},
   "logid":"{2046e323-b340-4634-8d52-4e70a4231978}"
}
| Field Identifier | Type | Description | 
|---|---|---|
| appid | String | an application ID of the sender. Always "QLog" | 
| msgtype | String | the Message Type. Values: dxspot- the message is sent when QLog receives a new DX Spot from DX ClusterQSO- the message is sent when QSO (Contact) is created/updated/deletedspotalert- the message is sent when an incoming spot matches an user-defined Alert rule(s).toallspot- the message is sent when QLog receives a new TO ALL announcement from DX Clusterwcyspot- the message is sent when QLog receives a new WCY message from DX Clusterwsjtxcqspot- the message is sent when QLog receives a new WSJTX Spot with the CQ messageswwvspot- the message is sent when QLog receives a new WWV message from DX Cluster | 
| time | Number | time when the message was sent from QLog. The field contains a number of milliseconds from 1.1.1970. | 
| data | JSON Object | specific data depends on the Message Type.See chapter below for detailed description of the field structure. | 
| logid | String | UUID of the log database. The Unique number for the log file | 
Message Type : "QSO" Description: QSO Notification message is sent in following cases:
- when a new QSO is inserted to the log
- when QSO is updated by the operator
- when QSO is deleted by the operator
Destination IP Address: Settings → Network → QSO Changes
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| operation | String | QSO operation description. The following operations are emitted: insert- when a new QSO is inserted to the logupdate- when QSO is updated by the operatordelete- when QSO is deleted by the operator | 
| rowid | Number | a unique ID of the record in the log file | 
| type | String | the type of the "value" field.  Currently, only adiftype is supported. | 
| value | String | a contact record in the format defined by "type" format. if operator = insertthen  the field contains a new recordif operation = updatethen the field contains an updated record.if operation = deletethen the field contains an old(deleted) record.If a contact record is updated and multiple contact fields are updated then QLog generates 1 Notification message to 1 updated contact field. It means that if an operator updates 2 contact's fields (or 1 field on which another field depends) then 2 Notifications messages are generated | 
An example:
{
   "appid":"QLog",
   "data":{
      "operation":"insert",
      "rowid":355,
      "type":"adif",
      "value":"<call:7>OK1TEST<qso_date:8:D>20220320<time_on:6:T>183536<qso_date_off:8:D>20220320<time_off:6:T>183557<rst_rcvd:3>599<rst_sent:3>599<name:12>Testing Name<qth:6>Prague<gridsquare:6>JO70GB<cqz:2>15<ituz:2>28<freq:8:N>10.12649<band:3>30m<mode:2>CW<cont:2>EU<dxcc:3>503<country:14>Czech Republic<qsl_rcvd:1>N<qsl_sent:1>N<lotw_qsl_rcvd:1>N<lotw_qsl_sent:1>N<a_index:1>5<band_rx:3>30m<distance:17>9.266243887046823<eqsl_qsl_rcvd:1>N<eqsl_qsl_sent:1>N<freq_rx:8>10.12649<hrdlog_qso_upload_status:1>N<k_index:4>1.33<my_city:5>PRAHA<my_gridsquare:6>JO70GD<my_rig:9>moje_nove<operator:5>LADAS<sfi:2>94<station_callsign:6>OK1MLG<eor>"
   },
   "logid":"{2046e323-b340-4634-8d52-4e70a4231978}",
   "msgtype":"qso",
   "time":1647801358067
}
Message Type :"dxspot" Description: DX Spot Notification message is sent when QLog is connected to DX Cluster and DX Spot is received from the server. Log resends all received messages - user filter has no impact on the notification messages.
Destination IP Address: Settings → Network → DX Spots
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| band | String | Spot Band | 
| comment | String | The comment from the spot | 
| dx | JSON Object | JSON object contains details about the reported DX. Details below. | 
| freq | Number | The post frequency | 
| mode | String | The spot modes Values: PHONEDIGICWFT8 | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
| spotter | JSON Object | JSON object contains details about the spotter. Details below | 
| status | String | DX Spot status based on the record in the log. Following statuses can be emitted: newentity- totally new DXCC in the lognewbandmode- DXCC worked but a totally new band and totally new mode.newband- DXCC worked with particular mode but a new bandnewmode- DXCC worked on the band but a new mode in the lognewslot- DXCC worked on the band but a new mode not the bandworked- already workedconfirmed- confirmed by paper QSL or LoTWunknown- an internal query error | 
DX/Spotter Fields Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| call | String | the DX/Spotter callsign | 
| cont | String | the DX/Spotter continent | 
| country | String | the DX/Spotter country | 
| cqz | Number | the DX/Spotter CQ Zone | 
| dxcc | Number | the DX/Spotter DXCC Entity number | 
| ituz | Number | the DX/Spotter ITU Zone | 
| member | JSON Array | JSON Array contains the names of club DX is a member of. (Only for DX Field) | 
| pfx | String | the DX/Spotter prefix | 
| utcoffset | Number | the DX/Spotter Timezone (UTC offset) | 
An example:
{
    "appid": "QLog",
    "data": {
        "band": "40m",
        "comment": "tnx qso",
        "dx": {
            "call": "YB0AR",
            "cont": "OC",
            "country": "Indonesia",
            "cqz": 28,
            "dxcc": 327,
            "ituz": 54,
            "member": ["LoTW", "eQSLAG"]
            "pfx": "YB",
            "utcoffset": -7
        },
        "freq": "7.1880",
        "mode": "PHONE",
        "rcvtime": "20220316 20:04:30",
        "spotter": {
            "call": "G0DEF",
            "cont": "EU",
            "country": "England",
            "cqz": 14,
            "dxcc": 223,
            "ituz": 27,
            "pfx": "G",
            "utcoffset": 0
        },
        "status": "newentity"
    },
    "logid":"{2046e323-b340-4634-8d52-4e70a4231978}",
    "msgtype": "dxspot",
    "time": 1647461070837
}
Message Type :"spotalert" Description: Spot Alert Notification message is sent when incoming spot (WSJTX or DXC) matches user-defined Alert rules.
Destination IP Address: Settings → Network → Spots Alert
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| band | String | Spot Band | 
| comment | String | The comment from the spot | 
| dx | JSON Object | JSON object contains details about the reported DX. Details below. | 
| freq | Number | The post frequency | 
| mode | String | The spot modes Values: PHONEDIGICWFT8 | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
| rules | JSON Array | JSON Array contains the names of all the rules for which the match was evaluated. | 
| spotter | JSON Object | JSON object contains details about the spotter. Details below. In case of of spots from WSJTXsource, the field contains information about your own station. | 
| status | String | DX Spot status based on the record in the log. Following statuses can be emitted: newentity- totally new DXCC in the lognewbandmode- DXCC worked but a totally new band and totally new mode.newband- DXCC worked with particular mode but a new bandnewmode- DXCC worked on the band but a new mode in the lognewslot- DXCC worked on the band but a new mode not the bandworked- already workedconfirmed- confirmed by paper QSL or LoTWunknown- an internal query error | 
DX/Spotter Fields Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| call | String | the DX/Spotter callsign | 
| cont | String | the DX/Spotter continent | 
| country | String | the DX/Spotter country | 
| cqz | Number | the DX/Spotter CQ Zone | 
| dxcc | Number | the DX/Spotter DXCC Entity number | 
| ituz | Number | the DX/Spotter ITU Zone | 
| member | JSON Array | JSON Array contains the names of club DX is a member of. (Only for DX Field) | 
| pfx | String | the DX/Spotter prefix | 
| utcoffset | Number | the DX/Spotter Timezone (UTC offset) | 
An example:
{
   "appid":"QLog",
   "data":{
      "band":"17m",
      "comment":"CW     7 dB  25 WPM  CQ     ",
      "dx":{
         "call":"ZL3CW",
         "cont":"OC",
         "country":"New Zealand",
         "cqz":32,
         "dxcc":170,
         "ituz":60,
         "member": ["LOTW", "eQSLAG"]
         "pfx":"ZL",
         "utcoffset":-12
      },
      "freq":18.073,
      "mode":"CW",
      "rcvtime":"20220510 08:42:34",
      "rules":[
         "rule1",
         "rule2"
      ],
      "spotter":{
         "call":"SM6FMB",
         "cont":"EU",
         "country":"Sweden",
         "cqz":14,
         "dxcc":284,
         "ituz":18,
         "pfx":"SM",
         "utcoffset":-1
      },
      "status":"newentity"
   },
   "logid":"{2046e323-b340-4634-8d52-4e70a4231978}",
   "msgtype":"spotalert",
   "time":1652172154472
}
Message Type : "wsjtxcqspot" Description: WSJTX CQ Spot Notification message is sent when QLog receives the CQ Spot from WSJT-X application. QLog sends only CQ Spot, the rest of WSJT-X information are not resent. Please, use WSJTX Forward option to obtain a full set of raw WSJTX messages.
Destination IP Address: Settings → Network → WSJTX CQ Spots
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| band | String | Spot Band | 
| comment | String | The comment from the spot | 
| dx | JSON Object | JSON object contains details about the reported DX. Details below. | 
| freq | Number | The post frequency | 
| mode | String | Mode string from WSJTX | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
| status | String | DX Spot status based on the record in the log. Following statuses can be emitted: newentity- totally new DXCC in the lognewbandmode- DXCC worked but a totally new band and totally new mode.newband- DXCC worked with particular mode but a new bandnewmode- DXCC worked on the band but a new mode in the lognewslot- DXCC worked on the band but a new mode not the bandworked- already workedconfirmed- confirmed by paper QSL or LoTWunknown- an internal query error | 
"dx" Fields Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| call | String | the DX callsign | 
| cont | String | the DX continent | 
| country | String | the DX country | 
| cqz | Number | the DX CQ Zone | 
| dxcc | Number | the DX DXCC Entity number | 
| ituz | Number | the DX ITU Zone | 
| member | JSON Array | JSON Array contains the names of club DX is a member of. (Only for DX Field) | 
| pfx | String | the DX prefix | 
| utcoffset | Number | the DX Timezone (UTC offset) | 
An example:
{
   "appid":"QLog",
   "data":{
      "band":"80m",
      "comment":"CQ OK1MLG JO70",
      "dx":{
         "call":"OK1MLG",
         "cont":"EU",
         "country":"Europe",
         "cqz":15,
         "dxcc":503,
         "grid":"JO70",
         "ituz":28,
         "member":["LOTW", "eQSLAG"]
         "pfx":"OK",
         "utcoffset":-2
      },
      "freq":"3.5730",
      "mode":"FT8",
      "rcvtime":"20220318 17:04:29",
      "status":"newband"
   },
   "logid":"{2046e323-b340-4634-8d52-4e70a4231978}",
   "msgtype":"wsjtxcqspot",
   "time":1647623069705
}
Message Type : "wcyspot" Description: WCY Spot Notification message is sent when QLog receives the WCY Spot from currently connected DX Cluster.
Destination IP Address: Settings → Network → DX Spots
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| A | Number | A Index | 
| Au | String | Aurora Status ( no,aurora,strong) | 
| GMF | String | Geomagnetic Field qui- quietact- activemin- minor stormmaj- major stormsev- severe stormmag- magstorm in progresswar- warning conditionsnil- no info available | 
| K | Number | K Index | 
| R | Number | Sunspot Number | 
| SA | String | San Activity qui- quieteru- eruptiveact- activemaj- major flarepro- proton flarewar- warning conditionsnil- no info available | 
| SFI | Number | Solar Flux Index | 
| expK | Number | expected K Index for next hour | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
An example:
{
   "appid":"QLog",
   "data":{
      "A":13,
      "Au":"no",
      "GMF":"act",
      "K":3,
      "R":0,
      "SA":"qui",
      "SFI":68,
      "expK":3,
      "rcvtime":"20220923 11:29:16"
   },
   "logid":"{c804ab21-c1bf-4b7f-90a6-8927bdb10dd0}",
   "msgtype":"wcyspot",
   "time":1663932556260
}
Message Type : "wwvspot" Description: WWV Spot Notification message is sent when QLog receives the WWV Spot from currently connected DX Cluster.
Destination IP Address: Settings → Network → DX Spots
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| A | Number | A Index | 
| Info1 | String | Information 1 | 
| Info2 | String | Information 2 | 
| K | Number | K Index | 
| SFI | Number | Solar Flux Index | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
An example:
{
   "appid":"QLog",
   "data":{
      "A":12,
      "Info1":"No Storms",
      "Info2":"No Storms",
      "K":2,
      "SFI":68,
      "rcvtime":"20220923 11:29:16"
   },
   "logid":"{c804ab21-c1bf-4b7f-90a6-8927bdb10dd0}",
   "msgtype":"wwvspot",
   "time":1663932556294
}
Message Type : "wwvspot" Description: To ALL Spot Notification message is sent when QLog receives to ALL announcement from currently connected DX Cluster.
Destination IP Address: Settings → Network → DX Spots
"Data" Field Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| message | QString | annoncement | 
| rcvtime | String | time when spot was received in format YYYYMMDD HH:MI:SS(in UTC) | 
| spotter | JSON Object | JSON object contains details about the spotter. Details below. In case of of spots from WSJTXsource, the field contains information about your own station. | 
Spotter Fields Structure:
| Field Identifier | Type | Description | 
|---|---|---|
| call | String | the DX/Spotter callsign | 
| cont | String | the DX/Spotter continent | 
| country | String | the DX/Spotter country | 
| cqz | Number | the DX/Spotter CQ Zone | 
| dxcc | Number | the DX/Spotter DXCC Entity number | 
| ituz | Number | the DX/Spotter ITU Zone | 
| pfx | String | the DX/Spotter prefix | 
| utcoffset | Number | the DX/Spotter Timezone (UTC offset) | 
An example:
{
   "appid":"QLog",
   "data":{
      "message":"GB7RDX New Users Welcome. cluster.g3ldi.co.uk Port 7000",
      "rcvtime":"20220923 11:29:16",
      "spotter":{
         "call":"G3LDI",
         "cont":"EU",
         "country":"England",
         "cqz":14,
         "dxcc":223,
         "ituz":27,
         "pfx":"G",
         "utcoffset":0
      }
   },
   "logid":"{c804ab21-c1bf-4b7f-90a6-8927bdb10dd0}",
   "msgtype":"toallspot",
   "time":1663932556327
}