DrFreas / VCH

Virtual Controller Helper
GNU General Public License v3.0
19 stars 4 forks source link

Synchronisation #27

Open Phil061995 opened 1 year ago

Phil061995 commented 1 year ago

Is there any chance to get the synchronisation back? Especially at days with a lot of traffic or during events I really miss that feature.

Idea to solve the Groundstate problem:

With every request that is written into the flightplan remarks, the groundstate is also written down. Only if the groundstate matches with the one in the remarks, the plugin can do any changes. Maybe the plugin can be limited to e.g. max. 2 changes in 5 seconds, otherwise an error message will apear and there will be no more changes to this specific aircraft.

Manual delete with ".vch delete DLH123" could be an option if any problems appear.

DrFreas commented 1 year ago

Hi, unfortunately it is not that easy to bring this feature back. I was in touch with an admin of Vatsim and they aren't really doing anything to be cooperative, even though I have a version that fixes the previous issues. Also it is not wished to use the flight plan remarks for that. There apparently are different parts of a flight plan which could be used, but as far as I know those fields aren't accessible through ES plugin API. Another option would be to use an external server to store the data, but that isn't preferred by me because I want to keep the dependency onto other services as minimal as possible.

There is already a logic implemented which checks the groundstates and only triggers the corresponding events if the criteria are met. Also there is said "cooldown" implemented in an internal version I have (as mentioned above), but yeah. I will try to get in contact with the developer of ES to see if there is anything that could be done via ES infrastructure.

judemille commented 11 months ago

As I understand it, EuroScope synchronizes aircraft ground states via temporary scratchpad values that are near instantly restored to the original value -- VCH could potentially do that. I don't know what it was up to before, so perhaps it was doing that before and had issues, but so long as you use values that won't make EuroScope think something else is up, that should be possible.

DrFreas commented 11 months ago

As I understand it, EuroScope synchronizes aircraft ground states via temporary scratchpad values that are near instantly restored to the original value -- VCH could potentially do that. I don't know what it was up to before, so perhaps it was doing that before and had issues, but so long as you use values that won't make EuroScope think something else is up, that should be possible.

Thank you for your input. The problem is syncing with multiple ES-instances covering other controllers too. So while it is possible to get the needed data locally from one client to another, it isn't that easy "over the internet". Methods that looked promising (using PushFlightPlanStrip and FlightStripAnnotations) didn't work or aren't optimal (like using the remarks). Maybe I did something wrong with it, maybe it just won't work. Tests with using the scratchpad weren't fully successful as well, because it isn't a reliable way to relay information. So it might happen that one client gets information and the other client doesn't.