iitc-project / ingress-intel-total-conversion

ingress.com/intel total conversion user script with some new features. Should allow easier extension of the intel map.
http://iitc.jonatkins.com/
ISC License
989 stars 552 forks source link

find provider for OSM tiles #152

Closed breunigs closed 11 years ago

breunigs commented 11 years ago

update: the cloudmade api key is broken and has been removed. If you have suggestions for different providers, please share them.

jonatkins commented 11 years ago

Ouch on cloudmade! Will get a new build sorted ASAP.

vita10gy commented 11 years ago

Are they actually expecting you to pay that? I've never heard of such a thing. I would have imagined that once you used up your free allotment it would have just stopped working.

jonatkins commented 11 years ago

OK, @breunigs, new IITC build pushed live.

I've not had a chance to check it closely, so someone please let me know if there's issues.

From the update behaviour I've seen, Chrome+Tampermonkey checks every 12 hours by default (75% of users), Firefox+Greasemonkey is a weekly check (25% users)

leCradle commented 11 years ago

Do we have to kill OSM completely or is it enough to get rid of the cloudmade tiles? If I understand this correctly, only the midnight and minimal map is from cloudmade... so in theory...we could add the standard osm back in...?

breunigs commented 11 years ago

Currently on their homepage it says "$25 per 1M tiles, first 500k free". That is all. There is no further information on how this is handled and there are no terms of service. Google and Bing handle this differently, i.e. simply block you instead of amounting a lot of money.

vita10gy commented 11 years ago

Yeah, I've never heard of that, and even if I had read that I would 115% expect that after 500k tiles I would get shut down, until I gave them a credit card number, and explicitly agreed in 25 different places to pay, and EVEN THEN I would expect to PRE pay for say 4 million tiles, and have it warn me when I get close, and shut off when it gets there.

An implied "we'll just send you an invoice" paired with an open ended could-have-wracked-up-$3-million-before-you-even-knew-it system is madness.

leCradle commented 11 years ago

@jonatkins you want to release a new iitcm build too. I think most of the people are using the local script with the app.

jonatkins commented 11 years ago

Will do, @leCradle - just checking the build is OK first.

jonatkins commented 11 years ago

@leCradle @breunigs new IITC Mobile build now released too.

Unfortunately the Leaflet Google Maps implementation doesn't work too well on mobile - it doesn't update during touch zooms, leaving you guessing how far zoomed you are.

As for Cloudmade - I just had a look at their registration/API key acquisition process. They don't have a leg to stand on. No terms+conditions accepted. No verification of email address on registration. Anyone could register any details and get an API key for use. They have examples on their website where they show their OWN API key - 8ee2a50541944fb9bcedded5165f09d9. (Evil thought - I wonder if that would work or if they have referrer checks in place..?)

vita10gy commented 11 years ago

Did they ask for your name and address and whatnot? I mean if they wanted to "go after" this money do they have the info they need to potentially find someone?

ghchinoy commented 11 years ago

Could there potentially be an option to add our own api key so that we're not unduly burdening one api key?

On Fri, Apr 12, 2013 at 5:45 PM, vita10gy notifications@github.com wrote:

Did they ask for your name and address and whatnot? I mean if they wanted to "go after" this money do they have the info they need to potentially find someone?

— Reply to this email directly or view it on GitHubhttps://github.com/jonatkins/ingress-intel-total-conversion/issues/152#issuecomment-16323232 .

vita10gy commented 11 years ago

The price IS front and center on their website, but, for a multitude of reasons, that in no way shape or form implies "we'll cap-less-ly bill you for whatever you use". I mean, what if you made some little thing that went totally viral and now all of a sudden before you even realizing it you owe them 30 grand? That's just....no rational person with API experience would guess it would work that way in a million years. I only half believe it even now.

jonatkins commented 11 years ago

@ghchinoy - Something like that might work. It all depends how many IITC users sign up for an API key. If it's a large number they'll just end up changing their terms, or the free limit, so they can still make money - or just block IITC use. I can't see it as a long-term solution for general IITC users.

I think that the standard OSM map tiles can still be an option - but just can't be the default. To be safe here I need to personally check their terms on this before adding them back though. I'll also be looking to see what other options there are for map tiles - is anyone aware of sources to consider here?

leCradle commented 11 years ago

@jonatkins yes the leaflet gmaps is hard to use on mobile devices....eventually you could add the standard OSM layer as a non-default option back to the mobile app? Just for this short-range build. This shouldn't be that much traffic for OSM and it has nothing to do with the cloudmade stuff...

