آپ وب

سورس ربات آپلود فایل در سرور های تلگرام

 

سورس ربات آپلود فایل در سرور های تلگرام

آپلود فیلم، موسیقی، عکس یا حتی اپلیکیشن های موبایل و بازی ها در تلگرام که همیشه هزینه بر است و ترافیک یا حجم اینترنت زیادی را برای آپلود آنها در کانال و گروه هایی که عضو هستید مصرف کنید ، اما بهتراست بدانید این کار یعنی ارسال فایل در تلگرام هیچ هزینه ای ندارد. ما به شما می آموزیم که می توانید بجای ارسال یک فایل مثلا موسیقی به جای موبایل خود از یک ربات ارسال فایل در تلگرام بهره ببرید و هیچ ترافیکی را خرج آپلود فایل نکنید. . (مثال : بنده میخوایم لینک ویدیوها رو از سایت اپارات بگیرم و برای ربات ارسال کنم – ربات باید لینک رو ابتدا داخل هاست ما آپلود کند و بعد از اتمام آپلود همون فایل رو به ربات تلگرام ما ارسال کند + لینک مستقیم ویدیو رو هم برامون ارسال کنه ) .

 

کاربرد های این سورس :

  • از این ربات میشه به عنوان یک آپلودر سریع استفاده کنید .
  • شما میتونید فایل های با لینک مستقیم رو از سایت های که ف.ی.ل.ت.ر هستند رو دانلود کنید ( مثل وی ام ور – ادوب و …) .
  • برای ارسال فایل های حجیم به گروه یا کانال استفاده کنید . چون در این روشن هیچ حجمی از اینترنت شما کسر نخواهد شد .

 

<?php 
ini_set('memory_limit', '1024M'); 
define('API_KEY','توکن'); 
$telegram = json_decode(file_get_contents('php://input'),true);
$user_id = $telegram['message']['chat']['id'];
$url = $telegram['message']['text'];


	if($url == "/start"){
		bot(
		'sendMessage', [
			'chat_id'=> $user_id,
			'text'=> 'سلام خوش آمدید . لطفا لینک فایل مورد نظر را ارسال کنید .',
		]);		
	}else{
			
		if(filter_var($url, FILTER_VALIDATE_URL)){
			bot('sendMessage', ['chat_id'=> $user_id,'text'=> 'در حال آپلود فایل ...']);
			if(remote_file_size($url) < 50){
				$fileName = upload($url);	
				send_file( $user_id , $fileName);
				bot('sendMessage', ['chat_id'=> $user_id,'text'=> 'https://آدرس دقیق پوشه ربات در هاست/files/'.$fileName ]);
			}	
				
			
		}
				
	}


	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); 
		  } 
	}
	
	
	function remote_file_size($url){
		 $ch = curl_init($url);

		 curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
		 curl_setopt($ch, CURLOPT_HEADER, TRUE);
		 curl_setopt($ch, CURLOPT_NOBODY, TRUE);

		 $data = curl_exec($ch);
		 $size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);

		 curl_close($ch);
		 return round(($size/1024)/1024);
	}
	
	


	function upload($url){
		 $filename= preg_replace('/\\?.*/', '', basename($url));
		 $to = "files/".$filename;
		 $data=file_get_contents($url);
		 if($data===false) 
			return false;
		 else{	
			file_put_contents($to,$data);
			return $filename;
		}		
	}
	

	function send_file( $user_id , $fileName){
			
		$url= "https://api.telegram.org/bot".API_KEY."/sendDocument?chat_id=$user_id";
		$post = array(
		 "document"  => new CURLFile(realpath('files/'.$fileName))
		);
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $url);
		curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
		curl_exec($ch);
	}

 

  • توکن ربات رو جایگزین کنید (سطر ۳).
  • آدرس دقیق دایرکتوری رو جایگزین کنید تا با لینک مستقیم نیز بتوانید فایل رو دانلود کنید (سطر ۲۲) .

اگر به زبان برنامه نویسی php مسلط باشید می توانید به راحتی سورس کد این ربات رو تغییر دهید و بر اساس نیاز خودتون امکانات به آن اضافه کنید.

لینک دانلود سورس

دیدگاه‌ها (0)