ساخت ربات تلگرام با php

سلام. توی این آموزش قصد دارم تجربیاتم در زمینه نوشتن رباتهای تلگرامی رو خیلی سریع و خلاصه باهاتون به اشتراک بگذارم. صفر تا صد اموزش را قرار میدم برای تمامی علاقه مندان.

ساخت ربات تلگرام با php

ساخت ربات تلگرام با php

سلام. توی این آموزش قصد دارم تجربیاتم در زمینه نوشتن رباتهای تلگرامی رو خیلی سریع و خلاصه باهاتون به اشتراک بگذارم.

خیلی خب در قدم اول پیشنیاز هارو برسی میکنیم

* اشنایی حدودی با برنامه نویسی php

* هاست مخصوص بات یا هاست معمولی برای ربات های سبک

* دامنه بین مملی (دامنه هایی ب جز دامنه های .ir )

* دریافت اس اس برای دامنه که آموزش به زودی قرار داده میشه

خب قدم اول باید رباتتون را بات فادر بسازید

ساخت ربات تلگرام با php

خب الان طبق تصویر زیر عمل کنید

ساخت ربات تلگرام با php

دستور /newbot را وارد کنید

اسم ربات وارد کنید

بعدم ای دی ربات رو وارد کنید (توجه کنید در انتهای حتما کلمه bot باید باشه)

ربات ساخته شد و توکن بهتون داده میشه فقط توجه داشته باشید که توکن رو به کسی ندید

 

الان ما به فرض این که هاست و دامنه شما اماده برای اجرای کده شروع به کد نویسی میکنیم

یکی از مهم ترین قسمت ها اتصال کدتون به تلگرام هست شما داخل هاستتون یه پیج بسازی ک توی اون بتونیم کد هارو بنویسیم پیج هم حتما با پسون .php باید باشه مثلا bot.php

https://api.telegram.org/bot[token]/setWebhook?url=[page]

در قسمت [token] باید ای دی رباتون رو وارد کنید

در قسمت [page]هم ادرس صفحه ای که کد میخوایم توش بنویسیم

الان کد نویسی شروع میکنیم ک بتونید ی پیام ساده با چنتا دکمه

define('API_KEY','[token]');
define('API_URL','https://api.telegram.org/bot'.API_KEY.'/');

 

function bot($method,$datas=[]){
    $url = "https://api.telegram.org/bot".API_KEY."/".$method;
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch,CURLOPT_POSTFIELDS,$datas);
    $res = curl_exec($ch);
    if(curl_error($ch)){
        var_dump(curl_error($ch));
    }else{
        return json_decode($res,true);
    }
}

همینجور ک میبینید ما از ی فانشن برای ارسال اطلاعات استفاده میکنیم ک در قسمت اول باید توکن ربات وارد کنید

حالا با این تیکه کد میتونیم بخونیم ک کاربر برا ربات چی مینویسه

$up = json_decode(file_get_contents('php://input'),true);
$msg = $up['message'];
$chat_id=$msg['chat']['id'];

اگه به متغیر up دقت کنید میبنید ک داره اطلاعات را فرا خوانی میکنه حالا میتونی خیلی راحت با یدونه شرط بفهمیم کاربر چی نوشته

متغیر chat_id برای دریافت کد مخصوص تلگرامی کاربر واسه ارسال پیام و کاربردای دیگس

if($msg["text"]=="/start")
{
}

خب الان ارسال پیام رو بهتون یاد میدم که با یه فانشن ساده میتونیم کارمون رو راحت کنیم

function sendKeyboard($chat_id, $keyboard,$tests) {                                                  
        $text = $tests;
        file_get_contents(API_URL ."sendMessage?chat_id=".$chat_id."&reply_markup=".$keyboard."&text=".urlencode($text));
    }

خب الان همینجور ک کد رو میبینید یه چت ای دی میگیری یه اطلاعات کیبورد و ی متن برای ارسال

if($msg["text"]=="/start")
{
$txt="متن برای نمایش ب کاربر";     
var_dump($keyboard = json_encode($keyboard = [
                       'keyboard' => [
                         [
              ['request_contact' => true,'text' => 'دکمه جهت نمایش']
             ]
                       ] ,
                       'resize_keyboard' => true,
                       'one_time_keyboard' => true,                     
                  'selective' => true
                   ]),true);  
file_get_contents(API_URL ."sendMessage?chat_id=".$chat_id."&reply_markup=".$keyboard."&text=".urlencode($txt));     
  }

خب تا همنجا واسه این پست کافیه قسمت های بعدی اموزش را دنبال کنید فایل متنی رو هم میتونید از این زیر دانلود کنید

دانلود


ارسال نظر

CAPTCHA code