Методы управления топиками
Группа методов класса ZG для работы с супергруппами в режиме форума. Позволяет создавать, редактировать, закрывать и удалять темы.
Контекст
Во всех методах ниже параметры chat_id и thread_id являются необязательными. Если они не переданы, библиотека попытается взять их из текущего входящего обновления (контекста).
createTopic
Создает новую тему.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | name | string | Название темы (1-128 символов). |
| 2 | icon_color | int|null | Цвет иконки темы в формате RGB (например, 0x6FB9F0). |
| 3 | icon_custom_emoji_id | string|null | Уникальный идентификатор кастомного эмодзи для иконки. |
| 4 | chat_id | int|string|null | ID чата. |
Пример
<?php
require_once __DIR__ . '/vendor/autoload.php';
use ZenithGram\ZenithGram\ZG;
$tg = ZG::create(BOT_TOKEN);
// Создание простой темы
$tg->createTopic('Новости');
// Создание темы с цветом и эмодзи
$tg->createTopic(
name: 'Флудилка',
icon_color: 0xFFD67E,
icon_custom_emoji_id: '5310132165583840589'
);editTopic
Редактирует название и иконку существующей темы.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | name | string|null | Новое название темы. |
| 2 | icon_custom_emoji_id | string|null | ID нового кастомного эмодзи. Пустая строка удалит иконку. |
| 3 | thread_id | int|null | ID темы. |
| 4 | chat_id | int|string|null | ID чата. |
Пример
$tg->editTopic(name: 'Архив', thread_id: 12345);closeTopic
Закрывает тему. В закрытую тему нельзя отправлять сообщения (кроме админов), но она остается видна в списке.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | thread_id | int|null | ID темы. |
| 2 | chat_id | int|string|null | ID чата. |
Пример
$tg->closeTopic();reopenTopic
Открывает ранее закрытую тему.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | thread_id | int|null | ID темы. |
| 2 | chat_id | int|string|null | ID чата. |
Пример
$tg->reopenTopic();deleteTopic
Удаляет тему целиком вместе со всеми сообщениями. Это действие необратимо.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | thread_id | int|null | ID темы. |
| 2 | chat_id | int|string|null | ID чата. |
Пример
$tg->deleteTopic();unpinTopicMessages
Открепляет все закрепленные сообщения внутри конкретной темы.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | thread_id | int|null | ID темы. |
| 2 | chat_id | int|string|null | ID чата. |
Пример
$tg->unpinTopicMessages();Методы темы "General"
В каждом форуме есть тема "General" (Основная), которая имеет ID 1 (или иногда null в старых клиентах, но API работает с ней отдельно). Для неё существуют специальные методы.
editGeneralTopic
Редактирует название темы "General".
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | name | string | Новое название. |
| 2 | chat_id | int|string|null | ID чата. |
Пример
$tg->editGeneralTopic('Главный чат');closeGeneralTopic
Закрывает тему "General".
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | chat_id | int|string|null | ID чата. |
Пример
$tg->closeGeneralTopic();reopenGeneralTopic
Открывает тему "General".
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | chat_id | int|string|null | ID чата. |
Пример
$tg->reopenGeneralTopic();hideGeneralTopic
Скрывает тему "General" из списка активных тем.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | chat_id | int|string|null | ID чата. |
Пример
$tg->hideGeneralTopic();unhideGeneralTopic
Возвращает скрытую тему "General" обратно в список.
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | chat_id | int|string|null | ID чата. |
Пример
$tg->unhideGeneralTopic();unpinGeneralTopicMessages
Открепляет все сообщения в теме "General".
Параметры
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | chat_id | int|string|null | ID чата. |
Пример
$tg->unpinGeneralTopicMessages();