not1mm 25.1.1__tar.gz → 25.1.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. {not1mm-25.1.1 → not1mm-25.1.6}/PKG-INFO +2 -1
  2. {not1mm-25.1.1 → not1mm-25.1.6}/README.md +1 -0
  3. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/version.py +1 -1
  4. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_rtty_ru.py +155 -30
  5. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/PKG-INFO +2 -1
  6. {not1mm-25.1.1 → not1mm-25.1.6}/pyproject.toml +1 -1
  7. {not1mm-25.1.1 → not1mm-25.1.6}/LICENSE +0 -0
  8. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/__init__.py +0 -0
  9. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/__main__.py +0 -0
  10. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/bandmap.py +0 -0
  11. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/checkwindow.py +0 -0
  12. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/JetBrainsMono-ExtraLight.ttf +0 -0
  13. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/MASTER.SCP +0 -0
  14. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/about.ui +0 -0
  15. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/alpha bravo charlie delta.txt +0 -0
  16. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/bandmap.ui +0 -0
  17. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/check.png +0 -0
  18. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/checkwindow.ui +0 -0
  19. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/configuration.ui +0 -0
  20. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/contests.sql +0 -0
  21. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/cty.json +0 -0
  22. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/cwmacros.txt +0 -0
  23. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/donors.html +0 -0
  24. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/editcontact.ui +0 -0
  25. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/editmacro.ui +0 -0
  26. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/greendot.png +0 -0
  27. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/k6gte-not1mm.desktop +0 -0
  28. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/k6gte.not1mm-128.png +0 -0
  29. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/k6gte.not1mm-32.png +0 -0
  30. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/k6gte.not1mm-64.png +0 -0
  31. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/logwindow.ui +0 -0
  32. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/logwindowx.ui +0 -0
  33. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/main.ui +0 -0
  34. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/new_contest.ui +0 -0
  35. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/not1mm.html +0 -0
  36. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/opon.ui +0 -0
  37. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/0.wav +0 -0
  38. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/1.wav +0 -0
  39. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/2.wav +0 -0
  40. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/3.wav +0 -0
  41. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/4.wav +0 -0
  42. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/5.wav +0 -0
  43. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/6.wav +0 -0
  44. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/7.wav +0 -0
  45. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/73.wav +0 -0
  46. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/8.wav +0 -0
  47. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/9.wav +0 -0
  48. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/a.wav +0 -0
  49. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/again.wav +0 -0
  50. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/b.wav +0 -0
  51. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/c.wav +0 -0
  52. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/contest.wav +0 -0
  53. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/cq.wav +0 -0
  54. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/cq2.wav +0 -0
  55. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/d.wav +0 -0
  56. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/e.wav +0 -0
  57. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/f.wav +0 -0
  58. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/g.wav +0 -0
  59. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/h.wav +0 -0
  60. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/i.wav +0 -0
  61. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/j.wav +0 -0
  62. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/k.wav +0 -0
  63. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/k6gte.wav +0 -0
  64. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/l.wav +0 -0
  65. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/m.wav +0 -0
  66. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/mynumber.wav +0 -0
  67. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/n.wav +0 -0
  68. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/nil.wav +0 -0
  69. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/o.wav +0 -0
  70. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/p.wav +0 -0
  71. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/q.wav +0 -0
  72. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/r.wav +0 -0
  73. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/roger.wav +0 -0
  74. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/s.wav +0 -0
  75. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/space.wav +0 -0
  76. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/t.wav +0 -0
  77. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/thankyou.wav +0 -0
  78. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/thankyouqrz.wav +0 -0
  79. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/u.wav +0 -0
  80. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/v.wav +0 -0
  81. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/w.wav +0 -0
  82. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/x.wav +0 -0
  83. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/y.wav +0 -0
  84. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/yourcall.wav +0 -0
  85. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/phonetics/z.wav +0 -0
  86. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/pickcontest.ui +0 -0
  87. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/radio_green.png +0 -0
  88. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/radio_grey.png +0 -0
  89. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/radio_red.png +0 -0
  90. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/reddot.png +0 -0
  91. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/rttymacros.txt +0 -0
  92. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/settings.ui +0 -0
  93. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/splash.png +0 -0
  94. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/ssbmacros.txt +0 -0
  95. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/data/vfo.ui +0 -0
  96. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/fsutils.py +0 -0
  97. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/__init__.py +0 -0
  98. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/about.py +0 -0
  99. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/cat_interface.py +0 -0
  100. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/cwinterface.py +0 -0
  101. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/database.py +0 -0
  102. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/edit_contact.py +0 -0
  103. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/edit_macro.py +0 -0
  104. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/edit_opon.py +0 -0
  105. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/edit_station.py +0 -0
  106. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/fldigi_sendstring.py +0 -0
  107. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/ft8_watcher.py +0 -0
  108. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/ham_utility.py +0 -0
  109. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/lookup.py +0 -0
  110. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/multicast.py +0 -0
  111. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/n1mm.py +0 -0
  112. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/new_contest.py +0 -0
  113. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/plugin_common.py +0 -0
  114. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/select_contest.py +0 -0
  115. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/settings.py +0 -0
  116. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/super_check_partial.py +0 -0
  117. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lib/versiontest.py +0 -0
  118. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/logwindow.py +0 -0
  119. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/lookupservice.py +0 -0
  120. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/10_10_fall_cw.py +0 -0
  121. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/10_10_spring_cw.py +0 -0
  122. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/10_10_summer_phone.py +0 -0
  123. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/10_10_winter_phone.py +0 -0
  124. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/__init__.py +0 -0
  125. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_10m.py +0 -0
  126. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_160m.py +0 -0
  127. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_dx_cw.py +0 -0
  128. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_dx_ssb.py +0 -0
  129. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_field_day.py +0 -0
  130. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_ss_cw.py +0 -0
  131. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_ss_phone.py +0 -0
  132. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_vhf_jan.py +0 -0
  133. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_vhf_jun.py +0 -0
  134. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/arrl_vhf_sep.py +0 -0
  135. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/canada_day.py +0 -0
  136. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_160_cw.py +0 -0
  137. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_160_ssb.py +0 -0
  138. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_wpx_cw.py +0 -0
  139. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_wpx_rtty.py +0 -0
  140. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_wpx_ssb.py +0 -0
  141. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_ww_cw.py +0 -0
  142. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_ww_rtty.py +0 -0
  143. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cq_ww_ssb.py +0 -0
  144. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/cwt.py +0 -0
  145. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/darc_xmas.py +0 -0
  146. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/general_logging.py +0 -0
  147. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/helvetia.py +0 -0
  148. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/iaru_fieldday_r1_cw.py +0 -0
  149. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/iaru_fieldday_r1_ssb.py +0 -0
  150. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/iaru_hf.py +0 -0
  151. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/icwc_mst.py +0 -0
  152. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/jidx_cw.py +0 -0
  153. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/jidx_ph.py +0 -0
  154. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/k1usn_sst.py +0 -0
  155. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/lz-dx.py +0 -0
  156. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/naqp_cw.py +0 -0
  157. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/naqp_rtty.py +0 -0
  158. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/naqp_ssb.py +0 -0
  159. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/phone_weekly_test.py +0 -0
  160. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/raem.py +0 -0
  161. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/ref_cw.py +0 -0
  162. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/ref_ssb.py +0 -0
  163. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/stew_perry_topband.py +0 -0
  164. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/weekly_rtty.py +0 -0
  165. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/plugins/winter_field_day.py +0 -0
  166. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/radio.py +0 -0
  167. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/rtc_service.py +0 -0
  168. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/test.py +0 -0
  169. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/vfo.py +0 -0
  170. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm/voice_keying.py +0 -0
  171. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/SOURCES.txt +0 -0
  172. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/dependency_links.txt +0 -0
  173. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/entry_points.txt +0 -0
  174. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/requires.txt +0 -0
  175. {not1mm-25.1.1 → not1mm-25.1.6}/not1mm.egg-info/top_level.txt +0 -0
  176. {not1mm-25.1.1 → not1mm-25.1.6}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: not1mm
