예제 #1
0
async def on_command(update, store):
    # Отлично, мы снова готовы писать команду!
    # Итак давай скажем, что мы хотим проверить беседа ли это?
    if update.is_multichat:
        await store.reply("Вау, это сообщение пришло из беседы.")
    # В остальных случаях будет else

    # А что если мы хотим загрузить какое-нибудь изображение??????
    # Значит, что мы можем предпринять?
    # Выход один, придётся вызывать метод
    photo = await store.upload_photo(
        "example/google-chan.png"
    )  # Давай загрузим смущающуюся Google-Chan из папки Example
    # ЗАМЕЧУ, что аргументом может быть bytes, тоесть io.Bytes тоже будет работать с его буффером, который зачастую используется для
    # сохранения из Pillow, и других модулей
    if photo:
        Logger.Slog(
            "Теперь у нас есть изображение на сервере ВК, давайте пока его оставим в покое."
        )

    # А что если мы хотим загрузить документ???? Казалось бы цель опять не достигаема, но нам на помощь опять приходит метод
    # Всё как с загрузкой фото, только на этот раз загрузим текст из папки, но также можно использовать io.Bytes, bytes и т.д.
    doc = await store.upload_doc(
        "example/super_file.txt", filename="yui_bot_test_ex.txt"
    )  # Загрузим его на сервер с именем, yui_bot_test_ex.txt, по умолчанию будет file.png
    if doc:
        Logger.Slog("И снова шок, теперь у нас есть загруженный документ")

    # Так теперь давайте отправлять нашему пользователю, а то заждался наверное пока я тут пишу это.
    attachments = [photo, doc]

    # ИЛИ await store.reply("text", attachment=photo)
    return await store.reply("Спасибо за ожидание, меня вводили в курс дела",
                             attachment=attachments)
예제 #2
0
파일: Yui.py 프로젝트: KotRikD/Project-yui
    def call_init(self):
        plugin_folder_files = os.listdir("plugins")
        if not plugin_folder_files:
            Logger.Elog("Не было найдено плагинов! Создайте хоть один плагин")
            exit()

        sys.path.insert(0, "plugins")
        for file in plugin_folder_files:
            if file.startswith("__"):
                continue
            try:
                plugin_subfolder = os.listdir(f"plugins/{file}")
                sys.path.insert(0, f"plugins/{file}")
                for subfiles in plugin_subfolder:
                    if subfiles.endswith(".py"):
                        try:
                            a = __import__(
                                os.path.splitext(subfiles)[0], None, None,
                                [''])
                            Logger.Slog(f"Юи загрузила плагин {subfiles}")
                        except Exception as err:
                            traceback.print_exc()
            except Exception:
                pass

            if file.endswith(".py"):
                try:
                    a = __import__(os.path.splitext(file)[0], None, None, [''])
                    Logger.Slog(f"Юи загрузила плагин {file}")
                except Exception as err:
                    traceback.print_exc()
        return True