Embykeeper Documentation

website·Indexed 30 days ago

https://emby-keeper.github.io

An automation tool designed for Emby and Jellyfin media servers. It provides features for automatic keep-alive (simulated playback), daily check-ins via Telegram bots, group monitoring for invitation codes, automated group chatting, and exam assistance. The tool supports deployment via Docker, Docker Compose, PyPI, Windows installers, and Huggingface Spaces, with configuration managed through a config.toml file.

Tokens
21.1K
Snippets
144
Records
173
Agent score
75%

What's inside Embykeeper

  1. Overview of Embykeeper automation tool

    Embykeeper is an open-source automation tool designed for Emby media servers. It helps users maintain account activity and earn points through the following core features:

    • Automatic Check-in: Automates daily check-ins via Telegram bots across multiple sites to accumulate points.
    • Account Maintenance (Keep-alive): Simulates logins and video playback to keep Emby accounts active and prevent them from being reclaimed due to inactivity.
    • Additional Utilities: Includes monitoring for invitation codes, automated group interaction (water-grouping), and assessment assistance.

    The tool supports execution via Python, Docker deployment, or cloud deployment.

  2. Simulate Emby site activity to prevent account banning

    Use the Emby simulation tool to automatically log into Emby public/community servers and simulate watching content for a specified duration. This is specifically designed for sites that ban accounts if they are not accessed or used for a certain number of days (N-day inactivity bans). The tool supports any Emby site.
  3. Understand Embykeeper project architecture

    The Embykeeper project is organized into several key modules:

    • embykeeper/emby: Handles Emby keep-alive tasks and simulated playback.
    • embykeeper/telegram: Manages Telegram-related functionality, including:
      • checkiner: Daily sign-in modules. New sign-in modules added to this directory are automatically recognized. Use __ignore__ = True in the module variables to disable a specific sign-in tool by default.
      • messager: Automatic group chatting/interaction modules.
      • monitor: Group monitoring modules.
    • embykeeper/subsonic: Handles Subsonic keep-alive tasks.
    • embykeeper/cache.py: Global cache for persistent key-value storage using JSON or MongoDB.
    • embykeeper/config.py & schema.py: Configuration management and format definitions.
    • embykeeper/schedule.py: Defines recurring tasks.
    • embykeeper/ocr.py: OCR processing handled in a separate subprocess to optimize memory usage.
  4. Understand Embykeeper versioning and release policy

    Embykeeper follows Semantic Versioning (semver) using the A.B.C (Major.Minor.Patch) format. Each released version is frozen and points to the specific source code used at the time of build. Previous versions are not removed from GitHub, allowing users to safely roll back to any prior version without needing local backups.
  5. Understand Embykeeper Advanced User Tiers

    Embykeeper provides two levels of advanced user memberships to enable competitive operations (e.g., automatically grabbing invitation codes) and operations requiring paid cloud services (e.g., ChatGPT responses and complex image CAPTCHA parsing).

    Membership hierarchy: MEMBER < PRIME < SUPER.

    SUPER membership includes all privileges available to PRIME members. Note that these memberships are specific to Embykeeper and are unrelated to any paid subscriptions for Emby servers themselves.

  6. Add unsupported check-in sites using templates

    If a check-in site is not natively supported but uses the Sakura_embyboss bot template, you can enable it using the templ_a<bot_username> format. You can further customize the site name and menu keywords.
    [site]
    checkiner = ["templ_a<moumou_bot>"]
    
    [checkiner.'templ_a<moumou_bot>']
    name = "My Custom Site"
    templ_panel_keywords = "Hello there"
  7. Run Emby-keeper on low-memory platforms (e.g., Synology)

    Emby-keeper typically requires 100-300 MB of RAM, as some bot check-ins require captcha recognition. If you encounter out-of-memory issues on platforms like Synology, increase your virtual memory. If the issue persists, consider using the online deployment option.
  8. Install Docker Compose standalone

    If Docker Compose is not installed, it can be installed via the following commands to download the binary and set execution permissions.
    curl -L "https://github.com/docker/compose/releases/download/v2.32.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
  9. Log raw update events for debugging

    The update log tool outputs the full text of Telegram update events in real-time. You can specify which types of updates to log using the -D flag. Available options include: message, edited_message, callback, inline, and raw.
    $ embykeeper config.toml -D message -D callback