magicbug / Cloudlog

Web based amateur radio logging application built using PHP & MySQL supports general station logging tasks from HF to Microwave with supporting applications to support CAT control.
http://www.cloudlog.co.uk
MIT License
460 stars 190 forks source link

Bug: eQSL- / LotW-Import doesn't care about station_id #2238

Closed int2001 closed 1 year ago

int2001 commented 1 year ago

To Reproduce

Prequisites:

The Bug:

int2001 commented 1 year ago

Need help, perhaps from @AndreasK79 (?) or @phl0 (?), with the eQSL-Part.

eQSLs-confirmations aren't coming with a gridsquare. So one needs to iterate through the (valid) station_id of the origin-call given for the confirmation. The following functions need to be adjusted for that:

Idea is to update every QSO, which belongs to station_ids (plural) where the ownercall is listed. I see no other way, to do that. Problem is - from my sight - minimal, because one would not log a qso with the same origincall from more than one location. so gridlocator could be omitted. should be even better to update every qso (regardless of the origin-call) which matches time, band and operator.

If there is more than one user on the same instance there's a high risk that user "b" also works the same station within the same band/time like user "a" did (rare-stations, etc.). it's far away from hypothetic.

Any more ideas on that?

int2001 commented 1 year ago

Second approach, inspired by https://github.com/magicbug/Cloudlog/issues/2189: Use COL_STATION_CALLSIGN instead of station_id-Voodoo.

Works for Import directly from eQSL but breaks on Import from file...

AndreasK79 commented 1 year ago

@int2001 I'll see if I can come up with some suggestions here, but seems I need to dig into the code before I hopefully can offer anything.

int2001 commented 1 year ago

That's really tricky. I thought implementing a dropdown with StationLocations at the "import eQSL-ADI"-Form could be a solution. But if one is using the same Call with different locations and the same eQSL-Nick (not unusual when roving or doing pota), it's not userfriendly. Problem exists because there's no reference for the station_callsign in the eQSL-ADIF. Updating every known matching QSO which belongs to the users station_id could be problematic.

Problem is: If one is roving through the grids the eqsl_update is able to update more than one qso for only one eQSL-Confirmation. Ok, that's much better than the current solution where EVERY QSO within band/time_range would be updated (also those which don't belong to the logged in User). But i'm not happy with that.

Very tricky