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.
 

EVE API and Public CREST discussion

First post First post First post
Author
Gehen Sealbreaker
Sealbreaker Labs
#501 - 2014-07-25 13:35:55 UTC
CCP FoxFour wrote:


Backlog - EVE API - Defects:

  • (...)
  • Reduce the cache time on corp member tracking from 6 hours to 1




Hey FoxFour, it's nice to see there is someone working hard for the API! (And probably suffering: to be sure to avoid double-posting I read ALL THE THREAD just now. I can still hear the whining...)

Anyway, I'm working on a tool for gaming groups and guilds who play more than one game and allow their members to view who is online, and on which game, in a centralized place.
Despite demand, I stopped developing the EVE module due to the 6 hour cache on corp member tracking. (Knowing if some of your buddies were online 5 hours ago is useless.)

Reducing the cache to one hour is a change which would bring back this "buddy monitoring" tool in the realm of "usable", since people generally play EVE for extended periods of time.
However, do you think it could be reduced to 30 minutes, or even better, 15? This would put the EVE information on par with the rest.

At the moment, I think a frequent train of thought among users is "Oh, I wonder if there's anyone on EVE? Let's see... To look at corp channel I have to click 5 times, wait 3 minutes, and enter a password... Meh, there's 3 people on Minecraft judging by the monitor, I'll just play that..."
Ydnari
Estrale Frontiers
#502 - 2014-07-25 23:38:29 UTC
corp/IndustryJobs endpoint

Seeing rows for manufacturing jobs where blueprintTypeID is set, but productTypeID is set to 0

Anyone else seeing this? Surely productTypeID should be set?

For CCP FoxFour, jobID = 230319623 is an example, there are lots like it.

--

Calvin
Tritanium Forge Industries
#503 - 2014-07-28 00:39:47 UTC
Ydnari wrote:
corp/IndustryJobs endpoint

Seeing rows for manufacturing jobs where blueprintTypeID is set, but productTypeID is set to 0

Anyone else seeing this? Surely productTypeID should be set?

For CCP FoxFour, jobID = 230319623 is an example, there are lots like it.


Oddly enough I'm getting this too, and it seems to be a new thing, as previous Corp/IndustryJobs pulls did have the productTypeID with them.
CCP FoxFour
C C P
C C P Alliance
#504 - 2014-07-29 15:00:52 UTC
Whoever was writing that Android PI application: https://wiki.eveonline.com/en/wiki/Equations

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Bubbles Udan
Caldari Provisions
Caldari State
#505 - 2014-07-29 20:55:59 UTC
Thank you! Big smile
Calvin
Tritanium Forge Industries
#506 - 2014-07-30 08:22:04 UTC
Request: Return blueprint ME/TE levels to the industry jobs API.

Reason: Prior to Crius, the IndustryJobs API would include a field on the ME and TE levels of the installed blueprint, this is missing in the new API. At the moment there's no method to cross-check a specific industry job with its blueprint ME/TE levels to get the correct cost/time information.

TE isn't such a big deal since the job has time info already included (would be nice since no other API pull has this info), but ME is a huge issue as it's not possible to accurately calculate industry job cost information from API pulls anymore.
Cor'len
Doomheim
#507 - 2014-07-30 16:02:48 UTC  |  Edited by: Cor'len
CCP FoxFour wrote:
Whoever was writing that Android PI application: https://wiki.eveonline.com/en/wiki/Equations


Awesome! I'm going to be using that too, and I'm not even writing an Android application!

I did have some issues with the code though - I've got it running (had to compute numIterations from total running time divided by cycle time, and there were a couple issues with variable names), but it's not computing identical results to what the EVE client does. Is it doing integer math and having issues with me using floats, or? The difference is generally pretty slight, but the total ends up being off by 13% or so. I'm also using the default decayFactor (0.12) and noiseFactor (0.8), because I didn't find any overrides in dgmTypeAttributes.

(Also, I changed it to use sec=1 as opposed to sec=10 000 000, and I'm feeding time in as Unix time with installTime clamped to zero and expiryTime adjusted to match, because currentTime also starts at zero. You get the same results if you leave installTime as-is and just add it to currentTime; if you don't do either, you get nonsense results because cycleNum starts at some hilarious offset.)


Any tips?

Edit: Fixed, PHP is horrible. Ported to C#: http://pastebin.com/8tgU4E8K
Dragonaire
Here there be Dragons
#508 - 2014-07-30 20:05:17 UTC
Just been re-reading through the patch notes and noticed again the part about /industry/facilities/. It seems to be saying it a new API point but you can't access it. Is it going to be CREST only and notes were just unclear? or is there another reason we can't access it?

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

Calvin
Tritanium Forge Industries
#509 - 2014-07-30 22:19:43 UTC
Dragonaire wrote:
Just been re-reading through the patch notes and noticed again the part about /industry/facilities/. It seems to be saying it a new API point but you can't access it. Is it going to be CREST only and notes were just unclear? or is there another reason we can't access it?


Hi Dragonaire,

The facilities API point should be accessible here:

https://api.eveonline.com//corp/Facilities.xml.aspx

It should accept the usual keyID and vCode credentials, and I've been using it successfully since Crius came out.

Hopefully that helps.
Ydnari
Estrale Frontiers
#510 - 2014-07-30 23:06:29 UTC
Calvin wrote:
Request: Return blueprint ME/TE levels to the industry jobs API.

Reason: Prior to Crius, the IndustryJobs API would include a field on the ME and TE levels of the installed blueprint, this is missing in the new API. At the moment there's no method to cross-check a specific industry job with its blueprint ME/TE levels to get the correct cost/time information.

TE isn't such a big deal since the job has time info already included (would be nice since no other API pull has this info), but ME is a huge issue as it's not possible to accurately calculate industry job cost information from API pulls anymore.


Me too, but I got told no when I asked for this Sad

Not really Tech Lab related but on the same lines, but the loss of copy&pastable blueprint lists with ME/TE on them (could previously copy this in-game from the "group window" inside the sci&industry blueprints browser) has also put a damper on organising builds.

Unless the promised blueprints list API is on a really short cache timer it's going to be hard to compete with what we used to have; right now I'm having to transcribe by hand lists of invented blueprint ME/TE/runs into plans so I can work out what to build, it's pretty tedious so I'm not building as much as I could do as I can't bear doing it.

--

Dragonaire
Here there be Dragons
#511 - 2014-07-31 01:56:44 UTC
I know about corp/Facilities but if you read the patch notes seems to say there's now an industry section to the API Blink

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

CCP FoxFour
C C P
C C P Alliance
#512 - 2014-07-31 10:07:01 UTC
Dragonaire wrote:
Just been re-reading through the patch notes and noticed again the part about /industry/facilities/. It seems to be saying it a new API point but you can't access it. Is it going to be CREST only and notes were just unclear? or is there another reason we can't access it?


If ever in doubt about the route to a resource, go here: https://public-crest.eveonline.com/

Don't know why you cannot access it, the resource should be located at: https://public-crest.eveonline.com/industry/facilities/

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#513 - 2014-07-31 15:18:32 UTC
So work on the blueprints endpoint finally progressed today so a quick update:

I hope to have it on Sisi next week and TQ the week after, no promises though.

The cache time on it will be 24 hours.

Here is a sample row:

row itemID="1000000012172" locationID="60014929" typeID="23058" typeName="Dragonfly Blueprint" flagID="4" quantity="32" timeEfficiency="0" materialEfficiency="0" runs="-1"

locationID is the actual item location, in this case a Polaris station. The flagID is then where in that item it is. So 4 is my personal hanger. If it was owned by a corp then flagID would be the hanger division. Similarly if it's located in a POS structure that will be the hanger division.

So determining a blueprints location is a combination of the ownerID (which you should know based on your request), the locationID, and the flagID.

The endpoint will require CEO or directorship as there is no easy way for me to filter the results based on your characters roles.

I do want to mention that there is the possibility we will pull this endpoint and not release it if performance is really ****, but we will see.

The maximum results returned will be 200k which is far better than the 30k max of the client industry window.

The endpoint is restricted to the asset list access mask.

Thats all for now.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

ItsmeHcK1
Immortalis Inc.
Shadow Cartel
#514 - 2014-07-31 21:05:33 UTC
Not sure if this is the right thread, but meh...

It seems there's a bit of an inconsistency in the CharacterSheet API since Crius. Some skill levels are reported twice, and at different levels. (Drone Avionics in this particular case.)

Quote:
row typeID="3437" skillpoints="256000" level="5" published="1"
row typeID="3437" skillpoints="1415" level="2" published="1"
Calvin
Tritanium Forge Industries
#515 - 2014-07-31 22:27:53 UTC  |  Edited by: Calvin
CCP FoxFour wrote:

The endpoint will require CEO or directorship as there is no easy way for me to filter the results based on your characters roles.


Hi FoxFour,

I'm still rather concerned that blueprint PE & ME (especially ME) isn't also passed through to the new industry API. If I understand you right, even with industry roles in my corp, I (as a corp director) would need to manually share the blueprint PE & ME levels to any industrial subordinates (factory managers) for them to be able to run accurate calculations on cost of production from any corp BP's they used? There's no way I'm sharing my API key with a subordinate, and it'd be quite a hassle to update a blueprint list every day just so my industry subordinates could properly calculate cost of production.

Even with the blueprints API I still run into the problem of needing to cross-check whatever ME/TE research I've finished on a particular blueprint between the most recent blueprint API pull I have and whenever I'm looking to start (or have started) a production. Were they in the industry data all I'd need to do is pull the most recent industry job with that blueprint and extract the ME/TE data from there, making adjustments if the most recent job is a ME/TE job. That's one data pull per blueprint as opposed to what would be a variable number with the blueprint API.

Is it really so hard to bring back the blueprint ME/PE levels to the industry API? Having the blueprint ME/TE levels show there would solve the first problem, and alleviate the second.
Nick Actilete
The Scope
Gallente Federation
#516 - 2014-08-01 06:23:06 UTC
I'm very new to EVE, so I don't know a lot but it seems like from my limited experience it would be nice to have a way to see kills you were involved in (if you didn't get the KM) without having to worry about the crest link submitted to a killboard. Would it be possible to have a public API for all kills?

Sorry if this post is out of place, but it came to mind and this seemed to be the best place to submit it. Thanks for all the work so far.
SJ Astralana
Syncore
#517 - 2014-08-01 11:27:37 UTC
CCP FoxFour wrote:

The cache time on it will be 24 hours.


24 hours is fail. 23 hours is win.

Hyperdrive your production business: Eve Production Manager

CCP FoxFour
C C P
C C P Alliance
#518 - 2014-08-02 14:14:59 UTC
SJ Astralana wrote:
CCP FoxFour wrote:

The cache time on it will be 24 hours.


24 hours is fail. 23 hours is win.


If you check any of the XML resources you will find that they are all set to expire before the "documented" expiry time. When we say something is cached for an hour, we usually cache it for 55 minutes. Similarly when we say something is cached for 24 hours it's actually cached for 23.5 hours. We say 24 because if we said 23.5 people would go "waaaaaa make it 23" and so on and so on.

We like making sure your cron jobs don't get the same cached data.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#519 - 2014-08-02 14:16:49 UTC
Nick Actilete wrote:
I'm very new to EVE, so I don't know a lot but it seems like from my limited experience it would be nice to have a way to see kills you were involved in (if you didn't get the KM) without having to worry about the crest link submitted to a killboard. Would it be possible to have a public API for all kills?

Sorry if this post is out of place, but it came to mind and this seemed to be the best place to submit it. Thanks for all the work so far.


Not going to happen from our side. You can get that data from zKillbaord but we just don't store it in a way that allows us to query based on anything but final blow or victim really. Making all killmails public is something we have considered and will continue to consider, but nothing is going to happen with that for now.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#520 - 2014-08-02 14:17:50 UTC
Calvin wrote:
CCP FoxFour wrote:

The endpoint will require CEO or directorship as there is no easy way for me to filter the results based on your characters roles.


Hi FoxFour,

I'm still rather concerned that blueprint PE & ME (especially ME) isn't also passed through to the new industry API. If I understand you right, even with industry roles in my corp, I (as a corp director) would need to manually share the blueprint PE & ME levels to any industrial subordinates (factory managers) for them to be able to run accurate calculations on cost of production from any corp BP's they used? There's no way I'm sharing my API key with a subordinate, and it'd be quite a hassle to update a blueprint list every day just so my industry subordinates could properly calculate cost of production.

Even with the blueprints API I still run into the problem of needing to cross-check whatever ME/TE research I've finished on a particular blueprint between the most recent blueprint API pull I have and whenever I'm looking to start (or have started) a production. Were they in the industry data all I'd need to do is pull the most recent industry job with that blueprint and extract the ME/TE data from there, making adjustments if the most recent job is a ME/TE job. That's one data pull per blueprint as opposed to what would be a variable number with the blueprint API.

Is it really so hard to bring back the blueprint ME/PE levels to the industry API? Having the blueprint ME/TE levels show there would solve the first problem, and alleviate the second.


Would it help if I also allowed factory managers access? It would mean they would get ALL the corp blueprints though, not just the ones in hangers they have access to.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.