File size: 4,367 Bytes
80287e2
 
 
 
 
 
 
 
 
 
 
 
 
1c4c8fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5ca2077
 
80287e2
1c4c8fd
 
80287e2
 
 
1c4c8fd
80287e2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1c4c8fd
 
 
 
 
 
 
 
 
 
 
80287e2
 
 
 
 
 
 
5ca2077
 
 
 
 
 
 
80287e2
 
 
 
 
 
 
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import re 
from os import getenv
from dotenv import load_dotenv
from pyrogram import filters

load_dotenv()

def get_env_var(var_name, default=None, required=False):
    value = getenv(var_name, default)
    if required and value is None:
        raise ValueError(f"Environment variable {var_name} is required but not set.")
    return value

API_ID = int(get_env_var("API_ID", required=True))
API_HASH = get_env_var("API_HASH", required=True)
BOT_TOKEN = get_env_var("BOT_TOKEN", required=True)
BOT_ID = int(get_env_var("BOT_ID", "0"))
BOT_USERNAME = get_env_var("BOT_USERNAME", "")
OWNER = int(get_env_var("OWNER", "0"))
DEVINE_BOT = int(get_env_var("DEVINE_BOT", "0"))
MONGO_DB_URI = get_env_var("MONGO_DB_URI", required=True)
DURATION_LIMIT_MIN = int(get_env_var("DURATION_LIMIT", 60))
LOGGER_ID = int(get_env_var("LOGGER_ID", "0"))
LOG_CHANNEL_ID = int(get_env_var("LOG_CHANNEL_ID", "0"))
OWNER_ID = int(get_env_var("OWNER_ID", "0"))
SPECIAL_USER_ID = int(get_env_var("SPECIAL_USER_ID", "0"))
HEROKU_APP_NAME = get_env_var("HEROKU_APP_NAME", "")
HEROKU_API_KEY = get_env_var("HEROKU_API_KEY", "")
UPSTREAM_REPO = get_env_var("UPSTREAM_REPO", "")
UPSTREAM_BRANCH = get_env_var("UPSTREAM_BRANCH", "main")
GIT_TOKEN = get_env_var("GIT_TOKEN", "")
SUPPORT_CHANNEL = get_env_var("SUPPORT_CHANNEL", "https://t.me/dragbots")
SUPPORT_CHAT = get_env_var("SUPPORT_CHAT", "https://t.me/dragbotsupport")
AUTO_LEAVING_ASSISTANT = bool(get_env_var("AUTO_LEAVING_ASSISTANT", False))
SPOTIFY_CLIENT_ID = get_env_var("SPOTIFY_CLIENT_ID", "")
SPOTIFY_CLIENT_SECRET = get_env_var("SPOTIFY_CLIENT_SECRET", "")
PLAYLIST_FETCH_LIMIT = int(get_env_var("PLAYLIST_FETCH_LIMIT", 50))
TG_AUDIO_FILESIZE_LIMIT = int(get_env_var("TG_AUDIO_FILESIZE_LIMIT", 1073741824))
TG_VIDEO_FILESIZE_LIMIT = int(get_env_var("TG_VIDEO_FILESIZE_LIMIT", 1073741824))
STRING1 = get_env_var("STRING_SESSION", required=True)
STRING2 = get_env_var("STRING_SESSION2", None)
STRING3 = get_env_var("STRING_SESSION3", None)
STRING4 = get_env_var("STRING_SESSION4", None)
STRING5 = get_env_var("STRING_SESSION5", None)

BANNED_USERS = filters.user()
adminlist = {}
lyrical = {}
votemode = {}
autoclean = []
confirmer = {}

START_IMG_URL = getenv(
    "START_IMG_URL", "https://telegra.ph//file/db4ac98cf05117a23561c.jpg"
)
PING_IMG_URL = getenv(
    "PING_IMG_URL", "https://telegra.ph//file/8006562b937927f7f5d44.jpg"
)
PLAYLIST_IMG_URL = getenv("PLAYLIST_IMG_URL", "https://telegra.ph//file/38590cc5ed3f3c20c0bb2.jpg")
STATS_IMG_URL = getenv("STATS_IMG_URL", "https://telegra.ph//file/3673959668f6d4a9b0a7f.jpg")
TELEGRAM_AUDIO_URL = getenv("TELEGRAM_AUDIO_URL", "https://telegra.ph//file/ada746f1818a0df27dd07.jpg")
TELEGRAM_VIDEO_URL = getenv("TELEGRAM_VIDEO_URL", "https://telegra.ph//file/ef6fd57813e0436a49fd9.jpg")
STREAM_IMG_URL = getenv("STREAM_IMG_URL", "https://telegra.ph//file/db4ac98cf05117a23561c.jpg")
SOUNCLOUD_IMG_URL = getenv("SOUNCLOUD_IMG_URL", "https://telegra.ph//file/bf1f5fced5f679079a6f4.jpg")
YOUTUBE_IMG_URL = getenv("YOUTUBE_IMG_URL", "https://telegra.ph//file/bf1f5fced5f679079a6f4.jpg")
SPOTIFY_ARTIST_IMG_URL = getenv("SPOTIFY_ARTIST_IMG_URL", "https://telegra.ph//file/f5dba4886f4b88ef0bc7f.jpg")
SPOTIFY_ALBUM_IMG_URL = getenv("SPOTIFY_ALBUM_IMG_URL", "https://telegra.ph//file/010673cfe1de7a3950cca.jpg")
SPOTIFY_PLAYLIST_IMG_URL = getenv("SPOTIFY_PLAYLIST_IMG_URL", "https://telegra.ph//file/b4cb569d48c71674080ef.jpg")
STATUS_IMG_URL = getenv("STATUS_IMG_URL", "https://telegra.ph//file/1cc1cda34e5127dfb6466.jpg")

def time_to_seconds(time):
    stringt = str(time)
    return sum(int(x) * 60**i for i, x in enumerate(reversed(stringt.split(":"))))

DURATION_LIMIT = int(time_to_seconds(f"{DURATION_LIMIT_MIN}:00"))

# Auto-fix missing scheme
if SUPPORT_CHAT and not SUPPORT_CHAT.startswith(("http://", "https://")):
    SUPPORT_CHAT = "https://" + SUPPORT_CHAT

if SUPPORT_CHANNEL and not SUPPORT_CHANNEL.startswith(("http://", "https://")):
    SUPPORT_CHANNEL = "https://" + SUPPORT_CHANNEL

if SUPPORT_CHANNEL:
    if not re.match("(?:http|https)://", SUPPORT_CHANNEL):
        raise SystemExit("[ERROR] - Your SUPPORT_CHANNEL url is wrong. Please ensure that it starts with https://")

if SUPPORT_CHAT:
    if not re.match("(?:http|https)://", SUPPORT_CHAT):
        raise SystemExit("[ERROR] - Your SUPPORT_CHAT url is wrong. Please ensure that it starts with https://")