Python

Разработка плагинов с использованием Python.

circle-info

Перед началом разработки рекомендую ознакомиться с информацией об system-python из Файла с флагами.

Следуйте инструкции

1. Создайте папку с названием в виде имени будущего плагина.

Далее можете продолжить следовать инструкции или скачать готовый пример и на его основе создать свой плагин. Чтобы установить данный плагин, не распаковывая, перетащите файл на список установленных плагинов. Для просмотра и редактирования рекомендую воспользоваться архиватором 7-Ziparrow-up-right со сжатием Нормальное.

file-download
1KB
Пример готового плагина
circle-info

Установленный плагин SimplePy3 активируется командой /sp3 и выводит список установленных библиотек в виртуальном окружении (venv). Для теста, прописана установка Flask и requests. Во время установки плагина будут появляться окна консоли, ожидайте пока процесс завершится и не будет написано Press the Enter key to continue... Ниже представлен примерный вывод после работы команды /sp3

2. В данной папке (далее в гайде просто main_folder)

circle-info

{main_folder} = main_folder. Все переменные в гайде обозначаются в фигурных скобках.

3. Создайте следующую структуру файлов:

{main_folder}\main.manifest
{main_folder}\main.py
circle-check
circle-info

Виртуальное окружение (venv) будет создано и использоваться, только, если имеется файл requirements.txt с пакетами-зависимостями. Иначе – будет просто использован портативный Python. Можно использовать флаг system-python и тогда будет использоваться установленный вами Python для запуска плагина или для создания venv.

Портативный Python скачивается, только при установке хотя бы одного плагина. Python совершенно не является обязательным для Shark Remote.

4. В файл main.manifest (текстовый файл манифеста плагина с надстройками) вставьте следующий текст:

circle-info

Описание

chat_action_type - тип действия, которое будет написано в чате во время работы файла

Значения

  • 0 - ничего не писать

  • 1 - "Бот набирает сообщение..".

message_type - тип возвращаемого сообщения в Telegram бота

Значения

  • 0 - Текстовое сообщение

  • 1 - Текстовое сообщение с поддержкой HTML форматирования

  • 2 - Ничего не возвращать

arguments_count - количество обязательных принимаемых аргументов плагина от пользователя

Значения

  • От 0 до 4

5. Основной код можно написать в файле main.py в любом текстовом редакторе или редакторе кода. Рекомендуется Visual Studio Code.

6. Вставьте в файл main.py следующий код (базовый пример):

circle-info

Для вывода текста в Telegram бота используйте команду print в коде плагина.

7. Заполните данные (всё без пробелов):

  • {plugin_name} - название плагина, такое же как для {main_folder}

  • {plugin_version} - версия в формате x.x.x.x, где x - число (например: 1.0.0.4)

  • {author} - автор плагина

  • {call_command} - команда для вызова плагина (обязательно начинается с /), например: /hello

Должно получиться что-то похожее: #app HelloWorld, Version="1.0.0.0", Author=developer, Command=/hello

triangle-exclamation

8. Создайте zip архив с папкой {main_folder} (рекомендую воспользоваться архиватором 7-Ziparrow-up-right со сжатием Нормальное)

imagearrow-up-right

triangle-exclamation

9. Переименуйте файл в {main_folder} и измените расширение архива на srp

10. Установите файл через Shark Remote.

11. Тестируйте!

circle-info

Вес установочного файла плагина (созданного архива) должен не превышать 10 мегабайт, иначе установить будет нельзя. Однако, если вы точно уверены в своём плагине, то можно использовать флаг big-bang=1 (подробнее)

Last updated