Skip to main content
1

Настройка окружения

Убедитесь, что вы настроили среду для разработки плагинов, как описано в официальной документации Exteragram. Вам понадобится установленный Python 3.8.
2

Создание плагина

Создайте файл с расширением .plugin и следуйте начальным инструкциям.
3

Импорт CactusLib

Дальнейший первый шаг в коде вашего плагина — импортировать необходимые компоненты из CactusLib. CactusLib должен быть установлен в вашем Exteragram.Скопируйте необходимый вам кусок кода ниже и вставьте в плагин.
FirstPlugin.plugin
4

Создание класса плагина

Ваш основной класс плагина обязательно должен наследоваться от CactusUtils.Plugin (или его псевдонимов CactusUtils.CactusModule, CactusUtils.CactusPlugin). Это дает вашему плагину доступ ко всем утилитам.
FirstPlugin.plugin
5

"Hello, world!"

Давайте создадим простую команду, которая будет отправлять “Hello, World!” в ответ. Для этого мы используем декоратор @command.
FirstPlugin.plugin

Разбор кода:

  • on_plugin_load(): Специальный метод, который вызывается один раз при загрузке плагина. Идеальное место для инициализации различных данных.
  • on_plugin_unload(): Аналогично on_plugin_load(), но вызывается при выгрузке плагина.
  • self.info("..."): Метод для вывода сообщения в logcat с префиксом [my_first_plugin] [INFO].
  • @command(...): Декоратор, который превращает обычный метод Python в команду, доступную пользователю.
    • doc="...": Описание команды, которое будет видно в меню .chelp.
  • hello(self, cmd: CactusUtils.Command):
    • cmd: Объект CactusUtils.Command, содержащий всю информацию о вызове: аргументы, исходное сообщение, ID чата и т.д.
  • cmd.answer("..."): Встроенный метод для отправки ответного сообщения. Он автоматически определяет, куда нужно отправить ответ.
Теперь, если вы установите этот плагин и напишете в любом чате .hello, в чат отправится сообщение Hello, World from MyFirstPlugin!.