| Author |
Topic |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2008.11.25 00:21:00 - [ 151]
EveAI Live Version 1.0.0 has been released!Changes since last version:
- Support for the brand-new ServerStatus API
- Includes static object names by default
- More robust internals
- Cachefiles will be kept valid between EveAI Versions unless it is neccessary to replace them
Here is the new version: http://dl.eve-files.com/media/corp/Foxfire/EveAI_Live_1.0.0.zip |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2008.11.25 11:58:00 - [ 152]
|
 Dantes Revenge Caldari |
Posted - 2008.11.25 18:24:00 - [ 153]
Edited by: Dantes Revenge on 25/11/2008 18:24:43Excellent but one minor thing  Is it possible to have some documentation zipped with it so we know what calls we can make. It's great having the Wiki page but a .txt file list (format below) is all that's really required rather than go searching a web page for them all. {dll to use} Name.of.call(parameters, needed) :brief description. You have to make it a bit easier for us dumb programmers  Thanks for the great work. |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2008.11.27 00:27:00 - [ 154]
Originally by: Dantes Revenge Edited by: Dantes Revenge on 25/11/2008 18:24:43
Excellent but one minor thing 
Is it possible to have some documentation zipped with it so we know what calls we can make. It's great having the Wiki page but a .txt file list (format below) is all that's really required rather than go searching a web page for them all.
{dll to use} Name.of.call(parameters, needed) :brief description.
You have to make it a bit easier for us dumb programmers 
Thanks for the great work.
Well... Documentation... Sure... (Hides and vanished) No really: I know in this area EveAI Live is severely lacking. Am happy to take any user-contributions. I hope I find the time to at least explain the basics... |
 Dangrou Caldari The Einherji |
Posted - 2008.11.28 11:19:00 - [ 155]
I know its not EveAI live BUT does anyone have any .net code to grab the user information from the in game board? |
 Etil DeLaFuente |
Posted - 2008.11.29 12:01:00 - [ 156]
Any chance to get it open source ? (not like i can't use reflector anyway ;) ) |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2008.12.02 09:08:00 - [ 157]
Originally by: Etil DeLaFuente Any chance to get it open source ? (not like i can't use reflector anyway ;) )
I currently see not much sense in open sourcing it  . I will do so if I ever loose interest in developing it further. Till then feel free to use reflector to look at the internals.  |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2008.12.02 17:33:00 - [ 158]
|
 Commander Ashik Minmatar Jolly Roger Services
|
Posted - 2008.12.31 05:06:00 - [ 159]
How do I get it to grab the names of all the characters on the account with just the UserID and APIkey? |
 Borun Tal Minmatar Space Pods Inc |
Posted - 2008.12.31 18:15:00 - [ 160]
Edited by: Borun Tal on 31/12/2008 18:16:59 I'm sure this has been asked and I've just missed it in this thread, but has your API been tested with the lastest .Net Compact framework? I'm thinking about building a couple helper apps for Windows Mobile 6.x...
Thanks, and thanks for creating this great API! :)
Edit: also, how current is the Core static data? I'm not familiar with how often CCP updates the core data, so I'm curious if 1.0.2 has the latest QR updates... |
 John'eh Gallente Asteroid Belt Protection Services
|
Posted - 2009.01.05 16:14:00 - [ 161]
Where is the source code?
All I can find are binaries, and my anti virus flags them as a danger. |
 TeliaA |
Posted - 2009.01.12 19:48:00 - [ 162]
Edited by: TeliaA on 12/01/2009 19:48:54
|
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.12 19:50:00 - [ 163]
Originally by: Borun Tal Edited by: Borun Tal on 31/12/2008 18:16:59 I'm sure this has been asked and I've just missed it in this thread, but has your API been tested with the lastest .Net Compact framework? I'm thinking about building a couple helper apps for Windows Mobile 6.x...
Thanks, and thanks for creating this great API! :)
Edit: also, how current is the Core static data? I'm not familiar with how often CCP updates the core data, so I'm curious if 1.0.2 has the latest QR updates...
Haven't tested it with .Net Compact, but the APIs I use are pretty standard, so I assume it might work. The static data is current as of the current CCP static data update. |
 TeliaA |
Posted - 2009.01.12 19:52:00 - [ 164]
Edited by: TeliaA on 12/01/2009 19:52:17
|
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.12 19:53:00 - [ 165]
Originally by: John'eh Where is the source code?
All I can find are binaries, and my anti virus flags them as a danger.
Which anti virus program do you use? As I said in postings before: Feel free to look at the application using Reflector. |
 GLotsapot Amarr AeonTek |
