使用 Alliance Auth 和 Discord 运行 killmail 跟踪器的应用程序
项目描述
杀手追踪器
使用 Alliance Auth 和 Discord 运行 killmail 跟踪器的应用程序
内容
概述
Killtracker 是一款使用 Alliance Auth 和 Discord 运行基于 killmail 的跟踪器的应用程序。Tracker 是小程序,它会根据一组预定义的条件自动选择 killmail,然后在它们出现在 zKillboard 上时立即将它们发布到 Discord 频道。
与类似应用程序相比,Killtracker 应用程序的主要优势在于它的高度可定制性,这使您可以消除许多误报的干扰,只获得您真正感兴趣的结果。
例如,您可能想知道更大的群体何时在您的区域漫游?设置一个跟踪器,显示在您有超过 20 名攻击者的舞台上 10 次跳跃内的所有击杀数。如果你愿意,它甚至会 ping 你。
或者您可能想了解您的跳跃范围内是否有任何活动的首都?只需在您的分期后 6 LY 内设置一个首杀追踪器即可。
主要特征
- 符合一组条件的 killmail 在到达 zKillboard 后立即自动发布到 Discord 频道
- 使用 20 多个子句准确定义您想要跟踪的内容,包括。位置、组织、授权状态和船舶类型的条款
- “船舶类型”的条款包括船舶、结构、海关、战斗机和挖掘机无人机
- 用于匹配 killmail 的可选频道和组 ping
- 专为快速响应时间、高吞吐量和低资源要求而设计
- 获取有关 killmail 的更多见解,例如与登台的距离
- 查看您感兴趣的领域中活跃的车队/团体
- 使用标题和颜色自定义 killmail 消息
截图
这是设置新跟踪器的示例:
以下是 Discord 上发布的 killmail 的外观:
安装
第 1 步 - 检查先决条件
-
Killtracker 是 Alliance Auth 的插件。如果您还没有运行 Alliance Auth,请在继续之前先安装它。(详见官方AA安装指南)
-
Killtracker 需要应用程序django-eveuniverse才能运行。请确保已安装,然后再继续。
第 2 步 - 安装应用程序
确保您处于 Alliance Auth 安装的虚拟环境 (venv) 中。然后从 PyPI 安装最新版本:
pip install aa-killtracker
第 3 步 - 配置设置
如下配置您的身份验证设置 ( local.py):
- 添加
'killtracker'到INSTALLED_APPS - 将以下行添加到您的设置文件中:
CELERYBEAT_SCHEDULE['killtracker_run_killtracker'] = {
'task': 'killtracker.tasks.run_killtracker',
'schedule': crontab(minute='*/1'),
}
- 可选:如果要更改任何默认值,请添加其他设置。有关完整列表,请参阅设置。
第 4 步 - 完成安装
运行迁移并复制静态文件
python manage.py migrate
python manage.py collectstatic
重新启动您的主管服务以进行 Auth
第 5 步 - 加载 Eve Universe 地图数据
为了能够为跟踪器选择太阳能系统和类型,您需要从 ESI 加载该数据一次。
加载 Eve Online 地图:(如果您已经使用其他应用程序运行此命令,则可以跳过此步骤)
python manage.py eveuniverse_load_data map
加载应用特定类型:
python manage.py killtracker_load_eve
您可能需要等到加载完成后再开始创建新的跟踪器。
第 6 步 - 设置跟踪器
跟踪器的设置和配置在Killtracker下的管理页面上完成。
首先需要添加指向您希望 killmail 出现在Webhooks的频道的 Discord webhook 。您可以为所有跟踪器使用一个 webhook,但通常最好为每个跟踪器创建一个新通道/webhook。
要测试您的 webhook 是否正常工作,您可以发送测试通知。
接下来,您可以在Tracker下创建您的跟踪器。确保将每个跟踪器链接到正确的 webhook。保存启用的跟踪器后,它将开始工作。
作为您的设置是否正确的最终测试,您可能需要创建一个“Catch all”跟踪器。为此,只需在没有任何条件的情况下创建一个新的跟踪器,它就会在收到所有 killmail 时将它们转发到您的 Discord 频道。
恭喜您现在可以使用 killtracker 了!
追踪器
所有跟踪器都在Killtracker下的管理站点上设置和配置。
每个跟踪器都有一个名称,链接到一个 webhook,并具有一组条件,这些条件定义了哪些 killmail 被选择并显示在 Discord 频道中。请注意,如果您在没有任何条件的情况下定义跟踪器 tan,您将获得一个“catch all”跟踪器,它将在 Discord 上发布任何 killmail。
20 多个条件中的每一个都属于两个类别之一,并相应地命名:
- require : 要求条件必须由 killmail 满足。例如,条件为require min attackers = 10的跟踪器将仅在 Discord 上发布至少有 10 个攻击者的 killmail。
- exclude:排除条件与要求相反。满足此条件的 Killmail 将永远不会被此跟踪器发布。例如,具有排除高秒的跟踪器将永远不会显示来自高秒的任何killmail。
您可以结合多个条件来创建您想要的跟踪器。请注意,条件总是与布尔 AND 组合在一起。例如:如果您的跟踪器将要求最小攻击者设置为 10 并启用排除高秒,那么您将只会收到至少有 10 名攻击者且不处于高秒的 killmail。
以下是每个跟踪器当前支持的所有条件的列表:
| 姓名 | 描述 |
|---|---|
| 需要最大跳跃 | 要求所有的 killmails 是最大 x 跳离原始太阳系 |
| 需要最大距离 | 要求所有 killmail 距离原始太阳系最大 x LY |
| 需要最小攻击者 | 要求 killmail 至少有给定数量的攻击者 |
| 需要最大攻击者 | 要求 killmail 的攻击者数量不超过最大数量 |
| 排除高秒 | 从高秒排除killmails。还排除了路线查找器中的高 sec 系统,用于从原点跳转。 |
| 排除低秒 | 从低秒排除killmails |
| 排除空秒 | 从 null sec 中排除 killmails |
| 排除 w 空间 | 从 WH 空间中排除 killmails |
| 要求最小值 | 要求 killmail 的值大于或等于 M ISK 中的给定值 |
| 排除npc击杀 | 排除npc击杀 |
| 需要npc击杀 | 仅包括被 npc 杀死的 killmail |
| 排除攻击者联盟 | 从这些联盟之一中排除与攻击者的杀戮邮件 |
| 排除攻击者公司 | 排除来自这些公司之一的攻击者的 killmail |
| 需要攻击者联盟 | 仅包括来自这些联盟之一的攻击者的杀戮邮件 |
| 要求攻击者公司 | 仅包括来自这些公司之一的攻击者的 killmail |
| 需要受害者联盟 | 仅包括受害者属于这些联盟之一的 killmail |
| 要求受害公司 | 仅包括受害者属于这些公司之一的 killmail |
| exclude_attacker_states | 排除具有这些身份验证状态的用户的字符的 killmail |
| 要求攻击者状态 | 仅包含属于具有这些身份验证状态的用户的字符的 killmail |
| 要求受害者状态 | 仅包括受害者字符属于具有这些身份验证状态的用户的 killmail |
| 需要区域 | 仅包括在这些区域之一中发生的 killmail |
| 需要星座 | 仅包括在这些区域之一中发生的 killmail |
| 需要太阳能系统 | 仅包括在这些区域之一中发生的 killmail |
| 要求攻击者运送团体 | 仅包括至少一名攻击者正在驾驶这些船群之一的杀戮邮件 |
| 要求攻击者船型 | 仅包括至少一名攻击者驾驶这些船型之一的杀戮邮件 |
| 需要受害者船组 | 仅包括受害者驾驶这些船组之一的杀戮邮件 |
| 需要受害者船型 | 仅包括受害者驾驶其中一种船型的杀戮邮件 |
设置
这是此应用程序的可用设置列表。可以通过将它们添加到您的 AA 设置文件 ( local.py) 来配置它们。
请注意,所有设置都是可选的,如果不使用,应用程序将使用记录的默认设置。
| 姓名 | 描述 | 默认 |
|---|---|---|
KILLTRACKER_KILLMAIL_MAX_AGE_FOR_TRACKER |
忽略以分钟为单位超过给定数字的killmail。有时 killmail 在 ZKB 上出现迟到,此功能可确保它们不会创建新警报 | 60 |
KILLTRACKER_MAX_KILLMAILS_PER_RUN |
任务运行从 ZKB 检索到的最大 killmail 数。应该设置这个值,以便每分钟从 ZKB 获取新的 killmail 的任务将在一分钟内可靠地完成。要对此进行测试,请运行“Catch all”跟踪器并查看您的系统能够处理多少 killmail。请注意,您可以从工作人员的日志文件中获取该信息。它看起来像这样:Total killmails received from ZKB in 49 secs: 251 |
250 |
KILLTRACKER_PURGE_KILLMAILS_AFTER_DAYS |
超过设定天数的 Killmail 将从数据库中清除。如果您想保留所有的killmails,请将其设置为0。请注意,此设置仅在您启用了存储killmails 时才相关。 | 30 |
KILLTRACKER_WEBHOOK_SET_AVATAR |
Wether 应用设置 webhook 的名称和头像图标。当 False 时,webhook 将使用它自己在平台上设置的值 | True |
KILLTRACKER_STORING_KILLMAILS_ENABLED |
如果设置为 true,Killtracker 将自动将所有收到的 killmail 存储在本地数据库中。如果您想对 killmail 等运行分析,这可能很有用。但是,请注意,Killtracker 本身目前不以任何方式使用存储的 killmail。 | False |
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
aa_killtracker -0.8.1-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | df2963e1abed9586845569ebf2d60bfeda0eb690cff4178288c5e0baf2551637 |