-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbot_config.py
More file actions
59 lines (47 loc) · 1.79 KB
/
Copy pathbot_config.py
File metadata and controls
59 lines (47 loc) · 1.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# bot_config.py
"""
Centralized configuration for the PlexBot.
This module contains constants and configuration values used throughout the bot.
"""
class BotConfig:
"""Configuration values and constants for PlexBot."""
# UI constants
PLEX_EMBED_COLOR = 0xE5A00D
PLEX_IMAGE = "https://images-na.ssl-images-amazon.com/images/I/61-kdNZrX9L.png"
QBIT_EMBED_COLOR = 0x6C81DF
QBIT_IMAGE = "https://upload.wikimedia.org/wikipedia/commons/thumb/6/66/New_qBittorrent_Logo.svg/1200px-New_qBittorrent_Logo.svg.png"
# Cache settings
CACHE_UPDATE_INTERVAL = 3600 # 1 hour in seconds
MEDIA_CACHE_PATH = "cache/media_cache.json"
# Default values
DEFAULT_RECENT_COUNT = 10
DEFAULT_STATS_DURATION = 7
DEFAULT_HISTORY_LENGTH = 10000
DEFAULT_TIME_RANGE = 30 # Default time range in days
# Chart and visualization settings
CHART_WIDTH = 14
CHART_HEIGHT = 6
CHART_DPI = 100
CHART_DATE_FORMAT = "%Y-%m-%d"
CHART_MONTH_FORMAT = "%b %Y"
# Command-specific settings
RECOMMENDATION_TIMEOUT = 180 # 3 minutes for reaction-based selection
# API request settings
MAX_CONCURRENT_REQUESTS = 10 # Maximum concurrent API requests
API_REQUEST_TIMEOUT = 30 # API request timeout in seconds
API_RETRY_LIMIT = 3 # Number of times to retry failed API requests
# Media types mapping
MEDIA_TYPE_MAPPING = {
"movie": ["movie"],
"tv": ["show", "episode"],
"any": ["movie", "show", "episode"],
}
# Visualization colors
PLEX_ORANGE = "#E5A00D" # Plex orange color
PLEX_GREY_DARK = "#1B1B1B" # Dark grey background
PLEX_COLORS = {
"Movie": "#E5A00D", # Plex orange
"TV": "#F6E0B6", # Light cream
"Other": "#F3D38A", # Pale yellow
"Unknown": "#F0C75E", # Gold
}