@BotSorce

@BotSorce
♦️ #آموزش قرار دادن جوین اجباری کانال برای ربات
➖➖➖➖➖➖➖➖
♦️چندین و چند مرتبه آموزش هایی در همین مورد رو ارسال کردیم براتون اما گویا برخی از دوستان همچنان برای افزودن این قابلیت به ربات،با مشکل مواجه هستن و در روز در این مورد درخواست زیادی ارسال میشه برامون.
➖➖➖➖➖➖➖➖
♦️این بار این آموزش رو به اینصورت که با متد
*getChatMember*
که کار اصلیش همین تشخیص عضویت هستش پیش میریم و امیدواریم که بعد از این آموزش،مشکلی تو این زمینه نداشته باشید.
♦️بطور کل این متد میتونه اطلاعاتی رو از اکانتی که عضو شده باشه به ما بده،بطور مثال نشون میده این اکانت از کانال لفت داده یا اکانت مربوط به سازندهء کانال
*creator*
و یا مربوط به ممبر
*member*
و یا هر اطلاعات تکمیلی دیگه ای.
♦️قبل از هر چیزی این موضوع رو حتما بهش توجه کنید که رباتی که قراره به ما جواب بده باید تو کانال موردنظرمون ادمین باشه که به اطلاعات اعضاء دسترسی داشته باشه.
♦️اما چطور باید از این متد استفاده کنیم...👇🏼
https://api.telegram.org/bot [TOKEN]/getChatMember?chat_id=[chat_id]&user_id=[user_id]
➖➖➖➖➖➖➖➖
♦️تو لینک بالا [TOKEN] که خب همون توکن رباتمونه
♦️و [chat_id] شناسه یا نام کاربری کانال یا چت موردنظرمون هستش
♦️و [user_id] هم شناسه عددی-آیدی عددی کاربر هستش.
♦️اگه اطلاعاتی که بالا خدمتتون عرض کردم رو داخل متد بالا جایگزین کنیم،خروجیمون یه آرایه بصورت JSON هستش.
به اینصورت👇🏼

{"ok":true,"result":{"user":{"id":123456789,"is_bot":false,"first_name":"♠️","username":"♣️","language_code":"fa"},"status":"♥️"}}

♦️الان به راحتی با استفاده از خروجی بالا میتونیم وضعیت کاربر تو گروه یا کانال رو مشخص کنیم.
♠️ FIRSTNAME
♣️ USERNAME
♥️ creator , member , ....
➖➖➖➖➖➖➖➖
➖➖➖➖➖➖➖➖
♦️میتونید تو سورسهاتون از این تابع استفاده کنید
function getChatMember($chatid,$userid){
$url = 'https://api.telegram.org/bot'.API_KEY.'/getChatMember?';
$array = array('chat_id'=> $chatid, 'user_id'=> $userid);
$ch = curl_init();
$optArray = array(CURLOPT_URL =>$url, CURLOPT_POST => true,CURLOPT_POSTFIELDS =>$array,CURLOPT_RETURNTRANSFER => true);
curl_setopt_array($ch, $optArray);
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result,true);
}
➖➖➖➖➖➖➖➖
♦️برای فراخوانی این تابع هم به اینصورت عمل میکنیم 👇🏼

getChatMember($chatid,$fromid);
➖➖➖➖➖➖➖➖
♦️ برای درک راحت تر،همین روش رو روی یه سورس پیاده میکنیم که متوجه بشید چی به چی شد.
➖➖➖➖➖➖➖➖
define('API_KEY','توکن');
$update = json_decode(file_get_contents('php://input'),true);
$chatid = $update['message']['chat']['id'];
$fromid = $update['message']['from']['id'];
$text = $update['message']['text'];
$channel = '@Botsorce';
function getChatMember($chatid,$userid){
$url = 'https://api.telegram.org/bot'.API_KEY.'/getChatMember?';
$array = array('chat_id'=> $chatid, 'user_id'=> $userid);
$ch = curl_init();
$optArray = array(CURLOPT_URL =>$url, CURLOPT_POST => true,CURLOPT_POSTFIELDS =>$array,CURLOPT_RETURNTRANSFER => true);
curl_setopt_array($ch, $optArray);
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result,true);
}
function sendMessage($chatid,$text){
$url = 'https://api.telegram.org/bot'.API_KEY.'/sendMessage?';
$array = array('chat_id'=> $chatid, 'text'=> $text);
$ch = curl_init();
$optArray = array(CURLOPT_URL =>$url, CURLOPT_POST => true,CURLOPT_POSTFIELDS =>$array,CURLOPT_RETURNTRANSFER => true);
curl_setopt_array($ch, $optArray);
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result,true);
}
if(getChatMember($channel,$fromid)['result']['status'] == 'left'){
sendMessage($chatid ,'کاربر گرامی شما در کانال ما عضو نیستید،نخست در کانال عضو شده،سپس به ربات بازگردید و مجددا درخواستتان را ارسال نمائیده');

➖➖➖➖➖➖➖➖
♦️گمون نکنم خیلی مشکل باشه و باید یاد گرفته باشید
♦️سعی کنید از همین روش تو چندین سورس استفاده کنید،حتی اگه اشتباه انجام دادین هم بعد از چندین مرتبه متوجه میشید که کجای کار رو اشتباه انجام میدادید و دیگه هیچوقت اون اشتباه رو تکرار نمیکنید و بلاخره روش درست رو پیدا میکنید
♦️رمز موفقیت تو هرکاری،داشتن علاقه و هدف و بعد،تمرین و تمرین و تمرین هستش
#موفق_باشید
#یا_علی
➖➖➖➖➖➖➖➖
#درخواستی
@BotSorce