วิธีส่งข้อความโดยใช้บัญชี 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 ระบุตัวระบุของลูกค้าเฉพาะ

ดูตัวอย่างเดียวกัน แต่ใช้ตัวแปร:

ในตัวอย่างนี้ ตัวแปร soob จะมีการตอบกลับจากเซิร์ฟเวอร์หลังจากส่งข้อความ

หากคุณบันทึก message_id จากการตอบกลับที่ได้รับ จะช่วยให้คุณสามารถทำงานกับข้อความนี้ในภายหลัง (แก้ไข ลบ ส่งต่อ แสดงความคิดเห็น)

มักเกิดปัญหาขึ้นเมื่อใช้พารามิเตอร์ทั้งหมด ลองพิจารณาตัวอย่างต่อไปนี้:

  • ขั้นแรก ประกาศพารามิเตอร์ทั้งหมดที่ใช้ในฟังก์ชัน โปรดจำไว้ว่า พารามิเตอร์สามารถส่งผ่านได้ไม่เพียงแต่เป็นค่า แต่ยังเป็นตัวแปร ซึ่งมักจะสะดวกและชัดเจนกว่า ตัวแปรเช่น platform_id และ client_message_id สามารถรับได้จากบัตรโปรไฟล์ของลูกค้า
    platform_id — ID ลูกค้า Telegram ที่จะส่งข้อความไปยัง *\ >เราจะตอบกลับในแชทเดียวกับที่ลูกค้าเขียน

    text - ข้อความ \ >เราใช้การจัดรูปแบบข้อความ - เช่น การเน้นตัวหนา

    client_message_id - 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 เราเห็นสถานะการส่ง; ถัดมาคือข้อมูลเกี่ยวกับข้อความ — ID, ข้อมูลผู้ส่ง และเนื้อหา

ตัวอย่างกับพารามิเตอร์ 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)

ตัวอย่างการส่งพารามิเตอร์:
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

โปรดทราบ!

ฟังก์ชันการแก้ไขข้อความใช้ได้เฉพาะกับข้อความใหม่และข้อความที่เพิ่งส่งไปเท่านั้น

กรอบเวลาที่อนุญาตให้แก้ไขข้อความนั้นถูกกำหนดโดยตัว messenger เอง และขึ้นอยู่กับโหลด/กิจกรรมของบอทของคุณ อาจสั้นลงสำหรับการแก้ไข

ตามการสนับสนุนทางเทคนิคของ messenger กรอบเวลาที่เหมาะสมที่สุดสำหรับการแก้ไขข้อความคือ 48 ชั่วโมง

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

วิธีส่งรีแอคชันไปยังข้อความ

tg_set_reaction(platform_id, 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)

วิธีแก้ไขไฟล์แนบสื่อในข้อความ

วิธีแก้ไขคีย์บอร์ดแบบอินไลน์ในข้อความ

คุณสามารถแก้ไขได้เฉพาะคีย์บอร์ดแบบอินไลน์เท่านั้น

คุณสามารถดูตัวอย่างโดยละเอียดของการทำงานกับฟังก์ชัน 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)

วิธีส่งต่อข้อความ

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

วิธีลบข้อความ

tg_delete_message(platform_id, message_id)

! ใช้วิธีนี้เพื่อลบข้อความ รวมถึงข้อความบริการ โดยมีข้อจำกัดดังต่อไปนี้:

  • ข้อความสามารถลบได้ก็ต่อเมื่อส่งน้อยกว่า 48 ชั่วโมงที่แล้ว
  • ข้อความที่มีลูกเต๋าในแชทส่วนตัวสามารถลบได้ก็ต่อเมื่อส่งมากกว่า 24 ชั่วโมงที่แล้ว
  • บอทสามารถลบข้อความขาออกในแชทส่วนตัว กลุ่ม และซูเปอร์กรุ๊ป
  • บอทสามารถลบข้อความขาเข้าในแชทส่วนตัว
  • บอทที่มีสิทธิ์ can_post_messages สามารถลบข้อความขาออกในช่อง
  • หากบอทเป็นผู้ดูแลระบบของกลุ่ม บอทสามารถลบข้อความใดๆ ในกลุ่มนั้น
  • หากบอทมีสิทธิ์ can_delete_messages ในซูเปอร์กรุ๊ปหรือช่อง บอทสามารถลบข้อความใดๆ ในนั้น

