These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
Previous page123Next page
 

Request for API system - POS Locations

First post First post
Author
TorTorden
Tors shibari party
#21 - 2011-12-31 01:43:50 UTC  |  Edited by: TorTorden
(Be warned bad syntax, spelling, grammar follows since Im both typing this on my tablet after dipping into the vodka)

Im not buying the infamous line myself either, here's my reasoning for it.

1
Even with x y z coordinates it wouldn't do anything other than tell us stuff is somewhere around over there (not to also mention that since this statement such safeapots have all been either moved or deleted by ccp)

2
We still have to probe someone at the safe spot unless we also have a bookmark in game. last I checked wrecks/cans where still not probeable (is that a word?)
with just x y z coordinates we still can't magick them into bm's unless someone proceeds to hack the games bookmark server (unleashing all kinds of dev aggro)

3
this would be for a corporate api key not a world accessible xml like the alliance listings.
If someone gets it that shouldn't have it it means YOU gave the key to someone you shouldn't have.

Bottomline even with x y z in the api not alot can be done outside of cooler tools from third party devs.


No i think simply that this is a problem mainly faced by larger scale wormhole operations, inow a very small amount of corporations in eve, and I didnt go into w space to have it easy., neither would I expect nor want special treatment.
(a couple of statues and our names remebered in song would be nice)
Not to mention ccp has had bigger problems to fix since incarna than this.
Xander Hunt
#22 - 2011-12-31 17:09:22 UTC
Even in WHs, the system still stores data based on XYZ info when anchored/launched in space. WH space is like KSpace, 'cept that it has another universeID in map.Universe. Their system holds that info. I have assets out in Jspace, and even the old EVE Asset Manager tells me what system its in. No reason why XYZ can't be attached, aside from technical, which again I find hard to believe.
CCP Prism X
C C P
C C P Alliance
#23 - 2012-01-03 10:23:33 UTC
I promised a resolution from itemID to (x,y,z) coordinates at Fan Fest 2011 and have yet to deliver. My shame would make the Marquis de Sade blush. Oops
I've just started resolving API defects again now so stuff is finally happening.

It will probably end up under both /char/ and /corp/ as characters might want to query the location of anchored containers or whatnot. Input on a similar form to the CharacterName call, a CSL of IDs.

This is all pending approval from other parties who might think that this data should not be exposed to the players at large. I doubt that as we did discuss this on FF11 but I'd rather announce the caveat as it is better to be safe than sorry. Also, I'm not sure on my available QA resources at the moment so deployment might be delayed.
TorTorden
Tors shibari party
#24 - 2012-01-03 22:47:29 UTC
So If I read you right, this would be an api we query with a set of itemid's retrieved from corp assets list (or personal assets)
Giving us the ability to only ask for what we need to know and leave the rest, in short I love it.
Xander Hunt
#25 - 2012-01-05 14:44:13 UTC
CCP Prism X wrote:
I promised a resolution from itemID to (x,y,z) coordinates at Fan Fest 2011 and have yet to deliver. My shame would make the Marquis de Sade blush. Oops
I've just started resolving API defects again now so stuff is finally happening.

It will probably end up under both /char/ and /corp/ as characters might want to query the location of anchored containers or whatnot. Input on a similar form to the CharacterName call, a CSL of IDs.

This is all pending approval from other parties who might think that this data should not be exposed to the players at large. I doubt that as we did discuss this on FF11 but I'd rather announce the caveat as it is better to be safe than sorry. Also, I'm not sure on my available QA resources at the moment so deployment might be delayed.


I'm one of those kinda developers that'll push back a deadline to get it right, instead of fast. ;) You guys have been great this past expansion, so keep up the good work! Not to mention its the holidays, so, I kinda didn't expect a "Get right on it" kinda thing. ;)

I know its a WIP but could you give a potential example of what we're looking at querying, and maybe offer suggestions?

Myself, I wouldn't mind having the XYZ in the asset list, but some don't want it. If another API comes up, why not just have a list of all anchored items (One for /corp and one for /char) with just the ItemID and XYZ, then we can cross reference against ItemID?

Would there actually be a reason to grab personal anchored items in space, aside from jet cans?
CCP Prism X
C C P
C C P Alliance
#26 - 2012-01-05 15:32:21 UTC
I guess an example would be something like:

api.eveonline.com/corp/Locations.xml.aspx?keyID=1&vCode=snakeHunting&ids=1,2,3

And the return would be something on the form of (with stuff stripped out to please the forums):
row itemID="1" itemName="DOOM POS" x="1984109842498" y="540899461984" z="19074984051"
row itemID="2" itemName="DOOM POS MODULE 1" x="1984109842398" y="540899461984" z="19074984151"
row itemID="3" itemName="DOOM POS MODULE 2" x="1984109842798" y="540899461984" z="19074983951"

