mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-25 19:03:46 +03:00
Report errors in the background not to interfer with users (#262)
This commit is contained in:
parent
c0ee123156
commit
01c91bb895
|
@ -1,5 +1,6 @@
|
|||
import urllib.request
|
||||
import re
|
||||
from threading import Thread
|
||||
|
||||
from .common import (
|
||||
ReadCancelledError, InvalidParameterError, TypeNotFoundError,
|
||||
|
@ -18,21 +19,28 @@ from .rpc_errors_401 import *
|
|||
from .rpc_errors_420 import *
|
||||
|
||||
|
||||
def report_error(code, message, report_method):
|
||||
try:
|
||||
# Ensure it's signed
|
||||
report_method = int.from_bytes(
|
||||
report_method.to_bytes(4, 'big'), 'big', signed=True
|
||||
)
|
||||
url = urllib.request.urlopen(
|
||||
'https://rpc.pwrtelegram.xyz?code={}&error={}&method={}'
|
||||
.format(code, message, report_method)
|
||||
)
|
||||
url.read()
|
||||
url.close()
|
||||
except:
|
||||
"We really don't want to crash when just reporting an error"
|
||||
|
||||
|
||||
def rpc_message_to_error(code, message, report_method=None):
|
||||
if report_method is not None:
|
||||
try:
|
||||
# Ensure it's signed
|
||||
report_method = int.from_bytes(
|
||||
report_method.to_bytes(4, 'big'), 'big', signed=True
|
||||
)
|
||||
url = urllib.request.urlopen(
|
||||
'https://rpc.pwrtelegram.xyz?code={}&error={}&method={}'
|
||||
.format(code, message, report_method)
|
||||
)
|
||||
url.read()
|
||||
url.close()
|
||||
except:
|
||||
"We really don't want to crash when just reporting an error"
|
||||
Thread(
|
||||
target=report_method,
|
||||
args=(code, message, report_method)
|
||||
).start()
|
||||
|
||||
errors = {
|
||||
303: rpc_errors_303_all,
|
||||
|
|
Loading…
Reference in New Issue
Block a user