الانتقال إلى المحتوى الرئيسي

أيوغرام مضمنة معالجة لوحة المفاتيح: إعدادات وأمثلة الاستخدام

في عالم الروبوتات ، تعد معالجة إدخال المستخدم واحدة من أهم المهام. توفر منصة برقية للمطورين القدرة على إنشاء روبوتات باستخدام أدوات ومكتبات مختلفة. واحدة من المكتبات الشعبية لإنشاء السير على برقية هو أيوغرام.

واحدة من السمات الهامة من أيوغرام هو استخدام لوحة المفاتيح المضمنة ، وهو نوع خاص من لوحة المفاتيح التي تسمح للمستخدم لتحديد الخيارات دون إدخال النص يدويا. يتم عرض لوحة المفاتيح المضمنة كأزرار أسفل نص الرسالة ويمكن أن تحتوي على نص وصور للأزرار.

إعداد واستخدام لوحة مفاتيح مضمنة باستخدام أيوجرام بسيط للغاية. أولا ، تحتاج إلى إنشاء كائن إينلينكيبواردماركوب وإضافة أزرار إليها باستخدام طريقة إضافة (). كل زر عبارة عن كائن زر لوحة مفاتيح داخلي يقبل نص الزر ومعلمة بيانات رد الاتصال الاختيارية — البيانات التي سيتم إرسالها إلى الروبوت عند النقر فوق الزر.

بعد إنشاء لوحة مفاتيح مضمنة ، يمكنك إضافتها إلى الرسالة باستخدام طريقة ريبليماركوب لكائن سيندمسيج أو إديتمساجيتكست. عند النقر فوق الزر ، سترسل برقية رسالة إرجاع تحتوي على البيانات التي تم إرسالها في معلمة بيانات رد الاتصال الخاصة بالزر. هذا يسمح للمطور بمعالجة إجراءات المستخدم وتنفيذ العمليات اللازمة.

  1. معالجة لوحة المفاتيح المضمنة أيوجرام
  2. إعدادات الروبوت وإنشاء لوحة مفاتيح مضمنة
  3. معالجة الضغط على الزر على لوحة المفاتيح المضمنة
  4. أمثلة على استخدام لوحة مفاتيح مضمنة

معالجة لوحة المفاتيح المضمنة أيوجرام

توفر مكتبة أيوجرام أدوات بسيطة ومريحة لإنشاء وتكوين ومعالجة لوحة مفاتيح مضمنة. لبدء العمل مع لوحة المفاتيح المضمنة ، سوف تحتاج إلى كائن إينلينكيبواردماركوب. Он позволяет группировать кнопки по рядам и устанавливать им действия.

Пример создания инлайн клавиатуры:

from aiogram import types

inline_keyboard = types.InlineKeyboardMarkup(row_width=2)

button1 = types.InlineKeyboardButton("Кнопка 1", callback_data="button1")

button2 = types.InlineKeyboardButton("Кнопка 2", callback_data="button2")

button3 = types.InlineKeyboardButton("Кнопка 3", callback_data="button3")

inline_keyboard.add(button1, button2, button3)

في المثال أعلاه ، يتم إنشاء لوحة مفاتيح مضمنة بثلاثة أزرار. يحتوي كل زر على نص ومعرف فريد سيتم تمريره إلى المعالج عند النقر فوق الزر.

بعد ذلك ، تحتاج إلى إنشاء معالج للوحة المفاتيح المضمنة:

من أنواع استيراد أيوجرام

@موانئ دبي.(نص= "زر 1")

عملية غير متزامنة-زر 1 (استدعاء-استعلام: أنواع.كالباككيري):

# الرمز الخاص بك

تمريرة

في المعالج ، يمكنك تنفيذ أي إجراءات مطلوبة في الروبوت الخاص بك عند النقر فوق زر معين. على سبيل المثال ، لإرسال رسائل أو معالجة البيانات المستلمة.