As long as the associated corpID of the key is the owner of these items. Otherwise you'd just get the ID returned with empty fields and did someone the favour of caching his data.

The character counterpart would be quite similar, but only work for stuff owned by that character. One might infer that this gives you access back to translating shipIDs to their names.. and that is correct. As long as they are yours ofc.

And by all means bring in your own suggestions. I don't have endless time to finish this so the sooner the better. Blink
Xander Hunt
#27 - 2012-01-05 15:39:57 UTC
Is itemName the actual name of the object in space such as "My POS Structure" or is it going to be 'factory default' of "Corporate Hangar Array"?

Can the option of excluding the IDs on the URI provide all items out in space?

If an ids is given to an object that is not in space
- Would anything be returned?
- Is the itemName the in-game name of the item, such as a ship name?
Dragonaire
Here there be Dragons
#28 - 2012-01-05 17:17:11 UTC
Don't know if it's possible but some people might find it useful have both the general name like "Corporate Hanger Array" and their alias/name for it. So maybe itemName and itemType fields? or might be better just to include typeID and let them map it if they need that and have itemName be their alias/name for it if that was the plan. I understand they can get the typeID from assetList etc where they get the itemID but most people seem to have issues figuring out how to do simple joins like that at times for their output Blink

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

Callean Drevus
Perkone
Caldari State
#29 - 2012-01-05 19:02:38 UTC
That said, since we're querying itemID's anyway, will this also allow us to query an itemID that is not actually in space to get the personalized name? Or will this just be for items in space? Either would be fine, but the first would be awesome Blink

Developer/Creator of EVE Marketeer

Arkady Sadik
Gradient
Electus Matari
#30 - 2012-01-05 20:09:30 UTC
CCP Prism X wrote:
One might infer that this gives you access back to translating shipIDs to their names.. and that is correct. As long as they are yours ofc.
That's quite awesome! Thank you!

Will this work for ships/cans in (corp) hangars? If so, I guess the coordinates are that of the station/POS module/etc.?
CCP Prism X
C C P
C C P Alliance
#31 - 2012-01-06 08:33:57 UTC
Quote:
Is itemName the actual name of the object in space such as "My POS Structure" or is it going to be 'factory default' of "Corporate Hangar Array"?

An items name is his actual name, what you refer to as "factory default" I call "type name". Blink

Quote:
Can the option of excluding the IDs on the URI provide all items out in space?

Absolutely not.

Quote:
If an ids is given to an object that is not in space
- Would anything be returned?
- Is the itemName the in-game name of the item, such as a ship name?

Something will be returned, yes. Otherwise you couldn't get names of docked ships belonging to the key. How that will be handled I have yet to decide. If returning all coordinates as 0 does incurr some overhead I haven't anticipated already then that will probably be it. I don't really see a very useful usecase for querying the coordinates of ships anyways, caching will cause them to be pretty damn inaccurate if it is moving. Blah blah blah, next question!

Quote:
Don't know if it's possible but some people might find it useful have both the general name like "Corporate Hanger Array" and their alias/name for it.

It is of course possible. However I wont do that, we already have a weird way of getting the typeName from CharacterName and people should not be querying static stuff over the wire (with the exception of mobile apps who might have too limited storage to keep their own type information). There is no way of getting an itemID to query the location of without getting the typeID back and there's no point for me to embiggen the return set for some weird special case. Blink

Think that should cover all questions.

On a more serious note it is very dark, cold and slushy over here in Iceland.
Jarnis McPieksu
Aliastra
Gallente Federation
#32 - 2012-01-06 09:09:35 UTC  |  Edited by: Jarnis McPieksu
CCP Prism X wrote:
Quote:
Is itemName the actual name of the object in space such as "My POS Structure" or is it going to be 'factory default' of "Corporate Hangar Array"?

An items name is his actual name, what you refer to as "factory default" I call "type name". Blink


So how about the fact that many POS structures cannot be renamed, so you get just a bunch of "type names" out of this anyway...

(And the "intel" problem of naming those POS structures to something sensible, giving the hostiles info as to what they are for. I mean if I could name a reaction silo with "Technetium", it would basically tell "2bil worth of materials here" to anyone with a directional scanner... yes I could use fake names and/or own private code words, but the whole thing is bit silly)
CCP Prism X
C C P
C C P Alliance
#33 - 2012-01-06 09:54:28 UTC
How about what? There's nothing wrong with a types name being a part or the entirity of an items name. We're also not going to be changing any rules regarding what you can and cannot rename.

What's the confusion here?
Jarnis McPieksu
Aliastra
Gallente Federation
#34 - 2012-01-06 11:16:11 UTC
CCP Prism X wrote:
How about what? There's nothing wrong with a types name being a part or the entirity of an items name. We're also not going to be changing any rules regarding what you can and cannot rename.

