{% extends 'faq/base.html' %} {% load i18n %} {% block details %}

{% translate "BigBrother FAQ" %}

{% blocktrans %}Common questions about installation, dashboards, Discord notifications, tickets, and configuration.{% endblocktrans %}

{% translate "Quick Notes" %}
  • {% translate "Beta" %} {% translate "Expect changes; report issues via GitHub." %}
  • {% translate "Caution" %} {% translate "Detection logic is in a public repo—operate with discretion." %}
  • {% translate "Tip" %} {% translate "Threaded Celery workers + disabled gunicorn timeout is strongly recommended." %}
{% translate "Search" %}
{% translate "Filters questions on this page (client-side)." %}

{% translate "General" %}

{% blocktrans %} BigBrother is an AllianceAuth plugin that performs continuous pilot auditing, compliance monitoring, intelligence gathering, and behavioral analysis. It summarizes risk signals (skills, cyno capability, corp movement, assets, clones, transactions, etc.) in dashboards and structured leadership-focused reports. {% endblocktrans %}

{% blocktrans %} By default, BigBrother is designed for leadership/recruiters and is not visible to general members unless you intentionally expose it. Access is controlled by AllianceAuth permissions. {% endblocktrans %}

{% blocktrans %} Yes. If you use Alliance Auth for a single corporation but have other alliance members on the same instance, you can enable limit_to_main_corp in BigBrotherConfig. This will restrict all compliance checks, background updates, and dashboard visibility to only those users whose main character belongs to your primary corporation. {% endblocktrans %}

{% blocktrans %} No. BigBrother pulls relevant information from CorpTools and AllianceAuth data. There is no BigBrother-specific manual “add character” flow. {% endblocktrans %}

{% translate "Security & Privacy" %}

{% blocktrans %} Because the repository is public, anyone can read the detection logic. Hostiles may adapt behavior to reduce visibility. Treat the output as risk signals and operate with discretion. {% endblocktrans %}

{% blocktrans %} BigBrother consumes data available through AllianceAuth/ESI integrations you already run. It is a leadership auditing and compliance tool; it does not bypass Auth permissions. {% endblocktrans %}

{% translate "Install & Performance" %}

{% blocktrans %} BigBrother runs heavy data pulls, cache warming, and streaming dashboard work. Threaded workers and memmon help maintain throughput while controlling memory usage. {% endblocktrans %}

{% blocktrans %} Strongly recommended. Dashboards can rely on long-running streaming requests; gunicorn timeouts can kill streams early and cards may never finish loading. {% endblocktrans %}

{% translate "If you can't disable timeout:" %} {% translate "You should keep the cache warmer enabled and expect some streams to fail on first load." %}

{% blocktrans %} In BigBrotherConfig, you can disable clone_state_always_recheck. When disabled, characters with known skills proving their state will respect the Cache TTL, significantly reducing ESI/DB load during updates. {% endblocktrans %}

{% blocktrans %} BigBrother needs your state definitions to know who counts as a member (notify and track), who counts as a guest (preload but don’t notify), and who should be ignored. Missing this configuration will break expected behavior. {% endblocktrans %}

{% translate "Dashboards" %}

{% blocktrans %} Selecting a user displays multiple analytical cards (blacklist status, audit completion, corp history, AWOX signals, account state, hostile clones/assets/contacts/contracts, suspicious mails/transactions, cyno and skill checks). {% endblocktrans %}

{% translate "These are risk signals meant to guide review—use judgment and context." %}

{% blocktrans %} Some cards stream results and/or depend on warmed caches and larger datasets. This is expected. The first run for a user can take longer. {% endblocktrans %}

{% blocktrans %} Streaming cards may remain green until the first hostile/suspicious row is detected. Once the first flagged entry arrives, the card status updates immediately. {% endblocktrans %}

{% blocktrans %} The Corp Dashboard applies the same hostile logic to corporation-level audits (transactions, contracts, hostile asset placement). It’s functional but receives less focus than the pilot dashboard. {% endblocktrans %}

{% translate "Discord & Messaging" %}

{% blocktrans %} Outbound Discord notifications are serialized through a dedicated task to prevent overlap and ensure messages arrive in chronological order. {% endblocktrans %}

{% blocktrans %} Yes. You can configure notification types, which states trigger updates, role pings, @here/@everyone rules, and webhooks for main, LOA, daily, optional, and recurring messages. {% endblocktrans %}

{% translate "Yes. Append a thread_id query string to the webhook URL." %}

https://discordapp.com/api/webhooks/<id>/<token>?thread_id=<threadid>
{% translate "The thread must be in the same channel as the webhook." %}

{% translate "Tickets" %}

{% blocktrans %} BigBrother can automatically generate tickets to notify leadership when pilots violate configured compliance or operational rules. {% endblocktrans %}

  • {% translate "PAP compliance and activity thresholds" %}
  • {% translate "Charlink compliance filters" %}
  • {% translate "Character removal from Auth" %}
  • {% translate "AWOX activity" %}
  • {% translate "Missing corp audits (director role)" %}
  • {% translate "AFK detection without LOA" %}
  • {% translate "Missing Discord link" %}

{% blocktrans %} Tickets are created as channels under a category. Deleting the channel closes the ticket. {% endblocktrans %}

{% blocktrans %} Yes. Users can be marked exempt from specific checks to avoid unnecessary ticket spam. {% endblocktrans %}

{% translate "Recurring Stats" %}

{% blocktrans %} Recurring stats send periodic AllianceAuth statistics to a webhook on a schedule you control. {% endblocktrans %}

{% translate "Troubleshooting" %}

{% blocktrans %} A rare but serious issue can occur where duplicate Celery Beat schedules are created. Use the README “Fix duplicated tasks error” SQL steps to identify duplicates, reassign tasks, and remove the extra schedule. {% endblocktrans %}

  • {% translate "Disable gunicorn timeout (or expect streams to be killed)." %}
  • {% translate "Keep cache warmer enabled for first-time loads." %}
  • {% translate "Use threaded Celery workers and memmon to control memory pressure." %}
  • {% translate "Confirm required prerequisite apps are installed and configured." %}
{% blocktrans %}This FAQ is generated from the project README and is intended for operators/admins.{% endblocktrans %}
{% endblock %}