-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't get transceiver to QSY - Safari #25
Comments
Wavelog calls WavelogGate on localhost (via your Browser, not via the server) to QSY. WavelogGate forwards it to FLRig. It's important that a connection to localhost:54321 (where WavelogGate listens) from your local(!) browser is possible. |
It seems that Safari is the only browser to not allow cross origin websites, even for local loopback addresses, and with no way to enable that in the settings... I made a temporary fix in the bandmap's JavaScript :
//irrelevant=fetch(CatCallbackURL + '/'+qrg);
var temp = window.open(CatCallbackURL + '/'+qrg);
temp.addEventListener('load', function() { temp.close(); } , false); Basically opening a new window, and closing it once it has loaded. This works quite well ! Only issue is that I can see the window opening and closing, but it's not that big of a deal. I know not a lot of users will be on Safari, so no worries if you don't want to put in the effort :) |
you have to import the self-signed cert to your browser, if one adds SSL to WavelogGate. This would cause massive problems on all browsers. detection of safari and doing some iframe-vodoo could(!) be a solution. let me know if there's progress |
I trier using an iframe, but the issue persists as the request is still coming from the https page. The solution I have still seems to be the best option :
function isSafari() {
return /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
}
if(isSafari()) {
var temp = window.open(CatCallbackURL + '/'+qrg);
temp.addEventListener('load', function() { temp.close(); } , false);
setTimeout(function () {
if (temp && !temp.closed) {
temp.close();
}
}, 500);
}
else {
irrelevant=fetch(CatCallbackURL + '/'+qrg);
} The code checks if the client is using Safari; if yes the pop-up workaround is used, if not the fetch function is used |
To be very honest: I think such a function is difficult to maintain since there are so many different possible setups. In my eyes it would be much easier and safer to clearly communicate that Safari is not supported. |
"
Features
"
When using WaveLogGate with FLRig, an ICOM IC-7300, and my WaveLog instance (all latest releases), the transceiver doesn't jump to the frequency of the spot I click on in the band map..
Is there something I have to configure on my WaveLog Server or a port I have to forward for this to work ?
The text was updated successfully, but these errors were encountered: