pyobs-web-admin Logo

Getting started

  • Installation
    • Development
    • Production
      • 1. Install the app
      • 2. Configure
      • 3. Install the systemd service
      • 4. Configure nginx
  • Configuration
    • Django core
    • Authentication
    • pyobs paths
    • Hub mode
    • ejabberd integration (optional)

Features

  • Dashboard and module detail
    • Dashboard
    • Module detail
      • Overview
      • Logs
      • Config
      • ACL
    • New module
    • Shared configs
    • Fleet-wide Overview page
  • How modules are managed
    • Discovery
    • Activate / deactivate
    • Start
    • Stop
    • Restart
    • Status
    • Resource usage
    • Logs
    • Log counts
  • ACL matrix and per-module ACL editing
    • Background
    • Resolving {include} and shared fragments
    • What the matrix shows
    • Editing from the matrix
    • Hub mode
  • journald-backed logging
    • Choosing a backend
    • What changes, and what doesn’t
  • Hub mode
    • Setup
    • Authentication
    • One active host at a time – and the exception
  • ejabberd / XMPP integration
    • Read-only status integration
      • Enabling it
      • Where it surfaces
      • Data layer
      • ejabberd-side configuration
      • Security model
      • One shared server, hub-aware
    • XMPP user management
      • Where it surfaces
      • Confirmation UX
      • Shared comm.user handling
      • Transport: ejabberdctl, not mod_http_api
      • Deployment: a sudoers rule for ejabberdctl
      • Security note

Project

  • Architecture
    • Technology
    • Design principles
    • Project layout
  • Development
    • Setup
    • Tests
    • Design docs

API reference

  • API reference
    • modules.services
      • build_acl_matrix()
      • build_comm_user_map()
      • build_package_version_matrix()
      • create_module()
      • find_modules_sharing_comm_user()
      • get_comm_user()
      • get_module_status()
      • get_package_overview()
      • get_resolved_acl()
      • get_resolved_comm()
      • list_pyobs_packages()
      • merge_acl_matrices()
      • merge_log_lines()
      • resolve_and_validate_acl()
      • save_comm_password()
      • save_local_acl()
      • update_package()
    • modules.views
      • api_acl()
      • api_acl_matrix()
      • api_comm_user_map()
      • api_create_module()
      • api_ejabberd_status()
      • api_ejabberd_summary()
      • api_ejabberd_user()
      • api_ejabberd_users()
      • api_ejabberd_users_kick()
      • api_module_ejabberd()
      • api_module_ejabberd_change_password()
      • api_module_ejabberd_register()
      • api_xmpp_users()
      • fleet_overview()
      • new_module()
      • packages()
      • xmpp_users()
    • modules.ejabberd
      • ban_account()
      • change_password()
      • check_account()
      • get_ban_details()
      • kick_session()
      • register()
      • stats()
      • unban_account()
      • unregister()
    • modules.proxy
      • get_host_config()
pyobs-web-admin
  • Search


© Copyright 2026, Tim-Oliver Husser.

Built with Sphinx using a theme provided by Read the Docs.