Skip to content

ساختار و انواع دکمه‌های کیپاد


دکمه‌های تعاملی در شاد به دو دستهٔ کلی تقسیم می‌شوند:

  • Inline Keypad: دکمه‌های شیشه‌ای که در زیر پیام نمایش داده می‌شوند.
  • Chat Keypad: دکمه‌های صفحه‌کلید که در پایین صفحهٔ گفتگو قرار می‌گیرند.

مدل‌های پایه دکمه‌ها

۱. ButtonSelectionItem

هر گزینه از لیست انتخابی را تعریف می‌کند.

فیلد نوع توضیحات
text string متن نمایشی گزینه
image_url string آدرس تصویر مرتبط (اختیاری)
type ButtonSelectionTypeEnum نوع نمایش دکمه

۲. ButtonSelection

تنظیمات کامل دکمهٔ انتخاب (type = Selection).

فیلد نوع توضیحات
selection_id string شناسهٔ یکتای لیست
search_type ButtonSelectionSearchEnum نحوهٔ جستجو در لیست
get_type ButtonSelectionGetEnum نحوهٔ دریافت آیتم‌ها
items list[ButtonSelectionItem] آرایه‌ای از گزینه‌ها
is_multi_selection bool امکان انتخاب چندگانه
columns_count string تعداد ستون‌های نمایش
title string عنوان لیست

۳. ButtonCalendar

تنظیمات دکمهٔ تقویم (type = Calendar).

فیلد نوع توضیحات
default_value Optional[string] تاریخ پیش‌فرض
type ButtonCalendarTypeEnum نوع تقویم (شمسی/میلادی)
min_year string حداقل سال قابل انتخاب
max_year string حداکثر سال قابل انتخاب
title string عنوان دکمه

۴. ButtonNumberPicker

تنظیمات دکمهٔ انتخاب عدد (type = NumberPicker).

فیلد نوع توضیحات
min_value string حداقل مقدار
max_value string حداکثر مقدار
default_value Optional[string] مقدار پیش‌فرض
title string عنوان دکمه

۵. ButtonStringPicker

تنظیمات دکمهٔ انتخاب رشته (type = StringPicker).

فیلد نوع توضیحات
items list[string] لیست گزینه‌های قابل انتخاب
default_value Optional[string] مقدار پیش‌فرض
title Optional[string] عنوان دکمه

۶. ButtonTextbox

تنظیمات دکمهٔ ورودی متن (type = Textbox).

فیلد نوع توضیحات
type_line ButtonTextboxTypeLineEnum تک‌خطی یا چندخطی
type_keypad ButtonTextboxTypeKeypadEnum نوع صفحه‌کلید (عددی/متنی)
place_holder Optional[string] متن راهنما در فیلد
title Optional[string] عنوان دکمه
default_value Optional[string] مقدار پیش‌فرض

۷. ButtonLocation

تنظیمات دکمهٔ موقعیت مکانی (type = Location).

فیلد نوع توضیحات
default_pointer_location Location مختصات نقطهٔ پیش‌فرض
default_map_location Location مرکز نقشه در نمای اولیه
type ButtonLocationTypeEnum حالت (انتخاب/مشاهده)
title Optional[string] عنوان دکمه

مدل اصلی Button

مدل Button نمایانگر یک دکمهٔ تعاملی در رابط کاربری است که در کیپادهای شیشه‌ای یا صفحه‌کلید قابل استفاده است.

فیلد نوع توضیحات
id string شناسهٔ یکتای دکمه
type ButtonTypeEnum نوع دکمه (تعیین‌کنندهٔ رفتار)
button_text string متن نمایشی روی دکمه
button_selection ButtonSelection تنظیمات دکمهٔ انتخابی
button_calendar ButtonCalendar تنظیمات دکمهٔ تقویم
button_number_picker ButtonNumberPicker تنظیمات دکمهٔ انتخاب عدد
button_string_picker ButtonStringPicker تنظیمات دکمهٔ انتخاب رشته
button_location ButtonLocation تنظیمات دکمهٔ موقعیت
button_textbox ButtonTextbox تنظیمات دکمهٔ ورودی متن

نکته مهم: فیلدهای تخصصی دکمه (مانند button_selection و button_calendar) تنها زمانی معتبر هستند که نوع دکمه (type) با آن مدل سازگاری داشته باشد.