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.
 

EveAI Live (EVE-Online API/class library for .Net/ C#/ VB.Net)

Author
Thak Dallocort
Rogues and Destitutes
#201 - 2014-01-14 14:59:42 UTC
Thak Dallocort wrote:
I am beginning to want to experiment with developing some thing with the EVE Api via some Excel and C# . I have been trying to obtain the static database file information at http://community.eveonline.com/community/fansites/toolkit and the dotNET EveAI files at http://wiki.eve-id.net/EveAI?title=Special:UserLogin&returnto=EveAI.

However, the Renders static database file seems to be unavailable and the EveAI 2.6.6.0 files are also not accessible.

Is anyone else having these issues?




The Renders static database component at at http://community.eveonline.com/community/fansites/toolkit is back online but I am still having issues with the EveAI link. Anyone else?
Dietes Ditarei
My Best Friend Is An Emu
Get Jiggy Wit It
#202 - 2014-01-14 22:12:32 UTC  |  Edited by: Dietes Ditarei
I can't access anything that uses eve-files atm.

Edit: Now that Eve-Files is back up I still cannot download it... Just gives me a 404 everytime I try to download.
Han Eto
Caldari Provisions
Caldari State
#203 - 2014-01-16 19:01:34 UTC
Hello,

Firstly thanks for the great work!

Are you going to do a new release for Rubicon?

Greetings
Jognu
French Kiss Singularity
#204 - 2014-01-18 17:20:52 UTC
Yes, new release is coming !

It takes me some time, the last CCP DB export required SQL Server 2012 to be restored.

EveAI developper: https://forums.eveonline.com/default.aspx?g=posts&t=21803

Jognu
French Kiss Singularity
#205 - 2014-01-19 18:26:53 UTC
New release !
Quote:
Version 2.6.7.0 (temporary link)

EveAI developper: https://forums.eveonline.com/default.aspx?g=posts&t=21803

Gribzor
Redeye Inc.
#206 - 2014-01-29 11:39:31 UTC
Hi Guys,

Is there a api function that returns when a character has logged on?

Cheers
Zenith Orion
Remnants of War
#207 - 2014-01-30 15:06:45 UTC
Is it possible to override the api.relativepath?

Just wondering, as i can't find away to do it, i'm purely out of curiosity trying to see if the code can be used to retrieve killmail data from zkillboard as the api output is identical to what is gotten from the ccp api.

I'm already using api.configuration.base address to set the uri, but pretty sure i need to set the relativepath to nothing.

Cheers
Zenith Orion
Remnants of War
#208 - 2014-01-30 15:18:14 UTC
Gribzor wrote:
Hi Guys,

Is there a api function that returns when a character has logged on?

Cheers



I think you need to use Corp Member Tracking see this: Corp Member Tracking API

Or for EVEAI i believe it is MemberTrackingApi
Thak Dallocort
Rogues and Destitutes
#209 - 2014-01-31 03:13:00 UTC
Has anyone noticed that under the dbo.invTypes table that the descriptions regarding ship hulls no longer include the hull bonus attributes?

Is this an oversight, was it done on purpose, or did that information transfer to a new field in another table?
Thak Dallocort
Rogues and Destitutes
#210 - 2014-01-31 03:14:53 UTC
Thak Dallocort wrote:
Has anyone noticed that under the dbo.invTypes table that the descriptions regarding ship hulls no longer include the hull bonus attributes?

Is this an oversight, was it done on purpose, or did that information transfer to a new field in another table?



Oh, and this is in regards to the Rubicon 1.1 static database from the Communities/Fansites/Toolkit released on Jan 28, 2014
Kaydar ArX
Scorch Inc.
#211 - 2014-02-13 10:44:36 UTC
Hello guys, and first of all, thanks Jognu for keeping this alive.

Noob questions ahead, but I guess you have to start somewhere.

1- I managed to retrieve and display my character assets, or at least partially, not sure if api.GetCharacterAssets() also returns the content of containers in station.
So I get a list of asset, with itemID, ItemType etc, but how do I convert those datas to the ingame items names?


2- I'd like to sort that list of assets per solar system (every assets located in Jita for example) using LocationSolarSystem. It looked easy...But I can't find a way to compare an object of type EveAI.Map.SolarSystem to a String ("Jita").

Thanks in advance!
Saulvin
Merkabah Industries
Invisible Exchequer
#212 - 2014-02-13 18:05:09 UTC
Kaydar ArX wrote:
Hello guys, and first of all, thanks Jognu for keeping this alive.

Noob questions ahead, but I guess you have to start somewhere.

1- I managed to retrieve and display my character assets, or at least partially, not sure if api.GetCharacterAssets() also returns the content of containers in station.
So I get a list of asset, with itemID, ItemType etc, but how do I convert those datas to the ingame items names?


2- I'd like to sort that list of assets per solar system (every assets located in Jita for example) using LocationSolarSystem. It looked easy...But I can't find a way to compare an object of type EveAI.Map.SolarSystem to a String ("Jita").

Thanks in advance!


1) yes the call will return contents of containers but not as a flat list.
you will have to trace container contents manually.
the items name can be fetched using

EveApi.EveApi.Core.FindProductType(asset.TypeID);

here some example code via pastebin as forum refuses it complaining its containing html code.

