Telegram Business аккаунты арқылы хабарламаларды қалай жіберуге болады

tg_send_message(platform_id, text,client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities)

Параметрлер:

Параметр Сипаттама
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** text Хабарлама мәтіні
client_message_id Дәйексөзге алынатын хабарлама идентификаторы
reply_markup Түйме параметрлері **
parse_mode Сипаттамадағы қалың және курсив мәтін пішімдеу ***. Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады.
disable_web_page_preview Сілтеме алдын ала қарауын көрсету. Өшіру үшін 1 мәнін беріңіз; әйтпесе 0 мәнін беріңіз немесе бос "" қалдырыңыз.
protect_content Мазмұнды қорғау жалаушасы. Қосу үшін 0, False немесе '' мәндерінен басқа кез келген мәнді беріңіз.
disable_notification Дыбыстық хабарландыру жалаушасы (әдепкі: 0). Хабарландыруды өшіру үшін 1, қосу үшін 0 мәнін беріңіз.
message_thread_id Тақырып идентификаторы (форум функционалы қосылған супертоптар үшін қолжетімді)
entities Бұл алдын ала пішімделген мәтінді оның барлық стильдерімен бірге көшіруге және белгілі бір қаріп қолданылуы керек таңбалар ауқымын көрсетуге мүмкіндік береді. Мысалды tg_request ішіндегі сәйкес өрістен табуға болады. Параметр сөздік болуы керек. Анықтама үшін мысал қойындысын қараңыз.
**Егжей-тегжейлі мысал**

Қажетті параметрлер жиынтығы бар қарапайым мысалды қарастырайық:

platform_id нақты клиенттің идентификаторын көрсетеді.

Айнымалыларды қолданатын сол мысалды қараңыз:

Бұл мысалда soob айнымалысы хабарламаны жібергеннен кейін сервердің жауабын қамтиды.

Алынған жауаптан message_id сақтасаңыз, бұл кейінірек осы хабарламамен жұмыс істеуге мүмкіндік береді (өңдеу, жою, қайта жіберу, пікір қалдыру).

