forked from uniborg/uniborg
Merge branch 'master' of https://github.com/uniborg/uniborg
This commit is contained in:
commit
b6b262f93d
|
@ -1,16 +1,14 @@
|
|||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
from telethon import events, utils
|
||||
from telethon.tl import types, functions
|
||||
|
||||
import re
|
||||
import asyncio
|
||||
import random
|
||||
import json
|
||||
import urllib.request
|
||||
import urllib.parse
|
||||
|
||||
from telethon import events
|
||||
|
||||
pats = []
|
||||
oops = "OOPSIE WOOPSIE!! Uwu We madea fucky wucky!! A wittle fucko boingo! " \
|
||||
"The code monkeys at our headquarters are working VEWY HAWD to fix " \
|
||||
|
@ -33,7 +31,7 @@ async def on_pat(event):
|
|||
pats = json.loads(urllib.request.urlopen(urllib.request.Request(
|
||||
"http://headp.at/js/pats.json",
|
||||
headers={"User-Agent": "Mozilla/5.0 (X11; U; Linux i686) "
|
||||
"Gecko/20071127 Firefox/2.0.0.11"}
|
||||
"Gecko/20071127 Firefox/2.0.0.11"}
|
||||
)).read().decode("utf-8"))
|
||||
except Exception as e:
|
||||
print(e)
|
||||
|
|
|
@ -109,7 +109,7 @@ async def reparse(event):
|
|||
message, msg_entities = await borg._parse_message_text(event.text, parse)
|
||||
# filter out entities that we don't generate
|
||||
old_entities = []
|
||||
for entity in (event.message.entities or []):
|
||||
for entity in event.message.entities or []:
|
||||
if isinstance(entity, PARSED_ENTITIES):
|
||||
old_entities.append(entity)
|
||||
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
import os
|
||||
import sys
|
||||
import uuid
|
||||
from telethon import events, utils
|
||||
from telethon.tl import types, functions
|
||||
from telethon.tl import types
|
||||
|
||||
|
||||
TYPE_TEXT = 0
|
||||
|
|
|
@ -21,7 +21,7 @@ async def load_reload(event):
|
|||
borg.load_plugin(shortname)
|
||||
|
||||
msg = await event.respond(
|
||||
f"Successfully (re)loaded plugin {shortname}")
|
||||
f"Successfully (re)loaded plugin {shortname}")
|
||||
await asyncio.sleep(DELETE_TIMEOUT)
|
||||
await borg.delete_messages(msg.to_id, msg)
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
import os
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
FILE_NAME = 'data.json'
|
||||
|
@ -21,11 +21,11 @@ class Storage:
|
|||
self._storage._save()
|
||||
|
||||
def __init__(self, root):
|
||||
self._root = root
|
||||
self._root = Path(root)
|
||||
self._autosave = True
|
||||
self._guard = self._Guard(self)
|
||||
if os.path.isfile(os.path.join(self._root, FILE_NAME)):
|
||||
with open(os.path.join(self._root, FILE_NAME)) as fp:
|
||||
if (self._root / FILE_NAME).is_file():
|
||||
with open(self._root / FILE_NAME) as fp:
|
||||
self._data = json.load(fp)
|
||||
else:
|
||||
self._data = {}
|
||||
|
@ -47,7 +47,7 @@ class Storage:
|
|||
self._save()
|
||||
|
||||
def _save(self):
|
||||
if not os.path.isdir(self._root):
|
||||
os.makedirs(self._root, exist_ok=True)
|
||||
with open(os.path.join(self._root, FILE_NAME), 'w') as fp:
|
||||
if not self._root.is_dir():
|
||||
self._root(parents=True, exist_ok=True)
|
||||
with open(self._root / FILE_NAME, 'w') as fp:
|
||||
json.dump(self._data, fp)
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
import os
|
||||
import asyncio
|
||||
import importlib.util
|
||||
import logging
|
||||
|
@ -24,15 +23,15 @@ class Uniborg(TelegramClient):
|
|||
# storage should be a callable accepting plugin name -> Storage object.
|
||||
# This means that using the Storage type as a storage would work too.
|
||||
self._name = session
|
||||
self.storage = storage or (lambda n: Storage(os.path.join('data', n)))
|
||||
self.storage = storage or (lambda n: Storage(Path("data") / n))
|
||||
self._logger = logging.getLogger(session)
|
||||
self._plugins = {}
|
||||
self._plugin_path = plugin_path
|
||||
|
||||
super().__init__(
|
||||
session,
|
||||
6, "eb06d4abfb49dc3eeb1aeb98ae0f581e", # yarr
|
||||
**kwargs)
|
||||
kwargs = {
|
||||
"api_id": 6, "api_hash": "eb06d4abfb49dc3eeb1aeb98ae0f581e",
|
||||
**kwargs}
|
||||
super().__init__(session, **kwargs)
|
||||
|
||||
# This is a hack, please avert your eyes
|
||||
# We want this in order for the most recently added handler to take
|
||||
|
@ -99,6 +98,6 @@ class Uniborg(TelegramClient):
|
|||
raise
|
||||
|
||||
fut.add_done_callback(
|
||||
lambda _: self.remove_event_handler(cb, event_matcher))
|
||||
lambda _: self.remove_event_handler(cb, event_matcher))
|
||||
|
||||
return fut
|
||||
|
|
|
@ -20,7 +20,7 @@ async def is_read(borg, entity, message, is_out=None):
|
|||
is_out = getattr(message, "out", is_out)
|
||||
if not isinstance(is_out, bool):
|
||||
raise ValueError(
|
||||
"Message was id but is_out not provided or not a bool")
|
||||
"Message was id but is_out not provided or not a bool")
|
||||
message_id = getattr(message, "id", message)
|
||||
if not isinstance(message_id, int):
|
||||
raise ValueError("Failed to extract id from message")
|
||||
|
|
Loading…
Reference in New Issue