Telegram Business hesabı kullanarak mesaj gönderme

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)

Parametreler:

Gerekli parametrelerle basit bir örnek ele alalım:

platform_id, belirli bir müşterinin tanımlayıcısını belirtir.

Aynı örneği değişkenler kullanarak görelim:

Bu örnekte, soob değişkeni, mesaj gönderildikten sonra sunucunun yanıtını içerecektir.

Alınan yanıttan message_id'yi kaydederseniz, bu daha sonra bu mesajla çalışmanıza (düzenleme, silme, iletme, yorum yapma) olanak tanır.

Tüm parametreleri kullanırken genellikle zorluklar ortaya çıkar. Aşağıdaki örneği ele alalım:

  • İlk olarak, fonksiyonda kullanılan tüm parametreleri bildirin. Parametrelerin yalnızca değer olarak değil, aynı zamanda değişken olarak da geçirilebileceğini unutmayın; bu genellikle daha kullanışlı ve nettir. platform_id ve client_message_id gibi değişkenler müşterinin profil kartından alınabilir.
    platform_id — Mesajın gönderileceği Telegram müşteri kimliği *\ >Müşterinin yazdığı sohbette yanıtlayacağız

    text - mesaj metni. \ >Metin biçimlendirmesi kullanıyoruz - örneğin, kalın vurgulama.

    client_message_id - Alıntı yapılacak mesaj kimliği\ >Sohbetlerde bu değişkene değeri otomatik olarak atanır.
    reply_markup — Buton ayarları **. \ >Bunu opts değişkenine atayalım.
    parse_mode — Açıklamada kalın ve italik metin biçimlendirmesi ***. html, markdown, markdownV2 gibi değerler alabilir. Mesaj metnini biçimlendirmek için kullanılan karakterler burada açıklanmıştır. \ >markdown kullanalım.
    disable_web_page_preview - Bağlantı önizlemesini göster. Devre dışı bırakmak için 1, aksi halde 0 veya boş "" bırakın.\ >Mesaj metni bağlantı içermediğinden herhangi bir değer geçebiliriz.
    protect_content — İçerik koruma bayrağı. Etkinleştirmek için 0, False veya '' dışında herhangi bir değer girin.\ >İçerik korumasına ihtiyacımız yok, bu yüzden boş bir dize geçeceğiz ''.
    disable_notification — Sesli bildirim bayrağı (varsayılan: 0). Bildirimi devre dışı bırakmak için 1, etkinleştirmek için 0 girin.\ >Bildirim, mesaj metnini görüntüleyen bir açılır penceredir. Etkinleştirelim.

  • Ardından, fonksiyonu birleştiriyoruz. Fonksiyonu bir değişkene atamayı unutmayın; bu, mesaj gönderme durumunu izlemenize olanak tanır.

İşte elde ettiğimiz:

Müşteri bize test anahtar kelimesini gönderdikten sonra, mesajını alıntılayarak yanıtlıyoruz.

ok içinde gönderme durumunu görüyoruz; ardından mesajın kendisi hakkında bilgi geliyor - kimliği, gönderen verileri ve içeriği.

entities parametresi ile örnek

Orijinal dizeyi aşağıda gösterildiği gibi bir değişkende saklayabilirsiniz:

text = "qwert asdfg zxcvb poiuy lkjhg 12345"

Parametreyi, verilerle birlikte bir sözlük olarak yazmalı ve yazı tiplerini belirterek istenen biçimlendirmeyi belirtmelisiniz:

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"}]

Parametreyi kullandığınız fonksiyonda en son geçirin. Parametre hem tg_send_message hem de tg_send_message_1 fonksiyonlarına geçirilebilir:

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

Satır sonları olan metni bir değişkene atamak için değeri aşağıdaki gibi belirtin:

text = "İlk metin satırı" + "\n" + "İkinci metin satırı" + "\n" + "Üçüncü satır"

Belirli bir Telegram botu belirterek mesaj gönderme

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)

Parametrenin geçirilmesine örnek:
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"}]

Örnek yalnızca sözlüğü gösterirken, mesaj metninin kendisi ayrı bir değişkene atanır.

Telegram mesajındaki metni düzenleme

Lütfen dikkat!

Mesaj düzenleme işlevi yalnızca yeni ve yakın zamanda gönderilmiş mesajlar için kullanılabilir.

Mesaj düzenlemeye izin verilen zaman aralığı, mesajlaşma uygulamasının kendisi tarafından belirlenir ve botunuzun yüküne/etkinliğine bağlıdır; düzenleme için kısaltılabilir.

Mesajlaşma uygulamasının teknik desteğine göre, bir mesajı düzenlemek için en uygun zaman dilimi 48 saattir.

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

Bir mesaja tepki gönderme

tg_set_reaction(platform_id, message_id, reaction)

Kopyalama için kod örneği:

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

Hesap makinesinde örnek:

Bir ek açıklamasını düzenleme

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

Bir mesajdaki medya eklerini düzenleme

Bir mesajdaki satır içi klavyeyi düzenleme

Yalnızca satır içi klavye düzenlenebilir.

Mesajları düzenlemek için Telegram API işlevleriyle çalışmaya ilişkin ayrıntılı bir örneği aşağıda bulabilirsiniz.

Bir mesajı kopyalama

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)

Bir mesajı iletme

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

Bir mesajı silme

tg_delete_message(platform_id, message_id)

! Bu yöntemi, aşağıdaki kısıtlamalarla birlikte servis mesajları da dahil olmak üzere bir mesajı silmek için kullanın:

  • Bir mesaj yalnızca 48 saatten daha kısa bir süre önce gönderilmişse silinebilir.
  • Özel sohbetlerdeki zar mesajları yalnızca 24 saatten daha uzun bir süre önce gönderilmişse silinebilir.
  • Botlar, özel sohbetlerde, gruplarda ve süper gruplarda giden mesajları silebilir.
  • Botlar, özel sohbetlerde gelen mesajları silebilir.
  • can_post_messages iznine sahip botlar, kanallarda giden mesajları silebilir.
  • Bir bot bir grubun yöneticisiyse, oradaki herhangi bir mesajı silebilir.
  • Bir bot bir süper grupta veya kanalda can_delete_messages iznine sahipse, oradaki herhangi bir mesajı silebilir.

Birden çok mesajı silme

tg_delete_messages(platform_id, message_ids)

! Bu yöntemi, aşağıdaki kısıtlamalarla birlikte servis mesajları da dahil olmak üzere bir mesajı silmek için kullanın:

  • Bir mesaj yalnızca 48 saatten daha kısa bir süre önce gönderilmişse silinebilir.
  • Özel sohbetlerdeki zar mesajları yalnızca 24 saatten daha uzun bir süre önce gönderilmişse silinebilir.
  • Botlar, özel sohbetlerde, gruplarda ve süper gruplarda giden mesajları silebilir.
  • Botlar, özel sohbetlerde gelen mesajları silebilir.
  • can_post_messages iznine sahip botlar, kanallarda giden mesajları silebilir.
  • Bir bot bir grubun yöneticisiyse, oradaki herhangi bir mesajı silebilir.
  • Bir bot bir süper grupta veya kanalda can_delete_messages iznine sahipse, oradaki herhangi bir mesajı silebilir.

Örnek: Telegram API ile mesaj gönderme

Örnek 1

/*Metni önceden bir değişkende tanımlamak kullanışlıdır*/
text='Yazma-yazma-yazma metni'
/*Mesaj gönderme fonksiyonu*/
soob=tg_send_message(platform_id, text)
/*Gönderilen mesaj kimliğini kaydet*/
soob_id=soob['result']['message_id']

Örnek 2

id_group=-1001847103100
text='API yöntemiyle mesaj göndermeyi test etme. Örneğin, *kalın metin*'
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) 


Örnek: Telegram API ile mesaj düzenleme

Şimdi, kendimize satır içi klavyeli bir mesaj gönderelim:

Ardından, mesaj metnini düzenleyelim:

Ve butonları düzenleyelim:

Bir resim içeren bir mesajı düzenlemeyi deneyelim. Bunu yapmak için, bir resim içeren bir mesaj gönderin ve gönderilen mesaj kimliğini kaydedin. Resim URL'sini nasıl alacağınıza ilişkin ayrıntılı talimatları burada bulabilirsiniz:

Şimdi, resmi ve açıklamasını düzenleyelim:

/*Parametreleri önceden bir değişkende tanımlamak kullanışlıdır.*/
text='Hangi paketi seçmek istersiniz?'
opts = {"inline_keyboard": [[{"text": "Paket 1","callback_data":1}, {"text": "Paket 2","callback_data":2}]]}
/*Mesaj gönderme fonksiyonu*/
soob=tg_send_message(platform_id, text, None, opts)
/*Gönderilen mesaj kimliğini kaydet*/
soob_id=soob['result']['message_id']

/*Mesajı düzenle*/
text='Hangi paketle ilgileniyorsunuz?'
tg_edit_message_text(platform_id, soob_id, text, opts)  

/*Satır içi klavyeyi düzenle*/
opts = {"inline_keyboard": [[{"text": "Standart","callback_data":1}, {"text": "Premium","callback_data":2}]]}
tg_edit_message_reply_markup(platform_id, soob_id, opts)


/*Açıklamalı resim gönder*/
soob=tg_send_photo(platform_id, "AgACAgIAAxkBAAIPpWO4T7jhOgYHq6uR8rjnq9rIvBs-AAJlwDEb5fHASaGdhzgWjyn7AQADAgADeAADLQQ", "Bu bir resimdir")
/*Gönderilen mesaj kimliğini kaydet*/
soob_id=soob['result']['message_id']

/*Resmi düzenle*/
media='{"type": "photo", "media": "AgACAgIAAxkBAAIPrmO4UiH7Tazqn-3IbFVzPKNsVEZmAAJ1wDEb5fHASWcNXKah-egvAQADAgADeQADLQQ"}'
tg_edit_message_media(platform_id, soob_id, media)
/*Resim açıklamasını düzenle*/
tg_edit_message_caption(platform_id, soob_id, 'Bu BENİM!')

Örnek: Telegram API ile mesaj kopyalama

Bir mesaj gönderelim ve kimliğini kaydedelim.

Ve daha önce gönderilen mesajı kopyalayalım.

/*Parametreleri önceden bir değişkende tanımlamak kullanışlıdır.*/
text='Hangi paketi seçmek istersiniz?'
opts = {"inline_keyboard": [[{"text": "Paket 1","callback_data":1}, {"text": "Paket 2","callback_data":2}]]}
/*Mesaj gönderme fonksiyonu*/
soob=tg_send_message(platform_id, text, None, opts)
/*Gönderilen mesaj kimliğini kaydet*/
soob_id=soob['result']['message_id']


/*Gönderilen mesajı kopyala*/
tg_copy_message('5081438490', '1840834360', soob_id, None, opts, None, None, 1)