Функции работы в чатах и каналах Telegram

Так как внутри Salebot идентификаторы клиентов (пользователей, групп, каналов) внутри мессенджера записываются в переменной platform_id без каких-либо меток, к чему это принадлежит группе или пользователю, то для работы с функциями принятия/отклонения заявки требуется единожды запомнить значения platform_id чата и platform_id пользователя в переменные с разными именами, например, chat_id и user_id.

Как изменить настройки чата/канала Telegram

Как поменять имя чата через бот в Telegram

tg_set_group_title(platform_id, title)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! title

новое название чата

Как поменять описание чата через бот в Telegram

tg_set_chat_description(platform_id, description)

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! description

новое описание чата

Как установить аватарку на группу/чат в Telegram

tg_set_chat_photo(platform_id, photo)

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *, в котором нужно установить аватарку

! photo

ссылка на фото

Как удалить аватарку группы/чата в Telegram

tg_delete_chat_photo(platform_id)

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *, в котором нужно установить аватарку

Как забанить/разбанить группу Telegram

Как забанить группу Telegram

tg_ban_chat_sender_chat(platform_id, sender_chat_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *, который нужно забанить

! sender_chat_id

идентификатор чата, который баним

При этом владелец забаненного чата не сможет писать и от имени других своих чатов до тех пор, пока не будет разбанен

Как разбанить группу Telegram

tg_unban_chat_sender_chat(platform_id, sender_chat_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *, в котором разбаниваем

! sender_chat_id

идентификатор чата, который разбаниваем

Как работать с ссылками на чат/канал Telegram

Как создать ссылку на вступление в чат в Telegram

tg_create_chat_invite_link(platform_id, member_limit, hours, request, name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата в Telegram *

member_limit

лимит на количество участников

hours

количество часов, которое будет действовать ссылка

request

признак того, что при переходе по ссылке должен формироваться запрос на вступление чат

name

название ссылки

circle-info

При передаче параметра member_limit значение параметра request автоматически заменится на False. Если же нужно принимать заявки на вступление, то параметр member_limit оставляем пустым.

Создание ссылки на вступление в чат:

Как удалить ссылку на вступление в чат в Telegram

tg_revoke_chat_invite_link(platform_id, invite_link)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! invite_link

ссылка, которую надо удалить

Как сделать неактивными все существующие ссылки и заменить их на одну

circle-exclamation

tg_export_chat_link(platform_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! invite_link

ссылка, которую надо удалить

Результат - ссылка, которая будет единственным способом попасть в группу до тех пор, пока не будут созданы дополнительные ссылки прочими способами.

Как работать с заявками в чат/канал Telegram

Как принять заявку и добавить пользователя в канал/чат в Telegram

tg_approve_chat_join_request(chat_id, user_id)

Параметры:

! chat_id

идентификатор группы/канала внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *

Прием заявки:

Как отклонить заявку в канал/чат в Telegram

tg_decline_chat_join_request(chat_id, user_id)

Параметры:

! chat_id

идентификатор группы/канала внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *

Отклонение заявки

Как работать с подписчиками чата/канала Telegram

Как заблокировать пользователя в Telegram

tg_ban_chat_member(chat_id, user_id, hours)

Параметры:

Параметр
Описание

! chat_id

идентификатор чата внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram * для блокировки

hours

длительность блокировки в часах. По умолчанию блокировка навечно. При указании длительности блокировки свыше 366 дней блокировка будет установлена навечно

Как разблокировать пользователя в Telegram

tg_unban_chat_member(chat_id, user_id)

Параметры:

Параметр
Описание

! chat_id

идентификатор чата внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *, которого необходимо разблокировать

Как проверить наличие подписки в Telegram

tg_get_chat_member(chat_id, user_id)

Параметры:

Параметр
Описание

! chat_id

идентификатор чата внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *, подписку которого проверяем

Как определить число участников в канале/чате

tg_get_chat_member_count(platform_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата в Telegram *

Как проверить, состоит ли участник чата в определенном списке

some_client_in_list(list_id, recepient)

Параметры:

Параметр
Описание

! list_id

номер списка

! recepient

идентификатор пользователя внутри Telegram *. Для клиентов чата данное значение в переменной chat_member_id.

Проверка подписки на канал Телеграм

Как показать действия в чате/канале Telegram

Как показать пользователю действия бота (печатает/выбирает стикер и т.д)

tg_send_chat_action(platform_id, bot_action, message_thread_id)

! Работает с бизнес-аккаунтом в Телеграм

Параметры:

Параметр
Описание

! platform_id

идентификатор чата в Telegram *

! bot_action

действие бота из списка.

message_thread_id

идентификатор темы (доступно для супергрупп при наличии функционала форума).

chevron-rightСписок возможных действий bot_actionhashtag

typing для текстовых сообщений, upload_photo для фотографий, record_video или upload_video для видео , record_voice или upload_voice для голосовых заметок, upload_document для общих файлов, choose_sticker для стикеров, find_location для данных о местоположении, record_video_note или upload_video_note для видеозаметки.

circle-info

Данное уведомление будет отображаться, пока не будет получен какой-либо ответ от бота, но не более 5 секунд.

Как показывать пользователю Alert-уведомления

tg_answer_callback_query(callback_query_id, text,show_alert,cache_time)

Параметр
Описание

! callback_query_id (обязательный)

данный идентификатор позволяет определить нажавшего кнопку и продемонстрировать ему Alert-уведомление

! text (обязательный)

текст Alert-уведомления.

show_alert

признак исчезающего уведомления (False - исчезающее уведомление (подсказка), True - уведомление в окне)

cache_time

Максимальное количество времени в секундах, в течение которого результат запроса обратного вызова может быть кэширован на стороне клиента. Приложения Telegram будут поддерживать кэширование, начиная с версии 3.14. Значение по умолчанию равно 0

chevron-rightПримерhashtag

Alert-уведомления показываются только в результате нажатия на callback-кнопку в телеграмме.

Для примера используем следующие кнопки:

[{"line":0,"index_in_line":0,"text":"111","type":"inline","callback":"первая"}, {"line":1,"index_in_line":0,"text":"222","type":"inline","callback":"вторая"}, {"line":2,"index_in_line":0,"text":"333","type":"inline","callback":"третья"}]

После нажатия на такую кнопку приходит callback с текстом, содержащимся в соответствующем поле. При нажатии на кнопку “111” придет callback с текстом “первая”.

Создадим блок с первостепенной проверкой условия и в условие пишем желаемый текст. В нашем случае “первая”:

Если в поле Выбор соответствия выбрать Игнорируя ошибки и неточности, то в дальнейшем можно будет такой блок использовать для всех вариантов, которые отличаются на 1-2 символа. Например, благодарить за поставленную такой кнопкой оценку работы.

Далее в калькуляторе используйте функцию tg_answer_callback_query и в нее поместите такие параметры: callback_query_id - данный id позволяет идентифицировать нажавшего кнопку и продемонстрировать ему Alert-уведомление, text - текст Alert-уведомления.

Пример кода для копирования:

tg_answer_callback_query('#{callback_query_id}', "Вы нажали кнопку 111")

circle-exclamation

Если все подготовлено правильно, то результатом нажатия на кнопку будет Alert-уведомление с заданным текстом. В мобильной версии имя бота будет как заголовок над текстом.

Если же вы хотите показать простое всплывающее сообщение, то передайте третьим параметром False, как в примере ниже: tg_answer_callback_query('#{callback_query_id}', "Вы нажали кнопку 222", False)

В случае нажатия на кнопку при таких параметрах на несколько секунд появится уведомление такого вида.

Как в реакции на callback-кнопку добавить переход в бота с тэгом

tg_callback_url_open(callback_query_id, url, cache_time)

Параметры:

Параметр
Описание

! callback_query_id

данный идентификатор позволяет определить нажавшего кнопку и продемонстрировать ему Alert-уведомление

! url

URL-адрес, указывающий бота и параметр (выглядит так: t.me/your_bot?start=XXXX, вместо your_bot - имя бота)

cache_time

Максимальное количество времени в секундах, в течение которого результат запроса обратного вызова может быть кэширован на стороне клиента. Приложения Telegram будут поддерживать кэширование, начиная с версии 3.14. Значение по умолчанию равно 0

chevron-rightПримерhashtag

В реакции на callback-кнопку можно добавить переход в бота с тегом tg_callback_url_open('#{callback_query_id}', 't.me/bot_name?start=XXXX')

Для примера используем следующие кнопки:

[{"line":0,"index_in_line":0,"text":"111","type":"inline","callback":"первая"}, {"line":1,"index_in_line":0,"text":"222","type":"inline","callback":"вторая"}, {"line":2,"index_in_line":0,"text":"333","type":"inline","callback":"третья"}]

После нажатия на такую кнопку приходит callback с текстом, содержащимся в соответствующем поле. При нажатии на кнопку “111” придет callback с текстом “первая”.

Создадим блок с первостепенной проверкой условия и в условие пишем желаемый текст. В нашем случае “первая”:

Если в поле Выбор соответствия выбрать Игнорируя ошибки и неточности, то в дальнейшем можно будет такой блок использовать для всех вариантов, которые отличаются на 1-2 символа. Например, благодарить за поставленную такой кнопкой оценку работы.

Далее в калькуляторе блока укажем tg_callback_url_open('#{callback_query_id}', 't.me/bot_name?start=XXXX'):

Как настроить права в чате/канале Telegram

Как повысить пользователя до администратора в супергруппе или канале в Telegram

tg_promote_user(platform_id, user_id, promote_options_list)

Параметры:

Параметр
Описание

! platform_id

идентификатор супергруппы или, если используете в канале, имя канала вида @channelusername, внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *

! promote_options_list

список прав, которые нужно включить.

chevron-rightСписки прав обязательного параметра promote_options_listhashtag

В списке прав promote_options_list можно указать следующие права:

  1. is_anonymous — присутствие администратора в чате скрыто,

  2. can_manage_chat — администратор может получить доступ к журналу событий чата, статистике чата, статистике сообщений в каналах, видеть участников канала, видеть анонимных администраторов в супер-группах и игнорировать медленный режим. Этот уровень прав выдается по умолчанию, в случае указания любой из последующих привилегий.

  3. can_post_messages — администратор может создавать сообщения канала, только для каналов

  4. can_edit_messages — администратор может редактировать сообщения других пользователей и может закреплять сообщения, только для каналов

  5. can_delete_messages — администратор может удалять сообщения других пользователей

  6. can_manage_video_chats — администратор может управлять видеочатами,

  7. can_restrict_members — администратор может ограничивать, ставить/отменять бан участникам чата,

  8. can_promote_members — администратор может добавлять новых администраторов с подмножеством их собственных привилегий или понижать в должности администраторов, которых он повысил, прямо или косвенно (повысили администраторы, которые были им назначены)

  9. can_change_info — администратор может изменить название чата, фото и другие настройки

  10. can_invite_users — администратор может приглашать новых пользователей в чат

  11. can_pin_messages — администратор может закреплять сообщения, только для супергруппы.

chevron-rightПримерhashtag

Разберем пример как повысить пользователя до администратора в супергруппе:

В данном примере помимо перечисленных прав будут по умолчанию выданы права can_manage_chat.

Назначение прав пользователю
Установка титула администратору

Пример кода для копирования

Как изменить титул администратора с помощью бота в Telegram

tg_set_administrator_title(platform_id, user_id, title)

Параметры:

Параметр
Описание

! platform_id

идентификатор супергруппы внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *

! title

титул администратора. Для титула есть следующие ограничения: 0-16 символов, эмодзи не разрешены.

circle-exclamation

Пример кода для копирования:

Ограничения для пользователей

Общие ограничения для обычных пользователей чата или для отдельных пользователей Telegram

tg_chat_permission(platform_id, permission, media_permissions)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! permission

массив значений для списка ограничений, приведенного ниже. В массиве значение 1 разрешает действие, а 0 - запрещает. Порядковый номер соответствует позиции в массиве

! media_permissions

список значений прав для работы с медиа (подробнее ниже). В списке значение 1 разрешает действие, а 0 запрещает. Порядковый номер соответствует позиции в списке.

chevron-rightСписок ограничений для обязательного параметра permissionhashtag

Список ограничений permission: 1. ! can_send_messages - разрешение отправлять текстовые сообщения, контакты, местоположения и места проведения 2. ! can_send_media_messages - разрешение отправлять аудио, документы, фотографии, видео, видеозаметки и голосовые заметки, подразумевается наличие разрешения can_send_messages 3. ! can_send_polls - разрешение отправлять опросы, подразумевается наличие разрешения can_send_messages 4. ! can_send_other_messages - разрешение отправлять анимацию, игры, стикеры и использовать встроенных ботов, подразумевается наличие разрешения can_send_media_messages 5. ! can_add_web_page_previews - разрешение добавлять превью веб-страницы к своим сообщениям, подразумевается наличие разрешения can_send_media_messages 6. ! can_change_info - разрешение изменять название чата, фото и другие настройки. Игнорируется в публичных супергруппах 7. ! can_invite_users - разрешение приглашать пользователей 8. ! can_pin_messages - разрешение закреплять сообщения. Игнорируется в публичных супергруппах 9. can_manage_topics - разрешение создавать темы в группах-форумах. Если пытаться применить в группах неподходящего типа, то функция не сработает и вернет ошибку.

chevron-rightСписок значений для обязательного параметра media_permissionshashtag

Список значений для выдачи прав по работе с медиа media_permissions:

1. can_send_audios - разрешение отправлять аудиофайлы 2. can_send_documents -разрешение отправлять документы 3. can_send_photos - разрешение отправлять фото 4. can_send_videos - разрешение отправлять видео 5. can_send_video_notes - разрешение отправлять круглое видео 6. can_send_voice_notes - разрешение отправлять голосовые сообщения

Персональные ограничения для обычных пользователей чата или для отдельных пользователей Telegram

tg_restrict_chat_member(platform_id, user_id, minutes, permission, media_permissions).

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! user_id

идентификатор пользователя внутри Telegram *

minutes

кол-во минут, в течении которого будет действовать ограничение (если не указать явно, по умолчанию будет применено значение 3600, что соответствует 60 часам, а если указать 0, то ограничения будут действовать бессрочно)

permission

массив значений для списка ограничений

media_permissions

список значений для выдачи прав по работе с медиа

chevron-rightСписок ограничений для параметра permissionhashtag

Список ограничений permission: 1. ! can_send_messages - разрешение отправлять текстовые сообщения, контакты, местоположения и места проведения 2. ! can_send_media_messages - разрешение отправлять аудио, документы, фотографии, видео, видеозаметки и голосовые заметки, подразумевается наличие разрешения can_send_messages 3. ! can_send_polls - разрешение отправлять опросы, подразумевается наличие разрешения can_send_messages 4. ! can_send_other_messages - разрешение отправлять анимацию, игры, стикеры и использовать встроенных ботов, подразумевается наличие разрешения can_send_media_messages 5. ! can_add_web_page_previews - разрешение добавлять превью веб-страницы к своим сообщениям, подразумевается наличие разрешения can_send_media_messages 6. ! can_change_info - разрешение изменять название чата, фото и другие настройки. Игнорируется в публичных супергруппах 7. ! can_invite_users - разрешение приглашать пользователей 8. ! can_pin_messages - разрешение закреплять сообщения. Игнорируется в публичных супергруппах 9. can_manage_topics - разрешение создавать темы в группах-форумах. Если пытаться применить в группах неподходящего типа, то функция не сработает и вернет ошибку.

chevron-rightСписок значений для параметра media_permissionshashtag

Список значений для выдачи прав по работе с медиа media_permissions:

1. can_send_audios - разрешение отправлять аудиофайлы 2. can_send_documents -разрешение отправлять документы 3. can_send_photos - разрешение отправлять фото 4. can_send_videos - разрешение отправлять видео 5. can_send_video_notes - разрешение отправлять круглое видео 6. can_send_voice_notes - разрешение отправлять голосовые сообщения

chevron-rightПримерhashtag

Пример применения функции, в котором пользователю запретили все на 3 минуты:

При входе в чат пользователю будет показано уведомление о невозможности писать в чат и если ограничение по времени было выставлено, то он увидит срок действия данного ограничения.

Код для копирования:

Как работать с сообщениями в чате/канале Telegram

Как закрепить сообщение

tg_pin_chat_message(platform_id, message_id, disable_notification)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

message_id

идентификатор сообщения, которое нужно закрепить

disable_notification

параметр определяет нужно ли отправлять уведомление всем участникам чата о новом закрепленном сообщении (уведомления всегда отключены в каналах и приватных чатах). Если не нужно отправлять уведомления, то в качестве значения параметра disable_notification передайте 1, иначе - 0.

Как открепить сообщение

tg_unpin_chat_message(platform_id, message_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

message_id

идентификатор сообщения, которое нужно открепить. Если message_id не указан, то будет откреплено самое последнее (по дате отправки) закрепленное сообщение.

Как открепить все закрепленные сообщения

tg_unpin_all(platform_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

circle-exclamation

Как создать/закрыть опрос в чате/канале Telegram

Как создать простой опрос в Telegram

tg_send_poll(platform_id, question, options, is_anonymous, allows_multiple_answers, reply_markup, disable_notification, protect_content, token, reply_to_message_id, message_thread_id, business_connection_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! question

вопрос

! options

массив вариантов ответов

is_anonymous

1 - анонимный опрос, '' - не анонимный

allows_multiple_answers

1 - возможны несколько ответов, '' - один ответ

reply_markup

клавиатура или '' - без клавиатуры

disable_notification

признак отправки со звуковым уведомлением (по умолчанию 0) 1 - отключить уведомление при получении, 0 - передать с уведомлением

protect_content

1 защитить от копирования и скриншотов, '' - без защиты

token

токен бота, если не передан используется текущий

reply_to_message_id

идентификатор цитируемого сообщения

message_thread_id

идентификатор темы (доступно для супергрупп при наличии функционала форума)

business_connection_id

значение при подключении бота - Business ID - отображается в каналах. Следует передавать, если в параметрах передается токен бота и надо отправить через подключенный к боту пользовательский аккаунт

chevron-rightВажно учитывать!hashtag

Примечания

1. Функция возвращает ответ от телеграма, в котором есть message_id, его лучше сохранять, так как с его помощью можно будет завершить опрос функцией tg_stop_poll (описание ниже) и получить результат.

2. Если опрос добавлен пользователем в канал, то в диалог придет колбек:

poll_added - неизменная часть Вопрос - текст вопроса из опроса

Пример колбека при добавлении опроса в канал
Пример колбека при добавлении опроса в чат

Второй колбек после poll_added содержит цифры - это не что иное, как идентификатор пользователя в Telegram, который добавил опрос.

circle-exclamation

3. В канале можно создавать только анонимные опросы

circle-info

Внимание, рекомендуется отправлять в группу только анонимные опросы!

4. После создания опроса в переменную сохраните его идентификатор, чтобы понимать на какой опрос пришел колбек.

chevron-rightПример в ботеhashtag

В своей работе мы часто задаемся вопросами, на которые могли бы ответить наши клиенты. Опросы очень помогают получить обратную связь от клиентов и сделать определенные выводы.

Пример кода для копирования:

Функция создания опроса в Telegram
Созданный нами опрос в Telegram

Как создать викторину в Telegram

tg_send_quiz_poll(platform_id, question, options, explanation, correct_option_id, is_anonymous, reply_markup, parse_mode, protect_content, disable_notification, token, reply_to_message_id, message_thread_id )

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! question

вопрос

! options

массив вариантов ответов

! explanation

текст, который отображается, когда пользователь выбирает неправильный ответ или нажимает на значок лампы в опросе в стиле викторины, 0–200 символов с не более, чем двумя переводами строки после разбора сущностей.

! correct_option_id

номер правильного ответа, нумерация с 1

is_anonymous

1 - анонимный опрос, '' - неанонимный

reply_markup

клавиатура или '' - без клавиатуры

parse_mode

markdown или html для explanation или '' - без форматирования

protect_content

1 защитить от копирования и скриншотов, '' - без защиты

disable_notification

признак отправки со звуковым уведомлением (по умолчанию 0) 1 - отключить уведомление при получении, 0 - передать с уведомлением

token

токен бота, если не передан используется текущий

reply_to_message_id

ID цитируемого сообщения

message_thread_id

идентификатор темы (доступно для супергрупп при наличии функционала форума)

chevron-rightВажно учитывать!hashtag

Примечания

1. Функция возвращает ответ от Telegram, в котором есть message_id, его лучше сохранять, так как с его помощью можно будет завершить викторину функцией tg_stop_poll (описание ниже) и получить результат.

2. Если опрос добавлен пользователем в канал, то в диалог придет колбек: poll_added - неизменная часть Вопрос - вопрос опроса

Пример колбека в

Если опрос создан в чате, то колбек дополнительно будет содержать цифры - это идентификатор пользователя в Telegram, который добавил опрос.

circle-exclamation

3. В канале можно создавать только анонимные викторины

4. Если викторина была отправлена в диалог пользователя с ботом или в чат группы, то колбек о выбранном ответе придет в диалог бота с клиентом и будет иметь следующий вид:

Нумерация ответов начинается с 0. poll_answer 5325838371359031648 [3]

poll_answer - неизменяемая часть 5325838371359031648 - идентификатор викторины [3] - ответ

Колбек на выбор ответа в Викторине

5. Если неанонимный опрос был создан в группе (неважно функцией или пользователем), в которой состоит в качестве администратора бот, то на каждый голос будет отправлен вебхук, при получении которого в диалог бота с клиентом будет отправлен колбек из пункта

6. Если клиент не контактировал с ботом, то отправить ему что-либо в ответ не получится, пока клиент не активирует бота.

circle-info

Внимание рекомендуется отправлять в группу только анонимные викторины!

7. После создания викторины сохраните в переменную его идентификатор, чтобы понимать на какой опрос пришел колбек.

chevron-rightПример в калькулятореhashtag

Пример кода для копирования:

Пример создания Викторины:

Как завершить опрос

circle-info

Когда опрос или викторина завершаются этой функцией в ответ приходит словарь с результатом опроса.

tg_stop_poll(platform_id, message_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_id

идентификатор сообщения с опросом или викториной. Этот идентификатор можно получить из вебхука

Как работать с Форумами/Темами Telegram

1. Как работать с главной темой Telegram

circle-exclamation

Как переименовать главную Тему группы

tg_edit_general_forum_topic(platform_id, topic_name, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор Темы внутри Telegram *

! topic_name

новое имя темы.

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример для ботаhashtag

Изменить Главную тему группы можно при помощи функции tg_edit_general_forum_topic(). Здесь 2 обязательных параметра - это идентификатор чата и новое наименование для Темы группы:

Изменение названия главной Темы
chevron-rightПример кода для копированияhashtag

переименовать чат главной Темы/ answer = tg_edit_general_forum_topic(-1001839380031, 'General')

Как закрыть главную Тему

tg_close_general_forum_topic(platform_id)

Параметры:

Параметр
Описание

! platform_id

идентификатор Темы внутри Telegram *

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

/закрыть чат главной Темы/ answer = tg_close_general_forum_topic(-1001839380031)

Как открыть ранее закрытую главную Тему

tg_reopen_general_forum_topic(platform_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор Темы внутри Telegram *

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

/открыть чат главной Темы/ answer = tg_reopen_general_forum_topic(-1001839380031)

Как скрыть главную Тему

tg_hide_general_forum_topic(platform_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор Темы внутри Telegram *

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

Суть данной операции в том, что чат Главной темы будет закрыт для участников Темы (можно читать, но нельзя писать) и скрыт из общего списка чатов Telegram для новых пользователей.

chevron-rightПример кода для копированияhashtag

/скрыть чат главной Темы/ answer = tg_hide_general_forum_topic(-1001839380031)

Как отобразить главную Тему или вернуть её видимость

tg_unhide_general_forum_topic(platform_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор Темы внутри Telegram *

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

circle-exclamation
chevron-rightПример кода для копированияhashtag

/отобразить чат главной Темы/ answer = tg_unhide_general_forum_topic(-1001839380031)

2. Как работать с дополнительными темами Telegram

Как создать новую тему Telegram

tg_create_forum_topic(platform_id, name, icon, icon_color, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! name

название новой темы

icon

идентификатор эмодзи, которое будет установлено на тему. Передается в виде строки. Можно использовать только те эмодзи, что есть в списке, полученном функцией tg_get_forum_icon

icon_color

цвет эмодзи из списка: 7322096, 16766590, 13338331, 9367192, 16749490, 16478047. Изменить цвет можно далеко не у всех эмодзи.

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

circle-info

Изменить установленный цвет нельзя, цвет задается только в момент создания темы

В результате исполнения функция вернет ответ, содержащий параметры новой темы, в том числе идентификатор темы (нужен для различных функций)

chevron-rightПример для ботаhashtag

Давайте создадим чат дополнительной темы:

Создание новой темы

Переменная answer будет содержать ответ следующего содержания: {"ok":true,"result":{"message_thread_id":254,"name":"second_bot_topic","icon_color":7322096}}

Здесь нам важно сохранить значение message_thread_id, оно нам понадобится в дальнейшем для работы с созданной темой:

Сохраняем из ответа функции по созданию идентификатор дополнительной темы
Скрин Карточки клиента, раздел Переменные
chevron-rightПример кода для копированияhashtag

Создаем чат дополнительной темы answer = tg_create_forum_topic(-1001839380031, 'second_bot_topic', None, 7322096)

Сохраняем идентификатор чата созданной дополнительной темы answer={"ok":true,"result":{"message_thread_id":254,"name":"second_bot_topic","icon_color":7322096}}/ idtema1=answer['result']['message_thread_id']

Как изменить тему. Как переименовать и/или поменять эмодзи для темы

tg_edit_forum_topic(platform_id, message_thread_id, name, icon, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_thread_id

идентификатор чата дополнительной темы

name

название новой темы

icon

идентификатор эмодзи, которое будет установлено на тему. Передается в виде строки. Можно использовать только те эмодзи, что есть в списке, полученном функцией tg_get_forum_icon

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

answer = tg_edit_forum_topic(-1001839380031, 254)

Как закрыть выбранную тему

Закрыть тему - это значит оставить ее только для чтения, писать в закрытую тему нельзя

tg_close_forum_topic(platform_id, message_thread_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_thread_id

идентификатор чата дополнительной темы

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

answer = tg_close_forum_topic(-1001839380031, 254)

Как открыть ранее закрытую тему

tg_reopen_forum_topic(platform_id, message_thread_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_thread_id

идентификатор чата дополнительной темы

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

answer = tg_reopen_forum_topic(-1001839380031, 254)

Как удалить тему со всеми сообщениями

tg_delete_forum_topic(platform_id, message_thread_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_thread_id

идентификатор чата дополнительной темы

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

answer = tg_delete_forum_topic(-1001839380031, 254)

Как открепить все сообщения темы

tg_unpin_topic_messages(platform_id, message_thread_id, bot_name)

Параметры:

Параметр
Описание

! platform_id

идентификатор чата внутри Telegram *

! message_thread_id

идентификатор чата дополнительной темы

bot_name

необязательный параметр, наименование бота. При работе с темами можно указать наименование бота, от имени которого нужно выполнить функцию. Это может пригодиться, если к проекту подключены более одного телеграм бота. Наименование бота можно найти в разделе "Каналы", поле "Group ID"

chevron-rightПример кода для копированияhashtag

answer = tg_unpin_topic_messages(-1001839380031, 254)

Как получить список эмодзи для Темы Telegram

tg_get_forum_icon() - функция вернет какие эмодзи можно ставить на иконки тем форумов. Необходимо присвоить функцию переменной, так как в ответ будет словарь, в котором ключом будет эмодзи, а значением идентификатор этого эмодзи id

Параметры: без параметров.

chevron-rightСодержание списка эмодзиhashtag

Для получения списка эмодзи для чата Темы отправьте команду в необходимый чат:

Получение списка эмодзи

В ответ функция вернет список эмодзи, т.е. переменная answer будет иметь в качестве значения словарь:

{'📰': '5434144690511290129', '💡': '5312536423851630001', '⚡️': '5312016608254762256', '🎙': '5377544228505134960', '🔝': '5418085807791545980', '🗣': '5368697802761185083', '🆒': '5420216386448270341', '❗️': '5379748062124056162', '📝': '5357193964787081133', '📆': '5433614043006903194', '📁': '5357315181649076022', '🔎': '5309965701241379366', '📣': '5309984423003823246', '🔥': '5312241539987020022', '❤️': '5312138559556164615', '❓': '5377316857231450742', '📈': '5350305691942788490', '📉': '5350713563512052787', '💎': '5309958691854754293', '💰': '5350452584119279096', '💸': '5309929258443874898', '\U0001fa99': '5377690785674175481', '💱': '5310107765874632305', '⁉️': '5377438129928020693', '🎮': '5309950797704865693', '💻': '5350554349074391003', '📱': '5409357944619802453', '🚗': '5312322066328853156', '🏠': '5312486108309757006', '💘': '5310029292527164639', '🎉': '5310228579009699834', '‼️': '5377498341074542641', '🏆': '5312315739842026755', '🏁': '5408906741125490282', '🎬': '5368653135101310687', '🎵': '5310045076531978942', '🔞': '5420331611830886484', '📚': '5350481781306958339', '👑': '5357107601584693888', '⚽️': '5375159220280762629', '🏀': '5384327463629233871', '📺': '5350513667144163474', '👀': '5357121491508928442', '\U0001fae6': '5357185426392096577', '🍓': '5310157398516703416', '💄': '5310262535021142850', '👠': '5368741306484925109', '✈️': '5348436127038579546', '\U0001f9f3': '5357120306097956843', '🏖': '5310303848311562896', '⛅️': '5350424168615649565', '🦄': '5413625003218313783', '🛍': '5350699789551935589', '👜': '5377478880577724584', '🛒': '5431492767249342908', '🚂': '5350497316203668441', '🛥': '5350422527938141909', '🏔': '5418196338774907917', '🏕': '5350648297189023928', '🤖': '5309832892262654231', '\U0001faa9': '5350751634102166060', '🎟': '5377624166436445368', '🏴\u200d☠️': '5386395194029515402', '🗳': '5350387571199319521', '🎓': '5357419403325481346', '🔭': '5368585403467048206', '🔬': '5377580546748588396', '🎶': '5377317729109811382', '🎤': '5382003830487523366', '🕺': '5357298525765902091', '💃': '5357370526597653193', '\U0001fa96': '5357188789351490453', '💼': '5348227245599105972', '\U0001f9ea': '5411138633765757782', '👨\u200d👩\u200d👧\u200d👦': '5386435923204382258', '👶': '5377675010259297233', '🤰': '5386609083400856174', '💅': '5368808634392257474', '🏛': '5350548830041415279', '\U0001f9ee': '5355127101970194557', '🖨': '5386379624773066504', '👮\u200d♂️': '5377494501373780436', '\U0001fa7a': '5350307998340226571', '💊': '5310094636159607472', '💉': '5310139157790596888', '\U0001f9fc': '5377468357907849200', '\U0001faaa': '5418115271267197333', '🛃': '5370947704199323325', '🍽': '5350344462612570293', '🐟': '5384574037701696503', '🎨': '5310039132297242441', '🎭': '5350658016700013471', '🎩': '5357504778685392027', '🔮': '5350367161514732241', '🍹': '5350520238444126134', '🎂': '5310132165583840589', '☕️': '5350392020785437399', '🍣': '5350406176997646350', '🍔': '5350403544182694064', '🍕': '5350444672789519765', '\U0001f9a0': '5312424913615723286', '💬': '5417915203100613993', '🎄': '5312054580060625569', '🎃': '5309744892677727325'}

chevron-rightПример кода для копированияhashtag

Last updated