From 020cdb2a81e0c0d079a6dd2ac5a1096216c14a36 Mon Sep 17 00:00:00 2001 From: xtaodada Date: Fri, 2 Aug 2024 20:54:10 +0800 Subject: [PATCH] feat: push to telegram --- .github/scripts/photo.jpg | Bin 0 -> 24070 bytes .github/scripts/requirements.txt | 2 + .github/scripts/upload.py | 85 +++++++++++++++++++++++++++++++ .github/workflows/android.yml | 8 +++ 4 files changed, 95 insertions(+) create mode 100644 .github/scripts/photo.jpg create mode 100644 .github/scripts/requirements.txt create mode 100644 .github/scripts/upload.py diff --git a/.github/scripts/photo.jpg b/.github/scripts/photo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0dd2f6c67e19a98129e3bfcfd40921af3fdd4114 GIT binary patch literal 24070 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 F{{@H&;iCWm literal 0 HcmV?d00001 diff --git a/.github/scripts/requirements.txt b/.github/scripts/requirements.txt new file mode 100644 index 0000000..24a0ea4 --- /dev/null +++ b/.github/scripts/requirements.txt @@ -0,0 +1,2 @@ +git+https://github.com/KurimuzonAkuma/pyrogram +PyroTgCrypto==1.2.6a0 diff --git a/.github/scripts/upload.py b/.github/scripts/upload.py new file mode 100644 index 0000000..883b8b0 --- /dev/null +++ b/.github/scripts/upload.py @@ -0,0 +1,85 @@ +import contextlib +from pathlib import Path +from sys import argv + +from pyrogram import Client +from pyrogram.types import InputMediaDocument + +api_id = 11535358 +api_hash = "33d372962fadb01df47e6ceed4e33cd6" +artifacts_path = Path("out") + + +def find_apk(abi: str) -> Path: + apks = list(artifacts_path.glob("*.apk")) + for apk in apks: + if abi in apk.name: + return apk + + +def get_thumb() -> str: + return ".github/scripts/photo.jpg" + + +def get_caption() -> str: + return "【版本更新】 米游社 App #apk " + + +def get_document() -> list["InputMediaDocument"]: + documents = [] + abis = ["app", "miyoushe", "hoyolab"] + for abi in abis: + if apk := find_apk(abi): + documents.append( + InputMediaDocument( + media=str(apk), + thumb=get_thumb(), + ) + ) + documents[-1].caption = get_caption() + return documents + + +def retry(func): + async def wrapper(*args, **kwargs): + for _ in range(3): + try: + return await func(*args, **kwargs) + except Exception as e: + print(e) + + return wrapper + + +@retry +async def send_to_channel(client: "Client", cid: str): + with contextlib.suppress(ValueError): + cid = int(cid) + await client.send_media_group( + cid, + media=get_document(), + ) + + +def get_client(bot_token: str): + return Client( + "helper_bot", + api_id=api_id, + api_hash=api_hash, + bot_token=bot_token, + ) + + +async def main(): + bot_token = argv[1] + chat_id = argv[2] + client = get_client(bot_token) + await client.start() + await send_to_channel(client, chat_id) + await client.log_out() + + +if __name__ == "__main__": + from asyncio import run + + run(main()) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 5982adc..5159bd8 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -39,6 +39,14 @@ jobs: with: name: Artifacts path: out + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: 3.12 + - name: Send to Telegram + run: | + python -m pip install -r .github/scripts/requirements.txt + python .github/scripts/upload.py ${{ secrets.HELPER_BOT_TOKEN }} ${{ secrets.HELPER_BOT_TARGET }} - name: Set up Node 16 uses: actions/setup-node@v3 with: