題:
如何以編程方式區分歐洲和非歐洲呼號?
Pedja YT9TP
2017-10-03 19:08:23 UTC
view on stackexchange narkive permalink

有任何業餘無線電日誌處理應用程序開發人員嗎?

我正在創建Web應用程序來管理俱樂部獎,因此我需要通過呼叫符號以編程方式區分歐洲站和非歐洲站。

我找不到可行的解決方案,因此任何提示都是有價值的。

我使用PHP,但我想其他平台經驗也可能會有所幫助。

既然您說“任何其他平台…可能對您有所幫助”:如果始終調用(甚至只是使用)外部工具,請務必記住對您的輸入進行清理。您不希望有人假冒呼號“ AA”; rm -rf /; 12ER`,因為您執行的操作類似於“ system(“ identify_callsign_executable $ UNSANITIZED_CALLSIGN_OFF_AIR”)”。
三 答案:
Mike Waters
2017-10-03 20:45:39 UTC
view on stackexchange narkive permalink

Jim Reisert AD1C定期發布各種可下載的國家/地區文件,其中包含帶有相關國家,大洲等的最新呼號前綴列表。這些文件旨在供ham軟件。

這是2016 cty.dat文件中的三行。 注意第四列如何表示大陸(SA, EU ,AF)。

 圭亞那:09:12:SA:6.02: 59.45:4.0:8R:8R;克羅地亞:15:28:歐盟:45.18:-15.30:-1.0:9A:9A;加納:35:46:AF:7.70:1.57:0.0:9G:9G;  

您可以下載 TLF的源代碼,並查看tlf如何讀取和處理它。當我使用TLF時,我依賴Jim的cty.dat文件。TLF是Linux的競賽記錄和重複檢查程序。

這是Jim的最新國家/地區文件

Glenn W9IQ
2017-10-03 19:36:04 UTC
view on stackexchange narkive permalink

國際電聯是負責向每個國家分配呼號前綴的國際機構。您可以查閱此分配表,以便在程序中構建必要的邏輯以確定所涉及的呼叫符號是否滿足您的獎勵要求。 http://www.arrl.org/international-call-sign-series

這是該表的一個片段:

enter image description here

或者,您可以訂閱QRZ.COM呼叫符號查找服務。數據通過XML交換,因此您可以通過相應的XML標籤解析國家/地區。但是,如果有問題的呼號不在他們的數據庫中或者條目中包含錯誤,這可能不是萬無一失的方法。

K7PEH
2017-10-04 08:00:36 UTC
view on stackexchange narkive permalink

我幾年前就這樣做了,我只是看我是否能找到代碼,我必須讓它腐爛(熵佔據了這些位並將它們變成有序的象棋開孔)。

但是,我的方法並不是萬無一失的,因為每個人都知道基本規則有例外。例如,我遇到了俄羅斯或芬蘭的一個特殊事件台(不記得是哪個),但由於呼號測試太長(大約10個字符)而未能通過我的呼號測試。我仔細檢查了大概8個字符的長度。我已修正我的健全性檢查。

我的方法很簡單:

  1. 即使有一些注意事項(例如KG4前綴),美國電話也很容易而不是南部州(如果我沒記錯的話,那是幾年前的事了。)
  2. 我下載了官方國家/地區或DX-Entity呼叫符號前綴的ARRL列表,並將其轉換為我的呼叫符號查找所使用的數據庫
  3. 我的程序(由於我是美國居民)始終總是首先檢查美國呼號,但作為作弊,我還在快速查找表(所有內存駐留)中擁有了美國呼號數據庫。
  4. 然後,我會在ARRL DX實體列表上進行RE前綴檢查,通常會創建一個與ID匹配的國家或實體名稱(並非所有條目都是國家)。
  5. 如果我錯過了在程序上,我在日誌中記下了它,以後再檢查一下以了解原因。通常,這是一個很奇怪的情況,可能是通過特殊事件站呼號來敲響。
  6. ol>

    為在首次運行程序時對其程序進行測試,我下載了整個QRZ.com數據庫(擁有下載權限的訂戶),我針對QRZ數據庫中的每個呼叫符號測試了程序,以驗證我們具有相同的DX實體名稱。我實際上在QRZ數據庫中發現了一些錯誤。

    我用C ++編寫了該程序,該程序在Mac計算機上運行,並且大約在2005年我開始使用MacLoggerDX應用程序時就停止使用它了。它自己的呼號處理程序。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...