Edit: ah...you were faster... :-)

breunigs commented 11 years ago

I will talk to my legal protection insurance on monday and follow their advice.

as for alternatives: http://developer.mapquest.com/web/products/open/map their map tiles don't require an API key as far as I can tell and I haven't found any limits. Haven't checked thoroughly though.

OSM's tile usage policy can be found here: https://wiki.openstreetmap.org/wiki/Tile_usage_policy

jonatkins commented 11 years ago

OpenStreetMap tile servers are out of the question - their servers wouldn't be able to handle it and it's against their terms "Heavy use (e.g. distributing an app that uses tiles from openstreetmap.org) is forbidden without prior permission from the System Administrators. See below for alternatives."

Mapquest tiles are an option http://developer.mapquest.com/web/products/open/map I'm reading through their terms, etc closely first to see if there's any catches.

I may accept plugins that include additional layers - possibly even OSM and Cloudmade - but don't think either of these should be in the default set.

jonatkins commented 11 years ago

MApQuest tile terms

there's also required text, similar to that for the OSM tiles, required on screen - and perhaps something in the 'about' box too.

So, @breunigs - from the stats from Cloudmade, do we cross the 4000 tiles/sec boundary for heavy usage requiring notification? And if so, what sort of usage levels?

breunigs commented 11 years ago

If their stats are correct -- which I doubt because they show ~230 unique users for "all time" but ~11k for April -- it appears IITC causes about 50 tiles per second: https://www.wolframalpha.com/input/?i=135000000+per+month+in+per+second (for april)

jonatkins commented 11 years ago

Those stat errors sound like more than enough reason to object to any bill they try and go after.

But, 50/sec matches my guess based on their requested payment - so MapQuest tiles it will be. I'll get on it now.

vita10gy commented 11 years ago

Is there a reason, beyond "because we can," that google's offerings don't have us covered enough? On Apr 12, 2013 8:00 PM, "Jon Atkins" notifications@github.com wrote:

Those stat errors sound like more than enough reason to object to any bill they try and go after.

But, 50/sec matches my guess based on their requested payment - so MapQuest tiles it will be. I'll get on it now.

— Reply to this email directly or view it on GitHubhttps://github.com/jonatkins/ingress-intel-total-conversion/issues/152#issuecomment-16324869 .

jonatkins commented 11 years ago

They don't work very well, as things stand, @vita10gy - mobile is useless when zooming, desktop is poor.

Perhaps there's fixes for this, not sure. MapQuest tiles are easy and quick to implement, so is the first option to return a smooth user experience.

vita10gy commented 11 years ago

I've noticed that. Do we know why that is? Or it just is?

Edit: I assumed it was a leaflet/osm thing. Not just a "not Google thing" On Apr 12, 2013 8:07 PM, "Jon Atkins" notifications@github.com wrote:

They don't work very well, as things stand, @vita10gyhttps://github.com/vita10gy- mobile is useless when zooming, desktop is poor.

Perhaps there's fixes for this, not sure. MapQuest tiles are easy and quick to implement, so is the first option to return a smooth user experience.

— Reply to this email directly or view it on GitHubhttps://github.com/jonatkins/ingress-intel-total-conversion/issues/152#issuecomment-16325007 .

jonatkins commented 11 years ago

5f4e0192a0d3e58b1f20923050cf89ddce6f118b adds mapquest tiles. Think I've covered the messages required by their terms - but a 2nd pair of eyes on the results may be a good idea.

I did try the MapQuest satellite imagery as an option, but outside the US it doesn't support many zoom levels, so seems pointless when the google layers are an option

[Edit: and this has been pushed live as 0.10.5 too]

datagutt commented 11 years ago

Does mapquest have any "dark" tiles? Because i prefer it being dark (yes i know i can choose default ingress style map in the chooser).

jonatkins commented 11 years ago

@datagutt Only the one tile style is available from MapQuest as far as I can see.

@vita10gy why google maps is not so smoothly integrated? I guess because that CloudMade, MapQuest, etc can be implemented as native leaflet tile layers, whereas google maps has to be a wrapper around the google maps API (the google maps terms insists this is the only way to access their tiles)

As we now have a working tile provider that, as far as I can see, won't be an issue, I'm going to close this.

I may try implementing the Bing map layers in leaflet to see if they're nicer than the Google ones. Not sure they offer alternative styles though. I'll also consider extending the API to allow plugins to provide tile layers - allow people to add back CloudMade layers with their own personal copy of the plugin and API key. But further work in this area is the job of new issues.