3
- Version: 25.1.1
3
+ Version: 25.1.6
4
4
  Summary: NOT1MM Logger
5
5
  Author-email: Michael Bridak <michael.bridak@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/mbridak/not1mm
@@ -240,6 +240,7 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
240
240
 
241
241
  ## Recent Changes (Polishing the Turd)
242
242
 
243
+ - [25-1-6] Altered RTTY RU UDP ADIF parse.
243
244
  - [25-1-1] Added ARRL RTTY RU.
244
245
 
245
246
  See [CHANGELOG.md](CHANGELOG.md) for prior changes.
@@ -209,6 +209,7 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
209
209
 
210
210
  ## Recent Changes (Polishing the Turd)
211
211
 
212
+ - [25-1-6] Altered RTTY RU UDP ADIF parse.
212
213
  - [25-1-1] Added ARRL RTTY RU.
213
214
 
214
215
  See [CHANGELOG.md](CHANGELOG.md) for prior changes.
@@ -1,3 +1,3 @@
1
1
  """It's the version"""
2
2
 
3
- __version__ = "25.1.1"
3
+ __version__ = "25.1.6"
@@ -1,34 +1,32 @@
1
1
  """
2
- Mode: RTTY
3
- Bands: 80, 40, 20, 15, 10m
4
- Classes: Single Op (QRP/Low/High)
5
- Single Op Unlimited (QRP/Low/High)
6
- Single Op Overlay: (Limited Antennas)
7
- Multi-Single (Low/High)
8
- Multi-Two
9
- Multi-Multi
10
- Max operating hours: 24 hours
11
- Max power: HP: 1500 watts
12
- LP: 100 watts
13
- Exchange: W/VE: RST + (state/province)
14
- non-W/VE: RST + Serial No.
15
- Work stations: Once per band
16
- QSO Points: 1 point per QSO
17
- Multipliers: Each US state+DC (except KH6/KL7) once only
18
- Each VE province/territory once only
19
- Each DXCC country (including KH6/KL7) once only
20
- Score Calculation: Total score = total QSO points x total mults
21
- Submit logs by: 2359Z January 12, 2025
22
- E-mail logs to: (none)
23
- Upload log at: https://contest-log-submission.arrl.org/
24
- Mail logs to: RTTY Roundup
25
- ARRL
26
- 225 Main St.
27
- Newington, CT 06111
28
- USA
29
- Find rules at: https://www.arrl.org/rtty-roundup
30
-
31
-
2
+ Mode: RTTY
3
+ Bands: 80, 40, 20, 15, 10m
4
+ Classes: Single Op (QRP/Low/High)
5
+ Single Op Unlimited (QRP/Low/High)
6
+ Single Op Overlay: (Limited Antennas)
7
+ Multi-Single (Low/High)
8
+ Multi-Two
9
+ Multi-Multi
10
+ Max operating hours: 24 hours
11
+ Max power: HP: 1500 watts
12
+ LP: 100 watts
13
+ Exchange: W/VE: RST + (state/province)
14
+ non-W/VE: RST + Serial No.
15
+ Work stations: Once per band
16
+ QSO Points: 1 point per QSO
17
+ Multipliers: Each US state+DC (except KH6/KL7) once only
18
+ Each VE province/territory once only
19
+ Each DXCC country (including KH6/KL7) once only
20
+ Score Calculation: Total score = total QSO points x total mults
21
+ Submit logs by: 2359Z January 12, 2025
22
+ E-mail logs to: (none)
23
+ Upload log at: https://contest-log-submission.arrl.org/
24
+ Mail logs to: RTTY Roundup
25
+ ARRL
26
+ 225 Main St.
27
+ Newington, CT 06111
28
+ USA
29
+ Find rules at: https://www.arrl.org/rtty-roundup
32
30
  """
