This project and repository is no longer actively maintained or supported. See The Future of Insight document for reasoning and an FAQ. Thank you all for supporting and enjoying Insight over the years!
Fly safe o7
Insight provides EVE Online killmail streaming and utility commands for Discord. Insight can stream personal or corporate killboards, detect supercapitals with a proximity radar, estimate ship composition from local chat scans, and more! Killmails and intel are presented in Discord rich embeds containing relevant links and images to quickly identify important information.
This bot features an intuitive interface for creating, modifying, and managing independent feed configurations through simple commands and text dialog. All bot functionality is accessible through documented commands with no hardcoding or complicated configuration steps.
Invite Insight to your Discord server and run !create
to begin setting up a feed!
Insight is available publicly hosted for invites directly to Discord servers. These bots are maintained and hosted by the Insight developer.
See hosting Insight if you are interested in hosting your own private instance of Insight.
- Insight (with preconfigured role): Insight Bot Invite Link
- Insight (without preconfigured role): Insight Bot Invite Link
- Insight Test Bot Invite
- This test bot normally runs the latest development branch build. There are no guarantees of uptime or stability. Data from this test bot is often wiped.
If you have questions, suggestions, or bug reports feel free to drop by the project support server.
If you enjoy Insight, please consider donating ISK to Natuli in-game.
- Invite Links
- Donate
- Table of contents
- Feature Overview
- Gallery
- Commands
- Permissions
- Getting started
- Branch overview
- Hosting Insight
- FAQ
- Credits
- Licenses
- Entity feeds ideal for personal, corporate, or alliance killboard streaming.
- Radar feeds ideal for tracking hostile incursions into friendly space, hunting expensive targets within jump range, or detecting capital escalations in real time.
- Proximity watches ideal for finding potential fleets to fight, tracking hostile fleet movement within your region, or alerting you of nearby hostiles within a few jumps of your base systems.
- Preconfigured feeds offering custom spins such as: Alliance Tournament system feed, npc officer hunter, AT ship radar, and more!
- Utility commands such as: local chat scanning with estimated ship composition, top kills, and more!
- Rich embeds to present mails with color indicating sidebars, hyperlinks, and images.
- Multiple embed appearance styles varying in size and verbosity.
- Optional mention system to be alerted of activity in radar feeds.
- SSO token authentication for allied contact blacklisting in radar feeds.
- Automatic synchronization of SSO tokens and radar blacklists.
- Instinctual commands and convenient option dialogs for managing settings.
- Easy server setup with no hardcoding or confusing configuration.
- Simultaneous, isolated feeds across multiple servers.
- Efficient asynchronous design with minimal cpu, memory, disk, and network impact.
When in doubt, run !help
. The !help
command guides you to every possible command, feature, and modifiable option.
Commands can be prefixed with either !
, ?
, or @Insight
by default. You can add or remove server-wide command prefixes via the !prefix
command.
These commands are only available to users listed in the "INSIGHT_ADMINS" environmental variable.
Command | Description |
---|---|
!admin | Access the Insight admin console to execute administrator functionality. |
!quit | Close and shut down the Insight application service. |
These commands are available to users that have moderation or owner permissions on a Discord server.
Command | Description |
---|---|
!prefix | Manage server-wide command prefixes for the bot. |
These commands are available for users to use in a text channel located in a Discord server.
Command | Description |
---|---|
!create | Begin setting up a new feed service in this channel. Alias: !new |
!lock | Lock a feed service from being modified by users without certain Discord channel roles. |
!remove | Delete the currently configured feed service in this channel. |
!settings | Modify feed settings and behavior. Alias: !config |
!start | Start/resume a channel feed from being paused. |
!status | Display information about the currently running feed. |
!stop | Pause a channel feed. |
!unlock | Unlock a feed service to allow any Discord channel user to modify feed configuration. |
These commands are available in channels containing radar or proximity feeds. In a private message to the bot these commands allow for management of personal SSO tokens.
Command | Description |
---|---|
!sync | Manage SSO tokens for a feed or for the Discord user (when in a private message) to add, delete, and revoke SSO tokens. |
These commands can be used by anyone in any channel (including private messages with the bot).
Command | Description |
---|---|
!about | Display Insight credits, version information, and bot invite links. |
!8ball | Shake the 8ball for answers to your questions. |
!help | Display command information and prefixes. |
!limits | Display channel / server rate limits and usage stats. |
!motd | Display the current MOTD for Insight global announcements and updates. |
!roll | Roll a random number between 0 and 100. |
!scan | Perform a local scan. Copy and paste local pilots for a recent ship and affiliation overview. |
!time | Get the current EVE time. Subcommands provide an overview of various world timezones. |
!top | List the most expensive mails over the last hour, week, month, or year. |
More detailed command information is available in the commands wiki.
The preconfigured role invite link creates a server role with necessary permissions already assigned. Using the invite link without preconfigured roles requires manual permission configuration.
In intended feed channels the bot requires the following permissions:
Permission | Reason |
---|---|
Read Messages | Allows the bot to read command events. |
Send Messages | Allows the bot to communicate and display prompts to users running commands. |
Embed Links | Allows the bot to post Discord rich embed content containing images (ship renders, player portraits, corp/alliance logos) and hyperlinks (zKillboard and Dotlan). |
Mention Everyone | Allows the bot to optionally mention @here or @everyone for optional alerts. |
This quick start guide will help you set up an alliance killboard tracking feed.
- Begin by inviting Insight to your Discord server using one of the provided links.
- Ensure Insight has the correct permissions in the intended feed channel.
- Run the command:
!create
and select 'Entity Feed'. - Type in the name of an entity you wish to track. In this case,
let's create a feed that tracks alliance Brave Collective. Type the name
Brave Collective
or whichever entity you wish to track. - Select the display mode if you want to display kills, losses, or both for Brave Collective.
- The feed service is successfully configured and running! You should start to see activity whenever
a tracked entity participates in PvP. You can now run the command
!settings
to add or remove entities in your feed. If you wish to remove the feed, run!remove
.
This quick start guide will help you set up a radar feed for tracking supercapital activity within 12 light-years of our base system, Jita.
- Begin by inviting Insight to your Discord server using one of the provided links.
- Ensure Insight has the correct permissions in the intended feed channel.
- Run the command:
!create
and select 'Radar'. - The bot will ask for the name of a base system. In our example case, enter
Jita
. - Next, we will be asked for the maximum light-year range from Jita we wish to track targets. Enter
12
or whichever range you prefer. - We will be shown a few prompts asking if we wish to track black ops, regular capitals, and supers. You
can track all of these groups or a subset as in our case. Answer
no
to tracking blops and normal capitals, selectingyes
to track supercapitals. - A prompt will ask for the maximum mail age in minutes. Enter
20
as a reasonable limit or some other integer. - The feed service is now fully configured! You can manage settings, add or remove base systems, and more
by running the
!settings
command. Radar feeds feature an optional API synchronized list of allies to blacklist from appearing on the radar, accessible by the!sync
command.
Branch | Purpose |
---|---|
master | Stable with latest stable features. |
development | Latest features in development. |
dev | Deprecated branch. |
experimental | Deprecated branch. |
There are two ways to run and host Insight yourself if you do not wish to use the public bot.
The recommended and easiest method to host Insight. Images are automatically built on new commits.
See Insight on Docker Hub for Insight container usage and Docker docs for getting started with Docker.
The wiki contains a guide for source installation using a Linux operating system. Running Insight from source is not recommended unless you plan on Insight development.
How do I invite Insight to my Discord server?
You can invite Insight to any server where you have the Manage Server role. Follow the link, select the server, and Insight will be invited. If you are hosting Insight yourself, the invite link will be printed in the program console on program startup.
What Discord permissions does Insight require?
Insight requires the permissions outlined in the permissions section.
How do I set up a new feed and manage its settings?
Creating a feed is as simple as running the command !create
and following the dialog prompts to select a type.
Running the command !settings
allows you to modify feed configuration and behavior.
What's the difference between hosting Insight myself and using the publicly hosted bot?
Functionally, there is no difference. Insight is designed to support simultaneous feeds across multiple servers with no configuration hardcoding. Insight provides an isolated service to each Discord channel, separate from the modification or access of other channels/servers.
Operationally, the publicly hosted bot runs on dedicated, secure hardware to provide 24/7 service and reliability. The publicly hosted bot runs the main branch and is updated, maintained, and secured seamlessly.
How do I run more than one feed service?
Insight can only run one feed service per Discord channel. Create more text channels and create a feed service in each. Note: Insight does not support feeds in direct message or conversations.
How do I add, manage, or remove one of my previously added SSO tokens?
Direct message the bot with the !sync
command and select an option. You can always revoke tokens under third party applications.
What do all the stats mean on the bot's watching message?
Insight keeps track of delays for service reliability. See the wiki article for a detailed description.
How do I host Insight myself?
Insight runs on Windows, Linux, or Mac. See the hosting Insight section.
Why do I have to paste my callback url when using the !sync command?
For installation simplicity, Insight does not utilize a callback listener. A listener would require a web server and open new security concerns. In general scenarios, authenticating with a third party website works like this:
- Be directed to authenticate with EVE by a third-party service.
- Login with EVE and be redirected, through a GET request, back to the service's callback landing page.
- A running callback listener would receive the GET request and link the
code=
parameter of the URL to a PHP session.
Insight follows the same procedure except for step 3. The callback URL must manually be entered by the user as Insight has no web listener or easy way to link Discord users with their tokens. Insight parses the url, extracts the authorization code, and links the token with the unique Discord user ID.
How can I be notified of updates?
Insight's Watching CPU:15% MEM:1.0GB
status will change to Watching Update available
. The program console will display messages directing to the latest release.
I have an unanswered question, want to request a feature, need help with installation, or report a bug.
Check out the public Discord server listed in the links section.
- Fuzzwork - Provides SQLite database conversions of CCP's SDE referenced on initial loading.
- zKillboard - Provides a centralized database of killmails for the game EVE Online.
- zKillboard RedisQ - A websocket alternative used to pull mails.
- CCP Games
- EVE Swagger Interface - EVE's official API used by Insight to lookup names, information, and utilize access tokens.
- Swagger Codegen - An automatic API client generation tool for services utilizing Swagger definitions.
Insight is released under the GNU General Public License v3.0 and the full license
is available in the file LICENSE
. This project utilizes various Python libraries, each with their
own licensing. Insight uses data and names from the game EVE Online subject to its license
included in the file CCP.md
.