Python
Разработка плагинов с использованием Python.
Перед началом разработки рекомендую ознакомиться с информацией об system-python из Файла с флагами.
Следуйте инструкции
1. Создайте папку с названием в виде имени будущего плагина.
Далее можете продолжить следовать инструкции или скачать готовый пример и на его основе создать свой плагин. Чтобы установить данный плагин, не распаковывая, перетащите файл на список установленных плагинов. Для просмотра и редактирования рекомендую воспользоваться архиватором 7-Zip со сжатием Нормальное.
Установленный плагин SimplePy3 активируется командой /sp3 и выводит список установленных библиотек в виртуальном окружении (venv). Для теста, прописана установка Flask и requests. Во время установки плагина будут появляться окна консоли, ожидайте пока процесс завершится и не будет написано Press the Enter key to continue...
Ниже представлен примерный вывод после работы команды /sp3

2. В данной папке (далее в гайде просто main_folder)
{main_folder} = main_folder. Все переменные в гайде обозначаются в фигурных скобках.
3. Создайте следующую структуру файлов:
{main_folder}\main.manifest
{main_folder}\main.pyВы также можете создать файл setup.py ({main_folder}\setup.py) и записать в данный файл PowerShell код, который необходимо выполнить сразу по окончании устаеновки плагина и до его первого запуска.
Если требуются какие-то сторонние библиотеки, то их необходимо описать в файле requirements.txt ({main_folder}\requirements.txt). В данном случае, будет создано отдельное виртуальное окружение только для вашего плагина, в которое будут установлены все необходимые библиотеки с помощью pip.
Виртуальное окружение (venv) будет создано и использоваться, только, если имеется файл requirements.txt с пакетами-зависимостями. Иначе – будет просто использован портативный Python. Можно использовать флаг system-python и тогда будет использоваться установленный вами Python для запуска плагина или для создания venv.
Портативный Python скачивается, только при установке хотя бы одного плагина. Python совершенно не является обязательным для Shark Remote.
4. В файл main.manifest (текстовый файл манифеста плагина с надстройками) вставьте следующий текст:
Описание
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 следующий код (базовый пример):
Для вывода текста в 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
Данная строка является обязательной для файла плагина!
8. Создайте zip архив с папкой {main_folder} (рекомендую воспользоваться архиватором 7-Zip со сжатием Нормальное)
Нужно заархивировать не саму папку, а её содержимое!
9. Переименуйте файл в {main_folder} и измените расширение архива на srp
10. Установите файл через Shark Remote.
11. Тестируйте!
Вес установочного файла плагина (созданного архива) должен не превышать 10 мегабайт, иначе установить будет нельзя. Однако, если вы точно уверены в своём плагине, то можно использовать флаг big-bang=1 (подробнее)
Last updated