Posted - 2009.01.17 00:24:00 - [ 166]
First, congrats on the EveAI 1.0.2 release. I used to use the libeveapi .NET API, but alas it hasn't been updated in a year and several function are now obsolete.  It's source is open, but I didn't wanna have to take on a dead project. Secondly, you have a problem with your Live.EveApi.GetCorporationStarbaseList() caching. My account has 2 characters, one with access to a POS, and the other one doesn't, both in different corperations. When I set the character I'm using to the first character with the station (Authentication.CharacterID = 12345) and get the starbases (GetCorporationStarbaseList) I can foreach through the list with no issues. If I then set it to the other character (without the POS) and get the list, I get the first characters station list returned. (and yes, I am destroying the object that holds the POS list before re-requesting. If I run it again for JUST the character without the station, I still get the other list. If I run it again, BUT this time delete the cache, it returns nothing like it should. If you would like, I can send you the code for ya to look at as it is a working example of it not working that may help you out. I would also have no issue sending my cache files for your reference. Just send me an evemail with an email address I can send to. |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.19 22:50:00 - [ 167]
Edited by: Amida Ta on 19/01/2009 22:51:20 I tried, but cannot really reproduce your problems (on the other hand my starbase lists are always empty, so not good to test). The best way of using EveAI is to create ONE EveApi Object per character (and not change the authentication details later to another character). Could you test that? If it works I'll release a new version that fixes the resource usage (now every EveApi Object recreates the static data in case you don't manually specify it).
And what did you mean by "If I run it again for JUST the character without the station, I still get the other list."? Even if restarting your application you get that effect? The cachefile should look like StarbaseListApi.12345678 where 12345678 is the characterID, so it should not mix up at the file level cache (EveAI also has two level memory caches that might be the cause) |
 Sodrus Muir |
Posted - 2009.01.22 14:25:00 - [ 168]
Originally by: Anne Sapyx
but
Private Sub BtnLookUp2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLookUp2.Click If TxtCharName.TextLength <> 0 Then Dim idlookup As CharacterIDLookupApi = New CharacterIDLookupApi()
idlookup.CharacterNamesToLookup.Add(TxtCharName.Text) idlookup.UpdateData()
LabCharID.Text = idlookup.FindEntry(TxtCharName.Text) End If End Sub
for CharacterIDLookupApi , returns -1.
I'm still getting this issue. Has this been resolved? |
 von Susla |
Posted - 2009.01.23 13:01:00 - [ 169]
Code: Quote: /*i use wrong auth data here*/ EveApi api = new EveApi(1,'a',1); CorporationSheet corp = api.GetCorporationSheet();
Result: System.NullReferenceException was unhandled Amida Ta, could you make special exception for case "wrong authentication data"? |
 Leyawiin |
Posted - 2009.01.23 18:27:00 - [ 170]
Originally by: GLotsapot First, congrats on the EveAI 1.0.2 release. I used to use the libeveapi .NET API, but alas it hasn't been updated in a year and several function are now obsolete. It's source is open, but I didn't wanna have to take on a dead project.
Not to hijack the thread or anything: I've just joined the libeveapi project and hope to start contributing. Any feedback on its current state is highly appreciated :). (Please use the google code page for that. Thanks :)) |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.26 00:46:00 - [ 171]
Originally by: Sodrus Muir
Originally by: Anne Sapyx
but
Private Sub BtnLookUp2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLookUp2.Click If TxtCharName.TextLength <> 0 Then Dim idlookup As CharacterIDLookupApi = New CharacterIDLookupApi()
idlookup.CharacterNamesToLookup.Add(TxtCharName.Text) idlookup.UpdateData()
LabCharID.Text = idlookup.FindEntry(TxtCharName.Text) End If End Sub
for CharacterIDLookupApi , returns -1.
I'm still getting this issue. Has this been resolved?
Confirmed bug. Seems CCP changed something with this api again. Fixed for next version 1.0.3. |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.26 00:47:00 - [ 172]
Originally by: von Susla Code:
Quote: /*i use wrong auth data here*/ EveApi api = new EveApi(1,'a',1); CorporationSheet corp = api.GetCorporationSheet();
Result: System.NullReferenceException was unhandled
Amida Ta, could you make special exception for case "wrong authentication data"?
Fixed for next version 1.0.3. The LastError should already contain AuthenticationError so you know the Authentication failed. |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.26 00:50:00 - [ 173]
|
 von Susla |
Posted - 2009.01.26 09:24:00 - [ 174]
Edited by: von Susla on 26/01/2009 09:25:03 Edited by: von Susla on 26/01/2009 09:24:33 Code: EveApi api = new EveApi(1,1,'wrong auth data'); CorporationSheet corp = api.GetCorporationSheet(); if(api.LastErrors.Count>0){ StringBuilder resultMsg = new StringBuilder(); foreach(EveApiError error in api.LastErrors){ resultMsg.AppendLine(error.ToString()); } MessageBox.Show(resultMsg.ToString()); }
Result: "ClientMissingCacheFile AuthenticationFailure ClientMissingCacheFile"
Expected result: "AuthenticationFailure"
|
 von Susla |
