Updated to v2.5
This commit is contained in:
parent
363de17c08
commit
25bf0064b7
@ -39,9 +39,15 @@ AutoZoom создан для автоматизации присоединени
|
||||
2. Попробуйте запустить ваш `start.bat` в папке `AutoZoom`. Возможно, он сам отправит вас на страницу загрузки Python.
|
||||
Если же этого не произошло - сделать это можно вручную с официального сайта или из магазина приложений
|
||||
Microsoft Store (https://www.microsoft.com/ru-ru/p/python-37/9nj46sx7x90p?activetab=pivot:overviewtab&source=lp).
|
||||
В случае установки без MS Store - достаточно скачать инсталлер с оф. сайта Python (https://www.python.org/downloads/).
|
||||
Для установки на Linux необходимо использовать стандартный менеджер пакетов (apt, yum, rpm и т.д.)
|
||||
Инструкции по установке версий Python3 на Linux вы можете самостоятельно в зависимости от дистрибутива
|
||||
и желаемой к установке версии Python3.
|
||||
Для установки на Android (в данном случае - внутри Termux) нужно ввести `pkg install python`.
|
||||
|
||||
3. Дважды нажмите на `start.bat` и выберите пункт "Редактор" чтобы редактировать ваши уроки на любой
|
||||
удобный день. Введите все нужные данные. Название конференции, дату, время, ссылку на приглашение.
|
||||
В случае установки на Linux/Android - скрипт запуска будет `start.sh` и его можно запустить через `bash ./start.sh`
|
||||
|
||||
4. Теперь самая важная часть. Установите Zoom (https://zoom.us/download) на свой ПК.
|
||||
Запустите его и зарегистрируйтесь/войдите в аккаунт. При входе ОБЯЗАТЕЛЬНО
|
||||
|
2
main.py
2
main.py
@ -36,7 +36,7 @@ import keyboard
|
||||
import getpass
|
||||
from zipfile import ZipFile
|
||||
|
||||
version = 2.4
|
||||
version = 2.5
|
||||
path = Path(__file__).resolve().parent
|
||||
|
||||
def mainMenu():
|
||||
|
253
rpc.py
253
rpc.py
@ -6,7 +6,7 @@ import sys
|
||||
from colors import *
|
||||
from functions import *
|
||||
|
||||
version = '2.4'
|
||||
version = '2.5'
|
||||
|
||||
import libinstaller
|
||||
from pypresence import Presence
|
||||
@ -17,6 +17,22 @@ RPC = Presence(client_id,pipe=0)
|
||||
|
||||
connected = False
|
||||
|
||||
rpc_dict = {
|
||||
"large_image": "1024_cover",
|
||||
"small_image": {
|
||||
"waiting": "status_waiting",
|
||||
"conference": "status_lesson",
|
||||
"menu": "status_menu",
|
||||
"shutdown": "status_shutdown",
|
||||
"settings": "status_settings",
|
||||
"debug": "status_debug",
|
||||
"editor": "status_editing",
|
||||
"updating": "status_updating",
|
||||
"support": "status_support"
|
||||
},
|
||||
"large_text": "AutoZoom • v%version%\nhttp://bit.ly/auto_zoom"
|
||||
}
|
||||
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
try:
|
||||
RPC.connect()
|
||||
@ -53,14 +69,22 @@ def reset():
|
||||
appendLog('Discord RPC status cleared')
|
||||
|
||||
|
||||
|
||||
def waitLesson(lesson, start):
|
||||
def changePresence(sml_img, sml_txt, stt, dtls, start=None, end=None):
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_waiting', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Ожидание', state=f'Ждём начала «{lesson}»', details='Конференция не началась', start=start)
|
||||
appendLog(f'Discord RPC changed to waitLesson (Lesson: {lesson}, Start: {start})')
|
||||
RPC.update(
|
||||
large_image=rpc_dict["large_image"],
|
||||
small_image=rpc_dict["small_image"][sml_img],
|
||||
large_text=rpc_dict["large_text"].replace("%version%", str(version)),
|
||||
small_text=sml_txt,
|
||||
state=stt,
|
||||
details=dtls,
|
||||
start=start,
|
||||
end=end
|
||||
)
|
||||
appendLog(f'Discord RPC changed: (Small image: {sml_img}, Small text: {sml_txt}, State: {stt}, Details: {dtls}, Start: {str(start)}, End: {str(end)})')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
@ -77,226 +101,37 @@ def waitLesson(lesson, start):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
|
||||
def onLesson(lesson, start):
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_lesson', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Конференция', state=f'Слушаем «{lesson}»', details='Идёт конференция', start=start)
|
||||
appendLog(f'Discord RPC changed to onLesson (Lesson: {lesson}, Start: {start})')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
|
||||
def waitLesson(conference, start):
|
||||
changePresence("waiting", "Ожидание", f"Ждём начала «{conference}»", "Конференция не началась", start=start)
|
||||
|
||||
def onLesson(conference, start):
|
||||
changePresence("conference", "Конференция", f"Слушаем «{conference}»", "Идёт конференция", start=start)
|
||||
|
||||
def inMenu():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_menu', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Главное меню', state='Открыт список опций', details='В главном меню')
|
||||
appendLog('Discord RPC changed to inMenu')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("menu", "Главное меню", "Открыт список опций", "В главном меню")
|
||||
|
||||
def shutdown(end):
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_shutdown', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Выключение', state='Отсчёт до авто-выключения', details='Выключение ПК', end=end)
|
||||
appendLog(f'Discord RPC changed to shutdown (End: {end})')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("shutdown", "Выключение", "Отсчёт до авто-выключения", "Выключение ПК", end=end)
|
||||
|
||||
def inSettings():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_settings', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Настройки', state='Открыты настройки', details='В главном меню')
|
||||
appendLog('Discord RPC changed to inSettings')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("settings", "Настройки", "Открыты настройки", "В главном меню")
|
||||
|
||||
def inDebug():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_debug', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Отладка', state='Открыто меню отладки', details='В меню разработчика')
|
||||
appendLog('Discord RPC changed to inDebug')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("debug", "Отладка", "Открыто меню отладки", "В меню разработчика")
|
||||
|
||||
def inEditor():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_editing', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Редактор', state='Открыт редактор', details='В главном меню')
|
||||
appendLog('Discord RPC changed to inEditor')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("editor", "Редактор", "Открыт редактор", "В главном меню")
|
||||
|
||||
def inUpdater():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_updating', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Обновление', state='Открыт центр обновлений', details='В главном меню')
|
||||
appendLog('Discord RPC changed to inUpdater')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("updating", "Обновление", "Открыт центр обновлений", "В главном меню")
|
||||
|
||||
def inHelp():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_support', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Помощь', state='Открыта помощь', details='В главном меню')
|
||||
appendLog('Discord RPC changed to inHelp')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("support", "Помощь", "Открыта помощь", "В главном меню")
|
||||
|
||||
def lessonEnded():
|
||||
try:
|
||||
if getConfig("use_rpc") and getOS != "android":
|
||||
if connected == False:
|
||||
connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_waiting', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Ожидание', state=f'Ждём указаний', details='Все конференции закончились')
|
||||
appendLog('Discord RPC changed to lessonEnded')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except AssertionError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("waiting", "Ожидание", "Ждём указаний", "Все конференции закончились")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
try:
|
||||
RPC.connect()
|
||||
RPC.update(large_image='1024_cover', small_image='status_settings', large_text=f'AutoZoom • v{str(version)}\nhttp://bit.ly/auto_zoom', small_text='Отладка', state='Модуль Discord RPC запущен в режиме тестирования', details='Режим отладки')
|
||||
appendLog('Discord RPC changed to debug')
|
||||
except AttributeError:
|
||||
appendLog('Discord RPC failed to change status')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
|
||||
time.sleep(1)
|
||||
except Exception as exp:
|
||||
appendLog(f'Discord RPC failed to change status due to {exp}')
|
||||
if getConfig("debug"):
|
||||
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.\nОшибка: {BRED}{exp}{RESET}')
|
||||
time.sleep(1)
|
||||
changePresence("settings", "Отладка", "Модуль Discord RPC запущен в режиме тестирования", "Режим отладки")
|
Reference in New Issue
Block a user