Барлық параметрлерді пайдаланған кезде қиындықтар жиі туындайды. Келесі мысалды қарастырайық:

  • Алдымен функцияда қолданылатын барлық параметрлерді жариялаңыз. Есіңізде болсын, параметрлерді мәндер ретінде ғана емес, сонымен қатар айнымалылар ретінде де беруге болады, бұл жиі ыңғайлы және түсінікті. platform_id және client_message_id сияқты айнымалыларды клиенттің профиль картасынан алуға болады.
    platform_id — хабарлама жіберілетін Telegram клиентінің идентификаторы *\ >Біз клиент жазған чатта жауап береміз

    text - хабарлама мәтіні. \ >Біз мәтінді пішімдеуді қолданамыз - мысалы, қалың қаріппен бөлектеу.

    client_message_id - Дәйексөзге алынатын хабарлама идентификаторы\ >Чаттарда бұл айнымалыға оның мәні автоматты түрде тағайындалады.
    reply_markup — түйме параметрлері **. \ >Оны opts айнымалысына тағайындайық.
    parse_mode — Сипаттамадағы қалың және курсив мәтін пішімдеу ***. Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады. Хабарлама мәтінін пішімдеу үшін қолданылатын таңбалар осы жерде сипатталған. \ >markdown қолданайық.
    disable_web_page_preview - Сілтеме алдын ала қарауын көрсету. Өшіру үшін 1 мәнін беріңіз; әйтпесе 0 мәнін беріңіз немесе бос "" қалдырыңыз.\ >Хабарлама мәтінінде сілтеме болмағандықтан, біз кез келген мәнді бере аламыз.
    protect_content — Мазмұнды қорғау жалаушасы. Қосу үшін 0, False немесе '' мәндерінен басқа кез келген мәнді беріңіз.\ >Бізге мазмұнды қорғау қажет емес, сондықтан біз бос жолды ''' береміз.
    disable_notification — Дыбыстық хабарландыру жалаушасы (әдепкі: 0). Хабарландыруды өшіру үшін 1, қосу үшін 0 мәнін беріңіз.\ >Хабарландыру - бұл хабарлама мәтінін көрсететін қалқымалы терезе. Оны қосамыз.

  • Әрі қарай, функцияны жинаймыз. Функцияны айнымалыға тағайындауды ұмытпаңыз - бұл хабарламаны жіберу күйін бақылауға мүмкіндік береді.

Міне, біз алған нәтиже:

Клиент бізге test кілт сөзін жібергеннен кейін, біз оның хабарламасына дәйексөз келтіру арқылы жауап береміз.

ok ішінде біз жіберу күйін көреміз; келесіде хабарламаның өзі туралы ақпарат - оның идентификаторы, жіберуші деректері және мазмұны.

entities параметрімен мысал

Төменде көрсетілгендей, бастапқы жолды айнымалыда сақтауға болады:

text = "qwert asdfg zxcvb poiuy lkjhg 12345"

Параметрді деректері бар сөздік ретінде жазып, қаріптерді көрсету арқылы қажетті пішімдеуді көрсету керек:

entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"`` https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]

Параметрді қолданатын функцияда соңғы ретінде беріңіз. Параметрді tg_send_message және tg_send_message_1 функцияларына да беруге болады:

x = tg_send_message(platform_id, text, None, None, None, False, False, False, None, entities)

Жол үзілімдері бар мәтінді айнымалыға тағайындау үшін мәнді келесідей көрсетіңіз:

text = "Мәтіннің бірінші жолы" + "\n" + "Мәтіннің екінші жолы" + "\n" + "Үшінші жол"

Белгілі бір Telegram ботын көрсете отырып, хабарламаны қалай жіберуге болады

tg_send_message_1(token, platform_id, text, client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities, business_connection_id)

Параметр Сипаттама
**!** token BotFather-дан алынған Telegram бот токені
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** text Хабарлама мәтіні
client_message_id Дәйексөзге алынатын хабарлама идентификаторы
reply_markup Түйме параметрлері **
parse_mode Сипаттамадағы қалың және курсив мәтін пішімдеу ***. Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады.
disable_web_page_preview Сілтеме алдын ала қарауын көрсету. Өшіру үшін 1 мәнін беріңіз; әйтпесе 0 мәнін беріңіз немесе бос "" қалдырыңыз.
protect_content Мазмұнды қорғау жалаушасы. Қосу үшін 0, False немесе '' мәндерінен басқа кез келген мәнді беріңіз.
disable_notification Дыбыстық хабарландыру жалаушасы (әдепкі: 0). Хабарландыруды өшіру үшін 1, қосу үшін 0 мәнін беріңіз.
message_thread_id Тақырып идентификаторы (форум функционалы қосылған супертоптар үшін қолжетімді)
entities Бұл алдын ала пішімделген мәтінді оның барлық стильдерімен бірге көшіруге және белгілі бір қаріп қолданылуы керек таңбалар ауқымын көрсетуге мүмкіндік береді. Мысалды tg_request ішіндегі сәйкес өрістен табуға болады. Параметр сөздік болуы керек.
business_connection_id Бизнес идентификаторы мәні ботты қосу кезінде қолданылады және арналарда көрсетіледі. Егер параметрлерге бот токені енгізілсе және хабарламаны ботпен байланыстырылған пайдаланушы аккаунты арқылы жіберу қажет болса, оны беру керек.
Мысал

Параметрді беру мысалы:
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]

Мысал тек сөздікті көрсетеді, ал хабарлама мәтінінің өзі бөлек айнымалыға тағайындалады.

Telegram хабарламасындағы мәтінді қалай өңдеуге болады

Назар аударыңыз!

Хабарламаны өңдеу функциясы тек жаңа және жақында жіберілген хабарламалар үшін қолжетімді.

Хабарламаны өңдеуге рұқсат етілген уақыт терезесі мессенджердің өзімен анықталады және сіздің ботыңыздың жүктемесіне/белсенділігіне байланысты; ол өңдеу үшін қысқартылуы мүмкін.

Мессенджердің техникалық қолдауының мәліметі бойынша, хабарламаны өңдеу үшін оңтайлы уақыт аралығы 48 сағатты құрайды.

tg_edit_message_text(platform_id, message_id, text, reply_markup, parse_mode, disable_web_page_preview, entities)

Параметр Сипаттама
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** message_id Өңделетін хабарлама идентификаторы. Бұл идентификатор хабарламаны жіберу кезінде алдын ала сақталуы керек.
**!** text Хабарлама мәтіні
reply_markup Түйме параметрлері **
parse_mode Сипаттамадағы қалың және курсив мәтін пішімдеу ***. Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады.
disable_web_page_preview Сілтеме алдын ала қарауын көрсету. Өшіру үшін 1 мәнін беріңіз; әйтпесе 0 мәнін беріңіз немесе бос "" қалдырыңыз.
entities Бұл алдын ала пішімделген мәтінді оның барлық стильдерімен бірге көшіруге және белгілі бір қаріп қолданылуы керек таңбалар ауқымын көрсетуге мүмкіндік береді. Мысалды tg_request ішіндегі сәйкес өрістен табуға болады. Параметр сөздік болуы керек.

Хабарламаға реакцияны қалай жіберуге болады

tg_set_reaction(platform_id, message_id, reaction)

Параметр Сипаттама
**!** platform_id Telegram чатының идентификаторы
**!** message_id Хабарлама идентификаторы
**!** reaction Қажетті реакция жол ретінде беріледі.
Мысал

Көшіруге арналған код мысалы:

react = tg_set_reaction(platform_id, 1556, '👌')

Калькулятордағы мысал:

Тіркеме сипаттамасын қалай өңдеуге болады

tg_edit_message_caption(platform_id, message_id, caption, reply_markup, parse_mode, entities, show_caption_above_media)

Параметр Сипаттама
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** message_id Өңделетін хабарлама идентификаторы
**!** caption Сипаттама мәтіні
reply_markup Түйме параметрлері **
parse_mode Сипаттамадағы қалың және курсив мәтін пішімдеу ***. Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады.
entities

Бұл алдын ала пішімделген мәтінді оның барлық стильдерімен бірге көшіруге және белгілі бір қаріп қолданылуы керек таңбалар ауқымын көрсетуге мүмкіндік береді. Мысалды tg_request ішіндегі сәйкес өрістен табуға болады. Параметр сөздік болуы керек.

Параметрді беру мысалы:
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"**https://,mavibot.ai"}**,{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]

Мысал тек сөздікті көрсетеді, ал хабарлама мәтінінің өзі бөлек айнымалыға тағайындалады.

show_caption_above_media True мәнін қабылдайды; егер бұл параметр көрсетілсе, хабарлама мәтіні тіркеменің үстінде көрсетіледі.

Хабарламадағы медиа тіркемелерді қалай өңдеуге болады

Параметр Сипаттама
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** message_id Өңделетін хабарлама идентификаторы. Бұл идентификатор хабарламаны жіберу кезінде алдын ала сақталуы керек.
**!** media

Медиа файлды сипаттайтын сөздік:
Бұрын жіберілген фотосуретті ауыстыруға арналған JSON сөздігінің мысалы:
media = '{"type": "photo", "media": "<file_to_send>"}'

мұндағы <file_to_send> толық Telegram вебхукі арқылы алынған file_id болуы ұсынылады.

Толығырақ, сөздікке арналған параметрлер ресми Telegram құжаттамасында сипатталған.

reply_markup Түйме параметрлері **

Хабарламадағы инлайн пернетақтаны қалай өңдеуге болады

Параметр Сипаттама
**!** platform_id Хабарлама жіберілетін Telegram пайдаланушысының идентификаторы *
**!** message_id Өңделетін хабарлама идентификаторы. Бұл идентификатор хабарламаны жіберу кезінде алдын ала сақталуы керек.
**!** reply_markup Түйме параметрлері **

Тек инлайн пернетақтаны өңдеуге болады.

Мысал: Telegram API арқылы хабарламаны өңдеу

Төменде хабарламаларды өңдеуге арналған Telegram API функцияларымен жұмыс істеудің егжей-тегжейлі мысалын таба аласыз.

Хабарламаны қалай көшіруге болады

tg_copy_message(platform_id, from_chat_id, message_id, reply_to_message_id, reply_markup, parse_mode, protect_content, disable_notification, caption, message_thread_id, entities, show_caption_above_media)

Параметр Сипаттама
**!** platform_id Хабарлама КӨШІРІЛЕТІН Telegram пайдаланушысының идентификаторы *
**!** from_chat_id Хабарлама КӨШІРІЛЕТІН Telegram пайдаланушысының идентификаторы *
**!** message_id Көшірілетін хабарлама идентификаторы
reply_to_message_id Егер көшірілген хабарлама пікір болса, бастапқы хабарлама идентификаторы
reply_markup Түйме параметрлері **
parse_mode

Сипаттамадағы қалың және курсив мәтін пішімдеу ***.

Ол html, markdown, markdownV2 сияқты мәндерге ие бола алады.

protect_content Мазмұнды қорғау жалаушасы. Қосу үшін 0, False немесе '' мәндерінен басқа кез келген мәнді беріңіз.
disable_notification Дыбыстық хабарландыру жалаушасы (әдепкі: 0). Хабарландыруды өшіру үшін 1, қосу үшін 0 мәнін беріңіз.
caption - 1024 таңбаға дейінгі сипаттама.
message_thread_id Тақырып идентификаторы (форум функционалы қосылған супертоптар үшін қолжетімді)
entities Бұл алдын ала пішімделген мәтінді оның барлық стильдерімен бірге көшіруге және белгілі бір қаріп қолданылуы керек таңбалар ауқымын көрсетуге мүмкіндік береді. Мысалды tg_request ішіндегі сәйкес өрістен табуға болады. Параметр сөздік болуы керек.

Параметрді беру мысалы:
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":**"https://mavibot.ai"}**,{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]

Мысал тек сөздікті көрсетеді, ал хабарлама мәтінінің өзі бөлек айнымалыға тағайындалады.
show_caption_above_media True мәнін қабылдайды; егер бұл параметр көрсетілсе, хабарлама мәтіні тіркеменің үстінде көрсетіледі.

Хабарламаны қалай қайта жіберуге болады

tg_forward_message(platform_id, from_chat_id, message_id, protect_content, disable_notification, message_thread_id)

Параметр Сипаттама
**!** platform_id Хабарлама ЖІБЕРІЛЕТІН Telegram пайдаланушысының идентификаторы *
**!** from_chat_id Хабарлама ЖІБЕРІЛЕТІН Telegram пайдаланушысының идентификаторы *
**!** message_id Қайта жіберілетін хабарлама идентификаторы
protect_content Мазмұнды қорғау жалаушасы. Қосу үшін 0, False немесе '' мәндерінен басқа кез келген мәнді беріңіз.
disable_notification Дыбыстық хабарландыру жалаушасы (әдепкі: 0). Хабарландыруды өшіру үшін 1, қосу үшін 0 мәнін беріңіз.
message_thread_id Тақырып идентификаторы (форум функционалы қосылған супертоптар үшін қолжетімді)

Хабарламаны қалай жоюға болады

tg_delete_message(platform_id, message_id)

! Хабарламаны, оның ішінде қызметтік хабарламаларды келесі шектеулермен жою үшін осы әдісті пайдаланыңыз:

  • Хабарламаны ол 48 сағат бұрын жіберілген болса ғана жоюға болады.
  • Жеке чаттағы сүйектері бар хабарламаларды олар 24 сағаттан астам бұрын жіберілген болса ғана жоюға болады.
  • Боттар жеке чаттарда, топтарда және супертоптарда шығыс хабарламаларды жоя алады.
  • Боттар жеке чаттарда кіріс хабарламаларды жоя алады.
  • can_post_messages рұқсаты бар боттар арналарда шығыс хабарламаларды жоя алады.
  • Егер бот топтың әкімшісі болса, ол ондағы кез келген хабарламаны жоя алады.
  • Егер боттың супертопта немесе арнада can_delete_messages рұқсаты болса, ол ондағы кез келген хабарламаны жоя алады.
Параметр Сипаттама
**!** platform_id Telegram пайдаланушысының идентификаторы *
**!** message_id Жойылатын хабарлама идентификаторы

Бірнеше хабарламаны қалай жоюға болады

tg_delete_messages(platform_id, message_ids)

! Хабарламаны, оның ішінде қызметтік хабарламаларды келесі шектеулермен жою үшін осы әдісті пайдаланыңыз:

  • Хабарламаны ол 48 сағат бұрын жіберілген болса ғана жоюға болады.
  • Жеке чаттағы сүйектері бар хабарламаларды олар 24 сағаттан астам бұрын жіберілген болса ғана жоюға болады.
  • Боттар жеке чаттарда, топтарда және супертоптарда шығыс хабарламаларды жоя алады.
  • Боттар жеке чаттарда кіріс хабарламаларды жоя алады.
  • can_post_messages рұқсаты бар боттар арналарда шығыс хабарламаларды жоя алады.
  • Егер бот топтың әкімшісі болса, ол ондағы кез келген хабарламаны жоя алады.
  • Егер боттың супертопта немесе арнада can_delete_messages рұқсаты болса, ол ондағы кез келген хабарламаны жоя алады.
Параметр Сипаттама
**!** platform_id Telegram пайдаланушысының идентификаторы
**!** message_ids Жойылатын хабарлама идентификаторларының массиві. Ең көбі 100 элемент.

Мысал: Telegram API арқылы хабарлама жіберу

Көшіруге арналған код мысалы

1-мысал

/*Мәтінді алдын ала айнымалыда анықтау ыңғайлы*/
text='Жазу-жазу-жазу мәтіні'
/*Хабарлама жіберу функциясы*/
soob=tg_send_message(platform_id, text)
/*Жіберілген хабарлама идентификаторын сақтау*/
soob_id=soob['result']['message_id']

2-мысал

id_group=-1001847103100
text='API әдісі арқылы хабарлама жіберуді тестілеу. Мысалы, *қалың мәтін*'
opts = {"inline_keyboard": [[{"text": "👍","callback_data":1}, {"text": "👎","callback_data":2}]]}
disable_web_page_preview=1
protect_content=''
disable_notification=1
parse_mode='markdown'
soob=tg_send_message(id_group, text,client_message_id, opts, parse_mode, disable_web_page_preview, protect_content, disable_notification) 


Мысал: Telegram API арқылы хабарламаны өңдеу

Конфигурация мысалы

Сонымен, өзімізге инлайн пернетақтасы бар хабарлама жіберейік:

Әрі қарай, хабарлама мәтінін өңдейміз:

Және түймелерді өңдейміз:

Суреті бар хабарламаны өңдеуге тырысайық. Ол үшін суреті бар хабарламаны жіберіп, жіберілген хабарлама идентификаторын сақтаңыз. Сурет URL мекенжайын қалай алуға болатыны туралы егжей-тегжейлі нұсқауларды осы жерден оқыңыз:

Енді суретті және оның сипаттамасын өңдейік:

Көшіруге арналған код мысалы
/*Параметрлерді алдын ала айнымалыда анықтау ыңғайлы.*/
text='Қандай пакетті таңдағыңыз келеді?'
opts = {"inline_keyboard": [[{"text": "Пакет 1","callback_data":1}, {"text": "Пакет 2","callback_data":2}]]}
/*Хабарлама жіберу функциясы*/
soob=tg_send_message(platform_id, text, None, opts)
/*Жіберілген хабарлама идентификаторын сақтау*/
soob_id=soob['result']['message_id']

/*Хабарламаны өңдеу*/
text='Сізге қандай пакет қызықты?'
tg_edit_message_text(platform_id, soob_id, text, opts)  

/*Инлайн пернетақтаны өңдеу*/
opts = {"inline_keyboard": [[{"text": "Стандартты","callback_data":1}, {"text": "Премиум","callback_data":2}]]}
tg_edit_message_reply_markup(platform_id, soob_id, opts)


/*Сипаттамасы бар суретті жіберу*/
soob=tg_send_photo(platform_id, "AgACAgIAAxkBAAIPpWO4T7jhOgYHq6uR8rjnq9rIvBs-AAJlwDEb5fHASaGdhzgWjyn7AQADAgADeAADLQQ", "Бұл сурет")
/*Жіберілген хабарлама идентификаторын сақтау*/
soob_id=soob['result']['message_id']

/*Суретті өңдеу*/
media='{"type": "photo", "media": "AgACAgIAAxkBAAIPrmO4UiH7Tazqn-3IbFVzPKNsVEZmAAJ1wDEb5fHASWcNXKah-egvAQADAgADeQADLQQ"}'
tg_edit_message_media(platform_id, soob_id, media)
/*Сурет сипаттамасын өңдеу*/
tg_edit_message_caption(platform_id, soob_id, 'Бұл - МЕН!')

Мысал: Telegram API арқылы хабарламаны көшіру

Мысал

Хабарламаны жіберіп, оның идентификаторын сақтайық.

Және бұрын жіберілген хабарламаны көшірейік.

Көшіруге арналған код мысалы
/*Параметрлерді алдын ала айнымалыда анықтау ыңғайлы.*/
text='Қандай пакетті таңдағыңыз келеді?'
opts = {"inline_keyboard": [[{"text": "Пакет 1","callback_data":1}, {"text": "Пакет 2","callback_data":2}]]}
/*Хабарлама жіберу функциясы*/
soob=tg_send_message(platform_id, text, None, opts)
/*Жіберілген хабарлама идентификаторын сақтау*/
soob_id=soob['result']['message_id']


/*Жіберілген хабарламаны көшіру*/
tg_copy_message('5081438490', '1840834360', soob_id, None, opts, None, None, 1)