Posted - 2009.01.26 09:33:00 - [ 175]
Prerequisites: delete cache files
Code: CorporationSheet corp = api.GetCorporationSheet();
Result: files in cache AllianceDataApi.xml CorporationSheetApi.<some numbers>.xml
Expected result: CorporationSheetApi.<some numbers>.xml
Question: For what need AllianceDataApi.xml? |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.26 17:20:00 - [ 176]
Edited by: Amida Ta on 26/01/2009 17:31:57 Originally by: von Susla Edited by: von Susla on 26/01/2009 09:25:03 Edited by: von Susla on 26/01/2009 09:24:33 Code: EveApi api = new EveApi(1,1,'wrong auth data'); CorporationSheet corp = api.GetCorporationSheet(); if(api.LastErrors.Count>0){ StringBuilder resultMsg = new StringBuilder(); foreach(EveApiError error in api.LastErrors){ resultMsg.AppendLine(error.ToString()); } MessageBox.Show(resultMsg.ToString()); }
Result: "ClientMissingCacheFile AuthenticationFailure ClientMissingCacheFile"
Expected result: "AuthenticationFailure"
This is correct by design. If you are only interested in the global result use LastUpdateResult property. Exact meaning is: It checked for a cachefile first, but did not find any valid one. It then tried to update from online, but that didn't work. It then checked if ANY cachefile (even an expired one) exists, but not there either. |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.01.26 17:26:00 - [ 177]
Edited by: Amida Ta on 26/01/2009 17:50:30Edited by: Amida Ta on 26/01/2009 17:27:21 Originally by: von Susla Prerequisites: delete cache files
Code: CorporationSheet corp = api.GetCorporationSheet();
Result: files in cache AllianceDataApi.xml CorporationSheetApi.<some numbers>.xml
Expected result: CorporationSheetApi.<some numbers>.xml
Question: For what need AllianceDataApi.xml?
The CorporationSheet contains Information about the Alliance that this corporation is in (e.g. the name of the alliance). This is not part of the EVE Online CorporationSheet.aspx. There are several Apis where EveAI.Live will have to do several queries to the Eve Server (or use the local cachefiles if available) to get all relevant data. If you wish to exactly control that you have to use the "complex mode API", aka use the *Api Classes directly. But then you will have to do that "by hand" The "simple mode" will do that automatically for you. EveApi also has the two properties Resolve (for additional API calls) and ResolveCore (for static data) to control that behaviour. |
 GLotsapot Amarr AeonTek |
Posted - 2009.01.31 06:35:00 - [ 178]
Originally by: Amida Ta Edited by: Amida Ta on 19/01/2009 22:51:20 I tried, but cannot really reproduce your problems (on the other hand my starbase lists are always empty, so not good to test). The best way of using EveAI is to create ONE EveApi Object per character (and not change the authentication details later to another character). Could you test that? If it works I'll release a new version that fixes the resource usage (now every EveApi Object recreates the static data in case you don't manually specify it).
And what did you mean by "If I run it again for JUST the character without the station, I still get the other list."? Even if restarting your application you get that effect? The cachefile should look like StarbaseListApi.12345678 where 12345678 is the characterID, so it should not mix up at the file level cache (EveAI also has two level memory caches that might be the cause)
Confirmed that if I create a new AveAPI per character that I don't have the problem anymore. I don't like this approach personally though as it makes using the foreach method of the Lists useless to loop through. To further explain: Character1 is a director of corp, and we have 1 POS Character2 is a normal pilot in a corp, and therefor cannot get POS data Create an EveAPI with a characterid and fullapikey Step 1: Set the Authentication.CharacterID = Character1's id, and set the Authentication.StarbaseID = 0 Step 2: Dim oStarbaseList As New List(Of Live.Corporation.StarbaseListEntry) Step 3: oStarbaseList = api.GetCorporationStarbaseList() This populates oStarbaseList without issues at all.... so far so good. Do Step 1 again, but but this time set the Authentication.CharacterID to the second characters ID Step 2 give me a nice blank list as it should Step 3 does a couple things 1. It generates 3 LastErrors: ClientMissingCacheFile, AuthenticationCharacterMustBeDirectorOrCEO, and ClientMissingCacheFile 2. Populates oStarbaseList with the starbase list of Character1Now I expect the 1st part to generate those errors cause the character doesn't have access to get that data, and therefore cannot get/create that data, but the oStarbaseList should *NOT* get re-populated with the other characters starbase list. |
 Dalmarog Gallente Vergessene - Legion Desaster Area. |
Posted - 2009.01.31 11:41:00 - [ 179]
Edited by: Dalmarog on 31/01/2009 11:45:10 hi guys, can someone explain me how i can read out all my characters with this eve api? i dont know how to make the connection to the xml file... i want to use basic...
hope you can help me...
thx |
 Amida Ta German Mining and Manufacture Corp. |
Posted - 2009.02.04 08:40:00 - [ 180]
Originally by: Dalmarog Edited by: Dalmarog on 31/01/2009 11:45:10 hi guys, can someone explain me how i can read out all my characters with this eve api? i dont know how to make the connection to the xml file... i want to use basic...
hope you can help me...
thx
Something like: EveApi api = new EveApi (userid, apikey); something = api.GetAccountEntries (); |