วิธีลบข้อความหลายข้อความ

tg_delete_messages(platform_id, message_ids)

! ใช้วิธีนี้เพื่อลบข้อความ รวมถึงข้อความบริการ โดยมีข้อจำกัดดังต่อไปนี้:

  • ข้อความสามารถลบได้ก็ต่อเมื่อส่งน้อยกว่า 48 ชั่วโมงที่แล้ว
  • ข้อความที่มีลูกเต๋าในแชทส่วนตัวสามารถลบได้ก็ต่อเมื่อส่งมากกว่า 24 ชั่วโมงที่แล้ว
  • บอทสามารถลบข้อความขาออกในแชทส่วนตัว กลุ่ม และซูเปอร์กรุ๊ป
  • บอทสามารถลบข้อความขาเข้าในแชทส่วนตัว
  • บอทที่มีสิทธิ์ can_post_messages สามารถลบข้อความขาออกในช่อง
  • หากบอทเป็นผู้ดูแลระบบของกลุ่ม บอทสามารถลบข้อความใดๆ ในกลุ่มนั้น
  • หากบอทมีสิทธิ์ can_delete_messages ในซูเปอร์กรุ๊ปหรือช่อง บอทสามารถลบข้อความใดๆ ในนั้น

ตัวอย่าง: การส่งข้อความด้วย Telegram API

ตัวอย่างที่ 1

/*สะดวกในการกำหนดข้อความในตัวแปรก่อน*/
text='กำลังเขียน-เขียน-เขียนข้อความ'
/*ฟังก์ชันส่งข้อความ*/
soob=tg_send_message(platform_id, text)
/*บันทึก ID ข้อความที่ส่ง*/
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

ดังนั้น มาส่งข้อความถึงตัวเราเองด้วยคีย์บอร์ดแบบอินไลน์:

จากนั้น แก้ไขข้อความ:

และแก้ไขปุ่ม:

ลองแก้ไขข้อความที่มีรูปภาพ ในการทำเช่นนี้ ให้ส่งข้อความที่มีรูปภาพและบันทึก ID ข้อความที่ส่ง อ่านคำแนะนำโดยละเอียดเกี่ยวกับวิธีรับ URL รูปภาพ ที่นี่:

ตอนนี้ มาแก้ไขรูปภาพและคำอธิบาย:

/*สะดวกในการกำหนดพารามิเตอร์ในตัวแปรก่อน*/
text='คุณต้องการเลือกแพ็คเกจใด?'
opts = {"inline_keyboard": [[{"text": "แพ็คเกจ 1","callback_data":1}, {"text": "แพ็คเกจ 2","callback_data":2}]]}
/*ฟังก์ชันส่งข้อความ*/
soob=tg_send_message(platform_id, text, None, opts)
/*บันทึก ID ข้อความที่ส่ง*/
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", "นี่คือรูปภาพ")
/*บันทึก ID ข้อความที่ส่ง*/
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

มาส่งข้อความและบันทึก ID ของมัน

และคัดลอกข้อความที่ส่งก่อนหน้านี้

/*สะดวกในการกำหนดพารามิเตอร์ในตัวแปรก่อน*/
text='คุณต้องการเลือกแพ็คเกจใด?'
opts = {"inline_keyboard": [[{"text": "แพ็คเกจ 1","callback_data":1}, {"text": "แพ็คเกจ 2","callback_data":2}]]}
/*ฟังก์ชันส่งข้อความ*/
soob=tg_send_message(platform_id, text, None, opts)
/*บันทึก ID ข้อความที่ส่ง*/
soob_id=soob['result']['message_id']


/*คัดลอกข้อความที่ส่ง*/
tg_copy_message('5081438490', '1840834360', soob_id, None, opts, None, None, 1)