ProcessContents(..)

2) what you can do is group the asset list by solar system using the name;

var groupedBySolarSystem = contents.GroupBy(p => p.LocationSolarsystem.Name);

then deal with each solar system separately.
or have the list sorted by solar system name

var sortedBySolarSystem = contents.OrderBy(p => p.LocationSolarsystem.Name);
and go from there.

hope it helps

Saulvin


Angolius Hojo
Critical Degree
#213 - 2014-03-04 00:41:40 UTC
Thanks for the API wrapper, nice and easy to use :)

But I am struggling a bit with one thing, I am trying to implement an "Edit API key" feature, but i'm finding it hard to be able to verify that both the Key ID and the Verification code are working. I can get it to detect when it's not a valid Key ID but having a harder time checking that the verification code is correct.


It could be a good idea to add a method in the EveApi class, that test if the key is valid. And if there already is tell me, but I haven't found one.
Averius Kusoni
Finicky Financiers
#214 - 2014-03-07 06:32:46 UTC
Question, is it possible to look-up(and return) an Asset type via a TypeID? I'm interested in using the Eve-Central API against a list of TypeIDsI. Any suggestions?
Xekirei
Caldari Provisions
Caldari State
#215 - 2014-03-15 10:02:07 UTC
Could anyone write a little example to obtain skills required for a ship from datacore or EveAI lib? thank you.
Wafflehead
Garoun Investment Bank
Gallente Federation
#216 - 2014-03-22 11:47:29 UTC  |  Edited by: Wafflehead
Nope still getting errors when trying to use the new dlls.

System.IO.FileLoadException: Could not load file or assembly 'EveAI.Live, Version=2.6.7.0, Culture=neutral, PublicKeyToken=670e812152ebd673' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'EveAI.Live, Version=2.6.7.0, Culture=neutral, PublicKeyToken=670e812152ebd673'
Jognu
French Kiss Singularity
#217 - 2014-04-21 14:11:06 UTC
New release with source code on a public repository should coming soon !

EveAI developper: https://forums.eveonline.com/default.aspx?g=posts&t=21803

Marcus Ziz
Limitless Momentum
#218 - 2014-05-03 00:33:27 UTC
Hi everyone,

Did any of you have any success in running EveAI under Linux using Mono? I can't seem to get it to work...

From what I can tell, it seems that EveAI can't find or create the cache file, and when using the advanced mode API without cache (.UpdateData(EveApiBase.UpdateCharaceristics.OnlineOnly)), it still returns ErrorGeneric with ClientDownloadError in the list of errors.
The only hint I could find was that this might be caused by proxy settings, but I don't think I have those on my server -- it is a hosted server though, so I guess it is not impossible. Every other program I've tried seems to run without any special settings, though.

My test application:
Quote:
static void Main()
{
EveApi api = new EveApi(9999, "CodeCodeKeyCodeCode", 9999);

CharacterSheet charSheet = api.GetCharacterSheet();

Console.WriteLine("Result: " + api.LastUpdateResult);

if (api.LastErrors.Count > 0)
{
foreach (var err in api.LastErrors)
Console.WriteLine("\t" + err);
}
else
{
Console.WriteLine("Character " + charSheet.Name + " has " + charSheet.SkillpointTotal + " skillpoints");
Console.WriteLine("Skills:");
foreach (CharacterSheet.LearnedSkill skill in charSheet.Skills)
Console.WriteLine(skill);
}

Console.ReadKey();
}

This runs fine under Windows, but returns this under Linux:
Quote:
Result: ErrorGeneric
ClientMissingCacheFile
ClientDownloadError
ClientMissingCacheFile


Also, it takes about 2 minutes or so for the output to finally show up, no clue if that is relevant though.


Any ideas?


The server is running Ubuntu 12.04.4 LTS, with an up-to-date Mono (compiled from current git one day ago). I am compiling the source using Visual Studio 2013 Express, and then copy it to my Linux server.
Marcus Ziz
Limitless Momentum
#219 - 2014-05-04 11:15:31 UTC  |  Edited by: Marcus Ziz
Found it!

EXPLANATION
The "ClientDownloadError" was caused by Mono not having a pre-populated SSL Certfificate Store containing trusted root certificates, like windows does. This caused an SSL verification error in the WebClient class used by EveAI, causing the whole thing to fail. It also happens when running the app with Mono under Windows, although there it always threw the SSL certificate error even when querying HTTP instead of HTTPS, while under Linux it returned with a timeout in the HTTP case (which explained the long wait for any output in my last post).

HOW TO FIX


Hope this helps :)

Update: ClientMissingCacheFile is a benign error message, as long as the Result is okay, this can be ignored. Everything is working now, happy days :)
Drasil
Blue Horse Exploration LTD
#220 - 2014-05-23 12:07:23 UTC  |  Edited by: Drasil
I have some problems with getting mailbodies (text from the mails). I can get mailmessages (The subject) just fine, but mailbodies are empty. Any idear what I'm doing wrong here?

Quote:
List mailBody = api.GetCharacterMailBodies();
Console.Write(mailBody.Count); // returns 0
mailBody.ForEach(Console.WriteLine);


I'm trying this on a full api. Can anyone help me how to get mailbodies