From e0b4ca1eb46a3ef35fa344ac1346e6acefe26761 Mon Sep 17 00:00:00 2001 From: "koizumi.aoi" Date: Sun, 29 Jan 2023 23:12:45 +0000 Subject: [PATCH] The Metwo Syndrome Signed-off-by: Aoi K git-svn-id: file:///srv/svn/repo/chen/trunk@15 32723744-9b23-0b4a-b1da-9b2e968f9461 --- COPYING | 13 +++++-- README.org | 7 ++-- angel.png | Bin 75752 -> 0 bytes main.py | 92 +++++------------------------------------------ requirements.txt | 1 - 5 files changed, 22 insertions(+), 91 deletions(-) delete mode 100644 angel.png diff --git a/COPYING b/COPYING index 66db127..a8d379a 100644 --- a/COPYING +++ b/COPYING @@ -1,9 +1,16 @@ Discordian Public License (DPL) All Rites Reversed Ⓚ (3188) (czar) +All Rites Reversed (ĸ) 3189 Aoi K. -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, to any person obtaining a copy of this +material without restriction, including but not limited the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the material, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +YOU AGREE THAT THERE IS NO GODDESS BUT GODDESS AND SHE IS YOUR GODDESS & +THAT THERE IS NO ERISIAN MOVEMENT BUT THE ERISIAN MOVEMENT AND IT IS THE +ERISIAN MOVEMENT. -THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +HAIL ERIS! +FIVE TONS OF FLAX \ No newline at end of file diff --git a/README.org b/README.org index 0e1bc9f..d96be4e 100644 --- a/README.org +++ b/README.org @@ -1,7 +1,8 @@ -#+TITLE: Angel XMPP bot -#+AUTHOR: czar +#+TITLE: Chen XMPP bot +#+AUTHOR: Aoi K. -XMPP bot to preview links and file contents +XMPP bot to preview links and file contents. This may be identified as [[https://gt.kalli.st/czar/angel][angel]]'s +younger sibling. * Configuration copy the =config.ini.default= to =.config.ini= and set your variables accordly diff --git a/angel.png b/angel.png deleted file mode 100644 index 991cbb439335ca18b4a9ea9fd54b514e7ed1fb57..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75752 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 CCeUdB diff --git a/main.py b/main.py index 334cb2b..3749f32 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,5 @@ import requests import bs4 -import youtube_dl import random import configparser import re @@ -30,18 +29,8 @@ headers = { "Cache-Control": "no-cache", } -youtube_links = ["www.youtube.com", "m.youtube.com"] - -youtube_link = "youtu.be" - -ydl = youtube_dl.YoutubeDL() - -invidious_instances = ["invidious.snopyta.org"] - block_list = ("localhost", "127.0.0.1", "0.0.0.0") - req_list = ("http://", "https://") - html_files = ("text/html", "application/xhtml+xml") @@ -60,26 +49,7 @@ class Lifo(list): self.pop() -def get_youtube_title(url): - try: - info = ydl.extract_info(url, download=False) - return info["title"] - except Exception: - return "" - - -def get_invidious_link(yurl): - video = yurl.split("/")[-1] - instance = random.choice(invidious_instances) - return f"https://{instance}/watch?v={video}" - - -def get_yurl(path): - yurl = f"https://youtu.be/{path}" - return yurl - - -class AngelBot(ClientXMPP): +class ChenBot(ClientXMPP): messages = defaultdict( lambda: { "messages": Lifo(100), @@ -93,28 +63,9 @@ class AngelBot(ClientXMPP): urls = [u for u in str_list if any(r in u for r in req_list)] return urls - def send_youtube_info(self, uri, sender, mtype): - if uri.netloc == youtube_link: - yurl = get_yurl(uri.path) - elif "v" in (query := parse_qs(uri.query)): - if v := query["v"]: - yurl = get_yurl(v[0]) - else: - return - if output := get_youtube_title(yurl): - if output in self.messages[sender]["previews"]: - return - self.messages[sender]["previews"].add(output) - - invidious = get_invidious_link(yurl) - self.send_message(mto=sender, mbody=f"*{output}*", mtype=mtype) - self.send_message(mto=sender, mbody=invidious, mtype=mtype) - async def parse_uri(self, uri, sender, mtype): netloc = uri.netloc - if netloc in (youtube_links + [youtube_link]): - self.send_youtube_info(uri, sender, mtype) - elif netloc.split(":")[0] in block_list: + if netloc.split(":")[0] in block_list: return else: await self.process_link(uri, sender, mtype) @@ -219,7 +170,7 @@ class AngelBot(ClientXMPP): except Exception: return - def __init__(self, jid, password, nick="angel", autojoin=None): + def __init__(self, jid, password, nick="Chen", autojoin=None): ClientXMPP.__init__(self, jid, password) self.jid = jid self.nick = nick @@ -251,36 +202,10 @@ class AngelBot(ClientXMPP): ... async def update_info(self): - with open("angel.png", "rb") as avatar_file: - avatar = avatar_file.read() - - avatar_type = "image/png" - avatar_id = self.plugin["xep_0084"].generate_id(avatar) - avatar_bytes = len(avatar) - - info = { - "id": avatar_id, - "type": avatar_type, - "bytes": avatar_bytes, - } - vcard = self.plugin["xep_0054"].make_vcard() - - vcard["URL"] = "https://gt.kalli.st/czar/angel" - + vcard["URL"] = "https://gt.kalli.st/novaburst/chen" asyncio.gather(self.plugin["xep_0054"].publish_vcard(vcard)) - asyncio.gather(self.plugin["xep_0084"].publish_avatar(avatar)) - - asyncio.gather( - self.plugin["xep_0153"].set_avatar( - avatar=avatar, - mtype=avatar_type, - ) - ) - - asyncio.gather(self.plugin["xep_0084"].publish_avatar_metadata([info])) - async def message(self, msg): if msg["type"] in ("chat", "normal"): mtype = "chat" @@ -323,11 +248,10 @@ class AngelBot(ClientXMPP): if __name__ == "__main__": config = configparser.ConfigParser() config.read("config.ini") - jid = config["angel"]["jid"] - password = config["angel"]["password"] - autojoin = config["angel"]["autojoin"].split() - - bot = AngelBot(jid, password, autojoin=autojoin) + jid = config["chen"]["jid"] + password = config["chen"]["password"] + autojoin = config["chen"]["autojoin"].split() + bot = ChenBot(jid, password, autojoin=autojoin) bot.connect() bot.process(forever=True) diff --git a/requirements.txt b/requirements.txt index f437636..a1a4d74 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,6 +2,5 @@ requests slixmpp beautifulsoup4 git+https://github.com/GillesArcas/PythonSed#egg=PythonSed -youtube-dl pantomime aiohttp