What's the confusion here?


Okay, so there will be no real way to distinguish one "Silo" from 30 others in the same system, I guess? (related to API, that is)

Basically just wanted to know if any of these API thingies would alter anything related to naming of POS modules (didn't expect it to) and in most cases since the module cannot be (re)named, the name you get is the "type name" - as intended, due to the inability to rename.

Correct?
CCP Prism X
C C P
C C P Alliance
#35 - 2012-01-06 11:29:46 UTC
Correct, if you cannot rename the item you'll be stuck with the default name. You wouldn't be able to differentiate between them in the client either by just looking at them (except by position, which you'll get returned to you albeit in a less visual form).
Jarnis McPieksu
Aliastra
Gallente Federation
#36 - 2012-01-06 12:51:16 UTC
CCP Prism X wrote:
Correct, if you cannot rename the item you'll be stuck with the default name. You wouldn't be able to differentiate between them in the client either by just looking at them (except by position, which you'll get returned to you albeit in a less visual form).


Hmm, true - it would then allow developers of EVE apps to match what modules are floating in space with what tower and perhaps even show a visual representation of the POS layout in a third party app, allowing you to tag the modules in the out-of-game app as you wish (say, to visualize a reaction tower setup in an app that tracks the reaction POS status).

Would be cool, but would also be completely up to third party devs to take advantage of.
Xander Hunt
#37 - 2012-01-06 13:39:20 UTC  |  Edited by: Xander Hunt
So I went to write a huge post about why the ids COULD be excluded, but I kind of kicked my own ass thinking about the problem and decided it'd be a moot point.

I was surprised with the "Absolutely not" statement, and wrote the post in NOTEPAD cuz I know how this forum loves to drop all my text on long winded posts. However, I kind of ended up working out the problem at this end anyways.

Typically with this call, the first time through populating the EVE Application database, you'd hit a heavy toll on the API server making requests. I remembered that URL calls can only be of a certain length, but this is dependent on the client, and the server SHOULD be able to handle any URL length. SHOULD. I don't know how CCP has the API server setup to handle long URL calls if this becomes an issue, but it might be client side.

So that got me to thinking about exactly what kind of data I'd be querying and how often it'd change (In my case).

At least two questions;

1> If an object in space, say, a research station, is shut down, unanchored, moved, then when redeployed/reanchored, does that station get a new itemID?

2> Are the cache timer and ids URI linked?

If a new ID is given, then really, I'd be happy with an XYZ report based on the 23 hour cache simply because if I find a new list of itemIDs with a locationID being that of a solarSystemID, I just prepare a URL query and fire it to the API server and work through the results, and never make a query about that particular itemID again.

However, if new itemIDs aren't given to the station, then it'd be a daily/weekly poke at the server to ensure proper locations. This is where the question with the cache timer and ids being linked come in.

If they aren't linked, then I would assume that means that I can only poke /corp/Locations once during the cached period regardless if I provide new ids.

If they are linked, is the cached timer based on the ids URI as a whole, or, do I get a new cache timer if I provide a new set of itemIDs?

As for the tune (Which I've played on repeat for the past couple hours); http://images.ctv.ca/archives/CTVNews/img2/20120102/600_snow_squalls_120102.jpg - Your idea is MUCH better than what I had to deal with here a couple days ago. Fortunately I avoided this particular highway and went the backway, but, still was a rather "entertaining" drive if your sadistic enough.
Scrapyard Bob
EVE University
Ivy League
#38 - 2012-01-06 18:04:14 UTC
CCP Prism X wrote:
Correct, if you cannot rename the item you'll be stuck with the default name. You wouldn't be able to differentiate between them in the client either by just looking at them (except by position, which you'll get returned to you albeit in a less visual form).


So, are there technical reasons why we can rename arrays, but not SMAs or gun/ewar batteries?
Callean Drevus
Perkone
Caldari State
#39 - 2012-01-06 18:58:37 UTC  |  Edited by: Callean Drevus
You can be fairly certain I'll have a solar system mapper out within a week of CCP releasing this ^^ as to querying names of items not in space, hell yeah! Big smile

Edit: I think someone meant all items out in space owned by the key owner, not ALL items out in space. This might still be impossible due to performance reasons though.

Developer/Creator of EVE Marketeer

TorTorden
Tors shibari party
#40 - 2012-01-07 02:23:08 UTC
Xander Hunt wrote:

1> If an object in space, say, a research station, is shut down, unanchored, moved, then when redeployed/reanchored, does that station get a new itemID?


In my experience ItemID's are surprisingly persistent at least after the change over to 64bits
I would guess the array\module would have to be unanchored, stacked with other modules of the same type and then unstacked again for it to change ItemID.
Previous page123Next page