feat: upload to external services clublog qrz

This commit is contained in:
2026-05-28 22:52:50 +02:00
parent e82e30dd02
commit 5c004f5e2f
26 changed files with 1710 additions and 31 deletions
+9
View File
@@ -6,6 +6,7 @@ import {profile} from '../models';
import {adif} from '../models';
import {cat} from '../models';
import {cluster} from '../models';
import {extsvc} from '../models';
import {operating} from '../models';
import {udp} from '../models';
import {lookup} from '../models';
@@ -62,6 +63,8 @@ export function GetClusterStatus():Promise<Array<cluster.ServerStatus>>;
export function GetCtyDatInfo():Promise<main.CtyDatInfo>;
export function GetExternalServices():Promise<extsvc.ExternalServices>;
export function GetListsSettings():Promise<main.ListsSettings>;
export function GetLogFilePath():Promise<string>;
@@ -122,6 +125,8 @@ export function SaveCATSettings(arg1:main.CATSettings):Promise<void>;
export function SaveClusterServer(arg1:cluster.ServerConfig):Promise<cluster.ServerConfig>;
export function SaveExternalServices(arg1:extsvc.ExternalServices):Promise<void>;
export function SaveListsSettings(arg1:main.ListsSettings):Promise<void>;
export function SaveLookupSettings(arg1:main.LookupSettings):Promise<void>;
@@ -152,8 +157,12 @@ export function SetCompactMode(arg1:boolean):Promise<void>;
export function SwitchCATRig(arg1:number):Promise<void>;
export function TestClublogUpload():Promise<string>;
export function TestLookupProvider(arg1:string,arg2:string,arg3:string,arg4:string):Promise<lookup.Result>;
export function TestQRZUpload():Promise<string>;
export function TestRotator(arg1:main.RotatorSettings):Promise<void>;
export function UpdateQSO(arg1:qso.QSO):Promise<void>;
+16
View File
@@ -106,6 +106,10 @@ export function GetCtyDatInfo() {
return window['go']['main']['App']['GetCtyDatInfo']();
}
export function GetExternalServices() {
return window['go']['main']['App']['GetExternalServices']();
}
export function GetListsSettings() {
return window['go']['main']['App']['GetListsSettings']();
}
@@ -226,6 +230,10 @@ export function SaveClusterServer(arg1) {
return window['go']['main']['App']['SaveClusterServer'](arg1);
}
export function SaveExternalServices(arg1) {
return window['go']['main']['App']['SaveExternalServices'](arg1);
}
export function SaveListsSettings(arg1) {
return window['go']['main']['App']['SaveListsSettings'](arg1);
}
@@ -286,10 +294,18 @@ export function SwitchCATRig(arg1) {
return window['go']['main']['App']['SwitchCATRig'](arg1);
}
export function TestClublogUpload() {
return window['go']['main']['App']['TestClublogUpload']();
}
export function TestLookupProvider(arg1, arg2, arg3, arg4) {
return window['go']['main']['App']['TestLookupProvider'](arg1, arg2, arg3, arg4);
}
export function TestQRZUpload() {
return window['go']['main']['App']['TestQRZUpload']();
}
export function TestRotator(arg1) {
return window['go']['main']['App']['TestRotator'](arg1);
}
+67
View File
@@ -183,6 +183,67 @@ export namespace cluster {
}
export namespace extsvc {
export class ServiceConfig {
api_key: string;
email: string;
password: string;
callsign: string;
force_station_callsign: string;
auto_upload: boolean;
upload_mode: string;
static createFrom(source: any = {}) {
return new ServiceConfig(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.api_key = source["api_key"];
this.email = source["email"];
this.password = source["password"];
this.callsign = source["callsign"];
this.force_station_callsign = source["force_station_callsign"];
this.auto_upload = source["auto_upload"];
this.upload_mode = source["upload_mode"];
}
}
export class ExternalServices {
qrz: ServiceConfig;
clublog: ServiceConfig;
static createFrom(source: any = {}) {
return new ExternalServices(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.qrz = this.convertValues(source["qrz"], ServiceConfig);
this.clublog = this.convertValues(source["clublog"], ServiceConfig);
}
convertValues(a: any, classs: any, asMap: boolean = false): any {
if (!a) {
return a;
}
if (a.slice && a.map) {
return (a as any[]).map(elem => this.convertValues(elem, classs));
} else if ("object" === typeof a) {
if (asMap) {
for (const key of Object.keys(a)) {
a[key] = new classs(a[key]);
}
return a;
}
return new classs(a);
}
return a;
}
}
}
export namespace lookup {
export class Result {
@@ -403,6 +464,7 @@ export namespace main {
eqsl_rcvd: string;
clublog_status: string;
hrdlog_status: string;
qrzcom_status: string;
static createFrom(source: any = {}) {
return new QSLDefaults(source);
@@ -418,6 +480,7 @@ export namespace main {
this.eqsl_rcvd = source["eqsl_rcvd"];
this.clublog_status = source["clublog_status"];
this.hrdlog_status = source["hrdlog_status"];
this.qrzcom_status = source["qrzcom_status"];
}
}
export class RotatorSettings {
@@ -847,6 +910,8 @@ export namespace qso {
clublog_qso_upload_status?: string;
hrdlog_qso_upload_date?: string;
hrdlog_qso_upload_status?: string;
qrzcom_qso_upload_date?: string;
qrzcom_qso_upload_status?: string;
contest_id?: string;
srx?: number;
stx?: number;
@@ -950,6 +1015,8 @@ export namespace qso {
this.clublog_qso_upload_status = source["clublog_qso_upload_status"];
this.hrdlog_qso_upload_date = source["hrdlog_qso_upload_date"];
this.hrdlog_qso_upload_status = source["hrdlog_qso_upload_status"];
this.qrzcom_qso_upload_date = source["qrzcom_qso_upload_date"];
this.qrzcom_qso_upload_status = source["qrzcom_qso_upload_status"];
this.contest_id = source["contest_id"];
this.srx = source["srx"];
this.stx = source["stx"];