للعمل المريح مع لوحة المفاتيح المضمنة ، يوفر الرسم البياني أيضا القدرة على تغيير لوحة المفاتيح وتحديثها ، بالإضافة إلى تلقي البيانات التي أرسلها المستخدم عند الضغط على الزر.

استخدم لوحة المفاتيح المضمنة في الروبوت الخاص بك لإنشاء تفاعل مريح وبديهي مع المستخدمين.

إعدادات الروبوت وإنشاء لوحة مفاتيح مضمنة

إعدادات بوت

قبل إنشاء لوحة مفاتيح مضمنة واستخدامها ، تحتاج إلى تكوين الروبوت. للقيام بذلك ، سوف تحتاج رمز بوت الخاص بك ، والتي يمكن الحصول عليها من @بوتفاثر على برقية.

إنشاء مشروع جديد باستخدام إطار أيوجرام وتثبيت أيوجرام إذا لم يكن مثبتا بالفعل:

نقطة تثبيت أيوغرام

استيراد الوحدات اللازمة:

من أيوغرام استيراد بوت ، المرسل ، أنواع

قم بإنشاء مثيل للبوت عن طريق تمرير رمز الروبوت الخاص بك إلى المنشئ:

الروبوت = الروبوت (الرمز المميز= 'الروبوت الخاص بك')

تهيئة المرسل:

موانئ دبي = المرسل (بوت)

الآن بوت الخاص بك جاهز للاستخدام.

إنشاء لوحة مفاتيح مضمنة

لوحة المفاتيح المضمنة هي مجموعة من الأزرار التي يتم عرضها في رسالة وتسمح للمستخدم بتنفيذ إجراءات معينة. في أيوجرام ، يتم إنشاء لوحة مفاتيح مضمنة باستخدام فئة إينلينكيبواردماركوب.

قم بإنشاء قائمة بالأزرار التي تريد عرضها على لوحة المفاتيح:

أزرار = [أنواع.InlineKeyboardButton(text=’Button 1′, callback_data=’button1′),

types.InlineKeyboardButton(text=’Button 2′, callback_data=’button2′)

Создайте инлайн клавиатуру, передав список кнопок в конструктор класса InlineKeyboardMarkup:

keyboard = types.InlineKeyboardMarkup(row_width=2)

Добавьте кнопки на клавиатуру с помощью метода add:

keyboard.add(*buttons)

الآن لديك لوحة مفاتيح مضمنة جاهزة يمكن إرسالها إلى المستخدم باستخدام رسالة الإرسال:

انتظر بوت.طريقة إرسال الرسالة (معرف الدردشة=معرف المستخدم ، النص = 'اختيار إجراء:' ، الرد على علامة=لوحة المفاتيح)

عند النقر فوق الزر ، سيتلقى المستخدم بيانات رد الاتصال ، والتي يمكن استخدامها لمعالجة الإجراء:

@موانئ دبي.<url>.البيانات = = 'زر1')

سيتم استدعاء المعالج عند النقر فوق الزر" الزر 1".

بهذه الطريقة ، يمكنك إعداد روبوت وإنشاء لوحة مفاتيح مضمنة لتفاعل المستخدم.

  1. معالجة الضغط على الزر على لوحة المفاتيح المضمنة
  2. Пример обработки нажатия кнопок инлайн клавиатуры:

    from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton

  3. from aiogram import Bot, Dispatcher, types
  4. @dp.callback_query_handler(lambda callback_query: True)

    async def process_callback_button(callback_query: types.CallbackQuery):

  5. if callback_query.data == "button1":
  6. await bot.send_message(callback_query.from_user.id, "Вы нажали на кнопку 2")

    Функция process_callback_button будет вызываться каждый раз, когда пользователь нажимает на кнопку инлайн клавиатуры. В зависимости от значения callback_query.data можно определить, какая кнопка была нажата, и выполнить соответствующее действие.

  7. Для удобства создания инлайн клавиатуры можно использовать класс InlineKeyboardMarkup и метод add из библиотеки aiogram.types. Пример:
  8. bot = Bot(token="YOUR_TOKEN")

    dp = Dispatcher(bot)

def generate_keyboard():