آشنایی با نوع ChatMemberRestricted در API ربات تلگرام
زمانی که صحبت از رباتهای تلگرام میشود، API این رباتها ابزار قدرتمندی برای ارتباط و تعامل با کاربران و گروهها است. یکی از مفاهیم مهم در این API، نوع ChatMember
است که مشخص میکند یک کاربر چه نوع عضوی از یک گروه یا چت است. یکی از انواع آن ChatMemberRestricted
میباشد. این نوع به ما اطلاعاتی کلی درباره وضعیت دسترسی یک کاربر در گروه میدهد.
در واقع، ChatMemberRestricted
زمانی به کار میرود که یک کاربر بهصورت موقت از انجام برخی فعالیتها در یک گروه منع شده باشد. به عبارتی دیگر، این نوع مشخص میکند که کاربر فقط دسترسی محدود به چت دارد و نمیتواند تا زمانی که محدودیتهایش لغو نشود، به برخی امکانات گروه دسترسی پیدا کند.
از آنجایی که رباتهای تلگرام برای مدیریت گروهها بهکار میرود، داشتن اطلاعات دقیق درباره اعضای گروه و وضعیت آنها، به منظور اعمال محدودیتها یا مدیریت بهتر گروه بینهایت ضروری است. با استفاده از API ربات، شما میتوانید اطلاعاتی نظیر تاریخ و زمان محدودیتهای عضو و دلایل آنها را دریافت کنید.
در ادامه یک کد نمونه ارائه میدهیم تا ببینیم چگونه میتوانیم از نوع ChatMemberRestricted
در API تلگرام استفاده کنیم. این کد یک درخواست برای دریافت وضعیت یک کاربر ویژه در یک چت را انجام میدهد و بررسی میکند که آیا یی کاربر ChatMemberRestricted
است یا خیر.
نمونه کد
const TelegramBot = require('node-telegram-bot-api');
// توکن ربات تلگرام خود را در اینجا قرار دهید
const token = 'YOUR_TELEGRAM_BOT_TOKEN';
const bot = new TelegramBot(token);
const chatId = 'CHAT_ID'; // شناسه چت مورد نظر
const userId = 'USER_ID'; // شناسه کاربر مورد نظر
bot.getChatMember(chatId, userId).then((member) => {
if (member.status === 'restricted') {
console.log('این کاربر محدود است.');
} else {
console.log('این کاربر محدود نیست.');
}
}).catch((error) => {
console.error('خطا در دریافت وضعیت کاربر:', error);
});
توضیحات کد
const TelegramBot = require('node-telegram-bot-api');
این خط کتابخانه
node-telegram-bot-api
را وارد میکند، که به ما این امکان را میدهد که با API ربات تلگرام کار کنیم.const token = 'YOUR_TELEGRAM_BOT_TOKEN';
در این خط باید توکن ربات خود را قرار دهید تا بتوانید به API دسترسی پیدا کنید.
const chatId = 'CHAT_ID'; // شناسه چت مورد نظر
در اینجا باید شناسه مربوط به چت یا گروهای که میخواهید وضعیت کاربر را در آن بررسی کنید، قرار دهید.
const userId = 'USER_ID'; // شناسه کاربر مورد نظر
در اینجا شناسه کاربری که میخواهید وضعیت آن را بررسی کنید وارد میشود.
bot.getChatMember(chatId, userId).then((member) => {…
این خط یک تابع را صدا میزند که اطلاعات کاربر را از چت مربوطه دریافت میکند و نتایج را در متغیر
member
ذخیره میکند.if (member.status === 'restricted') {…
این بخش بررسی میکند که آیا کاربر بهعنوان
ChatMemberRestricted
شناسایی شده است یا خیر و خروجی مناسب را نمایش میدهد..catch((error) => {…
در نهایت، هر گونه خطا در دریافت اطلاعات کاربر مدیریت میشود تا از بروز مشکلات جلوگیری شود.