Class PluginAPI

java.lang.Object
ru.yoricya.tgsaver.PluginAPI

public class PluginAPI extends Object
Основной класс для работы с API ТГСейвера
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
    Интерфейс обработчика команд телеграмма, таких как "/test"
    static class 
    Класс информации о команде (обработчик команд телеграмма)
    static class 
    Класс параметра
    static class 
    Класс для создания событий
    static class 
    Обобщающий класс для Event Data
    static interface 
    Интерфейс регистрации слушателей событий
    static class 
    Класс для определения глобальных параметров (Задумывается для передачи параметров между плагинами) Поддерживает только следующие типы Объектов: Integer, Long, Double, Float, String, Boolean
    static class 
    Приоритеты плагина
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final short
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Создает новый слушатель команд в телеграме
    it.tdlight.jni.TdApi.File
    downloadFile(ru.yoricya.tgsaver.PluginLoader.Plugin pl, int id)
    Скачать файл
    void
    editMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatID, long messageID, it.tdlight.jni.TdApi.InputMessageContent content)
    Изменить сообщение
    Получить имя версии TGSaver
    int
    Получить код версии TGSaver PluginAPI;
    getChatFolderName(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String chatName, long chatId)
    Получить имя папки чата
    it.tdlight.jni.TdApi.Messages
    getChatHistory(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatID, long fromMessageId, int limit, boolean onlyLocal)
    Получить историю чата
    ru.yoricya.tgsaver.DefaultHandlers
    Возвращает обработчики сообщений
    it.tdlight.jni.TdApi.DownloadedFileCounts
    Получить лист файлов находящихся в очереди загрузки
    getGlobalParam(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String key)
    Получить значение переменной
    getLoadedPlugins(ru.yoricya.tgsaver.PluginLoader.Plugin pl)
    Получить имена загруженных плагинов.
    ru.yoricya.tgsaver.MyLogger
    Получить логгер;
    it.tdlight.jni.TdApi.User
    Получить класс текущего пользователя
    it.tdlight.jni.TdApi.Message
    getMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long messageID, long chatID)
    Получить сообщение
    ru.yoricya.tgsaver.PluginLoader.Plugin
    Функция ожидает загрузки необходимого плагина
    Получить таймер сохранения чатов
    int
    Получить текущий этап загрузки ТГСейвера
    Получить пул потоков
    long
    Получить аптайм (msec)
    void
    Принудительно сделать сохранение чатов, в обход таймера
    void
    profileAnimationPhotoUpdate(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String pathTo, boolean isPublic, double firstFrame)
    Установить на фото профиля Local File (Локальный файл) (ТОЛЬКО .mp4!)
    void
    profileStaticPhotoUpdate(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String pathTo, boolean isPublic)
    Установить на фото профиля Local File (Локальный файл) (ТОЛЬКО .jpg!)
    void
    putToLocalMessages(String chatName, long chatId, String Message, ru.yoricya.tgsaver.PluginLoader.Plugin Plugin)
    Записывает сообщение через плагин
    void
    putToLocalMessages(String chatName, String Message, ru.yoricya.tgsaver.PluginLoader.Plugin Plugin)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Зарегистрировать параметр в Config.ysc файле
    registerEventHandler(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.EventListener onEvent)
    Регистрация слушателей событий
    void
    removeMessages(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatId, long[] messagesId, boolean revoke)
    Удалить сообщения
    void
    sendMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatId, long messageThreadId, it.tdlight.jni.TdApi.MessageReplyTo replyTo, it.tdlight.jni.TdApi.ReplyMarkup replyMarkup, it.tdlight.jni.TdApi.InputMessageContent inputMessageContent)
    Отправить сообщение
    void
    setGlobalParam(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.Param<Object> param)
    Установить значение переменной если переменная с данным ключом пуста.
    void
    StartupAfterEvent(ru.yoricya.tgsaver.PluginLoader.Plugin pl, int EventType)
    Функция ожидает заданного события после чего разрешает дальнейшее выполнение кода
    unregisterEvent(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.EventListener Event)
    Удаление слушателей событий

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • PLUGIN_API_SAVER_VERSION_CODE

      public static final short PLUGIN_API_SAVER_VERSION_CODE
      See Also:
  • Constructor Details

    • PluginAPI

      public PluginAPI()
  • Method Details

    • getGlobalParam

      public PluginAPI.Param<Object> getGlobalParam(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String key)
      Получить значение переменной
      Parameters:
      pl - ваш плагин.
      key - ключ.
      Returns:
      Объект Param.
      Since:
      Beta 2.0.Beta-8
    • setGlobalParam

      public void setGlobalParam(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.Param<Object> param)
      Установить значение переменной если переменная с данным ключом пуста.
      Parameters:
      pl - ваш плагин.
      param - объект Param.
      Since:
      Beta 2.0.Beta-8
    • getChatFolderName

      public String getChatFolderName(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String chatName, long chatId)
      Получить имя папки чата
      Parameters:
      pl - ваш плагин.
      chatName - Имя чата.
      chatId - ID чата.
      Since:
      Beta 2.0.Beta-8
    • downloadFile

      public it.tdlight.jni.TdApi.File downloadFile(ru.yoricya.tgsaver.PluginLoader.Plugin pl, int id)
      Скачать файл
      Parameters:
      pl - ваш плагин.
      id - ID файла
      Returns:
      Возвращает TDApi File
      Since:
      Beta 2.0.Beta-7
    • profileStaticPhotoUpdate

      public void profileStaticPhotoUpdate(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String pathTo, boolean isPublic)
      Установить на фото профиля Local File (Локальный файл) (ТОЛЬКО .jpg!)
      Parameters:
      pl - ваш плагин.
      pathTo - String, путь до файла
      isPublic - Укажите true, чтобы установить общедоступную фотографию, которая будет видна, даже если основная фотография скрыта настройками конфиденциальности.
      Since:
      Beta 2.0.Beta-7
    • profileAnimationPhotoUpdate

      public void profileAnimationPhotoUpdate(ru.yoricya.tgsaver.PluginLoader.Plugin pl, String pathTo, boolean isPublic, double firstFrame)
      Установить на фото профиля Local File (Локальный файл) (ТОЛЬКО .mp4!)
      Parameters:
      pl - ваш плагин.
      pathTo - String, путь до файла
      isPublic - Укажите true, чтобы установить общедоступную фотографию, которая будет видна, даже если основная фотография скрыта настройками конфиденциальности.
      firstFrame - номер первого кадра для статического отображения
      Since:
      Beta 2.0.Beta-7
    • getMessage

      public it.tdlight.jni.TdApi.Message getMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long messageID, long chatID)
      Получить сообщение
      Parameters:
      pl - ваш плагин.
      messageID - ID сообщения
      chatID - ID Чата
      Returns:
      Возвращает сообщение
      Since:
      Beta 2.0.Beta-7
    • getChatHistory

      public it.tdlight.jni.TdApi.Messages getChatHistory(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatID, long fromMessageId, int limit, boolean onlyLocal)
      Получить историю чата
      Parameters:
      pl - ваш плагин.
      fromMessageId - Получить историю начиная с определенного сообщения (Передайте 0 если нужно получить историю с самого последнего сообщения)
      limit - Сколько сообщений вы хотите получить одним массивом (Не более 100)
      chatID - ID Чата
      onlyLocal - Только локальный запрос
      Returns:
      Возвращает TdApi объект сообщений
      Since:
      Beta 2.0.Beta-7
    • editMessage

      public void editMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatID, long messageID, it.tdlight.jni.TdApi.InputMessageContent content)
      Изменить сообщение
      Parameters:
      pl - ваш плагин.
      messageID - ID сообщения
      chatID - ID Чата
      content - Новый контент сообщения
      Since:
      Beta 2.0.Beta-7
    • getLoadedPlugins

      public List<String> getLoadedPlugins(ru.yoricya.tgsaver.PluginLoader.Plugin pl)
      Получить имена загруженных плагинов.
      Parameters:
      pl - Ваш плагин
      Returns:
      Возвращает имена загруженных плагинов
      Since:
      Beta 2.0.Beta-7
    • getUptime

      public long getUptime()
      Получить аптайм (msec)
      Since:
      Beta 2.0.Beta-7
    • sendMessage

      public void sendMessage(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatId, long messageThreadId, @Nullable it.tdlight.jni.TdApi.MessageReplyTo replyTo, @Nullable it.tdlight.jni.TdApi.ReplyMarkup replyMarkup, it.tdlight.jni.TdApi.InputMessageContent inputMessageContent)
      Отправить сообщение
      Parameters:
      pl - ваш плагин.
      chatId - ID Чата
      messageThreadId - Идентификатор потока сообщений, в котором будет отправлено сообщение. (Может быть передан 0)
      replyTo - Ответ на другое сообщение (Может быть передан null)
      replyMarkup - Разметка для ответа на сообщение (Может быть передан null)
      inputMessageContent - Контент сообщения
      Since:
      Beta 2.0.Beta-7
    • removeMessages

      public void removeMessages(ru.yoricya.tgsaver.PluginLoader.Plugin pl, long chatId, long[] messagesId, boolean revoke)
      Удалить сообщения
      Parameters:
      pl - ваш плагин.
      chatId - ID Чата
      messagesId - Массив с сообщениями для удаления
      revoke - Передайте true, чтобы удалить сообщения для всех участников чата.
      Since:
      Beta 2.0.Beta-7
    • addCommandHandler

      public void addCommandHandler(String Command, PluginAPI.Command cmd)
      Создает новый слушатель команд в телеграме
      Parameters:
      Command - строка, имя команды
      cmd - интерфейс, который будет вызываться при обработке команды
    • getLogger

      public ru.yoricya.tgsaver.MyLogger getLogger()
      Получить логгер;
      Returns:
      Возвращает логгер
      Since:
      Beta 2.0.Beta-3
    • registerConfParam

      public PluginAPI.ConfParam registerConfParam(String key)
      Зарегистрировать параметр в Config.ysc файле
      Parameters:
      key - Ключ параметра
      Returns:
      Возвращает: null - в случае если параметр уже зарегистрирован; Объект класса ConfParam - в случае удачной регистрации.
      Since:
      Beta 2.0.Beta-4
    • getAPIVersionCode

      public int getAPIVersionCode()
      Получить код версии TGSaver PluginAPI;
      Returns:
      Возвращает код версии TGSaver PluginAPI
      Since:
      Beta 2.0.14Sep_23
    • getAPIVersion

      public String getAPIVersion()
      Получить имя версии TGSaver
      Returns:
      Возвращает имя версии TGSaver
      Since:
      Beta 2.0.14Sep_23
    • getSaverTimer

      public Timer getSaverTimer()
      Получить таймер сохранения чатов
      Returns:
      Возвращает таймер сохранения чатов
      Since:
      Beta 2.0.14Sep_23
    • registerEventHandler

      public PluginAPI.EventListener registerEventHandler(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.EventListener onEvent)
      Регистрация слушателей событий
      Parameters:
      onEvent - Это слушатель вызывающийся при возникновении события. Примечание: сохраните его в отдельную переменную чтобы потом можно было отменить его
      pl - Необходимо передать класс своего плагина
      Returns:
      Для удобства обратно возвращает слушатель
    • unregisterEvent

      public PluginAPI.EventListener unregisterEvent(ru.yoricya.tgsaver.PluginLoader.Plugin pl, PluginAPI.EventListener Event)
      Удаление слушателей событий
      Parameters:
      Event - Слушатель ранее сохраненный в переменной
      pl - Необходимо передать класс своего плагина
      Returns:
      Для удобства обратно возвращает слушатель
    • getPlugin

      @Nullable public ru.yoricya.tgsaver.PluginLoader.Plugin getPlugin(String name)
      Функция ожидает загрузки необходимого плагина
      Parameters:
      name - Нужно передать имя необходимого плагина
      Returns:
      Возвращает требуемый плагин, в случае если таковой найти не удалось то возвращает null!
      Since:
      Beta 2.0.14Sep_23
    • StartupAfterEvent

      public void StartupAfterEvent(ru.yoricya.tgsaver.PluginLoader.Plugin pl, int EventType)
      Функция ожидает заданного события после чего разрешает дальнейшее выполнение кода
      Parameters:
      pl - Нужно передать класс вашего плагина
      EventType - Нужно передать тип необходимого события
      Since:
      Beta 2.0.14Sep_23
    • getDefaultHandlers

      public ru.yoricya.tgsaver.DefaultHandlers getDefaultHandlers()
      Возвращает обработчики сообщений
      Returns:
      DefaultHandlers
      Since:
      Beta 2.0-Beta-6
    • putToLocalMessages

      @Deprecated(forRemoval=true) public void putToLocalMessages(String chatName, String Message, ru.yoricya.tgsaver.PluginLoader.Plugin Plugin)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Записывает сообщение через плагин
      Parameters:
      chatName - Имя чата
      Message - Сообщение
      Plugin - Ваш плагин
      Since:
      Beta 2.0-Beta-6
    • putToLocalMessages

      public void putToLocalMessages(String chatName, long chatId, String Message, ru.yoricya.tgsaver.PluginLoader.Plugin Plugin)
      Записывает сообщение через плагин
      Parameters:
      chatName - Имя чата
      chatId - ID Чата
      Message - Сообщение
      Plugin - Ваш плагин
      Since:
      Beta 2.0-Beta-8
    • getTGState

      public int getTGState()
      Получить текущий этап загрузки ТГСейвера
      Returns:
      Возвращает этап загрузки (Event: *_STATE)
    • getMe

      public it.tdlight.jni.TdApi.User getMe()
      Получить класс текущего пользователя
      Returns:
      Возвращает класс (TdAPI) текущего пользователя
    • PermanentlySaveChats

      public void PermanentlySaveChats()
      Принудительно сделать сохранение чатов, в обход таймера
    • getDownloadsList

      public it.tdlight.jni.TdApi.DownloadedFileCounts getDownloadsList()
      Получить лист файлов находящихся в очереди загрузки
      Returns:
      Возвращает NULL так как API ещё не реализовано
    • getThreadPool

      public ForkJoinPool getThreadPool()
      Получить пул потоков
      Returns:
      Возвращает пул потоков
      Since:
      Beta 2.0.Beta 2.0-Beta-6