دکمه ها

روش ساخت دکمه

شما می توانید به تعداد مورد نیاز دکمه برای کاربر تعریف کنید که پس از کلیک و یا tap بروی هر کدام از این دکمه ها توسط کاربر عملکردی که برای آن تعریف کرده اید انجام خواهد شد که این عمل می تواند شامل ارسال یک مقدار از سمت کاربر به سرور و یا باز کردن یک url در مرورگر کاربر و... باشد.

شما برای ساخت دکمه ها به متغییرهای additionalType و additionalData نیاز دارید که در ادامه هردو را توضیح میدهیم .




additionalType

نوع متغیر additionalType از جنس عدد (number) است که مدل دکمه ی شما در آن تعریف میشود . لیست زیر شامل تمام مدل های قرارگیری دکمه های شما است که میتواننید در ربات خود استفاده نمایید.

additionalTypeمقدار
ADDITIONAL_TYPE_NONE0
ADDITIONAL_TYPE_UNDER_KEYBOARD_BUTTON1
ADDITIONAL_TYPE_UNDER_MESSAGE_BUTTON2
ADDITIONAL_TYPE_BUTTON_CLICK_ACTION3
ADDITIONAL_TYPE_STICKER4
ADDITIONAL_TYPE_GIF5
ADDITIONAL_TYPE_STREAM_TYPE6
ADDITIONAL_TYPE_KEYBOARD_TYPE7
ADDITIONAL_TYPE_FORM_BUILDER8
ADDITIONAL_TYPE_WEBVIEW_SHOW9



additionalData

نوع متغیر آرایه است که شامل بدنه ی دکمه ها می باشد .

بدنه ی دکمه ها object است که به موارد زیر برای تولید دکمه نیاز دارد :

پارامترهانوعتوضیحات
actionTypenumberنوع عملکرد دکمه را مشخص میکند . لیست کامل actionType در انتها آمده است
labelstringنام دکمه است که کاربر بر روی دکمه می بیند
valuestringمقادیر مورد نیاز که در دکمه ذخیره می شود که در صورت نداشتن عکس می توانید مقدار آن را خالی بگزارید
imageUrlstringپس زمینه ی دکمه را در این جا قرار می دهید که در صورت نداشتن عکس می توانید مقدار آن را خالی بگزارید

لیست actionType

additionalTypeمقدارadditionalTypeمقدار
BUTTON_ACTION_JOIN_LINK1BUTTON_ACTION_FINANCIAL_MENU13
BUTTON_ACTION_BOT_ACTION2BUTTON_ACTION_BILL_MENU14
BUTTON_ACTION_USERNAME_LINK3BUTTON_ACTION_TRAFFIC_BILL_MENU15
BUTTON_ACTION_WEB_LINK4BUTTON_ACTION_MOBILE_BILL_MENU16
BUTTON_ACTION_WEBVIEW_LINK5BUTTON_ACTION_PHONE_BILL_MENU17
BUTTON_ACTION_STREAM_PLAY6BUTTON_ACTION_TOPUP_MENU18
BUTTON_ACTION_PAY_BY_WALLET7BUTTON_ACTION_WALLET_MENU19
BUTTON_ACTION_PAY_DIRECT8BUTTON_ACTION_NEARBY_MENU20
BUTTON_ACTION_REQUEST_PHONE9BUTTON_ACTION_CALL21
BUTTON_ACTION_REQUEST_LOCATION10BUTTON_ACTION_STICKER_SHOP22
BUTTON_ACTION_SHOW_ALERT11BUTTON_ACTION_IVAN23
BUTTON_ACTION_PAGE12BUTTON_ACTION_IVANQR24
BUTTON_ACTION_IVANDLIST25BUTTON_ACTION_IVANDSCORE26
BUTTON_ACTION_CARD_TO_CARD27



روش ارسال دکمه

برای ارسال دکمه ، شما باید این دو متغیر را درون پیام ارسالی خود به کاربر قرار دهید.

مثال

const additionalType = 2 ; //ADDITIONAL_TYPE_UNDER_MESSAGE_BUTTON;
const additionalData = [];
this.additionalData.push([
{
actionType: 9, // BUTTON_ACTION_REQUEST_PHONE
label: " 📞 ارسال شماره تماس",
value: "next",
imageUrl: "",
} ,
{
actionType: 2 , //BUTTON_ACTION_BOT_ACTION,
label: "➡️بازگشت",
value: "back",
imageUrl: "",
}
]);
const message = new ChatSendMessage ;
message.setMessage('برای پیگیری بهتر و ایجاد ارتباط با تیم پشتیبانی آیگپ لطفا شماره تماس خود را با زدن دکمه ی * ارسال شماره تماس * برای ما ارسال نمایید ');
message.setRoomId('userRoomId');
message.additionalData(additionalData);
message.additionalType(additionalType);
const data = message.serializeBinary();
const actionId = 201;
const headers = {
Authorization: "Bearer {{YOUR_BOT_TOKEN}}"
}
axios.post(`https://api.igap.net/botland/v1/api?actionId=${actionId}`, data , headers);

img