كيفية إرسال الرسائل باستخدام حساب 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 تحت الحقل المقابل. يجب أن يكون المعامل قاموسًا. يظهر المثال القاموس فقط، بينما يتم تعيين نص الرسالة نفسه لمتغير منفصل. |
| show_caption_above_media | يأخذ القيمة True؛ إذا تم تحديد هذا المعامل، سيتم عرض نص الرسالة فوق المرفق. |
كيفية تحرير المرفقات الوسائطية في رسالة
| المعامل | الوصف |
|---|---|
| **!** platform_id | معرف مستخدم Telegram الذي يجب إرسال الرسالة إليه * |
| **!** message_id | معرف الرسالة المراد تحريرها. يجب حفظ هذا المعرف مسبقًا عند إرسال الرسالة. |
| **!** media |
قاموس يصف ملف الوسائط:
حيث يُوصى بأن يكون <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)