User Intents storage#
Представляет класс для хранения намерений платформы.
Используется для сохранения пользовательских намерений. Пользовательские намерения будут заменой классу по умолчанию. Пользователь для быстрого доступа сможет сохранять свои намерения.
Это хранилище предоставляет классы для упрвления пользовательскими намерениями. Добавленя, изменения и удаления отдельно для каждого пользователя внутри конкретной платформы.
- class sp.users.intents.IntentObject(name: str, intent: Intent)#
Описывает одно намерение пользователя в хранилище.
- Параметры:
name (str) – Имя намерения, используется как ключ.
intent (Intent) – Экземпляр пользовательского намерения.
Примечание
Историческая справка
Первоначально хранилище намерений появилось в рамках sp_tg.
Однако после было перенесено внутрь ядра проекта.
Поскольку функционал работы с намерениями пользователя вскоре
вытеснет такое понятие как Класс по умолчанию.
Поскольку класс по умолчанию свого рода тоже является намерением
получить конкретный класс из расписания.
- class sp.users.intents.UserIntentsStorage(path: str, uid: int)#
Хранилище намерений пользователя для платформы.
Является обёрткой над базой данных для хранения намерения. Содержит методы для добавления, изменения парметров намерения и удаления намерений.
- Параметры:
path (str) – Путь к базе данных хранилища.
uid (str) – ID пользователя расписнаия.
Список намерений#
- get() list[IntentObject]#
Получает список всех намерений пользователя.
Возвращает готовый к работе список намерений пользователя.
- Результат:
Список всех намерений пользвоателя.
- Trype:
list[IntentObject]
- get_intent(name: str) Intent | None#
Возвращает первое намерение пользователя по имени.
Возвращает первое подходящее по имени намерения. Если нету подходящего, то возаращет None.
Используется если нужно получить какое-то конкретное намерение из общего хранилища по его имени.
- Параметры:
name (str) – Имя намерения для поиска.
- Результат:
Экземплыяр намерения или None, если нечего на найдено.
- Тип результата:
Optional[Intent]
- remove_all()#
Удаляет все намерение пользователя из базы данных.
Редактирование намерений#
- add(name: str, intent: Intent) None#
Добавляет намерение в базу данных.
Вы можете использовать этот метод как для создания нового намерениея, так и для изменения старого. Если такое намерение уже существует, то будет перезаписано.
- Параметры:
name (str) – Имя намерения для добавления/изменения.
intent (Intent) – Экземпляр намерения для доабвления в базу данных.
- rename(old_name: str, new_name: str) None#
Изменяет имя намерения.
В отличие от метода add, меняем имя намерения на новое. При этом не затрагивая содержимое самого намерения. Обратите внимание, не происходит никаких проверок. Если такого немерения не существует, ничего не произойдёт. Статусных кодов возврата также не предусмотрено.
- Параметры:
old_name (str) – Старой имя намерения.
new_name (str) – Новое имя для намерения.
- remove(name: str) None#
Удаляет намерение пользователя из базы данных.
Удаляет намерение из базы данных по его имени. Обратиет внимание что у этого метода не проверок. Если вы укажете не существующие имя, то ничего не произойдёт.
- Параметры:
name – Имя намерения для удаления из базы данных.
- Typw name:
str