33
31
 
34
32
  # pylint: disable=invalid-name, unused-argument, unused-variable, c-extension-no-member
@@ -39,6 +37,7 @@ import logging
39
37
  from pathlib import Path
40
38
  from PyQt6 import QtWidgets
41
39
 
40
+ from not1mm.lib.ham_utility import get_logged_band
42
41
  from not1mm.lib.plugin_common import gen_adif, get_points, online_score_xml
43
42
  from not1mm.lib.version import __version__
44
43
 
@@ -541,3 +540,129 @@ def get_mults(self):
541
540
  def just_points(self):
542
541
  """"""
543
542
  return get_points(self)
543
+
544
+
545
+ def set_self(the_outie):
546
+ """..."""
547
+ globals()["ALTEREGO"] = the_outie
548
+
549
+
550
+ def ft8_handler(the_packet: dict):
551
+ print(f"{the_packet=}")
552
+ """Process FT8 QSO packets
553
+ FT8
554
+ {
555
+ 'CALL': 'KE0OG',
556
+ 'GRIDSQUARE': 'DM10AT',
557
+ 'MODE': 'FT8',
558
+ 'RST_SENT': '',
559
+ 'RST_RCVD': '',
560
+ 'QSO_DATE': '20210329',
561
+ 'TIME_ON': '183213',
562
+ 'QSO_DATE_OFF': '20210329',
563
+ 'TIME_OFF': '183213',
564
+ 'BAND': '20M',
565
+ 'FREQ': '14.074754',
566
+ 'STATION_CALLSIGN': 'K6GTE',
567
+ 'MY_GRIDSQUARE': 'DM13AT',
568
+ 'CONTEST_ID': 'ARRL-FIELD-DAY',
569
+ 'SRX_STRING': '1D UT',
570
+ 'CLASS': '1D',
571
+ 'ARRL_SECT': 'UT'
572
+ }
573
+ FlDigi
574
+ {
575
+ 'CALL': 'K5TUS',
576
+ 'MODE': 'RTTY',
577
+ 'FREQ': '14.068415',
578
+ 'BAND': '20M',
579
+ 'QSO_DATE': '20250103',
580
+ 'TIME_ON': '2359',
581
+ 'QSO_DATE_OFF': '20250103',
582
+ 'TIME_OFF': '2359',
583
+ 'NAME': '',
584
+ 'QTH': '',
585
+ 'STATE': 'ORG',
586
+ 'VE_PROV': '',
587
+ 'COUNTRY': 'USA',
588
+ 'RST_SENT': '599',
589
+ 'RST_RCVD': '599',
590
+ 'TX_PWR': '0',
591
+ 'CNTY': '',
592
+ 'DXCC': '',
593
+ 'CQZ': '5',
594
+ 'IOTA': '',
595
+ 'CONT': '',
596
+ 'ITUZ': '',
597
+ 'GRIDSQUARE': '',
598
+ 'QSLRDATE': '',
599
+ 'QSLSDATE': '',
600
+ 'EQSLRDATE': '',
601
+ 'EQSLSDATE': '',
602
+ 'LOTWRDATE': '',
603
+ 'LOTWSDATE': '',
604
+ 'QSL_VIA': '',
605
+ 'NOTES': '',
606
+ 'SRX': '',
607
+ 'STX': '000',
608
+ 'SRX_STRING': '',
609
+ 'STX_STRING': 'CA',
610
+
611
+
612
+ 'SRX': '666',
613
+ 'STX': '000',
614
+ 'SRX_STRING': '',
615
+ 'STX_STRING': 'CA',
616
+
617
+ 'SRX': '004', 'STX': '000', 'SRX_STRING': '', 'STX_STRING': '#',
618
+
619
+ 'CLASS': '',
620
+ 'ARRL_SECT': '',
621
+ 'OPERATOR': 'K6GTE',
622
+ 'STATION_CALLSIGN': 'K6GTE',
623
+ 'MY_GRIDSQUARE': 'DM13AT',
624
+ 'MY_CITY': 'ANAHEIM, CA',
625
+ 'CHECK': '',
626
+ 'AGE': '',
627
+ 'TEN_TEN': '',
628
+ 'CWSS_PREC': '',
629
+ 'CWSS_SECTION': '',
630
+ 'CWSS_SERNO': '',
631
+ 'CWSS_CHK': ''
632
+ }
633
+
634
+ """
635
+ logger.debug(f"{the_packet=}")
636
+ if ALTEREGO is not None:
637
+ ALTEREGO.callsign.setText(the_packet.get("CALL"))
638
+ ALTEREGO.contact["Call"] = the_packet.get("CALL", "")
639
+ ALTEREGO.contact["SNT"] = the_packet.get("RST_SENT", "599")
640
+ ALTEREGO.contact["RCV"] = the_packet.get("RST_RCVD", "599")
641
+
642
+ sent_string = the_packet.get("STX_STRING", "")
643
+ if sent_string != "":
644
+ ALTEREGO.contact["SentNr"] = sent_string
645
+ ALTEREGO.other_1.setText(str(sent_string))
646
+ else:
647
+ ALTEREGO.contact["SentNr"] = the_packet.get("STX", "000")
648
+ ALTEREGO.other_1.setText(str(the_packet.get("STX", "000")))
649
+
650
+ rx_string = the_packet.get("STATE", "")
651
+ if rx_string != "":
652
+ ALTEREGO.contact["NR"] = rx_string
653
+ ALTEREGO.other_2.setText(str(rx_string))
654
+ else:
655
+ ALTEREGO.contact["NR"] = the_packet.get("SRX", "000")
656
+ ALTEREGO.other_2.setText(str(the_packet.get("SRX", "000")))
657
+
658
+ ALTEREGO.contact["Mode"] = the_packet.get("MODE", "ERR")
659
+ ALTEREGO.contact["Freq"] = round(float(the_packet.get("FREQ", "0.0")) * 1000, 2)
660
+ ALTEREGO.contact["QSXFreq"] = round(
661
+ float(the_packet.get("FREQ", "0.0")) * 1000, 2
662
+ )
663
+ ALTEREGO.contact["Band"] = get_logged_band(
664
+ str(int(float(the_packet.get("FREQ", "0.0")) * 1000000))
665
+ )
666
+ logger.debug(f"{ALTEREGO.contact=}")
667
+
668
+ ALTEREGO.save_contact()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: not1mm
3
- Version: 25.1.1
3
+ Version: 25.1.6
4
4
  Summary: NOT1MM Logger
5
5
  Author-email: Michael Bridak <michael.bridak@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/mbridak/not1mm
@@ -240,6 +240,7 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
240
240
 
241
241
  ## Recent Changes (Polishing the Turd)
242
242
 
243
+ - [25-1-6] Altered RTTY RU UDP ADIF parse.
243
244
  - [25-1-1] Added ARRL RTTY RU.
244
245
 
245
246
  See [CHANGELOG.md](CHANGELOG.md) for prior changes.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "not1mm"
7
- version = "25.1.1"
7
+ version = "25.1.6"
8
8
  description = "NOT1MM Logger"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes