open All Channels
seplocked EVE Technology Lab
blankseplocked EveAI Live (EVE-Online API/class library for .Net/ C#/ VB.Net)
 
This thread is older than 90 days and has been locked due to inactivity.


 
Pages: first : previous : 1 [2] 3 4 5 6 7 8 9 ... : last (26)

Author Topic

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.01.19 11:59:00 - [31]
 

Well the problem is that I don't have any stations with my API-Testcharacter, so it's hard to tell which values I'll always receive.
Second problem ist: The functionallity is alread implemented. However the data needed for the moon-info is huge (celestials table from the static data) so I'm not embedding it into the core dll. However there is a mechanism to use the data from an external file (I'll upload the file to eve-files):

EveAI.Live full static data

In code you need to do:

api = new EveApi (1, "", 1, 1000, false); // false is important
EveAI.DataCore core = new EveAI.DataCore ();
EveAI.DataReader reader = new EveAI.DataReader (core, Environment.CurrentDirectory); // Set directory for EveAI.Data.zip
reader.Read (EveAI.DataTypes.BasicMapData | EveAI.DataTypes.Products);
api.EveApiCore = core;


The reader.Read specifies which data to read. If you call it without parameters it will read all data (however this will take some time).
You need

  • DataTypes.BasicMapData, DataTypes.Products basically for everything

  • DataTypes.Celestials for Moon data

  • DataTypes.Production for Assembly Line data

  • DataTypes.Names for names (most names can be determined without this)


New Version:
EveAI.Live 0.9.4 Preview

P.S. You could delete some data from the static data if you don't need it (especially dbo_mapCelestialStatistics.csv which saves over 18MB alone)

Iown Ewe
Anarchy Unlimited Holdings Corporation
Anarchy Unlimited
Posted - 2008.01.24 11:17:00 - [32]
 

No source code?

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.01.24 16:59:00 - [33]
 

Originally by: Iown Ewe
No source code?

No, currently not. But feel free to look at the code using Reflector or a similar application.

Kaska102
Caldari
Posted - 2008.01.25 05:37:00 - [34]
 

Edited by: Kaska102 on 25/01/2008 05:37:28
Iown,
If you want to look at some C# sourcecode on how to do this, some other guys and I have put together something similar to this, it's open source and hosted on google code: http://myeve.eve-online.com/ingameboard.asp?a=topic&threadID=688556

La Dudette
State War Academy
Posted - 2008.01.26 21:39:00 - [35]
 

Hi Amida.. any chance of adding that cachedUntil property?

Thx

La Dudette
State War Academy
Posted - 2008.01.27 16:27:00 - [36]
 

Edited by: La Dudette on 27/01/2008 17:13:16
I've got a further problem now, actually.

Calling the API a few times today, files are not being retrieved. To be precise: accountdataapi, alliancedataapi, conquerablestations and corporationsheetapi work. All others are still dated 19/01/2007 in the cache folder after calling the API. Any idea what might be happening?

Edit: I found out what happened. I used my limited API key this time. However, while the cache files were still there, instead of giving me an error saying authentication level not high enough, it just returned the cached data. When I deleted the files I got the error as intended.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.01.28 17:55:00 - [37]
 

Originally by: La Dudette
Hi Amida.. any chance of adding that cachedUntil property?

Thx

cachedUntil will not help you. It has nothing to do with the time the data was updated on the server. It contains the time at which the client is allowed to make the next request.
You can use LastUpdateTime to get the most accurate available info.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.01.28 18:01:00 - [38]
 

Edited by: Amida Ta on 28/01/2008 18:05:41
Originally by: La Dudette
Edited by: La Dudette on 27/01/2008 17:13:16
I've got a further problem now, actually.

Calling the API a few times today, files are not being retrieved. To be precise: accountdataapi, alliancedataapi, conquerablestations and corporationsheetapi work. All others are still dated 19/01/2007 in the cache folder after calling the API. Any idea what might be happening?

Edit: I found out what happened. I used my limited API key this time. However, while the cache files were still there, instead of giving me an error saying authentication level not high enough, it just returned the cached data. When I deleted the files I got the error as intended.



This is the default setting for the Api. It will try the cache first, if that fails it will try to load from the web and if that fails it will fallback to the cache as last resort.

You may want to use the "advanced mode" api and just call it directly instead of through the static EveApi class. Example:

AuthenticationData auth = new AuthenticationData ();
auth.UserID = 4683469;

StarbaseListApi starbaseApi = new StarbaseListApi ();
starbaseApi.AuthenticationData = auth;

EveApiBase.UpdateResult result = starbaseApi.UpdateData (EveApiBase.UpdateCharaceristics.OnlineCached);


Using UpdateCharaceristics.OnlineCached will prevent the last line fallback and just return an error if the cache is invalid/expired and new data cannot be retrieved from the web. You also get a lot more information from the individual Apis.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.01.29 10:13:00 - [39]
 

EveAI.Live 0.9.5 Preview

0.9.5 is live.
It adds some convenience functions to the Starbase details api like required fuel and time the starbase can stay online/reinforced with its current contents.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.02.05 07:51:00 - [40]
 

New version is out:
EveAI.Live 0.9.6 Preview

With this version the libraries are digitally signed and thus strong-named which makes it basically impossible to modify the assemblies without knowing about the modification.
This will enhance the security of applications using EveAI.

Xaroth Brook
Minmatar
BIG
Gentlemen's Agreement
Posted - 2008.02.25 10:48:00 - [41]
 

Any chance you can check if it compiles to Mono 1.2.5+ ? that way I can start making some more advanced cronjobs for my own char stuffs

Bleu Meurtre
Posted - 2008.02.28 23:11:00 - [42]
 

Edited by: Bleu Meurtre on 28/02/2008 23:13:00
I have begun work on an app using the EveAI Live api set. however, I am getting errors on connection (ClientMissingCacheFile) and need to know if you have error documentation and what it means, or perhaps documentation on the api itself.

I have been running your test app and it seems to work fine so far as an example, and I have looked inside it via reflector, but I dont really see anything that tells me what the errors refer to.

Thanks!

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.02.29 07:53:00 - [43]
 

Originally by: Xaroth Brook
Any chance you can check if it compiles to Mono 1.2.5+ ? that way I can start making some more advanced cronjobs for my own char stuffs

It works well with Mono 1.2.6 (including the demo app). The library will probably work with any mono version that is more than a few years old.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.02.29 08:00:00 - [44]
 

Originally by: Bleu Meurtre
Edited by: Bleu Meurtre on 28/02/2008 23:13:00
I have begun work on an app using the EveAI Live api set. however, I am getting errors on connection (ClientMissingCacheFile) and need to know if you have error documentation and what it means, or perhaps documentation on the api itself.

I have been running your test app and it seems to work fine so far as an example, and I have looked inside it via reflector, but I dont really see anything that tells me what the errors refer to.

Thanks!


Yes, the documentation is a "little" bit short ;)
To check for errors you should use LastUpdateResult property of the EveAPI class (if you are using the EveAPI class).
It will tell you if (and how) the update succeded. The LastErrors property that you have been looking at reveals what happened internally (e.g. in your case that there was no (valid) cachefile available). You usually do not need to use that property.

KOMMAP
Caldari
Mazuto Combine
Posted - 2008.03.01 14:32:00 - [45]
 

Hello Amida Ta,
Thank you for your perfect framework.
Could you please to add http proxy support (Net.WebProxy class)?
It will be very helpfull for everyone who using this framework from behind the proxy.

Bleu Meurtre
Posted - 2008.03.02 08:16:00 - [46]
 

Originally by: Amida Ta
Originally by: Bleu Meurtre
Edited by: Bleu Meurtre on 28/02/2008 23:13:00
I have begun work on an app using the EveAI Live api set. however, I am getting errors on connection (ClientMissingCacheFile) and need to know if you have error documentation and what it means, or perhaps documentation on the api itself.

I have been running your test app and it seems to work fine so far as an example, and I have looked inside it via reflector, but I dont really see anything that tells me what the errors refer to.

Thanks!


Yes, the documentation is a "little" bit short ;)
To check for errors you should use LastUpdateResult property of the EveAPI class (if you are using the EveAPI class).
It will tell you if (and how) the update succeded. The LastErrors property that you have been looking at reveals what happened internally (e.g. in your case that there was no (valid) cachefile available). You usually do not need to use that property.


Thanks for the info, and I am using that prop from that class. However, it just returns a 4. When I pipe out the .Error to a string, it says not updated. How do these errors work?

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.03 23:18:00 - [47]
 

Originally by: Bleu Meurtre
Originally by: Amida Ta
Originally by: Bleu Meurtre
Edited by: Bleu Meurtre on 28/02/2008 23:13:00
I have begun work on an app using the EveAI Live api set. however, I am getting errors on connection (ClientMissingCacheFile) and need to know if you have error documentation and what it means, or perhaps documentation on the api itself.

I have been running your test app and it seems to work fine so far as an example, and I have looked inside it via reflector, but I dont really see anything that tells me what the errors refer to.

Thanks!


Yes, the documentation is a "little" bit short ;)
To check for errors you should use LastUpdateResult property of the EveAPI class (if you are using the EveAPI class).
It will tell you if (and how) the update succeded. The LastErrors property that you have been looking at reveals what happened internally (e.g. in your case that there was no (valid) cachefile available). You usually do not need to use that property.


Thanks for the info, and I am using that prop from that class. However, it just returns a 4. When I pipe out the .Error to a string, it says not updated. How do these errors work?


Hmm, which programing language do you use?
LastUpdateResult returns a UpdateResult enum value. And a value of 4 would be UpdateResult.ErrorFromOnlineAuthenticationFailed which means that some of your login data (your api key or userid is incorrect or missing)

Bleu Meurtre
Posted - 2008.03.04 03:49:00 - [48]
 

Edited by: Bleu Meurtre on 04/03/2008 04:29:57
Originally by: Amida Ta
Originally by: Bleu Meurtre
Originally by: Amida Ta
Originally by: Bleu Meurtre
Edited by: Bleu Meurtre on 28/02/2008 23:13:00
I have begun work on an app using the EveAI Live api set. however, I am getting errors on connection (ClientMissingCacheFile) and need to know if you have error documentation and what it means, or perhaps documentation on the api itself.

I have been running your test app and it seems to work fine so far as an example, and I have looked inside it via reflector, but I dont really see anything that tells me what the errors refer to.

Thanks!


Yes, the documentation is a "little" bit short ;)
To check for errors you should use LastUpdateResult property of the EveAPI class (if you are using the EveAPI class).
It will tell you if (and how) the update succeded. The LastErrors property that you have been looking at reveals what happened internally (e.g. in your case that there was no (valid) cachefile available). You usually do not need to use that property.


Thanks for the info, and I am using that prop from that class. However, it just returns a 4. When I pipe out the .Error to a string, it says not updated. How do these errors work?


Hmm, which programing language do you use?
LastUpdateResult returns a UpdateResult enum value. And a value of 4 would be UpdateResult.ErrorFromOnlineAuthenticationFailed which means that some of your login data (your api key or userid is incorrect or missing)


I got it. I was setting the wrong property in the Authentication piece.Embarassed

Thanks for the help. Im sure you will hear from me again. Very Happy

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.06 09:10:00 - [49]
 

Edited by: Amida Ta on 06/03/2008 09:10:50
Edited by: Amida Ta on 06/03/2008 09:10:08
Originally by: KOMMAP
Hello Amida Ta,
Thank you for your perfect framework.
Could you please to add http proxy support (Net.WebProxy class)?
It will be very helpfull for everyone who using this framework from behind the proxy.

Just uploaded EveAI.Live 0.9.7 Preview with Proxy support (Proxy property for both the EveApi Class and the "complex mode" Api Classes)

Bleu Meurtre
Posted - 2008.03.06 14:18:00 - [50]
 

I have been scanning through the api's as I am looking for a way to gather current pricing information on items in a characters asset list. Is there a way to gather that information? For example, I would like to, by item type, gather the average selling and buying price by Region or System.

Did I miss it or is it not there? If it is not there, is it possible to add?

telinette
Posted - 2008.03.09 22:56:00 - [51]
 

Hello, i m using EveAI dll to make corporation website :)

i'have done this

List<EveAI.Live.Corporation.MemberTrackingEntry> MembersList = api.GetCorporationMemberTracking();
lsMembers.DataSource = api.GetCorporationMemberTracking();
lsMembers.DataBind();

work as well i juste got a problem with accent encoding

on MemberTrackingEntry.Title i got "Magnifique Déesse des îles"

I have define UTF-8 on my web config but still change nothing ( <globalization fileEncoding="UTF-8"/>)

In debug mode the "GetCorporationMemberTracking" send me wrong character, so i thing it's too late for work on it)

Any idea to fix accent ?

(using C# / VS 2008 / FrameWork 3.5 / windows XP pro)

Rgds,

Tely


Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.11 23:30:00 - [52]
 

Originally by: telinette
Hello, i m using EveAI dll to make corporation website :)

i'have done this

List<EveAI.Live.Corporation.MemberTrackingEntry> MembersList = api.GetCorporationMemberTracking();
lsMembers.DataSource = api.GetCorporationMemberTracking();
lsMembers.DataBind();

work as well i juste got a problem with accent encoding

on MemberTrackingEntry.Title i got "Magnifique Déesse des îles"

I have define UTF-8 on my web config but still change nothing ( <globalization fileEncoding="UTF-8"/>)

In debug mode the "GetCorporationMemberTracking" send me wrong character, so i thing it's too late for work on it)

Any idea to fix accent ?

(using C# / VS 2008 / FrameWork 3.5 / windows XP pro)

Rgds,

Tely




Hmm - I don't have any data to test this (in my corp all people only have standard ASCII character names.

Just uploaded EveAI.Live 0.9.8 Preview that probably should fix the issue, but not tested at all, so please tell me if it works.

telynette
Posted - 2008.03.15 13:32:00 - [53]
 

Yeah that working well !

Thank a lot

TeliaA
Posted - 2008.03.18 13:40:00 - [54]
 

Edited by: TeliaA on 18/03/2008 13:42:12
solved already

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.18 13:43:00 - [55]
 

Originally by: Bleu Meurtre
I have been scanning through the api's as I am looking for a way to gather current pricing information on items in a characters asset list. Is there a way to gather that information? For example, I would like to, by item type, gather the average selling and buying price by Region or System.

Did I miss it or is it not there? If it is not there, is it possible to add?

It's possible to add this, however this is not part of the official APIs but supplied by third-party sites.
For security considerations EveAI.Live only makes direct web-connections to CCP sites and nowhere else, so I'm not going to add that directly into the library.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.23 08:55:00 - [56]
 

Unless somebody has some more suggestions for EveAI.Live the next version of the library will be version 1.0.

Tak nTar
Gallente
Liberal High Security Division
Liberal Alliance
Posted - 2008.03.24 11:20:00 - [57]
 

Thx, this lib is a great help for me !
To add another solution for me as trader, I would like to read all the goods at the different locations to organize my trade.
Is that possible with the "GetCharacterAssets"-function ?
Or is that a function only for chars in corporations ?
And if not, do you have an idea, how I can solve that for a char in a NPC-corp?
Thx in advance,
Smile Tak

Rico Darksun
Posted - 2008.03.29 21:22:00 - [58]
 

I'm using the latest version 0.9.8 and I am running into null exceptions generated by the "UpdateData" method:

objCharSheetAPI = new EveAI.Live.Character.CharacterSheetApi();
objCharSheetAPI.AuthenticationData = inAPI.Authentication;

numApiResult = objCharSheetAPI.UpdateData(EveApiBase.UpdateCharaceristics.Default);

The last line generates an error:

System.NullReferenceException was caught
Message="Object reference not set to an instance of an object."
Source="EveAI.Live"
StackTrace:
at EveAI.Live.Character.CharacterSheetApi.ProcessXMLData(XmlNode resultNode, Boolean clearExistingData)
at EveAI.Live.EveApiBase.UpdateDataInternal(String data, XmlDocument& document, Boolean liveData, Boolean ignoreCacheDate)
at EveAI.Live.EveApiBase.UpdateDataFromWeb()
at EveAI.Live.EveApiBase.UpdateData(UpdateCharaceristics updateCharacteristics)

Looking at the Character Sheet API object, it seems that it is hitting this when trying to parse the skills, they are the only thing empty. This had been working perfectly fine for several days and just showed up in recent tests.

Amida Ta
German Mining and Manufacture Corp.
Posted - 2008.03.30 11:18:00 - [59]
 

It seems that EVE currently has severe problems serving the API data.
I cannot get the skill tree AT ALL.
And the reason it failed for you is because the skill level information is just missing from the current API calls.

I tried some more robust parsing. However there is nothing intelligent that you can do in this case. I could just fill up values with nulls, which will also likely break using Applications using EveAI.
So lets hope the API works correctly soon...

Dakmarid Darksun
Posted - 2008.04.06 16:26:00 - [60]
 

Previously, all the skill ids were getting automatically resolved to their names. Now this is not happening in the CharacterSheet API and SkillInTraining API. Is this due to XML changes, or was this not implemented and I was just being spoiled by pulling this through the EveAI API before?


Pages: first : previous : 1 [2] 3 4 5 6 7 8 9 ... : last (26)

This thread is older than 90 days and has been locked due to inactivity.


 


The new forums are live

Please adjust your bookmarks to https://forums.eveonline.com

These forums are archived and read-only