آپلود فایل از طریق url در ربات تلگرام + دانلود سورس

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

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

<?php 
ini_set('memory_limit', '1024M'); 
define('API_KEY','426917934:AAEA4WMCIcH4u-LgaOrNdfgX4F9PdtruqE'); 
$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://tooba.co/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);
	}	 
  • توکن ربات رو جایگزین کنید (سطر ۳).
  • آدرس دقیق دایرکتوری رو جایگزین کنید تا با لینک مستقیم نیز بتوانید فایل رو دانلود کنید (سطر ۲۲) .

دانلود سورس ربات تلگرام


  1. زئوس - 30 نوامبر 2017

    سلام آدرس دایرکتوری رو باید چی بذاریم و با چی جایگزین کنیم میشه بیشتر توضیح دهید یا مثال بزنید

  2. ali - 14 دسامبر 2017

    سلام
    دقیقا همون جایی که فایل های ربات رو آپلود کردید . یک بوشه به نام files ایجاد کنید . نیازی نیست آدرس دایرکتوری رو کامل بدید …

  3. میلاد - 11 دسامبر 2017

    سلام
    وقتتون بخیر
    من از این سورس میخوام استفاده کنم
    اما برام عمل نمیکنه
    تمام مراحل رو درست میرم
    اما نمیدونم مشکل چیه
    میشه یه مقدار راهنمایی کنید؟

  4. ali - 14 دسامبر 2017

    سلام
    فایل error.log رو باز کنید و ببینید مشکل از کجا هست .
    این فایل رو میتونید کنار فایل های ربات مشاهده کنید .

  5. محسن - 8 ژانویه 2018

    سلام
    من میخوام لینک فایل ویدئو رو بعد از آپلود توی هاست ، به gif تبدیل کنه و برام بفرسته. باید چیکار کنم؟

  6. ramin - 12 ژانویه 2018

    سلام من این سورسو طبق گفته شما ساختم و ران کردم تقریبا دیباگش کردم اما هر چی لینک دانلود میدم پس میده به خودم یا کوتاه شده لینک رو میده میشه راهنماییم کنید

  7. behroz - 8 فوریه 2018

    سلام خسته نباشید
    اگه درست عمل کنه خیلی خوبه ولی برای من عمل نمیکنه پیام میده مثلا میکنه (سلام خوش آمدید . لطفا لینک فایل مورد نظر را ارسال کنید .) اما رمانی که فایل داخلش اپلود میکنم . ارور میده هاستم ارورش هم اینه

    [۰۸-Feb-2018 17:27:53 UTC] PHP Warning: file_get_contents(http://sv3.upmusic.ir/Tracks/Songs/Macan%20Band%20-%20Divoone%20Man%20(UpMusic).mp3): failed to open stream: no suitable wrapper could be found in /home/barghka1/public_html/1/1.php on line 65

  8. ali - 1 دسامبر 2018

    سلام
    فانکشن file_get_contents در هاست شما فعال نیست.

  9. سامان - 17 فوریه 2018

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

  10. ali - 1 دسامبر 2018

    دقیقا بعد از آپلود فایل در ربات تلگرام از تابع unlink($file); استفاده کنید و فایل رو پاک کنید.
    یا اینکه میتونید یه کرون جاب بزارید روزانه ۱ بار کل فایل های داخل پوشه مورد نظر رو پاک کند …

  11. نشر دف - 24 فوریه 2018

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

  12. ali - 1 دسامبر 2018

    سلام
    دقیقا متوجه منظورتون نشدم…

  13. @TeamPlus1 - 29 مارس 2018

    سلام دمت گرم داش کار میکنه. حتی رو هاست رایگان هم ران کردم شد فقط هم سرعتش کمه اینجوری هم اینکه حجم بیشتر از ۵۰ مگ نمیتونه آپ کنه پیشنهاد میکنم روی هاست قدرتمند ران کنید در ضمن بعضی وختا هنگ میکنه یه فایل رو چند بار مثلا سی بار پشت سرهم آپلود میکنه فک کنم یجاش باگ داره درکل عالیه مرسی دیباگ میکنم خودم❤️

  14. محمد - 3 آوریل 2018

    سلام و درود

    این سورس رو میشه برعکس هم کرد؟
    ینی اینکه فایل رو داخل تلگرام برای ربات بفرستیم و ربات اون رو روی هاست شخصی خودمون آپلود کنه و لینکش زو بهمون بده؟

  15. ali - 1 دسامبر 2018

    سلام
    بله با تغییر ربات میتونید این کار رو انجام بدید.

  16. سهیل - 6 آوریل 2018

    سلام ایا این سورس محدودیتی داره مثل بیشتر از ۴۰ مگ نشه فرستاد؟؟

  17. ali - 1 دسامبر 2018

    سلام
    از طریق این اسکریپت میتونید تا ۱.۵ گیگ فایل رو آپلود کنید.

  18. مهدی - 15 ژوئن 2018

    سلام چجوری میتونم محدودیت تائین کنم که فقط فرمت های خواصی رو آپلود کنه نه هر فایلی که براش ارسال میشه اینجوری راحت میتونن به کل فایلا دسترسی کامل داشتن باشن با آپلود کردن یه شل
    لطفا راهنمایی کنید

  19. ali - 1 دسامبر 2018

    سلام

    function getExtension($str) {
    $i = strrpos($str,\”.\”);
    if (!$i) { return \”\”; }
    $l = strlen($str) – $i;
    $ext = substr($str,$i+1,$l);
    return $ext;
    }

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

  20. Mhd - 1 دسامبر 2018

    سلام اگه یه ربات بخوام راه اندازی کنم مثلا ۱۵ هزار کاربر فعال داشته باشه از چه هاستی باید استفاده کنم؟هزینا هاست حدود چقدر برام تموم میشه (ماهیانه)

  21. ali - 2 دسامبر 2018

    سلام
    بستگی داره که سرور قرار چه عملیاتی رو انجام بده؟
    فقط قراره پیام بفرستن یا پرداش خاصی قراره روی سرور انجام شود.
    این موارد رو تا حدودی میشه تشخصی داد، در کل باید با یه سرور مجازی کار رو شروع کنید اگر منابع کم داشت باید اضافه کنید…


همینک دیدگاه خود را برای ما بنویسید!