mjaakko / NeoStumbler

New stumbler application for contributing data to geolocation services
MIT License
133 stars 12 forks source link

Add support for other types of location services than Ichnaea (MLS) #79

Open mjaakko opened 6 months ago

mjaakko commented 6 months ago

Currently data can only be sent to services which implement an API that is compatible with MLS Geosubmit. Investigate adding support for other location services, such as OpenCellID for cell towers

The user would be able to configure the type of endpoint and its parameters (API key etc.) in the settings

joelkoen commented 5 months ago

Would it be worth maintaining some kind of list of MLS compatible servers?

lucasmz-dev commented 5 months ago

microG just shared the existence of positon.xyz. That's really the only one I know though.

joelkoen commented 5 months ago

I'm hosting beaconDB but it's experimental and there's barely any coverage.

lucasmz-dev commented 5 months ago

so far I haven't seen any that does IPv6 :/ MLS was the same too, IPv4 only

dimaguy commented 4 months ago

Given more than a single endpoint (like positon and beacondb) is appearing to try and replace MLS, it'd be nice if NeoStumbler allowed to input more URLs to send reports to

lucasmz-dev commented 4 months ago

@dimaguy atm a work around is to change the endpoint and use the reupload data option

positon does not accept submissions, though. https://positon.xyz/docs/api/geosubmit/

dimaguy commented 4 months ago

Sounds a bit clunky for something that's supposed to be running automatically in the background, but sure that works

joelkoen commented 4 months ago

This is a good idea, providing data to both services doesn't hurt, and is better for the community.

mjaakko commented 4 months ago

I've created another issue for sending data to multiple endpoints, #124

codenyte commented 4 months ago

@lucasmz-dev @dimaguy Don't use Position.

https://grapheneos.social/@GrapheneOS/112759424689620738

https://grapheneos.org/articles/positon-location-service

pataquets commented 4 months ago

Would it be a reasonable FR to request to have a dropdown list of available/curated known services for the user to choose from? This would avoid the user having to look for and copypasting URLs. I'd happily file an issue if it is.

mjaakko commented 4 months ago

Would it be a reasonable FR to request to have a dropdown list of available/curated known services for the user to choose from?

In principle I think it's a good idea. Will have to think about the details - there should be strict criteria for which services to include, e.g. should be clear who hosts the service, have links to terms of use and privacy policy, etc.

pataquets commented 4 months ago

Would it be a reasonable FR to request to have a dropdown list of available/curated known services for the user to choose from?

In principle I think it's a good idea. Will have to think about the details - there should be strict criteria for which services to include, e.g. should be clear who hosts the service, have links to terms of use and privacy policy, etc.

Of course, it's totally fair. On second thought, I'd even go as far as first defining such inclusion criteria as the previous task, so it does not place any more burden on maintainers when the feature gets implemented eventually.

FedericoCeratto commented 4 months ago

NeoStumbler is crashing when trying to submit to http://dev.libregeolocation.org:3940/v2/geosubmit ( test instance for https://libregeolocation.org/libreloc.html ). I'm not seeing any incoming packet on the server side. Any pointer? :)

joelkoen commented 4 months ago

Are you using the latest version? I think older versions required HTTPS, or you might want to try the standard port

FedericoCeratto commented 4 months ago

I am using the latest version. It seems to be working reliably now that I'm using https://dev.libregeolocation.org/ (with TLS and behind Nginx). Some of the crashes are caused by flaky network connectivity.

mjaakko commented 4 months ago

Some of the crashes are caused by flaky network connectivity.

If you have any logs available from the crashes, it would be helpful for investigating. The app shouldn't crash because of network problems

lucasmz-dev commented 3 months ago

I've had the app crash when I tried to use positon (it isn't an open API yet so expected it wouldn't work)

guglovich commented 3 months ago

+1. And now there's nowhere to send scanned reports, although the app is being updated.

dimaguy commented 3 months ago

+1. And now there's nowhere to send scanned reports, although the app is being updated.

There is though? BeaconDB works fine as replacement

codenyte commented 3 months ago

+1 for beaconDB, I also upload my data there

Quick question: Does anyone happen to know if reuploading the old data that was submitted to MLS to beaconDB actually makes sense? NeoStumbler has this "Reupload data" feature in the settings, where I can pick a time frame and reupload the data (supposedly to the currently selected endpoint, not the endpoint that was selected when the data was originally uploaded?). I know that beaconDB already uses the MLS data dumps, but I wonder if the raw NeoStumbler geosubmit data might be more useful than the MLS dump? Would the original timestamps get preserved and uploaded as well?

lucasmz-dev commented 3 months ago

@codenyte, yeah it does. The dump BeaconDB uses only includes cell towers. AFAIK, Mozilla never made Wi-Fi and Bluetooth beacons available in public dumps.

guglovich commented 3 months ago

+1. And now there's nowhere to send scanned reports, although the app is being updated.

There is though? BeaconDB works fine as replacement

I don't know this, there are no endpoint presets, so how do users know this without looking at the github branches.

codenyte commented 3 months ago

@codenyte, yeah it does. The dump BeaconDB uses only includes cell towers. AFAIK, Mozilla never made Wi-Fi and Bluetooth beacons available in public dumps.

Thanks @lucasmz-dev

codenyte commented 3 months ago

+1. And now there's nowhere to send scanned reports, although the app is being updated.

There is though? BeaconDB works fine as replacement

I don't know this, there are no endpoint presets, so how do users know this without looking at the github branches.

There is a discussion about this in #189

You can manually set the endpoint to https://beacondb.net/ The /v2/geosubmit path stays the same, as beaconDB uses the same format for requests and submissions as MLS. Also consider submitting your old data from the MLS time using the "Reupload data" feature in the settings, after setting the beaconDB endpoint.