Skip to content

🤖 Дополнительные функции бота

Здесь вы можете увидеть дополнительные возможности бота, которые можно использовать при создании модулей.

📥 Загрузка модуля

python
def load_module(self, name: str) -> Optional[str]:

INFO

Где name - имя папки с модулем, далее внутреннее имя. Возвращает основное имя модуля (указанное в config.yaml) при успехе, и None при неудаче

📤 Выгрузка модуля

python
def unload_module(self, name: str):

INFO

name по аналогии с загрузкой. Не возвращает ничего

WARNING

Не забывайте использовать callback on_unload, чтобы безопасно завершать все циклы событий (или другие задачи), иначе есть риск их утечки в память

✅ Установка модуля

Установка модулей происходит только с удаленных git репозиториев

python
def install_from_git(self, url: str) -> (int, str):

INFO

url - Ссылка на удаленный репо. Возвращает кортеж из кода выхода git и `STDOUT

🔃 Проверка обновлений модуля

python
def check_for_updates(self, name: str, directory: str) -> Optional[bool]:

INFO

name - внутреннее имя модуля или расширения, directory - папка с модулями или расширениями. Возвращает True, если есть новые коммиты, False, если они актуальны, или None при ошибке

🔄 Обновление модуля/расширения

python
def update_from_git(self, name: str, directory: str) -> (int, str):

INFO

name - внутреннее имя модуля или расширения, directory - папка с модулями или расширениями. Возвращает кортеж из кода выхода git и `STDOUT

🗑️ Удаление модуля

python
def uninstall_module(self, name: str) -> bool:

INFO

name - внутреннее имя модуля. Возвращает True - успех, False- неудача

⬇️ Получение внутреннего имени из обычного

python
def get_int_name(self, name: str) -> Optional[str]:

INFO

name - имя модуля. Возвращает внутреннее имя модуля при успехе.