كيفية إرسال الرسائل باستخدام حساب 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 = "First line of text" + "\n" + "Second line of text" + "\n" + "Third line"

كيفية إرسال رسالة مع تحديد بوت 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 رمز بوت Telegram الذي تم الحصول عليه من BotFather
**!** 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 تُستخدم قيمة Business 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> هو file_id الذي تم الحصول عليه عبر webhook Telegram الكامل.

لمزيد من التفاصيل، تم وصف معاملات القاموس في وثائق 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

مثال على التكوين

لذا، دعنا نرسل لأنفسنا رسالة مع لوحة مفاتيح مضمنة:

بعد ذلك، قم بتحرير نص الرسالة:

وتحرير الأزرار:

لنحاول تحرير رسالة تحتوي على صورة. للقيام بذلك، أرسل رسالة مع صورة واحفظ معرف الرسالة المرسلة. اقرأ التعليمات التفصيلية حول كيفية الحصول على رابط الصورة هنا:

الآن، دعنا نحرر الصورة ووصفها:

مثال على الكود للنسخ
/*من الملائم تعريف المعاملات في متغير مسبقًا.*/
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)