AutoZoom/rpc.py

303 lines
16 KiB
Python
Raw Normal View History

# -*- coding: utf-8 -*-
import time
import os
import sys
from colors import *
from functions import *
2021-11-03 09:20:15 +02:00
version = '2.4'
import libinstaller
from pypresence import Presence
client_id = '800049969960058882'
RPC = Presence(client_id,pipe=0)
connected = False
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
try:
RPC.connect()
connected = True
except:
pass
else:
connected = False
def disconnect():
2021-04-07 23:57:02 +03:00
global connected
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
try:
RPC.close()
connected = False
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC disconnected')
except:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to disconnect')
def connect():
2021-04-07 23:57:02 +03:00
global connected
try:
RPC.connect()
connected = True
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC connected')
except:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to connect')
def reset():
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
RPC.clear()
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC status cleared')
def waitLesson(lesson, start):
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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)
2021-04-24 03:08:43 +03:00
appendLog(f'Discord RPC changed to waitLesson (Lesson: {lesson}, Start: {start})')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 onLesson(lesson, start):
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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)
2021-04-24 03:08:43 +03:00
appendLog(f'Discord RPC changed to onLesson (Lesson: {lesson}, Start: {start})')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 inMenu():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В главном меню')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to inMenu')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 shutdown(end):
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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)
2021-04-24 03:08:43 +03:00
appendLog(f'Discord RPC changed to shutdown (End: {end})')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 inSettings():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В главном меню')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to inSettings')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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)
2021-04-30 03:25:36 +03:00
def inDebug():
try:
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В меню разработчика')
2021-04-30 03:25:36 +03:00
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)
2021-11-03 09:20:15 +02:00
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)
2021-04-30 03:25:36 +03:00
def inEditor():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В главном меню')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to inEditor')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 inUpdater():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В главном меню')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to inUpdater')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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 inHelp():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='В главном меню')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to inHelp')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
except AssertionError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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)
2021-04-24 03:08:43 +03:00
def lessonEnded():
try:
2021-04-30 03:25:36 +03:00
if getConfig("use_rpc") and getOS != "android":
2021-04-24 03:08:43 +03:00
if connected == False:
connect()
2021-05-08 01:28:41 +03:00
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='Все конференции закончились')
2021-04-24 03:08:43 +03:00
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)
2021-11-03 09:20:15 +02:00
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)
if __name__ == "__main__":
try:
RPC.connect()
2021-05-08 01:28:41 +03:00
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='Режим отладки')
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC changed to debug')
except AttributeError:
2021-04-24 03:08:43 +03:00
appendLog('Discord RPC failed to change status')
if getConfig("debug"):
print(f'{RESET}Модуль {BRED}Discord RPC {RESET}не смог подключиться.\nВозможно, ваш {CYAN}Discord {RESET}не открыт.')
2021-04-07 23:57:02 +03:00
time.sleep(1)
2021-11-03 09:20:15 +02:00
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)