shift

چگونه یک ربات تلگرامی ساده به کمک PHP بسازیم؟

چگونه یک ربات تلگرامی ساده به کمک PHP بسازیم؟

عاطفه
دسته: تکنولوژی  تگ ها: چگونه ربات تلگرام بسازیم , مراحل ساخت ربات تلگرام چیست , اموزش ساخت ربات تلگرام با php , مراحل ساخت ربات تلگرام با php چیست

 

نکات:

  • بات تلگرام از PHP استفاده می‌کند و روی‌هاست قرار می‌گیرد.
  • کدهای ربات برای اجرا باید بر روی SSL یا همان https اجرا شوند. پس به گواهی معتبر SSL نیاز دارید.
  • نیاز به ساخت ربات به‌وسیله BotFather و دریافت API Token اختصاصی دارید. دستورالعمل دریافت این موارد را از طریق مراحل زیر دنبال کنید.


خلاصه مراحل:

  1. ما یک اسکریپت که با تلگرام به‌وسیله دریافت متغیرهای JSON از نوع POST و ارسال متغیرهای از نوع GET صحبت کند ایجاد می‌کنیم.
  2. به تلگرامی گوییم که این اسکریپت را کجای سرور ذخیره کرده‌ایم (مرحله Set کردن وب هوک).
  3. ربات را آزمایش می‌کنیم.

 

گام 1-1: اسکریپت ربات

در کد PHP زیر، عبارت YOURBOT:TOKEN را با توکن ربات خود جاگذاری کنید. توکن ربات چیزی شبیه به این می‌باشد:

 AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8:164354723


<?php 
define('BOT_TOKEN', 'YOURBOT:TOKEN');
define('API_URL', 'https://api.telegram.org/bot'.BOT_TOKEN.'/');
	
// read incoming info and grab the chatID
$content = file_get_contents("php://input");
$update = json_decode($content, true);
$chatID = $update["message"]["chat"]["id"];
		
// compose reply
$reply =  sendMessage();
		
// send reply
$sendto =API_URL."sendmessage?chat_id=".$chatID."&text=".$reply;
file_get_contents($sendto);

function sendMessage(){
$message = "I am a baby bot.";
return $message;
}


گام 1-2: آپلود اسکریپت در سرور

توصیه می‌شود که یک آدرس امن برای فایل اسکریپت در نظر بگیرید، به‌طور مثال آدرس زیر شامل توکن نیز هست. دقت کنید که آدرس حتماً با https شروع می‌شود.


https://my.webhost.com/164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/telbot.php;


گام 2: محل ربات خود را به تلگرام نشان دهید.

با استفاده از یک ادیتور، آدرس زیر را کپی کرده و اطلاعات خود را جایگزین کنید.


https://api.telegram.org/bot[myauthorization-token]/setwebhook?url=[myboturl]

به‌طور مثال اگر از متغیرهای بالا استفاده کنید، آدرس شبیه به این خواهد شد:


https://api.telegram.org/bot164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/setwebhook?url=https://my.webhost.com/164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/telbot.php;

URL را در مرورگر کپی و اجرا کنید. باید یک پیام تأییدیه که وب‌سایت شناخته‌شده است دریافت کنید.

 


گام 3: ربات را آزمایش کنید.

از طریق تلگرام یک پیام جدید به yourbotname@ ارسال کنید (معمولاً /start).

 

رفع اشکال

اگر نیاز به رفع مشکلاتتان با خواندن input ها دارید یا می‌خواهید بدانید چه اطلاعاتی تلگرام برایتان ارسال می‌کند.


  checkJSON($chatID,$update);

	function checkJSON($chatID,$update){
	
		$myFile = "log.txt";
		$updateArray = print_r($update,TRUE);
		$fh = fopen($myFile, 'a') or die("can't open file");
		fwrite($fh, $chatID ."\n\n");
		fwrite($fh, $updateArray."\n\n");
		fclose($fh);
	}
  1. این تابع را به کدتان اضافه کنید.
  2. به باتتان یک پیام تستی بفرستید.
  3. نتایج را در فایل log.txt بخوانید.
  4. اگر فایل log.txt بعد از ارسال پیام تستی محتوایی ندارد ممکن است تنظیمات Webhook به‌درستی انجام‌نشده باشد.
     

نظر خود را بنویسید...
ارسال نظر
لغو