• v1.8 6a1ed49e60

    v1.8 Stable

    kerem released this 2026-01-06 04:58:34 +03:00 | 43 commits to main since this release

    📅 Originally published on GitHub: Tue, 06 Jan 2026 02:09:21 GMT
    🏷️ Git tag created: Tue, 06 Jan 2026 01:58:34 GMT

    Features and Improvements:

    • NEW: Added User Information Display Mode (-i / --info) providing comprehensive Xbox profile insights, including XUID, real name, location, account tier (Game Pass Core/Ultimate or Free), gamerscore, online status, last online date, platform information, and friends count
    • NEW: Added friends list display in info mode (via -f / --friends flag) with presence details (game/activity)
    • NEW: Added recently played games display in info mode with last played date and total play time for each title
    • NEW: Added recent achievements display in info mode (via -r / --recent-achievements flag)
    • NEW: Added command-line arguments to limit output: -n / --achievements-count and -m / --games-count
    • IMPROVE: Added step-by-step progress messages during startup/fetching with status indicators
    Downloads
  • v1.7 0d73fbe962

    v1.7 Stable

    kerem released this 2026-01-03 03:11:08 +03:00 | 49 commits to main since this release

    📅 Originally published on GitHub: Sat, 03 Jan 2026 00:16:56 GMT
    🏷️ Git tag created: Sat, 03 Jan 2026 00:11:08 GMT

    Bug fixes:

    • BUGFIX: Fixed platform detection logic bug where only the first platform name in the check was being evaluated (Xbox Series X/S detection)
    • BUGFIX: Replaced blocking time.sleep() calls with await asyncio.sleep() in async function to prevent event loop blocking
    • BUGFIX: Added protection against division by zero when calculating LIVENESS_CHECK_COUNTER if XBOX_CHECK_INTERVAL is set to 0
    Downloads
  • v1.6.1 fb9d48d41a

    v1.6.1 Stable

    kerem released this 2025-06-13 04:31:51 +03:00 | 61 commits to main since this release

    📅 Originally published on GitHub: Fri, 13 Jun 2025 02:06:33 GMT
    🏷️ Git tag created: Fri, 13 Jun 2025 01:31:51 GMT

    Bug fixes:

    • BUGFIX: Fixed config file generation to work reliably on Windows systems
    Downloads
  • v1.6 c0710f7764

    v1.6 Stable

    kerem released this 2025-05-22 01:44:27 +03:00 | 64 commits to main since this release

    📅 Originally published on GitHub: Wed, 21 May 2025 22:47:30 GMT
    🏷️ Git tag created: Wed, 21 May 2025 22:44:27 GMT

    Features and Improvements:

    • NEW: The tool can now be installed via pip: pip install xbox_monitor
    • NEW: Added support for external config files, environment-based secrets and dotenv integration with auto-discovery
    • IMPROVE: Enhanced startup summary to show loaded config and dotenv file paths
    • IMPROVE: Simplified and renamed command-line arguments for improved usability
    • NEW: Implemented SIGHUP handler for dynamic reload of secrets from dotenv files
    • IMPROVE: Added configuration option to control clearing the terminal screen at startup
    • IMPROVE: Changed connectivity check to use Xbox endpoint for reliability
    • IMPROVE: Added check for missing pip dependencies with install guidance
    • IMPROVE: Allow disabling liveness check by setting interval to 0 (default changed to 12h)
    • IMPROVE: Improved handling of log file creation
    • IMPROVE: Refactored CSV file initialization and processing
    • IMPROVE: Added support for ~ path expansion across all file paths
    • IMPROVE: Added validation for configured time zones
    • IMPROVE: Refactored code structure to support packaging for PyPI
    • IMPROVE: Enforced configuration option precedence: code defaults < config file < env vars < CLI flags
    • IMPROVE: Updated horizontal line for improved output aesthetics
    • IMPROVE: Email notifications now auto-disable if SMTP config is invalid
    • IMPROVE: Removed short option for --send-test-email to avoid ambiguity

    Bug fixes:

    • BUGFIX: Fixed issue where manually defined LOCAL_TIMEZONE wasn't applied correctly
    Downloads
  • v1.5 94aebb3f17

    v1.5 Stable

    kerem released this 2024-06-19 19:47:45 +03:00 | 80 commits to main since this release

    📅 Originally published on GitHub: Wed, 19 Jun 2024 16:53:30 GMT
    🏷️ Git tag created: Wed, 19 Jun 2024 16:47:45 GMT

    Features and Improvements:

    • NEW: Added new parameter (-z / --send_test_email_notification) which allows to send test email notification to verify SMTP settings defined in the script
    • IMPROVE: Support for float type of timestamps added in date/time related functions
    • IMPROVE: Function get_short_date_from_ts() rewritten to display year if show_year == True and current year is different, also can omit displaying hour and minutes if show_hours == False
    • IMPROVE: Checking if correct version of Python (>=3.8) is installed
    • IMPROVE: Possibility to define email sending timeout (default set to 15 secs)

    Bug fixes:

    • BUGFIX: Fixed "SyntaxError: f-string: unmatched (" issue in older Python versions
    • BUGFIX: Fixed "SyntaxError: f-string expression part cannot include a backslash" issue in older Python versions
    Downloads
  • v1.4 22f1cd8e0f

    v1.4 Stable

    kerem released this 2024-05-23 19:53:48 +03:00 | 89 commits to main since this release

    📅 Originally published on GitHub: Thu, 23 May 2024 16:59:19 GMT
    🏷️ Git tag created: Thu, 23 May 2024 16:53:48 GMT

    Features and Improvements:

    • NEW: New feature counting overall time and number of played games in the session
    • NEW: Support for short offline interruption, so if user gets offline and online again (for example due to rebooting the console) during the next OFFLINE_INTERRUPT seconds (configurable in .py file, by default 7 mins) then we set online start timestamp back to the previous one + we also keep stats from the previous session (like total time and number of played games)
    • IMPROVE: Information about log file name visible in the start screen
    • IMPROVE: Rewritten get_date_from_ts(), get_short_date_from_ts(), get_hour_min_from_ts() and get_range_of_dates_from_tss() functions to automatically detect if time object is timestamp or datetime
    Downloads
  • v1.3 88423faf53

    v1.3 Stable

    kerem released this 2024-05-19 04:23:53 +03:00 | 96 commits to main since this release

    📅 Originally published on GitHub: Sun, 19 May 2024 01:28:20 GMT
    🏷️ Git tag created: Sun, 19 May 2024 01:23:53 GMT

    Features and Improvements:

    • NEW: Information when user is in-game during status changes (console + emails)
    • IMPROVE: pep8 style convention corrections
    Downloads
  • v1.2 e2682379d7

    v1.2 Stable

    kerem released this 2024-05-15 19:51:12 +03:00 | 103 commits to main since this release

    📅 Originally published on GitHub: Wed, 15 May 2024 16:56:45 GMT
    🏷️ Git tag created: Wed, 15 May 2024 16:51:12 GMT

    Features and Improvements:

    • IMPROVE: Improvements for running the code in Python under Windows
    • NEW: Automatic detection of local timezone if you set LOCAL_TIMEZONE variable to 'Auto' (it is default now); requires tzlocal pip module
    • IMPROVE: Information about time zone is displayed in the start screen now
    • IMPROVE: Better checking for wrong command line arguments
    Downloads
  • v1.1 d9e62fca91

    v1.1 Stable

    kerem released this 2024-05-13 19:54:08 +03:00 | 111 commits to main since this release

    📅 Originally published on GitHub: Mon, 13 May 2024 16:59:50 GMT
    🏷️ Git tag created: Mon, 13 May 2024 16:54:08 GMT

    Features and Improvements:

    • NEW: Support for detecting games played by users (player starts/stops or changes the played game)
    • NEW: Support for detecting status changes reported by Xbox app on mobile devices (Android & iOS/iPadOS)
    • NEW: Support for Away status on Android devices (Xbox consoles, Windows and iOS devices do not report it)
    • IMPROVE: Information about played games added to email notifications and CSV file
    • NEW: Possibility to define MS_APP_CLIENT_ID via command line argument (-u / --ms_app_client_id)
    • NEW: Possibility to define MS_APP_CLIENT_SECRET via command line argument (-w / --ms_app_client_secret)
    • NEW: New command line argument -g / --game_change_notification + SIGUSR2 signal handler to cover game changes notifications
    • NEW: New command line argument -s / --status_notification + SIGCONT signal handler to cover all status changes notifications
    • IMPROVE: Updated mapping of platforms including mobile devices
    • IMPROVE: Email sending function send_email() has been rewritten to detect invalid SMTP settings
    • IMPROVE: Strings have been converted to f-strings for better code visibility
    • IMPROVE: Info about CSV file name in the start screen
    • IMPROVE: In case of getting an exception in main loop we will send the error email notification only once (until the issue is resolved)
    • IMPROVE: Exception handling for function converting the timezone

    Bug fixes:

    • BUGFIX: Handling situations when JSON file storing info about the last status gets corrupted or when there are issuing saving the state
    Downloads
  • v1.0 3f1fde8ba8

    v1.0 Stable

    kerem released this 2024-04-27 15:28:10 +03:00 | 125 commits to main since this release

    📅 Originally published on GitHub: Sat, 27 Apr 2024 12:36:00 GMT
    🏷️ Git tag created: Sat, 27 Apr 2024 12:28:10 GMT

    Initial xbox_monitor v1.0 release. Features:

    • Real-time monitoring of Xbox Live users activity (including detection when user gets online/offline)
    • Basics statistics for user activity (how long in different states)
    • Email notifications for different events (player gets online/offline, errors)
    • Saving all activity with timestamps to the CSV file
    • Built-in OAuth2 authentication
    • Possibility to control the running copy of the script via signals

    RELEASE NOTES:

    Features and Improvements:

    • NEW: Switch from global authentication performed by xbox-authenticate tool to OAuth2 auth functionality in the code
    Downloads