public void Setup() { Console.WriteLine("Setting up authentication."); Console.WriteLine(); token = new SsoToken(); Console.WriteLine("SSO Token object created."); Console.WriteLine(); config = Settings.Config.ConfigOutput(); Console.WriteLine($"config created."); Console.WriteLine($"EsiUrl = {config.Value.EsiUrl}"); Console.WriteLine($"DataSource = {config.Value.DataSource}"); Console.WriteLine($"ClientId = {config.Value.ClientId}"); Console.WriteLine($"SecretKey = {config.Value.SecretKey}"); Console.WriteLine($"CallbackUrl = {config.Value.CallbackUrl}"); Console.WriteLine($"UserAgent = {config.Value.UserAgent}"); Console.WriteLine(); string stupidlyLongString = "esi-calendar.respond_calendar_events.v1 esi-calendar.read_calendar_events.v1 esi-location.read_location.v1 esi-location.read_ship_type.v1 esi-mail.organize_mail.v1 esi-mail.read_mail.v1 esi-mail.send_mail.v1 esi-skills.read_skills.v1 esi-skills.read_skillqueue.v1 esi-wallet.read_character_wallet.v1 esi-wallet.read_corporation_wallet.v1 esi-search.search_structures.v1 esi-clones.read_clones.v1 esi-characters.read_contacts.v1 esi-universe.read_structures.v1 esi-bookmarks.read_character_bookmarks.v1 esi-killmails.read_killmails.v1 esi-corporations.read_corporation_membership.v1 esi-assets.read_assets.v1 esi-planets.manage_planets.v1 esi-fleets.read_fleet.v1 esi-fleets.write_fleet.v1 esi-ui.open_window.v1 esi-ui.write_waypoint.v1 esi-characters.write_contacts.v1 esi-fittings.read_fittings.v1 esi-fittings.write_fittings.v1 esi-markets.structure_markets.v1 esi-corporations.read_structures.v1 esi-corporations.write_structures.v1 esi-characters.read_loyalty.v1 esi-characters.read_opportunities.v1 esi-characters.read_chat_channels.v1 esi-characters.read_medals.v1 esi-characters.read_standings.v1 esi-characters.read_agents_research.v1 esi-industry.read_character_jobs.v1 esi-markets.read_character_orders.v1 esi-characters.read_blueprints.v1 esi-characters.read_corporation_roles.v1 esi-location.read_online.v1 esi-contracts.read_character_contracts.v1 esi-clones.read_implants.v1 esi-characters.read_fatigue.v1 esi-killmails.read_corporation_killmails.v1 esi-corporations.track_members.v1 esi-wallet.read_corporation_wallets.v1 esi-characters.read_notifications.v1 esi-corporations.read_divisions.v1 esi-corporations.read_contacts.v1 esi-assets.read_corporation_assets.v1 esi-corporations.read_titles.v1 esi-corporations.read_blueprints.v1 esi-bookmarks.read_corporation_bookmarks.v1 esi-contracts.read_corporation_contracts.v1 esi-corporations.read_standings.v1 esi-corporations.read_starbases.v1 esi-industry.read_corporation_jobs.v1 esi-markets.read_corporation_orders.v1 esi-corporations.read_container_logs.v1 esi-industry.read_character_mining.v1 esi-industry.read_corporation_mining.v1 esi-planets.read_customs_offices.v1 esi-corporations.read_facilities.v1 esi-corporations.read_medals.v1 esi-characters.read_titles.v1 esi-alliances.read_contacts.v1 esi-characters.read_fw_stats.v1 esi-corporations.read_fw_stats.v1 esi-characterstats.read.v1"; Scopes.AddRange(stupidlyLongString.Split(' ')); Console.WriteLine($"Scopes file loaded. {Scopes.Count} scopes added."); _client = new EsiClient(config); Console.WriteLine("Created EsiClient object."); Console.WriteLine(); }
/// <summary> /// Invites the pilot to a fleet. If a specific squad is not specified they will be invited to the default squad. /// </summary> /// <param name="fleetBoss">Fleet Boss explicit cast as AuthorizedCharacterData</param> /// <param name="fleetId">Target fleet Id</param> /// <param name="squadId">Target squad Id</param> /// <param name="pilotId">Invitee Id</param> public static async Task <object> FleetInvite(AuthorizedCharacterData fleetBoss, long fleetId, long squadId, long wingId, int pilotId) { try { EsiClient x = GetEsiClient(); x.SetCharacterData(fleetBoss); EsiResponse <string> response = await x.Fleets.InviteCharacter(fleetId, pilotId, ESI.NET.Enumerations.FleetRole.SquadMember, wingId, squadId); if (response.StatusCode != HttpStatusCode.OK) { s_Log.LogError("{0} error search API '{1}': {2}", response.StatusCode, response.Endpoint, response.Message); Exception ex; if (response.Message.Contains("'error_label': 'FleetCandidateOffline', 'error_dict'")) { ex = new Exception("Fleet Candidate Offline"); } else { ex = new Exception(response.Message); } throw new Exception("Fleet Invite Failed", ex); } return(null); } catch (Exception ex) { //s_Log.LogError("{0} error searching API '{1}': {2}", FleetMembers_response.StatusCode, FleetMembers_response.Endpoint, FleetMembers_response.Message); //throw new Exception(FleetLayout_response.ErrorType().ToString()); throw new NotImplementedException(); } }
public static void EnsureInit() { s_Log = Services.ApplicationLogging.CreateLogger("EsiWrapper"); if (s_client == null) { try { Env.Load(); IOptions <EsiConfig> options = Options.Create <EsiConfig>(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, UserAgent = "Imperium Incursions Waitlist. Contact Caitlin Viliana", ClientId = Env.GetString("eve_clientID"), SecretKey = Env.GetString("eve_clientSecret"), AuthVersion = AuthVersion.v2 }); s_client = new EsiClient(options); } catch (Exception err) { s_Log.LogError("Error initializing ESI Client: {0}", err.Message); } } }
public CollectData() { RunningConfig = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/latest/", DataSource = DataSource.Tranquility, ClientId = "f5a0a03c5af74f6884a278675ad3411f", SecretKey = "UhjDXz5POW05q18cBSrVgwdNEYzD1fkOlRkTQMb8", CallbackUrl = "", UserAgent = "" }); TestingConfig = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/dev", DataSource = DataSource.Tranquility, ClientId = "f5a0a03c5af74f6884a278675ad3411f", SecretKey = "UhjDXz5POW05q18cBSrVgwdNEYzD1fkOlRkTQMb8", CallbackUrl = "", UserAgent = "" }); EsiClient ProdClient = new EsiClient(RunningConfig); EsiClient TestClient = new EsiClient(TestingConfig); }
public EVEEsiInformation() { var currentDir = Directory.GetCurrentDirectory(); string path = currentDir + "\\credentials.txt"; IOptions <EsiConfig> config; // This text is added only once to the file. if (!File.Exists(path)) { // Create a file to write to. Console.WriteLine("no file"); throw new Exception("No Credentials Present"); } else { string[] lines = System.IO.File.ReadAllLines(path); config = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, ClientId = lines[0], SecretKey = lines[1], CallbackUrl = lines[2], UserAgent = lines[3] }); } client = new EsiClient(config); }
/// <summary> /// Opens the Show Info window for a Character, Corporation or Alliance in game. /// </summary> /// <param name="pilot">Pilot explicit cast as AuthorizedCharacterData</param> /// <param name="target_id"></param> /// <see cref="Models.Pilot"/> /// <seealso cref="AuthorizedCharacterData"/> /// <seealso cref="ESI.NET.Models.Character"/> /// <seealso cref="ESI.NET.Models.Corporation"/> /// <seealso cref="ESI.NET.Models.Alliance"/> public static void ShowInfo(AuthorizedCharacterData pilot, int target_id) { try { EsiClient x = GetEsiClient(); x.SetCharacterData(pilot); x.UserInterface.Information(target_id); } catch (Exception ex) { Console.Beep(); } }
/// <summary> /// Sets a new autopilot destination in game. /// </summary> /// <param name="pilot">Pilot explicit cast as AuthorizedCharacterData</param> /// <param name="system_id">ID of the target solar system.</param> /// <see cref="ESI.NET.Models.Universe.SolarSystem"/> public static void SetDestination(AuthorizedCharacterData pilot, int system_id) { try { EsiClient x = GetEsiClient(); x.SetCharacterData(pilot); x.UserInterface.Waypoint(system_id, true, true); } catch (Exception ex) { Console.Beep(); } }
public MapDataLoader() { IOptions <EsiConfig> config = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, ClientId = "a3c88000c6ac4de5b31f85d1e4db7c11", SecretKey = "n3cLN6yUZ4pgDoxvQ7dMJ6bfMRPdvr3rdFVwKEEO", CallbackUrl = "eveauth-app://callback/", UserAgent = "Niedar" }); _esiClient = new EsiClient(config); }
public static async Task <List <ESI.NET.Models.Fleets.Wing> > GetFleetLayout(AuthorizedCharacterData fleetBoss, long fleetId) { EsiClient x = GetEsiClient(); x.SetCharacterData(fleetBoss); EsiResponse <List <ESI.NET.Models.Fleets.Wing> > FleetLayout_response = await x.Fleets.Wings(fleetId); if (FleetLayout_response.StatusCode != HttpStatusCode.OK) { s_Log.LogError("{0} error search API '{1}': {2}", FleetLayout_response.StatusCode, FleetLayout_response.Endpoint, FleetLayout_response.Message); throw new Exception(FleetLayout_response.ErrorType().ToString()); } return(FleetLayout_response.Data); }
/// <summary> /// Checks ESI to see if the pilot is online. /// </summary> /// <param name="pilot">Pilot explicit cast as AuthorizedCharacterData</param> /// <returns>Bool</returns> public static async Task <bool> IsOnlineAsync(AuthorizedCharacterData pilot) { EsiClient x = GetEsiClient(); x.SetCharacterData(pilot); EsiResponse <ESI.NET.Models.Location.Activity> Location_response = await x.Location.Online(); if (Location_response.StatusCode != HttpStatusCode.OK) { s_Log.LogError("{0} error searching API '{1}': {2}", Location_response.StatusCode, Location_response.Endpoint, Location_response.Message); return(true); } return(Location_response.Data.Online); }
public static async Task <ESI.NET.Models.Location.Location> GetSystem(AuthorizedCharacterData pilot) { EsiClient x = GetEsiClient(); x.SetCharacterData(pilot); EsiResponse <ESI.NET.Models.Location.Location> Location_response = await x.Location.Location(); if (Location_response.StatusCode != HttpStatusCode.OK) { s_Log.LogError("{0} error searching API '{1}': {2}", Location_response.StatusCode, Location_response.Endpoint, Location_response.Message); return(null); } return(Location_response.Data); }
public static async Task <List <ESI.NET.Models.Fleets.Member> > GetFleetMembers(AuthorizedCharacterData pilot, long fleet_id) { EsiClient esi = GetEsiClient(); esi.SetCharacterData(pilot); EsiResponse <System.Collections.Generic.List <ESI.NET.Models.Fleets.Member> > FleetMembers_response = await esi.Fleets.Members(fleet_id); if (FleetMembers_response.StatusCode != HttpStatusCode.OK) { s_Log.LogError("{0} error searching API '{1}': {2}", FleetMembers_response.StatusCode, FleetMembers_response.Endpoint, FleetMembers_response.Message); throw new Exception(FleetMembers_response.ErrorType().ToString()); } return(FleetMembers_response.Data); }
public DiscordBot(string discordAuthToken, string esiClientId, string esiSecretKey, string approvedDiscordUsers, string mailingListName, string channelToWatch) { _discordAuthToken = discordAuthToken; _approvedDiscordUsers = approvedDiscordUsers; _mailingListName = mailingListName; _channelToWatch = channelToWatch; IOptions <EsiConfig> config = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, ClientId = esiClientId, SecretKey = esiSecretKey, CallbackUrl = "http://localhost:12847", UserAgent = "Warp To Me Incursions" }); _esiClient = new EsiClient(config); }
public static void Main(string[] args) { //TODO create key for data and use password to decrypt key Console.WriteLine("Enter password:"******"salt")); var config = new Config(); if (File.Exists("config")) { config = JsonConvert.DeserializeObject <Config>(configEncryptor.DecryptFromBytes(File.ReadAllBytes("config"))); } else { Console.WriteLine("Enter Discord token:"); config.DiscordToken = Console.ReadLine(); Console.WriteLine("Enter EVE client ID:"); config.EveClientId = Console.ReadLine(); Console.WriteLine("Enter EVE client secret:"); config.EveSecret = Console.ReadLine(); File.WriteAllBytes("config", configEncryptor.EncryptToBytes(JsonConvert.SerializeObject(config))); } Console.Clear(); EveClient = new EsiClient(config.EveClientId, config.EveSecret, new ProductInfoHeaderValue("OIBot", "1.0")); ZKill = new ZKillboardClient(); Evepraisal = new EvepraisalClient(); RunBot(config.DiscordToken).ConfigureAwait(false); var host = new WebHostBuilder() .UseKestrel() .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup <Startup>() .UseApplicationInsights() .UseUrls("http://jimmacle.com:80") .Build(); host.Run(); }
public EsiData(MainForm mainform) { SecOptions o = SecOptions.getInstance(); o.readKey(); IOptions <EsiConfig> config = Options.Create(new EsiConfig() { EsiUrl = "https://esi.tech.ccp.is/", DataSource = DataSource.Tranquility, ClientId = o.m_clientId, SecretKey = o.m_secretKey, CallbackUrl = "eveauth-eveclip://callback/", UserAgent = "Name: Che Silas" }); m_client = new EsiClient(config); m_authCharData = null; m_mainForm = mainform; InitAuth(); }
public ProfileSettings(ref MainSettings mainSettings) { MainSettings = mainSettings; mainSettings.CheckInternetAccess(); CheckForScopesFile(); if (File.Exists(MainSettings.DataDirectory + ProfileName + $"\\{ProfileName}.json")) { Console.WriteLine(); using (StreamReader myReader = new StreamReader(MainSettings.DataDirectory + ProfileName + $"\\{ProfileName}.json")) { ProfileSettings newFile = new ProfileSettings(); MainSettings.jsonReader = new JsonTextReader(myReader); newFile = MainSettings.serializer.Deserialize <ProfileSettings>(MainSettings.jsonReader); AuthorisationData = newFile.AuthorisationData; Config = newFile.Config; LoadedFromFile = true; } } else { if (File.Exists("config.txt")) { using (StreamReader myReader = new StreamReader("config.txt")) { MainSettings.jsonReader = new JsonTextReader(myReader); Config = MainSettings.serializer.Deserialize <ConfigClass>(MainSettings.jsonReader); Console.WriteLine("Config settings imported."); Console.WriteLine(); } } else { GetConfigDataFromUser(); } } EsiClient = new EsiClient(Config.ConfigOutput()); }
public static void EnsureInit() { if (s_client == null) { try { IOptions <EsiConfig> options = Options.Create <EsiConfig>(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, UserAgent = "goons-incursion-jabber-bot" }); s_client = new EsiClient(options); LoadUpCachedData(); } catch (Exception ex) { Console.WriteLine("[Fatal] Exception Configuring ESI Client. Exception: {0}", ex); Environment.Exit(1); } } }
public static async void test() { IOptions <EsiConfig> config = Options.Create(new EsiConfig() { EsiUrl = "https://esi.evetech.net/", DataSource = DataSource.Tranquility, ClientId = "", SecretKey = "", CallbackUrl = "", UserAgent = "" }); EsiClient client = new EsiClient(config); Console.WriteLine("Test"); EsiResponse <List <ESI.NET.Models.Universe.ResolvedInfo> > response = client.Universe.Names(new List <long>() { 1590304510, 99006319, 20000006 }).Result; //EsiResponse<long[]> y = client.Universe.Structures().Result; //foreach (var f in y.Data) //{ // Console.WriteLine(f.ToString()); //} EsiResponse <int[]> y = client.Universe.Systems().Result; foreach (var f in y.Data) { //Console.WriteLine(f.ToString()); } int testLong = 30000131; EsiResponse <ESI.NET.Models.Universe.SolarSystem> z = client.Universe.System(testLong).Result; Console.WriteLine(z.Data.Name); EsiResponse <ESI.NET.Models.Universe.IDLookup> a = client.Universe.IDs(new List <string>() { "Drake Ichosira" }).Result; Console.WriteLine(a.Data); //long testLong = 1033147547575; //EsiResponse<ESI.NET.Models.Universe.Structure> z = client.Universe.Structure(testLong).Result; //EsiResponse<List<ESI.NET.Models.Wallet.Transaction>> x = Console.WriteLine(response.Data[0].Name); Console.WriteLine(response.Data[1].Name); Console.WriteLine(response.Data[2].Name); Console.WriteLine(z.Data.ToString()); Console.ReadLine(); }